Re: [ros-users] Pioneer 3dx in ROS

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Dan Lazewatsky
Date:  
To: ros-users
Subject: Re: [ros-users] Pioneer 3dx in ROS
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<> 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<> 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<>
>>> 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
>>>> <> 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
>>>>>
>>>>> https://code.ros.org/mailman/listinfo/ros-users
>>>>>
>>>>
>>>> _______________________________________________
>>>> ros-users mailing list
>>>>
>>>> https://code.ros.org/mailman/listinfo/ros-users
>>>>
>>>>
>>>> _______________________________________________
>>>> ros-users mailing list
>>>>
>>>> https://code.ros.org/mailman/listinfo/ros-users
>>>>
>>>>
>>>> _______________________________________________
>>>> ros-users mailing list
>>>>
>>>> https://code.ros.org/mailman/listinfo/ros-users
>>>>
>>>>
>>>
>>> _______________________________________________
>>> ros-users mailing list
>>>
>>> https://code.ros.org/mailman/listinfo/ros-users
>>>
>>>
>>>
>> _______________________________________________
>> ros-users mailing list
>>
>> https://code.ros.org/mailman/listinfo/ros-users
>>
>>
> _______________________________________________
> ros-users mailing list
>
> https://code.ros.org/mailman/listinfo/ros-users
>