master thesis
Edin Jelačić (Avtor), Matjaž Mihelj (Mentor), Tadej Petrič (Komentor)

Povzetek

This work analyzes firstly the theoretical background of dynamical motion primitives, their intended purpose, motivation, possibilities, and pros and cons, later going into a specific application of dynamical motion primitives for generating a trajectory for a seven joint redundant robotic manipulator. The work’s purpose is to provide insight into the field of flexible trajectory generation based on demonstrated and learned motions while trying to stay readable and understandable to a wider audience for future practical purposes. Initially, motion primitives (the two kinds, kinematic and dynamic) are defined and analyzed in detail as constructive components, or rather, building blocks of muscular motion, observed from the standpoints of biorobotics and system design. We observe the way that motion primitives may present themselves as mathematical descriptions of the way biological entities, such as vertebrates and invertebrates, perform motions. The underlying principles of motion primitives, such as the relationships between the learning of the skill to the actual reproduction of the motion are analyzed. Motor learning and the construction of mathematical representations for the purposes of generalizing motion-based tasks are observed. Differences between discrete motion primitives and rhythmic motion primitives are outlined, as well as their individual points of importance. Following is a description of the procedures used to record a demonstration of a motion. An algorithm for encoding the discrete dynamical motion primitive based upon Gaussian basis functions and locally weighted regression is described in detail. Point attractor dynamics pertaining to the manner in which dynamical motion primitives generate a trajectory are defined, described, and visualized. A method used to modify the trajectory generation algorithm with the goal of a timely approach to the necessary goal point is outlined, with the necessary mathematical formulation. We define the specifics and the peculiarities of the task upon which the method is tested and used. The robotic manipulator performed the task of localizing bacterial colonies located on a Petri dish with the use of a camera affixed to its end-effector, and used the pre-recorded and encoded dynamical motion primitives to extract the desired bacteria colony from the dish, using a needle probe affixed to the end-effector, and place the bacteria colony onto a target plate. Given the minuscule dimensions of the bacteria colonies (with respect to the dimensions of the robotic manipulator), with many visible bacteria colonies on a scale of a third of a millimeter, a high dose of precision was required, both by the trajectory generation algorithm and by the robot’s control system. In the first chapter, we introduced the problem of achieving a generalized method of robot planning and control, that could rely on a recording of a motion but that could also generalize this motion to different scenarios. We explained the origins and the motivations of such a method in the form of dynamic motion primitives (DMPs). We introduced the task at hand, bacterial colony extraction for which high accuracy was required (below a millimeter along each of the X, Y and Z axes). We described the equipment used for the task, in the form of a 7-DOF robot manipulator with an industrial-grade imaging device and colony extraction needle affixed to its end-effector. In the second chapter, we go into detail about how DMPs are formulated, and the dynamical foundations upon which the approach is based. We explain the physics of attractors on a model of a realistic pendulum, going into state-space to model one of the possible attractors of the system, which is the central resting point of the pendulum. We go in detail about the dynamical equations which form the DMPs. We explain the primary transformation system that guides each degree of freedom according to the forcing functions and the beginning and goal values. The canonical system is introduced as the driving mechanism behind the dynamical equations, and as a method of forming the phase variable which controls the forcing functions of the DMP mechanism. Lastly, we explained in detail the derivations behind the forcing functions and the mathematical foundations upon which they rest. We did so by referring to the pendulum model example. In the third chapter, we introduced an initial implementation of DMPs on the robot manipulator. The testing task comprised of contacting each of the points on a 3D printed model. The model consisted of five tips with well-known dimensions and offsets that could be used as contact points for the end-effector needle. We explained the recording of the contacting (approach) DMP and the creation of the retracting DMP. We expounded on the setup of the robot manipulator scenario and performed the offline testing of the algorithm. We then performed a real life test of the algorithm, with a brief explanation of how the Simulink model was formed, primarily with respect to the dynamical equations contained within the DMP. The architecture of the control model was explained, and the second-order filter introduced as a way of guaranteeing a precise approach to the end of the motion. The results of the motion were displayed and briefly analyzed. In the fourth chapter, we went into detail about the task of bacterial colony extraction. The motivation for the task was explained, as well as the logistics of extracting bacteria colonies from a Petri dish. The full setup of the task was explained and the steps were delineated one by one. The recordings of the picking procedure and the depositing procedure were performed and the offline performance of the DMP algorithm was shown for each procedure. Finally, the real life execution of the algorithm was performed and displayed (with pictures), and the results of the DMPs’ accuracy displayed and analyzed. In the fifth and final chapter, we summed up the work and presented a brief overview for the reader.

