Arm Control Programmer Notes

This group of panels are used during nominal operations when controlling a particular manipulator. Each panel shown here is provided for each manipulator. Therefore the Arm Summary panel is a template for four panels: DXL Arm Summary, DXR Arm Summary, PXL Arm Summary, and VID Arm Summary.

Command authority is required for that particular arm to be able to use the command object (colored in gray). So the operator must have command authority of the DXL system, before they will be able to use the Enable button on the DXL Arm Summary Panel

Contents

ARM Raw Mode = armRawMode
Joint Torque Control = armJTC
ARM Cartesian Control = armRCC
ARM Input Control = armIOC
ARM Trajectory Sequence = armTrajSeq
 
Menu Infomation
Input Menu = armIOCInputM


ARM Raw Mode = armRawMode

These panels provide a concise control for the different control modes for each arm.

 Form Name: armRawMode

Label: "ARM Raw Mode"

Form Id: <armSubsystemID>01

Objects
armRawModeSysObj
[0] Command Authority Button -> eci_cmdAuthCB(0)
[1] File Menu Button -> eci_fileMenuCB(0)
[2] Display Menu Button -> eci_displayMenuCB(0)
[3] pTool Sets Menu Button -> armsetsM_displayCB(3)
 
armRawModeLabelObj
[0] Controller
[1] Control Mode
[2] Frame
[3] Admittance Mode
[4] PTool X
[5] PTool Y
[6] PTool Z
[7] Command
[8] Verified
[9] Impedance Gains
[10] B
[11] M
[12] K
[13] Generated commands
 
armRawModLabel1Obj
[0] X
[1] Y
[2] Z
[3] RX
[4] RY
[5] RZ
 
armRawModeCmdObj
[0] Controller Menu -> armRawMode_controllerCB(0)
[1] Control Mode Menu -> armRawMode_controlModeCB(0)
[2] Frame Menu -> armRawMode_frameCB(0)
[3] Admitance Menu -> armRawMode_admittanceCB(0)
[4] pTool X Input-> armRawMode_pToolCB(0)
[5] pTool Y Input-> armRawMode_pToolCB(1)
[6] pTool Z Input-> armRawMode_pToolCB(2)
 
[7] Send Button -> armRawMode_sendCB(0)
[8] Automatic Hand Roll Button -> armRawMode_handRollCB(0)
[9] Automatic SEW Button -> armRawMode_SEWCB(0)
 
armRawModeCmd1Obj
[0-5] B Impedance Gains Inputs -> armRawMode_gainsCB(1)
where 0 = X, 1 = Y, 2 = Z, 3 = RX, 4 = RY, 5 = RZ
 
armRawModeCmd2Obj
[0-5] M Impedance Gains -> armRawMode_gainsCB(2)
where 0 = X, 1 = Y, 2 = Z, 3 = RX, 4 = RY, 5 = RZ
 
armRawModeCmd3Obj
[0-5] K Impedance Gains -> armRawMode_gainsCB(3)
where 0 = X, 1 = Y, 2 = Z, 3 = RX, 4 = RY, 5 = RZ
 
armRawModeTelObj [i]
The text boxes showing the telemetry of the commands defined in the labels above
 
[7] Automatic Hand Roll Actual indicator
[8] Automatic SEW Actual indicator
 
armRawMode_GenCmd [i]
The text boxes showing the generated commands, numbered as with armRawModeTelObj above
 
armRawModeTel1Obj
[0] Updating joint positions
[1] Outside workspace bounds
[2] Shoulder singular
[3] Wrist singular
[4] Wrist manipulability index
[5] Wrist joint limit index
[6] Telemetry valid
 
armRawModeTel2Obj
[0-9] Joint invalid (0->9)
 
armRawModLabel2Obj
[0] Updating joint positions
[1] Outside workspace bounds
[2] Shoulder singular
[3] Wrist singular
[4] Wrist manipulability index
[5] Wrist joint limit index
[6] Joint invalid (0->9)
[7] Telemetry valid
 

Controller Menu = armControllerM

Objects
armControllerMLabelObj
[0] Controller
 
armControllerMCmdObj
!!Note the parameter should match the definitions in RTSX/armcon/armCon.h
[0] None -> armRawMode_armControllerMenuButtonCB(0)
[1] Joint -> armRawMode_armControllerMenuButtonCB(1)
[2] Resolved Rate -> armRawMode_armControllerMenuButtonCB(2)
[3] Admittance -> armRawMode_armControllerMenuButtonCB(3)
 

Control Mode Menu = armControlModeM

armControlModeMLabelObj
[0] Control Mode
 
armControlModeMCmdObj
!!Note the parameter should match the definitions in RTSX/armcon/armCon.h
[0] Manual Rate-> armRawMode_armControlModeMenuButtonCB(0)
[1] Manual Position(Auto) -> armRawMode_armControlModeMenuButtonCB(1)
[2] Auto Target -> armRawMode_armControlModeMenuButtonCB(2)
[3] Auto WayPoint -> armRawMode_armControlModeMenuButtonCB(3)
[4] Track DXR -> armRawMode_armControlModeMenuButtonCB(6)
[5] Track DXL -> armRawMode_armControlModeMenuButtonCB(7)
[6] Pilot -> armRawMode_armControlModeMenuButtonCB(8)
 

Frame Menu = armFrameM

armFrameMLabelObj
[0] Frame
 
armFrameMCmdObj
!!Note the parameter should match the definitions in RTSX/armcon/armCon.h
[0] Base -> armRawMode_armFrameMenuButtonCB(0)
[1] Tool -> armRawMode_armFrameMenuButtonCB(1)
[2] Shuttle -> armRawMode_armFrameMenuButtonCB(2)
[3] Panel -> armRawMode_armFrameMenuButtonCB(3)
[4] Camera -> armRawMode_armFrameMenuButtonCB(4)
 

Admittance Menu = armAdmittanceM

armAdmittanceMLabelObj
[0] Admittance Mode
 
armAdmittanceMCmdObj
!!Note the parameter should match the definitions in RTSX/armcon/armCon.h
[0] Off -> armRawMode_armAdmittanceMenuButtonCB(0)
[1] Contact -> armRawMode_armAdmittanceMenuButtonCB(1)
[2] Teach -> armRawMode_armAdmittanceMenuButtonCB(2)

pTool Sets Panel = armpToolM

 
armpToolMLabelObj
[0] Arm Set Name
 
armpToolMLabel1Obj
[0] X
[1] Y
[2] Z
 
armpToolMCmdObj
[0] Tear Away Button -> armpToolM_tearCB(3)
[1] Load Button -> armpToolM_loadSetCB(3)
[2] Save Button -> armpToolM_saveSetCB(3)
[3] New Button -> armpToolM_newSetCB(3)
[4] Edit Button -> armpToolM_editSetCB(3)
[5] Copy Button -> armpToolM_copySetCB(3)
[6] Delete Button -> armpToolM_deleteCB(3)
[7] Send Button -> armpToolM_sendCB(3)
[8] Browser -> armpToolM_browserCB(3)
[9] Name Input
 
armpToolMCmd1Obj
[0-2] Joint Offset inputs -> armsetsM_inputCB(i)
where i represents the cartesian component 0 = X , 1 = Y, 2 = Z


ARM Joint Torque Control = armJTC

This panel allows the operator to control each joint in a position or torque mode.

 Form Name: armJTC

Label: "ARM Joint Torque Control"

Form Id: <armSubsystemID>02

Objects
armJTCSysObj
[0] Command Authority Button -> eci_cmdAuthCB(0)
[1] File Menu Button -> eci_fileMenuCB(0)
[2] Display Menu Button -> eci_displayMenuCB(0)
[3] Jt Sets Menu Button -> armsetsM_displayCB(1)
 
armJTCLabelObj
[0] DOF
[1] Mode
[2] Joint Position
[3] Joint Torque
[4] All
[5] Verif.
[6] Gen. cmd
[7] Command
[8] Verified
[9] Generated commands
[10] Desired
[11] ActualInc
[12] Command
[13] Verified
[14] Generated commands
[15] Desired
[16] Actual
[17] Send Message
 
