0
$\begingroup$

Rosanswers logo

Hi, I'm new to ROS and I'm having some trouble when running the teleop application in the turtlebot2. I'm trying to run it directly on the netbook that came along with the turtlebot. Therefore, I'm not using SSH. ROS Hydro and the turtlebot_teleop package were already installed in the netbook. I'm running "turtlebot_bringup minimal.launch" in one terminal and "turtlebot_teleop keyboard_teleop.launch" in another one. When I press one of the assigned letters I can see that the velocities are being changed, however the robot doesn't move.

the output of 'roswtf' was 1 warning:

WARNING The following node subscriptions are unconnected:
 * /mobile_base_nodelet_manager:
   * /mobile_base/commands/controller_info
   * /mobile_base/commands/external_power
   * /mobile_base/commands/reset_odometry
   * /mobile_base/commands/sound
   * /cmd_vel_mux/input/safety_controller
   * /cmd_vel_mux/input/navi
   * /mobile_base/commands/digital_output
   * /mobile_base/commands/led1
   * /mobile_base/commands/led2
   * /mobile_base/commands/motor_power

Furthermore, I used rqt_graph to take a look in the nodes connection. The rqt_graph can be seen here: http://oi59.tinypic.com/2r21z0w.jpg and http://oi61.tinypic.com/n5q9vb.jpg

This graph looks weird to me. Why are there so many topics named /mobile_base_nodelet_manager/bond?

I've read other threads of people with a similar problem and it seems that the problem was either with the turtlebot_teleop package or that the person was running codes of different release versions. However, I'm not sure if this is my case too because I didn't have to install anything. Everything I'm using came already installed in the netbook that came along with the robot.


EDIT: the log for 'roslaunch turtlebot_bringup minimal.launch --screen' is:

turtlebot@turtlebot-X200CA:~$ roslaunch turtlebot_bringup minimal.launch --screen... logging to /home/turtlebot/.ros/log/917cdfc6-0cc2-11e4-9663-48d22479773d/roslaunch-turtlebot-X200CA-2196.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://10.85.254.209:54459/

SUMMARY
========

PARAMETERS
 * /bumper2pointcloud/pointcloud_radius
 * /cmd_vel_mux/yaml_cfg_file
 * /diagnostic_aggregator/analyzers/input_ports/contains
 * /diagnostic_aggregator/analyzers/input_ports/path
 * /diagnostic_aggregator/analyzers/input_ports/remove_prefix
 * /diagnostic_aggregator/analyzers/input_ports/timeout
 * /diagnostic_aggregator/analyzers/input_ports/type
 * /diagnostic_aggregator/analyzers/kobuki/contains
 * /diagnostic_aggregator/analyzers/kobuki/path
 * /diagnostic_aggregator/analyzers/kobuki/remove_prefix
 * /diagnostic_aggregator/analyzers/kobuki/timeout
 * /diagnostic_aggregator/analyzers/kobuki/type
 * /diagnostic_aggregator/analyzers/power/contains
 * /diagnostic_aggregator/analyzers/power/path
 * /diagnostic_aggregator/analyzers/power/remove_prefix
 * /diagnostic_aggregator/analyzers/power/timeout
 * /diagnostic_aggregator/analyzers/power/type
 * /diagnostic_aggregator/analyzers/sensors/contains
 * /diagnostic_aggregator/analyzers/sensors/path
 * /diagnostic_aggregator/analyzers/sensors/remove_prefix
 * /diagnostic_aggregator/analyzers/sensors/timeout
 * /diagnostic_aggregator/analyzers/sensors/type
 * /diagnostic_aggregator/base_path
 * /diagnostic_aggregator/pub_rate
 * /mobile_base/base_frame
 * /mobile_base/battery_capacity
 * /mobile_base/battery_dangerous
 * /mobile_base/battery_low
 * /mobile_base/cmd_vel_timeout
 * /mobile_base/device_port
 * /mobile_base/odom_frame
 * /mobile_base/publish_tf
 * /mobile_base/use_imu_heading
 * /mobile_base/wheel_left_joint_name
 * /mobile_base/wheel_right_joint_name
 * /robot/name
 * /robot/type
 * /robot_description
 * /robot_state_publisher/publish_frequency
 * /rosdistro
 * /rosversion
 * /turtlebot_laptop_battery/acpi_path
 * /use_sim_time

