Arm Summary Control Programmer Notes

 Application Name:

 <>armSum

Left Arm = LarmSum
Right Arm = RarmSum
Grapple Arm = GarmSum
Video Arm = VarmSum
Left 8DOF Arm = Larm8Sum
Right 8DOF Arm = Rarm8Sum
Positioning Leg = PxlSum
Video 7DOF Arm = Vid7Sum

 Development Path:

 ACS/armCS/sum

 Wm_appl =

 <>0

Left Arm = 30
Right Arm = 40
Grapple Arm = 50
Video Arm = 60
Left 8DOF Arm = 80
Right 8DOF Arm = 90
Positioning Leg = 100
Video 7DOF Arm = 110

 Wm_winNum =

 6

Contents

Form Information
<> Arm Summary = armSum
<> Arm Joint Control = armJJ
<> Arm IO Control = ioControl
<> Arm Cartesian Command = armCC
<> Arm Impedance Control = armIC
IO Display = IODisplay
Obsolete Panels
<> Arm Resolve Rate Contrl = armRR
<> Arm Cartesain Positon = armCP

Form Infomation


Wm_form[1] = armSum
Label = "<> Arm Summary"
eg. Left Arm Summary, Right Arm Summary, Grapple Arm Summary, Video Arm Summary, Left 8DOF Arm Summary, Right 8DOF Arm Summary
 

Objects

cac_CmdObj
[2] Command Authority Button -> cmdCB(0)
 
armSumSysObj
[0] File Menu Button -> wm_fileMenuButtonCB(0)
[1] Tool Sets Button -> as_displayArmSetsCB(3)
[2] Display Menu Button -> wm_displayMenuButtonCB(0)
 
armSumChoiceObj
None
 
armSumLabelObj
[1] Master Control
[2] Controller
[3] Trajectory Mode
[4] Gripper
[5] Tool
[6] Loop Rates
 
armSumCmdObj
[1] Enable Button -> asEnableCB(0)
[2] Reset Button -> as_ResetCB(0)
[3] Null Forces Button -> as_NullForcesCB(0)
[4] Gripper Open Button -> as_EECB(1)
[5] Gripper Closed Button -> as_EECB(-1)
[6] Tool CCW Button -> as_EECB(2)
[7] Tool CW Button -> as_EECB(-2)
[8] Joint Mode Button -> as_ModeCB(0)
[9] Rate Mode Button -> as_ModeCB(1)
[10] Admittance Mode Button -> asModeCB(2)
[11] Impedance Mode Button -> as_ModeCB(3)
[12] Send PTool Button -> as_PToolSendCB(0)
[13] X input
[14] Y input
[15] Z input
[16] Track Button -> as_TrajModeCB(0)
[17] Plan Button -> as_TrajModeCB(1)
[18] Simulate Button -> as_SimCB(0)
[19] Execute Button -> as_ExecuteCB(0)
[20] Inner Loop Rate -> as_LoopRateCB(0)
[21] Outer Loop Rate -> as_LoopRateCB(0)
[22] Time Delay Input -> as_timeDelayCB(0)
[23] SamplingRate Input -> as_timeDelayCB(0)
 
armSumTelObj
None
 
Utility Form: pToolSets
Label = "<> Arm Tool Offset Sets"
eg. Left Arm Tool Offset Sets, Right Arm Tool Offset Sets, Grapple Arm Tool Offset Sets, Video Arm Tool Offset Sets, Left 8DOF Arm Tool Offset Sets, Right 8DOF Arm Tool Offset Sets
 
Objects
 
pToolSetsLabelObj
[1] Tool Sets Name
 
pToolSetsLabel1Obj
[0-2] Position Component Labels
where i is the id of the offset Component 0 = X, 1 = Y, 2 = Z
 
pToolSetsCmdObj
[1] Load Button -> as_loadSetCB(3)
[2] Save Button -> as_saveSetCB(3)
[3] New Button -> as_newSetCB(3)
[4] Edit Button -> as_editSetCB(3)
[5] Delete Button -> as_deleteSetCB(3)
[6] Tear Away Button -> as_tearCB(3)
[7] Send Button -> as_sendCB(3)
[8] Name Input
[9] Sets Browser -> as_browseCB(3)
[10] Copy Button -> as_copySetCB(3)
 
