Press category
Other posts
Deambulatore robotizzato e intelligente 10 Settembre 2024
1b. Didattica interattiva con Matlab ed accelerometri piezoelettrici in aula 3 Marzo 2024
Condurremo tre cicli di lezioni interattive impiegando i live script di Matlab e segnali audio ed accelerometrici acquisiti in aula.
Impiegheremo accelerometri ICP ceramici della PCB Piezotronics le cui caratteristiche sono su sito
Qui una introduzione da parte del produttore.
Di seguito gli argomenti trattati durante i tre cicli di lezioni:
- Misura di similarità tra set di dati, vettori ed estensione ai segnali tempovarianti. Introduzione al concetto della Cross Correlazione tra segnali tempovarianti e suo impiego per la misura dei ritardi temporali e sue applicazioni nei vari ambiti dell’ingegneria con particolare approfondimento ai segnali audio ed accelerometrici.
- Qui trovate un live script che introduce i concetti della similarità: pdf e live script
- Qui trovate l’applicazione ai segnali tempovarianti discreti (campionati): pdf e live script
- Qui trovate l’applicazione alla misura dei ritardi temporali tra segnali audio: pdf e live script
- Qui trovate l’applicazione alla misura dei ritardi temporali tra segnali accelerometrici: pdf e live script
- Trasformata di Fourier.
- Funzione di trasferimento nel dominio della frequenza.
2023/24 Homeworks 19 Dicembre 2023
Hereafter 3 the topics that this year you can develop in maximum 2 students and present (at the oral exam)
1. Complementary filtering
Use an optimization framework to find the coefficients of each filter without any constraint (i.e. making the optimization algorithm find the numerator and denominator coefficients independently).
Then:
- verify if the two filters are complementary
- study the effect of the input signal (the ‘true’ height as a function of time) effect on the filters in output to the optimization algorithm. Try to change the input signal and correlate with the quality of the results
Reward:
- +1 if the work is clear and complete
- +2 if the work is outstanding and add something to the above points
LIDAR scan matching
We will use a LIDAR and a model in scale of an indoor environment. Here the Data sheet, here the user manual
Data available
We acquired two preliminary data: here and here couple of Lidar scan
New Data:
- shot0.mat = scansione di riferimento (fatta in modo da essere il più simile possibile al primo file che ha condiviso su miro ieri)
- shot1.mat = scansione traslata rispetto ad un asse di 16cm (fatta in modo da essere il più simile possibile al secondo file che ha condiviso su miro ieri)
- shot2.mat = scansione ruotata di +30 gradi rispetto a shot1.mat
- shot3.mat = scansione ruotata di -30 gradi rispetto a shot0.mat
The code to read the data:
% Load the file
current_shot = load(‘shot0.mat’);
% Take the different components of the file
shot_lidarOBJ = current_shot.scan; % shot taken as lidar object
% Lidar Pose
lidar_pose = [current_shot.x_lidar, current_shot.y_lidar, current_shot.theta_lidar];
% Plot the shot and the lidar position
R = 70; % Used to view lidar orientation on plot
figure();
hold on
plot(shot_lidarOBJ);
plot(lidar_pose(1), lidar_pose(2),’.r’, ‘MarkerSize’,30);
plot([lidar_pose(1),lidar_pose(1)+R*cos(lidar_pose(3))], [lidar_pose(2),lidar_pose(2)+R*sin(lidar_pose(3))], …
‘r’, ‘LineWidth’,3);
2. LIDAR scan matching through Probabilistic Occupancy Maps
Reward:
- +1 if the work is clear and complete
- +2 if the work is outstanding and add something to the above points
Here some slides given during the course
3. LIDAR scan matching through Landmarks extraction
Reward:
- +2 if the work is clear and complete
- +3 if the work is outstanding and add something to the above points
Here some slides given during the course
Here slides about RANSAC
Here an example of plane fitting with RANSAC in 3D
Here slides about HOUGH Transform from a colleague (Prof. Elli Angelopoulou)
IMPORTANT NOTICE: if you plan to do this 3rd homework please write an email to prof. De Cecco with:
Subject: [HOMEWORK – LIDAR matching Landmarks] (copy exactly)
Text: specify if alone or in two + period of work (january, february)
Then I’ll write you an email with some dates to focus on your developments in January (after 15th) and February
Non Linear Optimization with Matlab 22 Settembre 2023
Mobile Robotics 2023-2024 10 Febbraio 2024
Please visit this link to access to some general purpose books and notes.
Let me highlight the invaluable booklet written by Luca Baglivo and other colleagues from Mechatronics Department at UNITN that is a real compendium of 2/3 of the course. Here almost the same book up to dated with notes made during the years.
Hereafter teaching and technical material mainly produced during the present 2023-2024 academic year:
PART I – WHEELED MOBILE ROBOTS
- [Wed, 13 September 2023] Slides of Lecture 1 “Kinematics – Part 1” (video):
- Autonomous and Wheeled Mobile Robots (WMRs) introduction.
- Mechanical and theoretical aspects of wheel modeling.
- Geometric and analytic introduction to unicycle, bicycle/car-like (FD and RD) mathematical constraints and other kinematic models.
- Mechanics constraints imposed by wheel configuration, WMR mobility, steerability and DOFs.
- Kinematics/mechanical classifications and some other tips, one might refer to this document.
- Moreover I would like to mention some slides about kinematics also in ppt format of colleagues which clarify some peculiar aspects of omnidirectional (3,0) WMR kinematics.
- Moreover, here there are some notes about Swedish wheels dynamics and application on mobile robots.
- [Thu, 14 September 2023] Slides of Lecture 2 “Kinematics – Part 2” (video):
- An introduction to Unicycle, Bicycle, Car-like and other kinematic models.
- About mechanics constraints of wheels, WMR mobility and steerability,
- Kinematics/mechanical classifications and some other tips, one might refer to this document.
- [Fri, 15 September 2023] Slides of Lecture 3 “Kinematics – Part 1 and 2 – MATLAB tutorial” (video):
- First Matlab tutorial about Unicycle kinematics, math models and dynamical system evolution.
- [Wed, 4 October 2023] Slides of Lecture 4 “Kinematics – Part 3” (video):
- We completed the kinematics model presentations that were still in Lecture 2 slides.
- [Wed, 11 October 2023] Slides of Lecture 5 “Kinematics – Part 3 – MATLAB tutorial” (video):
- Odometry localization with proprio-ceptive sensors.
- Second Matlab tutorial about non-trivial unicycle kinematics, Front- and Rear-Driven Car-like kinematics, etc.
- The slides will be delivered after the tutorial, in order to carry out the exercises.
PART II – PATH-PLANNING
- [Wed, 18 October 2023] Slides of Lecture 6 “Path planning (Part 1) and a MatLab tutorial” (video):
- Starting to link with the path/traj planning issues; a few controller structures are presented.
- Path and Trajectory “extension” is discussed and the approach correctly addressed with the introduction of the time scaling for kinematic models and the differential flatness for nonlinear dynamic systems.
- Point-to-point path planning in C-space and W-space.
- Polynomial interpolation in both C-and W-space.
- Cubic polynomial interpolation in time, quintic polynomial interpolation ti fix initial and final positions, velocities and accelerations at once.
- Higher-order polynomial fitting to take advantage from specific WMR performance.
- [Thu, 19 October 2023] Slides of( FLASHFORWARD) Lecture 7 “PID controller and tuning with the Ziegler-Nichols approaches and MATLAB tutorial” (video):
- Dynamic Systems and PID controllers, system stability, transient and permanent regimes and other basic considerations.
- Introduction to the Ziegler-Nichols self-oscillation and step-response methods, calculations, results and system simulation.
- MATLAB code.
- [Fri, 20 October 2023] Slides of Lecture 8 “Chained-form and MATLAB tutorial” (video):
- Introduction to system flatness vs. controllability vs. accessibility.
- Considerations about driftless systems.
- Nonlinear coordinate change, inputs re-redefinition and eigenvector “self-containing” span (meaning involutivity even without mentioning it!)
- Chained-form with polynomial inputs.
- Chained-form application to improve robustness (link).
- MATLAB tutorial.
- Further material about unicycle Point-to-point path planning (Minotto – De Cecco) in chained-form and and notes on its use with piecewise constant inputs.
PART III – PATH AND MOTION CONTROL
- [Wed, 25 October 2023] Slides of Lecture 9 “Path-planning and motion (with a bit of control) – Part 2 and a MATLAB tutorial” (video):
- Clothoid’s approach.
- Roadmap building online-offline strategies (diagrams, graphs, potential fields.
- MATLAB tutorial with clothoid implementation.
- Continuous curvature path planning (Baglivo – De Cecco).
- [Fri, 27 October 2023] Slides of Lecture 10 “Roadmapping – Part 1: the global planning” (video):
- Canonical problem and C-Space
- Global planning via optimal searching algorithms
- A short note about “Voronoi Diagram Based Roadmap Motion Planning“.
- Another short note of “Robot motion planning using exact cell decomposition and potential field methods” coding.
- A few further notes about “Cell decomposition” (exact and approximated).
- [Fri, 1 December 2023] Slides of Lecture 10 “Pure pursuit motion and control and a MATLAB tutorial” (video):
- About two-wheels kinematics and Heuristic-based control (e.g. bicycle and a rhombic cart).
- Further material about algebra and geometry of a 2-steerable and actuated wheel vehicle.
- An example in Matlab that implement the Pure Pursuit path control and another geometric method. Here the MATLAB files main file with two examples of control law
- Material is in the Mobile Robotics article here and here but you can find anywhere in the net other examples of heuristic controllers
- A link to an interesting document from Carnegie Mellon University.
- [Fri, 17 November 2023] Slides of Lecture 11 “Path-following with Cubic Interpolator and feedback control and a Matlab Tutorial” (video).
- [Fri, 22 November 2023] Slides of Lecture 12 “Roadmapping with artificial potential field method and others – Part2” with a MATLAB tutorial (video):
- done !
In order to aim your efforts, I provide here a sample list of typical questions.
WHAT ABOUT A STUDENT INTERACTIVE LESSON?
Continua la lettura →2022-2023 Interactive Lesson in Mobile Robotics: path planning
Fab Lab Accelerometro 2023 10 Febbraio 2024
Foto – Workshop sulla parte di stampa 3D e proggetazione della meccanica e del principio di trasduzione dell’accelerometro, tenuto da me e Luca Vassallo il 02/05.
Di seguito i 6 gruppi:
Dimensioni micrometro che dovreste utilizzare per effettuare la taratura della misura di spostamento relativo:
Date importanti:
- 2 maggio ore 15:00 workshop stampa 3D meccanica. Qui le slide proiettate da Luca. Qui i miei appunti sui possibili principi di trasduzione della accelerazione.
- 9 maggio ore 15:00 workshop elettronica. Qui le slide proiettate da Alessandro.
- 16 maggio ore 13:30 revisione critica progetti
- 5 giugno alle 10:30 in aula solita lezioni. Portate vostro PC che collegherete al proiettore dell’aula esponendo una sintesi del vostro progetto sia parte elettronica che meccanica. In questo modo condivideremo assieme (docenti e vostri colleghi studenti) e potremo certamente migliorare/evolvere i progetti in essere .
GRUPPO 3
Funzionamento:
Il nostro accelerometro è un sensore in grado di misurare l’accelerazione lungo un asse. Esso è basato su un
sistema massa-molla-smorzatore, dove lo scostamento della massa rispetto al telaio è proporzionale
all’accelerazione che sperimenta. Lo scostamento della massa viene misurato attraverso una trasduzione
ottica differenziale. Per realizzare la trasduzione sono presenti due coppie di LED e fototransistor fissi a
telaio, mentre tra di loro si interpone una maschera connessa alla massa mobile. Le maschere sono a V, una
verso l’alto e l’altra verso il basso, cosicché uno spostamento della massa consiste in un aumento della
quantità di luce che arriva su un fototransistor, e una diminuzione per l’altro. Il fototransistor produce una
corrente proporzionale alla quantità di luce incidente; la corrente viene convertita in un segnale di tensione
grazie all’OpAmp OP07. Infine viene fatta la differenza dei due segnali con l’amplificatore differenziale
AD623, il quale consente anche di amplificarla.
Progettazione:
La parte meccanica è stata prodotta mediante stampa 3D. I disegni delle parti meccaniche sono stati
realizzati sul software Fusion360, il quale permette un disegno parametrico. Questi sono stati poi trasferiti
sul software Cura per creare i file di slicing, contenenti il g-code necessario per la fabbricazione.
L’approccio di progettazione è stato quello di realizzare dei collegamenti mobili, regolabili (e. g. asola invece
che foro) per poter modificare le posizioni e i parametri del sensore.
Per la parte elettronica si è pensato di riutilizzare, date le somiglianze, il circuito di trasduzione adoperato in
un encoder ottico, e di mandare in input ad un amplificatore differenziale i segnali generati dai
fototransistor.
Il circuito è stato disegnato su KiCAD, e da esso si è realizzato il progetto per fabbricare la PCB. Prima di
produrre la PCB si è verificato che il circuito funzionasse realizzandolo su una breadboard. Infine è stata
prodotta la PCB con una fresa CNC, e i componenti sono stati saldati.
QUI per altri dettagli
GRUPPO 1
GRUPPO 4
Continua la lettura →MPC controller for unicycle robot 19 Settembre 2023
Interactive lesson – Alessandro Assirelli
Program
1. Introduction to optimal control and how can we solve it
2.CasADi (click here: intro_casadi)
3. Trajectory optimization
4. MPC (click here: Main_OCP)
YOU CAN DOWNLOAD ALL THE MATLAB CODES HERE
Continua la lettura →Pose Estimation with Singular Value Decomposition 19 Settembre 2023
Interasti lesson – Matteo Dalle Vedove
2022 – Laser rangefinder navigation 31 Gennaio 2023
You can use the SLAM toolbox of matlab but also use the Singular Value Decomposition that we are going to see in the course, at least to estimate incrementally the motion between two scans
Balyo DATA
Continua la lettura →Interactive Augmented Reality loaded pallet shape checking experience 18 Settembre 2023
USER EXPERIENCE: An interactive Augmented Reality demo on loaded pallet shape measurement and checking by three simulated Time-of-Flight cameras will be provided to the user wearing a HoloLens 2 head-mounted display.
After the pallet enters the scanning area, the point clouds from the simulated cameras will allow the user to understand how the system works and the result of the load size with respect to the pallet will be shown to him by highlighting the out-of-shape areas. The user can then move with his hands the above box with physical properties to another position and through a smartphone interface a new scan will be launched and the dimensions of the load will be checked in this new configuration. An initial calibration using a 2D Vuforia marker is necessary to save the reference system of the demo in the real environment.
Continua la lettura →