Skip to content

TobiasWeis/robotcontrol-javascript

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
July 22, 2018 17:59
July 12, 2018 00:24
July 22, 2018 18:00

RaspberryPi Robotcontrol

Interactive, low-latency javascript-based websocket-GUI for touch-devices with a python-flask backend that interfaces to robotic components. It provides virtual 2-axis joysticks (inspired by nipple.js but without the multitouch issues) and buttons that all work simulatenously. Due to the two-way websocket connection, status-messages from the robot can be displayed in the text-area.

Gif of GUI

This software provides

  • an interactive javascript low-latency websocket GUI served webpage
  • a python-flask server that runs on a raspberry pi (or really any linux-machine)
  • a two-way websocket connection for low latency control
  • some server-side robot-classes (servo-, stepper-, toggle-control) that are already mapped to control inputs

Important: The GUI can currently only be controlled using touch-events, that means it should be used with a touchscreen device.

Tested on RaspberryPi 3 B+ with raspbian and Samsung Galaxy S7, Android 8, mobile google chrome 67.

Requirements

  • python, numpy, flask

Howto run

  • install necessary python-packages using pip
pip install -r requirements.txt
  • run flask-server (server-websocket/main.py) -> this will provide the websocket API and serve the webpage on port 5000
./server-websocket/main.py

Module architecture

Module structure

Hardware test-setup

Hardware layout

TODO

  • unify control-interface to allow easier mapping of interface-axis/buttons to robot actions

About

interactive control interface for robots and other electronics experiments

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published