Autopilot System Design for AAI Aerosonde UAV

I designed and implemented an autopilot system and state estimation using a Kalman filter in Python for a digital twin of an AAI Aerosonde unmanned aerial vehicle (UAV) as part of a team of four. Our approach was grounded in the foundational principles outlined in Randal Beard’s Small Unmanned Aircraft: Theory and Practice, particularly emphasizing robust control design, state estimation techniques, and the complexities of UAV dynamics.

Utilizing the textbook’s insights, we ensured precise control system performance by developing algorithms that modeled the UAV’s dynamics and kinematics. This included detailed simulations of the UAV’s response to various inputs, allowing us to fine-tune our control strategies. Trim control was also implemented, such that the vehicle travelled at a constant speed \(V_a^*\), climbed at a constant flight path angle \(\gamma^*\), and remained in constant orbit of radius \(R^*\).

In modeling wind disturbances, we employed the von Karman turbulence spectrum to replicate realistic atmospheric conditions. This approach was vital for testing the UAV’s wind rejection capabilities, as it introduced a level of unpredictability often encountered in real-world flight. By accurately simulating these environmental factors, we could evaluate the robustness of our autopilot system in handling external disturbances.

In addition to the technical implementation, I authored a solo proposal advocating for the adoption of Incremental Nonlinear Dynamic Inversion (INDI) control in future research, as an improvement over PID controllers, specifically to enhance rejection of nondeterministic disturbances such as wind.

Throughout the project, my responsibilities also included organizing and leading six presentations to communicate our progress to peers and stakeholders. These presentations were instrumental in fostering collaborative discussions and ensuring that our team remained aligned on objectives, methodologies, and expected outcomes.