Ključne besede

motion primitive;robot manipulator;algorithm;precision;motion;

Podatki

Jezik: Angleški jezik
Leto izida:
Tipologija: 2.09 - Magistrsko delo
Organizacija: UL FE - Fakulteta za elektrotehniko
Založnik: [E. Jelačić]
UDK: 007.52(043.2)
COBISS: 78011907 Povezava se bo odprla v novem oknu
Št. ogledov: 264
Št. prenosov: 63
Ocena: 0 (0 glasov)
Metapodatki: JSON JSON-RDF JSON-LD TURTLE N-TRIPLES XML RDFA MICRODATA DC-XML DC-RDF RDF

Ostali podatki

Sekundarni jezik: Slovenski jezik
Sekundarni naslov: Dinamični primitivi gibanja v preciznih robotskih aplikacijah
Sekundarni povzetek: Magistrska naloga analizira teoretično ozadje dinamičnih primitivov gibanja, njihov predvideni namen, motivacijo, možnosti, prednosti in slabosti ter preučuje specifično uporabo dinamičnih primitivov gibanja za generiranje trajektorije za sedem sklepov redundantnega robotskega manipulatorja. Namen dela je zagotoviti vpogled v področje fleksibilnega generiranja trajektorije, ki temelji na demonstriranih in naučenih gibih. Sprva so primitivi gibanja (kinematični in dinamični) opredeljeni in podrobno analizirani kot konstruktivni sestavni deli oziroma gradniki mišičnega gibanja, opazovani s stališč biorobotike in načrtovanja sistemov. Ugotavljamo, kako se primitivi gibanja lahko predstavijo kot matematični opis izvajanja gibov živih bitij, kot so vretenčarji in nevretenčarji. Analiziramo osnovna načela primitivov gibanja, kot so razmerja med učenjem spretnosti in dejansko reprodukcijo giba. Opazujemo motorično učenje in konstruiranje matematičnih predstav za posploševanje gibalnih nalog. Opisane so razlike med primitivi diskretnega gibanja in primitivmi ritmičnega gibanja ter njihov pomen. Sledi opis postopkov, ki jih uporabljamo za učenje z demonstracijo. Podrobno je opisan algoritem za kodiranje diskretnega dinamičnega primitiva gibanja, ki temelji na Gaussovih bazičnih funkcijah in lokalno uteženi regresiji. Dinamika točkovnega atraktorja, ki se nanaša na način, na katerega dinamični primitivi gibanja generirajo trajektorijo, je definirana, opisana in vizualizirana. Opisana in matematično formulirana je metoda za prilagajanje algoritma generiranja trajektorije s ciljem pravočasnega doseganja ciljne točke. V nadaljevanju predstavimo posebnosti naloge, na kateri se metoda preizkuša in uporablja. Robotski manipulator s pomočjo kamere, pritrjene na vrh robota, izvede lokalizacijo kolonij bakterij, ki se nahajajo v petrijevki. S pomočjo predhodno demonstriranih in kodiranih dinamičnih primitivov gibanja nato robot z uporabo igelne sonde zajame želeno kolonijo bakterij ter jo prenese na ciljno ploščo za analizo. Glede na majhne dimenzije kolonij bakterij (v primerjavi z dimenzijo robotskega manipulatorja), je za manipulacijo bakterij potrebna visoka stopnja natančnosti, tako algoritma generiranja trajektorije kot tudi robotskega regulacijskega sistema. V prvem poglavju smo predstavili problem načrtovanja trajektorij in vodenja robota, ki se opira na demonstracijo gibanja in lahko to gibanje tudi posploši na različne scenarije. Pojasnili smo izvor in motivacijo uporabe metode v obliki dinamičnih primitivov gibanja (DMP). Predstavili smo nalogo, ekstrakcije kolonij bakterij, za katero je bila potrebna visoka stopnja natančnosti (manjša od milimetra vzdolž vseh treh kartezičnih osi). Opisali smo opremo, ki je bila uporabljena za nalogo, in jo sestavljajo robotski manipulator ter industrijska kamera, linijski laserski skener in igla za ekstrakcijo kolonije, ki so združeni v obliko orodja na vrhu manipulatorja. V drugem poglavju podrobno obravnavamo zasnovo DMP in temelje dinamike, na kateri temelji pristop. Fiziko atraktorjev razložimo na modelu nihala, ki ga obravnavamo v prostoru stanj. Modeliramo enega od možnih atraktorjev sistema, ki je osrednja točka mirovanja nihala. Podrobno obravnavamo dinamične enačbe, ki tvorijo DMP. Razložimo sistem transformacij, ki vodi vsako stopnjo prostosti robotskega mehanizma glede na nelinearne aktivacijske funkcije ter začetne in ciljne vrednosti. Kanonični sistem je predstavljen kot gonilni mehanizem za dinamične enačbe in kot metoda oblikovanja fazne spremenljivke, ki nadzoruje nelinearne aktivacijske funkcije mehanizma DMP. Nazadnje smo podrobno razložili izpeljave nelinearnih aktivacijskih funkcij in matematične temelje, na katerih so osnovane. To smo storili s sklicevanjem na primer modela nihala. V tretjem poglavju smo predstavili začetno implementacijo DMP na robotskem manipulatorju. Testna naloga je obsegala stik vrha robota s točkami na 3D tiskanem modelu. Model je vseboval pet konic z dobro znanimi dimenzijami in odmiki, ki smo jih uporabili kot točke dotika za iglo na vrhu robotskega manipulatorja. Pojasnili smo demonstracijo gibanja za učenje DMP, ki omogoča približevanje koloniji bakterij, in generiranje DMP za odmik. Razložili smo nastavitve robotskega manipulatorja in opravili testiranje algoritma v simulaciji. Nato smo izvedli preizkus algoritma na dejanskem robotu z implementacijo dinamičnih enačb DMP v obliki Simulink modela. Pojasnjena je arhitektura modela vodenja in predstavljen je filter drugega reda, ki zagotavlja natančno približevanje končni ročki. Rezultati gibanja so prikazani in na kratko analizirani. V četrtem poglavju smo podrobno obravnavali nalogo ekstrakcije bakterijskih kolonij. Razloženi sta motivacija za nalogo, pa tudi logistika pridobivanja kolonij bakterij iz petrijevke. Pojasnjena je celotna postavitev naloge. Razčlenjeni so posamezni koraki izvedbe. Prikazane so trajektorije postopkov zajema in odlaganja bakterijskih kolonij. Za vsak postopek je prikazana zmogljivost algoritma DMP. Nazadnje je izveden in prikazan algoritem na dejanskem robotu. Prikazani in analizirani so rezultati natančnosti vodenja robota z uporabo DMP. V petem in zadnjem poglavju smo delo povzeli in bralcu predstavili kratek pregled.
Sekundarne ključne besede: primitivi gibanja;robotski manipulatorji;algoritmi;natančnost;gibanje;magisteriji;
Vrsta dela (COBISS): Magistrsko delo/naloga
Študijski program: 1000316
Konec prepovedi (OpenAIRE): 1970-01-01
Komentar na gradivo: Univ. v Ljubljani, Fak. za elektrotehniko
Strani: XXII, 56 str.
ID: 13539707