Design, Build, Test, Iterate

Archive for May, 2012

Removing a bad cell from a lithium-polymer battery

One of the cells in my lithium polymer battery rapidly started losing capacity a few days ago. I ordered two new batteries, but I needed power in the meantime. It was trivial to open up the battery and remove the faulty cell, since the other three cells were fine. The battery is now effectively a […]

More flight videos

Ever since I achieved stable flight, I have gone outside for flight testing almost every day for the past week. Check out some videos after the break.

Tricopter controlled flight!

Or, the best one-line bug fix ever. For two months, I had been thinking I was running my flight controller at 166 Hz while actually running it at a measly 31 Hz. I don’t want to go into detail about how that happened, but I have fixed the problem, and now it works. I am […]

A better alternative to position PID for multirotor control

Some systems can be controlled with a simple P controller, where a given offset is translated directly to some actuator output. Other systems, like the flight orientation control of micro aerial vehicles (MAVs), may require a damping term on the position to prevent a divergent oscillation of the vehicle’s angular position. However, the D controller […]

Custom firmware for multirotor ESCs

Multirotor flight control requires an update frequency on the order of hundreds of cycles per second. Most ESCs sold for RC plane use are capable of reading a PPM input at frequencies of up to 400 Hz, but they do not translate the PPM input to motor speed output at the same rate. tl;dr: Flash […]