Table of Contents
Controller
Definition of a set of hardware controllers. The file contains a JSON structure where each field name corresponds to the name of a controller (the names must be unique strings). These fields then contain a structure that defines the configuration parameters of the controller.
type::
String value that identifies which hardware interface will handle the controller behaviour. The set of allowed values is listed near the beginning of Controller.h, for example:
enum Type { NewPort, NexLine, SmarAct, SmarActUsb, SmarActTcp, Orchestra, Orocos, Zaber, ZmiEpics, PandA };
active::
Integer value that defines if the controller should be used (value of 1) or ignored (value of 0).
Default: 0
All further parameters are passed to the specific controller code without checking. Therefore, any default values or subtleties in usage will depend on the controller type.
NewPort
serverAddress::
String value that defines the network address where the controller can be accessed. Used together with serverPort
Default: empty string
serverPort::
Integer value that defines the port over which the controller can be accessed. Used together with serverAddress
Default: 0
timeout::
Double value that defines the controller timeout in seconds.
Default: 1.0
NexLine
serverAddress::
String value that defines the network address where the controller can be accessed.
Default: empty string
serverPort::
Integer value that defines the port over which the controller can be accessed.
Default: 0
SmarAct
deviceName::
String value that defines the filesystem path where the controller can be accessed.
Default: empty string
baudRate::
Integer value that defines communication rate of the controller.
Default: 9600
SmarActUsb
deviceName::
String value that defines the USB object name where the controller can be accessed.
Default: empty string
SmarActTcp
ipAddress::
String value that defines the network address where the controller can be accessed.
Default: empty string
port::
Integer value that defines the port over which the controller can be accessed.
Default: 55551
Orchestra
loopName::
String value that defines which Orchestra loop the controller is associated with.
Default: "ControlLoop"
Sensor3Name::
String value that defines the module name in the Orchestra configuration for the Z-axis interferometer.
Default: "AttoCube_Sensor"
nAxes::
Integer value that defines the number of axis objects that the controller handles.
Default: 2
Orocos
portName::
A string which is the IP address of the ZMQ REP socket that is intended to receive commands.
Default: "tcp://localhost:51555"
nAxes::
Integer value that defines the number of axis objects that the controller handles.
Default: 2
Zaber
deviceName::
String value that defines the filesystem path where the controller can be accessed.
Default: empty string
baudRate::
Integer value that defines communication rate of the controller.
Default: 9600
ZmiEpics
Documentation required.
PandATcp
serverAddress::
A string which represents the IP address of the server to which the controller will connect.
Default: empty string
cmdPort::
An integer which represents the port number used for sending commands to the server
Default: 8888
dataPort::
An integer which represents the port number used for receiving data from the server
Default: 8889
pixelBit::
Default: 0
encXField::
These fields represent encoder fields. Each one corresponds to a specific encoder channel (0 to 3). They are initialized from the configuration.
Default: -1
crtField::
Default: -1