armJTCLabel1Obj
[0-9] the DOF identifiers
where i is the DOF 0-9
 
armJTCCmdObj
[0] units button -> armJTC_unitsCB(0)
[1] Streaming button -> armJTC_streamCB(0)
[2] Update button -> armJTC_updateCB(0)
[3] RedrawCmdPos button -> armJTC_redrawCmdPosCB(0)
[4] Required browser -> armJTC_browserCB(0)
 
armJTCCmd1Obj
[0-9] Mode menu -> armJTC_modeMenuCB(i)
where i is the DOF 0-9
[10] Global Mode Menu -> armJTC_modeMenuCB(10)
 
armJTCCmd2Obj
[0-9] Pos Increment buttons -> armJTC_posIncrementCB(i)
where i is the DOF 0-9
 
armJTCCmd3Obj
[0-9] Pos Decrement buttons -> armJTC_posDecrementCB(i)
where i is the DOF 0-9
 
armJTCCmd4Obj
[0-9] Pos Zero buttons -> armJTC_posZeroCB(i)
where i is the DOF 0-9
[10] Global Pos Zero buttons -> armJTC_posZeroCB(10)
 
armJTCCmd5Obj
[0-9] Pos Inputs -> armJTC_posInputCB(i)
where i is the DOF 0-9
 
armJTCCmd6Obj
[0-9] Pos Copy buttons -> armJTC_posCopyCB(i)
where i is the DOF 0-9
[10] Global Pos Copy buttons -> armJTC_posCopyCB(10)
armJTCCmd7Obj
[0-9] Torque Increment buttons -> armJTC_trqIncrementCB(i)
where i is the DOF 0-9
 
armJTCCmd8Obj
[0-9] Torque Decrement buttons-> armJTC_trqDecrementCB(i)
where i is the DOF 0-9
 
armJTCCmd9Obj
[0-9] Torque Zero buttons -> armJTC_trqZeroCB(i)
where i is the DOF 0-9
[10] Global Torque Zero buttons -> armJTC_trqZeroCB(10)
 
armJTCCmd10Obj
[0-9] Torque Inputs -> armJTC_trqInputCB(i)
where i is the DOF 0-9
 
armJTCCmd11Obj
[0-9] Torque Copy buttons -> armJTC_trqCopyCB(i)
where i is the DOF 0-9
[10] Global Torque Copy buttons-> armJTC_trqCopyCB(10)
 
armJTCTelObj_VerPos
[0-9] Verified Postion text boxes
where i is the DOF 0-9
 
armJTCTelObj_GenCmdPos
[0-9] Generated commands Postion text boxes
where i is the DOF 0-9
 
armJTCTelObj_DesPos
[0-9] Desired Postion text boxes
where i is the DOF 0-9
 
armJTCTelObj_ActPos
[0-9] Actual Incremental Postion text boxes
where i is the DOF 0-9
 
armJTCTelObj_VerTrq
[0-9] Verified Torque text boxes
where i is the DOF 0-9
 
armJTCTelObj_GenCmTrq
[0-9] Generated commands Torque text boxes
where i is the DOF 0-9
 
armJTCTelObj_DesTrq
[0-9] Desired Torque text boxes
where i is the DOF 0-9
 
armJTCTelObj_ActTrq
[0-9] Actual Torque text boxes
where i is the DOF 0-9
 
armJTCTel3Obj
[0-9] Verified Command Mode text boxes
where i is the DOF 0-9
 
armJTCTel_ModeGenCmd
[0-9] Generated command Command Mode text boxes
where i is the DOF 0-9

** copy all buttons **
armJTCCmd_PosVerCopyAll -> armJTCCmd_PosVerCopyAllCB
armJTCCmd_PosGenCmdCopyAll -> armJTCCmd_PosGenCmdCopyAllCB
armJTCCmd_TrqVerCopyAll -> armJTCCmd_TrqVerCopyAllCB
armJTCCmd_TrqGenCmdCopyAll -> armJTCCmd_TrqGenCmdCopyAllCB
 

