Ask Your Question

Start turtlebot world remotely from WIN10 with putty and xming

asked 2018-12-12 04:26:29 -0500

Baumboon gravatar image

updated 2018-12-14 03:15:17 -0500


i want to start my launch file remotely. I am on a WIN10 or Ubuntu 16.04 system and the system where i want to start from is also an Ubuntu 16.04 system.

I use ROS Kinetic with turtlebot simulation package. On Client Xming , putty is correctly installed and configured. Normally it should start a world in gazebo where a turtlebot stands in the middle of the room. Nothing special. When i start:

roslaunch myworld.launch

Here is how the launch file looks:

  <arg name="world_file"  default="$(env TURTLEBOT_GAZEBO_WORLD_FILE)"/>

  <arg name="base"      value="$(optenv TURTLEBOT_BASE kobuki)"/> <!-- create, roomba -->
  <arg name="battery"   value="$(optenv TURTLEBOT_BATTERY /proc/acpi/battery/BAT0)"/>  <!-- /proc/acpi/battery/BAT0 --> 
  <arg name="gui" default="false"/>
  <arg name="stacks"    value="$(optenv TURTLEBOT_STACKS hexagons)"/>  <!-- circles, hexagons --> 
  <arg name="3d_sensor" value="$(optenv TURTLEBOT_3D_SENSOR kinect)"/>  <!-- kinect, asus_xtion_pro --> 

  <include file="$(find gazebo_ros)/launch/empty_world.launch">
    <arg name="use_sim_time" value="true"/>
    <arg name="debug" value="false"/>
    <arg name="gui" value="$(arg gui)" />
    <arg name="world_name" value="/home/usr/turtlebot_project/"/>

  <include file="$(find turtlebot_gazebo)/launch/includes/$(arg base).launch.xml">
    <arg name="base" value="$(arg base)"/>
    <arg name="stacks" value="$(arg stacks)"/>
    <arg name="3d_sensor" value="$(arg 3d_sensor)"/>

  <node pkg="robot_state_publisher" type="robot_state_publisher" name="robot_state_publisher">
    <param name="publish_frequency" type="double" value="30.0" />

  <!-- Fake laser -->
<node pkg="nodelet" type="nodelet" name="laserscan_nodelet_manager" args="manager"/>
<node pkg="depthimage_to_laserscan" type="depthimage_to_laserscan" name="depthimage_to_laserscan">
    <param name="scan_height" value="10"/>
    <param name="output_frame_id" value="/camera_depth_frame"/>
    <param name="range_min" value="0.45"/>
    <remap from="image" to="/camera/depth/image_raw"/>
    <remap from="scan" to="/scan"/>

If u need to see the world please contact me i will send it to u. Its a normal world with a turtlebot in the middle of the world.

the following happend:


 * /bumper2pointcloud/pointcloud_radius: 0.24
 * /cmd_vel_mux/yaml_cfg_file: /opt/ros/kinetic/...
 * /depthimage_to_laserscan/output_frame_id: /camera_depth_frame
 * /depthimage_to_laserscan/range_min: 0.45
 * /depthimage_to_laserscan/scan_height: 10
 * /robot_description: <?xml version="1....
 * /robot_state_publisher/publish_frequency: 30.0
 * /rosdistro: kinetic
 * /rosversion: 1.12.14
 * /use_sim_time: True

    bumper2pointcloud (nodelet/nodelet)
    cmd_vel_mux (nodelet/nodelet)
    depthimage_to_laserscan (depthimage_to_laserscan/depthimage_to_laserscan)
    gazebo (gazebo_ros/gzserver)
    gazebo_gui (gazebo_ros/gzclient)
    laserscan_nodelet_manager (nodelet/nodelet)
    mobile_base_nodelet_manager (nodelet/nodelet)
    robot_state_publisher (robot_state_publisher/robot_state_publisher)
    spawn_turtlebot_model (gazebo_ros/spawn_model)

auto-starting new master
process[master]: started with pid [24752]

setting /run_id to a78d6c56-fdf7-11e8-b44c-d8cb8a119b1a
process[rosout-1]: started with pid [24765]
started core service [/rosout]
process[gazebo-2]: started with pid [24777]
process[gazebo_gui-3]: started with pid [24789]
process[spawn_turtlebot_model-4]: started with pid [24799]
process[mobile_base_nodelet_manager-5]: started with pid [24800]
process[cmd_vel_mux-6]: started with pid [24801]
process[bumper2pointcloud-7]: started with pid [24802]
process[robot_state_publisher-8]: started with pid [24803]
process[laserscan_nodelet_manager-9]: started with pid [24809]
process[depthimage_to_laserscan-10]: started with pid [24818]
[ INFO] [1544610075.539207899]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1544610075.539636364]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[ INFO] [1544610075.589476198]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1544610075.589887149]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
X Error of failed request:  BadMatch (invalid parameter attributes)
  Major opcode of failed request:  143 (GLX ...
edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2018-12-12 17:50:52 -0500

tfoote gravatar image

You cannot forward GL rendering windows through x forwarding. You'll need to at least run your simulation headless. Most launch files support an argument to the effect gui:=false.

edit flag offensive delete link more


Gui is now setted to false. It crashed also

Baumboon gravatar image Baumboon  ( 2018-12-13 02:59:37 -0500 )edit

any additional advices?

Baumboon gravatar image Baumboon  ( 2018-12-13 16:09:06 -0500 )edit

If you can edit your question with more information we might be able to help you. Just saying that it crashed doesn't help much. Remember that we only have what's in your question to try to help you with. If you can provide enough information to reproduce your problem you can get more help.

tfoote gravatar image tfoote  ( 2018-12-13 16:12:28 -0500 )edit

For example if you pass the argument but your launch files doesn't pass it through to the lower level ones it won't do much. if you still get the same errors you're not disabling the gui elements.

tfoote gravatar image tfoote  ( 2018-12-13 16:13:13 -0500 )edit

i added launchfile, explain to world file . Additional error log . If u need further information plz tell me i am despaired no idea how to fix this...

Baumboon gravatar image Baumboon  ( 2018-12-14 03:13:55 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools



Asked: 2018-12-12 04:26:29 -0500

Seen: 235 times

Last updated: Dec 14 '18