Closed ep51lon closed 3 years ago
@quarcle Can you share the log?
Here is the log file: roslaunch-qeui-X71-6589.log
Might that help?
There is no error shown while executing the controller, but the drone crashes after taking off and trying to follow a specified trajectory (in my case, I run sitl_trajectory_track_circle.launch
)
@quarcle I meant the flight log. I do see that the equation is wrong, but not sure why it flies now
Which log do you mean? I attach two logs (roslaunch log and the ulog files) as follows: geocontrol_logs.zip
error_att = 0.5 matrix_hat_inv(-rotmat_d.transpose() rotmat + rotmat.transpose()
error_att = 0.5 matrix_hat_inv(-rotmat_d.transpose() rotmat + rotmat.transpose()
@valenbase what does it mean?
error_att = 0.5 matrix_hat_inv(-rotmat_d.transpose() rotmat + rotmat.transpose()
@valenbase what does it mean?
i mean exchange content on both sides of the symbol -
Has anyone found out the problem and how to fix it?
@quarcle Could you clarify what the problem is?
This code line 444 uses error_att = 0.5 * matrix_hat_inv(rotmat_d.transpose() * rotmat - rotmat.transpose() * rotmat);
while the referenced paper uses error_att = 0.5 * matrix_hat_inv(rotmat_d.transpose() * rotmat - rotmat.transpose() * rotmat_d);
. When I changed to the error equation mentioned in the paper, the copter crashes. How should I resolve the problem?
Why does the attitude controller in the geometric_attcontroller different from the mentioned paper "Geometric tracking control // of a quadrotor UAV on SE (3)" by Lee, et al?
I tried to change the attitude error to be
error_att = 0.5 * matrix_hat_inv(rotmat_d.transpose() * rotmat - rotmat.transpose() * rotmat_d);
to make it similar to the paper, but it turns out that the quadcopter falls down in the Gazebo simulator. Do you know why that happens?Many thanks.