Skip to content

Heterogeneous Multi-Robots Mission Control is an architecture for the development of applications, capable of coordinating multi-robot missions subject to uncertainty in properties of the available robots in the Software Engineering Lab (LES) at University of Brasilia.

Notifications You must be signed in to change notification settings

lesunb/hmrs_mission_control

Repository files navigation

Build Status Codacy Badge codecov

Heterogeneous Multi-Robots Mission Control

Overview

Heterogeneous Multi-Robots Mission Control is an architecture for the development of applications, capable of coordinating multi-robot missions subject to uncertainty in properties of the available robots in the Software Engineering Lab (LES) at University of Brasilia.

Keywords: Software architecture, cooperative heterogeneous robots, multi-robots systems, Cyber-physical systems

License

The source code is released under a MIT license.

Authors: Gabriel Rodrigues, Vicente Moraes and Gabriel F P Araujo
Affiliation: LES
Maintainers: Gabriel Rodrigues, Vicente Moraes,Gabriel F P Araujo

Heterogeneous Multi-Robots Mission Control is research code, expect that it changes often and any fitness for a particular purpose is disclaimed.

@article{rodrigues_architecture_2022,
  title = {An Architecture for Mission Coordination of Heterogeneous Robots},
  author = {Rodrigues, Gabriel and Caldas, Ricardo and Araujo, Gabriel and {de Moraes}, Vicente and Rodrigues, Gena{\'i}na and Pelliccione, Patrizio},
  year = {2022},
  month = sep,
  journal = {Journal of Systems and Software},
  volume = {191},
  pages = {111363},
  issn = {01641212},
  doi = {10.1016/j.jss.2022.111363},
  langid = {english}
}

Using as a lib

In your environment:

$ pip install hmrs-mission-control

Setup Development Envrionment

Environment dependencies

python 3, pip

Used IDE: vscode, plugin python

macOS aditional dependencies brew install libmagic

Development

Install poetry

poetry easy the process of managing python dependencies

PIP

$ pip install poetry

Alternatively, macOS brew

$ brew install poetry 

Install dependencies

Inside the project folder (after clone)

$ poetry install
$ poetry shell

Run a Controlled Experiment

Inside poetry environment (after poetry shell)

 python evaluation/experiment_gen_lab_samples/experiment_gen.py

Test

Tests should be put on /tests folder and are executed with the following command.

 $ poetry run pytest -v --cov .

Linter

 $ flake8 --statistics

Run

Select the exec shell

$ poetry shell

Then, Execute Simulation

$ python ./run.py

Dependency

Add New Dependency

To add new dependencies use the following command.

$ poetry install [name]

This command will add the dependency to the Pipfile and poetry.lock assuring that the execution can be reproduced in another environment (after dependencies are updated with poetry install command )

Add New Dev Dependency

Same as previous dependencies, but for development libraries such as the ones used for test.

$ poetry install [name] --dev

Note that other systems after pulling updates will need a reexecution of poetry install --dev

About

Heterogeneous Multi-Robots Mission Control is an architecture for the development of applications, capable of coordinating multi-robot missions subject to uncertainty in properties of the available robots in the Software Engineering Lab (LES) at University of Brasilia.

Resources

Stars

Watchers

Forks

Packages

No packages published