Current projects


Today motion generation algorithms for robotic manipulators solve the motion planning problem by actually over-constraining the space of solutions in order to select a particular solution among others. Even more advanced and commercially available trajectory planning strategies prevent the low level controller from adapting or modifying the generated trajectory based on real-time events or sensor readings, or need a lot of handling logics to be pre-programmed, rarely guaranteeing hard real-time capabilities or reduced reaction times. The objective of the CREMONA (Constraint composition for REactive MOtion plaNning and Adaptation) is to allow next generation robot controllers to intelligently and autonomously interpret production constraints, specified by the robotic programmer, and transform them into motion commands only at a lower and real-time level, where sensor readings or other kind of events can be handled consistently with the higher level and partially unconstrained motion specification. The availability of several feasible solutions with respect to the specified process constraints could be then effectively exploited in order to enhance the flexibility of the resulting robot motion, as required by industrial manufacturers or by specific applications, e.g. human-robot collaborative working environments.


The popularity of the research of the unmanned ground vehicles has been increasing recently due to their usefulness in different operation environments. Planetary explorations, search and rescue missions in hazardous areas, surveillance, humanitarian demining, as well as agriculture applications such as pruning vine and fruit trees, represent possible fields of using autonomous vehicles in natural environments. Differently from the case of indoor mobile robotics where the exclusively flat terrain is considered, the outdoor robotics deals with all possible natural terrains. The unstructured environment and the terrain roughness including dynamic obstacles and poorly traversable terrains pose a challenging problem for the autonomy of the vehicle.
The advantage of using high speed All-Terrain-Vehicle, is its good traversability potential for some poorly traversable terrains and the short time spent for reaching the goal as well as operating in some unsafe environments comparing to other kind of existing vehicles. The main disadvantage of the ATV is its low level stability margin due to its dynamic constraints, roll-over and excessive side slip. The main objectives of the QUADRIVIO project are to develop:
  1. a virtual rider, i.e. a system that makes the vehicle partly autonomous with sensor based navigation so that it can find the best path in a rough terrain with obstacles;
  2. an ATV tracking controller, i.e. a controller that tracks a desired path acting on steer, throttle and brake (ensuring the vehicle stability);
  3. an ATV anti-rollover systems, i.e. the identification of the best roll/tip-over indicator and the design of a system that automatically reacts to an incipient roll/tip-over in order to stabilize the vehicle.


The main goal of the SCORPION (Safe COntrol of mobile Robots for Productive Industrial OperatioNs) project is to develop a planning, control and perception framework that allows to efficiently execute productive operations with a mobile manipulator, while preserving a prescribed level of safety with respect to unplanned obstacles, including human beings.
The system will have several distinctive features: full exploitation of the redundancy of the mobile manipulator to compute the final robot configuration given a certain grasping task; perception of the environment through additional distance sensors (based on LED effect) mounted onboard the robot; continuous assessment of the danger induced by the moving robot itself; online re-planning of the robot trajectory in case of obstacles, which exploits the redundancy of the mobile manipulator with respect to the task.
The system will be designed on and tailored to a youBot system, while being scalable to other sizes of mobile manipulators. The SCORPION project is partly funded by the KUKA Innovation in Mobile Manipulation Award (Sponsored track).

Previous projects


  • safe human-robot interaction;

  • human-centered robotics;

  • social acceptance of robots
