Designing autonomous system on quadcopter
Teo, Wei Hong
Date of Issue2017-05-09
School of Computer Science and Engineering
Real-time systems such as package delivery system using unmanned aerial vehicle have become a reality. These systems require the assistance of real-time operating systems in order to satisfy their real-time requirements. Thus, the schedulers in real- time operating systems play a key role in scheduling activities. This report presents a project which aims to develop an autonomous maneuvering system on a quadcopter. An open source quadcopter platform called Crazyflie 2.0, which runs on FreeRTOS, is used to implement such system. Certain understanding in different disciplines is required for the project. Thus, the concepts of FreeRTOS, the characteristics of the Crazyflie 2.0 platform such as flight dynamics and firmware architecture are discussed in this report. Several designs have been proposed and implemented on the Crazyflie 2.0. An autonomous maneuvering system has been integrated into the platform. Further, an external positioning system which utilizes a USB camera has also been implemented to assist in autonomous maneuvering. Replacing the existing complementary filter with extended Kalman filter has been done to improve the performance of the state estimation. Experiments were conducted to ensure the robustness of the autonomous maneuvering system and measure the performance of the external positioning system. Based on the results, the experiments were successful and important findings such as battery voltage compensation were revealed. Performance comparison is also discussed in the case of the Crazyflie 2.0’s self-localization. Overall, the design methodologies implemented have formed the basis of an autonomous maneuvering system. Some works could be done to have better autonomous maneuvering experience, such as the deployment of motion capture system.
DRNTU::Engineering::Computer science and engineering
Final Year Project (FYP)
Nanyang Technological University