RetraDev is a microservice-based rapid prototyping framework for early-stage cloud telepresence robotic application development. The proposed framework is suitable for remote development and deployment over the cloud without the need for physical accessibility to a telepresence robot. The framework provides a networking architecture that may enable quick prototyping capabilities for robot-agnostic remote programming, which supports both real-time and non-real-time tasks.
Some of the benefits and features of the framework are:
- Telepresence robot-agnostic development
- Locally hosted cloud robotic application development
- Modularity
- Open-source and Lightweight (Available on Github, links are given below)
The framework is open-source and lightweight, with minimum dependencies. RetraDev robot client drivers can be ported with any programming language or ROS, since the framework provides the necessary API endpoints and events to publish/subscribe (similar to rosservice and rostopics respectively). All of its source code is available on GitHub. The work on the framework started as a part of my Master’s dissertation (see here).
Resources used (Tech stack)
- Socketio
- WebRTC
- Nodejs
- Python (both 2 and 3)
- MongoDB
- ExpressJs
- Nginx
- Bastion Host
Cloud stack used
- Linode VM (powered by Ubuntu 20.04)