DCAM Camera¶
From: Hamamatsu Photonics
Class: herosdevices.hardware.hamamatsu.dcam_camera.DcamCompatibleCamera
Driver Quality Index: beta
Requires the following packages
To use such a device, installing both, the API and the SDK4 is necessary. The API is needed to run camera and the SDK4 provides means to control the API via Python. Both can be downloaded directly from the vendor:
- API
The API has to be installed using the included install instructions. On some linux distributions (e.g. archlinux), you have to run both parts of the installer manually after installing the necessary packages.
# example for usb camera # add user to uucp group (possible re-login needed) usermod -aG uucp MY_USER # install libusb 0.x pacman -S libusb-compat cd DCAM_API_FOLDER_XXX bash api/driver/usb/install.sh bash api/runtime/install.sh
- SDK4
The SDK4 contains (among other things) some Python examples on how to use the API. Therefore, it includes Python classes which encapsulate the API. These are located in the subfolder
dcamsdk4/samples/python:dcam.pydcamapi4.pydcamcon.py
Clone the barebone package. Place the three files in question into the subfolder
src/dcamsdk4/. They should reside on the same level as__init__.py.The structure of the package should resemble:
. ├── pyproject.toml ├── README.md └── src └── dcamsdk4 ├── dcamapi4.py ├── dcamcon.py ├── dcam.py └── __init__.pyOpen
dcam.pyand replacefrom dcamapi4 import *byfrom .dcamapi4 import *.Open
dcamcon.pyand replacefrom dcam import *byfrom .dcam import *.Note the leading dots in both cases.
Finally, in the same Python environment
herosdevicesis installed in, install thedcamsdk4withpip.
Camera object for Hamamatsu DCAM cameras.
In particular, this code has been tested with the C15550-20UP.
Bold arguments are mandatory. For more information on the listed arguments refer to the class documentation: herosdevices.hardware.hamamatsu.dcam_camera.DcamCompatibleCamera If parameters appear in this list but not in the class definition, please recursively check the linked base classes for the definition of the parameter.
Argument |
Type |
Default Value |
Description |
|---|---|---|---|
config_dict |
<class ‘dict’> |
Configuration dictionary, see EXAMPLE_CONFIG |
|
default_config |
str | None |
None |
|
keep_device_open |
<class ‘bool’> |
True |
Keep the device open after it is first opened |
payload_metadata |
dict | None |
None |
The following JSON strings can be used to start a HERO device representation of DcamCompatibleCamera using BOSS.
{
"_id": "orca",
"classname": "herosdevices.hardware.hamamatsu.DcamCompatibleCamera",
"arguments": {
"keep_device_open": true,
"config_dict": {
"default": {
"DCAM_IDPROP.TRIGGERSOURCE": "DCAMPROP.TRIGGERSOURCE.INTERNAL",
"DCAM_IDPROP.TRIGGERPOLARITY": "DCAMPROP.TRIGGERPOLARITY.POSITIVE",
"DCAM_IDPROP.EXPOSURETIME": 0.01,
"DCAM_IDPROP.SENSORMODE": "DCAMPROP.SENSORMODE.AREA",
"DCAM_IDPROP.BINNING": "DCAMPROP.BINNING._4",
"DCAM_IDPROP.SUBARRAYHSIZE": 200,
"DCAM_IDPROP.SUBARRAYVSIZE": 200,
"DCAM_IDPROP.SUBARRAYHPOS": 136,
"DCAM_IDPROP.SUBARRAYVPOS": 468,
"DCAM_IDPROP.SUBARRAYMODE": "DCAMPROP.MODE.ON",
"frame_count": 1,
"timeout": 5
}
}
}
}
from examples/hamamatsu/orca.json
{
"_id": "my_DcamCompatibleCamera",
"classname": "herosdevices.hardware.hamamatsu.dcam_camera.DcamCompatibleCamera",
"arguments": {
"config_dict": "<class 'dict'>",
"default_config": null,
"keep_device_open": true,
"payload_metadata": null
}
}
generated from signature
