diff --git a/ur_driver/src/ur_driver/deserializeRT.py b/ur_driver/src/ur_driver/deserializeRT.py index de35153ec470cf8bb168b5198f0abeb598d2910e..5fe97d779d67613fa47eb55d44668b228a66bb68 100644 --- a/ur_driver/src/ur_driver/deserializeRT.py +++ b/ur_driver/src/ur_driver/deserializeRT.py @@ -26,75 +26,48 @@ class RobotStateRT(object): offset+=8 #q_target: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.q_target = copy.deepcopy(all_values) #qd_target: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.qd_target = copy.deepcopy(all_values) #qdd_target: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.qdd_target = copy.deepcopy(all_values) - #i_target: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + #i_target: 6x double (6x 8byte) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.i_target = copy.deepcopy(all_values) #m_target: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.m_target = copy.deepcopy(all_values) #q_actual: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.q_actual = copy.deepcopy(all_values) #qd_actual: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.qd_actual = copy.deepcopy(all_values) #i_actual: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.i_actual = copy.deepcopy(all_values) #tool_acc_values: 3x double (3x 8byte) - all_values = [] - for i in range(3): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!ddd",buf, offset)) + offset+=3*8 rs.tool_acc_values = copy.deepcopy(all_values) #unused: 15x double (15x 8byte) @@ -102,27 +75,18 @@ class RobotStateRT(object): rs.unused = [] #tcp_force: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.tcp_force = copy.deepcopy(all_values) #tool_vector: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.tool_vector = copy.deepcopy(all_values) #tcp_speed: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.tcp_speed = copy.deepcopy(all_values) #digital_input_bits: 1x double (1x 8byte) ? @@ -130,11 +94,8 @@ class RobotStateRT(object): offset+=8 #motor_temperatures: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.motor_temperatures = copy.deepcopy(all_values) #controller_timer: 1x double (1x 8byte) @@ -150,11 +111,8 @@ class RobotStateRT(object): offset+=8 #joint_mode: 6x double (6x 8byte) - all_values = [] - for i in range(6): - value = struct.unpack_from("!d",buf, offset)[0] - offset+=8 - all_values.append(value) + all_values = list(struct.unpack_from("!dddddd",buf, offset)) + offset+=6*8 rs.joint_modes = copy.deepcopy(all_values) return rs