Skip to content

Web-based dashboard for controlling and monitoring simulated robots using ROS and Gazebo, built with React and NestJS

License

Notifications You must be signed in to change notification settings

Relativiteit/ros-robot-control-dashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

example workflow

ROS Robot Control Dashboard

This repository contains the source code for a web-based robot control dashboard that interfaces with the Robot Operating System (ROS). The project consists of a frontend application built with React and TypeScript and a backend API developed using NestJS.

Table of Contents

Getting Started

Prerequisites

Installation

  1. Clone the repository:

git clone https://github.com/Relativiteit/ros-robot-control-dashboard.git

  1. Change into the project directory: cd ros-robot-control-dashboard

  2. Install frontend dependencies: cd frontend yarn install

  3. Install backend dependencies: cd ../backend/robot-control-api yarn install

  4. Set up ROS 2 in a Docker container:

  • Install Docker on your machine if you haven't already: https://docs.docker.com/get-docker/
  • Pull the official ROS 2 Docker image (replace <ros2_distro> with the desired ROS 2 distribution, such as foxy):
    docker pull osrf/ros:<ros2_distro>-desktop
    
  • Create a Dockerfile in your project's root directory with the content provided in the "Setting up ROS 2 in a Docker container" section below.
  • Build the Docker image:
    docker build -t ros-robot-control-dashboard .
    
  • Run the Docker container, mounting your project directory to the container:
    docker run -it --rm --name ros-robot-control-dashboard -v "$(pwd)":/ros_ws/src/ros-robot-control-dashboard ros-robot-control-dashboard
    

Usage

  1. Start the frontend development server: cd ../../frontend yarn start

This will open the dashboard in your web browser at http://localhost:3000.

  1. Start the backend development server: cd ../backend/robot-control-api yarn start

The API server will run on http://localhost:5000.

  1. Connect your ROS-enabled robot and configure the appropriate settings in the dashboard and backend API.

Contributing

Contributions to this project are welcome! Please feel free to open issues or submit pull requests with your improvements and bug fixes.

Setting up ROS 2 in a Docker container

Create a Dockerfile in your project's root directory with the following content :

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

About

Web-based dashboard for controlling and monitoring simulated robots using ROS and Gazebo, built with React and NestJS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published