ctpSetsCmd1Obj
[0-2] PToll Offset Input Fields
where i is the id of the offset Component 0 = X, 1 = Y, 2 = Z
 

Wm_form[2] = armJJ
Label = "<> Arm Joint Control"
eg. Left Arm Joint Control, Right Arm Joint Control, Grapple Arm Joint Control, Video Arm Joint Control, Left 8DOF Arm Joint Control, Right 8DOF Arm Joint Control

Objects

cac_CmdObj
[3] Command Authority Button -> cmdCB(0)
 
armJJSysObj
[0] File Menu Button -> wm_fileMenuButtonCB(0)
[1] Arm Sets Menu Button -> as_displayArmSets(1)
[2] Display Menu Button -> wm_displayMenuButtonCB(0)
 
armJJChoiceObj
None
 
armJJLabelObj
[0-7] Number Joint Labels
[8] Input Source Label
 
armJJCmdObj
[0-7] Desired Inputs -> arr_InputCB(i)
where i is the number of the joint
 
armJJCmd1Obj
[0-7] Joint Decrement Buttons -> arr_DownButtonCB(i)
where i is the number of the joint
 
armJJCmd2Obj
[0-7] Joint Increment Buttons -> arr_UpButtonCB(i)
where i is the number of the joint
 
armJJCmd3Obj
[0] Trigger Button -> actp_sendCB(0)
[1] Trajectory Menu Button -> ajj_JointTrajMenuButtonCB(0)
[2] Trajectory Input -> ajj_JointTrajInputCB(0)
[3] Manual Input Source Radio Button-> arr_ioSourceCB(0)
[4] Manual Input Source Menu -> arr_manualSourceCB(0)
[5] Auto Input Source Radio Button -> arr_ioSourceCB(0)
[6] Auto Input Soure Menu -> arr_autoSource(0)
 
armJJTelObj
[0-7] Actual Inputs
where i is the number of the joint
 
armJJTel1Obj
[0-7] Desired Sliders
where i is the number of the joint
 
armJJTel2Obj
[0-7] Actual Sliders
where i is the number of the joint
 
Menus
JointTrajMenuButton
[0-10] Joint Traj Menu Button -> ajj_JointTrajMenuButtonCB(i)
where i is the id of the trajectory 0 = None
 
Utility Form: ArmSets
Label = "<> Arm Joint Sets"
eg. Left Arm Joint Sets, Right Arm Joint Sets, Grapple Arm Joint Sets, Video Arm Joint Sets, Left 8DOF Arm Joint Sets, Right 8DOF Arm Joint Sets
 
Objects
 
armSetsLabelObj
[1] Arm Sets Name
 
armSetsLabel1Obj
[0-7] Number Joint Labels
 
armSetsCmdObj
[1] Load Button -> as_loadSetCB(1)
[2] Save Button -> as_saveSetCB(1)
[3] New Button -> as_newSetCB(1)
[4] Edit Button -> as_editSetCB(1)
[5] Delete Button -> as_deleteSetCB(1)
[6] Tear Away Button -> as_tearCB(1)
[7] Send Button -> as_sendCB(1)
[8] Name Input
[9] Sets Browser -> as_browseCB(1)
 
armSetsCmd1Obj
[0-7] Joint Input Fields
 

Wm_form[3] = ioControl
Label = "<> Arm IO Control"
 
This form is compiled using the ioControl function files which are used by every module using input devices to control a project.
 
Go to ioControl info.

Wm_form[4] = armCC
Label = "<> Arm Cartesian Control"
eg. Left Arm Cartesian Position, Right Arm Cartesian Position, Grapple Arm Cartesian Position, Video Arm Cartesian Position, Left 8DOF Arm Cartesian Position, Right 8DOF Arm Cartesian Position

Objects

cac_CmdObj
[4] Command Authority Button -> cmdCB(0)
 
