Skip to content

emmanuel-senft/authoring-gui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Trigger-Action Programming for Human-Robot Collaboration

Authoring GUI

This work is part of the code for a larger system. It is designed to be used with the Robot Controller.

Screenshot of the interface

Pre-requisites

  • This project is designed to work with Qt 5.15.

Installation

Before running, the variable socketIP in the main.qml file needs to be update to the machine's ip (either local, or global with port forwarding).

Using QtCreator:

  • Simply open the Qt project from QtCreator and run it from there.

or

For web deployment, the prokect needs to be compiled using webassembly.

  1. create a build directory: mkdir build; cd build
  2. source the webassembly toolchain: source ~/src/emsdk/emsdk_env.sh
  3. First time, use the webassembly qmake: ~/Qt/5.15.0/wasm_32/bin/qmake ..
  4. Make: make
  5. Run the server: python ../cherry.py (Assuming that the ROS_IP environment variable is set to the machine's IP)
  6. Open in web browser {ip}:49153

Usage

See the Robot Controller repository for detailed usage.

Interface

This interface is designed to author short term program for robot remotely. It communicates with the robot controller using sockets to receive ROS messages (video and strings) and send commands as strings. It can be run directly from QtCreator or served to a webpage.

The main view presents the field from a robot mounted camera with a number of buttons surrounding it. An overlays on the video shows the position of objects known by the system and with which users can interact. The bottom buttons allow to move the camera in the 6 directions. To create plans for the robot, the user can click or press and drag on the interface to create action areas. The interface will select an object in the area and select the default action associated. Users can change objects by click on the right radio buttons and can change actions by using the left checkbox. Actions order can be changed by deselcting and reselecting options or using the small arrows on the right. Actions or series of actions are applied to each object of the same type in the area to simplify execution on multiple object. Moving actions offer interactive handles that can be moved by the user, for example to move known objects (e.g., screws) users can drag the anchor on the object to the destination area. For unknown objects, the interface provides a 3-points handle that shows a vertical grasp (with orientation) for both the pick and the place actions.

Users can specify multiple actions at once and the resulting plan is displayed on the right side of the interface. Users can then run the plans by pressing the 'play' button.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published