Difference between revisions of "CAN Protocol v4.0"
Line 51: | Line 51: | ||
!style="background-color:#ffffff;"| Disable joint motor driver | !style="background-color:#ffffff;"| Disable joint motor driver | ||
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set Torque Finger 1 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x050 |
!style="background-color:#ffffff;"| | !style="background-color:#ffffff;"| | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set torque of finger #1 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set Torque Finger 2 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x051 |
!style="background-color:#ffffff;"| | !style="background-color:#ffffff;"| | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set torque of finger #2 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set Torque Finger 3 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x052 |
!style="background-color:#ffffff;"| | !style="background-color:#ffffff;"| | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set torque of finger #3 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set Torque Finger 4 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x053 |
!style="background-color:#ffffff;"| | !style="background-color:#ffffff;"| | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set torque of finger #4 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set Position Finger 1 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x0E0 |
!style="background-color:#ffffff;"| | !style="background-color:#ffffff;"| | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set position of finger #1 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set Position Finger 2 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x0E1 |
!style="background-color:#ffffff;"| | !style="background-color:#ffffff;"| | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set position of finger #2 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set Position Finger 3 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x0E2 |
!style="background-color:#ffffff;"| | !style="background-color:#ffffff;"| | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set position of finger #3 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set Position Finger 4 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x0E3 |
!style="background-color:#ffffff;"| | !style="background-color:#ffffff;"| | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set position of finger #4 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set Periodic Read |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x081 |
!style="background-color:#ffffff;"| | !style="background-color:#ffffff;"| | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set periodic read interval for position, IMU, temperature, status |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Config |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x058 |
!style="background-color:#ffffff;"| | !style="background-color:#ffffff;"| | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Set Device ID, Baud-rate for RS-485 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Information |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x080 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Product information and status |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Serial |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x088 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Product serial number |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Position Finger 1 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x020 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Current angle position of finger #1 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Position Finger 2 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x021 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Current angle position of finger #2 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Position Finger 3 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x022 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Current angle position of finger #3 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Position Finger 4 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x023 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Current angle position of finger #4 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| IMU |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x030 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Current IMU quaternion |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Temperature Finger 1 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x038 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Current temperature of finger #1 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Temperature Finger 2 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x039 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Current temperature of finger #2 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Temperature Finger 3 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x03A |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Current temperature of finger #3 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Temperature Finger 4 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x03B |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Current temperature of finger #4 |
|- | |- | ||
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Status |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| 0x010 |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| R |
− | !style="background-color:#ffffff;"| | + | !style="background-color:#ffffff;"| Current Status |
|} | |} | ||
<br> | <br> |
Revision as of 18:28, 27 December 2018
Contents |
CAN Communication
Baud-Rate
The CAN communication baud-rate is 1Mbps.
Non-Periodic Communication
Messages can be sent to initialize or stop CAN communication.
Remote frame can be used to request data. If host sends remote frame, the Allegro Hand responds with it regardless periodic communication status.
Periodic Communication
The Allegro Hand control software attempts to communicate with the real or simulated hand at a regular control interval. Every 3 milliseconds, the joint torques are calculated and the joint angles are updated.
CAN Frames
Arbitration Identifier
The Allegro Hand uses 11 bit standard arbitration identifier. It is composed with two part.
MSB | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | LSB |
---|---|---|---|---|---|---|---|---|---|---|
Message ID | Device ID |
Message ID
Message | Message ID | RTR | Description |
---|---|---|---|
Servo ON | 0x040 | Engage joint motor driver | |
Servo OFF | 0x041 | Disable joint motor driver | |
Set Torque Finger 1 | 0x050 | Set torque of finger #1 | |
Set Torque Finger 2 | 0x051 | Set torque of finger #2 | |
Set Torque Finger 3 | 0x052 | Set torque of finger #3 | |
Set Torque Finger 4 | 0x053 | Set torque of finger #4 | |
Set Position Finger 1 | 0x0E0 | Set position of finger #1 | |
Set Position Finger 2 | 0x0E1 | Set position of finger #2 | |
Set Position Finger 3 | 0x0E2 | Set position of finger #3 | |
Set Position Finger 4 | 0x0E3 | Set position of finger #4 | |
Set Periodic Read | 0x081 | Set periodic read interval for position, IMU, temperature, status | |
Config | 0x058 | Set Device ID, Baud-rate for RS-485 | |
Information | 0x080 | R | Product information and status |
Serial | 0x088 | R | Product serial number |
Position Finger 1 | 0x020 | R | Current angle position of finger #1 |
Position Finger 2 | 0x021 | R | Current angle position of finger #2 |
Position Finger 3 | 0x022 | R | Current angle position of finger #3 |
Position Finger 4 | 0x023 | R | Current angle position of finger #4 |
IMU | 0x030 | R | Current IMU quaternion |
Temperature Finger 1 | 0x038 | R | Current temperature of finger #1 |
Temperature Finger 2 | 0x039 | R | Current temperature of finger #2 |
Temperature Finger 3 | 0x03A | R | Current temperature of finger #3 |
Temperature Finger 4 | 0x03B | R | Current temperature of finger #4 |
Status | 0x010 | R | Current Status |
Download
File:V4 AllegroHandUsersManual.pdf
Whos here now: Members 0 Guests 0 Bots & Crawlers 1 |