Saturday, February 14, 2015

Flying Dreams

Rainy evening sky from the lab window
Even though I was an aircraft enthusiast from my childhood, I've never been into RC model airplane flying stuff. It was completely out of  my reach. After returning to SCoRe lab in the latter half of last year, I was sitting in the lab while some quadcopter stuff were being done around me. For the purposes of different research projects,  some members of the lab and some undergraduate students were working with quadcopters. They have put their hands on two quadcopters namely a Parrot AR.Drone2.0 which is purchased and another domestically assembled ArduCopter. However, I didn't get a chance to look into those stuff until recently Chathura aiya enter into the subject. Recently he was assigned to fix the issues in our ArduCopter based quadcopter and make it ready to provide reliable flights for the research works which should be done using it. Mainly we need it to be able to send a video camera taking footage of the ground for the purpose of processing and identifying some specific stuff on the ground.

Our flight engineer :)
Since Chathura aiya also was not familiar with quadcopter stuff, it took him some time to carefully study the subject and look into the details. Since I was sitting next to him in the lab and we always communicated well regarding almost anything we are doing, I received the opportunity to get different quadcopter related information from him. He disassembled the quadcopter and assembled it little by little while working on many other works he was assigned to. From him, I got to know different parts of a quadcopter and how the ardupilot (on-board flight controller) handle all these things. He went to the rooftop of the UCSC building so many times and tried to lift off the quadcopter little by little. Initially, little flying robot had some issues with stabilizing in the air and therefore right after turning the motors on, it just fell off from its landing gears. Chathura aiya  used some strings and tied the quadcopter from its two arms to two metal bars on the roof top, making the aircraft to hang from the string. It avoided the quadcopter from falling off or flying into some obstacle which can damage the rotors or airframe. This method helped him to experiment with the quadcopter without unnecessary troubles.

Lots of calibrations!
Arducopter guys provide a ground control software which can be used to calibrate various parameters of the aircraft. According to my understanding, these  calibrations help the on-board flight controller to properly interpret the inputs from various sensors and make decisions to smoothly handle rotors for a successful flight. In each time a part of the quadcopter was disassembled and fitted back, Chathura aiya had to do the calibrations all over again since a little change on-board can make some of the previous calibrations invalid. Sometimes this repeated calibration task was a tiresome thing for me to watch and I was surprised that Chathura aiya didn't get fed up with it. He seemed didn't want to rest until he make this thing fly successfully.

Finally that long awaited day arrived. One day he took it to the university ground and made the first flight which was done using an RC remote controller. Due to the lack of experience on flying a quadcopter, I think he had to put lot of effort to keep it stable in the air and fly around the area. I went to the ground with him to record his efforts and it was so enjoyable to see how it lift off from the ground and wander around us with a pride. In this first flight, quadcopter didn't have a GPS receiver on-board and also there were come errors from compass according to the ground control stations details. Even though this flight ended with an accident of hitting a rugby goal post bar, it was a great moment.

Since I was so interested with the ArduPilot flight controller and its protocol MAVLink for communicating with the outside world, one day I connected it with a computer and ran MAVProxy tool to see what comes out of the ArduPilots USB port. It was so cool to see how ArduPilot responds to MAVLink commands I entered through the MAVProxy tool over USB port. The thing which I was not aware is that somehow this experiment changed the calibration settings of the flight controller and made it unable to fly the quadcopter anymore. I was feeling upset because Chathura aiya had to do the calibrations all over again to fix it but he was not worried about it. In this time he did a new thing. He attached the GPS receiver which comes with a compass to the ArduPilot unit and calibrated it too. After lot of efforts, he managed to bring the quadcopter again into the sky and this time with a GPS receiver. Somehow this addition made the quadcopter to be more stable in the sky and move around smoothly.

The most important requirement was to make the quadcopter fly autonomously according to a flight plan given to the on-board flight controller without any intervention from the ground. Last Friday, this beautiful moment arrived when the quadcopter flew around the university ground according to a set of waypoints given to it. In this time, it carried a battery level indicator on-aboard to warn us by ringing a sound when the quadcopter was flying with low battery. And also it was powered by a brand new Li-Po battery. This progress made by Chathura aiya showed me the lesson of how hard work returns with flying colors. The amazing world of autonomous flying vehicles is in front of us. It's time to move forward!


No comments:

Post a Comment