armCCObj
[0] File Menu Button -> wm_fileMenuButtonCB(0)
[1] Cartesian Position Sets Menu Button -> as_displayArmSetsCB(2)
[2] Display Menu Button -> wm_displayMenuButtonCB(0)
 
armCCChoiceObj
None
 
armCCLabelObj
[0-6] Component Labels 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW [Deg]
[7]
[8] Angle [Deg]
[9] Time [s]
[10] Control Mode
[11] Pos. [m]
[12] Frame
 
armCCCmdObj
[0] Send Button -> actp_sendCB(0)
[1] Copy Button -> actp_copyCB(1)
[2] Time Input -> actp_sendGainsCB(-1)
[3] Zero Button -> actp_copyCB(0)
[4]
[5] XYZ Frame ABS Radio Button -> actp_sendGainsCB(10)
[6] XYZ Frame REL Radio Button -> actp_sendGainsCB(11)
[7] RPY Frame ABS Radio Button -> actp_sendGainsCB(20)
[8] RPY Frame REL Radio Button -> actp_sendGainsCB(21)
[9] SEW Frame ABS Radio Button -> actp_sendGainsCB(30)
[10] SEW Frame REL Radio Button -> actp_sendGainsCB(31)
 
armCCCmd1Obj
[0-6] Desired Inputs -> actp_InputCB(i)
where i is the id of the Cartesian Position Component 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW
 
armCCCmd2Obj
[0-6] Increment Buttons -> actp_upButtonCB(i)
where i is the id of the Cartesian Position Component 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW
 
armCCCmd3Obj
[0-6] Decrement Buttons -> actp_downButtonCB(i)
where i is the id of the Cartesian Position Component 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW
 
armCCTelObj
[0] Time Slider
 
armCCTel1Obj
[0-6] Actual Inputs
where i is the id of the Cartesian Position Component 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW
 
armCCCmd4Obj was armRRCmdObj
[0] Manual Button -> arr_ioSourceCB(0)
[1] Manual Toggle Button -> arr_manualSourceCB(0)
[2] Auto Button -> arr_ioSourceCB(2)
[3] Track Button -> arr_ioSouceCB(4)
[4] Track Option Menu -> arr_trackMenuCB(0)
[5] Auto Toggle Button -> arr_autoSource(0)
[6] Base FOR Button -> arr_frameCB(0)
[7] Tool FOR Button -> arr_frameCB(1)
[8] Shuttle FOR Button -> arr_frameCB(2)
[9] Panel FOR Button -> arr_frameCB(3)
[10] Camera FOR Button -> arr_frameCB(4)
[11] Pilot Button -> arr_ioSouceCB(8)
 
Menus
TrackMenuButton
[0-4] Track Menu Button -> arr_trackMenuButtonCB(i)
where i is the id of the input source mode 4= DXR, 5 = DXL, 6 = DXR 8, 7= DXL 8
 
FORMenuButton
[i] Frame of Reference Menu Button-> arr_frameCB(i)
where i is the FOR 0 = Vehicle, 1 = EE, 2 = Pilot, 3 = Camera, 4 = SLP
 
Utility Form: ctpSets
Label = "<> Arm Joint Sets"
eg. Left Arm Cartesian Position Sets, Right Arm Cartesian Position Sets, Grapple Arm Cartesian Position Sets, Video Arm Cartesian Position Sets, Left 8DOF Arm Cartesian Position Sets, Right 8DOF Arm Cartesian Position Sets
 
Objects
 
ctpSetsLabelObj
[1] Arm Sets Name
 
ctpSetsLabel1Obj
[0-7] Position Component Labels
0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7 = Angle
 
ctpSetsCmdObj
[1] Load Button -> as_loadSetCB(2)
[2] Save Button -> as_saveSetCB(2)
[3] New Button -> as_newSetCB(2)
[4] Edit Button -> as_editSetCB(2)
[5] Delete Button -> as_deleteSetCB(2)
[6] Tear Away Button -> as_tearCB(2)
[7] Send Button -> as_sendCB(2)
[8] Name Input
[9] Sets Browser -> as_browseCB(2)
 
