Implement aerodynamics in gazebo

Hello, everyone.

I’m working on a project to develop VTOL using pixhawk2, and I would like to do a realistic simulations using gazebo.

We want to increase fidelity by reflecting aerodynamics.
But, libLiftDragPlugin is not suitable for our project.

I would like to reflect aerodynamics using aerodynamics data obtained through programs such as DATCOM and AVL (Athena Vortex Lattic). How can i do? I would like to reflect the forces and moment created through aerodynamics.

I would really appreciate if someone could share any code or reference information or url written by it.

@eogks465 You need to write a new gazebo plugin. If you are not sure how to do this, this tutorial might be helpful: http://gazebosim.org/tutorials/?tut=plugins_hello_world

Thank you for your replying.

I have already read the tutorial. However, I don’t know how to reflect aerodynamics into gazebo.(using non-dimensional derivatives)

It would be nice to share aerodynamics plugin code written by someone.(or some information)

Hi @eogks465 and @Jaeyoung-Lim ,

@eogks465 What aerodynamic parameters did you plan on using? What makes the LiftDrag plugin unsuitable?

I’m also working on the simulation of a VTOL and I was about to make some improvements, such as add some extra aerodynamic parameters to the LiftDrag plugin (drag and pitching moment at zero lift). Before I do that, I’m curious to know whether perhaps another plugin might soon replace the LiftDrag plugin, e.g. the aerodynamics plugin @Jaeyoung-Lim created in this branch: https://github.com/PX4/PX4-SITL_gazebo/tree/pr-aerodynamics

Kind regards,

Pieter-Jan

Hello @pj.dewitte.

I plan to use aerodynamic coefficient lookup tables derived from DATCOM or AVL(Athena Vortex Lattic).

However, I think that libLiftDragPlugin is simply expanded to 3D using 2D airfoil theory and wing area.

In addition, it is not reasonable to use aerodynamic coefficients derived from each part(main wing, tail wing, rudder, etc).
I think that is reasonable to use aerodynamic coefficients derived from assembled aircraft. And it is not considered about lift and drag by fuselage.

So I think it’s not realistic to use libLiftDragPlugin without modification.