[ros-users] Pioneer 3dx in ROS

Brian Gerkey gerkey at willowgarage.com
Fri Apr 23 15:24:18 UTC 2010


It's been a long time since I used a Pioneer, and I haven't looked at
the node that you're using, so this is shooting in the dark:

If I recall correctly, the microcontroller implements a watchdog that
will stop the motors if it hasn't heard a velocity command over the
serial line after a certain amount of time.  If you send commands too
slowly, the watchdog would kick in between commands, causing the robot
to move a bit, halt, move a bit, halt, etc. I believe that the
watchdog is configurable, or at least can be turned on or off, which
might account for the different in behavior between your robots.

Something to try is to make the node resend the last received velocity
to the robot at a relatively high rate (10Hz should be enough).  Of
course, the node should then implement its own watchdog, which would
send zero velocities if it hasn't received a command via ROS after
some time.

	brian.

On Fri, Apr 23, 2010 at 6:56 AM, Tucker Hermans <thermans at cc.gatech.edu> wrote:
> Dan,
> Without being able to investigate your setup further, the only thing I can
> think is that the commands being sent over the serial connection are either
> experiencing high latency or are being sent to infrequently, so that the
> velocity commands sent to the microcontroller are far enough apart that you
> get the stuttering effect.
> I tried reproducing this by setting a very high time (30s as opposed to 2s)
> to resend velocity commands but this had no effect.  Are you seeing
> statements from the p2os node of the form "new speed [0.25, 0.0]
> (timestamp)" and "setting vel: [0.25,0.0]".  If not what kind of debug
> output are you seeing on the node?
> -Tucker
>
> On Thu, Apr 22, 2010 at 12:31 PM, Dan Lazewatsky <lazewatskyd at cse.wustl.edu>
> wrote:
>>
>> I just tried out a few things from your pioneer_control package and I get
>> the same behavior I was seeing before.
>>
>> -Dan
>>
>> On 4/21/10 7:13 PM, Dan Lazewatsky wrote:
>>
>> Hi Tucker,
>> I think that should be enough to get me going.
>>
>> Thanks!
>> -Dan
>>
>> On 4/21/10 6:57 PM, Tucker Hermans wrote:
>>
>> Hi Dan,
>> I send the MotorState command of 4 and have no problems.
>> I have a teleop keyboard port which I use for communicating with the p3dx
>> that you can find
>> here: github.com/trhermans/AffLearning/tree/master/pioneer_control/
>> Note: the launch file is setup for a p3dx with a PTZ connected to an
>> onboard computer and uses the probe camera driver to get the video stream.
>> I have only been testing the changes to the p2os package on a p3dx with an
>> onboard computer, I don't think this should have any issues, but it could.
>> Let me know if the keyboard operation gives the same problems you have now
>> and I'll try and help debug it.
>> -Tucker
>>
>> On Wed, Apr 21, 2010 at 7:49 PM, Dan Lazewatsky
>> <lazewatskyd at cse.wustl.edu> wrote:
>>>
>>> Hi all -
>>> I know this has been discussed here a bit, but not in much detail.
>>> We have a Pioneer3dx that we'd like to get up and running again. I
>>> downloaded and compiled the p2os package which seems to be able to
>>> successfully connect and communicate with the robot using a serial to
>>> USB adapter. However, I'm having trouble getting the motors to do
>>> anything sensible. The robot's motor self-test looks like it works fine,
>>> but sending cmd_vel, all I can get is extremely slow, jerky movement
>>> forward or backwards (no turning). I enabled the motors with:
>>>
>>> rostopic pub cmd_motor_state -1 p2os/MotorState 1 (I also tried 4
>>> instead of 1 which was mentioned in a previous discussion)
>>>
>>> This feels like a communication problem between the motor commands p2os
>>> is sending and the robot, but I don't know what's going on. Any ideas?
>>>
>>> Thanks,
>>> -Dan
>>> _______________________________________________
>>> ros-users mailing list
>>> ros-users at code.ros.org
>>> https://code.ros.org/mailman/listinfo/ros-users
>>
>>
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>>
>>
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>>
>>
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>>
>
>
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users
>
>



More information about the ros-users mailing list