ctpSetsCmd1Obj
[0-7] Cartesian Position Input Fields
where i is the id of the Cartesian Position Component 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7 = Angle
 

Wm_form[5] = armIC
Label = "<> Arm Impedance Control"
eg. Left Arm Impedance Control, Right Arm Impedance Control, Grapple Arm Impedance Control, Video Arm Impedance Control, Left 8DOF Arm Impedance Control, Right 8DOF Arm Impedance Control

Objects

cac_CmdObj
[5] Command Authority Button -> cmdCB(0)
 
armICObj
[0] File Menu Button -> wm_fileMenuButtonCB(0)
[1] Modes Menu Button -> aic_ChoiceCB(0)
[2] Display Menu Button -> wm_displayMenuButtonCB(0)
 
armICChoiceObj
None
 
armICLabelObj
[1-6] Component Labels 1 = X, 2 = Y, 3 = Z, 4 = RX, 5 = RY, 6 = RZ
[7-9] Gain Labels 7 = B, 8 = M, 9 = K
[10-13] FLTR
[14] Position Adjustment
 
armICCmdObj
[0] Loop Active Button -> aic_loopActive(0)
[1] Rec Button -> aic_recCB(0)
 
armICCmdBObj
[0] Send Button -> aic_sendGainsCB(1)
[1-5] Damping Component Inputs 1 = X, 2 = Y, 3 = Z, 4 = RX, 5 = RY, 6 = RZ
 
armICCmdMObj
[1-5] Inertia Component Inputs 1 = X, 2 = Y, 3 = Z, 4 = RX, 5 = RY, 6 = RZ
 
armICCmdKObj
[1-5] Spring Component Inputs 1 = X, 2 = Y, 3 = Z, 4 = RX, 5 = RY, 6 = RZ
 
armICTelObj
[0] Mode Input
[1] Record # Input
[2] Off Indicator
[3] Contact Indicator
[4] Teach Indicator
[5] Rate Input
 
armICTel1Obj
[0-3] Position Adjustment Inputs 0 = X, 1 = Y, 2 =Z, 3 = Psi
 
armICTel2Obj
[0-3] Position Adjustment Sliders 0 = X, 1 = Y, 2 =Z, 3 = Psi
 
Menus
ModesMenu
armICModeMenuButton
[1-4] Mode Menu Buttons -> aic_ModeCB(i)
where i is the id of the menu buttons 1 = Spring-Dashpot, 2 = Accomodation, 3 = Inerial, 4 = Mass-Spring-Dashpot
 

Wm_form[6] = IODisplay
Label = "IO Display"
 
This form is compiled using the ioDisplay function files which are used by every module using input devices to control a project.
 
Go to IODisplay info.

Obsolete Panels


Wm_form[4] = armRR
Label = "<> Arm Resolve Rate Control"
eg. Left Arm Resolve Rate Control, Right Arm Resolve Rate Control, Grapple Arm Resolve Rate Control, Video Arm Resolve Rate Control, Left 8DOF Arm Resolve Rate Control, Right 8DOF Arm Resolve Rate Control

Objects

cac_CmdObj
[6] Command Authority Button -> cmdCB(0)
 
armRRObj
[0] File Menu Button -> wm_fileMenuButtonCB(0)
[2] Display Menu Button -> wm_displayMenuButtonCB(0)
 
armRRChoiceObj
None
 
armRRLabelObj
[1] Frame of Reference
[2] Input Source
 
armRRCmdObj
[0] Manual RR Button -> arr_ioSourceCB(0)
[1] Manual CP Button -> arr_ioSourceCB(1)
[2] Auto Button -> arr_ioSourceCB(2)
[3] Track Button -> arr_ioSouceCB(3)
[4] Track Option Menu -> arr_trackMenuCB(0)
 
armRRCmd2Obj
[0] Vehicle FOR Radio Button -> arr_frameCB(0)
[1] EE FOR Radio Button -> arr_frameCB(1)
[2] Pilot FOR Radio Button -> arr_frameCB(2)
[3] Camera FOR Radio Button -> arr_frameCB(3)
 
