utils.farmng_sdo
ReqRepOpIds Objects
class ReqRepOpIds()
Operation IDs for request and reply operations.
Must be in the range [0, 127] (7 bits).
ReqRepValIds Objects
class ReqRepValIds()
Value IDs for request and reply operations.
Must be in the range [0, 2047] (11 bits) because we use 5 bits for encoding units.
Some codes:
- NP: Not a persistent value (currently) This means it cannot be stored
- UN: Not actually used in firmware (currently) This means it cannot be read, written, or stored
V_MAX
NP
MAX_ANG_ACC
max_accel in settings.csv
WHEEL_GEAR_RATIO
NP
WHEEL_RADIUS
NP
PTO_CUR_DEV
NP | Current PTO device to change settings of
PTO_CUR_RPM
NP
ReqRepValUnits Objects
class ReqRepValUnits()
Units for request and reply values.
Must be in the range [0, 31] (5 bits). Uses the last 5 bits of the 2 bytes used for ReqRepValIds.
NA
Unitless
M
meters
MPS
m/s
RADPS
rad / s
RPM
rpm
MS2
m / s^2
RADS2
rad / s^2
V
volts
ReqRepValFmts Objects
class ReqRepValFmts()
Data formats for request and reply values.
unpack_req_rep_value
def unpack_req_rep_value(val_id: ReqRepValIds, payload: bytes)
Unpacks the request/reply value from the given payload based on the value ID.
Arguments:
val_id
ReqRepValIds - The value ID.payload
bytes - The payload to unpack.
Returns:
The unpacked value.
FarmngRepReq Objects
class FarmngRepReq(Packet)
Supervisor request class, farm-ng parallel to SDO protocol.
Attributes:
cob_id_req
int - SDO command ID.cob_id_rep
int - SDO reply ID.format
str - The data format.
cob_id_req
SDO command id
cob_id_rep
SDO reply id
encode
def encode()
Encodes the data contained by the class as CAN message data.
Returns:
bytes
- The encoded CAN message data.
decode
def decode(data)
Decodes CAN message data and populates the values of the class.
Arguments:
data
bytes - The CAN message data to decode.