Skip to content

Latest commit

 

History

History
90 lines (65 loc) · 3.89 KB

README.md

File metadata and controls

90 lines (65 loc) · 3.89 KB

CoFrame

CoFrame is an educational environment used to train operators for collaborative robotic workcells.

We accomplish this with an authoring tool that incorporates a Blockly-based visual programming language called EvD-Script, a simulation environment built in Unity, and an expert checklist that directs the operator to think in four frames: Safety, Program Quality, Robot Performance, and Business Objectives.

System Architecture

The current version of this system involves a web-based front-end and a ROS-based backend used for executing reachability detection and trajectory planning. While the system functions basically without the backend, it is unable to generate data that is useful feedback without this connection. This means that to execute, you will need to install and run the ROS package according to the instructions below.

Note, there is a version of the system that is currently being developed that does not need this backend to function (available in the refactor branch. Currently, this version is not fully functional and may contain errors. We hope to have this new version fully functional soon.

Installation

CoFrame relies on many different components to get it working. Below, installation is described for each subsystem.

evd_authoring_app

We developed the authoring application using React and Fluent UI. All dependencies can be installed by navigating into the evd_authoring_app directory and running:

npm install

evd_ros_backend

First install ROS (one) noetic, preferrably full desktop install.

Then clone this repo into your catkin workspace's src directory. You will also need to install the following packages.

Wisc-HCI Specific Dependencies

General ROS Dependencies

Please also install the following python modules.

evd_unity_sim_app

We developed the Unity application under Windows 10 with Unity 2019.4.5f1. All dependencies are already included within the directory.

Deployment

evd_authoring_app

Just run the following command to load the development server, which should be sufficient for your purposes. Make sure to run this within the evd_authoring_app directory.

npm start

evd_ros_backend

EvD's backend is broken into a library evd_ros_core and the user's application space evd_ros_tasks. To runthe backend, just launch the following with the specific task as an arguement.

roslaunch evd_ros_tasks main.launch task:="<TASK NAME>"

Or just skip the pretext and call the specific task launch file. For example,

roslaunch evd_ros_tasks 3d_printer_machine_tending.launch

Under the hood, this will hook into the core launch files and will also launch task specific nodes.

evd_unity_sim_app

Please don't run this code directly. There is a test build available but the best experience is to use the version embedded within the authoring app.

Future Development

This project is accepting issues, pull-requests, feedback, etc. Our current version is still far away from the aims of this project so any input is appreciated.

For specific development guidence, checkout each subsystem's respective README.