4.3. OphirPowermeter
Summary: |
Plugin for Ophir Powermeter. |
Type: |
DataIO |
License: |
licensed under LGPL |
Platforms: |
Windows, (Linux possible but yet not implemented) |
Devices: |
Powermeter VEGA from company Ophir |
Author: |
J. Krauter, TRUMPF SE + Co. KG |
4.3.1. Overview
The OphirPowermeter is an itom plugin which is used for Powermeters from Ophir. It supports the RS232 and USB connection types. To use the RS232 variante, you must initiate first a serialIO plugin and use it as an initParameter.
Tested devices: 1-channel VEGA (USB, RS232) with a Thermopile head.For the USB type it is necessary to install the COM object which comes with StarLab form Ophir.Download page: https://www.ophiropt.com/laser–measurement/software/com-object
4.3.2. Initialization
The following parameters are mandatory or optional for initializing an instance of this plugin:
- connection: str
Type of the connection (‘RS232’, ‘USB’). For the RS232 connection a serialIO plugin instance is needed!
Match: [“RS232”, “USB”], Default: “RS232”
- serial: Union[itom.dataIO, itom.actuator], optional
An opened serial port (the right communication parameters will be set by this plugin).
Only plugin “SerialIO” is allowed
- serialNo: str, optional
Serial number of the device to be connected. If empty, all found serial numbers will be printed and the first device that is detected will be opened.
default: “”
4.3.3. Parameters
- ROMVersion: {str}, read-only
Version of ROM software.
- battery: {int}, read-only
1 if battery is OK, 0 if battery is low.
- calibrationDueDate: {str}, read-only
Calibration due date.
- comPort: {int}, read-only
The current com-port ID of this specific device. -1 means undefined.
- connection: {str}, read-only
type of the connection (‘RS232’, ‘USB’).
- deviceType: {str}, read-only
Device type (NOVA, VEGA, LASERSTAR-S (single channel), LASERSTAR-D (dual channel), Nova- II).
- headName: {str}, read-only
Head name connected to the device.
- headSerialNumber: {str}, read-only
Head serial number connected to the device.
- headType: {str}, read-only
Head type (thermopile, BC20, temperature probe, photodiode, CIE head, RP head, pyroelectric, nanoJoule meter, no head connected.
- measurementType: {str}
Measurement type (energy or power).
- name: {str}, read-only
Name of plugin.
- range: {int}
Measurement range (0: AUTO, 1: 150W, 2: 50.0W, 3: 5.00W).
- serialNumber: {str}, read-only
Serial number of the device shown on display.
- timeout: {int}, read-only
Request timeout, default 1000 ms.
- unit: {str}
Unit of device
- wavelength: {str}
Available discrete wavelengths: 10.6 .8-6 <.8u.
- wavelengthSet: {str}, read-only
Setting of the measurement wavelength (DISCRETE or CONTINUOUS).
4.3.4. Exemplary usage from Python
In the following script, the first detectable power meter is connected and a oscilloscope-like plot is opened that displays a moving graph of recent intensity values:
connectionType = "USB"
if connectionType == "USB": # connects the USB powermeter type
adda = dataIO("OphirPowermeter", connection=connectionType) # connect a USB Powermeter
elif connectionType == "RS232": # connects the RS232 powermeter type with the additional SerialIO instance
port = 4
baud = 9600
endline = '\n\r'
adda = dataIO("OphirPowermeter", connection=connectionType, serial=dataIO("SerialIO", port, baud, endline))
numPoints = 1000
image = dataObject.zeros([1, numPoints], 'float64')
[i, plotHandle] = plot1(image)
def timeout():
global timerId
d = dataObject()
adda.acquire() # acquire new intensity value
image[0, 0: numPoints - 1] = image[0, 1:] # shift pixels to the left by one...
adda.getVal(d) # get the recently acquired value
image.copyMetaInfo(d)
image[0, numPoints - 1] = d[0, 0] # ...append new value to the end of image
if plotHandle.exists():
try:
plotHandle["source"] = image # update the displayed image
except:
pass
else:
print("Figure has been closed. Stop acquisition...")
timerId.stop()
del timerId
timerId = timer(50, timeout) # call timeout every 50ms
4.3.5. Changelog
itom setup 4.1.0: This plugin has been compiled using the StarLab 3.60.0