Robotics UI: A Customizable Web Interface for ROS 2 Robots

Enhancing Robot Management with the Robotics UI

As the robotics field advances, so does the need for intuitive interfaces that facilitate seamless interaction between humans and machines. Sciota Robotics has introduced Robotics UI, a robust web-based solution tailored to meet the demands of ROS 2-powered robots. This platform provides developers, operators, and robotics enthusiasts with the tools they need to build custom interfaces that enhance productivity and simplify robot management.

What is Robotics UI?

Robotics UI is more than just another dashboard tool. It’s a versatile, user-friendly interface that transforms how you monitor and control your robotic systems. With its modular design and extensive feature set, Robotics UI makes it easy to create custom dashboards that fit your specific needs—whether it’s real-time data visualization, interactive controls, or automated reporting. By supporting ROS 2 Iron, it offers compatibility with a range of applications, from research prototypes to commercial products.

Robotics UI Interface with OpenStreetMap Plugin

Key Features of Robotics UI

1. Customizable Dashboards

Robotics UI’s most powerful feature is its flexibility. With a simple configuration using JSON files, you can design dashboards that are uniquely suited to your application. For example, if you need a panel for monitoring sensor data or a control interface for robot movement, Robotics UI can adapt to these requirements with ease. This means less time coding and more time focusing on what really matters—building and deploying your robots.

2. Seamless ROS 2 Integration

Built on ROS 2 Iron, Robotics UI connects effortlessly with your ROS 2 nodes. The platform’s backend is designed to automatically generate subscribers and publishers, which facilitates real-time data exchange and control between the interface and the robot. This tight integration ensures that you have full access to your robot’s capabilities right from your web browser.

3. Efficient JSON Message Handling

Communicating between ROS 2 and a web interface can be complex due to the differing data formats. Robotics UI tackles this challenge by converting ROS 2 messages into JSON and vice versa. This conversion provides a streamlined method for developers to interact with their robots, simplifying tasks such as data manipulation and remote command execution.

4. Expansive Plugin Ecosystem

No two robotic projects are alike, and Robotics UI’s plugin architecture reflects this diversity. From the basic widgets that display sensor readings to advanced plugins like OpenStreetMap, which enables GPS navigation for mobile robots, the platform offers a wide range of extensions. This ecosystem allows you to build interfaces that cater to specific scenarios, whether you’re developing an autonomous drone or a teleoperated robot for remote inspections.

Code

You can find the Code at their github repository: repo

Getting Started with Robotics UI

To get started with Robotics UI, you need to follow these steps:

  1. Install Dependencies: Ensure ROS 2 Iron, FastAPI, and Node.js are set up.
  2. Download and Build the Package: Clone the repository into your ROS 2 workspace and build the backend:
    cd ~/ros2_ws/src
    git clone https://github.com/sciotaio/robotics-ui.git
    cd ~/ros2_ws
    colcon build --packages-select ros2_webinterface
  3. Launch the Backend and Frontend:
    • Start the backend:
      ros2 launch ros2_webinterface webinterface.launch.py
    • Start the frontend:
      cd ~/ros2_ws/src/robotics-web/react/robotics_ui/
      npm start

      For more details, refer to the Robotics UI documentation.

Latest Posts

Exploring ROSA – Revolutionizing ROS/ROS 2 Debugging and Human-Robot Interaction

A Beginner’s Guide to Creating ROS 2 Launch Files Using Python

Leveraging VS Code Devcontainers for Efficient ROS 2 Development

ROS2WASM: ROS 2 in the Browser

We Are Social

Your
Gateway
to
Future

Related Posts

Exploring ROSA – Revolutionizing ROS/ROS 2 Debugging and Human-Robot Interaction

A Beginner’s Guide to Creating ROS 2 Launch Files Using Python

Leveraging VS Code Devcontainers for Efficient ROS 2 Development