Get acceleration from Gazebo (is it working?)

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Get acceleration from Gazebo (is it working?)

Luca Ricci
Hello everyone,
i'm using Gazebo to simulate a PD controller on a quadrotor UAV.
The control evalueates the force and torque to apply to the quadrotor and then i use the methods
dBodyAddRelForce(body_id, 0, 0, thrust) and dBodyAddRelTorque(body_id, roll_torque, pitch_torque, 0).
Now i would like to get information about position, velocity and acceleration of the quadrotor.
To do so, i use the methods:
body->GetPosition()
body->GetLinearVel()
body->GetLinearAccel()
and the last one appears to give practically nonsense results (gravity acceleration depending on the mass for instance...).
Browsing into the code i found out that GetLinearAccel() simply does
return this->GetForce() /  this->GetMass();
That is " F = m*a "  as it should be.
Anyway the controller works and the quadrotor get still on the target point, but the acceleration i get on the z axis is positive (e.g. = 19.6) even though the quadrotor is not varying its height.
I really have no point...please help me! :)
Thanks in advance.  

Luca


For the sake of completeness i'm using the following software version:
Gazebo - 0.9.0
Player - 2.1.3

QuadrotorControllerPD.cc