Quantcast
Channel: ROS Answers: Open Source Q&A Forum - RSS feed
Viewing all 1516 articles
Browse latest View live

different between gazebo and rviz

$
0
0
hello everyone , i am a beginner for ros and i want to simulator a robot with sensor and can send odom msgs ,i already built a simple robot model , using arbotix and rviz and i can teleop it ; to add more , may i learn gazebo? where can i find a good tutorials? and what is gazebo , a visual tools like rviz ? or a simulator tools ? will i use gazebo to simulator and visual in rviz? thx for help~ and merry christmas~

can't see contact sensor data

$
0
0
hello everyone , i have a question that i follow this tutorial [link text](http://gazebosim.org/tutorials?tut=contact_sensor&cat=sensors),that i create a work dir "$ mkdir ~/gazebo_contact_tutorial; cd ~/gazebo_contact_tutorial" and next make an SDF world file with a box that has a contact sensor. "vim contact.world" ,the code is below ; then i run "$ gazebo contact.world " and i can see a box on the ground ,but when i type "$ gz topic -l" **i can't see /gazebo/default/box/link/my_contact** if anyone know why , help me please ~
model://ground_planemodel://sun0 0 0.5 0 0 01 1 11 1 1box_collision

can't find gazebo /world dir

$
0
0
**hello everyone , i follow the tutorial below , but when i type "$ env | grep GAZEBO_RESOURCE_PATH " ,there are nothing happen . i can't see anything in my terminate.** World files are found within the /worlds directory of your Gazebo resource path. The location of this path depends on how you installed Gazebo and the type of system your are on. To find the location of your Gazebo resources, use the following command: env | grep GAZEBO_RESOURCE_PATH An typical path might be something like /usr/local/share/gazebo-1.9. Add /worlds to the end of the path and you should have the directory containing the world files Gazebo uses, including the mud.world file. **if anyone know why , help me please~**

teleop model in gazebo

$
0
0
hello every one , i write a robot model in gazebo it have two wheels and one hokuyo ,the sdf file is below and i have a model.config , then i can see it in gazebo , use gui to see hokuyo data . now i want to use my keyboard to control it , i already write teleop node in ros which can send vml_cmd messages , so how can i do and what should i do then i can use my teleop node to control this model in gazebo ? thx ~false0 0 .1 0 0 0.4 .2 .1.4 .2 .1-0.15 0 -0.05 0 0 0.05-0.15 0 -0.05 0 0 0.050.1 0.13 0.1 0 1.5707 1.5707.1.05.1.050.1 -0.13 0.1 0 1.5707 1.5707.1.05.1.050 0 -0.03 0 0 0left_wheellink0 1 00 0 0.03 0 0 0right_wheellink0 1 0model://hokuyo0.2 0 0.2 0 0 0hokuyo::linklink0 0 100

can't spawn model in gazebo

$
0
0
hello everyone , i start gazebo with `$ roscore & $ rosrun gazebo_ros gazebo`, then i want to add a coke_can to it , and i type: `$ rosrun gazebo_ros spawn_model -database coke_can -gazebo -model coke_can -y 1` but nothing happen in gazebo world . and the info in my terminate is below : spawn_model script started Deprecated: the -gazebo tag is now -sdf [INFO] [WallTime: 1420599431.921951] [0.000000] Loading model xml from Gazebo Model Database [INFO] [WallTime: 1420599431.922563] [0.000000] Waiting for service /gazebo/spawn_sdf_model [INFO] [WallTime: 1420599431.925847] [0.000000] Calling service /gazebo/spawn_sdf_model [INFO] [WallTime: 1420599441.933129] [619.918000] Spawn status: SpawnModel: Model pushed to spawn queue, but spawn service timed out waiting for model to appear in simulation under the name coke_can if anyone know , please tell me , thx

Failed to load plugin libgazebo_ros_control.so

$
0
0
I've built gazebo 1.9 from source followed by hydro desktop full from source in Ubuntu 13.10 following the instructions but I'm getting these errors when trying to use my xacro/urdf files Error [Plugin.hh:138] Failed to load plugin libgazebo_ros_control.so: libgazebo_ros_control.so: cannot open shared object file: No such file or directory A few months ago I was able to do the same source install process and despite getting an error about `apt: command [sudo apt-get install -y gazebo2] failed` at the rosdep stage, the gazebo dependent packages built because I had correctly installed gazebo and pointed the right environmental variables at it. And all that .so was there (or was it?), everything worked fine (even without it?). I git cloned ros_control, realtime_tools, and control_toolbox but still no success at generating the so. I'm not sure if those are actually needed here, but it some cursory research suggested they were, though on the earlier installs I never had to manually clone them (maybe rosdep did?). Is there some other manual steps I need to do to get libgazebo_ros_control.so?

question about navgation in gazebo

$
0
0
hello everyone~ i am a beginner of ros , nowadays there are some questions frustrate me , most about robot navigation & gazebo. the question is i want to write a robot (using urdf or sdf or xacro?) in gazebo and let it navigation themselves(by using gmapping , slam , locolization ros packages etc) , the first step to do this , i think i should make a robot description file and load it to gazebo , and "link" it to ROS , then at least i can get the odom information from ros message and use ros message like cmd_vel or teleop node to control the model move . but i found some question below: 1. i follow the tutorial "[http://gazebosim.org/tutorials](http://gazebosim.org/tutorials)" and "[http://sdformat.org/spec](http://sdformat.org/spec)" to learn to write a robot model and added it to gazebo successful , but i don't understand the different between urdf & sdf & xacro , i saw some one add tag in urdf or xacro then it can also ues in gazebo - -, and i don't know where to find those xml format's specification , so if you know plz tell me ~ 2.i also find a tutorial "[http://guitarpenguin.is-programmer.com/posts/58100.html](http://guitarpenguin.is-programmer.com/posts/58100.html)" that looks like this guy already added to irobot and could use cmd_vel to control it move . but when i follow him ,add the to my irobot sdf file ,it doesn't work well and when i spawn the robot the info in my terminal is : [ INFO] [1420772905.328687303, 0.023000000]: waitForService: Service [/gazebo/set_physics_properties] is now available. [ INFO] [1420772905.394811076, 0.086000000]: Physics dynamic reconfigure ready. [ INFO] [1420772910.103532720, 4.722000000]: DiffDrive missing , defaults is create [ INFO] [1420772910.103775476, 4.722000000]: Starting plugin DiffDrive(ns = create/)! [ WARN] [1420772910.103885161, 4.722000000]: DiffDrive(ns = create/): missing default is na [ INFO] [1420772910.106078458, 4.722000000]: DiffDrive(ns = create/): = create [ WARN] [1420772910.106351770, 4.722000000]: DiffDrive(ns = create/): missing default is odom [ WARN] [1420772910.106390086, 4.722000000]: DiffDrive(ns = create/): missing default is base_footprint [ WARN] [1420772910.106450532, 4.722000000]: DiffDrive(ns = create/): missing default is false [ WARN] [1420772910.106492915, 4.722000000]: DiffDrive(ns = create/): missing default is false [ WARN] [1420772910.106708018, 4.722000000]: DiffDrive(ns = create/): missing default is 0 [ WARN] [1420772910.106744029, 4.722000000]: DiffDrive(ns = create/): missing default is 5 [ WARN] [1420772910.107118573, 4.722000000]: DiffDrive(ns = create/): missing default is 1 [ WARN] [1420772910.107354021, 4.722000000]: GazeboRosDiffDrive Plugin (ns = ) missing , defaults to 1 [ INFO] [1420772910.108422069, 4.722000000]: DiffDrive(ns = create/): Try to subscribe to cmd_vel! [ INFO] [1420772910.111925461, 4.722000000]: DiffDrive(ns = create/): Subscribe to cmd_vel! [ INFO] [1420772910.112774719, 4.722000000]: DiffDrive(ns = create/): Advertise odom on odom ! 3.when i read the tutorial , it seems like that i need add & to my robot description xml file (whatever urdf ? xacro ? sdf ?) i don't know much about ros_controller or plugin , what it is ? what it is use for? and how should i use it ? if you know some thing , or have the same frustrate with me , welcome to comment~ thx ~

Use irobot create in gazebo with ROS

$
0
0
hello everyone i follow this tutorial [http://guitarpenguin.is-programmer.com/posts/58100.html](http://guitarpenguin.is-programmer.com/posts/58100.html) to let my robot model subscribe cmd_vel and move in gazebo ,but when i spawn model in gazebo the terminal show: [ INFO] [1420784789.699143934, 242.985000000]: Loaded gazebo_ros_control. [ INFO] [1420784789.703800416, 242.985000000]: DiffDrive missing , defaults is my_robot [ INFO] [1420784789.703967194, 242.985000000]: Starting plugin DiffDrive(ns = my_robot/)! [ WARN] [1420784789.704044386, 242.985000000]: DiffDrive(ns = my_robot/): missing default is na [ INFO] [1420784789.705129170, 242.985000000]: DiffDrive(ns = my_robot/): = my_robot [ WARN] [1420784789.705392286, 242.985000000]: DiffDrive(ns = my_robot/): missing default is false [ WARN] [1420784789.705423241, 242.985000000]: DiffDrive(ns = my_robot/): missing default is false [ WARN] [1420784789.705642094, 242.985000000]: DiffDrive(ns = my_robot/): missing default is 0 [ WARN] [1420784789.705671681, 242.985000000]: DiffDrive(ns = my_robot/): missing default is 5 [ WARN] [1420784789.706323840, 242.985000000]: DiffDrive(ns = my_robot/): missing default is 1 [ WARN] [1420784789.706749342, 242.985000000]: GazeboRosDiffDrive Plugin (ns = ) missing , defaults to 1 [ INFO] [1420784789.708436488, 242.985000000]: DiffDrive(ns = my_robot/): Try to subscribe to cmd_vel! [ INFO] [1420784789.715558793, 242.985000000]: DiffDrive(ns = my_robot/): Subscribe to cmd_vel! [ INFO] [1420784789.716687462, 242.985000000]: DiffDrive(ns = my_robot/): Advertise odom on odom !

Massless Model in Gazebo

$
0
0
Hi, I have a model in Gazebo. Upon applying little bit of force it overreacts, so it seems the model is almost massless. I tried assigning mass by using the "inertial mass" tag in the model sdf file, but it doesn't seem to do much. Here is my link tag: 0 0 1 0 0 02.8 2.5 1.52.8 2.5 1.5 I am starting with gazebo, so I appreciate any help.

apply joint effort service call doesn't do much in gazebo

$
0
0
Hi, I have a ros node that connects to my gazebo model. It makes a service call to rotate the joints (wheels). If I perform the ros service call from the cmd line I am able to see the wheels move. However, from the cpp node, it doesn't seem to move. Here is my cpp code: gazebo_msgs::ApplyJointEffort r; r.request.duration = ros::Duration(2.); r.request.joint_name = "right_wheel_hinge"; ros::ServiceClient client2 = gazebo.serviceClient("/gazebo/apply_joint_effort"); client2.call(r); I have this in my main function of my cpp file. I am starting with Gazebo, so your help is appreciated

can't use diffdrive plugin in gazebo

$
0
0
hello everyone , i write a SDF robot model in gazebo and it parse in gazebo successfully , then i attach a diffdrive plugin in it , want to let it sub cmd_vel , but it doesn't work and info in terminal si below : [ INFO] [1421032451.332067902, 0.023000000]: waitForService: Service [/gazebo/set_physics_properties] is now available. [ INFO] [1421032451.394642639, 0.083000000]: Physics dynamic reconfigure ready. [ INFO] [1421032459.012947590, 7.137000000]: DiffDrive missing , defaults is my_robot [ INFO] [1421032459.013117505, 7.137000000]: Starting plugin DiffDrive(ns = my_robot/)! [ WARN] [1421032459.013202154, 7.137000000]: DiffDrive(ns = my_robot/): missing default is na [ INFO] [1421032459.015342813, 7.137000000]: DiffDrive(ns = my_robot/): = my_robot [ WARN] [1421032459.015596405, 7.137000000]: DiffDrive(ns = my_robot/): missing default is false [ WARN] [1421032459.015621822, 7.137000000]: DiffDrive(ns = my_robot/): missing default is false [ WARN] [1421032459.015752576, 7.137000000]: DiffDrive(ns = my_robot/): missing default is 0 [ WARN] [1421032459.015774787, 7.137000000]: DiffDrive(ns = my_robot/): missing default is 5 [ WARN] [1421032459.016082552, 7.137000000]: DiffDrive(ns = my_robot/): missing default is 1 [ WARN] [1421032459.016282714, 7.137000000]: GazeboRosDiffDrive Plugin (ns = ) missing , defaults to 1 [ INFO] [1421032459.017624231, 7.137000000]: DiffDrive(ns = my_robot/): Try to subscribe to cmd_vel! [ INFO] [1421032459.023184965, 7.137000000]: DiffDrive(ns = my_robot/): Subscribe to cmd_vel! [ INFO] [1421032459.025141207, 7.137000000]: DiffDrive(ns = my_robot/): Advertise odom on odom ! if anyone seen this before , how can make it work?

Gazebo Joint's GetForce() returns zero when used in conjunction with SetMaxForce() and SetVelocity()

$
0
0
I am writing my own robot sim interface (to replace the `DefaultRobotSim` plugin for our robot), and `gazebo::physics::Joint::GetForce()` returns zero when velocities are sent directly to the simulator through `gazebo::physics::Joint::SetVelocity()` + `gazebo::physics::Joint::SetMaxForce()`. The function starts to return values different from zero for a particular joint when a command has been issued to it from Gazebo GUI's Joints pane, where force, velocity, or position can be set. But until the pane is not used, GetForce() returns zero even if a controller from ros_control is active and the robot is moving. Is there a way to get non-zero force values without having to use the Joints pane first? The functions `gazebo::physics::Joint::GetAngle()` and `gazebo::physics::Joint::GetVelocity()` return non-zero values from the beginning as expected. To make sure the problem was not related with my robot sim interface, I tested using `DefaultRobotSim` with standard ros_control controllers. I got the same results. The problem does not happen if `gazebo::physics::Joint::SetForce()` is used instead of `SetVelocity()`, and `SetMaxForce()` is not called. I found a similar question in ROS Answers, but in that case, `GetForce()` seemed to return zero always because the function was not implemented yet. ROS Indigo Gazebo version: 2.2.3 gazebo_ros_control: 2.4.6

Can I get force information in gazebo? and how?

$
0
0
Hello! I want to simulate the force control of robots using gazebo. But I don't know how to get the force information in gazebo. I can get the joint position and velocity by pr2_mechanism_model::RobotState. However, there is no function to get the joint effort. Thank you very much

What version of Gazebo will ROS Jade use?

$
0
0
Just curious if this has been decided on!

Gazebo won't launch without restarting PC

$
0
0
I've been following the tutorials of GazeboSim. I can spawn the 'RRBot' with *roslaunch rrbot_gazebo rrbot_world.launch* command, but if I close Gazebo, I cannot spawn the RRBot again, instead, encounter with this output; *URDF in parameter [/robot_description] on the ROS param server. Segmentation fault (core dumped) [gazebo-2] process has died [pid 5212, exit code 139, cmd /opt/ros/hydro/lib/gazebo_ros/gzserver /home/oguzhan/catkin_ws/src/gazebo_ros_demos/rrbot_gazebo/worlds/rrbot.world __name:=gazebo __log:=/home/oguzhan/.ros/log/4c41b0c0-a00c-11e4-837b-40f02ffcf6f4/gazebo-2.log]. log file: /home/oguzhan/.ros/log/4c41b0c0-a00c-11e4-837b-40f02ffcf6f4/gazebo-2*.log [urdf_spawner-4] process has finished cleanly log file: /home/oguzhan/.ros/log/4c41b0c0-a00c-11e4-837b-40f02ffcf6f4/urdf_spawner-4*.log * If I restart my PC, I can spawn the RRBot again with the same command ' *roslaunch rrbot_gazebo rrbot_world.launch* '. Again, if I shut it down, I cannot spawn again, but I tried to kill the process, *killall gzserver* and *pkill gzserver* but it didn't help. I checked the System Monitor to see if any remaining process running, but it didn't also help. But after these, I can launch *gazebo* standalone with no problem and also, I can launch gazebo with *roslaunch gazebo_ros empty_world.launch* and I can spawn the Baxter robot with *rosrun gazebo_ros spawn_model -file `rospack find baxter_description`/urdf/baxter.urdf -urdf -z 1 -model baxter* But I still fail to spawn the RRBOT with *roslaunch rrbot_gazebo rrbot_world.launch* Do you have any ideas?

Make gazebo camera ignore certain objects

$
0
0
I have a robot model with a camera in gazebo. The camera is observing the world but some objects I would like the camera to ignore so they are not captured in the image output. Is it possible to have a gazebo camera ignore certain objects e.g. perceive them as transparent or black e.g. by giving the objects a specific prefix in their name or something else?

Spawned node incomplete?

$
0
0
I was able to use the following the code in ROS fuerte to spawn the JointTrajectoryAction node: The correctly spawned node contains the following topics: /arm_controller/command /arm_controller/follow_joint_trajectory/cancel /arm_controller/follow_joint_trajectory/feedback /arm_controller/follow_joint_trajectory/goal /arm_controller/follow_joint_trajectory/result /arm_controller/follow_joint_trajectory/status /arm_controller/joint_trajectory_action/cancel /arm_controller/joint_trajectory_action/feedback /arm_controller/joint_trajectory_action/goal /arm_controller/joint_trajectory_action/result /arm_controller/joint_trajectory_action/status /arm_controller/state However, when I do the same thing in ROS indigo, I only got two topics: /arm_controller/command /arm_controller/state It seems that the JointTrajectoryAction is not started successfully? If you have any idea it will be greatly appreciated! Some more observations: When I tried to kill Gazebo (ctrl+c) , I got the following "traceback" info: Traceback (most recent call last): File "/home/david/catkin_ws/src/pr2_simulator/pr2_mechanism/pr2_controller_manager/scripts/spawner", line 161, in if __name__ == '__main__': main() File "/home/david/catkin_ws/src/pr2_simulator/pr2_mechanism/pr2_controller_manager/scripts/spawner", line 92, in main rospy.wait_for_service('pr2_controller_manager/load_controller') File "/opt/ros/indigo/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 159, in wait_for_service raise ROSInterruptException("rospy shutdown") If I do a "rosservice -list" command, I find `'controller_manager/load_controller'` instead of 'pr2_controller_manager/load_controller'

Kinect in gazebo for ROS

$
0
0
Hey I am new to Gazebo. My project requires kinect mounted over Pioneer 3DX to track humans in environment as one of its part.. I wanted to know hot to add kinect sensor to my Pioneer 3DX model in Gazebo and receive data in a similar fashion as done by Kinect nodes for ROS. Thanks in advance..

Turtlebot arm on Gazebo: lets fall all grasped objects

$
0
0
Hi all, I have managed to fully simulate the turtlebot arm on Gazebo (ROS indigo + Gazebo 2.2.3), but when I try to run the [block manipulation demo](http://wiki.ros.org/turtlebot_arm_block_manipulation?distro=indigo), the robot can grasp the blocks but then let them fall instead of raising them. So seems to me that there must be 0 friction between the gripper's fingers and the blocks (see a [video](https://www.dropbox.com/s/mtzk48yqltjvrnb/grasp_block.mtk?dl=0)) I have tried to modify fingers and blocks descriptions as described in [this gazebo answer](http://answers.gazebosim.org/question/1143/sdf-robot-model-slippery-slides-no-friction/?sort=votes&page=1#sort-top) but all failed (particularly I tried different combinations of mu1, mu2, kp, kd and minDepth). I also set the blocks mass to almost 0 and same result. So I need something different... I took a look to he pull req mentioned on [this other answer](http://answers.gazebosim.org/question/5109/simple-arm-gripper-not-picking-up-objects/) but I have no idea what is this patch fixing. I found nothing like a gripper plugin in the Gazebo version I'm using (I tried to add one to my robot's URDF but Gazebo crashed!) Other thing I can be doing wrong is that my gripper controller is a position controller, so I wonder if the gripper just closes until the side of the cubes (2.5 cm) + 2 x minDepth and then don't exert any additional force over the blocks and so they fall. But I was playing with torque controllers and they are really a pain in Gazebo, making the arm to self-disintegrate!!! Any clues? Is there a Gazebo gripper plugin in later versions? Or should I try to use a torque controller instead of a position one? Thank you a lot! **UPDATE** I have tried an effort controller as explained [here](http://gazebosim.org/tutorials?tut=ros_control), but this provokes a rather esoteric fault on kobuki base! No idea how both things can interfere each other. [INFO] [WallTime: 1422289543.637095] [104.140000] Controller Spawner: Loaded controllers: joint_state_controller, gripper_joint, arm_controller [INFO] [WallTime: 1422289543.646707] [104.150000] Started controllers: joint_state_controller, gripper_joint, arm_controller process[move_group-20]: started with pid [3501] [ WARN] [1422289543.848301993, 104.300000000]: Gazebo ROS Kobuki plugin: NaN in d1. Step time: 0.01, WD: 0.07, velocity: -nan [ WARN] [1422289543.849198941, 104.300000000]: Gazebo ROS Kobuki plugin: NaN in d2. Step time: 0.01, WD: 0.07, velocity: -nan Error: TF_NAN_INPUT: Ignoring transform for child_frame_id "base_footprint" from authority "unknown_publisher" because of a nan value in the transform (218....

How to navigate without localization

$
0
0
We're using **turtlebot_gazebo** now and every time we **navigate**, it uses **amcl**. However, in our task,robot just needs to **avoid the obstacles and follow the target person in a small range of view**. In short, we want to modify or some way to **navigate without localization**. I suspect it is sth related to the tf and move_base but not quite clear what to do. Can it be easily fulfilled? What should we do? *Many Thanks!*
Viewing all 1516 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>