Skip to content

A software tool to inject faults to rosbags, a file format in the Robot Operating System 2 (ROS2) for storing ROS2 message data.

License

Notifications You must be signed in to change notification settings

boschresearch/rosbag-fault-injection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ROS2 Rosbag Fault Injection

Docker Visual Studio Code ROS Python Shell Script

Fault injection for ROS2 rosbags that supports recording, modifying, and plotting the fault injected rosbags.

Getting Started

Prerequisite (at host)

  • Visual Code
  • Docker
    • If you have a Docker Desktop license, Docker Desktop >= 4.27.2
    • If you don't have a Docker Desktop license, Docker Engine on WSL2 (Docker Engine != Docker Desktop)
      • In case of another installation, make sure you have deleted the previous Docker completely
      • After installation, check if Docker Container Engine is running well
        # to check if docker container engine is running
        sudo service docker status
        
  • Python >= 3.8.10
  • The user must be added in the docker group with sudo previledge
    # add a group named docker
    sudo gropuadd docker
    
    # add the current user to the docker group with sudo privilege
    sudo gpasswd -a $USER docker
    
    # change the current user's primary group to docker
    newgrp docker
    

Setup

To clone the repo:

git clone https://github.com/boschresearch/rosbag-fault-injection.git

To open the Visual Code:

# change directory to the project
cd rosbag-fault-injection

# open visual code
code .

The project contains devcontainer that runs ROS2 Galactic as a container with all required dependencies and initial setup.

To open the devcontainer, press Ctrl+Shift+P from Visual Code and select Reopen in Container. See Visual Studio Blog for visual guidelines.

After devcontainer is up and running successfully, you can open a bash terminal with vscode user name. And ros2 commands are usable right away. :)

Fault injection

WIP

Trouble Shooting

Q1. Opening the container fails with ... "docker-credential-desktop.exe": executable file not found in $PATH, out: ....

A1. Delete the line with credsStore from ~/.docker/config.json on WSL2.

License

This project is licenced under the Apache-2.0 license. See the LICENSE file for more details.

About

A software tool to inject faults to rosbags, a file format in the Robot Operating System 2 (ROS2) for storing ROS2 message data.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published