Learning to fly
The design of a quad-copter has been around for a very long time, but during the 20th Century, most development of quad-rotor devices were stalled due to the difficulty of controlling four independent rotors. Indeed it is impossible to do so without electronic assistance, therefore since the boom in popularity of micro controllers in particular, more and more hobbyists have found the design to be adequate and stable for RC control flying UAV’s.
The structure and dynamics of a quad copter are fairly straightforward yet a bit difficult to execute. The quad-copter is basically a helicopter which has four equally spaced rotors usually arranged at the corners of a square body. A quad copter has six degrees of freedom (three translational and three rotational). For a quad-copter to achieve the six degrees of freedom, the rotational and translational motions are coupled. This results in dynamics which are highly non-linear, especially when accounting for the complications that arise from aerodynamic effects. Another aspect to not is that quad-copters (and helicopters alike) are faced with very little friction to prevent motion, so unlike ground vehicles, the quad-copter most provide its own damping in order to stop motion.
The forces that affect the movement of a quad-copter are the same that affect the movement and dynamics of any flying object; lift, drag, thrust and weight.
Movements of a Quad-copter
The movements and dynamics of a quad-copter are governed by RPY (Roll, Pitch,Yaw) angles along the axes of the copter in three dimensions.
So, for example, if the copter needs to climb, the pitch angle needs to be adjust to the angle of the desired climb. Similarly a combination of adjustments to the pitch and roll angles can culminate into the quad-copter turning left. On most quad-copters, these angles are taken in as feedback from the system and fed into controllers that can derive the 3 dimensional state of the quad copter and the desired adjustment to achieve a specified output. For sensing the Roll and Pitch angles of a reference, a combination of gyroscopes and accelerometers. But the problem with using these sensors is accuracy, as both these sensors have their own limitations (for instance gyroscopes are very noise sensitive). Therefore, in most cases of quad-copter design, the information from the gyroscope and accelerometer is combined using sensor fusing. In practice, this yields more stable results and make the overall results less sensitive to noise from vibrations etc.
The yaw angles are harder to control, as the gyroscope can provide short term compensation, but has the bigger drawback of drift. Thus for complete yaw angle controls, a magnetometer can be implemented (basically an electronic compass). However, in most implementations, this is overlooked and the short term compensations provided by gyroscopes are used.
How exactly does a quad-copter work?
A quad-copter has four independent inputs (rotor speeds). The four rotors are divided into 2 pairs of counter rotating motors. This is done to ensure that the torques are balanced. In simple terms, the RPY angles can be adjusted by varying the motor speeds. The total thrust achieved is the sum of the individual thrust provided by the rotors and propeller. The polarity (direction of rotation) for a specified rotor is always the same. The following is an image representing a quad-copter that will simply hover as all four motors are rotating at the same speed. Rotors 1 and 4 rotate clockwise, while rotors 2 and 3 rotate counter clockwise.
Now if the front two rotor speeds are increased and the back two rotor speeds are kept the same. The horizontal component that is developed by this action provides thrust. When the thrust is enough to overcome the drag on the quad-copter, the copter can move forward. The speed of the forward movement is determined by the horizontal component which in turn is dependant on the speed of the rotor. In the image below, the thickness of the arrows indicate their rotational speeds.
Another simple example of movement achieved by the quad-copter can be the rotation of the copter clockwise along its z-axis. This is achieved by increasing the rotational speeds of the rotors that are rotating counter clockwise. The rotors moving at slower speeds provide less thrust on the air below them, whereas the rotors moving at faster speeds provide a larger thrust. This results in differential torque on the whole system in the clockwise direction. This torque results in angular momentum and eventually rotation.
Thus it can be seen that the main functionality of the quad-copter is based on the rotational speeds of the individual rotors and the ability to adjust them as accurately as possible.
Main controller selection:
Unfortunately, this is no progress on this front. I had ordered an Arduino Uno and an Arduino Leonardo last week, but the shipment is a bit late. I have also however successfully ordered a micro UAV quad-copter for testing and final design consideration purposes (DFD F180 – Mini RC Control Quadcopter Drone UFO 4CH to be precise). The features of the quad-copter include a 2.4GHz wireless control and 6-axis gyroscope. Hopefully once it arrives next week, I will be able to begin work on interfacing it with the Arduino board to find out if one is better suited than the other. Currently I am leaning towards Leonardo as it is cheaper and has more I/O port as well as more PWM’s and ADC ports. Further analysis of the features of the controllers will be done once the boards arrive.