Comments (9)
There were quite a lot of changes to 0.4.4, I don't have a glue now where this could come from. Could you try to compile it from source, and use git bisect to find the commit introducing your issue?
from gazebo_ros2_control.
@christophfroehlich Here is an example using the above meshes in the original post of this issue https://github.com/mr337/control_mre Instructions and such on how to produce in ROS2 Humble.
from gazebo_ros2_control.
OK, your model sometimes also explodes with the version before the commit, after it has already been standing stable on the ground. By increasing physics/solver/iterations to 500 make the simulation stable, even with the latest version of the HEAD.
This is an indication that your model or the physics solver is not well configured.
A good starting point is always to have a look at the inertia, masses, and contact points (visualize them from the view menu).
- Having a look at the inertias: None has a infeasible high magnitude, but it does not really coincide with your meshes. Pay also attention that every link being in the kinematic chain with non-fixed joints has reasonable high mass+inertia. (setting inertia of any link to zero -> your model explodes).
- The contact points are flickering. This is a well-documented issue of gazebo classic ODE solver, but there are some solver options to play around with.
I hope I could help with this. I'm pretty sure now that this is not a problem with gazebo_ros2_control, the new version just reveals the problem immediately. I close this issue now, feel free to reopen if you don't agree.
from gazebo_ros2_control.
No problem, after working git bisect what appears to be the offending commit is d18a887#diff-e14963d1c2ba3a31138bda99525946c355191fe361859b5fb7247fddad6c3a2a
I believe some of this control code is a little over my head. What is odd is I compared the full ROS log line for line with version 0.4.2 and 0.4.4 expecting some kind of error or something crashing/segfaulting. I did not get any warning as defined here https://github.com/ros-controls/gazebo_ros2_control/pull/177/files#diff-e14963d1c2ba3a31138bda99525946c355191fe361859b5fb7247fddad6c3a2aR138
Looking at the code I don't see much difference since the larger if else
blocks seem to cover Position controllers just like I am using. The only difference is they have an additional true
. Still splunking around in the codebase.
from gazebo_ros2_control.
I don't see what #208 should change with your setup. Could you provide a full example of your robot including the meshes? I'm curious..
from gazebo_ros2_control.
That is what I keep thinking 😆
Let me provide a Minimal Reproducible Example of the robot
from gazebo_ros2_control.
Sorry, I haven't had time earlier to dig into this.
The problem is not a broken joint-state, but your gazebo model explodes after touching the ground.
The reason why this didn't happen before is that now as a fallback every joint velocity is set to zero (this happens always at the first write until the controllers get activated)
gazebo_ros2_control/gazebo_ros2_control/src/gazebo_system.cpp
Lines 604 to 607 in 3c8f5bb
Without forcing it to zero they are "not actuated"/compliant and the impact is solved stable.
I have to try if this is a problem of your specific robot (falling down, four wheels might not get stable contact points..) or happens also with others.
from gazebo_ros2_control.
Just wanted to add that our issue was related to the mass of the wheels. We also did some further work on masses and inertias to get a model that is happy.
Thanks again for pointing us in the right direction @christophfroehlich
from gazebo_ros2_control.
you're very welcome, glad you fixed it!
from gazebo_ros2_control.
Related Issues (20)
- Force Torque data stored in imu vector HOT 2
- Passive joints are broken HOT 4
- Unexpected behavior when using passive joints in closed-loop kinematic chains HOT 2
- FT sensors possible bug HOT 1
- Kinematic chains with passive joints don't work with position interface HOT 1
- Could use remote gazebo possible? HOT 2
- Add noise and latency to the joints feedback HOT 1
- ERROR: "struct hardware_interface::HardwareInfo’} has no member named ‘hardware_plugin_name" HOT 5
- Robot still saggs if interfaces are not claimed
- Issue running example script in Harmonic
- Loading controller failed,Exception thrown during init stage with message: expected [string] got [string_array] HOT 7
- Errors after launching demos: controller manager issue? HOT 7
- How can solve this problem? HOT 3
- How to set the Effort while using JointGroupVelocityController in Gazebo HOT 3
- No rule to make target needed by 'libgazebo_ros2_control.so' HOT 2
- How do I handle this issue? HOT 2
- Parser Error Couldn't parse parameter override rule - loading tricycle_controller from ros2_control HOT 20
- Do mimic joints on gazebo_ros2_control work for grippers with one part interacting with the rest? (1 to 5 Gripper)
- Error in destruction of rcl subscription handle: Failed to delete datareader HOT 1
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 gazebo_ros2_control.