Giter Club home page Giter Club logo

central-orchestrator's Introduction

robolaunch Cloud Robotics Platform

license issues issues

issues

Overview

robolaunch is a Cloud-Native Robotics Platform that provides the end-to-end infrastructure, software stack and tools for developing, simulating, deploying and operating ROS/ROS2 robots at scale.

robolaunch's end-to-end infrastructure, which we also call it "Unified Robotics", enables robotics developers to develop & simulate robotics applications on cloud via VDI infrastructure that uses GPU power, deploy robotics applications to the physical robots remotely and operate the robot's status in a run-time with management, orchestration and monitoring functionalities.

Why robolaunch?

Robotics development contains many challenges itself. Such as it requires multi-domain knowledge to build a robot and this process is mostly dependent on expensive hardware. Therefore the process becomes hard to achieve and time consuming as a result.

With robolaunch, we want to give robotics developers the ability to develop, deploy and manage ROS/2 robots easily. One of our primary motivation in developing robolaunch is to remove barriers to entry in robotics development.

robolaunch Cloud Robotics Platform is based on Kubernetes because we believe future of robotics will be a distributed and cloudified system and Kubernetes helps us to provide tenancy, automated deployments and self configuration of work-processes.

We believe that robolaunch will provide great convenience to robotics developers in many ways. We will continue evolving robolaunch with our dedicated team. In the meantime, we hope you to contribute to the codebase so that we can improve robolaunch together.

  • Faster to Getting Started - eliminates the time spent configuring a development environment locally on personal computer

  • Cost Efficient - eliminates the costs required for robotics hardware and computational resources

  • Sim-to-Real - remotely deploy the robotics applications that developed on robolaunch to the physical robot(s)

  • Visualization - monitor and manage your robots in run time from robolaunch dashboard for a full control over your robots

  • Flexibility - leverage from entire platform features, or pick the components according to your needs

Feature Set

Four non-functional outputs (Scalability, Connectivity, Acceleration, Automation) that have deriven from functional features are listed below.

๐ŸŒŽ Scalability

  • Infrastructure as Code - automated Kubernetes cluster provisioning
  • Multicluster Orchestration - manage clouds and robots geographically
  • Container-based - benefit from the power of virtualization, optimized for the edge

๐Ÿ”— Connectivity

  • Built-in VPN (cloud-powered mode) - access robots securely regardless of their network environment
  • Isolated L2 Networks - isolating tenants' data and control planes
  • Isolated Robots - isolating robots by both ROS namespacing and DDS domains

โšก Acceleration

  • Hardware Acceleration - use hardware acceleration (GPU) for robot simulation, training and virtual desktop environment
  • Virtual Desktop Environment - use desktop environment to run observability tools
  • Hardware-in-the-Loop Simulation - test, train and simulate robotics applications by updating embedded software remotely

โš™๏ธ Automation

  • Robot-as-a-Service - deploying and managing robots and fleets declaratively
  • On-the-Fly Development - software development using integrated Cloud IDE on runtime
  • Easy Updates - remotely update the software on your robots
  • Robot Templates - predefined and reusable robot templates to work with right away
  • Extended Kubernetes API - extend robolaunch feature set according to your specific needs

Learn more on robolaunch.io.

โญ Start contributing or support the project with a star! โญ

Core Concepts

Architectural components of robolaunch are defined below.

Glossary

  • Fleet Namespace - corresponds to a federated Kubernetes namespace in a cloud instance which is abstractly matched with a fleet
  • Robot Namespace - corresponds to a federated Kubernetes namespace in edge (physical robot), contains a physical member of fleet
  • Cloud Infrastructure (AWS) - corresponds common cloud infrastructure on AWS
  • Physical Robot - corresponds a physical robot and it's components
  • Robot Infrastructure - corresponds common robot infrastructure

Architectural Diagram

For more detail, see concepts.

Getting Started

Submodules of robolaunch Cloud Robotics Platform are as follows:

There are two deployment options available: Cloud Based Deployment and On Premise Deployment.

Prerequisites

The prerequisites for each deployment option are specified separately. In each option, you can deploy single-node or multi-node Kubernetes clusters.

  • AWS account
  • Laptop, virtual machine or physical server
  • MiniKube or Kubernetes

Contact

Contact us from [email protected] for general inquiries.

Contributing

Thank you for your interest in robolaunch and the desire to contribute! Please check out organization repositories' contribution guides to learn about conventions to make your changes compatible to our style.

Community

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.