Reputation: 463
Macbook Air with Ubuntu virtual machine via VMWare
Pioneer3 AT robot
ROS
RosAria
I have at least most of the setup for Ros+RosAria already working:
192.168.1.112
via roscore
192.168.1.108
via rosrun rosaria RosAria
, the port set accordingly to access the robot's motors and sensors via rosparam set...
, ROS_MASTER_URI=192.168.1.112:11311
, and ROS_IP=192.168.1.112
.rostopic pub /RosAria/cmd_vel geometry_msgs/Twist “linear:... angular:...”
The RosAria node running on the robot confirms it’s able to connect to the master, and if I run the command rostopic list
on the laptop I can see /RosAria/cmd_vel
as one of the available topics.
In the terminal window where I try to publish to /RosAria/cmd_vel
I’m told that the message is sending but the robot shows no signs of having received it, neither console message nor movement of the wheels.
However, if I quit the RosAria node on the robot and restart it while leaving the rostopic pub
command running on my laptop, the robot registers the message once upon startup, moves accordingly for a bit, and then does nothing.
I’ve also tried to rostopic echo
other topics like battery state, motors status and pose, but I don’t receive any messages from the robot.
I already tried changing the parameters /RosAria/TicksMM
and /RosAria/RevCount
according to this case.
Why is the Pioneer robot with RosAria running not receiving the cmd_vel
commands from my client if it’s apparently able to communicate with the master node successfully?
The project I was working on where this problem came up isn’t using the same equipment anymore, so now this question is not so urgent for me. I’m also not able to test proposed solutions in the near future since I no longer have access to that Pioneer robot. However, I’ll keep this topic unanswered in case someone else encounters this problem too.
Upvotes: 0
Views: 378
Reputation: 574
You need To Set ROS_IP On Robot side too to let the ROS System Knows What IP To Use as It's Network Interface
I myself Set This Environments Inside .bashrc
Like This:
export ROS_IP=192.168.1.108
and then source .bashrc
.
I think You can use rosparam
Too But I never tested.
Upvotes: 0