WAM Arm – User’s Manual
www.barrett.com
© 2008 Barrett Technology®, Inc.
Document: D1001, Version: AH.00
46 of 80
7 CANbus Communication Specifications
7.1 Data Link Specifications
1Mbaud CANbus
8 time quanta per bit
75% sampling point
Sync jump width = 1 time quanta (TQ)
11-bit MsgID (standard CAN)
Proprietary protocol, not DeviceNet or CANopen
Recommended reading:
Controller Area Network
by Konrad Etschberger
7.2 CANbus
Timing
•
75
μ
S to ask for position
•
75
μ
S per puck to respond with the positions
•
125
μ
S to send a packed torque to the lower 4DOF
•
125
μ
S to send a packed torque to the wrist
•
Control-side processing time on PC
For the 4DOF, it is: 75+(4*75)+125+PC = 500
μ
S + PC
For the 7DOF, it is: 75+(7*75)+(2*125)+PC = 850
μ
S + PC
These numbers are limited by the 1 Mbps CANbus. Each message has a 47-bit frame (47
μ
S), plus
payload data (3 bytes, 24
μ
S typ). CANbus transceivers are not rated above 1 Mbps due to slew-
rate limitations.
7.3 ID
Specifications
7.3.1 Message
IDs
[GFFFFFTTTTT] (11 bits, binary)
G: Group, 0 = Directed message, 1 = Group broadcast
F: From ID, Host = 00000, Motor N = N
T: To ID or group
Examples:
00000000011 => Directed message from host to motor 3 (3 = 00011, binary)
10001100100 => Group broadcast from motor 3 to group 4
7.3.2
Motor IDs and Groups
Each motor in the robot has a unique communication ID, can be a part of any three groups
(GRPA, GRPB, GRPC), and will listen for and process messages bound for its ID or any of its
groups. There are a total of 32 possible groups (from 00000 to 11111). Motors 1 to 4 belong to
groups 0, 1, and 4, motors 5 to 7 belong to groups 0, 2, and 5, and the host belongs to groups 3 and
6 by default. The default groups are:
0 = All actuators
1 = Lower arm torques (motors 1-4)
2 = Upper arm torques (motors 5-7)
3 = Position feedback
4 = Lower arm property
5 = Upper arm property
6 = Property feedback