Providing acceleration commands -- what's the best way to do it?

Discussions and questions about the Crazyflie Nano Quadcopter
Locked
shreeram
Beginner
Posts: 4
Joined: Wed Dec 15, 2021 7:12 am

Providing acceleration commands -- what's the best way to do it?

Post by shreeram »

Hi!

I'm working on experimenting with a controller for which I'd have to provide vertical acceleration commands to the Crazyflie for landing. Here's what I have looked into so far:
  1. Providing a send_setpoint() command where I control the value of thrust. However, I have not been able to find a clear mapping between the mean thrust and the acceleration. I'm currently trying to figure out if the polynomial psi_2 in https://arxiv.org/pdf/2012.05457.pdf gives me what I need -- what are the units for desired force and battery voltage in psi_2?
  2. I've had a look at the mapping from https://www.bitcraze.io/documentation/r ... to-thrust/, but the PWM units there are in 8-bit while the current configuration is 16-bits (65535). I could still normalise the two scales and find a correlation, though I'm not sure how much accuracy I'd lose in the process.
  3. I also had a look at the Crazyflie firmware https://www.bitcraze.io/documentation/r ... ntrollers/ but it seems that there is no controller that can handle acceleration setpoints directly?

    Image

    So what's the best way I can provide acceleration commands to the Crazyflie?

    Thanks!
kristoffer
Bitcraze
Posts: 630
Joined: Tue Jun 30, 2015 7:47 am

Re: Providing acceleration commands -- what's the best way to do it?

Post by kristoffer »

I think the Mellinger controller does for absolute setpoints https://github.com/bitcraze/crazyflie-f ... #L168-L171
Locked