mirror of
https://github.com/SHC-ASTRA/rover-ros2.git
synced 2026-02-11 17:30:36 +00:00
fix: update socketFeedback() class
This commit is contained in:
@@ -61,7 +61,7 @@ class SocketFeedback:
|
|||||||
self.joint_angles = angles
|
self.joint_angles = angles
|
||||||
|
|
||||||
|
|
||||||
arm_feedback = SocketFeedback()
|
|
||||||
|
|
||||||
class SerialRelay(Node):
|
class SerialRelay(Node):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
@@ -91,6 +91,7 @@ class SerialRelay(Node):
|
|||||||
self.arm_feedback = SocketFeedback()
|
self.arm_feedback = SocketFeedback()
|
||||||
self.digit_feedback = DigitFeedback()
|
self.digit_feedback = DigitFeedback()
|
||||||
self.arm = astra_arm.Arm('arm11.urdf')
|
self.arm = astra_arm.Arm('arm11.urdf')
|
||||||
|
self.arm_feedback = SocketFeedback()
|
||||||
|
|
||||||
########
|
########
|
||||||
# Interface with MCU
|
# Interface with MCU
|
||||||
@@ -178,7 +179,7 @@ class SerialRelay(Node):
|
|||||||
v_5 = float(voltages_in[2]) / 100.0
|
v_5 = float(voltages_in[2]) / 100.0
|
||||||
v_3 = float(voltages_in[3]) / 100.0
|
v_3 = float(voltages_in[3]) / 100.0
|
||||||
# Update the arm's current voltages
|
# Update the arm's current voltages
|
||||||
arm_feedback.updateBusVoltages([v_bat, v_12, v_5, v_3])
|
self.arm_feedback.updateBusVoltages([v_bat, v_12, v_5, v_3])
|
||||||
else:
|
else:
|
||||||
self.get_logger().info("Invalid voltage feedback input format")
|
self.get_logger().info("Invalid voltage feedback input format")
|
||||||
elif output.startswith("can_relay_tovic,arm,53"):
|
elif output.startswith("can_relay_tovic,arm,53"):
|
||||||
@@ -189,9 +190,9 @@ class SerialRelay(Node):
|
|||||||
values_in = parts[3:7]
|
values_in = parts[3:7]
|
||||||
# Convert the voltages to floats
|
# Convert the voltages to floats
|
||||||
for i in range(4):
|
for i in range(4):
|
||||||
arm_feedback.updateJointVoltages(i, float(values_in[i]) / 10.0)
|
self.arm_feedback.updateJointVoltages(i, float(values_in[i]) / 10.0)
|
||||||
arm_feedback.updateJointCurrents(i, float(values_in[i]) / 10.0)
|
self.arm_feedback.updateJointCurrents(i, float(values_in[i]) / 10.0)
|
||||||
arm_feedback.updateJointTemperatures(i, float(values_in[i]) / 10.0)
|
self.arm_feedback.updateJointTemperatures(i, float(values_in[i]) / 10.0)
|
||||||
else:
|
else:
|
||||||
self.get_logger().info("Invalid motor feedback input format")
|
self.get_logger().info("Invalid motor feedback input format")
|
||||||
|
|
||||||
@@ -372,14 +373,14 @@ class SerialRelay(Node):
|
|||||||
def socket_pub_callback(self):
|
def socket_pub_callback(self):
|
||||||
# Create a SocketFeedback message and publish it
|
# Create a SocketFeedback message and publish it
|
||||||
msg = SocketFeedback()
|
msg = SocketFeedback()
|
||||||
msg.bat_voltage = arm_feedback.bat_voltage
|
msg.bat_voltage = self.arm_feedback.bat_voltage
|
||||||
msg.voltage_12 = arm_feedback.voltage_12
|
msg.voltage_12 = self.arm_feedback.voltage_12
|
||||||
msg.voltage_5 = arm_feedback.voltage_5
|
msg.voltage_5 = self.arm_feedback.voltage_5
|
||||||
msg.voltage_3 = arm_feedback.voltage_3
|
msg.voltage_3 = self.arm_feedback.voltage_3
|
||||||
msg.joint_angles = arm_feedback.joint_angles
|
msg.joint_angles = self.arm_feedback.joint_angles
|
||||||
msg.joint_temps = arm_feedback.joint_temps
|
msg.joint_temps = self.arm_feedback.joint_temps
|
||||||
msg.joint_voltages = arm_feedback.joint_voltages
|
msg.joint_voltages = self.arm_feedback.joint_voltages
|
||||||
msg.joint_currents = arm_feedback.joint_currents
|
msg.joint_currents = self.arm_feedback.joint_currents
|
||||||
|
|
||||||
self.socket_pub.publish(msg)
|
self.socket_pub.publish(msg)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user