Aircraft development and UAV (unmanned air vehicles) design and simulation are challenging tasks. Many designers and programmers take advantage of tools like The Mathworks's Matlab and Simulink to handle everything from airfoil design to autonomous and semiautonomous control systems.
One of the neat toolkits that extends Simulink is the Aerospace Blockset. This package addresses a range of modeling and simulation tasks for aircraft, spacecraft, and propulsion systems. It includes blocks for modeling equations of motion, navigation, unit conversion and visualization. It also provides standard references and environmental models including gravity, magnetic fields and wind. There are predefined utilities for operations such as converting units, plus transforming coordinate systems and spatial representations.
UAV design can be address at a variety of levels. It is possible to simulate vehicles and vehicle components such as the propulsion, actuators and control systems. It is possible to model flight dynamics including the use of three- and six-degrees-of-freedom equations of motion with fixed or variable mass objects.
Simulink and the Aerospace Blockset work with other Mathworks tools such as the Real-Time Workshop and the xPC Target that are available separately. The system allows automatic code generation that can be used in production and hardware-in- the-loop systems. It is also very handy for rapid prototyping. Applications work with the FlightGear simulator using the Animation library.
There are a number of libraries included in the package such as the Actuators, Aerodynamics, Flight Parameters and Mass Properties library. The Propulsion library includes examples such as a turbofan engine system block that implements a first-order representation of the engine and the controller. It can compute the thrust and fuel flow at a specific throttle position, Mach number, and altitude. The GNC (guidance, navigation, and control) library uses prebuilt guidance, navigation, and control components. It allows designers to understand and test system behavior.