Our portal has axes A1, A2, A3, E1 and when moving to a JointsState it works as expected: E1 is the Z-rotational axis in this case.
However, robot_state.joints_current reports E1=0 at all times but puts the values for E1 into the field for A4:
This looks like the line where the POSJOINTCURRENT messages are unpacked:
|
case "POSJOINTCURRENT": |
|
joints = [] |
|
for i in range(16): |
|
joints.append(float(parameters[segment_start_idx + 1 + i])) |
|
|
|
with self.robot_state_lock: |
|
self.robot_state.joints_current = JointsState(*joints) |
|
segment_start_idx += 17 |
Our portal has axes
A1, A2, A3, E1and when moving to aJointsStateit works as expected:E1is the Z-rotational axis in this case.However,
robot_state.joints_currentreportsE1=0at all times but puts the values forE1into the field forA4:This looks like the line where the
POSJOINTCURRENTmessages are unpacked:CRI-Python-Lib/cri_lib/cri_protocol_parser.py
Lines 142 to 149 in 1b2940f