NODES
  /
    bumper2pointcloud (nodelet/nodelet)
    cmd_vel_mux (nodelet/nodelet)
    diagnostic_aggregator (diagnostic_aggregator/aggregator_node)
    mobile_base (nodelet/nodelet)
    mobile_base_nodelet_manager (nodelet/nodelet)
    robot_state_publisher (robot_state_publisher/robot_state_publisher)
    turtlebot_laptop_battery (linux_hardware/laptop_battery.py)

auto-starting new master
process[master]: started with pid [2213]
ROS_MASTER_URI=http://10.85.254.209:11311

setting /run_id to 917cdfc6-0cc2-11e4-9663-48d22479773d
process[rosout-1]: started with pid [2226]
started core service [/rosout]
process[robot_state_publisher-2]: started with pid [2229]
process[diagnostic_aggregator-3]: started with pid [2230]
process[mobile_base_nodelet_manager-4]: started with pid [2231]
process[mobile_base-5]: started with pid [2232]
process[cmd_vel_mux-6]: started with pid [2233]
process[bumper2pointcloud-7]: started with pid [2234]
process[turtlebot_laptop_battery-8]: started with pid [2235]
[ INFO] [1405499057.196687043]: Loading nodelet /cmd_vel_mux of type yocs_cmd_vel_mux/CmdVelMuxNodelet to manager mobile_base_nodelet_manager with the following remappings:
[ INFO] [1405499057.196809014]: /cmd_vel_mux/output -> /mobile_base/commands/velocity
[ INFO] [1405499057.198588888]: Loading nodelet /bumper2pointcloud of type kobuki_bumper2pc/Bumper2PcNodelet to manager mobile_base_nodelet_manager with the following remappings:
[ INFO] [1405499057.198705827]: /bumper2pointcloud/core_sensors -> /mobile_base/sensors/core
[ INFO] [1405499057.198740488]: /bumper2pointcloud/pointcloud -> /mobile_base/sensors/bumper_pointcloud
[ INFO] [1405499057.199414864]: Loading nodelet /mobile_base of type kobuki_node/KobukiNodelet to manager mobile_base_nodelet_manager with the following remappings:
[ INFO] [1405499057.199527296]: /mobile_base/disable -> /disable
[ INFO] [1405499057.199561204]: /mobile_base/enable -> /enable
[ INFO] [1405499057.199589753]: /mobile_base/joint_states -> /joint_states
[ INFO] [1405499057.199616943]: /mobile_base/odom -> /odom
/opt/ros/hydro/lib/robot_state_publisher/robot_state_publisher
[ INFO] [1405499057.226453915]: waitForService: Service [/mobile_base_nodelet_manager/load_nodelet] has not been advertised, waiting...
[ INFO] [1405499057.227917871]: waitForService: Service [/mobile_base_nodelet_manager/load_nodelet] has not been advertised, waiting...
[ INFO] [1405499057.229581699]: waitForService: Service [/mobile_base_nodelet_manager/load_nodelet] has not been advertised, waiting...
[ INFO] [1405499057.556503009]: Initializing nodelet with 2 worker threads.
[ INFO] [1405499057.571087276]: waitForService: Service [/mobile_base_nodelet_manager/load_nodelet] is now available.
[ INFO] [1405499057.574181362]: waitForService: Service [/mobile_base_nodelet_manager/load_nodelet] is now available.
[ INFO] [1405499057.575167629]: waitForService: Service [/mobile_base_nodelet_manager/load_nodelet] is now available.
[ INFO] [1405499057.821693549]: CmdVelMux : (re)configured [/opt/ros/hydro/share/turtlebot_bringup/param/mux.yaml]
[ INFO] [1405499057.966616003]: Bumper/cliff pointcloud configured at distance 0.240000 and height 0.040000 from base frame
[ INFO] [1405499058.419755996]: Kobuki : configured for connection on device_port /dev/kobuki [/mobile_base].
[ INFO] [1405499058.419908397]: Kobuki : driver running in normal (non-simulation) mode [/mobile_base].
[ INFO] [1405499058.423371626]: Kobuki : Velocity commands timeout: 0.600000000 seconds [/mobile_base].
[ INFO] [1405499058.425498767]: Kobuki : using odom_frame [odom][/mobile_base].
[ INFO] [1405499058.427894151]: Kobuki : using base_frame [base_footprint][/mobile_base].
[ INFO] [1405499058.430046312]: Kobuki : publishing transforms [/mobile_base].
[ INFO] [1405499058.433785085]: Kobuki : using imu data for heading [/mobile_base].
[ INFO] [1405499058.477905089]: Kobuki : Version info - Hardware: 1.0.4. Firmware: 1.2.0
[ INFO] [1405499058.690449199]: Kobuki : initialised.

Does anyone know what is the problem? Cheers


Originally posted by gerhenz on ROS Answers with karma: 53 on 2014-07-15

Post score: 0


Original comments

Comment by jihoonl on 2014-07-15:
Can you attach the log of minimal.launch terminal? You should see some logs if you start turtlebot using roslaunch turtlebot_bringup minimal.launch --screen

Comment by gerhenz on 2014-07-16:
Hi jihoonl, I've added the log you requested in the question. Thanks

Comment by jihoonl on 2014-07-16:
I don't see any problem here. Try rostopic echo on /mobile_base/commands/velocity and /cmd_vel_mux/input/teleop to see if there is any data stream. /cmd_vel_mux/input/teleop is a command from teleop_keyboard node and /mobile_base/commands/velocity is actual topic which kobuki_driver listens.

Comment by gerhenz on 2014-07-17:
Both topics aren't receiving the commands. When I use the keyboard to try to move the robot, the teleop terminal displays the 'speed' and 'turn' parameters changing, however both topics that you mentioned display only zeroes. I also ran the kobuki dashboard and everything is fine (green mark)

Comment by jihoonl on 2014-07-20:
What keys did you press to move the robot?

Comment by gerhenz on 2014-07-21:
W,E,Q,C,X,Z. But I don't think this is the problem, since I could see the velocity parameters changing in the terminal as I pressed the keys. Anyway, I managed to make it work using a different command (see comments on the other answer)

Comment by jihoonl on 2014-07-23:
Yeah it was the problem.. You should have used u,i,o,j,k,l,m ... keys to move robot. weqcxz are to configure speed of robots.

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Instead brining up the turtlebot with roslaunch turtlebot_bringup minimal.launch, I suggest that you simply start up the turtlebot from the top right corner if you are going to be testing out some of the basic stuff with out ssh.

Just simply click on the turtle icon on the top right corner and start turtlebot. Hopefully you will see this. Also, wait for the jingling noise to finish before you try to run anything else.

They simply launch the turtlebot_teleop package.

I think that should help you for the most part. Let me know if this suggestion is useful.


Originally posted by choog with karma: 101 on 2014-07-15

This answer was ACCEPTED on the original site

Post score: 0


Original comments

Comment by gerhenz on 2014-07-16:
Hi choog, I'm sorry but I'm new to this and I didn't understand what you mean. Where can I find this turtle icon that you mentioned? Is it in the top right corner of what?

Comment by Ken_in_JAPAN on 2014-07-16:
I guess if your ROS_HOSTNAME is different from your ROS_MASTER_URI. That means that setup is wrong. Could you check your .bashrc? In your case, I think that both has to be same because you intend to make a turtlebot move with the netbook on turtlebot.

Comment by gerhenz on 2014-07-17:
Both of them are the same, the only difference is that the ROS_MASTER_URI is pointed to port 11311 in the turtlebot IP. I did exactly as instructed in section 3 of the Turtlebot Networking Setup tutorial (http://wiki.ros.org/Robots/TurtleBot/Network%20Setup)

Comment by gerhenz on 2014-07-17:
Just an update, I've tried the commands 'roslaunch kobuki_node minimal.launch' and 'roslaunch kobuki_keyop keyop.launch' and they worked. I've found them in the kobuki manual that came along with the robot. Why these commands work and not the 'turtlebot_teleop' ones?

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.