Difference between revisions of "CanServo/Protocol/UAVCAN/en"
Jump to navigation
Jump to search
Line 17: | Line 17: | ||
Write Register ( arraycommand ) | Write Register ( arraycommand ) | ||
* 0003F20xx AA BB | * 0003F20xx AA BB LL HH cc | ||
** xx = Host Node | ** xx = Host Node | ||
** AA = Servo's Actuator ID (ID1) = 0 ~ 127 | ** AA = Servo's Actuator ID (ID1) = 0 ~ 127 | ||
** BB = Address of Register | ** BB = Address of Register | ||
** | ** LL = Low Byte of Write Data | ||
** | ** HH = High Byte of Write Data | ||
** cc = tail byte of dronecan | ** cc = tail byte of dronecan | ||
** ex) 0003F207 02 6A 01 00 Cd | ** ex) 0003F207 02 6A 01 00 Cd |
Revision as of 07:06, 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 LL HH cc
- xx = Host Node
- AA = Servo's Actuator ID (ID1) = 0 ~ 127
- BB = Address of Register
- LL = Low Byte of Write Data
- HH = High Byte of Write Data
- cc = tail byte of dronecan
- ex) 0003F207 02 6A 01 00 Cd