Web status page

From Rsewiki
(Difference between revisions)
Jump to: navigation, search
(Overview)
Line 14: Line 14:
  
 
Figure 1. The robot status web page interacting with the robot through a Python to ROS connection. The operator console is then just an ordinary web page (with some dynamic content based on Java script).
 
Figure 1. The robot status web page interacting with the robot through a Python to ROS connection. The operator console is then just an ordinary web page (with some dynamic content based on Java script).
 +
 +
== Packages needed ==
 +
 +
The web interface depends on a number of packages, as shown in figure 2.
 +
 +
[[File:block-diagram-web-server.png]]
 +
 +
Figure 2. The client access the service by connecting a browser to the IP of the robot. The web server Nginx directs the connection to a fresh web socket for each client (port 8000, 8001, ..) serviced by the GUnicorn HTTP server. This HTTP server uses Flask as a service to render the web pages and allow a Python script to provide dynamic content. The dynamic content is obtained from ROS communication.
 +
 +
So install:
 +
 +
sudo apt install nginx
 +
sudo apt install flask

Revision as of 15:11, 2 July 2018

Back to Flexbot main page

Contents

Introduction

Installation and configuration of web status page.

Installation

Overview

The robot configuration includes a web server that allow "any" browser to connect to the robot and get status and rudimentary control of the robot.

Web to ROS

Figure 1. The robot status web page interacting with the robot through a Python to ROS connection. The operator console is then just an ordinary web page (with some dynamic content based on Java script).

Packages needed

The web interface depends on a number of packages, as shown in figure 2.

Block-diagram-web-server.png

Figure 2. The client access the service by connecting a browser to the IP of the robot. The web server Nginx directs the connection to a fresh web socket for each client (port 8000, 8001, ..) serviced by the GUnicorn HTTP server. This HTTP server uses Flask as a service to render the web pages and allow a Python script to provide dynamic content. The dynamic content is obtained from ROS communication.

So install:

sudo apt install nginx
sudo apt install flask
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox