From 12af680afce4541e0c1080884a394cf017e84c55 Mon Sep 17 00:00:00 2001 From: github-actions Date: Thu, 28 Sep 2023 23:12:13 +0000 Subject: [PATCH] Auto-update from Github Actions Workflow Deployed from commit cb288a96b7373d6a6949a1a24ed2cbb4d4f5343c (refs/heads/master) Deployed from commit 191a889b3063b09a990432af9321c458d0b77201 (refs/heads/master) --- master/.buildinfo | 2 +- .../lcls-plc-lamp-motion_ethercat.rst.txt | 1109 ++++++-- ...-plc-lamp-motion_lamp_motion_epics.rst.txt | 1113 ++++++++ ...plc-lamp-motion_lamp_motion_source.rst.txt | 19 +- ...lc-lamp-motion_lamp_motion_summary.rst.txt | 122 +- .../lcls-plc-lamp-motion_links.rst.txt | 4 +- master/_sources/test.rst.txt | 0 master/_static/basic.css | 2 +- master/_static/doctools.js | 2 +- master/_static/expand-collapse.svg | 7 + master/_static/language_data.js | 4 +- master/_static/searchtools.js | 165 +- master/_static/tree.css | 88 + master/_static/width.css | 3 + master/genindex.html | 16 +- master/index.html | 20 +- master/lcls-plc-lamp-motion_boxes.html | 22 +- master/lcls-plc-lamp-motion_ethercat.html | 1148 ++++++-- ...cls-plc-lamp-motion_lamp_motion_epics.html | 2485 +++++++++++++---- ...ls-plc-lamp-motion_lamp_motion_source.html | 37 +- ...s-plc-lamp-motion_lamp_motion_summary.html | 336 ++- master/lcls-plc-lamp-motion_links.html | 22 +- master/lcls-plc-lamp-motion_nc.html | 22 +- master/lcls-plc-lamp-motion_pragmas.html | 18 +- master/objects.inv | Bin 434 -> 456 bytes master/search.html | 16 +- master/searchindex.js | 2 +- master/test.html | 122 + versions.json | 2 +- 29 files changed, 5669 insertions(+), 1239 deletions(-) create mode 100644 master/_sources/test.rst.txt create mode 100644 master/_static/expand-collapse.svg create mode 100644 master/_static/tree.css create mode 100644 master/_static/width.css create mode 100644 master/test.html diff --git a/master/.buildinfo b/master/.buildinfo index a56cfb7..5b4f344 100644 --- a/master/.buildinfo +++ b/master/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 7cab3c97a9b923616143727c5cc76122 +config: ee4b537d3ef4b0abc29d72095d97d879 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/master/_sources/lcls-plc-lamp-motion_ethercat.rst.txt b/master/_sources/lcls-plc-lamp-motion_ethercat.rst.txt index 0de6dbf..37f3c50 100644 --- a/master/_sources/lcls-plc-lamp-motion_ethercat.rst.txt +++ b/master/_sources/lcls-plc-lamp-motion_ethercat.rst.txt @@ -1,209 +1,902 @@ -Box Hierarchy -------------- - - -#. **Power (EK1200) [ID: 1]** - EK1200-5000 EtherCAT Power supply (2A E-Bus) - - #. PMPS_FFO [ID: 2] - EL2202 2Ch. Dig. Output 24V, 0.5A - - - - #. License (EL6070) [ID: 3] - EL6070 1Ch. Licensing-Terminal - - - - #. PMPS_PRE [ID: 4] - EL6695 EtherCAT Bridge terminal (Primary) - - - - #. PLC Junction 1 (EK1122) [ID: 5] - EK1122 2 port EtherCAT junction - - #. **X1 AtmosphereMotion (EK1100) [ID: 6]** - EK1100 EtherCAT Coupler (2A E-Bus) - - #. GasJetX-EL7041 [ID: 7] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. GasJetY-EL7041 [ID: 8] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. GasJetZ-EL7041 [ID: 9] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. GasNeedleX-EL7041 [ID: 10] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. GasNeedleY-EL7041 [ID: 11] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. GasNeedleZ-EL7041 [ID: 12] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. FlowCellTheta-EL7041 [ID: 40] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. Microscope-EL7342 [ID: 13] - EL7342 2Ch. DC motor output stage (50V, 3.5A) - - - - #. GasJetXY-EL5042 [ID: 14] - EL5042 2Ch. BiSS-C Encoder - - - - #. GasJetZGasNeedleX-EL5042 [ID: 15] - EL5042 2Ch. BiSS-C Encoder - - - - #. GasNeedleYZ-EL5042 [ID: 16] - EL5042 2Ch. BiSS-C Encoder - - - - #. AtmosphereMotion-EK1110 [ID: 17] - EK1110 EtherCAT extension - - - - - - #. **X1 VacuumMotion (EK1100) [ID: 18]** - EK1100 EtherCAT Coupler (2A E-Bus) - - #. SamplePaddleX-EL7041 [ID: 19] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. SamplePaddleXY-EL1084 [ID: 20] - EL1084 4Ch. Dig. Input 24V, 3ms, negative - - - - #. SamplePaddleY-EL7041 [ID: 21] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. SamplePaddleX-EL5021 [ID: 22] - EL5021 1Ch. Sin/Cos Encoder - - - - #. SamplePaddleY-EL5021 [ID: 23] - EL5021 1Ch. Sin/Cos Encoder - - - - #. SamplePaddleZ-EL7041 [ID: 24] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. SamplePaddleZ-EL1084 [ID: 25] - EL1084 4Ch. Dig. Input 24V, 3ms, negative - - - - #. SamplePaddleZ-EL5021 [ID: 26] - EL5021 1Ch. Sin/Cos Encoder - - - - #. Term 56 (EL9410) [ID: 56] - EL9410 E-Bus Power Supplier (Diagnostics) - - - - #. Term 57 (EL7041) [ID: 57] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. Term 58 (EL5021) [ID: 58] - EL5021 1K. Sin/Cos Encoder - - - - #. Term 59 (EL1084) [ID: 59] - EL1084 4Ch. Dig. Input 24V, 3ms, negative - - - - #. Term 60 (EL7041) [ID: 60] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. Term 61 (EL5021) [ID: 61] - EL5021 1Ch. Sin/Cos Encoder - - - - #. Term 69 (EL9011) [ID: 69] - EL9011 End Terminal - - - - - - #. **TIXEL (EK1100) [ID: 62]** - EK1100 EtherCAT Coupler (2A E-Bus) - - #. TIXELX-EL7041 [ID: 63] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. TIXELXY_ENC-EL5042 [ID: 64] - EL5042 2Ch. BiSS-C Encoder - - - - #. TIXELY-EL7041 [ID: 65] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. TIXELZ-EL7041 [ID: 66] - EL7041 1Ch. Stepper motor output stage (50V, 5A) - - - - #. TIXELZ_ENC-EL5042 [ID: 67] - EL5042 2Ch. BiSS-C Encoder - - - - #. Term 68 (EK1110) [ID: 68] - EK1110 EtherCAT extension - - - - - - - - +EtherCAT Terminals +------------------ + +.. raw:: html + + \ No newline at end of file diff --git a/master/_sources/lcls-plc-lamp-motion_lamp_motion_epics.rst.txt b/master/_sources/lcls-plc-lamp-motion_lamp_motion_epics.rst.txt index 4a3edc9..0c882a0 100644 --- a/master/_sources/lcls-plc-lamp-motion_lamp_motion_epics.rst.txt +++ b/master/_sources/lcls-plc-lamp-motion_lamp_motion_epics.rst.txt @@ -1167,6 +1167,1119 @@ Database Records - | io: input + * - TMO:LAMP:MMS:14:PLC:bAllBackwardEnable_RBV + - bi + - Summary of axis permission to move backward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bAllEnable_RBV + - bi + - Summary of axis permission to have power + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bAllForwardEnable_RBV + - bi + - Summary of axis permission to move forward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bBrakeRelease_RBV + - bi + - TRUE if brake released + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bBusy_RBV + - bi + - TRUE if in the middle of a command + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bDone_RBV + - bi + - TRUE if command finished successfully + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bEnable_RBV + - bi + - Used internally to request enables + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:14:PLC:bEnable + - bo + - Used internally to request enables + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:14:PLC:bEnableDone_RBV + - bi + - TRUE if done enabling + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bError_RBV + - bi + - TRUE if we are in an error state + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + | update: 100hz notify + + + * - TMO:LAMP:MMS:14:PLC:bExecute_RBV + - bi + - Used internally and by the IOC to start or stop + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:14:PLC:bExecute + - bo + - Used internally and by the IOC to start or stop + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:14:PLC:bGantryAxis_RBV + - bi + - TRUE if gantry EPS active + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bGantryBackwardEnable_RBV + - bi + - TRUE if gantry ok to move backward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bGantryForwardEnable_RBV + - bi + - TRUE if gantry ok to move forward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bHardwareEnable_RBV + - bi + - TRUE if STO not hit + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bHome_RBV + - bi + - TRUE if at homing switch + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bHomeCmd_RBV + - bi + - Start the homing routine + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:bHomeCmd + - bo + - Start the homing routine + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:bHomed_RBV + - bi + - TRUE if the motor has been homed + - | io: input + + + * - TMO:LAMP:MMS:14:PLC:bLimitBackwardEnable_RBV + - bi + - FALSE if reverse limit hit + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bLimitForwardEnable_RBV + - bi + - FALSE if forward limit hit + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bMoveCmd_RBV + - bi + - Start a move + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:bMoveCmd + - bo + - Start a move + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:bPowerSelf_RBV + - bi + - FALSE if axis is in PMPS + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bReset_RBV + - bi + - Used internally to reset errors + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:14:PLC:bReset + - bo + - Used internally to reset errors + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:14:PLC:bSafetyReady_RBV + - bi + - TRUE if safe to start a move + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:14:PLC:bUserEnable_RBV + - bi + - Used to disable power entirely for an axis + - | field: ONAM ENABLE + | field: ZNAM DISABLE + | io: output + + + * - TMO:LAMP:MMS:14:PLC:bUserEnable + - bo + - Used to disable power entirely for an axis + - | field: ONAM ENABLE + | field: ZNAM DISABLE + | io: output + + + * - TMO:LAMP:MMS:14:PLC:fAcceleration_RBV + - ai + - Used internally and by the IOC to set acceleration + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:fAcceleration + - ao + - Used internally and by the IOC to set acceleration + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:fDeceleration_RBV + - ai + - Used internally and by the IOC to set deceleration + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:fDeceleration + - ao + - Used internally and by the IOC to set deceleration + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:fHomePosition_RBV + - ai + - Used internally and by the IOC to pick home position + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:fHomePosition + - ao + - Used internally and by the IOC to pick home position + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:fPosDiff_RBV + - ai + - Position lag difference + - | io: input + + + * - TMO:LAMP:MMS:14:PLC:fPosition_RBV + - ai + - Used internally and by the IOC as the set position + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:fPosition + - ao + - Used internally and by the IOC as the set position + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:fVelocity_RBV + - ai + - Used internally and by the IOC to set velocity + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:fVelocity + - ao + - Used internally and by the IOC to set velocity + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:nBrakeMode_RBV + - mbbi + - Describes when the brake will be released + - | io: input + + + * - TMO:LAMP:MMS:14:PLC:nCmdData_RBV + - longin + - Used internally and by the IOC to pass extra args + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:nCmdData + - longout + - Used internally and by the IOC to pass extra args + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:nCommand_RBV + - longin + - Used internally and by the IOC to pick move type + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:nCommand + - longout + - Used internally and by the IOC to pick move type + - | io: output + + + * - TMO:LAMP:MMS:14:PLC:nEnableMode_RBV + - mbbi + - Describes when the axis will automatically get power + - | io: input + + + * - TMO:LAMP:MMS:14:PLC:nEncoderCount_RBV + - longin + - Count from encoder hardware + - | io: input + + + * - TMO:LAMP:MMS:14:PLC:nErrorId_RBV + - longin + - Error code if nonzero + - | io: input + | update: 100hz notify + + + * - TMO:LAMP:MMS:14:PLC:nHomingMode_RBV + - mbbi + - Describes our homing strategy + - | io: input + + + * - TMO:LAMP:MMS:14:PLC:nMotionAxisID_RBV + - longin + - Unique ID assigned to each axis in the NC + - | io: input + + + * - TMO:LAMP:MMS:14:PLC:sErrorMessage_RBV + - waveform + - Message to identify the error state + - | io: input + | update: 100hz notify + + + * - TMO:LAMP:MMS:14:PLC:sName_RBV + - waveform + - PLC program name + - | io: input + + + * - TMO:LAMP:MMS:15:PLC:bAllBackwardEnable_RBV + - bi + - Summary of axis permission to move backward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bAllEnable_RBV + - bi + - Summary of axis permission to have power + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bAllForwardEnable_RBV + - bi + - Summary of axis permission to move forward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bBrakeRelease_RBV + - bi + - TRUE if brake released + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bBusy_RBV + - bi + - TRUE if in the middle of a command + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bDone_RBV + - bi + - TRUE if command finished successfully + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bEnable_RBV + - bi + - Used internally to request enables + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:15:PLC:bEnable + - bo + - Used internally to request enables + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:15:PLC:bEnableDone_RBV + - bi + - TRUE if done enabling + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bError_RBV + - bi + - TRUE if we are in an error state + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + | update: 100hz notify + + + * - TMO:LAMP:MMS:15:PLC:bExecute_RBV + - bi + - Used internally and by the IOC to start or stop + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:15:PLC:bExecute + - bo + - Used internally and by the IOC to start or stop + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:15:PLC:bGantryAxis_RBV + - bi + - TRUE if gantry EPS active + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bGantryBackwardEnable_RBV + - bi + - TRUE if gantry ok to move backward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bGantryForwardEnable_RBV + - bi + - TRUE if gantry ok to move forward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bHardwareEnable_RBV + - bi + - TRUE if STO not hit + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bHome_RBV + - bi + - TRUE if at homing switch + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bHomeCmd_RBV + - bi + - Start the homing routine + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:bHomeCmd + - bo + - Start the homing routine + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:bHomed_RBV + - bi + - TRUE if the motor has been homed + - | io: input + + + * - TMO:LAMP:MMS:15:PLC:bLimitBackwardEnable_RBV + - bi + - FALSE if reverse limit hit + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bLimitForwardEnable_RBV + - bi + - FALSE if forward limit hit + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bMoveCmd_RBV + - bi + - Start a move + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:bMoveCmd + - bo + - Start a move + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:bPowerSelf_RBV + - bi + - FALSE if axis is in PMPS + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bReset_RBV + - bi + - Used internally to reset errors + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:15:PLC:bReset + - bo + - Used internally to reset errors + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:15:PLC:bSafetyReady_RBV + - bi + - TRUE if safe to start a move + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:15:PLC:bUserEnable_RBV + - bi + - Used to disable power entirely for an axis + - | field: ONAM ENABLE + | field: ZNAM DISABLE + | io: output + + + * - TMO:LAMP:MMS:15:PLC:bUserEnable + - bo + - Used to disable power entirely for an axis + - | field: ONAM ENABLE + | field: ZNAM DISABLE + | io: output + + + * - TMO:LAMP:MMS:15:PLC:fAcceleration_RBV + - ai + - Used internally and by the IOC to set acceleration + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:fAcceleration + - ao + - Used internally and by the IOC to set acceleration + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:fDeceleration_RBV + - ai + - Used internally and by the IOC to set deceleration + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:fDeceleration + - ao + - Used internally and by the IOC to set deceleration + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:fHomePosition_RBV + - ai + - Used internally and by the IOC to pick home position + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:fHomePosition + - ao + - Used internally and by the IOC to pick home position + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:fPosDiff_RBV + - ai + - Position lag difference + - | io: input + + + * - TMO:LAMP:MMS:15:PLC:fPosition_RBV + - ai + - Used internally and by the IOC as the set position + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:fPosition + - ao + - Used internally and by the IOC as the set position + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:fVelocity_RBV + - ai + - Used internally and by the IOC to set velocity + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:fVelocity + - ao + - Used internally and by the IOC to set velocity + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:nBrakeMode_RBV + - mbbi + - Describes when the brake will be released + - | io: input + + + * - TMO:LAMP:MMS:15:PLC:nCmdData_RBV + - longin + - Used internally and by the IOC to pass extra args + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:nCmdData + - longout + - Used internally and by the IOC to pass extra args + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:nCommand_RBV + - longin + - Used internally and by the IOC to pick move type + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:nCommand + - longout + - Used internally and by the IOC to pick move type + - | io: output + + + * - TMO:LAMP:MMS:15:PLC:nEnableMode_RBV + - mbbi + - Describes when the axis will automatically get power + - | io: input + + + * - TMO:LAMP:MMS:15:PLC:nEncoderCount_RBV + - longin + - Count from encoder hardware + - | io: input + + + * - TMO:LAMP:MMS:15:PLC:nErrorId_RBV + - longin + - Error code if nonzero + - | io: input + | update: 100hz notify + + + * - TMO:LAMP:MMS:15:PLC:nHomingMode_RBV + - mbbi + - Describes our homing strategy + - | io: input + + + * - TMO:LAMP:MMS:15:PLC:nMotionAxisID_RBV + - longin + - Unique ID assigned to each axis in the NC + - | io: input + + + * - TMO:LAMP:MMS:15:PLC:sErrorMessage_RBV + - waveform + - Message to identify the error state + - | io: input + | update: 100hz notify + + + * - TMO:LAMP:MMS:15:PLC:sName_RBV + - waveform + - PLC program name + - | io: input + + + * - TMO:LAMP:MMS:16:PLC:bAllBackwardEnable_RBV + - bi + - Summary of axis permission to move backward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bAllEnable_RBV + - bi + - Summary of axis permission to have power + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bAllForwardEnable_RBV + - bi + - Summary of axis permission to move forward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bBrakeRelease_RBV + - bi + - TRUE if brake released + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bBusy_RBV + - bi + - TRUE if in the middle of a command + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bDone_RBV + - bi + - TRUE if command finished successfully + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bEnable_RBV + - bi + - Used internally to request enables + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:16:PLC:bEnable + - bo + - Used internally to request enables + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:16:PLC:bEnableDone_RBV + - bi + - TRUE if done enabling + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bError_RBV + - bi + - TRUE if we are in an error state + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + | update: 100hz notify + + + * - TMO:LAMP:MMS:16:PLC:bExecute_RBV + - bi + - Used internally and by the IOC to start or stop + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:16:PLC:bExecute + - bo + - Used internally and by the IOC to start or stop + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:16:PLC:bGantryAxis_RBV + - bi + - TRUE if gantry EPS active + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bGantryBackwardEnable_RBV + - bi + - TRUE if gantry ok to move backward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bGantryForwardEnable_RBV + - bi + - TRUE if gantry ok to move forward + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bHardwareEnable_RBV + - bi + - TRUE if STO not hit + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bHome_RBV + - bi + - TRUE if at homing switch + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bHomeCmd_RBV + - bi + - Start the homing routine + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:bHomeCmd + - bo + - Start the homing routine + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:bHomed_RBV + - bi + - TRUE if the motor has been homed + - | io: input + + + * - TMO:LAMP:MMS:16:PLC:bLimitBackwardEnable_RBV + - bi + - FALSE if reverse limit hit + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bLimitForwardEnable_RBV + - bi + - FALSE if forward limit hit + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bMoveCmd_RBV + - bi + - Start a move + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:bMoveCmd + - bo + - Start a move + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:bPowerSelf_RBV + - bi + - FALSE if axis is in PMPS + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bReset_RBV + - bi + - Used internally to reset errors + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:16:PLC:bReset + - bo + - Used internally to reset errors + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: output + + + * - TMO:LAMP:MMS:16:PLC:bSafetyReady_RBV + - bi + - TRUE if safe to start a move + - | field: ONAM TRUE + | field: ZNAM FALSE + | io: input + + + * - TMO:LAMP:MMS:16:PLC:bUserEnable_RBV + - bi + - Used to disable power entirely for an axis + - | field: ONAM ENABLE + | field: ZNAM DISABLE + | io: output + + + * - TMO:LAMP:MMS:16:PLC:bUserEnable + - bo + - Used to disable power entirely for an axis + - | field: ONAM ENABLE + | field: ZNAM DISABLE + | io: output + + + * - TMO:LAMP:MMS:16:PLC:fAcceleration_RBV + - ai + - Used internally and by the IOC to set acceleration + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:fAcceleration + - ao + - Used internally and by the IOC to set acceleration + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:fDeceleration_RBV + - ai + - Used internally and by the IOC to set deceleration + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:fDeceleration + - ao + - Used internally and by the IOC to set deceleration + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:fHomePosition_RBV + - ai + - Used internally and by the IOC to pick home position + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:fHomePosition + - ao + - Used internally and by the IOC to pick home position + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:fPosDiff_RBV + - ai + - Position lag difference + - | io: input + + + * - TMO:LAMP:MMS:16:PLC:fPosition_RBV + - ai + - Used internally and by the IOC as the set position + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:fPosition + - ao + - Used internally and by the IOC as the set position + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:fVelocity_RBV + - ai + - Used internally and by the IOC to set velocity + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:fVelocity + - ao + - Used internally and by the IOC to set velocity + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:nBrakeMode_RBV + - mbbi + - Describes when the brake will be released + - | io: input + + + * - TMO:LAMP:MMS:16:PLC:nCmdData_RBV + - longin + - Used internally and by the IOC to pass extra args + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:nCmdData + - longout + - Used internally and by the IOC to pass extra args + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:nCommand_RBV + - longin + - Used internally and by the IOC to pick move type + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:nCommand + - longout + - Used internally and by the IOC to pick move type + - | io: output + + + * - TMO:LAMP:MMS:16:PLC:nEnableMode_RBV + - mbbi + - Describes when the axis will automatically get power + - | io: input + + + * - TMO:LAMP:MMS:16:PLC:nEncoderCount_RBV + - longin + - Count from encoder hardware + - | io: input + + + * - TMO:LAMP:MMS:16:PLC:nErrorId_RBV + - longin + - Error code if nonzero + - | io: input + | update: 100hz notify + + + * - TMO:LAMP:MMS:16:PLC:nHomingMode_RBV + - mbbi + - Describes our homing strategy + - | io: input + + + * - TMO:LAMP:MMS:16:PLC:nMotionAxisID_RBV + - longin + - Unique ID assigned to each axis in the NC + - | io: input + + + * - TMO:LAMP:MMS:16:PLC:sErrorMessage_RBV + - waveform + - Message to identify the error state + - | io: input + | update: 100hz notify + + + * - TMO:LAMP:MMS:16:PLC:sName_RBV + - waveform + - PLC program name + - | io: input + + * - TMO:LAMP:MMS:02:PLC:bAllBackwardEnable_RBV - bi - Summary of axis permission to move backward diff --git a/master/_sources/lcls-plc-lamp-motion_lamp_motion_source.rst.txt b/master/_sources/lcls-plc-lamp-motion_lamp_motion_source.rst.txt index 3c7d093..cc13ff0 100644 --- a/master/_sources/lcls-plc-lamp-motion_lamp_motion_source.rst.txt +++ b/master/_sources/lcls-plc-lamp-motion_lamp_motion_source.rst.txt @@ -40,8 +40,8 @@ Main // nEnableMode:=ENUM_StageEnableMode.ALWAYS, nHomingMode := ENUM_EpicsHomeCmd.ABSOLUTE_SET); // Gas Jet Y - {attribute 'TcLinkTo' := '.bLimitForwardEnable:=TIIB[GasJetZ-EL7041]^STM Status^Status^Digital input 1; - .bLimitBackwardEnable:=TIIB[GasJetZ-EL7041]^STM Status^Status^Digital input 2'} + {attribute 'TcLinkTo' := '.bLimitForwardEnable:=TIIB[GasJetZ-EL7041]^STM Status^Status^Digital input 2; + .bLimitBackwardEnable:=TIIB[GasJetZ-EL7041]^STM Status^Status^Digital input 1'} {attribute 'pytmc' := ' pv: TMO:LAMP:MMS:03 '} @@ -103,22 +103,25 @@ Main // ...// // TIXEL - {attribute 'TcLinkTo' := '.bLimitForwardEnable:=TIIB[TIXELX-EL7041]^STM Status^Status^Digital input 1; - .bLimitBackwardEnable:=TIIB[TIXELX-EL7041]^STM Status^Status^Digital input 2'} + {attribute 'TcLinkTo' := ' .bLimitForwardEnable:=TIIB[TIXELX-EL7041]^STM Status^Status^Digital input 1; + .bLimitBackwardEnable:=TIIB[TIXELX-EL7041]^STM Status^Status^Digital input 2'; + .nRawEncoderULINT:=TIIB[TIXELXY_ENC-EL5042]^FB Inputs Channel 1^Position'} {attribute 'pytmc' := ' pv: TMO:LAMP:MMS:14 '} M14 : DUT_MotionStage := (bPowerSelf:=TRUE, nEnableMode:=ENUM_StageEnableMode.DURING_MOTION); // TIXEL X - {attribute 'TcLinkTo' := '.bLimitForwardEnable:=TIIB[TIXELY-EL7041]^STM Status^Status^Digital input 1; - .bLimitBackwardEnable:=TIIB[TIXELY-EL7041]^STM Status^Status^Digital input 2'} + {attribute 'TcLinkTo' := ' .bLimitForwardEnable:=TIIB[TIXELY-EL7041]^STM Status^Status^Digital input 1; + .bLimitBackwardEnable:=TIIB[TIXELY-EL7041]^STM Status^Status^Digital input 2'; + .nRawEncoderULINT:=TIIB[TIXELXY_ENC-EL5042]^FB Inputs Channel 2^Position'} {attribute 'pytmc' := ' pv: TMO:LAMP:MMS:15 '} M15 : DUT_MotionStage := (bPowerSelf:=TRUE, nEnableMode:=ENUM_StageEnableMode.DURING_MOTION); // TIXEL Y - {attribute 'TcLinkTo' := '.bLimitForwardEnable:=TIIB[TIXELZ-EL7041]^STM Status^Status^Digital input 1; - .bLimitBackwardEnable:=TIIB[TIXELZ-EL7041]^STM Status^Status^Digital input 2'} + {attribute 'TcLinkTo' := ' .bLimitForwardEnable:=TIIB[TIXELZ-EL7041]^STM Status^Status^Digital input 1; + .bLimitBackwardEnable:=TIIB[TIXELZ-EL7041]^STM Status^Status^Digital input 2'; + .nRawEncoderULINT:=TIIB[TIXELZ_ENC-EL5042]^FB Inputs Channel 1^Position'} {attribute 'pytmc' := ' pv: TMO:LAMP:MMS:16 '} diff --git a/master/_sources/lcls-plc-lamp-motion_lamp_motion_summary.rst.txt b/master/_sources/lcls-plc-lamp-motion_lamp_motion_summary.rst.txt index 9c2ffd3..e996538 100644 --- a/master/_sources/lcls-plc-lamp-motion_lamp_motion_summary.rst.txt +++ b/master/_sources/lcls-plc-lamp-motion_lamp_motion_summary.rst.txt @@ -66,12 +66,12 @@ Constants Constants.bFPUSupport, BOOL, 634649464 (8) Constants.bLittleEndian, BOOL, 634649448 (8) Constants.bSimulationMode, BOOL, 634649456 (8) - Constants.CompilerVersion, VERSION, 637535808 (64) - Constants.CompilerVersionNumeric, DWORD, 637535936 (32) - Constants.nPackMode, UINT, 637535888 (16) - Constants.nRegisterSize, WORD, 637535872 (16) - Constants.RuntimeVersion, VERSION, 637535744 (64) - Constants.RuntimeVersionNumeric, DWORD, 637535904 (32) + Constants.CompilerVersion, VERSION, 638497728 (64) + Constants.CompilerVersionNumeric, DWORD, 638497856 (32) + Constants.nPackMode, UINT, 638497808 (16) + Constants.nRegisterSize, WORD, 638497792 (16) + Constants.RuntimeVersion, VERSION, 638497664 (64) + Constants.RuntimeVersionNumeric, DWORD, 638497824 (32) DefaultGlobals @@ -471,39 +471,48 @@ Main .. raw:: html
- 126 Symbols + 168 Symbols .. csv-table:: :header: Symbol, Type, Offset/Size :align: center - Main.fbMotionStageM1, FB_MotionStage, 634840704 (299392) - Main.fbMotionStageM1.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 634843200 (2048) - Main.fbMotionStageM1.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 634842176 (1024) - Main.fbMotionStageM2, FB_MotionStage, 635140096 (299392) - Main.fbMotionStageM2.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 635142592 (2048) - Main.fbMotionStageM2.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 635141568 (1024) - Main.fbMotionStageM3, FB_MotionStage, 635439488 (299392) - Main.fbMotionStageM3.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 635441984 (2048) - Main.fbMotionStageM3.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 635440960 (1024) - Main.fbMotionStageM4, FB_MotionStage, 635738880 (299392) - Main.fbMotionStageM4.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 635741376 (2048) - Main.fbMotionStageM4.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 635740352 (1024) - Main.fbMotionStageM5, FB_MotionStage, 636038272 (299392) - Main.fbMotionStageM5.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 636040768 (2048) - Main.fbMotionStageM5.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 636039744 (1024) - Main.fbMotionStageM6, FB_MotionStage, 636337664 (299392) - Main.fbMotionStageM6.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 636340160 (2048) - Main.fbMotionStageM6.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 636339136 (1024) - Main.fbMotionStageM7, FB_MotionStage, 636637056 (299392) - Main.fbMotionStageM7.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 636639552 (2048) - Main.fbMotionStageM7.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 636638528 (1024) - Main.fbMotionStageM8, FB_MotionStage, 636936448 (299392) - Main.fbMotionStageM8.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 636938944 (2048) - Main.fbMotionStageM8.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 636937920 (1024) - Main.fbMotionStageM9, FB_MotionStage, 637235840 (299392) - Main.fbMotionStageM9.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 637238336 (2048) - Main.fbMotionStageM9.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 637237312 (1024) + Main.fbMotionStageM1, FB_MotionStage, 634904448 (299392) + Main.fbMotionStageM1.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 634906944 (2048) + Main.fbMotionStageM1.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 634905920 (1024) + Main.fbMotionStageM14, FB_MotionStage, 637598976 (299392) + Main.fbMotionStageM14.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 637601472 (2048) + Main.fbMotionStageM14.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 637600448 (1024) + Main.fbMotionStageM15, FB_MotionStage, 637898368 (299392) + Main.fbMotionStageM15.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 637900864 (2048) + Main.fbMotionStageM15.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 637899840 (1024) + Main.fbMotionStageM16, FB_MotionStage, 638197760 (299392) + Main.fbMotionStageM16.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 638200256 (2048) + Main.fbMotionStageM16.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 638199232 (1024) + Main.fbMotionStageM2, FB_MotionStage, 635203840 (299392) + Main.fbMotionStageM2.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 635206336 (2048) + Main.fbMotionStageM2.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 635205312 (1024) + Main.fbMotionStageM3, FB_MotionStage, 635503232 (299392) + Main.fbMotionStageM3.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 635505728 (2048) + Main.fbMotionStageM3.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 635504704 (1024) + Main.fbMotionStageM4, FB_MotionStage, 635802624 (299392) + Main.fbMotionStageM4.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 635805120 (2048) + Main.fbMotionStageM4.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 635804096 (1024) + Main.fbMotionStageM5, FB_MotionStage, 636102016 (299392) + Main.fbMotionStageM5.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 636104512 (2048) + Main.fbMotionStageM5.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 636103488 (1024) + Main.fbMotionStageM6, FB_MotionStage, 636401408 (299392) + Main.fbMotionStageM6.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 636403904 (2048) + Main.fbMotionStageM6.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 636402880 (1024) + Main.fbMotionStageM7, FB_MotionStage, 636700800 (299392) + Main.fbMotionStageM7.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 636703296 (2048) + Main.fbMotionStageM7.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 636702272 (1024) + Main.fbMotionStageM8, FB_MotionStage, 637000192 (299392) + Main.fbMotionStageM8.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 637002688 (2048) + Main.fbMotionStageM8.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 637001664 (1024) + Main.fbMotionStageM9, FB_MotionStage, 637299584 (299392) + Main.fbMotionStageM9.fbDriveVirtual.MasterAxis.NcToPlc, NCTOPLC_AXIS_REF, 637302080 (2048) + Main.fbMotionStageM9.fbDriveVirtual.MasterAxis.PlcToNc, PLCTONC_AXIS_REF, 637301056 (1024) Main.M1, DUT_MotionStage, 634649472 (21248) Main.M1.Axis.NcToPlc, NCTOPLC_AXIS_REF, 634650560 (2048) Main.M1.Axis.PlcToNc, PLCTONC_AXIS_REF, 634649536 (1024) @@ -515,6 +524,39 @@ Main Main.M1.nRawEncoderINT, INT, 634658704 (16) Main.M1.nRawEncoderUINT, UINT, 634658688 (16) Main.M1.nRawEncoderULINT, ULINT, 634658624 (64) + Main.M14, DUT_MotionStage, 634840704 (21248) + Main.M14.Axis.NcToPlc, NCTOPLC_AXIS_REF, 634841792 (2048) + Main.M14.Axis.PlcToNc, PLCTONC_AXIS_REF, 634840768 (1024) + Main.M14.bBrakeRelease, BOOL, 634849816 (8) + Main.M14.bHardwareEnable, BOOL, 634849824 (8) + Main.M14.bHome, BOOL, 634849808 (8) + Main.M14.bLimitBackwardEnable, BOOL, 634849800 (8) + Main.M14.bLimitForwardEnable, BOOL, 634849792 (8) + Main.M14.nRawEncoderINT, INT, 634849936 (16) + Main.M14.nRawEncoderUINT, UINT, 634849920 (16) + Main.M14.nRawEncoderULINT, ULINT, 634849856 (64) + Main.M15, DUT_MotionStage, 634861952 (21248) + Main.M15.Axis.NcToPlc, NCTOPLC_AXIS_REF, 634863040 (2048) + Main.M15.Axis.PlcToNc, PLCTONC_AXIS_REF, 634862016 (1024) + Main.M15.bBrakeRelease, BOOL, 634871064 (8) + Main.M15.bHardwareEnable, BOOL, 634871072 (8) + Main.M15.bHome, BOOL, 634871056 (8) + Main.M15.bLimitBackwardEnable, BOOL, 634871048 (8) + Main.M15.bLimitForwardEnable, BOOL, 634871040 (8) + Main.M15.nRawEncoderINT, INT, 634871184 (16) + Main.M15.nRawEncoderUINT, UINT, 634871168 (16) + Main.M15.nRawEncoderULINT, ULINT, 634871104 (64) + Main.M16, DUT_MotionStage, 634883200 (21248) + Main.M16.Axis.NcToPlc, NCTOPLC_AXIS_REF, 634884288 (2048) + Main.M16.Axis.PlcToNc, PLCTONC_AXIS_REF, 634883264 (1024) + Main.M16.bBrakeRelease, BOOL, 634892312 (8) + Main.M16.bHardwareEnable, BOOL, 634892320 (8) + Main.M16.bHome, BOOL, 634892304 (8) + Main.M16.bLimitBackwardEnable, BOOL, 634892296 (8) + Main.M16.bLimitForwardEnable, BOOL, 634892288 (8) + Main.M16.nRawEncoderINT, INT, 634892432 (16) + Main.M16.nRawEncoderUINT, UINT, 634892416 (16) + Main.M16.nRawEncoderULINT, ULINT, 634892352 (64) Main.M2, DUT_MotionStage, 634670720 (21248) Main.M2.Axis.NcToPlc, NCTOPLC_AXIS_REF, 634671808 (2048) Main.M2.Axis.PlcToNc, PLCTONC_AXIS_REF, 634670784 (1024) @@ -704,7 +746,7 @@ TC_EVENTS :header: Symbol, Type, Offset/Size :align: center - TC_EVENTS.LCLSGeneralEventClass, LCLSGeneralEventClass, 637570784 (960) + TC_EVENTS.LCLSGeneralEventClass, LCLSGeneralEventClass, 638548320 (960) TwinCAT_SystemInfoVarList @@ -714,10 +756,10 @@ TwinCAT_SystemInfoVarList :header: Symbol, Type, Offset/Size :align: center - TwinCAT_SystemInfoVarList.__PlcTask, _Implicit_Task_Info, 637539104 (704) - TwinCAT_SystemInfoVarList._AppInfo, PlcAppSystemInfo, 637535968 (2048) - TwinCAT_SystemInfoVarList._TaskInfo, PlcTaskSystemInfo, 637538048 (1024) - TwinCAT_SystemInfoVarList._TaskOid_PlcTask, OTCID, 637539072 (32) - TwinCAT_SystemInfoVarList._TaskPouOid_PlcTask, OTCID, 637538016 (32) + TwinCAT_SystemInfoVarList.__PlcTask, _Implicit_Task_Info, 638501024 (704) + TwinCAT_SystemInfoVarList._AppInfo, PlcAppSystemInfo, 638497888 (2048) + TwinCAT_SystemInfoVarList._TaskInfo, PlcTaskSystemInfo, 638499968 (1024) + TwinCAT_SystemInfoVarList._TaskOid_PlcTask, OTCID, 638500992 (32) + TwinCAT_SystemInfoVarList._TaskPouOid_PlcTask, OTCID, 638499936 (32) diff --git a/master/_sources/lcls-plc-lamp-motion_links.rst.txt b/master/_sources/lcls-plc-lamp-motion_links.rst.txt index 51d1e69..0d155cb 100644 --- a/master/_sources/lcls-plc-lamp-motion_links.rst.txt +++ b/master/_sources/lcls-plc-lamp-motion_links.rst.txt @@ -490,8 +490,8 @@ Links lamp_motion Instance, PlcTask Inputs^Main.M2.bLimitBackwardEnable, TIID^PLC Rail (EtherCAT)^Power (EK1200)^PLC Junction 1 (EK1122)^X1 AtmosphereMotion (EK1100)^GasJetY-EL7041, STM Status^Status^Digital input 1 lamp_motion Instance, PlcTask Inputs^Main.M2.bLimitForwardEnable, TIID^PLC Rail (EtherCAT)^Power (EK1200)^PLC Junction 1 (EK1122)^X1 AtmosphereMotion (EK1100)^GasJetY-EL7041, STM Status^Status^Digital input 2 lamp_motion Instance, PlcTask Inputs^Main.M3.Axis.NcToPlc, TINC^NC-Task 1 SAF^Axes^GasJetZ, Outputs^ToPlc - lamp_motion Instance, PlcTask Inputs^Main.M3.bLimitBackwardEnable, TIID^PLC Rail (EtherCAT)^Power (EK1200)^PLC Junction 1 (EK1122)^X1 AtmosphereMotion (EK1100)^GasJetZ-EL7041, STM Status^Status^Digital input 2 - lamp_motion Instance, PlcTask Inputs^Main.M3.bLimitForwardEnable, TIID^PLC Rail (EtherCAT)^Power (EK1200)^PLC Junction 1 (EK1122)^X1 AtmosphereMotion (EK1100)^GasJetZ-EL7041, STM Status^Status^Digital input 1 + lamp_motion Instance, PlcTask Inputs^Main.M3.bLimitBackwardEnable, TIID^PLC Rail (EtherCAT)^Power (EK1200)^PLC Junction 1 (EK1122)^X1 AtmosphereMotion (EK1100)^GasJetZ-EL7041, STM Status^Status^Digital input 1 + lamp_motion Instance, PlcTask Inputs^Main.M3.bLimitForwardEnable, TIID^PLC Rail (EtherCAT)^Power (EK1200)^PLC Junction 1 (EK1122)^X1 AtmosphereMotion (EK1100)^GasJetZ-EL7041, STM Status^Status^Digital input 2 lamp_motion Instance, PlcTask Inputs^Main.M4.Axis.NcToPlc, TINC^NC-Task 1 SAF^Axes^GasNeedleX, Outputs^ToPlc lamp_motion Instance, PlcTask Inputs^Main.M4.bLimitBackwardEnable, TIID^PLC Rail (EtherCAT)^Power (EK1200)^PLC Junction 1 (EK1122)^X1 AtmosphereMotion (EK1100)^GasNeedleX-EL7041, STM Status^Status^Digital input 2 lamp_motion Instance, PlcTask Inputs^Main.M4.bLimitForwardEnable, TIID^PLC Rail (EtherCAT)^Power (EK1200)^PLC Junction 1 (EK1122)^X1 AtmosphereMotion (EK1100)^GasNeedleX-EL7041, STM Status^Status^Digital input 1 diff --git a/master/_sources/test.rst.txt b/master/_sources/test.rst.txt new file mode 100644 index 0000000..e69de29 diff --git a/master/_static/basic.css b/master/_static/basic.css index 30fee9d..f316efc 100644 --- a/master/_static/basic.css +++ b/master/_static/basic.css @@ -4,7 +4,7 @@ * * Sphinx stylesheet -- basic theme. * - * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ diff --git a/master/_static/doctools.js b/master/_static/doctools.js index d06a71d..4d67807 100644 --- a/master/_static/doctools.js +++ b/master/_static/doctools.js @@ -4,7 +4,7 @@ * * Base JavaScript utilities for all Sphinx HTML documentation. * - * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ diff --git a/master/_static/expand-collapse.svg b/master/_static/expand-collapse.svg new file mode 100644 index 0000000..f34809c --- /dev/null +++ b/master/_static/expand-collapse.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/master/_static/language_data.js b/master/_static/language_data.js index 250f566..367b8ed 100644 --- a/master/_static/language_data.js +++ b/master/_static/language_data.js @@ -5,7 +5,7 @@ * This script contains the language-specific data used by searchtools.js, * namely the list of stopwords, stemmer, scorer and splitter. * - * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -13,7 +13,7 @@ var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"]; -/* Non-minified version is copied as a separate JS file, is available */ +/* Non-minified version is copied as a separate JS file, if available */ /** * Porter Stemmer diff --git a/master/_static/searchtools.js b/master/_static/searchtools.js index 7918c3f..92da3f8 100644 --- a/master/_static/searchtools.js +++ b/master/_static/searchtools.js @@ -4,7 +4,7 @@ * * Sphinx JavaScript utilities for the full-text search. * - * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -99,7 +99,7 @@ const _displayItem = (item, searchTerms, highlightTerms) => { .then((data) => { if (data) listItem.appendChild( - Search.makeSearchSummary(data, searchTerms) + Search.makeSearchSummary(data, searchTerms, anchor) ); // highlight search terms in the summary if (SPHINX_HIGHLIGHT_ENABLED) // set in sphinx_highlight.js @@ -116,8 +116,8 @@ const _finishSearch = (resultCount) => { ); else Search.status.innerText = _( - `Search finished, found ${resultCount} page(s) matching the search query.` - ); + "Search finished, found ${resultCount} page(s) matching the search query." + ).replace('${resultCount}', resultCount); }; const _displayNextItem = ( results, @@ -137,6 +137,22 @@ const _displayNextItem = ( // search finished, update title and status message else _finishSearch(resultCount); }; +// Helper function used by query() to order search results. +// Each input is an array of [docname, title, anchor, descr, score, filename]. +// Order the results by score (in opposite order of appearance, since the +// `_displayNextItem` function uses pop() to retrieve items) and then alphabetically. +const _orderResultsByScoreThenName = (a, b) => { + const leftScore = a[4]; + const rightScore = b[4]; + if (leftScore === rightScore) { + // same score: sort alphabetically + const leftTitle = a[1].toLowerCase(); + const rightTitle = b[1].toLowerCase(); + if (leftTitle === rightTitle) return 0; + return leftTitle > rightTitle ? -1 : 1; // inverted is intentional + } + return leftScore > rightScore ? 1 : -1; +}; /** * Default splitQuery function. Can be overridden in ``sphinx.search`` with a @@ -160,13 +176,26 @@ const Search = { _queued_query: null, _pulse_status: -1, - htmlToText: (htmlString) => { + htmlToText: (htmlString, anchor) => { const htmlElement = new DOMParser().parseFromString(htmlString, 'text/html'); - htmlElement.querySelectorAll(".headerlink").forEach((el) => { el.remove() }); + for (const removalQuery of [".headerlinks", "script", "style"]) { + htmlElement.querySelectorAll(removalQuery).forEach((el) => { el.remove() }); + } + if (anchor) { + const anchorContent = htmlElement.querySelector(`[role="main"] ${anchor}`); + if (anchorContent) return anchorContent.textContent; + + console.warn( + `Anchored content block not found. Sphinx search tries to obtain it via DOM query '[role=main] ${anchor}'. Check your theme or template.` + ); + } + + // if anchor not specified or not found, fall back to main content const docContent = htmlElement.querySelector('[role="main"]'); - if (docContent !== undefined) return docContent.textContent; + if (docContent) return docContent.textContent; + console.warn( - "Content block not found. Sphinx search tries to obtain it via '[role=main]'. Could you check your theme or template." + "Content block not found. Sphinx search tries to obtain it via DOM query '[role=main]'. Check your theme or template." ); return ""; }, @@ -239,16 +268,7 @@ const Search = { else Search.deferQuery(query); }, - /** - * execute search (requires search index to be loaded) - */ - query: (query) => { - const filenames = Search._index.filenames; - const docNames = Search._index.docnames; - const titles = Search._index.titles; - const allTitles = Search._index.alltitles; - const indexEntries = Search._index.indexentries; - + _parseQuery: (query) => { // stem the search terms and add them to the correct list const stemmer = new Stemmer(); const searchTerms = new Set(); @@ -284,16 +304,32 @@ const Search = { // console.info("required: ", [...searchTerms]); // console.info("excluded: ", [...excludedTerms]); - // array of [docname, title, anchor, descr, score, filename] - let results = []; + return [query, searchTerms, excludedTerms, highlightTerms, objectTerms]; + }, + + /** + * execute search (requires search index to be loaded) + */ + _performSearch: (query, searchTerms, excludedTerms, highlightTerms, objectTerms) => { + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const titles = Search._index.titles; + const allTitles = Search._index.alltitles; + const indexEntries = Search._index.indexentries; + + // Collect multiple result groups to be sorted separately and then ordered. + // Each is an array of [docname, title, anchor, descr, score, filename]. + const normalResults = []; + const nonMainIndexResults = []; + _removeChildren(document.getElementById("search-progress")); - const queryLower = query.toLowerCase(); + const queryLower = query.toLowerCase().trim(); for (const [title, foundTitles] of Object.entries(allTitles)) { - if (title.toLowerCase().includes(queryLower) && (queryLower.length >= title.length/2)) { + if (title.toLowerCase().trim().includes(queryLower) && (queryLower.length >= title.length/2)) { for (const [file, id] of foundTitles) { let score = Math.round(100 * queryLower.length / title.length) - results.push([ + normalResults.push([ docNames[file], titles[file] !== title ? `${titles[file]} > ${title}` : title, id !== null ? "#" + id : "", @@ -308,46 +344,47 @@ const Search = { // search for explicit entries in index directives for (const [entry, foundEntries] of Object.entries(indexEntries)) { if (entry.includes(queryLower) && (queryLower.length >= entry.length/2)) { - for (const [file, id] of foundEntries) { - let score = Math.round(100 * queryLower.length / entry.length) - results.push([ + for (const [file, id, isMain] of foundEntries) { + const score = Math.round(100 * queryLower.length / entry.length); + const result = [ docNames[file], titles[file], id ? "#" + id : "", null, score, filenames[file], - ]); + ]; + if (isMain) { + normalResults.push(result); + } else { + nonMainIndexResults.push(result); + } } } } // lookup as object objectTerms.forEach((term) => - results.push(...Search.performObjectSearch(term, objectTerms)) + normalResults.push(...Search.performObjectSearch(term, objectTerms)) ); // lookup as search terms in fulltext - results.push(...Search.performTermsSearch(searchTerms, excludedTerms)); + normalResults.push(...Search.performTermsSearch(searchTerms, excludedTerms)); // let the scorer override scores with a custom scoring function - if (Scorer.score) results.forEach((item) => (item[4] = Scorer.score(item))); - - // now sort the results by score (in opposite order of appearance, since the - // display function below uses pop() to retrieve items) and then - // alphabetically - results.sort((a, b) => { - const leftScore = a[4]; - const rightScore = b[4]; - if (leftScore === rightScore) { - // same score: sort alphabetically - const leftTitle = a[1].toLowerCase(); - const rightTitle = b[1].toLowerCase(); - if (leftTitle === rightTitle) return 0; - return leftTitle > rightTitle ? -1 : 1; // inverted is intentional - } - return leftScore > rightScore ? 1 : -1; - }); + if (Scorer.score) { + normalResults.forEach((item) => (item[4] = Scorer.score(item))); + nonMainIndexResults.forEach((item) => (item[4] = Scorer.score(item))); + } + + // Sort each group of results by score and then alphabetically by name. + normalResults.sort(_orderResultsByScoreThenName); + nonMainIndexResults.sort(_orderResultsByScoreThenName); + + // Combine the result groups in (reverse) order. + // Non-main index entries are typically arbitrary cross-references, + // so display them after other results. + let results = [...nonMainIndexResults, ...normalResults]; // remove duplicate search results // note the reversing of results, so that in the case of duplicates, the highest-scoring entry is kept @@ -361,7 +398,12 @@ const Search = { return acc; }, []); - results = results.reverse(); + return results.reverse(); + }, + + query: (query) => { + const [searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms] = Search._parseQuery(query); + const results = Search._performSearch(searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms); // for debugging //Search.lastresults = results.slice(); // a copy @@ -466,14 +508,18 @@ const Search = { // add support for partial matches if (word.length > 2) { const escapedWord = _escapeRegExp(word); - Object.keys(terms).forEach((term) => { - if (term.match(escapedWord) && !terms[word]) - arr.push({ files: terms[term], score: Scorer.partialTerm }); - }); - Object.keys(titleTerms).forEach((term) => { - if (term.match(escapedWord) && !titleTerms[word]) - arr.push({ files: titleTerms[word], score: Scorer.partialTitle }); - }); + if (!terms.hasOwnProperty(word)) { + Object.keys(terms).forEach((term) => { + if (term.match(escapedWord)) + arr.push({ files: terms[term], score: Scorer.partialTerm }); + }); + } + if (!titleTerms.hasOwnProperty(word)) { + Object.keys(titleTerms).forEach((term) => { + if (term.match(escapedWord)) + arr.push({ files: titleTerms[term], score: Scorer.partialTitle }); + }); + } } // no match but word was a required one @@ -496,9 +542,8 @@ const Search = { // create the mapping files.forEach((file) => { - if (fileMap.has(file) && fileMap.get(file).indexOf(word) === -1) - fileMap.get(file).push(word); - else fileMap.set(file, [word]); + if (!fileMap.has(file)) fileMap.set(file, [word]); + else if (fileMap.get(file).indexOf(word) === -1) fileMap.get(file).push(word); }); }); @@ -549,8 +594,8 @@ const Search = { * search summary for a given text. keywords is a list * of stemmed words. */ - makeSearchSummary: (htmlText, keywords) => { - const text = Search.htmlToText(htmlText); + makeSearchSummary: (htmlText, keywords, anchor) => { + const text = Search.htmlToText(htmlText, anchor); if (text === "") return null; const textLower = text.toLowerCase(); diff --git a/master/_static/tree.css b/master/_static/tree.css new file mode 100644 index 0000000..2ef2eb4 --- /dev/null +++ b/master/_static/tree.css @@ -0,0 +1,88 @@ +/* Adapted from https://iamkate.com/code/tree-views/ - thanks! */ + +.tree{ + --spacing : 1.5rem; + --radius : 10px; +} + +.tree li{ + display : block; + position : relative; + padding-left : calc(2 * var(--spacing) - var(--radius) - 2px); +} + +.tree ul{ + margin-left : calc(var(--radius) - var(--spacing)); + padding-left : 0; +} + +.tree ul li{ + border-left : 2px solid #ddd; +} + +.tree ul li:last-child{ + border-color : transparent; +} + +.tree ul li::before{ + content : ''; + display : block; + position : absolute; + top : calc(var(--spacing) / -2); + left : -2px; + width : calc(var(--spacing) + 2px); + height : calc(var(--spacing) + 1px); + border : solid #ddd; + border-width : 0 0 2px 2px; +} + +.tree summary{ + display : block; + cursor : pointer; +} + +.tree summary::marker, +.tree summary::-webkit-details-marker{ + display : none; +} + +.tree summary:focus{ + outline : none; +} + +.tree summary:focus-visible{ + outline : 1px dotted #000; +} + +.tree summary::before{ + content : ''; + display : block; + position : absolute; + top : calc(var(--spacing) / 2 - var(--radius)); + left : calc(var(--spacing) - var(--radius) - 1px); + width : calc(2 * var(--radius)); + height : calc(2 * var(--radius)); + border-radius : 50%; + background : #ddd; +} + +.tree li::after { + content : ''; + display : block; + position : absolute; + top : calc(var(--spacing) / 2 - var(--radius)); + left : calc(var(--spacing) - var(--radius) - 1px); + width : calc(2 * var(--radius)); + height : calc(2 * var(--radius)); + border-radius : 50%; + background : transparent; +} + +.tree summary::before{ + z-index : 1; + background : #696 url('expand-collapse.svg') 0 0; +} + +.tree details[open] > summary::before{ + background-position : calc(-2 * var(--radius)) 0; +} diff --git a/master/_static/width.css b/master/_static/width.css new file mode 100644 index 0000000..fed1cff --- /dev/null +++ b/master/_static/width.css @@ -0,0 +1,3 @@ +.wy-nav-content { + max-width: none; +} diff --git a/master/genindex.html b/master/genindex.html index 5ad88ba..3da351d 100644 --- a/master/genindex.html +++ b/master/genindex.html @@ -1,11 +1,15 @@ - + Index — pcdshub/lcls-plc-lamp-motion documentation - - + + + + + + @@ -13,7 +17,7 @@ - + @@ -44,7 +48,7 @@ @@ -99,7 +103,7 @@

