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 ( arraycommand ) | * Write Register ( arraycommand ) |
Revision as of 05:19, 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 ( arraycommand )
- 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
- 0003F20xx AA BB CC DD cc