Category: System Deep-Dive Series

Simulation Methods: Double Integrator Example

Simulation Methods: Double Integrator Example

In the last post I focused on placing the lead zero for the roll and pitch axes based on the limit imposed by a second double-pole our plant introduces via the motor-propeller, ‘A’ term. I neglected to calculate the proportional gain required for unity-gain crossover at the frequency of maximum phase margin. I also did …

+ Read More

Quadrotor Control: State-Space Model

Quadrotor Control: State-Space Model

I covered, “PID” (Proportional-Integral-Differential) or, “classical” controller designs for the quadrotor platform in a post last fall…time flies! We really only employ the P and the D elements. The, ‘D’ is the, “lead compensator”. The proportional gain P is the last step and you can see how this design technique is performed in that post. This is …

+ Read More

Quadrotor Linear Quadratic Regulator (LQR)

Quadrotor Linear Quadratic Regulator (LQR)

Big gap since the last post where we finally got the state-space model laid down. It got us to the plant model derived by Bouabdallah and others in his paper that we’ve used as a guide from the start. The goal all along has been not only to analyze and design candidate controllers for a Quadrotor platform, but to …

+ Read More

Linear Quadratic Control with Reference Input

Linear Quadratic Control with Reference Input

The last post was our introduction to the Linear Quadratic Regulator (LQR). We saw there that as we started with initial conditions or introduced a disturbance the LQR will drive the states to zero. In the simulations we saw the graphic of the copter converge on the zero state: zero roll, pitch, yaw, and respective …

+ Read More

Quadrotor Build: Hardware, Software, and Tools

Quadrotor Build: Hardware, Software, and Tools

I’ve been making a book report out of the many interesting aspects revealed by a simple hobby drone. We’ve covered electro-mechanics of motors and propellers, fluid mechanics around propellers, simplified, “classical” single-input, single-output (SISO) axis control design and multi-input, and multi-output (MIMO) linear quadratic regulator (LQR) concepts to this point. The background on the LQR …

+ Read More

ArduPilot Linear Quadratic Attitude Controller

ArduPilot Linear Quadratic Attitude Controller

You’ll be most interested in this post if you’re interested Ardupilot (See Ardupilot dev info). If you’re not interested in ArduPilot you might still appreciate the next section that covers basic software architecture for any system such as this. In this post we’ll cover how a linear-quadratic (LQ) attitude controller replaces the ArduCopter native PID …

+ Read More

Maximum Thrust vs. Battery Voltage

Maximum Thrust vs. Battery Voltage

In a previous post we got the Ardupilot simulator stable running the linear-quadratic attitude controller, but we had a hack in-place for normalizing our body torque commands from Newton-meters to -1 to +1 for input to the Ardupilot motor sub-system. Purpose This post uses a test stand to measure maximum available thrust over a range …

+ Read More

Motor-Prop Model Validation

Motor-Prop Model Validation

In a recent post we used the Tyto 1520 test stand to get at a maximum thrust available from our motor-prop system. We want that maximum thrust so we can normalize our LQ controller command output for the Ardupilot motor command as outlined here. The Tyto 1520 offers great value for under $200. While we …

+ Read More