0
$\begingroup$

Gazebo Answers logo

Hi All,

I have reciently upgraded from Fuerte to Groovy, and I am working on Ubuntu Precise.

I wanted to start simulating my robot in Gazebo using my existing URDF and models. I started by trying out Gazebo with the debian package ros-groovy-simulator-gazebo by running

kel@accuser:~$ rosrun gazebo gazebo

This gives the following behavior, similar to this question posted to answers.gazebosim.org.

kel@accuser:~$ rosrun gazebo gazebo
Gazebo multi-robot simulator, version 1.3.0
Copyright (C) 2012 Nate Koenig, John Hsu, and contributors.
Released under the Apache 2 License.
http://gazebosim.org

Msg Waiting for master.[ INFO] [1363287175.831594707]: waitForService: Service [/gazebo    /set_physics_properties] has not been advertised, 
waiting.................

Which then continues to wait forever, and has to be ctrl-\ to be stopped (or killed).

At first I thought that this could be a problem with my ROS_IP or other network parameters, but I think those are ok, and other ROS nodes can be brought up just fine:

kel@accuser:~$ export |grep ROS

returns

declare -x ROS_DISTRO="groovy"
declare -x ROS_ETC_DIR="/opt/ros/groovy/etc/ros"
declare -x ROS_IP="10.162.34.26"
declare -x ROS_MASTER_URI="http://localhost:11311"
declare -x ROS_PACKAGE_PATH="/home/kel/ros_workspace/executive_smach_tutorials:/home/kel    /ros_workspace/adjutant:/home/kel/ros_workspace/merlin_robot:/home/kel/ros_workspace    /ros_controllers:/home/kel/ros_workspace/ros_control:/opt/ros/groovy/share:/opt/ros/groovy/stacks"
declare -x ROS_ROOT="/opt/ros/groovy/share/ros"
declare -x ROS_WORKSPACE="/home/kel/ros_workspace"

and

kel@accuser:~$ ifconfig

returns

eth0  Link encap:Ethernet  HWaddr 00:1a:6b:36:b0:1b  
      inet addr:10.162.34.26  Bcast:10.162.34.255  Mask:255.255.255.0
      inet6 addr: fe80::21a:6bff:fe36:b01b/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:1425950 errors:0 dropped:0 overruns:0 frame:0
      TX packets:477752 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:212769407 (212.7 MB)  TX bytes:39867099 (39.8 MB)
      Interrupt:20 Memory:fe200000-fe220000 

lo    Link encap:Local Loopback  
      inet addr:127.0.0.1  Mask:255.0.0.0
      inet6 addr: ::1/128 Scope:Host
      UP LOOPBACK RUNNING  MTU:16436  Metric:1
      RX packets:111011 errors:0 dropped:0 overruns:0 frame:0
      TX packets:111011 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:15710426 (15.7 MB)  TX bytes:15710426 (15.7 MB)

After reading a few other questions such as this one, it seems apparent that the ROS simulator-gazebo stuff is deprecated. However, I have it on good authority that the ros simulator-gazebo tools (specifically the spawn_model command to use URDF's) should still work as of Groovy.

I am not sure if the error I am having with simulator-gazebo is related to a separate problem, or this supposed deprecation. I also have installed Gazebo 1.5. What is the best way for me to use my existing URDFs and models?

Thanks for the help, and let me know if you need more information about anything.

Cheers, Kel Guerin

Johns Hopkins University


Originally posted by KelGuerin on Gazebo Answers with karma: 16 on 2013-03-14

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Gazebo Answers logo

Ok so here is what I ended up doing. I found this answer from @nkoenig in which he suggested removing "localhost" from the "::1" line of /etc/hosts. I am not sure this is a good long term solution, but it solved my start-up problem and now gazebo runs fine. I used spawn_model to load in my robot and that worked great as well.

I think I will stick with using gazebo through ROS for now, since the ability to use URDFs really simplifies my workflow.

There are still some issues with gazebo not finishing cleanly when you click the x to close the simulation window. Sometimes there is still a gazebo process running in the background, which then causes a segmentation fault the next time you try and roslaunch gazebo_world foo.launch.

I hope this can help anyone else having this problem.

Cheers, Kel Guerin


Originally posted by KelGuerin with karma: 16 on 2013-03-14

This answer was ACCEPTED on the original site

Post score: 0


Original comments

Comment by Adolfo Rodríguez T on 2013-03-15:
FYI you can still spawn URDFs from Gazebo standalone. There is a slight overhead to port your existing models to the standalone structure, but you don't have to sacrifice URDF, at least for now. The main difference is that your models: 1. must be exposed as a Gazebo model database, and 2. should be spawned using gzfactory instead of spawn_model.

Comment by skhan on 2013-03-15:
@KelGuerin Yes I got the same problem but I am spawning and launching gazebo by following commands

roslaunch gazebo_worlds empty_world.launch rosrun gazebo spawn_model -file model.sdf -gazebo -z 200 -model my_robot

Comment by skhan on 2013-03-15:
@KelGuerin Yes I got the same problem

Comment by skhan on 2013-03-15:
rosrun gazebo spawn_model -file model.sdf -gazebo -z 200 -model my_robot

Comment by skhan on 2013-03-15:
rosrun gazebo spawn_model -file model.sdf -gazebo -z 200 -model my_robot

Comment by nkoenig on 2013-03-15:
The original problem posted is resolved in Gazebo 1.5.

$\endgroup$

Your Answer

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