From 4f4336c7f6f7bcad7c7b34eaa0aea91620bb44fd Mon Sep 17 00:00:00 2001 From: watts Date: Mon, 17 Oct 2022 15:43:24 +0200 Subject: [PATCH] Move Positioner settings to new page --- PixelatorControllerSettings.md | 136 --------------------------------- 1 file changed, 136 deletions(-) diff --git a/PixelatorControllerSettings.md b/PixelatorControllerSettings.md index 81decf7..5dffc39 100644 --- a/PixelatorControllerSettings.md +++ b/PixelatorControllerSettings.md @@ -351,139 +351,3 @@ See source:trunk/PixelatorController/config/pixelClock.json for an example. ## Polarization -## Positioner -This file contains the positioner settings. - -See source:trunk/PixelatorController/config/positioner.json for an example. - - **atPositionCheckInverval_Default**::
- Double value used for all positioners that don't define their own atPositionCheckInverval.
- **Default**: 0.002 - - **atPositionCheckTimeout_Default**::
- Double value used for all positioners that don't define their own atPositionCheckTimeout.
- **Default**: 10.0 - -The remaining entries are positioner names with their settings. The settings depend on the positioner type. - -### base settings -The following settings are available for all types of positioners: - - **type**::
- String value that identifies which hardware interface will handle the positioner behaviour. The list of allowed values is listed near the beginning of [`Positioner.h`](https://gitlab.psi.ch/microspectro/pixelator/-/blob/master/PixelatorController/src/Positioner.h#L28), for example: - -`enum Type { Base, Epics, Tango, NewPort, NexLine, SmarAct, SmarActUsb, SmarActTcp, Interferometer, BeamShutter, AnalogOut, Transform, Galil, Zaber, ZmiEpics };` - - **active**::
- Integer value that defines if the positioner should be used (value of 1) or ignored (value of 0).
- **Default**: 0 - - **nexus_name**::
- String value defines the positioners name in the hdf5 file.
- **Default**: positioner name - - **axisName**::
- String value defines the name of the axis moved by this positioner.
- Example: Coarse and Fine X both belong to SampleX.
- **Default**: positioner name - - **description**::
- String value describes the positioner. - That value is written to the hdf5 file (NXcollection) and - it is sent to PixelatorGUI.
- **Default**: "" (empty string) - - **unit**::
- String value defines the unit of the positioner values (on the GUI and in the hdf5 file).
- **Default**: "" (empty string) - - **distributionMode**::
- String value defines the discribution of points to an interval.
- Example: 5 points from 0 to 10: - * "n": 0, 2.5, 5, 7.5, 10 - * "nPlus1": 0, 2, 4, 6, 8, 10 - - **Default**: "n" - - **hardwareUnitFactor**::
- Double value defines the conversion factor used to convert hardware positioner values to **unit***.
- **Default**: 1.0 - - **positionOffset**::
- Double value defines shift of coordinates between those communicated with the hardware controller and the user.
- **Default**: 0.0 - - **upperSoftLimit**::
- Double value defines largest value allowed to be requested to move to.
- **Default**: 0.0 - - **lowerSoftLimit**::
- Double value defines lowest value allowed to be requested to move to.
- **Default**: 0.0 - - **coarsePositioner**::
- String value defines cooperating positioner that will handle large movements.
- **Default**: "" (empty string) - - **finePositioner**::
- String value defines cooperating positioner that will handle fine movements.
- **Default**: "" (empty string) - - **maxVelocity**::
- Double value defines maximum rate of movement.
- **Default**: 0.0 - - **readOnly**::
- Boolean value true when the positioner can only be used to read its position (i.e. cannot request a move).
- **Default**: false - - **autoOff**::
- Positioners can be set to an unpowered state after 1 of 3 events: -1. positioner move due to direct request -2. positioner move due scan request -3. "All Motors Off" request - - "Never" : Positioner remains powered after scanning moves and is unaffected by an "All Motors Off" request.
- "Always" : positioner is always unpowered after any move.
- "SlowAxis" : Positioner is unpowered after each scan move if it is not part of the fast scanning axis.
- "Disabled" : Positioner does not physically have powered and unpowered states.
- "Manual" : Positioner remains powered after scanning moves, but is unpowered by "All Motors Off" request.
- **Default**: "Never" - -| autoOff value | direct | scan
(fastest axis) | scan
(not fastest) | "All Motors Off" | -|---------------|--------|------|------|------------------| -| "Never" | ON | ON | ON | ON | -| "Always" | OFF | OFF | OFF | OFF | -| "SlowAxis" | OFF | ON | OFF | OFF | -| "Disabled" | -- | -- | -- | -- | -| "Manual" | ON | ON | ON | OFF | - - - **beamlineControlPosition**::
- Integer value defines inclusion of (value greater than zero), and position of a positioner control in the "Beamline Control" and "Microscope Status" sections of the GUI. The "Beamline Control" section will only list positioners with a **beamlineControlPosition** value greater than zero, with each positioner listed in ascending **beamlineControlPosition** order. The "Microscope Status" GUI section will list any positioner with a **beamlineControlPosition** value of zero (except it will always ignore a positioner with the name "BeamShutter"). Negative values can be used to exclude a positioner from both sections of the GUI. -
 **Default**: 0 - - **epsilon**::
- Double value defines numerical precision to be considered when calculating positioner moves.
- **Default**: 0.1 - - **atPositionCheckInverval**::
- Double value defines the interval (in seconds) used in waitDoneMoving(). - getStatus() is called in this interval as long as it returns moving or - until atPositionCheckTimeout is exceeded.
- **Default**: atPositionCheckInverval_Default ([see above](#positioner)) - - **atPositionCheckTimeout**::
- Double value defines the timeout (in seconds) used in waitDoneMoving(). - getStatus() is called as long as it returns moving or until atPositionCheckTimeout is exceeded.
- **Default**: atPositionCheckTimeout_Default ([see above](#positioner)) - - **stringPositions**::
- Optional array of objects with members that defines relationships between string and numeric values. Pixelator always considers positioners to have a numerical value, while the hardware controllers sometimes operate in terms of named states (e.g. "on" and "off") and this array defines the translation. - * **string**: String value defines the position name - * **position**: Double value defines the position value - - These objects can be used to get - * a name of a position value (positionUserToStringHardware) - * the position of a named position (stringHardwareToPositionUser) -