Index


-

© Copyright 2023, SLAC National Accelerator Laboratory.

+

© Copyright 2024, SLAC National Accelerator Laboratory.

Built with Sphinx using a diff --git a/master/index.html b/master/index.html index 0e51468..208c5b4 100644 --- a/master/index.html +++ b/master/index.html @@ -1,12 +1,16 @@ - + - + lcls-plc-lamp-motion — pcdshub/lcls-plc-lamp-motion documentation - - + + + + + + @@ -14,7 +18,7 @@ - + @@ -46,7 +50,7 @@ @@ -115,7 +119,7 @@

lcls-plc-lamp-motionAxis 16: TIXELZ -
  • Box Hierarchy
  • +
  • EtherCAT Terminals
  • Boxes
  • NC Settings
  • -
  • Box Hierarchy
  • +
  • EtherCAT Terminals
  • Boxes
  • Links
  • @@ -125,7 +129,7 @@

    Pragmas
    -

    © Copyright 2023, SLAC National Accelerator Laboratory.

    +

    © Copyright 2024, SLAC National Accelerator Laboratory.

    Built with
    Sphinx using a diff --git a/master/objects.inv b/master/objects.inv index e4aa174220684bc3c34c9743254834cf13c06b69..625dceaba64f151b06379b926902033ebfd56b72 100644 GIT binary patch delta 326 zcmV-M0lEIN1IPoAi+_|&OT;h`hVT6q0nZVpRNhcpIXrUW85|7QTWP6Z=-jH^jz3xy+@)E-0Pu3V7M43Wz>8X{RN~SDT z28Gc@i0c^F<^b*>;JdbtwTk&EZmv8jPk^f|L6a9vUKwZt-G9!?t9-8%bHh0|*_H8I z%sTDO5q#dIWmRn5V+iNH06TD;;i_E{M#twc+C5aH0;hy#a=||TX|RH?FZ-+_0-qQ% zQVkY1fV}A)hl@zDWJG;dTOe@@FQa7JPCfup=ynMu^w)-F1y!_r4dJ|(=Bq}UN0;~A z%DVFN{-0rfvp;@Mvog)hLtqD*5>ftUnqI>ABxKo@vU0%A=xMbF=6E+PjB{xdPWh6x YP$2lpH3;LVy3>ZBKneH755l6w`-S?WBLDyZ delta 304 zcmV-00nh%(1F{2oRD?>BPR#o2tS}<-n}24;OH%c%^$2+G=MS$r`%%ADdt3IERg{LY@uovII_AIB8`@h3R&$oPT8}A&BwUzDcf)YqO|y zP$#f?mDW+QbWb5%)&e(zp~O|?67ZskUKto-=;)j3eL*u?Kk*eKdc6=w(BA8{D-?xQ zlc8{vQ>4sRU;8a4v3s| - + Search — pcdshub/lcls-plc-lamp-motion documentation - - + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + + + +
    +
    +
    + +
    + +
    +

    © Copyright 2024, SLAC National Accelerator Laboratory.

    +
    + + Built with Sphinx using a + theme + provided by Read the Docs. + + +
    +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/versions.json b/versions.json index 52395b0..7e55a59 100644 --- a/versions.json +++ b/versions.json @@ -1 +1 @@ -{"folders": ["V1.0.4", "master", "v1.0.4", "v2.0.0"], "default-branch": "master", "labels": {"V1.0.4": "V1.0.4", "master": "master", "v1.0.4": "v1.0.4", "v2.0.0": "v2.0.0 (latest)"}, "versions": ["master", "v2.0.0", "v1.0.4", "V1.0.4"], "warnings": {"V1.0.4": ["outdated"], "master": ["unreleased"], "v1.0.4": ["outdated"], "v2.0.0": []}, "latest": "v2.0.0", "downloads": {"V1.0.4": [], "master": [], "v1.0.4": [], "v2.0.0": []}} \ No newline at end of file +{"folders": ["V1.0.4", "master", "v1.0.4", "v2.0.0"], "default-branch": "master", "labels": {"V1.0.4": "V1.0.4", "master": "master", "v1.0.4": "v1.0.4", "v2.0.0": "v2.0.0 (latest)"}, "versions": ["master", "v2.0.0", "V1.0.4", "v1.0.4"], "warnings": {"V1.0.4": ["outdated"], "master": ["unreleased"], "v1.0.4": ["outdated"], "v2.0.0": []}, "latest": "v2.0.0", "downloads": {"V1.0.4": [], "master": [], "v1.0.4": [], "v2.0.0": []}} \ No newline at end of file