Skip to content

Latest commit

 

History

History
65 lines (48 loc) · 4.68 KB

README.md

File metadata and controls

65 lines (48 loc) · 4.68 KB

ISBEP Robot Simulation


Overview

Robot simulation for the Innovation Space Bachelor End Project (ISBEP)

Features

Another repository contains the updated multi-agent exploration simulation code that was created by an electrical engineering student during the ISBEP project. The features described for this repository consider the technical features that can be used for integrating the simulation with the ISBEP-Server.

Settings

The settings.py file contains most of the parameters that can be altered for the simulation and the accompanying features of this repository. For example in this file you can specify where to export simulation data to by changing the export parameters.

Communicator

In order to communicate data from the simulation to the server a TCP client is created. In the settings the connection can be enabled/disabled and the port and address can be set. The connection folder contains the protocol for creating the TCP client, which ensure messages from communicator.py can be sent.

Timeline

Since it might not always be possible to run the heavy Isaac Sim simulation a timeline can be saved to be replayed later. The files in the timelines folder describe a timeline, which can be replayed when running communicator.py with configured timeline settings.

Tip

It is also possible to test the connection and send timeline data without setting up the Isaac Sim simulation. You can do this by running the communicator.py file, after commenting out omni imports that get referenced and cause an error when running the communicator.py file.

Situation

Besides outputting data on the connection the simulation can also utilize situation data as input to setup the environment in the simulation. The files in the situations folder describe such a situation and can be generated by the ISBEP-Server. Simply add a new json file and update the situation settings.

Util

In order to make developments easier the util.py provides some functionality. It allows log messages to be more formatted to show their context and allows context to be defined to show or not. The util also has the performance_timestamp(label:str) method that can be called to log how long the section until the previous timestamp took to execute.

Simulation installation

The following steps can be taken to install the simulation locally.

Simulation folder name

git_isaac_sim

Simulation usage

In order to run an installed simulation follow the next steps.

  • Load the installed simulation project in Isaac Sim.
  • Click Isaac Examples, User examples and then ISBEP Sim.
  • Press the Load button that appeared for the example.
  • Press Play after the simulation has loaded.

Dependencies

Isaac Sim is required for running and developing this project. The simulation code uses python and some additional modules, which could be installed using pip. Even though python is already included in Isaac Sim it might still need to be updated or have modules installed by following Isaac sim python install.

Local requirements

Download and install the following software.