Apricot Drone Simulator enables the definition of cooperative drones and their behaviours (programs) in order to run simulations on the drones. The system was created at the Fault Tolerant Systems Research Group (http://www.inf.mit.bme.hu/en) at the Budapest University of Technology and Economics, using model-driven techniques. It was developed as a homework for the course "Model Driven Software Development" by Ferenc Somogyi, György Demarcsek, Krisztián Nagy.
- Eclipse Modeling Tools 4.5.2
- EMF IncQuery 1.1
- Sirius 3.1.5
- Xtext 2.9.2
- Xtend 2.9.2
- DESMO-J 2.5.1c
Presentations that showcase the different phases of the project can be found under hu.bme.mit.mdsd.dns2016.presentations. Please note that the language of the first presentation is Hungarian.
-
The metamodel of the drones can be found in the project hu.bme.mit.mdsd.dns2016.drones, under the model folder. The model can be generated using the genmodel file, although the cloned repository already contains the generated files.
-
The metamodel of the drones' behaviour can be found in the project hu.bme.mit.mdsd.dns2016.drones.behaviour, under the model folder. The repository also contains the generated files, but this metamodel can be regenerated as well.
-
Drone instance models (new drones) are created with a graphical interface supported by Sirius. To create a new model, a new Eclipse instance (runtime) must be started, loading the hu.bme.mit.mdsd.dns2016.drones.design project.
-
Behaviour instance models (new drone behaviours) are created with a textual interface supported by Xtext. To create a new model, a new Eclipse instance (runtime) must be started, loading the hu.bme.mit.mdsd.dns2016.drones.text project. Behaviour models are "linked" to drone models, which means they refer to one or more drone instance model.
-
There are existing instance models under the hu.bme.mit.mdsd.dns2016.drones.instancemodels and hu.bme.mit.mdsd.dns2016.drones.behaviour.instancemodels projects.
-
To start the DESMO-J simulation, run the DronesSimulationRunner file under the hu.bme.mit.mdsd.dns2016.drones.simulation project and package. In order to run the simulation, the behaviour models for drones that are present in the simulation must be specified in the arguments of the run configuration. The drone instance models are automatically discovered based on the behaviour models.
- Graphical presentation for the simulation
- See TODO-s in code for more possibilities