Comments (6)
I suspect this may be related to changes from libSDFormat 9 (Citadel) to libSDFormat 10 (Dome), because that's where the URDF gets parsed into SDF. In fact, a quicker way of reproducing this can be achieved with the ign sdf
tool:
Citadel has the sensor pose:
ign sdf --force-version 9.5.0 -p /tmp/urdf
<sdf version='1.7'>
<model name='will_be_ignored'>
<link name='base_footprint'>
<inertial>
<pose>0 0 1.5 0 -0 0</pose>
<mass>2</mass>
<inertia>
<ixx>6.5</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>6.5</iyy>
<iyz>0</iyz>
<izz>2</izz>
</inertia>
</inertial>
<collision name='base_footprint_collision'>
<pose>0 0 0 0 -0 0</pose>
<geometry>
<sphere>
<radius>0.5</radius>
</sphere>
</geometry>
</collision>
<collision name='base_footprint_fixed_joint_lump__link_collision_1'>
<pose>0 0 3 0 -0 0</pose>
<geometry>
<sphere>
<radius>1</radius>
</sphere>
</geometry>
<surface>
<contact>
<ode/>
</contact>
<friction>
<ode/>
</friction>
</surface>
</collision>
<visual name='base_footprint_visual'>
<pose>0 0 0 0 -0 0</pose>
<geometry>
<sphere>
<radius>0.5</radius>
</sphere>
</geometry>
</visual>
<visual name='base_footprint_fixed_joint_lump__link_visual_1'>
<pose>0 0 3 0 -0 0</pose>
<geometry>
<sphere>
<radius>1</radius>
</sphere>
</geometry>
</visual>
<gravity>1</gravity>
<velocity_decay/>
<sensor name='link' type='gpu_lidar'>
<topic>scan</topic>
<update_rate>30</update_rate>
<lidar>
<scan>
<horizontal>
<samples>2800</samples>
<resolution>1</resolution>
<min_angle>-2.09</min_angle>
<max_angle>2.09</max_angle>
</horizontal>
<vertical>
<samples>1</samples>
<resolution>0.1</resolution>
<min_angle>0</min_angle>
<max_angle>0</max_angle>
</vertical>
</scan>
<range>
<min>0.05</min>
<max>30</max>
<resolution>0.01</resolution>
</range>
</lidar>
<visualize>1</visualize>
<pose>0 0 3 0 -0 0</pose>
<alwaysOn>1</alwaysOn>
</sensor>
</link>
<static>0</static>
<plugin name='ignition::gazebo::systems::Sensors' filename='ignition-gazebo-sensors-system'>
<render_engine>ogre2</render_engine>
</plugin>
</model>
</sdf>
Dome doesn't:
ign sdf --force-version 10.3.0 -p /tmp/urdf
<sdf version='1.7'>
<model name='will_be_ignored'>
<link name='base_footprint'>
<inertial>
<pose>0 0 1.5 0 -0 0</pose>
<mass>2</mass>
<inertia>
<ixx>6.5</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>6.5</iyy>
<iyz>0</iyz>
<izz>2</izz>
</inertia>
</inertial>
<collision name='base_footprint_collision'>
<pose>0 0 0 0 -0 0</pose>
<geometry>
<sphere>
<radius>0.5</radius>
</sphere>
</geometry>
</collision>
<collision name='base_footprint_fixed_joint_lump__link_collision_1'>
<pose>0 0 3 0 -0 0</pose>
<geometry>
<sphere>
<radius>1</radius>
</sphere>
</geometry>
<surface>
<contact>
<ode/>
</contact>
<friction>
<ode/>
</friction>
</surface>
</collision>
<visual name='base_footprint_visual'>
<pose>0 0 0 0 -0 0</pose>
<geometry>
<sphere>
<radius>0.5</radius>
</sphere>
</geometry>
</visual>
<visual name='base_footprint_fixed_joint_lump__link_visual_1'>
<pose>0 0 3 0 -0 0</pose>
<geometry>
<sphere>
<radius>1</radius>
</sphere>
</geometry>
</visual>
<gravity>1</gravity>
<velocity_decay/>
<sensor name='link' type='gpu_lidar'>
<topic>scan</topic>
<update_rate>30</update_rate>
<lidar>
<scan>
<horizontal>
<samples>2800</samples>
<resolution>1</resolution>
<min_angle>-2.09</min_angle>
<max_angle>2.09</max_angle>
</horizontal>
<vertical>
<samples>1</samples>
<resolution>0.1</resolution>
<min_angle>0</min_angle>
<max_angle>0</max_angle>
</vertical>
</scan>
<range>
<min>0.05</min>
<max>30</max>
<resolution>0.01</resolution>
</range>
</lidar>
<visualize>1</visualize>
<alwaysOn>1</alwaysOn>
</sensor>
</link>
<static>0</static>
<plugin name='ignition::gazebo::systems::Sensors' filename='ignition-gazebo-sensors-system'>
<render_engine>ogre2</render_engine>
</plugin>
</model>
</sdf>
Looking through SDFormat's changelog, nothing stood out as being the culprit though.
from ros_gz.
I believe this is connected to fixed-joint reduction with the libsdformat parser_urdf.cc file
from ros_gz.
I think this was fixed by gazebosim/sdformat#525
from ros_gz.
Hopefully. It looks like it is related. Will test once merged or released in sdf11
from ros_gz.
Confirmed fixed in dome/sdf10, still need a merge in edifice/sdf11
from ros_gz.
The SDFormat fix has been forward-ported to Edifice. I'm closing this. ROS users will get the updated versions as the fix is released and ported to packages.ros.org.
from ros_gz.
Related Issues (20)
- magnetometer sensor
- Auto-play argument HOT 2
- Make gazebo garden to use ros2 wall time instead of sim time along with ackermann steering plugin and ground truth odometry outputs HOT 1
- Set up Harmonic CI
- Installing ros-iron-ros-gz installs Gazebo Garden instead of Fortress HOT 9
- ros_gz_bridge can't compile on humble/garden: rosidl_pycommon on Ubuntu 22.04, Win10 WSL2 HOT 5
- Pose frames are lost in transport HOT 7
- 2D Bounding Box messages from bounding box cameras are not bridged HOT 9
- Make `ros_gz_sim::create` use ROS parameters HOT 6
- ros_gz for humble/harmonic HOT 4
- ROS2 topics are created but the echo is empty HOT 1
- gz_sim create subscribes to wrong topic HOT 3
- Unable to Source-Bug Report-install ros_gz Branch ros2 on Ubuntu 22.04 arm64 ros2 humble Gazebo Harmonic (ver8) HOT 11
- Improve documentation on how to use the `ros_gz_sim/create` node.
- I want to run gazebo controllers with harmonic and humble HOT 4
- Run `ros_gz_bridge` as a Gazebo system instead of a separate process HOT 2
- Make `ros_type_name` and `gz_type_name` optional in ros_gz_bridge
- `on_exit_shutdown` is not evaluated correctly
- ROS node that runs Gazebo using `gz::sim::Server` HOT 1
- Unable to complete turtlebot3_simulations - new-branch "Migrating ROS 2 Packages that use Gazebo Classic" HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ros_gz.