Difference between revisions of "CanServo/Protocol/UAVCAN/en"
Jump to navigation
Jump to search
Line 14: | Line 14: | ||
Return Message is used by modifying the data part of Actuator.Status. | Return Message is used by modifying the data part of Actuator.Status. | ||
This part does not conform to the UAVCAN standard. | This part does not conform to the UAVCAN standard. | ||
* Write Register | |||
** 0003F20xx AA BB CC DD cc | |||
xx = Host Node | |||
AA = Servo's Actuator ID (ID1) = 0 ~ 127 | |||
BB = 0x6A (Address of Protocol Register) | |||
CC = 0(CAN 2.0A), 1(CAN 2.0B), 2(DroneCAN) | |||
DD = 0 | |||
cc = tail byte of dronecan | |||
ex) 0003F207 02 6A 01 00 Cd |
Revision as of 05:17, 28 March 2023
This is the protocol used when CanServo/MODE/CAN/en = UAVCAN.
- If CanServo/MODE/CAN/en = 2.0A, 2.0B, refer to CanServo/Protocol/Control/en.
Because the UAVCAN v0 protocol is very extensive, it only supports the following messages essential for servo control.
- Node Status
- GetNodeInfo
- Actuator.ArrayCommand
- Actuator.Status
When changing or reading the register value of the servo, it is used in a way that expands the shape of Actuator.ArrayCommand without damaging it.
Return Message is used by modifying the data part of Actuator.Status. This part does not conform to the UAVCAN standard.
- Write Register
- 0003F20xx AA BB CC DD cc
xx = Host Node AA = Servo's Actuator ID (ID1) = 0 ~ 127 BB = 0x6A (Address of Protocol Register) CC = 0(CAN 2.0A), 1(CAN 2.0B), 2(DroneCAN) DD = 0 cc = tail byte of dronecan ex) 0003F207 02 6A 01 00 Cd