Skip to content

Rustbusters/simulation-controller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simulation Controller for Drone Network Simulation [UniTn AP-2024]

Project Overview

This project is part of a university group assignment focused on developing a simulation of a drone-based network.

Simulation Controller

The Simulation Controller (SC) is responsible for managing the state and behavior of the drones, clients, and hosts within the simulation. It ensures that the drones operate as intended, facilitating communication between network components while responding dynamically to changes in the environment.
There are two main parts:

  1. Graphical User Interface (GUI) – Provide an interactive visual representation of the simulation. Developed with egui and eframe. Act as a wrapper for the SC.
  2. Simulation Controller (SC) – It's the real controller of the simulation and implements all the feature described in the protocol plus the ones that our group has implemented to interact with the hosts.

Features

  • Sends DroneCommands to the drone.
  • Sends HostCommands to the hosts.
  • Keeps the integrity of the network during the simulation.
  • Provides an interface to simplify user interaction.
  • Receives and manage all the events from the nodes (drones and hosts)

Technologies Used

  • Programming Language: [Rust]
  • Libraries & Frameworks: [egui, eframe, egraph]

Setup

  1. Clone the repository:
    git clone https://github.com/Rustbusters/simulation-controller.git
  2. Install dependencies:
    cargo update
  3. Run the simulation:
    To run the simulation you need the network initializer as this projects is created a lib
    
  4. Run the tests:
    cargo test

Acknowledgments

  • University of Trento. Bachelor degree in Computer Science
  • Course: Advanced programming hosted by Marco Patrignani.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages