
WAM Arm – User’s Manual
www.barrett.com
© 2008 Barrett Technology®, Inc.
Document: D1001, Version: AH.00
48 of 80
7.5 Full Communication Example
This example contains:
•
3 motors with IDs of 5, 6, and 7
•
A host with an ID of 0
Host sends:
MsgID [10000000000]
→
Group 0
Data [10000101] [00000000] [00000010] [0000000]
→
Set property 5 (STAT) to 2
(STATUS_READY)
The motors start up with STAT = 0 (STATUS_RESET)
Setting STAT to READY gets the motors ready to receive additional data
Motors will only respond to STAT and VERS commands while in RESET (for safety)
Host sends:
MsgID [10000000000]
→
Group 0
Data [10001000] [00000000] [00000010] [00000000]
→
Set property 8 (MODE) to 2
(MODE_TORQUE)
The motors default to MODE = 0 (MODE_IDLE)
Setting MODE to MODE_TORQUE tells the motors to apply any torque sent to them
When MODE = MODE_IDLE, motors will ignore any torque commands sent and apply braking
When using a WAM, the safety system will set the MODE when you press the
IDLE/ACTIVATE buttons
Do not try to bypass the WAM’s safety system by setting the MODE directly, this will cause
undesired operation.
Host sends:
MsgID [10000000000]
→
Group 0
Data [00110000]
→
Get property 48 (P)
Motors send:
MsgID [10010100011]
→
From ID 5 to Group 3
Data [00000000] [00000000] [0000010]
→
My position is 2 encoder counts
MsgID [10011000011]
→
From ID 6 to Group 3
Data [00000000] [00000000] [0000111]
→
My position is 7 encoder counts
MsgID [10011100011]
→
From ID 7 to Group 3
Data [00111111] [11111111] [11111110]
→
My position is -2 encoder counts
Host uses these positions to calculate a torque.
Host sends:
MsgID [10000000010]
→
Group 2
Data [10101010] [AAAAAAaa] [aaaaaaBB] [BBBBbbbb] [bbbbCCCC] [CCcccccc]
[cc000000] [00000000]
Set torques to new values AAAAAAaaaaaaaa, etc.