[ros-users] Pioneer 3dx in ROS

Tucker Hermans thermans at cc.gatech.edu
Tue May 18 17:19:15 UTC 2010


Dan,

Are you using the latest version (rev 52 or newer)?  David updated some
things to make the timing switch to using ros time instead of the standard
system time.  After this change I had to change to explicitly sending
pulses, whereas I did not before.  Now setting pulse to 0.5 works and I have
no issue with the use_sonar  parameter responding correctly.

If this doesn't work, then can you attach your launch file?

-Tucker

On Tue, May 18, 2010 at 1:11 PM, Dan Lazewatsky
<lazewatskyd at cse.wustl.edu>wrote:

> I finally had a chance to play around with this some more. Setting pulse to
> 1.0 does indeed make the motors respond sensibly, but also seems to cause
> the robot to constantly make the startup beeps and turn on the sonar
> regardless of what use_sonar is set to.
>
> -Dan
>
> On Apr 27, 2010, at 6:01 PM, Tucker Hermans wrote:
>
> Dan,
>
> There is a pulse parameter on the ros parameter server for the p2os node
> (see p2osnode.cc line 49 for where it is defined).
>
> If you set this value to something other than -1.0 it should send the pulse
> (see p2osnode.cc line 725).
>
> Adding the following line to the p2os node in your launch file should do
> the trick:
>
> <param name="pulse" value="1.0"/>
>
> -Tucker
>
> On Tue, Apr 27, 2010 at 6:35 PM, Dan Lazewatsky <lazewatskyd at cse.wustl.edu
> > wrote:
>
>> No luck setting pulse to 1 (I'm assuming you're referring to the PULSE
>> parameter in robot_params.h)
>>
>> -Dan
>>
>> On 4/23/10 2:39 PM, David Feil-Seifer wrote:
>> > I wrote the node, but a while ago, so I can't be sure, but Ithink that
>> > I sent a "pulse" message every 1s to keep that watchdog from kicking
>> > in. However, by default it is turned off. Try setting the "pulse"
>> > parameter to 1.
>> >
>> > -Dave
>> >
>> > On Fri, Apr 23, 2010 at 8:24 AM, Brian Gerkey<gerkey at willowgarage.com>
>>  wrote:
>> >
>> >> 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
>> >>>
>> >>>
>> >>>
>> >> _______________________________________________
>> >> 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
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20100518/7b4388f2/attachment-0003.html>


More information about the ros-users mailing list