From 308d752d0827946404e57dba3ce4bdae80ddb05b Mon Sep 17 00:00:00 2001 From: watts Date: Wed, 5 Jun 2024 14:12:23 +0200 Subject: [PATCH] Update Config_Controller --- Config_Controller.md | 199 +++++++++++++++++++++++-------------------- 1 file changed, 105 insertions(+), 94 deletions(-) diff --git a/Config_Controller.md b/Config_Controller.md index c33d967..a7f34a2 100644 --- a/Config_Controller.md +++ b/Config_Controller.md @@ -1,94 +1,105 @@ -# 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: - -`enum Type { NewPort, NexLine, SmarAct, SmarActUsb, SmarActTcp, Orchestra, Zaber};` - - **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 - - -## 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 - +# 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: + +`enum Type { NewPort, NexLine, SmarAct, SmarActUsb, SmarActTcp, Orchestra, Zaber};` +`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 + +Documentation required. + +## 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. + +## PandA + +Documentation required. \ No newline at end of file