ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

Problem with running p3dx robot using ROS

asked 2013-10-23 06:42:49 -0500

Ashesh Goswami gravatar image

updated 2013-10-23 11:15:30 -0500

Dereck gravatar image

I am trying to connect a p3dx robot to my laptop using RosAria. The connection is being successful but the cmd/vel command is not being accepted as the TickMM is set to a different value. Can anyone suggest a method to change the TicksMM value permanently. I have tried using dynamic_reconfigure but this does not solve the problem. Thanks in advance

edit retag flag offensive close merge delete

Comments

what value of TicksMM allows your robot to move?

Dereck gravatar image Dereck  ( 2013-10-23 10:58:48 -0500 )edit

It had worked for a TicksMM value of 128 the last time that we ran the robot

Ashesh Goswami gravatar image Ashesh Goswami  ( 2013-10-23 14:11:14 -0500 )edit

What is the output of $ rostopic list

Dereck gravatar image Dereck  ( 2013-10-24 07:08:05 -0500 )edit

no output...the cursor blinks and nothing happens...

Ashesh Goswami gravatar image Ashesh Goswami  ( 2013-10-24 07:45:10 -0500 )edit

3 Answers

Sort by » oldest newest most voted
1

answered 2013-10-23 08:45:11 -0500

Dereck gravatar image

updated 2013-10-24 08:03:41 -0500

Update RosAria

Have you tired grabbing the latest version of RosAria from github today? A fix has recently been applied for this kind of issue: https://github.com/amor-ros-pkg/rosaria

Launch RosAria

In a terminal, run the ROS master server:

$ roscore

In another terminal, run the robot driver (RosAria):

$ rosrun rosaria RosAria

In another terminal, verify topics are being published:

$ rostopic list

If you don't see any topics listed, something is wrong with your ROS Environment settings. http://wiki.ros.org/ROS/Tutorials/InstallingandConfiguringROSEnvironment

TicksMM et al:

When rosaria launches, it will set TicksMM et al from the ROS parameter server iif they are set. If the parameters are not set, it will read the values from the robot's EEPROM and set them. There are a few ways to tune them if needed:

  • dynamic_reconfigure
  • launch file
  • @launch via _TicksMM:=XXX
  • There is a tool that lets you change the value in the robot's EEPROM from adept (I dont remember what it's called but you can find it on their wiki)

Test robot motion with:

$ rostopic pub -1 /RosAria/cmd_vel geometry_msgs/Twist '{linear:  {x: 0.05, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.0}}'

* Still having problems? *

If you are still are having problems, post the output of rosrun rosaria RosAria and I'll see what I can do for you. :)

edit flag offensive delete link more
0

answered 2013-10-24 08:12:20 -0500

Ashesh Goswami gravatar image

ashesh@ashesh-Inspiron-5521:~$ rostopic list /RosAria/battery_recharge_state /RosAria/battery_state_of_charge /RosAria/battery_voltage /RosAria/bumper_state /RosAria/cmd_vel /RosAria/motors_state /RosAria/parameter_descriptions /RosAria/parameter_updates /RosAria/pose /RosAria/sonar /clicked_point /initialpose /move_base_simple/goal /rosout /rosout_agg /tf ashesh@ashesh-Inspiron-5521:~$ rostopic echo /RosAria/pose

edit flag offensive delete link more

Comments

this is what I get when i choose rostopic list. But when i give the second command of obtaining the pose, nothing happens

Ashesh Goswami gravatar image Ashesh Goswami  ( 2013-10-24 08:13:04 -0500 )edit

I restarted my system and the commands started working...I could control the robot...however after 2 hours, I restarted my system again and this time its not working at all (same problem)...it pauses/hangs when we try to read any topic or pass any commands...what do you think is happening?? I am not changing anything

Ashesh Goswami gravatar image Ashesh Goswami  ( 2013-10-24 10:53:26 -0500 )edit

what kind of usb-serial interface are you using?

ReedHedges gravatar image ReedHedges  ( 2013-10-24 11:23:55 -0500 )edit

I am using a USB 2.0 interface...

Ashesh Goswami gravatar image Ashesh Goswami  ( 2013-10-25 05:17:25 -0500 )edit

What chipset or model is it? Some have intermittent problems like that. I've found best results with FTDI based devices and Prolific as well (not all, some are knockoffs that don't work as well.)

ReedHedges gravatar image ReedHedges  ( 2013-10-25 05:57:17 -0500 )edit

am not able to figure out which chipset it is....it gives me "Intel Corporation 7 Series/C210 Series Chipset Family USB" in the details

Ashesh Goswami gravatar image Ashesh Goswami  ( 2013-10-25 06:46:52 -0500 )edit
0

answered 2013-10-23 09:28:38 -0500

Keerthi Raj gravatar image

updated 2013-10-23 10:35:56 -0500

I am working along with the person who posted the original question.

I am able to connect to the robot but we can't get the pose as well as we can't set any velocity to make it move. Actually, we could able to move the robot properly 2 days back with same commands in the same PC. May be we are missing something today?

Also, I downloaded the latest version of ROSARIA today and tried. But, no success.

Below is the output from the terminal:

raj@ubuntu:~$ rosrun rosaria RosAria _port:=/dev/ttyUSB0
[rospack] Error: stack/package rosaria not found
[ INFO] [1382556066.136615207]: RosAria: using port: [/dev/ttyUSB0]
Could not connect to simulator, connecting to robot through serial port /dev/ttyUSB0.
Syncing 0
Syncing 1
Syncing 2
Connected to robot.
Name: Purdue_2052
Type: Pioneer
Subtype: p3dx
ArConfig: Config version: 2.0
Loaded robot parameters from p3dx.p
ArRobotConnector: Connecting to MTX batteries (if neccesary)...
ArRobotConnector: Connecting to MTX sonar (if neccesary)...
[ INFO] [1382556066.783694745]: Setting TicksMM from ROS Parameter: 128
[ INFO] [1382556066.787164745]: Setting DriftFactor from ROS Parameter: 0
[ INFO] [1382556066.789165374]: Setting RevCount from ROS Parameter: 16570
[ INFO] [1382556066.812910459]: RosAria: publishing new recharge state -1.
[ INFO] [1382556066.813135248]: RosAria: publishing new motors state 0.
[ INFO] [1382556066.896789292]: RosAria: publishing new motors state 1.
edit flag offensive delete link more

Comments

"_port:=/dev/ttyUSB0" shouldn't be required as it's the default, but also shouldn't make a difference.

Dereck gravatar image Dereck  ( 2013-10-23 09:38:52 -0500 )edit

And when we try to run either the pose or the velocity commands using rosrun it just gets paused and nothing happens....

Ashesh Goswami gravatar image Ashesh Goswami  ( 2013-10-23 14:13:50 -0500 )edit

What commands are you referring to exactly?

Dereck gravatar image Dereck  ( 2013-10-23 17:33:05 -0500 )edit

there were two commands that we were using: "rostopic echo /RosAria/pose" and "rostopic pub -1 /RosAria/cmd_vel geometry_msgs/Twist '{linear: {x: 0.05, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.0}}' "

Ashesh Goswami gravatar image Ashesh Goswami  ( 2013-10-24 07:02:50 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2013-10-23 06:42:49 -0500

Seen: 1,503 times

Last updated: Oct 24 '13