ROSETTA (RObot control for Skilled ExecuTion of Tasks in natural interaction with humans; based on Autonomy, cumulative knowledge and learning) develops “human-centric” technology for industrial robots that will not only appear more human-like, but also cooperate with workers in ways that are safe and perceived as natural. Such robots will be programmed in an intuitive and efficient manner , making it easier to adapt them to new tasks when a production line is changed to manufacture a new product.
The project aims at supporting industry through developing technologies that make it easier to utilize and integrate industrial robots into otherwise manual assembly lines. Today’s market place is characterized by products that come in many variants and have short lifetimes. This calls for flexible manufacturing systems that allows for frequent product changes. Industrial robot automation is the automation method of choice to meet with those demands, however, the application requires the ability to adapt even more quickly to new tasks. Further, it is desirable to integrate the robots with humans in the assembly lines in order to achieve highest possible level of flexibility while utilizing the individual strengths of both human worker and the robot.
The project addresses the above challenges by developing methods and tools to engineer and program robot stations in ways that are more intuitive and closer to the task, while still staying less specific to the installation. This requires a higher level of autonomy from the robot in terms of adapting to a changing environment and interacting with the human workers.
Another aspect of concern when integrating industrial robots into manual assembly is the safe interaction between robot and human. In the ROSETTA concept the robot is not necessarily separated from humans by any physical safety fences or barriers. This implies that the robot needs to be safe towards the human either by being intrinsically safe or by employing active safety systems. The primary robot used for exemplifying the ROSETTA project will be the intrinsically safe concept robot FRIDA from ABB, along with other arms both intrinsically safe and with fencing. Different robot arms will be used in order to show that the concepts for task instructions, task execution and safety that are being pursued by the ROSETTA project can be generalized and is applicable to different platforms.


  • robotized wheel deburring;

  • learning by demonstration;

  • force controlled robotic tasks
Modern industrial robots are complex and powerful machines, able to execute a variety of different tasks with high speed and accuracy. Nevertheless, they still have a low degree of autonomy and adaptability, and need the presence of a human operator to learn new tasks or tune existing ones. In the last twenty years, however, robotic researchers have been focusing on the Learning From Observation paradigm, developing prototypic robotic systems able to observe and learn from human operations. In this new paradigm, the information coming from a variety of observations, is analyzed and transformed into an abstract representation of the task. By using such information, and exploiting the abstraction capabilities of a suitable cognitive system, the robot is able to autonomously generate a program to reproduce the task, even in an environment which is different from the one observed during the learning phase.
The FIDELIO project wants to investigate the feasibility (and the related advantages) of this innovative approach in an industrial application scenario, exemplified by a fixtureless wheel deburring task. To this aim, a robotized cell will be set up, composed of a six degree-of-freedom industrial manipulator and a workstation where aluminum wheels are placed for deburring. On top of the workstation a camera frames the workspace in order to localize the wheel. The arm is equipped with a pneumatic deburring tool connected to the robot end-effector through a force/torque sensor. In addition, an eye-in-hand camera, framing the cutting tool and the deburring edge, is mounted at the robot end-effector.

EasyOrocos CAD

  • auto-generated real-time code;

  • graphical user-interface
The goal of the Easy-Orocos project is to allow designers of robots, machine tools, production machines to automatically generate the real-time software of the controller, for a system composed of an open loop kinematic chain controlled by electrical motors. The C++ code of the controller is then executed on a PC under Linux-RTAI operating system.
Open source software available in the scientific community is used. Specifically the OROCOS framework has been selected, that allows for assembling control systems for robotic manipulators.
A graphical user interface is being developed, where the designer can build his own robot and generate a XML file. This file is interpreted by a program that generates the appropriate controller for the selected robot. Configuration of the controller as well as customizations are also possible.
EasyOROCOS CAD is an interface which supports the interactive definition of a manipulator kinematics (and 3D geometry), and from that it generates an OROCOS controller of the manipulator, in the form of a task running under Linux RTAI.

Source Code (LGPL license)
The code of the EasyOROCOS project can be roughly divided in five packages. The first package manages the GUI of the application. It is coded in C++ following the OO approach. The second package manages real time communication with external programs such as the dynamic simulator of the robot model and the real time controller of the robot. The third package manages the generation of the OROCOS code for the robot controller. It is coded in C++ following the OO approach. The fourth package manages the data structures used to describe the robot kinematical chain. It is coded in C. The fifth package implements a 3D BREP modeller based on the Boundary REPresentation of solid objects. It is coded in C.
Different subfolders are present under the main folder of the project. Each subfolder contains the source code of routines belonging to the same package.

The EasyOROCOS CAD can be downloaded in one of the following versions:
  1. live CD
  2. source code (here you can find the installation instructions)
After downloading you are kindly invited to send an email to with your name, institution and use of EasyOROCOS CAD. You will then be informed of new software releases.