Project performed at the University of Genova, Italy and Schaeffler Group.
If you use this software package in any form, please cite the following paper link:
Murali, Prajval Kumar, Kourosh Darvish, and Fulvio Mastrogiovanni.
"Deployment and evaluation of a flexible human–robot collaboration model
based on AND/OR graphs in a manufacturing environment."
Intelligent Service Robotics 13.4 (2020): 439-457.
The overall cooperation task is based on a modular, reactive architecture. The architecture has two phases, namely the Offline Phase and the Online Phase. The Offline Phase is composed of teaching safe way-points for the robot in the manufacturing work-cell. This process is application-dependent and is done by a robot programmer.
The Online Phase has three layers namely the representation layer shown in blue,the perception layer in orange and interface layer in green.
- Representation layer: Responsible for task representation, task allocation and task planning.
- Perception layer: Responsible to find the object pose and grasp location to the robot.
- Interface layer: Responsible for providing interfaces to robot (robot drivers) and humans (GUIs).
Sl. No | Dependency | Remark | Version |
---|---|---|---|
1. | AND/OR | Mandatory | |
2. | AI Planner | Mandatory | |
3. | ROS | Mandatory | Atleast Indigo |
4. | UR Modern Driver | Mandatory | Included in this repo |
5. | Gazebo | Mandatory |
The architecture is tested on UR10 Universal Robot running firmware version CB 3.0 and PolyScope version 3.5. The gripper used is OnRobot RG6 gripper and Cognex 7802 machine vision system for the perception.
Configuration_files
|
|
----> and_or/files-->pallet_assembly.txt
|
|
----> sequential_planner/files----> Action_Definition_list.txt
|
|
-------------> State_Action_list.txt
These files have to be replaced in the AND/OR
and AI_planner
packages. The pallet_assembly.txt
provides the task representation, while the files Action_Definition_list.txt
and State_Action_list.txt
provides the necessary actions for the task manager.
Linux:
git clone https://github.com/prajval10/industrialRobot_task_planning.git
cd industrialRobot_task_planning
catkin_make
Add the following to your .bashrc
file:
# Path to the `industrialRobot_task_planning/src` folder
export FLEX_INSTALL_PREFIX=<prefix>
# Gazebo related env variables (see http://gazebosim.org/tutorials?tut=components#EnvironmentVariables )
export GAZEBO_MODEL_PATH=${GAZEBO_MODEL_PATH}:${FLEX_INSTALL_PREFIX}/my_ur_gazebo/models
Disclaimer The software here is presented as is and is no longer actively maintained and updated.