Rosaria does not apply published cmd_vel
I have a setup with two laptops connected through Wi-Fi. One laptop runs the roscore
and joy
node, publishing geometry_msgs/Twist
messages. The other laptop receives these messages correctly (rostopic echo /p3dx/cmd_vel
on both laptops returns the same messages).
The RosAria node (renamed p3dx) listens on the /p3dx/cmd_vel
topic for these messages and receives them. When the angular velocity of z is 0.5 m/s, it says to receive:
RosAria: rcv: 1382108077.236526 0.000000 -0.495674
And sent correctly:
RosAria: sent vels to to aria (time 1382108077.164065): x vel -60.710151 mm/s, y vel 0.000000 mm/s, ang vel -28.647890 deg/s
However, when the linear velocity of x is 0.5 m/s, it says to receive:
RosAria: rcv: 1382108210.788572 0.000000 -0.034907
(The small angular velocity is due to operation of a joystick.) And sent incorrectly:
RosAria: sent vels to to aria (time 1382108210.885190): x vel 500.000000 mm/s, y vel 0.000000 mm/s, ang vel -2.053801 deg/s
Luckily, the robot remains stationary and doesn't try to move forward at full speed. However, it simply always remains stationary. Reducing the sent linear velocity in the geometry_msgs/Twist
message did not resolve the issue.
I have no idea where this multiplication comes from, nor how to debug it.
Edit: The question was ill-posed. The actual issue is that the linear velocity is not applied to the robot, while the angular velocity is.
Edit: RosAria ouput:
RosAria: using port: [/dev/ttyS0]
Could not connect to simulator, connecting to robot through serial port /dev/ttyS0.
Syncing 0
Syncing 1
Syncing 2
Connected to robot.
Name: Artesis_4106
Type: Pioneer
Subtype: p3dx-sh
Loaded robot parameters from p3dx-sh.p
Setting TicksMM from ROS Parameter: 1
Setting DriftFactor from ROS Parameter: 0
Setting RevCount from ROS Parameter: 16570
RosAria: publishing new recharge state 0.
RosAria: publishing new motors state 0.
RosAria: publishing new motors state 1.
I'm not sure I understand your question. RosAria accepts cmd_vel Twist messages in m/s, but converts that to mm/s since that's what ARIA and the Pioneer use. The "RosAria: rcv" Message is just incorrectly printed, I'll fix that.
@ReedHedges The main problem is that the robot isn't moving forward, just turning.
@ReedHedges true! I only now see the unit in mm/s. So that's the correct speed. Yet, this is not applied to the robot.
Perhaps you have the same problem as http://answers.ros.org/question/91466/how-to-move-pioneer-3-at-with-rosaria/ . Post what RosAria prints out for Type: and Subtype: when it connects and I'll look up some calibration parameters you may need to set manually (temporarily until RosAria is fixed)
It reads as the same problem, but the parameters that were off for him seem to be correct for me. Or I might have checked those at the wrong location.