diff --git a/Config_Controller.md b/Config_Controller.md index a852f7b..1416641 100644 --- a/Config_Controller.md +++ b/Config_Controller.md @@ -1,105 +1,126 @@ # 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`](https://gitlab.psi.ch/microspectro/pixelator/-/blob/master/PixelatorController/src/Controller.h#L19), for example: - +**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`](https://gitlab.psi.ch/microspectro/pixelator/-/blob/master/PixelatorController/src/Controller.h#L19), 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 +**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 +**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 +**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 +**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 +**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 - +**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 +**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" +**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" +**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 +**nAxes**::\ + Integer value that defines the number of `axis` objects that the controller handles. \ + **Default**: 2 ## Orocos -Documentation required. +**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 +**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 +**baudRate**::\ + Integer value that defines communication rate of the controller. \ + **Default**: 9600 ## ZmiEpics Documentation required. -## PandA +## PandATcp -Documentation required. \ No newline at end of file +**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 \ No newline at end of file