Robotics is a huge research area. We are mainly involved in autonomous robots, mobile robots, bio-inspired robots, SLAM, service robots, edutainment and entertainment robots.
Ongoing Projects
Benchmarking
Wiki Page: Rawseeds
Title: Rawseeds
Description: Building a Benchmarking Toolkit for robotics
Coordinator: MatteoMatteucci (warning.pngThe part "|MatteoMatteucci" of the query was not understood.
Results might not be as expected. )
|
Bio Robotics
Wiki Page: CPG for Warugadar
Title: CPG for Warugadar
Description: Study Central Pattern Generation, develop a CPG implementation in Matlab or Python. Adapt the
method to a quadruped robot (Warugadar).
Coordinator: GiuseppinaGini (warning.pngThe part "|GiuseppinaGini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Control of Whitefinger
Title: Control of Whitefinger
Description: This project aims to add further capabilities to Maximum One's hand
Coordinator: GiuseppinaGini (warning.pngThe part "|GiuseppinaGini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: PoliManus
Title: PoliManus
Description: Project PoliManus has the aim of build an exoscheleton for hand rehabilitation.
Coordinator: GiuseppinaGini (warning.pngThe part "|GiuseppinaGini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: PolyGlove: a body-based haptic interface
Title: PolyGlove: a body-based haptic interface
Description: PolyGlove is a new kind of haptic interfaces, that try to overcome the borders of the present datagloves exploiting the EAP technology.
Coordinator: GiuseppinaGini (warning.pngThe part "|GiuseppinaGini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: ZOIDBERG - An autonomous bio-inspired Robotic fish
Title: ZOIDBERG - An autonomous bio-inspired Robotic fish
Description: ZOIDBERG is a project about an autonomous bio-inspired robot.
The project's aim is to realize a robotic fish actuated by a particular electroactive polymer of ICPF type (Ionic Conducting Polymer Film).
Coordinator: GiuseppinaGini (warning.pngThe part "|GiuseppinaGini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Zoidberg II, powering robot fish
Title: Zoidberg II, powering robot fish
Description: This project is aimed at designing, constructing and improving autonomous robot fish, starting from the ZOIDBERG project. It will be able to swim deeply in the water, to communicate and to orient in a free space thanks to several sensors mounted on-board.
Coordinator: GiuseppinaGini (warning.pngThe part "|GiuseppinaGini" of the query was not understood.
Results might not be as expected. )
|
Exploration Strategies
Wiki Page: Spatial Allocation in Swarm Robotics
Title: Spatial Allocation in Swarm Robotics.
Description: Methods for the allocation of an autonomous swarm of robots to spatially distributed activities.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Living Objects
Wiki Page: EmotionalTrashBin
Title: EmotionalTrashBin
Description: Development of an emotional trash bin
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: NaughtyFan
Title: NaughtyFan
Description: Development of a robotic basket
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
RoboCup Rescue
Robogames
Wiki Page: Alien-Bot
Title: Alien-Bot
Description: The goal of the project is to develop an interactive game between an autonomous robot and a remotely-controlled one, based on the metaphor of the movie Alien.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: BasketBot
Title: BasketBot
Description: Development of a robotic basket
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Drone Laser Game
Title: Robotic Laser Game
Description: The goal of the project is to develop a laser game between flying drones, one of which autonomous and the other remotely controlled.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: FCBot
Title: FCBot
Description: The goal of the project is to develop a game based on the popular game "Quattro Cantoni".
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: GesturesForRoboWII
Title: Gestures for RoboWII
Description:
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Hide and Seek 2
Title: Hide and Seek 2
Description:
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Jedi Robot Training 1.0
Title: JediRobot Training
Description:
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Jedi Robot Training 3.0
Title: Jedi Robot Training 3.0
Description: An highly competitive robotic game, which is inspired by George Lucas' Star Wars Saga.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Jedi Training Robogame
Title: Jedi Robot Training
Description: Robogame where a drone is trying to hit by a laser a Jedi trainee who has to avoid it
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: KartBot
Title: KartBot
Description: The goal of the project is to develop an interactive game between an autonomous robot and a remotely-controlled one, based on the metaphor of the game Mario Kart Wii.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: King of the Hill
Title: King of the Hill
Description: Robogame where a robot should conquer hills, and a human player should contrast it
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Laser Game Bot
Title: Laser Game Bot
Description: Laser game between an autonomous robot and a remote controlled robot.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Lupin
Title: Lupin
Description: Development of a Robogame
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Mr. Mike
Title: Mr. Mike
Description: The goal of the project is to develop an interactive robot for children affected by autism or phisical impairments. The robot reacts to the kid's manipulation showing different emotions.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: POLIFemo
Title: POLIFemo
Description: Roomba-based robogame. It uses the Pixy camera.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Pac-Bot
Title: Pac-Bot
Description: The goal of the project is to develop an interactive game between an autonomous robot and a remotely-controlled one, based on the rules of the well-known Pac-Man game.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Pokety
Title: Pokety, a pocket robot
Description: The purpose of the project is to manifacture a pocket-size interactive robot for the amusement of children affected by autism or dyspraxia. The robot has its own personality, which is displayed in accordance with kid's movements.
Coordinator:
|
Wiki Page: RoboArena
Title: RoboArena
Description: Robogame where the player have to prevent the robot from touching the columns of the arena, using only his remote control.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
… further results
Robot development
Wiki Page: AGW
Title: AGW - Automatic Guided Wheelchair
Description: Control system design of an electric wheelchair for autonomous drive with obstacle avoidance
Coordinator:
|
Wiki Page: Adaptive Behaviors for Robogames
Title: Adaptive Behaviors for Robogames
Description: The goal of the project is to develop a system to adapt behaviors of a robot to the way of playing of a human player
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Adaptive Predicates
Title: Adaptive Predicates
Description: Adapting predicates to the robot needs
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Affective Robot force sensor
Title: Affective Robot force sensor
Description: Implementation of a new force sensor for the robot used in affective rehabilitation
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Autonomous Robot for emotional interaction
Title: Autonomous Robot for emotional interaction
Description: Expressing emotions in interaction with children wih disabilities.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Balancing robots: Tilty, TiltOne
Title: BalancingRobots
Description: Meta-project about balancing robots.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Ballbot
Title: Ballbot
Description: A unicycle robot, running on a ball
Coordinator: MatteoMatteucci (warning.pngThe part "|MatteoMatteucci" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: C-SLAM
Title: C-SLAM
Description: Development of a Cognitive SLAM system
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Cestino
Title: Cestino
Description: A trash basket with a character
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Concierge
Title: Concierge
Description: Development of an emotional concierge head
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: CrickBot
Title: CrickBot
Description:
Coordinator: GiuseppinaGini (warning.pngThe part "|GiuseppinaGini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Crocobot
Title: Crocobot
Description: Game for children with physical impairments
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: DiffDrivePlanner
Title: Search-based Differential Drive Planner
Description: A Search-Based Trajectory Planner for differential drive vehicles in ROS Context
Coordinator: MatteoMatteucci (warning.pngThe part "|MatteoMatteucci" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: E-2? - A robot for exhibitions
Title: E-2? - A robot for exhibitions
Description: A robot to interact with people at an exhibition
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: E-2? Behaviors
Title: E-2? Behaviors
Description: development of behaviors for E-2?
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: E-2? Body
Title: E-2? Body
Description: Development of a new body for E-2?
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: E2GoHome
Title: E2GoHome
Description: The goal of the project is to develop a system to bring E-2? home while maintaining a relationship with people that interacts with it.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: EKF on Manifolds
Title: EKF on Manifolds
Description: Extended Kalman Filtering operating on Lie Groups
Coordinator: MatteoMatteucci (warning.pngThe part "|MatteoMatteucci" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: EMBOT
Title: EMBOT
Description:
Coordinator: GiuseppinaGini (warning.pngThe part "|GiuseppinaGini" of the query was not understood.
Results might not be as expected. )
|
Wiki Page: Emotional Bioinspired Control
Title: Emotional Bioinspired Control
Description: A control system able to control motors to emulate the movement of biological entities, with the possibility to show emotional features at control level.
Coordinator: AndreaBonarini (warning.pngThe part "|AndreaBonarini" of the query was not understood.
Results might not be as expected. )
|
… further results
SLAM
Wiki Page: OmniSLAM
Title: OmniSLAM
Description: Simultaneous Localization and Mapping (SLAM) using omnidirectional cameras
Coordinator: MatteoMatteucci (warning.pngThe part "|MatteoMatteucci" of the query was not understood.
Results might not be as expected. )
|
People
Project Proposals
Wiki Page: 3D Scene Understanding
Title: 3D Indoor scene understanding and layout reconstruction for a mobile robot in collaboration with UnimiB
Description: The proposed project aims to reconstruct the 3D structural layout of an indoor environment perceived by a mobile robot. From the sensorial data, the robot should be able to reconstruct a geometrical structure of an indoor environment (e.g., an office).
Methods for indoor layout reconstruction must be significantly more tolerant to missing data than their outdoor counterparts, since environments such as offices and apartments exhibit extremely high levels of clutter, which typically results in heavy occlusions of walls and other structures of interest, large-scale artifacts, noise and missing data.
The proposed work will be developed in collaboration with IRALAB, the Robotics Lab of University of Milano Bicocca.
The work will be based on an existing project, Free Your Camera (http://www.ira.disco.unimib.it/research/robotic-perception-research/free-your-camera-3d-indoor-scene-understanding-from-arbitrary-camera-motion/) and will be part of a robotic framework based on with ROS and in development at IRALAB.
Tutor: FrancescoAmigoni, MatteoLuperto
Additional Info: CFU 10 - 20 / Master of Science / Thesis
|
Wiki Page: Autistic Children Play Robot
Title: Autistic Children Play Robot
Description: Within a Polisocial project we will have to implement a robot suitable to play autonomously with autistic children that will interact with it and a game system by gestures.
The thesis will explore some of the aspects of the problem, eventually participating to the production of prototypes to be tested with real users.
The thesis gives the possibility to develop a robot with special requirements, and to work with gesture interpretation by using devices such as Kinect or the WII Mote. The work is done in an interdisciplinary group including care givers and designers.
Tutor: AndreaBonarini
Additional Info: CFU 20 - 20 / Master of Science / Thesis
|
Wiki Page: Automatic Differentiation Techniques for Real Time Kalman Filtering
Title: Evaluation of Automatic Differentiation Techniques for Gauss-Newton based Simultaneous Localization and Mapping
Description: In Gauss-Newton non linear optimization one of the most tedious part is computing Jacobians. At the AIRLab we have developed a framework for non linear Simultaneous Localization and Mapping suitable for different motion models and measurement equations, but any time you need to change something you need to recompute the required Jacobian. Automatic differentiation is a tool for the automatic differentiation of source code either at compiling time or at runtime; we are interested in testing these techniques in the software we have developed and compare their performance with respect to (cumbersome) optimized computation.
Material
Expected outcome:
New modules implementations based on automatic differentiation
A comparison between the old stuff and new approach
Required skills or skills to be acquired:
- C++ programming under Linux
Tutor: MatteoMatteucci
Additional Info: CFU 10 - 20 / Master of Science / Thesis
|
Wiki Page: Barking Robots
Title: Barking Robots
Description: Aim of this project is the development of a robot that can operate autonomously at exhibitions and malls to attract people to a given location, by showing interesting behaviors and interacting with people.
The robot first exhibition has been at Robotica 2009, within HI-Tech Expo at Fiera di Milano, on November 23-25, 2009. Here, the robot had to go around in an area delimited by a white stripe and contact verbally and with gestures people entering the area, in order to attract them to the booth.
Behaviors and gestures have still to be developed to come to an interesting and robust demo at next Robotica, or at other ehibits (e.g. at the Museo della Scienza of Milan).
Tutor: AndreaBonarini
Additional Info: CFU 5 - 20 / Bachelor of Science, Master of Science / Thesis
|
Wiki Page: CAN Bus bootloader for STM32 microcontrollers
Title: CAN Bus bootloader for STM32 microcontrollers
Description: JOINT PROJECT with the Embedded Systems group (contact: Patrick Bellasi http://home.dei.polimi.it/bellasi/)
In order to speed up the development and the maintenance of embedded applications, a way to update the firmware on a microcontroller without the need of connecting cables or programmers can be very handy. We are developing a framework for rapid prototyping of low-cost robots, with smart devices that exchange data on a CAN bus network. The CAN bus bootloader is one of the components we need for this project, enabling remote firmware upgrades of all the devices connected to the CAN network.
This project aims to develop a CAN bus bootloader for STM32 ARM Cortex-M3 microcontrollers, and eventually for other architectures.
Tutor: AndreaBonarini, MartinoMigliavacca
Additional Info: CFU 2 - 5 / Bachelor of Science, Master of Science / Course
|
Wiki Page: Cognitive SLAM
Title: Cognitive SLAM
Description: We have developed a system that is able to detect, recognize and track objects in an image taken from a low cost robot equipped with a IMU and a low cost camera. The system is capable to detect and recognize objects using a user defined fuzzy tree classifier. However the system performance is heavily dependent on high level feature extraction, such as geometric features. The problem is non trivial due to noisy low cost camera and changes in the light conditions. The aim of this project is to improve the feature extraction and description process, both in performance and quality, possible adding a more complete description or others type of features. The long term aim of the research is to have an autonomuos robot capable to create a semantic map of the envirorment, localize himself , make inference on the map, navigate into the envirorment using the objects as landmarks.
No special skills are required, except basic c and object oriented programming.
Tutor: AndreaBonarini, DavideTateo
Additional Info: CFU 5 - 20 / Master of Science / Course, Thesis
|
Wiki Page: Designing Living Objects
Title: Designing Living Objects
Description: The aim of this activity is to investigate how one or more objects in an antropic environment (home, office, hospital) can be designed and implemented to have a character and to move, having nice interactions with people. The work to be done concerns the analysis, definition, design and implementation of at least one of these objects.
Tutor: AndreaBonarini
Additional Info: CFU 5 - 20 / Bachelor of Science, Master of Science / Thesis, Course
|
Wiki Page: Electromagnetic kicker for middle-size RoboCup soccer robots
Title: Electromagnetic kicker for middle-size RoboCup soccer robots
Description: The Milan RoboCup Team, a team of soccer robots that play in the Middle Size league of RoboCup (1) employs as kicker an electromagnetic device entirely designed within the AIRLab with external collaborations such as the Energetic department at Politecnico di Milano and the Electronics section at DEI. Basically, the device consists of a solenoid, a capacitor and a PIC-based board that controls (through an external integrated circuit) the charge of the capacitor at 400V (using the 24V batteries of the robot) and the generation of the magnetic field in the solenoid. The magnetic field accelerates a metallic cylinder that hits the soccer ball.
The aim of the project is to design, implement, test, and evaluate a new version of the device. While the charge phase, implemented by an ad-hoc IC controlled by the PIC, is quite efficient, some work has to be done in order to design a new solenoid and improve the way the PIC implements a sort of modulation of strength of the shoot, in order to implement small passages between robots. The final purpose is to improve the efficiency of the system, with the aim of minimize the energy consumed and maximize the energy transmitted to the ball, in order to obtain more powerful shots.
The first part of the project is focused on some theoretical aspects in order to understand the current design and evaluate how to improve it, while the second phase will be focused on the implementation and test of a new prototype of the kicking device. Experience with PIC-based systems is a plus, but not required, while some experience with electronics circuits is highly recommended. Students are supposed to work in the lab following a set of safety guidelines and rules with circuits at 400V, with 10A pick current during charge phase, and even more during shots. Student from electronics engineering are really welcomed to choose this project.
- http://www.er.ams.eng.osaka-u.ac.jp/robocup-mid/index.cgi
Tutor: LuigiMalago, MarcelloRestelli, MartinoMigliavacca
Additional Info: CFU 5 - 5 / Master of Science / Course
|
Wiki Page: Embedded registers view plug-in for Eclipse
Title: Embedded registers view plug-in for Eclipse
Description: JOINT PROJECT with the Embedded Systems group (contact: Patrick Bellasi http://home.dei.polimi.it/bellasi/)
When developing embedded applications it is frequently needed to look at *hardware register content* in order to *debug the code*. All commercial development suites offer register views that show their contents as well as the meaning of each bit. Open source development solutions currently lack this feature, meaning that you have to look to the correct memory location and map the content to the corresponding register bits manually. This seems to be one of the most limiting issues when developing embedded application using open source solutions.
This project aims to fill this gap, developing an Eclipse plug-in that shows the register contents in a tree viewer, like most commercial suites do.
Tutor: AndreaBonarini, MartinoMigliavacca
Additional Info: CFU 2 - 5 / Bachelor of Science, Master of Science / Course
|
Wiki Page: Extended Kalman Filtering on Manifolds
Title: Extended Kalman Filtering on Manifolds
Description: Extended Kalman filtering is a well known technique for the estimation of the state of a dynamical system also used in robotics for localization and mapping. However in the basic formulation it assumes all variables to live in an Euclidean space while some components may span over the non-Euclidean 2D or 3D rotation group SO(2) or SO(3). It is thus possible to write tha Extended Kalman filter to operate on Lie Groups to take into account the presence of manifolds (http://www.ethaneade.org/latex2html/lie/lie.html). We are interestend in investigation this further applying it to the EKF-SLAM framework we have developed.
Material:
- papers about Manifold based optimization and space representations
- C++ framework for EKF-SLAM
Expected outcome:
- An extended Kalman filter which uses this new representation
Required skills or skills to be acquired:
- Good mathematical background
- C++ programming under Linux
Tutor: MatteoMatteucci, SimoneCeriani, DavideCucci
Additional Info: CFU 20 - 20 / Master of Science / Thesis
|
Wiki Page: LCM middleware on embedded platform
Title: LCM middleware on embedded platform
Description: We are developing a framework for rapid prototyping of low-cost robotic systems. To fasten robot design and building, and to make software and hardware reuse easier, a modular architecture is mandatory.
In a context of smart modules that have to cooperate by exchanging data to reach their common goal, the communication protocol and middleware are core components.
This project is about the middleware component, a publish/subscribe system that takes care of managing topics, publisher and subscribers, and of marshaling data before sending it.
This project aims at porting the LCM marshaling and middleware library, developed at MIT and used in the Grand Challenge competition, to embedded systems, in order to exploit the existing LCM tools and to be compliant with an existing and efficient technology.
The project consists in:
- stripping non necessary features of LCM to match the constraints of an embedded system and of the communication protocol
- adding necessary features, like the concept of deadline (and priority as a consequence), that are mandatory for a real time distributed system
- building a gateway, on an embedded platform, that acts as gateway between the standard-LCM world and the embededd-LCM network
The projects has to be developed in ANSI C, and experience with embedded platforms is a plus.
Tutor: AndreaBonarini, MartinoMigliavacca
Additional Info: CFU 20 - 20 / Master of Science / Thesis
|
Wiki Page: MoonSLAM Reengineering
Title: Reengineering of a flexible framework for simultaneous localization and mapping
Description: In the last three years a general framework for the implementation of EKF-SLAM algorithm has been developed at the AIRLab. After several improvements it is now time to redesign it based on the experience cumulated. The goal is to have an international reference framework for the development of EKF based SLAM algorithms with multiple sensors (e.g., lasers, odometers, inertial measurement ) and different motion models (e.g., free 6DoF motion, planar motion, ackerman kinematic, and do on). The basic idea is to implement it by using C++ templates, numerically stable techniques for Kalman filtering and investigation the use of automatic differentiation. It should be possible to seamlessly exchange motion model and sensor model without having to write code beside the motion model and the measurement equation.
Material
- lots of theoretical background and material
- an existing (and working) C++ implementation of the framework
Expected outcome:
- a C++ library for the implementation of generic EKF-SLAM algorithms
Required skills:
- Experienced C++ programming under Linux
Tutor: MatteoMatteucci
Additional Info: CFU 20 - 20 / Master of Science / Thesis
|
Wiki Page: Odometric system for robots based on laser mice
Title: Odometric system for robots based on laser mice
Description: We developed an odometric system for robots by combining the reading of several laser mice. The system consists of a master PIC-based board and several slave boards where the sensors employed in optical mice are located. The readings are collected on the PIC and sent on the serial port to a PC which elaborates and combines the x and y readings in order to obtain a x,y,theta estimation of the movement of the robot.
The aim of the project is first to improve the current design of the PIC-based board, and realize a new working prototype, and then to implement and evaluate different algorithms able to estimate more precisely the x,y and theta odometric data from the mice readings. Experience with PIC-based systems and some experience with electronics circuits is a plus. Students are supposed to redesign the electronic board, improve the firmware of the PIC, and work on the algorithm that estimates the robot position on the PC. It would be also interesting to evaluate the possibility to embed the optimization and estimation
algorithms in the firmware of the PIC in order to produce a stand-alone device.
Ask the tutors of the project for extra material, such as data-sheets and other documentation.
Tutor: MatteoMatteucci, LuigiMalago, MarcelloRestelli
Additional Info: CFU 5 - 20 / Master of Science / Course, Thesis
|
Wiki Page: R2P IMU firmware development
Title: Embedded Inertial Measurement Unit for Unmanned Aerial Vehihcles
Description: We have developed the electronics of an Inertial Measurement Unit based on an ARM microcontroller to be integrated on an autonomous embedded aerial platform. The IMU has already some attitude heading reference system (AHRS) code implemented, but we are interested in:
- implementing embedded algorithms for the estimation of the IMU attitude to be compared with the actual one (e.g., Kalman filter, DCM, Madgwick, etc.)
- developing a, easy to use, procedure for the calibration of IMU parameters
- making a comparison with commercial units using a robot arm as testbed
- validate the accuracy of the IMU on a flying platform
- integrate the measurements from a GPS to reduce drift and provide accurate positiong (this will make it definitely a MS thesis)
Material
- electronic board and eclipse based C development toolkit for ARM processors
- papers describing the algorithms we are interested in implementing
Expected outcome:
- few different AHRS algorithms with comparative results
- user-friendly procedure to calibrate the IMU
- a sistem which integrated IMU and GPS to provide accurate positioning
Required skills or skills to be acquired:
- C programming on ARM microcontroller
- background on kalman filtering and attitude estimation
Tutor: AndreaBonarini, MartinoMigliavacca, MatteoMatteucci
Additional Info: CFU 2 - 20 / Bachelor of Science, Master of Science / Course, Thesis
|
Wiki Page: Robocentric MoonSLAM
Title: Robocentric implementation in the MoonSLAM framework
Description: Simultaneous Localization and Mapping (SLAM) is one of the basic functionalities required from an autonomous robot. In the past we have developed a framework for building SLAM algorithm based on the use of the Extended Kalman Filter and vision sensors. The actual implementation of the EKF SLAM in the framework developed uses a world-centric approach, but from the literature it is known that a robocentric approach can provide higher performances on small maps. We would like to have both implementation to compare the results in two scenarios: pure visual odometry, conditional independent submapping.
Material
- A framework for multisensor SLAM using the world centric approach
- Papers and report about robocentric slam
Expected outcome:
- a fully functional robocentric version of the MoonSLAM framework
Required skills or skills to be acquired:
- Basic background in computer vision
- Background in Kalman filtering
- C++ programming under Linux
Tutor: MatteoMatteucci, SimoneCeriani
Additional Info: CFU 20 - 20 / Master of Science / Thesis
|
Wiki Page: Robot Games
Title: Robot Games
Description: Projects may include the design of an interactive game on an existing or a new robot, and its evaluation. These projects allow to experiment with real mobile robots and interaction devices. Some games may be designed for disabled children. The project can be considered a MS thesis if it can produce a new game and, possibly, a new robot, and includes adapting the behavior of the robot to the player.
Tutor: AndreaBonarini
Additional Info: CFU 2 - 20 / Bachelor of Science, Master of Science / Course, Thesis
|
Wiki Page: Scan Matching Odometry and Multisensor SLAM
Title: Scan Matching Odometry and Multisensor SLAM
Description: Starting from some C/C++ code for laser scan alignment and the covariance information associated to the matching, we are interested in the development of a library for the matching and fusion of laser scans under the ROS (www.ros.org) environment. From this we are interested in the development of an odometric system based on laser scan matching and in a Simultaneous Localization and Mapping system integrating scan matching with visual SLAM. The result is a complete navigation system that fuses laser and visual information to build consisten maps in an EKF-based environment.
Material:
- a MS thesis which describes the scan matching algorithms
- a BS thesis which implements a prototype of the system
Expected outcome:
- a complete system that build maps integrating laser scan and visual informtion
Required skills or skills to be acquired:
- Background on Kalman filtering
- C++ programming under Linux
Tutor: MatteoMatteucci, SimoneCeriani, DavideCucci
Additional Info: CFU 10 - 20 / Bachelor of Science, Master of Science / Thesis
|
Wiki Page: Scripting language on embedded platforms
Title: Scripting language on embedded platforms
Description: JOINT PROJECT with the Embedded Systems group (contact: Patrick Bellasi http://home.dei.polimi.it/bellasi/)
When developing embedded applications it is common the need to test some algorithm in some fast way, without to re-program the whole firmware every time. PAWN (http://www.compuphase.com/pawn/) is a *simple and lightweight scripting language with a C-like syntax*. Execution speed, stability, simplicity and a small footprint were essential design criteria for both the language and the abstract machine, making PAWN suitable for embedded applications.
This project aims to port the abstract machine to ARM Cortex-M3 microcontrollers, add a set of functions to interface with the underlying hardware peripherals and then to embed it as ChibiOS/RT (http://www.chibios.org) thread.
Tutor: AndreaBonarini, MartinoMigliavacca
Additional Info: CFU 2 - 5 / Bachelor of Science, Master of Science / Course
|
… further results
Past Projects
Resources
Theories and useful algorithms