Simulation

All Simulink Models are Available on Github:

Our simulation section provides a detailed approach to creating rudimentary models of bi-copter dynamics in Simulink using corresponding equations of motion. The goal was to ultimately validate the idea that we could linearly combine control corrections in 2 axes for small corrections to achieve a stabilized hover. This process begins with single-axis testing for roll and pitch and gradually advances to more complex two-axis testing, ensuring a systematic understanding of the vehicle's behavior under different conditions.

Single-Axis Roll Testing:

The initial phase involved testing the bi-copter's dynamics along one axis, where we wanted to learn how the system behaves in a simplified scenario. For example, creating a roll-only model using a 3DOF dynamics block helped in developing a basic controller of the vehicle's behavior, where we realized that only using P and I in our control loop created an undamped system, resulting in us implementing a PD controller. We validated our model by testing our Ironbird in a gimble

Two Axis Testing

Once single-axis testing is complete, we extend the model to include two axes of motion with a 6DOF dynamics block, incorporating more complex behaviors that must be accounted for by the controller. This stage tests the interactions between different axes, allowing for a comprehensive evaluation of control strategies and overall system performance. Through this model, we were able to get a rough idea about how linearly combining pitch and roll corrections would work. However, we were unable to tune the system relatively well in Simulink, nor get useful PID tuning values from the model as it was mostly used for as a proof of concept for control mixing methods.

Yellow signal is roll in degrees, blue signal is pitch in degrees. Desired angle was set to 0 degrees. You can observe how simultaneously in different axes, the system was able to achieve desired orientation.