Roboy Dashboard

Roboy Dashboard

Overview

Default dashboard can be accessed via:

 

Installation

To install Roboy Dashboard on a new machine, follow the steps below

Tested on Ubuntu 16.04, Ubuntu 18.04 and Ubuntu 20.04

  1. Install Node-Red following the official instructions here. Test it by running

    node-red
  2. Install the modules required for Roboy’s Dashboard via the Manage Palette or using the command line

    cd ~/.node-red # note that the folder is created after the first launch sudo chown -R $USER:$(id -gn $USER) ~/.config npm install node-red-dashboard node-red-contrib-ros node-red-contrib-python3-function node-red-node-ui-list

    In some cases optional dependencies can throw errors. However, if you see the following output in the end - the required packages are installed (versions might differ):

    + node-red-contrib-ros@1.0.9 + node-red-contrib-python3-function@0.0.4 + node-red-dashboard@2.25.0 + node-red-node-ui-list@0.3.4
  3. Install system requirements:

    1. Python3

      • Note: On Ubuntu 20.04 additionally use sudo apt install python-is-python3

    2. ROS Melodic or ROS Lunar

    3. Rosbridge server

      sudo apt install ros-$ROS_DISTRO-rosbridge-server
  4. Install Roboy modules, such as Speech Synthesis and Roboy Skill Machine (to start remote nodes)

  5. Install Roboy flows

    git clone https://github.com/Roboy/roboy_nodered_ui.git node-red

In the browser navigate to http://127.0.0.1:1880/ and press Ctrl+I to open the dialog to import a new flow and click select a file to import button. Navigate to the roboy_nodered_ui folder and select flows_roboy-NUC8i7HNK.json. Click Import and then Deploy in the right upper corner.

Consult the README.md on how to auto start Node-Red on boot.

Roboy Dashboard is configured to use 192.168.0.105 as Roboy’s main processing unit IP address.

Usage

To see the user interface, navigate to http://127.0.0.1:1880/ui. In the left upper corner one can switch between various sections.

  • Photoboy section is designed as the UI for roboy selfie functionality (https://github.com/Roboy/roboy_snapchat )

  • Controls section is the central user-friendly management node. It allows the user to:

    • launch and monitor Roboy ROS nodes (requires Roboy Skill Machine )

    • trigger emotions (requires Face & Emotions )

    • use speech synthesis UI as free text input or pre-defined phrases (English, German, Chinese)

    • control chest LEDs

  • Utils section allows to synthesize a given phrase and save it to a file

  • Camera Stream section shows a camera view of Roboy’s face recognition software (https://github.com/Roboy/face_oracle )

  • Movements (WIP) allows to record and replay arm movements

 

 

 

Editing flows

One can easily add further UI elements if needed. In the backend you will see flows, organized as interconnected nodes. There are various types of nodes provided by the community or Node-Red developers: javascript or python3 functions, HTML templates, shell commands, buttons, ROS publishers & subscribers and many more.