feat: add real wind effect on multicopter-like models with WindEffects gz plugin #130
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds the
gz::sim::systems::WindEffectsplugin to thewindy.sdfworld which properly simulates wind effects on links having<enable_wind>true</enable_wind>.Gazebo wind.sdf example world has been used as template for setting the parameters for the plugin.
Initial wind speed is set to zero but it can be changed by publishing on the
/world/windy/wind/gz topic like this:which will apply
10m/swind speed in gz x direction (PX4 EAST direction as gz uses ENU and PX4 uses NED).The changes has been tested in on the x500 model using Gazebo Jetty:
wind_validation.mp4
On Gazebo Harmonic the world did not load correctly even if the gazebo wind.sdf example world for gazebo harmonic works just fine.
However, I don't see this as a blocking issue as currently the windy world has no effect and it is practically equivalent to the default world. Therefore no existing logic is broken with this PR. Users using windy world on GZ Harmonic can simply switch to the default one.
No FW model (rc_cessna, advanced_plane) has wind enabled in this PR: if enabled the plane does not manage to takeoff, further investigation is required for them.