armRRTelObj
None
 
Menus
TrackMenuButton
[2-5] Arm Track Menu Button -> arr_trackMenuButtonCB(i)
where i is the id of the arm 2 = DXR, 3 = DXL, 4 = DXR8, 5 = DXL8

Wm_form[5] = armCP
Label = "<> Arm Cartesian Position"
eg. Left Arm Cartesian Position, Right Arm Cartesian Position, Grapple Arm Cartesian Position, Video Arm Cartesian Position, Left 8DOF Arm Cartesian Position, Right 8DOF Arm Cartesian Position

Objects

cac_CmdObj
[4] Command Authority Button -> cmdCB(0)
 
armCPObj
[0] File Menu Button -> wm_fileMenuButtonCB(0)
[1] Cartesian Position Sets Menu Button -> as_displayArmSetsCB(2)
[2] Display Menu Button -> wm_displayMenuButtonCB(0)
 
armCPChoiceObj
None
 
armCPLabelObj
[0-6] Component Labels 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW [DEG]
[7] Angle [Deg]
[8] Axis
[9] Time [s]
[11] Position [m]
[12] Frame
[13] Orientation
[14] ABS
[15] REL
[16] XYZ
[17] RPY
[18] SEW
 
armCPCmdObj
[0] Send Button -> actp_sendCB(0)
[1] Copy Button -> actp_copyCB(1)
[2] Time Input -> actp_sendGainsCB(-1)
[3] Zero Button -> actp_copyCB(0)
[5] XYZ Frame ABS Radio Button -> actp_sendGainsCB(10)
[6] XYZ Frame REL Radio Button -> actp_sendGainsCB(11)
[7] RPY Frame ABS Radio Button -> actp_sendGainsCB(20)
[8] RPY Frame REL Radio Button -> actp_sendGainsCB(21)
[9] SEW Frame ABS Radio Button -> actp_sendGainsCB(30)
[10] SEW Frame REL Radio Button -> actp_sendGainsCB(31)
[11] Normalize Button -> actp_normCB(0)
 
armCPCmd1Obj
[0-7] Desired Inputs -> actp_InputCB(i)
where i is the id of the Cartesian Position Component 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7 = Angle
 
armCPCmd2Obj
[0-7] Increment Buttons -> actp_upButtonCB(i)
where i is the id of the Cartesian Position Component 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7 = Angle
 
armCPCmd3Obj
[0-7] Decrement Buttons -> actp_downButtonCB(i)
where i is the id of the Cartesian Position Component 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7 = Angle
 
armCPTelObj
[0] Time Dial
 
armCPTel1Obj
[0-7] Actual Inputs
where i is the id of the Cartesian Position Component 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7 = Angle
 
Utility Form: ctpSets
Label = "<> Arm Joint Sets"
eg. Left Arm Cartesian Position Sets, Right Arm Cartesian Position Sets, Grapple Arm Cartesian Position Sets, Video Arm Cartesian Position Sets, Left 8DOF Arm Cartesian Position Sets, Right 8DOF Arm Cartesian Position Sets
 
Objects
 
ctpSetsLabelObj
[1] Arm Sets Name
 
ctpSetsLabel1Obj
[0-7] Position Component Labels
0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7 = Angle
 
ctpSetsCmdObj
[1] Load Button -> as_loadSetCB(2)
[2] Save Button -> as_saveSetCB(2)
[3] New Button -> as_newSetCB(2)
[4] Edit Button -> as_editSetCB(2)
[5] Delete Button -> as_deleteSetCB(2)
[6] Tear Away Button -> as_tearCB(2)
[7] Send Button -> as_sendCB(2)
[8] Name Input
[9] Sets Browser -> as_browseCB(2)
 
ctpSetsCmd1Obj
[0-7] Cartesian Position Input Fields
where i is the id of the Cartesian Position Component 0 = X, 1 = Y, 2 = Z, 3 = Roll, 4 = Pitch, 5 = Yaw, 6 = SEW, 7 = Angle