The micro-UAV flight control problem has been addressed by many researchers. Good open-source flight controllers including those based on the popular PX4/Ardupilot platform are also readily available. We decided to try to control our blimp with Mini-Pix, a flight controller born out of the PX4/Ardupilot ecosystem.

Feasibility

We discovered that the Mini-Pix is capable of controlling a blimp, due to its ability to detect the current aircraft attitude, altitude, along with the capability of outputting up to 6 PWM signals.

IMU and Attitude

Mini-Pix is equipped with a gyroscope/accelerometer, a barometer and a compass. And the Ardupilot software stack has a rather accurate sensor fusion algorithm. Thus, we are able to obtain the roll, pitch and yaw angle, as well as the speed deduced from the aforementioned sensors.

Altitude

Obtaining an accurate altitude reading has been a challenge faced by our group. Luckily with Mini-Pix's carefully engineered barometer casing, we are able to acquire a fairly accurate altitude readout. The screenshot above shows the Mini-Pix's sensed altitude change when climbing up and down one story.

Challenges

The PX4/Ardupilot platform is engineered primarily for heavier-than-air UAVs such as quadrotors, helicopters and fixed-wing aircrafts. Consequently, when trying to adapt it to our lighter-than-air blimps, we encountered some difficulties.

Weight

With its minimum 2-cell LiPo battery setup, complete with the necessary power module, the flight control system weighs around 85g. If we take into consideration the additional motor drivers, motors and propellers, it easily exceeds our payload limit of around 100g. Obviously such a weight will not pose an issue to quadrotors with excessive thrust. But in our case, it is hard for our blimp to carry around such a heavy hardware setup.

Motor Driver Incompatibility

The motor driver we decided to use requires a VCC input of around 3.3-5V. But as it turns out, the power rail on the Mini-Pix requires an additional battery eliminator circuit (BEC) to supply such a voltage. What that entails, is that we need to find an alternative supply of this VCC to our motor drivers. Our options are either an external BEC, which further adds to the weight; or from some ports not utilized on the Mini-Pix, which requires crafting additional wires.

Another minor issue with the motor driver is its PWM duty cycle. By default, the Mini-Pix outputs a PWM with 20 ms cycle time, a pulse width within in the range of 1000 μs to 2000 μs as a servo control convention. This results in a duty cycle of 5% to 10% But our motor driver takes in a PWM input with duty cycle varying between 0 and 100%. However, this is easily fixable by tuning the PWM output parameter in a control app paired with the Mini-Pix.

Summary

In terms of software, it is feasible to utilize a PX4/Ardupilot-based flight controller in our blimp's flight control. However, in terms of hardware, the gross weight of the flight control system poses a critical issue in our lighter-than-air setup. Its incompatibility with our motor driver is another challenge, though not as critical since they can be fixed by adding custom wires and tuning the software.

Next Post Previous Post