A 3D multicopter simulator with providing wind simulation, PID controlled flying and gamepad support.
This projects focuses on developing a simulation environment for multicopters (multirotors) allowing to experiment with different UAV-types. There is also a wind simulation engine provided. The simulation environment was developed using C# and Microsoft Robotics Developer Studio 4. It was developed in the course of a bachelor thesis which you can find here (written in German language).
- .NET framework
- The software was developed in Visual-C#, so I recommend using Visual Studio (the Express version is available for free).
- Microsoft Robotics Developer Studio 4
- You will also need the 3D models of the simulated multicopter types.
- Install Visual Studio. The .NET framework should be included in the setup.
- Install Microsoft Robotics Developer Studio 4. The setup wants to install the software in your user folder, I recommend installing it in _C:\Program Files_. You should keep in mind in which folder you installed MRDS to, because you have to move some files into it. Furthermore you later have to set the path in the project settings.
- Move the content of the the 3D models archive multicopter_3dmodels.rar into the folder _...\Microsoft Robotics Dev Studio 4\store\media_.
- Open the simulator solution (MulticopterSimulator.sln) in Visual Studio.
- Right-click on the MulticopterSimulation project (the project, not the solution!) and choose the settings. You now need to set manually the paths to the Microsoft Robotics Dev Studio 4 directory and also the contained bin directory.
- The project should now compile.
If you have any problems or questions, please don't hesitate to contact me.
The Visual Simulation Environment provides the graphic output of the simulation. In this window the camera views can be controlled, it is also possible to move the camera freely.
The control window allows to control the multicopter entity in the simulator. It is also possible to use a Xbox 360 gamepad. Automatic flight control with PID controllers can also be activated in this window.
In this window the options of the wind simulation and the multicopter type can be set.
The program also provides simulated PID controllers on the multicopter. Autotuning wasn't implemented yet, so it is possible to manually tune the P, I and D values of the controllers in this window.
This window provides the recording of statistics of a set of values. Also a graphic plot output is given for the values. Furthermore some debug data is shown in this window.