Introduction to robotics
Spis treści
Informacje ogólne
Wykład: dr inż. Radosław Cechowicz
Laboratorium: dr Paweł Stączek, dr inż. Radosław Cechowicz
Koło naukowe: mgr inż. Krystian Łygas
Plan wykładu
W1 Rozwój idei robotów i robotyki, przegląd zastosowań robotów, roboty humanoidalne
Robotyka w literaturze: Karel Capek, Izaak Asimov, Mary Shelly. Inżynierowie i wynalazcy: Jacques de Vaucanson, Joseph Jacquard, Henri Maillardet
Historia robotów humanoidanych: al-Jazari, Leonardo da Vinci, Juanelo Turiano, Pierre Jaquet Droz, Joseph Faber, Joseph Barnett.
Współczesne roboty humanoidalne. Funkcjonowanie w świecie ludzi, ratownictwo przemysłowe, DARPA Robotics Challenge. Rozrywka, taniec. Konstrukcje: HRPx, Nao, roboty używane do badań naukowych, Asimo (Honda), Justin (DLR), Nexi (MIT), kończyny bioniczne, roboty muzyczne. Problem programowania ruchu robota kroczącego. Interakcja z ludźmi: reakcja na polecenia, gesty, komendy głosowe.
W2 Roboty przemysłowe
Historia współczesnych robotów przemysłowych: George Devol, Joseph Engelberger, Viktor Sheinmann.
Konstrukcje: Unimate, Stanford Arm, PUMA, SCARA.
Typowe zastosowania (z przykładami aplikacji): zgrzewanie punktowe, spawanie ciągłe, montaż karoserii samochodowych, automatyzacja transportu, sortowanie, montaż, paletyzacja, malowanie, obsługa maszyn CNC, bezpośrednia obróbka elementów (szlifowanie, polerowanie, formowanie blach)
Materiały pomocnicze:
Biografie:
George Devol: A Life Devoted to Invention, and Robots
George C. Devol, 99, self-taught tinkerer who invented robotic arm
Joseph F. Engelberger
Victor Sheinman
Zaproszenie:
Targi Automaticon
W3 Podstawowe pojęcia z kinematyki i dynamiki robotów, cz.1
Opis kinematyki robota: wybór zestawu parametrów konfiguracyjnych, współrzędne uogólnione, opis punktu i ciała sztywnego w przestrzeni, opis położenia robota we współrzędnych maszyny, stopień redundancji konstrukcji, macierz rotacji, wektor przesunięcia, macierz translacji, interpretacja i zastosowanie macierzy translacji, działania na macierzach, reprezentacja przesunięcia i obrotu w różnych układach współrzędnych (kartezjański, cylindryczny, sferyczny), formy zapisu obrotu (obrót wokół stałego układu współrzędnych, kąty Eulera, parametry Eulera), przekształcenie odwrotne, osobliwość reprezentacji, opis przegubu o jednym stopniu swobody, parametry Denavita-Hartenberga, układy współrzędnych związane z przegubami, przykłady.
Obszar roboczy, zasięg robota.
Materiały pomocnicze:
Introduction to Robotics - O. Khatib - Stanford Engineering Everywhere
Manipulatory i roboty mobilne: modele, planowanie ruchu, sterowanie - K.Tchoń, A.Mazur, I.Dulęba, R.Hossa, R.Muszyński
Modelowanie i sterowanie robotów - K. Kozłowski, P. Dutkiewicz, W. Wróblewski
RoboDK - symulator robotów przemysłowych
RTSX - pakiet narzędzi do symulacji robotów (Scilab)
W4 Podstawowe pojęcia z kinematyki i dynamiki robotów, cz.2
Kimenatyka prosta: opis robota szeregowego, przykład – robot PUMA.
Opis położenia chwytaka: wektor cosinusów, obrót wokół stałego układu współrzędnych i według metody Eulera, obrót wokół zorientowanego wektora jednostkowego, parametry Eulera, kwaterniony.
Kinematyka odwrotna: wyznaczanie równań dla przypadku trójwymiarowego, metoda Peipera, kinematyka odwrotna dla robota sześcioosiowego, liczba rozwiązań, warunki istnienia rozwiązania.
Jakobian, definicja, zastosowanie, przykład, Jakobian niezależny od sposobu opisu położenia, osobliwości kinematyczne, siły i momenty statyczne, planowanie trajektorii – podstawowe zagadnienia, sterowanie ruchem robota – układy sterowania w torze otwartym i zamkniętym.
W5 Nawigacja cz.1
Pozycja obserwowana i pozycja zliczona.
Urządzenia pomiarowe wykorzystywane w nawigacji zliczeniowej (dead reckoning): przetwornik inkrementalny kąta obrotu, akcelerometr (mechaniczny, piezoelektryczny, MEMS), żyroskop (mechaniczny, optyczny, MEMS). Dokładność nawigacji zliczeniowej. Budowa i zasada działania akcelerometrów i żyroskopów, przykładowe dane techniczne.
Zasada działania żyrokompasu mechanicznego.
Pomiar pozycji obserwowanej w systemie GPS. NorthStar(R) (Evolution Robotics) - przykład systemu umożliwiającego wyznaczenie pozycji obserwowanej w pomieszczeniach.
Pomiar odległości od obiektów i przeszkód: czujniki ultradźwiękowe (zasada działania, typowe odległości i dokładności), czujniki laserowe, kamery z funkcją pomiaru odległości (TOF) (zasada działania, podstawowe dane techniczne).
Inne metody orientacji w przestrzeni: kody QR lub tagi RFiD wmontowane w podłoże.
Prezentacja: pomiar prędkości obrotowej i przyspieszenia, układ MPU6050, płytka NodeMCU, środowisko Arduino, obliczenia Octave
Materiały pomocnicze:
Efekt Sagnac'a (Brown K. Reflections on relativity) (Prof. Michael Gershenson, Experiments in Modern and Applied Physics, Sagnac Interfereometer PDF, Sagnac Interferometer Experiments PDF)
Accurate Mobile Robot Dead-reckoning With a Precision-calibrated Fiber Optic Gyroscope PDF
Overview of MEMS Gyroscopes: History, Principles of Operations, Types of Measurements
Renaut F.: MEMS Inertial Sensors Technology
NorthStar (Evolution Robotics)
Time-of-Flight Cameras: Principles, Methods and Applications
Time-of-Flight Camera – An Introduction
W6 Nawigacja cz.2, logistyka
Praktyczna realizacja systemu nawigacji na przykładzie zautomatyzowanych systemów logistycznych. System Kiva, Autostore, system transportu w zakładach Porshe.
Nawigacja w mobilnych robotach domowych i biurowych na przykładzie autonomicznych odkurzaczy (IRobot Roomba, Samsung Navibot, Philips Homerun)
Materiały pomocnicze:
Mick Mountz - Let The Inventory Walk and Talk (TEDx)
Amazon warehouse robots (YouTube)
AutoStore Logistic - Technical presentation (YouTube)
Irobot - oficjalna strona - platformy badawcze
W7, W8 Sztuczna inteligencja w robotyce
Sztuczna inteligencja czyli jak rozwiązać problem?
- wiedza eksperta (np. logika rozmyta)
- wiedza/doświadczenie innych (np. chmura, sieć socjalna)
- przeszukiwanie zbioru możliwych rozwiązań (np. algorytmy genetyczne)
- szukanie reguł, klasyfikacja, uczenie się (np. sieci neuronowe).
Logika rozmyta: podstawowe pojęcia: zmienna liczbowa, zmienna ziarnista, zmienna lingwistyczna, fuzyfikacja, defuzyfikacja; prawa logiki rozmytej, schemat sterowania z regulatorem rozmytym; typowe zastosowania, przykłady (sterowanie ciągnikiem z dwoma przyczepami).
Chmura, sieć - synteza informacji na podstawie danych cząstkowych. Prezentacja: internet robotów – możliwości zastosowania komunikacji między maszynami do rozwiązywania problemów sterowania na przykładzie wyników projektu RoboEarth (realizowanego w ramach 7 programu ramowego UE).
Algorytmy genetyczne: podstawowe pojęcia: gen, chromosom, kodowanie, przestrzeń poszukiwań; typowe zastosowania, przykłady, prezentacja przykładowych problemów (przeszukiwanie zbioru rozwiązań, problem komiwojażera). Prezentacja systemu szeregowania zadań opracowanego w Katedrze Automatyzacji.
Sieci neuronowe: podstawowe pojęcia: neuron, synapsa, waga, funkcja przełączająca, proces uczenia sieci; schemat uczenia sieci; typowe zastosowania, przykłady. Metoda K-means.
"Uczenie głębokie" (Deep learning). Prezentacja: Jeremy Howard, Cudowne i przerażające implikacje tego, że komputer potrafi się uczyć
Materiały pomocnicze:
Scilab - Fuzzy Logic Toolbox (sciFLT)
Vlad Gladkikh - Fuzzy logic in Scilab (sciFLT)
Strona projektu RoboEarth
Pawel Obitko - Introduction to Genetic Algorithms
Java Genetic Algorithm Package (JGAP)
Strona dr hab. inż Jerzego Stefanowskiego
Scilab - ANN Toolbox - toolbox zawiera prezentację dr hab. inż. Jerzego Stefanowskiego - Artificial Neural Networks
E.M. Mirkes, K-means and K-medoids applet
Jeremy Howard, Cudowne i przerażające implikacje tego, że komputer potrafi się uczyć (TED)
W9 Samochody autonomiczne i roboty na kołach
Stanley – samochód uniwersytetu Stanforda przygotowany na DARPA Desert Challenge. Inne projekty samochodów autonomicznych: projekt Argo (Włochy), inteligentny samochód Carnrgie-Melon University.
Współczesne trendy socjologiczne i stan techniki samochodowej na podstawie raportu KPMG „Self-driving cars: The next revoloution”.
Współczesne systemy wspomagania kierowcy: tempomaty, systemy detekcji zmiany pasa ruchu, systemy oceny kondycji kierowcy, systemy obserwacji warunków na drodze, systemy parkowania, przykłady. Systemy komunikacji lokalnej między samochodami i możliwości ich zastosowania (np. do sterowania ruchem lub poprawy bezpieczeństwa).
Konstrukcje robotów na kołach: rodzaje kół montowanych w robotach domowych i przemysłowych, koła aktywne, pasywne skrętne, odsadzone, wleczone, typowe zastosowania, parametry kinematyczne, koła z rolkami poprzecznymi, koła Mecanum, przykłady zastosowań, koła kulowe, przykładowe zastosowania, pojazdy balansujące na dwóch kołach, na kuli, Honda U3-X.
Pojęcie klasy mobilności, przykłady.
Kinematyka robotów na kołach – klasy kimenatyczne, typowe konstrukcje.
Materiały pomocnicze:
Sebastian Thrun - strona domowa
Stanford Autonamous Driving Team - Publikacje
S. Thrun i inni - Stanley: The Robot that Won the DARPA Grand Challenge - artykuł zawierający opis systemów sterowania
Sebastian Thrun - Samochód Google bez kierowcy (TED)
Self-Driving Car Test: Steve Mahan
KPMG - Raport - Self Driving Cars, The Next Revolution
Phidgets - Mobile Robot (MURVV) - strona projektu
W10 Interakcja człowieka z robotem
Problemy interakcji człowieka z maszyną na podstawie artykułów wygłoszonych na 11 konferencji HRI (Nowa Zelandia, kwiecień 2016). Modele współpracy człowieka z robotem na podstawie dokumentu „Problem Domains in HRI” (humanrobotinteraction.org): współpraca zdalna, kooperacja z maszyną znajdującą się w bezpośredniej bliskości człowieka, człowiek jako nadzorca, partner lub podmiot nadzorowany przez maszynę. Obszary współpracy: akcje poszukiwawcze i ratownictwo, rehabilitacja, wspomaganie niepełnosprawnych, zapewnienie bezpieczeństwa i porządku (wojsko i policja), kształcenie i rozrywka, współpraca w kosmosie, zastosowania domowe i przemysłowe.
Materiały pomocnicze:
Strona Human-Robot Interaction
Cynthia Breazeal: The rise of personal robots (TED)
Rodney Brooks: Why we will rely on robots (TED)
W11 Zastosowania robotyki w medycynie
Roboty pełniące rolę opiekuna i towarzysza pacjenta lub osoby starszej - na przykładzie projektu Giraff Plus (7 Program Ramowy EU).
Roboty zintegrowane z ludzkim organizmen - bionika. Współczesny stan techniki w zakresie protez aktywnych, egzoszkieletów i systemów zastępujących funkcje centralnego ośrodka nerwowego. Przykłady rozwiązań zgłoszonych do zawodów Cybathlon (Zurich, 8 października 2016).
Roboty wspomagające pracę presonelu szpitala. Roboty chirurgiczne na przykładzie daVinci. Porównanie zdolności człowieka i robota, potencjalne zyski z zastosowania robotów: nowe metody leczenia, poprawa jakości zabiegów chirurgicznych i zmniejszenie liczby powikłań, ograniczenie stopnia inwazyjności zabiegów, zmiana sposobu wykonywania niektórych badań i uzyskiwania wyników, poprawa jakości dokumentacji medycznej.
Materiały pomocnicze:
Projekt GiraffPlus - strona główna
Cybathlon 2016 - strona główna
Hugh Herr: The new bionics that let us run, climb and dance (TED)
Catherine Mohr: Surgery's past, present and robotic future (TED)
Catherine Mohr - The Future of Surgical Robots (Wired Health)
W12 Chwytaki, egzoszkielety
Kinematyka chwytaka: rodzaje chwytów, zręczność, wymagana liczba stopni swobody chwytaka, wybrane konstrukcje, liczba przegubów i liczba napędów, przykłady konstrukcji.
Czujniki stosowane w chwytakach: ocena geometrii (kształtu), siły nacisku, stopnia kontaktu, ciężaru, odkształcenia, rodzaju powierzchni, materiału chwyconego przedmiotu, detekcja poślizgu.
Układy sterowania chwytaków.
Nowe materiały stosowane do budowy chwytaków: DEAP (elastomery dielektryczne), materiały kompozytowe, sztuczne mięśnie sterowane elektrycznie. Prezentacja wybranych wyników badań naukowych i konstrukcji (Politechnika w Lozannie, Hitachi, NASA), zastosowanie sztucznych mięśni do budowy implantów i protez.
Egzoszkiety: prezentacja wybranych konstrukcji , podstawowe dane techniczne, zastosowane rozwiązania, zastosowania w medycynie, rehabilitacji, zastosowania wojskowe.
W13 Roboty równoległe
Historia rozwoju maszyn z kinematyką równoległą: pierwsze patenty, Eric Gough.
Maszyny równoległe: konstrukcje maszyn z równoległymi łańcucham,i kinematycznymi wg badań Prof. Jean-Pierre Merlet (INRIA), właściwości maszyn równoległych, zastosowania maszyn równoległych: rozrywka, symulatory lotu/jazdy, stabilizacja obiektów, manipulacja (przemysł, medycyna), montaż i operacje transportowe (handling), optyka, przemysł maszynowy.
Szczegóły konstrukcji maszyn równoległych: napędy, mocowania, przeguby.
Sterowanie maszyn równoległych. Pokaz maszyny równoległej skonstruowanej w Katedrze Automatyzacji.
W14 Napędy robotów
Prezentacja: Samochód Rimac Concept One; Życiorys Nikola Tesli.
Napęd elektryczny: silnik indukcyjny – budowa, charakterystyki mechaniczne, sterowanie; silnik synchroniczny (z magnesami trwałymi, bezszczotkowy prądu stałego) – budowa, charakterystyki mechaniczne, sterowanie; silnik krokowy (reluktancyjny) budowa, charakterystyki mechaniczne, sterowanie; porównanie silników elektrycznych pod kątem typowych zastosowań. Serwonapędy elektryczne – charakterystyki mechaniczne, zasady doboru, przykładowe karty katalogowe napędów. Przykład: rodzina napędów IntraDyn (Rexroth) dla robotyki. Silniki liniowe – budowa, przykłady konstrukcji, zastosowania.
Napęd pneumatyczny: siłowniki, sztuczne mięśnie, charakterystyki mechaniczne, typowe konstrukcje i zastosowania, przykładowe oprogramowanie do doboru napędów pneumatycznych.
Napęd hydrauliczny.
Zjawisko lewitacji kwantowej i możliwości jego zastosowania w technice. System Supra Motion (Festo).
W15 Prezentacja przykładowego rozwiązania systemu robotyki
Plan zajęć laboratoryjnych
Część informatyczna (zajęcia przy komputerach)
L1 Układy przełączające
Synteza układu realizującego zadaną funkcję przełączającą. Minimalizacja funkcji przełączającej.
Automation Studio
L2 Sterowanie sekwencyjne - manipulator pneumatyczny
Synteza układu przełączającego do sterowania manipulatorem binarnym według zadanego algorytmu.
Automation Studio
L3 Synteza układu sekwencyjnego
Synteza układu sekwencyjnego w języku drabinkowym (Ladder Diagram) działającego według zadanego opisu. Obsługa sytuacji awaryjnych, zatrzymanie sekwencji, dokumentacja programu.
Automation Studio
L4 Napęd hydrauliczny - podstawy
Synteza prostego napędu hydraulicznego - dobór siłownika i elementów sterujących do zadanego problemu. Regulacja prędkości ruchu siłownika.
Automation Studio
L5 Regulacja prędkości silnika hydraulicznego
Synteza serwonapędu hydraulicznego z regulatorem PID. Wyznaczanie charakterystyki napędu.
Automation Studio
L6 Równania kinematyki robota szeregowego
Opis kinematyki robota sześcioosiowego. Wyznaczanie parametrów DH, wyznaczanie położenia chwytaka.
Scilab, Robotic Toolbox (RTSX)
L7 Symulacja ruchu robota szeregowego
Kinematyka odwrotna, jakobian. Wyznaczanie toru ruchu narzędzia.
Scilab, Robotic Toolbox (RTSX)
L8 Logika rozmyta - prosty regulator FLC
Projektowanie regulatora Fuzzy Logic (FLC), fuzyfikacja, defuzyfikacja, zapis reguł, wyznaczanie sygnałów sterujących i powierzchni sterowania.
Scilab lub Matlab
L9 Logika rozmyta - projekt zaawansowany
Scilab lub Matlab
L10 Sieci neuronowe - sieci jednowarstwowe
Kostrukcja prostych, jednowarstwowych sieci neuronowych, dobór wag.
Scilab lub Matlab
L11 Sieci neuronowe - sieci wielowarstwowe, OCR
Kostrukcja sieci neuronowej do rozpoznawania tekstu, uczenie sieci, metoda propagacji wstecznej. Badanie wpływu wielkości parametrów opisujących sieć na szybkość uczenia i jakość wyników.
Scilab lub Matlab
L13 Sieci neuronowe - projekt zaawansowany
Scilab lub Matlab
Scilab
Instrukcje i pomoc do programu Scilab
Oficjalna strona Scilab
Instrukcja instalacji i pierwsze kroki w programie Scilab
Forum, wiki, artykuły i instrukcje na stronie Scilab.org
Dokumentacja na stronie scilab.org
Scilan Ninja - Scilab w zastosowaniach inżynerskich
Jaroszyński, Lanczot; Laboratorium metod numerycznych (skrypt Politechnika Lubelska)