ROS Arduino 包出现TypeError: can't multiply sequence by non-int of type 'float'问题

问题信息如下:

[INFO] [1678018966.114610]: Connected to Arduino on port /dev/ttyUSB0 at 57600 baud
[INFO] [1678018966.142248]: arduino_led {'direction': 'output', 'type': 'Digital', 'rate': 5, 'pin': 13} published on topic /arduino/sensor/arduino_led
Updating PID parameters
Traceback (most recent call last):
File "/home/dongdong/arduino_ws/src/ros_arduino_bridge/ros_arduino_python/nodes/arduino_node.py", line 226, in <module>
myArduino = ArduinoROS()
File "/home/dongdong/arduino_ws/src/ros_arduino_bridge/ros_arduino_python/nodes/arduino_node.py", line 142, in __init__
self.myBaseController = BaseController(self.controller, self.base_frame, self.name + "_base_controller")
File "/home/dongdong/arduino_ws/src/ros_arduino_bridge/ros_arduino_python/src/ros_arduino_python/base_controller.py", line 59, in __init__
self.ticks_per_meter = self.encoder_resolution * self.gear_reduction / (self.wheel_diameter * pi)
TypeError: can't multiply sequence by non-int of type 'float'

问题原因:

  错误原因是yaml文件参数配置错误,而不是代码中有语法错误,所以不要去官方代码纠错。

 

posted @ 2023-03-11 20:56  是东东东啊  阅读(115)  评论(1编辑  收藏  举报