Joint Control Mode Menu = armJTCModeM

armJTCModeMLabelObj
[0] Joint Control Mode
 
armJTCModeMCmdObj
[0] None-> armJTCModeM_menuButtonCB(0)
[1] Position-> armJTCModeM_menuButtonCB(1)
[2] Torque-> armJTCModeM_menuButtonCB(2)
 

Joint Sets Panel = armsetsM

 
armsetsMLabelObj
[0] Arm Set Name
[1] MKS Units
 
armsetsMLabel1Obj
[0-9] The dof labels
where 0-9 represents each joint dof from 0 to 9
 
armsetsMCmdObj
[0] Tear Away Button -> armsetsM_tearCB(1)
[1] Load Button -> armsetsM_loadSetCB(1)
[2] Save Button -> armsetsM_saveSetCB(1)
[3] New Button -> armsetsM_newSetCB(1)
[4] Edit Button -> armsetsM_editSetCB(1)
[5] Copy Button -> armsetsM_copySetCB(1)
[6] Delete Button -> armsetsM_deleteCB(1)
[7] Send Button -> armsetsM_sendCB(1)
[8] Browser -> armsetsM_browserCB(1)
[9] Name Input
 
armsetsMCmd1Obj
[0-9] Joint Mode Buttons -> armsetsM_modeCB(i)
where i represents each joint dof from 0 to 9
 
armsetsMCmd2Obj
[0-9] Joint inputs -> armsetsM_inputCB(i)
where i represents each joint dof from 0 to 9


ARM Cartesian Control = armRCC

This panel is used to manually control the arm in cartesian rate or position.

 Form Name: armRCC

Label: "ARM Cartesian Control"

Form Id: <armSubsystemID>03

Objects
armRCCSysObj
[0] Command Authority Button -> eci_cmdAuthCB(0)
[1] File Menu Button -> eci_fileMenuCB(0)
[2] Display Menu Button -> eci_displayMenuCB(0)
 
armRCCLabelObj
[0] DOF
[1] Joint Position
[2] Joint Torque
[3] All
[4] Command
[5] Verified
[6] Generated commands
[7] Desired
[8] Actual
[9] Command
[10] Verified
[11] Generated commands
[12] Send Message
 
armRCCLabel1Obj
[0] Fwd
[1] Right
[2] Down
[3] Roll
[4] Pitch
[5] Yaw
[6] SEW
[7] HRoll
 
armRCCCmdObj
[1] Streaming button -> armRCC_streamCB(0)
[2] Update button -> armRCC_updateCB(0)
[3] Required browser -> armRCC_browserCB(0)
 
armRCCCmd2Obj
[0-7] Pos Increment buttons -> armRCC_posIncrementCB(i)
where i identifies the DOF as label in armRCCLabel1Obj
 
armRCCCmd3Obj
[0-7] Pos Decrement buttons -> armRCC_posDecrementCB(i)
where i identifies the DOF as label in armRCCLabel1Obj
 
