In this post, we build a simple simulation of a 2D (planar) quadcopter, a type of drone with four propellers. We will derive the equations of motion, rewrite them in state-space form, and simulate the resulting system in Python. Why simulate a quadcopter at all? If you want to design a controller, or train a reinforcement learning agent, you first need a model you can run in software. This ...