Theses
I2FORD Lab
Theses related to battery disassembly and, in general, to the industrial robotic cell I2FORD. Usually more practical projects.
Layout and movement optimization for a battery-disassembly robotic cell
Background: The I2FORD cell is a battery disassembly cell made of multiple robots. In the next year the cell will be moved to the PISA lab at University of Brescia. Thus a new layout is required.
Task:
Layout optimization of a battery disassembling robotic cell in order to minimize the cycle time.
Objectives:
The cell comprises a Kuka manipulator placed on a linear guide (7-dof in total), a Comau manipulator, an Omron-Techman mobile manipulator and a battery handler.
Each manipulator should easy access to every part of the chassis
The mobile manipulator, used for inspection, should be able to move freely around the battery chassis
The battery holder should be able to enter and exit the cell
Software: ROS2, C++
References:
AVAILABLE
Integration of EtherCAT drives into the ROS 2 framework
Background: The I2FORD cell includes a 2-axis cart used to move the battery in the cell and to allow the robots to reach every side of battery.
Task:
Develop a high-level interface for the battery handler cart compatible with ROS2. In the ros2_control jargon, this will be the hardware_interface module.
This hardware interface should be compatible with the joint_trajectory_controller
The interface will communicate with a low level drive, in control of two axis (one to control the height of the battery, the other to control the inclination)
Communication will happen through EtherCAT bus.
Software: ROS2, ros2_control, EtherCAT ROS2 Driver, C++
References:
AVAILABLE
Calibration of multiple radars for safety purposes in an industrial robotic cell
Background: The smart radars by Inxpect detect moving objects in their field of view and estimate their position and angle with respect to the sensor itself. This is particularly useful for detecting humans and stopping or slowing down robots when specific safety areas are crossed.
Multiple radars are used to create virtual fences around the robots, eliminating physical barriers and allowing for a faster restart of operations when the critical area becomes free again. The challenge consists of calibrating the array of sensors with respect to a common reference frame given noisy sensor measurements.Task:
Expand the ROS2-python package used to read the sensor status via a MODBUS interface (Ethernet interface for real-time data monitoring). Explore other interfaces such as FSoE (Ethernet-based safety Fieldbus - Safety over EtherCAT®).
Simultaneous calibration of multiple Inxpect radars.
Integration of the radar information in the safety routines of the robotic cell.
Software: ROS2, Python
References:
AVAILABLE
Automatic Control for Intelligent Robotics (CARI) Lab
Theses related to human-robot collaboration: human motion prediction and replanning strategies. Usually more theoretical projects.
Prediction of SSM value using AI techniques
Background: Speed and Separation Monitoring (SSM) is proposed in ISO/TS-15066 as a safety method for human-robot collaborative cells. It requires a minimum separation distance between the human and the robot to avoid collisions, which translates into a maximum robot velocity based on the current position and velocity of both.
Task:
Estimation of future values of SSM velocity scaling using Artificial Intelligence techniques (e.g. Neural Network).
Assess the possibility of integrating such methodology in a replanning routine for collaborative robots.
Software: MATLAB (Python)
References:
AVAILABLE
SSM-aware replanning strategy using elastic strips
Background: Speed and Separation Monitoring (SSM) is proposed in ISO/TS-15066 as a safety method for human-robot collaborative cells. It requires a minimum separation distance between the human and the robot to avoid collisions, which translates into a maximum robot velocity based on the current position and velocity of both.
Elastic Strip is an obstacle avoidance method that adds an elastic term to the control action to allow temporary deviations from the original trajectory.Task:
Include SSM computations into the Elastic Strip algorithm. The idea is to exploit the elastic strip to bend the trajectory to maximize the SSM and thus avoid slowdowns.
Software: MATLAB (C++, Python)
References:
AVAILABLE
Replanning with pose constraints
Background: The replanning procedure in a robot consists of computing a new trajectory in real time due to changes in the environment (new or moving obstacles, etc.)
Task:
Including pose constraints in the MARS replanner to plan the new path while keeping a predefined orientation of the tool.
Software: MATLAB (C++)
References:
AVAILABLE
Human Motion Prediction using Inverse Optimal Control
Background: Real-time tracking of the operator enables safer and more efficient cooperation between the human and the robot while performing a collaborative task.
The robot speed is scaled based on the distance to the operator's body according to the SSM strategy. However, to improve fluency and reduce idle time, we seek to predict the future movement of the human, so that the robot can replan in advance its path.Task:
Software: Python (MATLAB)
References:
[1] Example application
Github (unofficial): https://github.com/thirakawa/ActivityForecastingPython.git
AVAILABLE
Game-theoretical Motion Replanning
Background: In the context of robot motion replanning, one can adopt a reactive or a proactive approach. The former consists of first predicting the operator's behavior and subsequently optimizing the path of the robot based on this prediction. The latter tries to jointly optimize the motion of both agents, the human and the robot, using Differential Game Theory. This is done along a receding horizon to update the likely behavior of the operator based on new data from the skeleton-tracking module.
Task:
Investigate the Iterative Linear Quadratic Regulator (ILQR) [1, 2].
Extend the ilqgames library [3] to the case of human-robot interaction in a collaborative cell. Devise tests to compare this replanning strategy with existing approaches.
Software: C++, ROS/ROS2
References:
AVAILABLE