armRCCCmd4Obj
[0-67 Pos Zero buttons -> armRCC_posZeroCB(i)
where i identifies the DOF as label in armRCCLabel1Obj
[8] Global Pos Zero buttons -> armRCC_posZeroCB(8)
 
armRCCCmd5Obj
[0-7] Pos Inputs -> armRCC_posInputCB(i)
where i identifies the DOF as label in armRCCLabel1Obj
 
armRCCCmd6Obj
[0-7] Pos Copy buttons -> armRCC_posCopyCB(i)
where i identifies the DOF as label in armRCCLabel1Obj
[8] Global Pos Copy buttons -> armRCC_posCopyCB(8)
armRCCCmd7Obj
[0-7] Rate Increment buttons -> armRCC_rateIncrementCB(i)
where i identifies the DOF as label in armRCCLabel1Obj
 
armRCCCmd8Obj
[0-7] Rate Decrement buttons-> armRCC_rateDecrementCB(i)
where i identifies the DOF as label in armRCCLabel1Obj
 
armRCCCmd9Obj
[0-7] Rate Zero buttons -> armRCC_rateZeroCB(i)
where i identifies the DOF as label in armRCCLabel1Obj
[8] Global Torque Zero buttons -> armRCC_rateZeroCB(8)
 
armRCCCmd10Obj
[0-7] Rate Inputs -> armRCC_rateInputCB(i)
where i identifies the DOF as label in armRCCLabel1Obj
 
armRCCCmd11Obj
[0-7] Rate Copy buttons -> armRCC_rateCopyCB(i)
where i identifies the DOF as label in armRCCLabel1Obj
[8] Global Torque Copy buttons-> armRCC_rateCopyCB(8)
 
armRCCTel_Pose_Verified
[0-7] Verified Postion text boxes
where i identifies the DOF as label in armRCCLabel1Obj
 
armRCCTel_Pose_GenCmd
[0-7] Generated commands Postion text boxes
where i identifies the DOF as label in armRCCLabel1Obj
 
armRCCTel1Obj
[0-7] Desired Postion text boxes
where i identifies the DOF as label in armRCCLabel1Obj
 
armRCCTel2Obj
[0-7] Actual Postion text boxes
where i identifies the DOF as label in armRCCLabel1Obj

armRCCTel3Obj

[0-7] Verified Rate text boxes
where i identifies the DOF as label in armRCCLabel1Obj
 
armRCCTel_Rate_GenCmd
[0-7] Generated commands Rate text boxes
where i identifies the DOF as label in armRCCLabel1Obj


ARM Input Control = armIOC

This panel allows the operator tor to chose which input device to bind to the arm controller.

 Form Name: armIOC

Label: "ARM Input Control"

Form Id: <armSubsystemID>04

Objects
armIOCSysObj
[0] Command Authority Button -> eci_cmdAuthCB(0)
[1] File Menu Button -> eci_fileMenuCB(0)
[2] Display Menu Button -> eci_displayMenuCB(0)
 
armIOCLabelObj
[0] Input Source
[1] Button Functions
[2] Mapping
[3] Rate/Position Commands
[4] Scaling
[5] Translational
[6] Rotational
[7] Units
 
armIOCLabel1Obj
[0] Fwd
[1] Right
[2] Down
[3] Roll
[4] Pitch
[5] Yaw
[6] SEW
[7] HRoll
 
armIOCCmdObj
[0] Input Source Menu -> armIOC_inputMenuCB(0)
[1] Mapping Toggle Button -> armIOC_mappingCB(0)
[2] Translation Scale Input -> armIOC_transScaleCB(0)
[3] Rotation Scale Input -> armIOC_rotScaleCB(0)
[4] Translational Units Menu -> armIOC_units(0)
[5] Rotational Units Menu -> armIOC_units(3)
[6] Required Browser -> armIOC_browserCB(0)
[7] IO Prefs Menu -> armIOC_prefMenuCB(0)
 
armIOCCmd1Obj
[0-6] Scale Inputs -> armIOC_scaleCB(i)
where i indicates which DOF to scale: 0 = Fwd, 1 = Right, 2 = Down, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7=HRoll
 
armIOCCmd2Obj
[0-6] Component Sliders -> armIOC_sliderCB(i)
where i indicates which DOF to scale: 0 = Fwd, 1 = Right, 2 = Down, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7=HRoll
 
armIOCCmd3Obj
[0 - 12] Input Buttons -> armIOC_buttonCB(i)
where i indicates the row of the button pressed starting from 0 at the top
 
armIOCCmd4Obj
[0 - 12] Button Function Menus -> armIOC_functionMenuCB(i)
where i indicates the row of the button pressed starting from 0 at the top
 
armIOCTel1Ob j
[0-6] Component Command Text Boxes
where i indicates which DOF to scale: 0 = Fwd, 1 = Right, 2 = Down, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7=HRoll
 
armIOCTel2Ob j
[0-6] Component Telemetry Sliders
where i indicates which DOF to scale: 0 = Fwd, 1 = Right, 2 = Down, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7=HRoll
 
armIOCTel3Ob
[0-6] Component Actual/ Verified Text Boxes
where i indicates which DOF to scale: 0 = Fwd, 1 = Right, 2 = Down, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7=HRoll

ARM Trajectory Sequence = armTrajSeq

This panel allows the operator to conrol trajectory sequences.

 Form Name: armTrajSeq

Label: "ARM Trajectory Sequence

Form Id: <armSubsystemID>05

Objects
armTrajSeqCSysObj
[0] Command Authority Button -> eci_cmdAuthCB(0)
[1] File Menu Button -> eci_fileMenuCB(0)
[2] Display Menu Button -> eci_displayMenuCB(0)
 
armTrajSeq_Label0
[0] State
[1] Time (s)
[2] Trajectory num
[3] Total
[4] Completed
[5] Last event
 
armTrajSeq_Label1
[0] Time (s)
[1] Joint
[2] Upper
[3] Lower
[4] Delta
[5] Time (s)
[6] Joint
[7] Amplitude
[8] Frequency
[9] Time (s)
[10] Joint
[11] Time (s)
[12] Number
 

armTrajSeq_Cmd

[0] Stop -> armTrajSeq_StopCB(0)
[1] UseCSInput-> armTrajSeq_UseCSInput CB(0)
[2] CopyAllGeneratedCommandsToOperatorCommands-> armTrajSeq_CopyGenToOpCB(0)
[3] StartLinear-> armTrajSeq_StartLinearCB(0)
[4] StartSine-> armTrajSeq_StartSineCB(0)
[5] StartGoto-> armTrajSeq_StartGotoCB(0)
[6] StartHold-> armTrajSeq_StartHoldCB(0)
[7] StartSequence-> armTrajSeq_StartSequenceCB(0)
[8] CopyOperatorJointPositions-> armTrajSeq_Goto_CopyOpCB(0)
[9] CopyGeneratedJointPositions-> armTrajSeq_Goto_CopyGenCB(0)

armTrajSeq_Linear_Cmd

[0] TimeToTake -> armTrajSeq_Linear_TimeToTakeCB(0)
[1] Joint -> armTrajSeq_Linear_JointCB(0)
[2] Lower -> armTrajSeq_Linear_LowerCB(0)
[3] Upper -> armTrajSeq_Linear_UpperCB(0)
[4] Delta -> armTrajSeq_Linear_DeltaCB(0)

armTrajSeq_Sine_Cmd

[0] TimeToTake -> armTrajSeq_Sine_TimeToTakeCB(0)
[1] Joint -> armTrajSeq_Sine_JointCB(0)
[2] Amplitude -> armTrajSeq_Sine_AmplitudeCB(0)
[3] Frequency -> armTrajSeq_Sine_FrequencyCB(0)
 

armTrajSeq_Goto_Cmd

[0] TimeToTake -> armTrajSeq_Goto_TimeToTakeCB(0)
 
armTrajSeq_Goto_Cmd1
[0-9] Joint positions -> armTrajSeq_Goto_JointCB(i)
where i is the joint

armTrajSeq_Hold_Cmd

[0] TimeToTake -> armTrajSeq_Hold_TimeToTakeCB(0)

armTrajSeq_Seq_Cmd

[0] Num -> armTrajSeq_Seq_NumCB(0)
 
 

 

 
armIOCTel3Ob
[0-6] Component Actual/ Verified Text Boxes
where i indicates which DOF to scale: 0 = Fwd, 1 = Right, 2 = Down, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7=HRoll

Menu Infomation


Input Menu = armIOCInputM

This menu appears when the operator activates the Input Menu Button on the Input Control form. It allows them to specify which input device to monitor and control.

 Form Name: armIOCInputM

Label: N/A

Form Id: N/A

Objects
 
armIOCInputMLabelObj
[0] Input Device
 
Manual Button Menu Item
armIOCInputMManualButton -> armIOCInputM_inputMenuButtonCB(-1)
 
armIOCInputMCmdObj
[0] HCA -> armIOCInputM_inputMenuButtonCB(0)
[1] HCB -> armIOCInputM_inputMenuButtonCB(1)
[2] HCC -> armIOCInputM_inputMenuButtonCB(2)
[3] HCD -> armIOCInputM_inputMenuButtonCB(3)
 
[4] SBA -> armIOCInputM_inputMenuButtonCB(4)
[5] SBB -> armIOCInputM_inputMenuButtonCB(5)
[6] SBC -> armIOCInputM_inputMenuButtonCB(6)
[7] SBD -> armIOCInputM_inputMenuButtonCB(7)
 
[8] HCA_Sim -> armIOCInputM_inputMenuButtonCB(8)
[9] HCB_Sim -> armIOCInputM_inputMenuButtonCB(9)
[10] HCC_Sim -> armIOCInputM_inputMenuButtonCB(10)
[11] HCD_Sim -> armIOCInputM_inputMenuButtonCB(11)
 
[12] Log A -> armIOCInputM_inputMenuButtonCB(12)
[13] Log B -> armIOCInputM_inputMenuButtonCB(13)
[14] Log C -> armIOCInputM_inputMenuButtonCB(14)
[15] Log D -> armIOCInputM_inputMenuButtonCB(15)
 
[16] Mag A -> armIOCInputM_inputMenuButtonCB(16)
[17] Mag B -> armIOCInputM_inputMenuButtonCB(17)
[18] Mag C -> armIOCInputM_inputMenuButtonCB(18)
[19] Mag D -> armIOCInputM_inputMenuButtonCB(19)
 
[20] TTNA -> armIOCInputM_inputMenuButtonCB(20)
[21] TTNB -> armIOCInputM_inputMenuButtonCB(21)
[22] TTNC -> armIOCInputM_inputMenuButtonCB(22)
[23] TTND -> armIOCInputM_inputMenuButtonCB(23)
 
[24] HCA_TSX -> armIOCInputM_inputMenuButtonCB(24)
[25] HCB_TSX -> armIOCInputM_inputMenuButtonCB(25)
[26] HCC_TSX -> armIOCInputM_inputMenuButtonCB(26)
[27] HCD_TSX -> armIOCInputM_inputMenuButtonCB(27)


Commands Menu = armIOCCmdM

This menu appears when the operator activates one of the Button Function menus on the Input Control form. It allows them to specify which command function is linked to a particular IO button.

 Form Name: armIOCCmdM

Label: N/A

Form Id: N/A

Objects
 
armIOCCmdMLabelObj
[0] Command Functions
 
armIOCCmdMCmdObj
[0] None -> armIOCCmdM_cmdMenuButtonCB(0)
[1] Safe -> armIOCCmdM_cmdMenuButtonCB(1)
[2] Toggle Cmd Auth -> armIOCCmdM_cmdMenuButtonCB(2)
[3] Null Forces -> armIOCCmdM_cmdMenuButtonCB(3)
[4] Deadman/Zero Input -> armIOCCmdM_cmdMenuButtonCB(4)
[5] SEW CW -> armIOCCmdM_cmdMenuButtonCB(5)
[6] SEW CCW -> armIOCCmdM_cmdMenuButtonCB(6)
[7] DOF8 CW -> armIOCCmdM_cmdMenuButtonCB(7)
[8] DOF8 CCW -> armIOCCmdM_cmdMenuButtonCB(8)
[9] DO9 CW -> armIOCCmdM_cmdMenuButtonCB(9)
[10] DOF9 CCW -> armIOCCmdM_cmdMenuButtonCB(10)


Preferences Menu = armIOCPrefM

This menu appears when the operator activates the IO Pref menu on the Input Control form. It allows the operator to save and load IO preferences file.

 Form Name: armIOCPrefM

Label: N/A

Form Id: N/A

armIOCPremMLabelObj
[0] IO Preferences
 
armIOCPrefMCmjObj
[0] Load ...-> armIOCPrefM_loadCB(0)
[1] Save... -> armIOCPrefM_saveCB(0)