I'm trying to compile Gazebo with a local install of Ogre. I have the Ogre .pc files pointing to the right locations. However, the Find Ogre bit in the [SearchForStuff.cmake](https://bitbucket.org/osrf/gazebo/src/14a3e6e94163602588f6965f6123f4f777e2e302/cmake/SearchForStuff.cmake?at=default&fileviewer=file-view-default) file still seems to be looking at default /usr/include/OGRE
Is there a configuration variable I am missing - I couldn't find anything for Ogre.
Thank you
↧
compiling Gazebo with Ogre installed locally
↧
Gazebo ros control plugin not loading on OSX
I am trying to simulate my robot with gazebo, and I am getting the following warning "Controller Spawner couldn't find the expected controller_manager ROS interface.". After looking to other answers, I assume that it is related to the gazebo gazebo_ros_control plugin which is not being loaded appropriatelly.
I checked if the controller_manager was running with that command
rosservice list | grep controller_manager
But I did not get any result. The only services listed with a name containing "controller" are the "/controller_spawner/get_loggers" and "/controller_spawner/set_logger_level" (and they are available until that warning message is displayed).
My URDF file contains this :
/
...
And since I am on OSX, I had to clone the gazebo_ros_pkgs repository in my catkin workspace, and I built it myself (using catkin_make). I noticed that the built files are .dylib files instead of .so, but replacing .so by .dylib in the "filename" attribute value of the URDF file does not solve the issue. I have seen a related issue on the gazebo bitbucket repo but since all the other gazebo libraries I have built are .dylib, I think that the gazebo version I use, already embed their fix (else I would have crashed sooner ?)
So here is the full log following my roslaunch command, I'm open to any idea that can solve this problem :)
$ roslaunch myrobot_gazebo myrobot_world.launch
... logging to /Users/.../.ros/log/9d1a05e3-e8f5-11e5-9c0d-0025bce79628/roslaunch-MacBook-Pro.local-19181.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
started roslaunch server http://192.168.1.16:49437/
SUMMARY
========
PARAMETERS
* /myrobot_joint_publisher/publish_rate: 50
* /myrobot_joint_publisher/type: joint_state_contr...
* /myrobot_velocity_controller/angular/z/has_acceleration_limits: False
* /myrobot_velocity_controller/angular/z/has_velocity_limits: False
* /myrobot_velocity_controller/angular/z/max_acceleration: 1.0
* /myrobot_velocity_controller/angular/z/max_velocity: 2.0
* /myrobot_velocity_controller/back_left_wheel_joint: back_left_wheel_link
* /myrobot_velocity_controller/back_right_wheel_joint: back_right_wheel_...
* /myrobot_velocity_controller/cmd_vel_timeout: 0.25
* /myrobot_velocity_controller/enable_odom_tf: True
* /myrobot_velocity_controller/front_left_wheel_joint: front_left_wheel_...
* /myrobot_velocity_controller/front_right_wheel_joint: front_right_wheel...
* /myrobot_velocity_controller/linear/x/has_acceleration_limits: False
* /myrobot_velocity_controller/linear/x/has_velocity_limits: False
* /myrobot_velocity_controller/linear/x/max_acceleration: 0.5
* /myrobot_velocity_controller/linear/x/max_velocity: 1.0
* /myrobot_velocity_controller/linear/y/has_acceleration_limits: False
* /myrobot_velocity_controller/linear/y/has_velocity_limits: False
* /myrobot_velocity_controller/linear/y/max_acceleration: 0.5
* /myrobot_velocity_controller/linear/y/max_velocity: 1.0
* /myrobot_velocity_controller/pose_covariance_diagonal: [0.001, 0.001, 10...
* /myrobot_velocity_controller/publish_rate: 50
* /myrobot_velocity_controller/twist_covariance_diagonal: [0.001, 0.001, 0....
* /myrobot_velocity_controller/type: mecanum_drive_con...
* /myrobot_velocity_controller/wheel_radius_multiplier: 1.0
* /myrobot_velocity_controller/wheel_separation_multiplier: 1.0
* /robot_description:
↧
↧
I am compiling the gazebo_naoqi_control for NAO on Gazebo but getting compilation Error.
I am compiling the nao_gazebo (https://github.com/costashatz/nao_gazebo) package for NAO simulation on Gazebo but i am getting compilation error on catkin_make .
Error is :
In file included from /home/saleem/catkin_ws/src/nao_gazebo/gazebo_naoqi_control/src/gazebo_naoqi_control_plugin.cpp:24:0:
/home/saleem/catkin_ws/src/nao_gazebo/gazebo_naoqi_control/include/gazebo_naoqi_control/gazebo_naoqi_control_plugin.h:45:31: fatal error: alnaosim/alnaosim.h: No such file or directory
#include
^
compilation terminated.
make[2]: *** [nao_gazebo/gazebo_naoqi_control/CMakeFiles/gazebo_naoqi_control.dir/src/gazebo_naoqi_control_plugin.cpp.o] Error 1
make[1]: *** [nao_gazebo/gazebo_naoqi_control/CMakeFiles/gazebo_naoqi_control.dir/all] Error 2
make: *** [all] Error 2
Invoking "make -j4 -l4" failed
↧
when build gazebo ,how to assign it to include ogre 1.8
Because I had installed ogre1.8,
then, I installed ogre1.9 again.
Now ,when I build gazebo 2.0
It comes to an error
> Bad Ogre3d version: gazebo using 1.9.0> ogre version has known bugs in runtime> (issue #996). Please use 1.7 or 1.8> series
I don't know how to assign gazebo ogre 1.8
I tried to use cmake-gui to find if there is a name such as "ogre" "path"
but I could not find such name like that.
I also tried to enter:
> export OGRE_HOME=/usr/local/ogre1.8
but it still didn't work
Thanks for help!
↧
Using robot_pose_ekf in gazebo simulation
Hi everyone,
Now, I'm trying to use /robot_pose_ekf to publish the transform from odom -> base_footprint in gazebo simulation.
The tf tree tells me that the broadcaster of odom -> base_footprint is /gazebo, but I want it to be /robot_pose_ekf.
So I think the point to this question is how to prevent gazebo publishing the transform of odom -> base_footprint and let /robot_pose_ekf send the transform to /tf.
Actually, the tf tree shows both /gazebo and /robot_pose_ekf are connected to /tf, while /tf are using the transform of gazebo instead of /robot_pose_ekf, too bad :(
Any advice is welcome. Thanks in advance!
Clack
↧
↧
How to let robot_pose_ekf recieve IMU data from gazebo
Hi all,
I'm using robot_pose_ekf with gazebo simulator.
Now, I've encountered with a problem that the /robot_pose_ekf only takes in /odom while the IMU data is not transferred.
To be more detailed, /gazebo published IMU data as topic: /mobile_base/sensors/imu_data [sensor_msgs/Imu]. However, /robot_pose_ekf didn't subscribe this topic, instead it listen to /imu_data which has no publisher! I feel it so strange and cannot understand it at all.
Can anyone tell me how to let /robot_pose_ekf subscribe the right topic from /gazebo? FYI, in the launch file of /robot_pose_ekf I tuned "odom_used" "imu_used" to "true" and "vo_used" to "false".
Any hints are welcome.
Thank you in advance.
Clack
↧
gazebo camera timestamp is 1.0/update_rate out of date
How confident should I be that the timestamp from a gazebo camera image is actually consistent with the tf state of the world at that same time?
It seems like it ought to be perfect, but what I'm seeing indicates that if I move objects rapidly then observed position of objects in the image either lags or leads the tf lookup (via tf transfromPoints in C++) of those objects using the image timestamp.
It's possible I'm doing something wrong in my ros nodes to introduce an offset, but can anyone speak to the correctness of the gazebo + gazebo_ros parts of the system?
The timestamps coming out of gazebo seem nearly perfect- if I set the and (does one override the other?) to 1.0 then I see nsecs = 0 followed by nsec = 0 for the next, though and occasionally nsecs = 1000000.
Everything is passing through the gazebo_ros plugin, though if it were assigning timestamps wrongly when it receives the image or a joint position rather than when it was produced I would expect to see some noise digits in the timestamps (unless gazebo_ros is in control of the sim time, but not truly synced to the actual simulation?).
rostopic hz on /gazebo/link_states and the joint_states derived from them are exactly even- suggesting they are better integrated with the simulation than the camera image, which hovers around the desired update rate but does not match it (which is consistent with that occasional 1 ms offset in the timestamp).
Could the published image be exactly one frame period ahead the timestamp assigned to it? (I'll test this by offsetting the timestamp before tf lookup) When I lowered the frame rate to 1.0 to avoid dropped frames the mismatch effect is extra dramatic.
To debug I can try to eliminate my code from the system, or eliminate gazebo from the system (I have a crude software renderer), but it will be a lot of effort so any insight is appreciated.
## Update
I've done some experiments with the [rrbot gazebo example](https://github.com/ros-simulation/gazebo_ros_demos.git) and lowered the update_rate to 0.1, or 1 image every ten seconds. If I rostopic echo the clock and `/rrbot/camera1/camera_info/header/stamp/secs` I see that every ten seconds a new image is published with a timestamp 10 seconds behind the current time, but a current image.
This using Ubuntu 14.04, jade, and gazebo 5.0.1, and the gazebo_ros_pkgs from apt.
↧
Failed to load plugin libgazebo_ros_control.so
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?
↧
Costmap error for gmapping in gazebo
I'm trying to do the gmapping in gazebo tutorial found [here](http://wiki.ros.org/turtlebot_gazebo/Tutorials/indigo/Make%20a%20map%20and%20navigate%20with%20it) but I am getting an error with both my local and global costmaps.
The three launch files that I use are turtlebot_gazebo/world.launch, turtlebot_gazebo/gmapping.launch, and turtlebot_rviz_launchers/view_navigation.launch. When RVIZ shows up, I have an error in both the local and global costmaps which says "No map received" and "No transform from [] to [map]"
Does anyone know what I should do or where I should start to look?
↧
↧
How to stop gazebo publishing tf
Hi, all!
Now I'm testing the node /robot_pose_ekf with gazebo simulator. And I have already let /gazebo publish IMU and odometry data to /robot_pose_ekf. Also, /robot_pose_ekf is connected to tf.
However, when I checked the tf tree I found that the transform from odom -> base_footprint was provided by /gazebo but I want it to be /robot_pose_ekf.
I guess it is because both /gazebo and /robot_pose_ekf are publishing /tf. Hence, I think stopping /gazebo publishing /tf can be a possible solution. FYI, I'm using GMapping which subscribes to /tf to provide SLAM functions.
Can anyone tell me how to stop gazebo publishing tf? Or any other solutions to my problem?
Thank you in advance!
↧
Is there something wrong with this laser setup?
I'm trying to use gmapping in gazebo using [this](http://wiki.ros.org/turtlebot_gazebo/Tutorials/indigo/Make%20a%20map%20and%20navigate%20with%20it) tutorial but I'm getting an error for my local and global costmaps saying "no map received" and "no transform from [] to [map]."
When I run amcl in gazebo, however, I have no issues with the costmap generations and everything works flawlessly. I've seen a lot of other people having issues with "upside down" lasers when using gmapping in gazebo and I am wondering if I am having a similar issue.
When I run gmapping_demo.launch from the turtlebot_gazebo package, I get this output on terminal:
[ INFO ] : Laser is mounted upwards.
Laser Pose= -0.0866309 0.481637 -0.00628993
Is having a negative z component for the laser position an issue?
EDIT:
Here is my view_frames image:
[view_frames](https://drive.google.com/file/d/0ByyAP6RE2iT-NlJJRHhGTmpIMW8/view?usp=sharing)
Here is my roswtf output when I'm in the turtlebot_gazebo directory:
Loaded plugin tf.tfwtf
Package: turtlebot_gazebo
WARN, found multiple boost versions '[(1, 54, 0, '/usr', '/usr/include', True, True), (1, 60, 0, '/usr/local', '/usr/local/include', True, True)]', using latestWARN, found multiple boost versions '[(1, 54, 0, '/usr', '/usr/include', True, True), (1, 60, 0, '/usr/local', '/usr/local/include', True, True)]', using latestWARN, found multiple boost versions '[(1, 54, 0, '/usr', '/usr/include', True, True), (1, 60, 0, '/usr/local', '/usr/local/include', True, True)]', using latestWARN, found multiple boost versions '[(1, 54, 0, '/usr', '/usr/include', True, True), (1, 60, 0, '/usr/local', '/usr/local/include', True, True)]', using latestWARN, found multiple boost versions '[(1, 54, 0, '/usr', '/usr/include', True, True), (1, 60, 0, '/usr/local', '/usr/local/include', True, True)]', using latestWARN, found multiple boost versions '[(1, 54, 0, '/usr', '/usr/include', True, True), (1, 60, 0, '/usr/local', '/usr/local/include', True, True)]', using latest================================================================================
Static checks summary:
No errors or warnings
================================================================================
Beginning tests of your ROS graph. These may take awhile...
analyzing graph...
... done analyzing graph
running graph rules...
... done running graph rules
running tf checks, this will take a second...
... tf checks complete
Online checks summary:
Found 2 warning(s).
Warnings are things that may be just fine, but are sometimes at fault
WARNING The following node subscriptions are unconnected:
* /mobile_base_nodelet_manager:
* /cmd_vel_mux/input/safety_controller
* /mobile_base/sensors/core
* /cmd_vel_mux/input/navi
* /cmd_vel_mux/input/teleop
* /gazebo:
* /gazebo/set_link_state
* /mobile_base/commands/reset_odometry
* /gazebo/set_model_state
* /mobile_base/commands/motor_power
* /rviz:
* /move_base/global_costmap/costmap_updates
* /move_base/local_costmap/costmap
* /move_base/local_costmap/costmap_updates
* /move_base/NavfnROS/plan
* /particlecloud
* /map_updates
* /move_base/DWAPlannerROS/cost_cloud
* /move_base/DWAPlannerROS/global_plan
* /move_base/DWAPlannerROS/local_plan
* /move_base/DWAPlannerROS/trajectory_cloud
* /move_base/global_costmap/costmap
WARNING These nodes have died:
* spawn_turtlebot_model-3
Exception in thread /clock (most likely raised during interpreter shutdown):
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
File "/usr/lib/python2.7/threading.py", line 763, in run
File "/opt/ros/indigo/lib/python2.7/dist-packages/rospy/impl/tcpros_pubsub.py", line 183, in robust_connect_subscriber
File "/opt/ros/indigo/lib/python2.7/dist-packages/rospy/impl/tcpros_base.py", line 792, in receive_loop
: 'NoneType' object is not callable
And as an added bonus, here is my rqt_graph:

↧
Map not received when using nav2d with gazebo
I'm trying to use nav2d to autonomously map out an environment in gazebo but I am unable to get the gmapping nav2d node "mapper" to publish a /map msg. First I launch the turtlebot_gazebo/turtlebot_world.launch to start the turtlebot in gazebo and then I launch a modified version of the nav2d tutorial3.launch file.
In RVIZ, I get an error message under the map section that says "no map received" and "No transform [] to [map]. The output of rostopic echo /map is "WARNING: no messages received and simulated time is active.Is /clock being published?" I checked /clock and it is publishing so that is not the issue.
Also, when I run turtlebot_gazebo/gmapping_demo instead of nav2d, a /map msg is published correctly so I don't think its an issue with my gazebo configuration. My guess is that the nav2d "mapper" node is connected to the wrong laser frame but I have tried changing the base frame from base_laser_link to base_laser and to camera_depth_frame and neither worked.
Rqt_graph shows a /scan msg being published to mapper and a /map msg being published to RVIZ.
Below are my launch file and ros.yaml file which defines the parameters for nav2d.
Here is my current launch file:
↧
Subscriber callback function
I have made a subscriber to pioneer/laser/scan for the scan values of laser on P3AT.
When I run the subscriber, it just doesn't stop. It keeps on running. I want only a single value of the scan i.e. the ranges[] array.
And also the value of any index in ranges[] array fluctuates ranges[i] - .2 to ranges[i] + .2
How to get only a single array ranges[] when subscribing to the scan?
P.S. I am using these lines of code and obstaclesCallBack is my function for printing the scan values.
ros::NodeHandle laser_n;
ros::Subscriber sub = laser_n.subscribe("pioneer/laser/scan", 1000, obstaclesCallback);
↧
↧
how i spawn modes to gazebo?
I am follwoing the tutorial:
http://wiki.ros.org/pr2_simulator/Tutorials/BasicPR2Controls#PR2_Navigation_Stack_Demo
I run the command:
rosrun gazebo spawn_model -urdf -file drawer.urdf -model drawer1 -x 1.0
I take the error:
[rospack] Error: stack/package gazebo not found
In http://wiki.ros.org/gazebo we are informed that package gazebo is replaced with 3 gazebo_ros_pkgs: gazebo_msgs | gazebo_plugins | gazebo_ros.
So, my question is how I spawn the drawer.urdf model to gazebo?
↧
create a laser in xacro
Who can give me a simple example my_robot.xacro file that creat a robot which has a laser.
I donot knoe how to add a laser and I try to use the .gazebo/models/hoyuko(model),but it is sdf,it maybe cannot use in xacro.
Thank you very much.
This is the robot.xacro without a laser.Gazebo/Green false Gazebo/Blue Gazebo/Black Gazebo/Black Gazebo/Black Gazebo/Black
↧
Execution time of callback function
I have a callback function that takes a laser scan, transforms it into cartesian coordinates and saves it to a class variable.
def rear_scan_cb(self, msg):
internal_time = time.time()
self.rear_scan_data = msg
self.rear_scan_cart = CalibUtils.homogeneous(
np.asarray(CalibUtils.polar_scan_to_cart(self.rear_scan_data, self.min_range, self.max_range)))
print "elapsed ", time.time() - self.time
print "elapsed internal ", time.time() - internal_time
self.time = time.time()
self.time is a class variable that stores the last time the function finished executing. The output of my function shows the time elapsed since the last call of the function and the elapsed time from the beginning until the end of the function call (elapsed internal).
The problem is that the numbers do not add up. With an average frequency of 20 Hz for the laser scan (0.05s for each new scan) I get the following output:
elapsed internal 0.00101113319397
elapsed 0.138864994049
elapsed internal 0.00641489028931
elapsed 0.0383219718933
elapsed internal 0.00250887870789
elapsed 0.129732847214
elapsed internal 0.00207710266113
elapsed 0.0546798706055
elapsed internal 0.00196719169617
elapsed 0.0963840484619
elapsed internal 0.00415015220642
elapsed 0.0352799892426
elapsed internal 0.0046238899231
elapsed 0.0817019939423
elapsed internal 0.00347518920898
elapsed 0.138021945953
elapsed internal 0.0033700466156
elapsed 0.174504995346
elapsed internal 0.00218296051025
This doesn't make sense, and it also causes my laser scans to get buffered and processed slower than real life. What can be the cause here? (I am running on Gazebo)
↧
Adding laser sensors to Gazebo
Greetings,
I have tried to add laser node to gazebo using the following code:
but I got the following error:
Invalid tag: Cannot load command parameter [robot_description]: command [/opt/ros/indigo/share/xacro/xacro.py /home/nouf/catkin_ws/src/chapter5_tutorials/urdf/robot1_base_03.xacro] returned with code [1].
Param xml is
The traceback for the exception was written to the log file
I found out that the erratic_description package doesn't work with indigo version (which I'm currently using).
Is there another package or another way to add a laser node to Gazebo ?
Thanks in advance.
↧
↧
Problem with gazebo turtlebot simulation
I am following this tutorial [link](http://wiki.ros.org/turtlebot_gazebo/Tutorials/indigo/Explore%20the%20Gazebo%20world) to simulate turtlebot in gazebo. However, there are some problems with the laser scan and point cloud captured by the turtlebot. There are always a layer of red cloud in front of the turtlebot, even though there are nothing actually in front. [Photo1](http://www.comp.nus.edu.sg/~wangchao/turtlebot/turtlebot2.jpg) [Photo2](http://www.comp.nus.edu.sg/~wangchao/turtlebot/turtlebot1.jpg)
I am using Ubuntu 14.04 in parallels desktop on Mac. Is the problem caused by virtual machine?
↧
Creating world file for Gazebo with xacro
I'm trying to generate random boxes in a world file for Gazebo simulator. I know how to create a model sdf, and how to include it from the world file.
Now I want to create different sizes of boxes in the world file using xacro and width/height parameters.
I can't get it work. Please help :)
↧
Gazebo 7.0, model modification is disabled. How to enable it ?
I have downloaded gazebo 7.0 and I tried following the tutorials on both ros.org and Gazebo's site, but every time I try to modify the model parameters such as orientation of a box or even the ground plane I receive a warning in the terminal that
"Model modification is currently disabled. Look for this feature in Gazebo 2.0". Due to this I am not able to continue the tutorials.
↧