Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Identification of thrust in DJI drones #33

Open
Adrianaaf opened this issue Sep 4, 2019 · 3 comments
Open

Identification of thrust in DJI drones #33

Adrianaaf opened this issue Sep 4, 2019 · 3 comments

Comments

@Adrianaaf
Copy link

Adrianaaf commented Sep 4, 2019

I am using the linear and non-linear MPC in a Matrice 210, but it is not clear to me how to send the thrust command to the DJI autopilot.

The output of the MPC is Newtons, and DJI SDK has not this option. In a different repository of the ETHZ-ASL(mav_dji_ros_interface) you explain how to use it with a Matrice 100, in this case, they use the thrust in percentage. For converting from Newtons to % they add an offset and multiply by a coefficient, but I don't understand how these values are calculated.

thrust_command = (+1)* thrust_offset_ + msg->thrust.z*thrust_coefficient_;

When using the values from the mav_dji_ros_interface repository I have a good performance but I have to set a different masss from the real one and the errors are quite high.

By the way, thank you very much for this open-source project it is very useful.

@fmina
Copy link
Contributor

fmina commented Sep 10, 2019

Thanks. I believe this is a missing point from the system identification scripts we opened here https://github.com/ethz-asl/mav_system_identification

The correct way will be to record a SysID bag file and do linear regression between IMU z acceleration (in global frame) and thrust_command. The linear regression output will be thrust offset and thrust coefficient.

I hope this helps. @inkyusa maybe you have something to add here regarding DJI platforms?

@yiyongrobotics
Copy link

Thanks. I believe this is a missing point from the system identification scripts we opened here https://github.com/ethz-asl/mav_system_identification

The correct way will be to record a SysID bag file and do linear regression between IMU z acceleration (in global frame) and thrust_command. The linear regression output will be thrust offset and thrust coefficient.

I hope this helps. @inkyusa maybe you have something to add here regarding DJI platforms?

Hi,
how could you map the thrust_command from joy command to %?

@AntonioCarralero
Copy link

Thanks. I believe this is a missing point from the system identification scripts we opened here https://github.com/ethz-asl/mav_system_identification

The correct way will be to record a SysID bag file and do linear regression between IMU z acceleration (in global frame) and thrust_command. The linear regression output will be thrust offset and thrust coefficient.

I hope this helps. @inkyusa maybe you have something to add here regarding DJI platforms?

Could I use a controller instead to transform thrust (N) to throttle (%)?
For example:
throttle = throttle + kp ( accel_ref - accel_imu)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants