Literatuurstudie: Lopen op twee benen
H.T.G.
Koopmans
WFW-rapport 95.063
I
m
Literatuurstudie: lopen op twee benen hugo Koopmans 387960 Vakgroep WFW sectie Regelen Werktuigbouwkunde Technische Universiteit Eindhoven maart 1995
LITERATUURSTUDIE :
R.T.G.
IDPEN OP TWEE BENEN KOOPHANS TECBNISCBE UNIVERSITEIT EINDBOVEN
Voorwoord Dit is een verslag van een literatuuronderzoek dat is uitgevoerd in het kader van een stage voor de studie werktuigbouwkunde aan de Technische Universiteit te Eindhoven. De stage is ontstaan uit een interesse voor de zoektocht naar Arti-tifical Intelligence (-AI>:Het vakgebied van de Ai koppelt een aantal fascinerende aspecten van de Wetenschappen filosofie, psychologie en informatica aan elkaar tot een zeer complex onderzoeksgebied. De interesse voor de Ai heeft mij gebracht bij de heer P van Lith uit Purmerend, oprichter van Multi Motions. Dit bedrijf houdt zich o.a. bezig met het ontwikkelen van autonome robots. Hier loopt een onderzoek naar de ontwikkeling van een autonome robot die zich kan voortbewegen op twee benen, analoog aan de menselijke loopbeweging. In het kader van dit project wordt een literatuuronderzoek uitgevoerd naar de stand van zaken op dit moment met als doel het verkrijgen van een goed inzicht in de specifieke problemen die optreden bij de ontwikkeling van een looprobot.
i
LITERATUURSTUDIE : W P E N OP TWEE BENEN H - T - G - XOOPJ4ANS TECHNISCHE UNIVERSITEIT EINDHOVEN
Samenvatting In deze literatuurstudie wordt onderzocht wat de stand van zaken is op het gebied van de tweebenige looprobots. Aan de hand van de literatuur wordt er een opdeling gemaakt in deelgebieden die nader worden geanalyseerd. In de paragraaf 'afstuderen' worden een aantal steijingen geponeerd van waaruit verder kan worden gebouwd aan de formulering van een afstudeeropdracht. Van de gevonden prototypes wordt een beschrijving gegeven. Er wordt geanalyseerd hoe de prototypes tot stand zijn gekomen en daaruit wordt een conclusie getrokken voor eventueel de ontwikkeling van een nieuw prototype looprobot. Hierbij worden een aantal technieken besproken die mogelijk een bijdrage kunnen leveren aan de ontwikkeling van een besturingssysteem voor een lopende robot. Deze technieken zijn oa fuzzy logic, het genetische algoritme en een combinatie daarvan: het optimaliseren van een fuzzy logic rulebase door een genetisch algoritme. Tot slot wordt er een eerste aanzet gegeven tot de ontwikkeling van een besturingssysteem voor het prototype van Multi Motions.
..
11
...
LITEFSTUURSTMIE : LOPEN OP TWEE BENEN KCOPUANS TECBNISCBE UNIVERSITEIT EINDBOVEN
E T G
Inhoud ........................................................
i
......................................................
ii
..........................................................
iii
Voorwoord
Samenvatting Inhoud
Hoofdstuk 1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1 Doelstelling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Lopen.wat is dat ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Nomenclatuur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4 Literatuurstudie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 2 2 2 4
Hoofdstuk 2 Deelgebieden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 Evenwicht en het inverted pendulum model . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Dynamisch en statisch lopen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Statisch lopen 2.2.2 Quasi dynamisch lopen 2.2.3 Dynamisch lopen 2.3 Inverse kinematica en inverse dynamica . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 Vrijheidsgraden in de loopbeweging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 5 6
7 7
....................................
8
Hoofdstuk 3 Toepassingen: Prototypes
4 Methoden en technieken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Kennissystemen en Fuzzy Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Subsumption architecture voor robuuste regelaar .................... Genetisch algoritme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11 11 11 13
Hoofdstuk 5 Ontwikkeling V ~ I ?UUI? bestu:ingssysteem voor een looprobot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1 Structurele aanpak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Natuurlijke evolutie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Verandering in kennisaquisitie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4 Afstuderen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14 14 16 17 18
Hoofdstuk 6 Conclusie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Literatuur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21 21
Hoofdstuk 4.1 4.2 4.3
... ...
111
LITERATUURSTUDIE :
.
R.T G.
KOOPWANS
LOPEN OP TWEE BENEN EINDBOVEN
TECBNISCBE UNIVERSITEIT
.................................................
21
.....................................................
22
Bijlage Prototypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Russische steltloper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Riper 3 en 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Universety of Kentucky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Walking robot WL-1OR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pneumatisch aangedreven buizen constructie .......................... Prototype Multi Motions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24 24 25 26 27 28 29
Bijlage Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SIPmodel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . sip.m simsip.m f u z t 1.m siprule2.m Stepper toolbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . been.m Voorbeeld van inverse kinematica berekening m.b.v stepper toolbox .
30 30
Afstuderen Literatuurlijst
iv
36
LITEï@zTUVRSTVDIE:
H.T . G .
LOPEN OP TWEE BENEN
KWPMANC TECRNISCBEUNIVERSITEITEINDHOVEN
Hoofdstuk 1 Inleiding In het dierenrijk is de mens een van de weinige soorten die zich kan voortbewegen op twee benen. Een aap kan ook een stukje op twee poten lopen en de meeste vogels waggelen of huppen op twee poten. Lopen is het resultaat van een complexe samenwerking tussen de adaptieve neurale netwerken en het dynamische spier-skeletsysteem van de mens. Het systeem bestaat waarschijnlijk uit een aantal parallelle, lokale terugkoppel-lussen met daar overheen structuren voor het behoud van evenwicht en het bepalen van de looprichting (trajectory planning). Maar de precieze structuur van het regelsysteem dat garant staat voor de gratieuze manier waarop de meesten van ons zich voortbewegen is niet bekend. Door onderzoek aan een lopende robot kan dieper inzicht worden verkregen in zowel de menselijke loopbeweging als de regeltechniek waarmee de beweging wordt gerealiseerd. Ook kan onderzoek naar de ontwikkeling van een looprobot interessant zijn voor het verbeteren van protheses voor de onderste extremiteiten (benen). Actieve veer-demper systemen kunnen ter compensatie dienen van spieren en pezen waarvan de functie verloren is gegaan.
1
---
LITERATUURSTUDIE: H T G KWPUANS
LOPEN OP TWEE BENEN EINDHOVEN
TECHNISCHEUNIVERSITEIT
1.1 Doelstelling De doelstelling van deze literatuurstudie is het bestuderen van literatuur op het gebied van de tweebenige loopbeweging en de robotisering hiervan. Om via deze literatuur aan te geven waar een eventueel afstudeerproject een bijdrage kan leveren aan het uitbreiden van de kennis over onderliggende regelstructuren en het realiseren van een looprobot. 6.2 Ilopen,wat is dat 3
Lopen, wat is dat ? Iedereen kan vertellen wat lopen is. Er ontstaan echter problemen met een definitie zodra je een mechanisch systeem een beweging laat maken en deze beweging gaat vergelijken met die van de mens. Dieren lopen ook, maar vaak op vier poten of met poten die anatomische anders zijn dan het menselijk been. Ook bij dieren is het niet altijd duidelijk wat ze doen: lopen, kruipen, schuifelen, huppen, springen, rennen, galopperen, draven, waggelen. Alleen al het aantal verschillende uitdrukkingen dat er is voor het aanduiden van het voortbewegen op poten geeft aan dat het noodzakelijk is om een nauwkeurig omschreven definitie te geven van lopen zoals dat in de verdere studie gebruikt zal gaan worden. In de literatuur is er een aantal gangbare definities, ieder met zijn eigen karakteristieke eigenschappen. Het is nieE de bedoeling om in dit verslag te komen tot een opsomming van chronologische gebeurtenissen en een gedetailleerde beschrijving te geven van de ontwikkeling van het onderzoeksgebied. Ik beperk mij tot het aangeven van de belangrijkste deelproblemen en de in de literatuur gevonden aanpak.
1.3 Nomenclatuur Zowel in de medische wereld als in de techn-ek zijn afspraken gemaakt die in de bestudeerde literatuur door elkaar heen gebruikt worden. Een vergelijking van de terminologie: <==> frontaal vlak Vooraanzicht <==> sagitaal vlak Zijaanzicht <==> transversaal vlak Bovenaanzicht In de bestudeerde literatuur wordt de loopbeweging onderverdeeld in een aantal fasen. Deze fasen worden niet eenduidig gebruikt. In de artikelen worden verschillende definities gegeven. Dit is onder andere te verklaren doordat er verschillende loopstrategieen toegepast worden.
2
LITERATUURSTUDIE : LOPEN OP TWEE BENEN H . T . G . KOOPHANS TECENISCBEUNIVERSITEIT EINDBOVEN
Uitgaande van de bestudeerde literatuur is een bruikbare indeling mogelijk als volgt. a b C
enkelbeenfase (EBF) dubbelbeenfase (DBF) wisselfase (WF)
--
~ o o een r been geldt: d steunfasi (SF) e zwaaifase (ZF) De onderverdeling in fasen hangt af van het aantal graden van vrijheid dat in de modellering wordt meegenomen. Bij steltlopers, systemen waarbij een voet ontbreekt, bestaat alleen een EBF en een DBF. Bij systemen die wel een voet hebben wordt naast de EBF en de DBF vaak een WF geïntroduceerd. In de literatuur wordt geen eenduidige definities gegeven voor de WF. Er zijn twee gangbare definities bruikbaar. De eerste definitie is het wisselen van het zwaartepunt van het achterste been naar het voorste been, dus tussen twee EBF in. De tweede definitie is het wisselen van de EBF naar de DBF en terug. In beide gevallen is de WF een onderdeel van de DBF.
Enkelbeenfase: Fase waarin te hoogste 1 been in de steunfase is.
EBF WF DBF WF EBF
Dubbelbeenfase: Fase waarin beide benen in steunfase zijn. Wissel fase: Een eenduidige definitie van de wisselfase wordt hier niet te geven omdat de wisselfase afhangt van de toegepaste loopstrategie. Steunfase: Fase waarin het been gewicht draagt. Zwaai fase: Fase waarin het been geen contact heeft met de grond, in deze fase zwaait het been naar voren. In de literatuur worden een aantal fasen nog verder opgesplitst die hier niet worden beschreven omdat hier een algemeen beeld geschetst wordt van de mogelijkheden voor een indeling van de loopbeweging in fasen.
3
LITERATVVRSTVDIE : IiOPEN OP TWEE BENEN H .T . G a KCOPHANS TECENISCEE UNIVERSITEIT EINDBOVEN
1.4 Literatuurstudie De literatuurstudie is gestart met een aantal artikelen die in het bezit zijn van de heer van Lith. De door hem verzamelde artikelen zullen in de literatuur lijst zijn gemerkt met een *. Bij het loopprojekt van Multi Motions is ook Richard van der Linde, student aan de Technische Universiteit Delft, betrokken. Hij onderzoekt de samenhang in de loopbeweging om met zo min mogelijk energie de kewegimg te realiseren, het mgenaamde h a k t l s c h !open. Met hem is literatuur uitgewisseld, de door hem gevonden artikelen zijn in de lijst gemerkt met **. De gebruikelijke bronnen, bibliotheken en vakbladen, zijn geraadpleegd en er is een reisje ondernomen door cyberspace. Internet Op het internet is een groot aantal mogelijkheden om aan informatie te komen. Alleen blijkt het lastig om de goede plaatsen ('sites') te vinden waar deze informatie beschikbaar is. Het is een goed platform voor vragen en discussies.
In het navolgende komen in hoofdstuk twee een aantal deelgebieden van het loopprobleem aan de orde. In hoofdstuk drie worden een aantal prototypes besproken. Hoofdstuk vier geeft inzicht in een aantal bruikbare methoden voor de ontwikkeling van een besturingssysteem voor een looprobot. In hoofdstuk vijf wordt de ontwikkeling van een besturingssysteem voorgesteld. En als afsluiting van het stageverslag wordt in hoofdstuk zes een conclusie gegeven met aanbevelingen voor eventuele vervolgstudie.
4
LITERATVVRSTVDIE:
H.T.G.
IDPEN OP TWLE BENEN KOOPHANS TECENISCBE UNIVERSITEIT EINDBOVEN
Hoofdstuk 2 Deelgebieden 2.1 Evenwicht en het inverted pendulum model Evenwicht Het belangrijkste aspect bij het voortbewegen is het bewaren van het evenwicht. Wat het evenwicht precies inhoudt hangt af van met welke snelheid de beweging plaatsvindt. Ais de beweging langzaam is heeft in het algemeen het statisch evenwicht de overhand. Met statisch evenwicht wordt hier bedoeld dat er ten alle tijden een evenwichtsituatie is. Als de beweging snel is zullen dynamische aspecten zoals versnellingen en massatraagheid een rol gaan spelen en zal er dynamisch evenwicht moeten zijn. Bij het behouden van het evenwicht is het van belang om het Centre Of Gravity (COG) in de door de voet(en) omsloten oppervlak te houden. Shih [23][26] introduceert het Zero Moment Point (ZMP) en toont aan dat het voldoende is om dit ZMP in het door de voet(en) omsloten oppervlak te houden.
Het inverted pendulum model:
/ /
/ / /
/
Het door de voet(en) omsh
n oppervk
Als model voor de tweebenige loopbeweging wordt een single inverted pendulum (SIP) voorgesteld door Hemami ea [ll][12] [14] [16]. Dit model gaat uit van een vast punt waar het SIP contact maakt met de grond, in dit punt kan een moment worden uitgeoefend. Dit is een ander model dan het voorbeeld dat vaak bij een Fuzzy Logic Controller(FLC) wordt gegeven van een paal op een wagentje.
'
Met het SIP model is in MATLAB een aantal simulaties uitgevoerd om een vergelijking te maken tussen een F ~ z z y Logic Controller(FLC), gemaakt m.b.v. de fismat toolbox en een m.b.v. het LQR algoritme bepaalde lineaire terugkoppel wet. Een uitwerking hiervan bevind zich in de bijF lage.
I
I
twee inverted pendulum modelle~rechtsSE' model
Doel van deze simulatie is het verkrijgen van inzicht in de mogelijkheden van de FLC, de fismat toolbox en om een globale vergelijking te maken van de ingang-signalen van de twee verschillende regelaars.
5
LITERATUORSTUDIE:
H. T.G
.
LOPEN OP TWEE BENEN KOOPUANS TECBNISCBE UNIVERSITEIT EINDBOEN
2.2 Dynamisch en statisch lopen Uitgaande van het evenwicht criterium wordt er in de literatuur een drietal loopmethoden onderscheiden te weten: - Statisch lopen - Quasi dynamisch lopen
- n.,,,-:,,.h uyllallllJbl1
iuyL,ll
Een ander criterium voor het bepalen van de loopstrategie is het aantal vrijheidsgraden dat het systeem heeft. Een looprobot die stil kan staan heeft een voet met een enkelgewricht nodig voor het behouden van statisch evenwicht. Een dynamische steltloper heeft alleen vrijheidsgraden in de heup en eventueel een knie voor het verkorten van het zwaaibeen. Hierdoor kan een dergelijk systeem alleen dynamisch, door het zetten van stappen, het evenwicht behouden.
2.2.1 Statisch lopen. Bij statisch lopen heeft het systeem altijd statisch evenwicht. Lopen is een beweging: er is dynamica, maar de essentie van het statisch lopen is dat de beweging zo langzaam verloopt dat het geoorloofd is dynamische verschijnselen te verwaarlozen. Een systeem dat statisch evenwicht kan bewaren heeft actieve vrijheidsgraden in de enkel voor het balanceren van het systeem in de EBF. Mathematische uitgangspunten: - Traagheidskrachten worden verwaarloosd. - De projectie van het zwaartepunt op het horizontale vlak ligt altijd in het door de voet(en) omsloten oppervlak. 2.2.2 Quasi dynamisch lopen [15]. Bij quasi dynamisch lopen wordt de loopcyclus onderverdeeld in twee fasen. De enkelbeenfase (EBF) waarbij het lichaam ondersteund wordt door 1 been, en de wisselfase (WF) waarbij de ondersteuning van het lichaam wisselt van been. De WF begint als het vrije been op de grond komt en eindigt als het andere been los komt van de grond en aan de zwaaifase gaat beginnen. In de EBF wordt het systeem beschreven door een SIP model en het zwaartepunt is altijd boven het oppervlak van de voet. Gedurende de WF gaat het systeem vanuit het statisch evenwicht van de achterste voet over naar statisch evenwicht op de voorste voet. Bij deze overgang heeft het systeem geen statisch evenwicht.
2.2.3 Dynamisch lopen [17][18][22]. Dynamisch lopen wordt in de literatuur gerealiseerd door het balanceren van het systeem gebaseerd op het behouden van dynamisch evenwicht m.b.v. een SIP model. Traagheidskrachten zijn hier juist essentieel voor het behouden van het evenwicht. Systemen die alleen dynamisch hun evenwicht kunnen bewaren zijn niet in staat om stil te staan. Voor een vertaling van de dynamica op menselijke schaal (200 cm) naar prototypeschaal (30 cm) 6
.
LITERaTUURSTUDIE :
H. T. G
KOOPUANS
LOPEN OP TWEE BENEN
TECBNISCBE UNIVERSITEIT EINDBOVEN
is het Froudegetal een bruikbaar dimensieloos getal. Het Froudegetal legt de verhouding van snelheid en gravitatie vast[l]. Voor het realiseren van een volledig dynamische beweging zijn verschillende benaderingen in de literatuur te vinden. Shih [18] lost vanuit de robotica de inverse kinematica en de inverse dynamica op en gebruikt deze oplossingen voor het volgen van een vooraf bepaalde trajectory. Mulder [22] gebrui kt een sensorgestuurd model dat met een gereduceerde set bewegingsvergelijkingen en een adaptief algoritme komt tot een werkend prototype dat gemiddeld 25 stappen kan zetten.
2.3 Inverse kinematica en inverse dynamica Vanuit de robotica is het mogelijk om m.b.v. de inverse kinematica en de inverse dynamica trajectories te bepalen voor het zwaartepunt. De voor de trajectorie benodigde momenten in de joints kunnen bepaald worden. A.d.h.v. trajectory planning en door gebruik te maken van het zero moment point (ZMP) is het mogelijk om een vooraf geplande trajectory te doorlopen [Ml. In Matlab is een toolbox ontwikkeld waarmee inverse kinematica berekeningen uitgevoerd kunnen worden aan een looprobot met 10 vrijheidsgraden (zie bijlage).
2.4 Vrijheidsgraden in de loopbeweging De menselijke loopbeweging is uitgebreid bestudeerd door Imman en Vukobratovic [28][31][32][33][34] waarin de beweging van ieder gewricht is geanalyseerd. Voor het realiseren van een loopbeweging door een robot heeft het systeem aan aantal vrijheidsgraden nodig. Uitgaande van een rechtdoorgaande loopbeweging zijn de twee meest essentiële vrijheidsgraden die in de heup. Dit zijn rotatie in het frontale en sagitale vlak. Voor het verkorten van het been in de zwaaifase wordt het kniegewricht gebruikt. Dit is een rotatie in het sagitale vlak. Steltlopers met een kniegewricht hebben derhalve zes graden van vrijheid. Voor het behouden van statisch evenwicht in de EBF is het noodzakelijk dat het systeem een enkelgewricht heeft. Dit zijn nog eens twee vrijheidsgraden, rotatie in het frontale en sagitale vlak. Het aantal vrijheidsgraden voor het realiseren van een rechdoorgaande loopbeweging met statisch evenwicht is dus tien. Voor het uitvoeren van een richtingsverandering is torsie van het been nodig. Dit is een rotatie in het transversale vlak. Voor volledige bewegingvrijheid van een looprobot met twee L-ucllcïì zijn zes gïadeil van vrijheid per been nodig.
7
LITEPATUURSTODIE : LOPEN OP TWEE BENEN H. T. G K W P r u u i S TECBNISCBE UNIVZRSITEIT EINDBOVEN
.
Hoofdstuk 3 Toepassingen: Prototypes In de bijlage is een aantal prototypes opgenomen te weten: Russische steltloper.[21] Dit model heeft geen voeten. Er zijn wel hoekopnemers aanwezig voor het bepalen van de hoek van het standbeen met de grond. Het prototype beweegt alleen in het sagitale vlak. Hierdoor kan het aantal benodigde vrijheidsgraden nog verder beperkt worden. Het model heeft geen knieën, in plaats daarvan heeft het model telescopische benen. De som van de lengte van de beide benen is constant, als het ene been verlengt, verkort het andere been met dezelfde lengte. De hoek tussen de beide benen en de lengteverhouding van de twee benen zijn graden van vrijheid. Het model kan vanuit stilstand beginnen met de beweging en de beweging is opgedeeld in een EBF en een DBF. Aannamen zijn: 1) De voet van het been in zwaaifase mag de voet van het been in steun fase niet raken. 2) Gedurende de beweging moet er een betrouwbaar contact zijn tussen de voet van het ondersteunende been en de grond. Er mag geen slip optreden. 3) Het vermogen van de motoren is voldoende voor het uitvoeren van de gewenste beweging. Biper 3 en 4.[17] Nummer drie heeft geen voeten en kan dus niet stilstaan. De benen van nummer vier hebben in grote lijnen dezelfde vrijheidsgraden(l2) als de benen van de mens. Aannamen bij de ontwikkeling van dit prototype: 1) De beweging in het frontale,sagitale en transversale vlak zijn onafhankelijk. 2) De beweging in het transversale vlak wordt verwaarloosd. 3) Er is geen wrijving in de gewrichten. 4) De bewegingsvergelijkingen mogen worden gelineariseerd. 5) Waar de voet de grond raakt kan voldoende wfijvingskracht opgewekt worden zodat er geen slip optreedt. En bij biper 4: 6 ) De DBF is verwaarloosbaar kort. 7) De botsing van de voet met de grond is niet elastisch.
8
LITERATUURSTUDIE:
LOPEN OP TWEE BENEN
H.T .G. KOOP~ANS TECBNICCBE UNIVERSITEIT EINDBOVEN
Voor het bepalen van een trajectory voor de beweging van de benen is men uitgegaan van een periodieke beweging waarbij de EBF wordt beschreven door een SIP model. Door de verschillende €asen(EBF-WF-EBF-WF) en de daarbijbehorende beweging van het SIP model m.b.v. goede randvoorwaarden achter elkaar te zetten ontstaat een loopbeweging. De WF wordt gezien als een blackbox. De ingangstoestand van de blackbox is de eind toestand van de vorige EBF en de uitgangstoestand is de begintoestand van de volgende EBF. D.m.v. een empirisch hepaa!de transfQmmtiPwmdt de ingmgrt9ertz?ci overgebrurht nuar de uitgungstsestund zûdat aan de startvoonvaarde voor de EBF voldaan wordt.
University of Kentucky.[22] Shih heeft een robot gebouwd met 12 graden van vrijheid. Het systeem volgt een vooraf m.b.v. inverse kinematica en inverse dynamica bepaald trajectory d.m.v. feedback control. De inverse kinematica en inverse dynamica van het model zijn uitgewerkt en opgelost. De beweging wordt opgedeeld in een aantal fasen. In iedere fase wordt een trajectory voorgeschreven die gevolgd wordt. Walking robot WL-lOR.[lS] Het prototype heeft 12 graden van vrijheid. De uitgevoerde loopbeweging is quasi dynamisch en het model dat gebruikt wordt voor het behouden van evenwicht is een SIP. De trajectories voor de beweging zijn vooraf bepaald en worden in de computer opgeslagen. Tijdens het lopen in realtime wordt de opgeslagen, gereduceerde informatie geïnterpoleerd naar een trajectory. Pneumatisch aangedreven buizenconstructie van Mulder ea [22] Dit prototype is heeft zes vrijheidsgraden en is een dynamische steltloper. Bij de ontwikkeling van dit prototype is men uitgegaan van een positiegestuurd model i.p.v. een krachtgestuurd model. Het voordeel hiervan is dat men niet hoeft uit te gaan van de bewegingsvergelijkingen (bepaald met Langrange mechanica). Men kan volstaan met een simpele set geometrische vergelijkingen die de interne vrijheidsgraden van het model vastlegt (inverse kinematica). Voor het bepalen van de effecten van de zwaartekracht kan gebruik gemaakt worden van de kracht en moment stellingen van Newton. In de EBF wordt evenwicht bepaald met een SIP model. Met de inverse kinematica wordt door simulatie een aantal standaard bewegingen bepaald. Deze bewegingen worden als basis gebruikt voor een kennissysteem. Afhankelijk van de momentane doelstelling van het systeem, bijvoorbeeld op de plaats blijven of vooruit stappen, kiest het kennissysteem een voor dat doel geschikte standaard loopbeweging uit. In het artikel wordt gesproken van een adaptieve regelstrategie, hetgeen als volgt opgevat moet worden. Omdat er geen bewegingsvergelijkingen zijn heeft men geen regelbare trajectory. Het systeem is adaptief in de zin dat als het systeem afwijkt van de door simulatie bepaalde standaard stapbeweging, het 9
LITERATUURSTUDIE : LOPEN OP TWEE BENEN H.T.G. K W P H A N S TECENISCEE UNIVERSITEIT EINDBOVEN
mogelijk is om door een regelactie (het aanpassen van de positieservo’s ) toch de gewenste beweging uit te voeren. Op deze manier is het systeem bestand tegen verstoringen zoals wind of een niet vlakke ondergrond. Het ontbreken van een voet maakt het onmogelijk om een statisch evenwicht te bereiken. Prototype van Multi Motions Een lopende robot heeft weinig praktische waarde als het systeem niet volledig zelfstandig kan opereren. De volledige besturing en energievoorziening worden door het mechanisme zelf gedragen. Het systeem is autonoom. In eerste instantie is statisch evenwicht bereikt door een SIP model te besturen met een fuzzy logic controller. De ontwikkeling van een besturingssysteem voor het realiseren van een loopbeweging heeft als kenmerk dat men tracht een sterke analogie te realiseren met de fasen die door de mens doorlopen worden bij het leren lopen. Als basis hiervoor wordt het besturingssysteem opgezet volgens de subsumption architectuur (zie 4.2) van R.Brook van MIT. Voor het realiseren van een loopbeweging kan men denken aan de ontwikkeling van een fuzzy stapgenerator. Deze rulebase wordt dan geoptimaliseerd met een genetisch algoritme zodat een soepele loopbeweging ontstaat.
10
LITERATUURSTUDIE : LOPEN OP TWEE BENEN H .T. G. KOOPUANS TECBNISCBE UNIVERSITEIT EINDBOVEN
Hoofdstuk 4 Methoden en technieken 4.1 Kennissystemen en Fuzzy Logic In tegenstelling tot de klassieke regelmethodes die het proces dat geregeld moet worden modelleren gaat een Fuzzy Logic Controller (FLC) uit van de kennis die een expert heeft van het te regelen systeem. In deze context is het proces de loopbeweging en de expert de mens. De kennis die de expert heeft over het proces dus de kennis die de mens heeft over lopen wordt in een kennissysteem opgeslagen in de vorm van regels. De regels in deze kennissytemen komen tot stand door het vertalen van tekst waarin door de expert kennis is ingebracht. De tekst wordt vertaald in logica die als basis dient voor het opstellen van regels. De regels hebben een ifhhen structuur: if A then B. De predikaten A en B zijn in eerste instantie een linguïstische interpretatie van de kennis. Bijvoorbeeld: Als de douche aanstaat en je staat eronder dun wordt je nat. Voor de regeltechniek is het van belang dat de statements vertaald kunnen worden in een bepaalde regelactie, hiervoor moet aan een variabele een waarde gegeven worden. Probleem bij dit soort toekenningen is het bepalen van de waarde aan een kreet als 'je wordt nat'. De vage logica (fuzzy logic) geeft de mogelijkheid om vage variabelen te introduceren en ermee te rekenen. Niet vage of crisp variabelen kunnen vaag gemaakt worden (fuzzificeren) en vage variabelen kunnen een niet-vage waarde krijgen door te defuzzificeren. De vage logica geeft de mogelijkheid om een kennis-systeem op te zetten met daarin regels gebaseerd op vage logica: een zogenaamde fuzzy rulebase. De regeltechniek die gebruik maakt van vage logica wordt fuzzy logic control (FLC) genoemd.
4.2 Subsumption architecture voor robuuste regelaar
--
work usefully
sensors
use naps build maps 4actuators explore
nsns(eravoid obstacles
taakgerichte indeling
functionele indeling
Subsuption architectuur is een manier om een robuust regelsysteem op te bouwen voor autonome robots [ 6 ] . Een autonome robot is een robot die volledig zelfstandig kan opereren. Energievoorziening en de besturing van de robot zijn opgenomen in het systeem. De gebruikelijke manier voor het opbouwen van een regelaar voor een dergelijk systeem is in een aantal functionele eenheden. Op 11
LITERATUURSTUDIE : LOPEN OP TWEE BEEIEN H. T. G KWPJ4ANS TECBNISCBE UNIVERSITEIT EINDBOVEN
.
subsumption gebaseerde regelsystemen zijn onderverdeeld in taakgerichte eenheden. In [6] wordt het principe gedetailleerd uit de doeken gedaan. Het belangrijkste verschil in opbouw van het besturingssysteem zit in het feit dat men het besturingssysteem stap voor stap opbouwt. De meest fundamentele zaken die door de besturingssysteem gedaan moeten worden staan in de onderste laag. Voor een autonome robot op wielen is dat het ontwijken van obstakels, voor een lopende robot bijvoorbeeld het behouden van het -'-"- zijn e n dcs nuur beherell fimctimerell tull me:: een evenwicht. Als deze PssPntie!e f2lren eOPfPQt nieuwe laag toevoegen met daarin nieuwe functies. De structuur zit dusdanig in elkaar dat oude lagen niet veranderd worden. In [6] wordt een algemen laagindeling voorgesteld voor het besturingssysteem van autonome robots. Het gaat in [6] om robots die zich voortbewegen op wielen. Voor een lopende robot wordt hier de volgende indeling voorgesteld. laag O : Behoud postuur laag 1 : Bewaar evenwicht laag 2 : Zet een stap laag 3 : Loop Hoe meer lagen er in het besturingssysteem ondergebracht worden, hoe meer taken de autonome robot kan verrichten. Als een nieuwe meer complexe laag een fout maakt valt het systeem terug op oude betrouwbare lagen. De lagen zijn op te vatten als processen die ieder een voor dat proces gewenste output genereren. Iedere laag heeft een bepaalde prioriteit. De meest essentiele lagen hebben de hoogste prioriteit. Bijvoorbeeld de taak van het evenwicht bewaren, zal een hogere prioriteit hebben als de taak van het zetten van een stap. A l s de robot een stap zet en daarbij op een muur stoot, zal die stap niet afgemaakt worden. Het bewaren van evenwicht heeft meer prioriteit dan het zetten van de stap. Hierdoor zal de output die het proces voor evenwicht bewaren genereert voorrang krijgen op output die is gegenereerd door processen met een lagere prioriteit. Een van de meest in het oog springende kenmerken van een met subsumption opgebouwd besturingssysteem is het parallelle karakter waarmee de deelsystemen geregeld worden. Er is geen overkoepelende controller die alles in de gaten moet houden. Ieder deelsysteem werkt parallel aan de eigen doelstelling.
12
LITERATUURSTUDIE : LOPEN OP TWEE BENEN H. T. G KCUPMANS TECBNISCBE UNIVERSITEIT EINDBOVEN
.
4.3 Genetisch algoritme Met een Genetisch Algoritme(GA) is het mogelijk om m.b.v. de computer een evolutieproces op te zetten dat een (technisch) probleem kan optimaliseren. Een van de belangrijkste kenmerken van deze aanpak is dat men uit kan gaan van een prototype, dus niet van een model. Men is dus rechtstreeks met een praktisch probleem bezig en de verschillen tussen een praktisch mechanisme (mei bijvoorbeeld ûngemodelleerde trillingen of wïijving) en een theoretisch niûdel zijn er door het ontbreken van dit theoretische model niet. Wet prototype wordt gebruikt voor het verkrijgen van meetdata. Deze meetdata wordt geïnterpreteerd en de relevante grootheden van het probleem worden geparameteriseerd. Deze parameters worden ook wel genen genoemd en samen vormen ze een chromosoom. Men vertaalt het probleem naar een chromosoom met daarin de informatie die nodig is om het probleem op te lossen, dit is echter nog geen optimale oplossing. Er wordt een startset chromosomen gemaakt die een generatie genoemd wordt. De volgende generatie wordt gemaakt door selectie, mutatie en kruising. Van de nieuwe generatie wordt de fitheid beoordeeld a.d.h.v. een fitheidsfunctie. Voor het bepalen van de fitheid kan men bijvoorbeeld kiezen voor het verplaatsen van het totale zwaartepunt van het mechanisme met een zo groot mogelijke snelheid in een zo vlak mogelijke trajectory in het horizontale vlak. Door gebrek aan implementaties van het GA is er gezocht naar een eenvoudig voorbeeld van waaruit de werking van het principe getest kan worden. Hiervoor is men uitgegaan van een SIP model. De gedachte is als volgt. Men gaat uit van een individu dat bestaat uit een chromosoom. Dit chromosoom is opgebouwd uit genen met daarin de meest essentiële informatie voor het systeem. In het geval van een SIP is dit de state vector x en de output, het moment M. Deze informatie wordt opgeslagen in een kolom en wordt verder een gen genoemd. Een chromosoom bestaat uit n genen met daarin voor n states een regelactie M. De "soep" bestaat uit m chromosomen (individuen). De eerste generatie individuen wordt random gevuld met waarden. Met ieder individu wordt een simulatie uitgevoerd met het SIP model. Het vinden van de regelactie gebeurt door in het individu de state op te zoeken, die het dichtst bij de huidige state is. De bij deze state horende regelactie wordt dan uitgevoerd. Ieder individu voert een simulatie uit en de responsie wordt getest op fitheid. De fitheid kan bijvoorbeeld bepaald worden met een kleinste kwadraten methode. Ais alle individuen getest zijn op fitheid wordt een bepaald percentage van de beste genen gebruikt voor de volgende generatie. Het creëren van een volgende generatie gebeurt door selecteren, kruisen en muteren. Nieuwe individuen worden gemaakt door uit de geselecteerde chromosomen willekeurig twee chromosomen te nemen, deze chromosomen op een willekeurige plaats door te knippen en gekruist weer aan elkaar te zetten. De nieuwe individuen worden dan op een aantal plaatsen voorzien van een mutatie. Na het maken van een nieuwe generatie begint het geheel weer opnieuw.
13
LITERATUURSTUDIE : LOPEN OP TWEE BENEN H.T.G. K W P U A N S TECBNISCBE UNIVERSITEIT EINDBOVEN
Een implementatie hiervan is uitgevoerd in Matlab. Resultaten van simulaties laten zien dat uitgaande van een willekeurige begin situatie de neiging ontstaat tot het genereren van gunstige regelacties. Het is echter nog niet mogelijk gebleken om vanuit een willekeurige begin situatie een gen te creeren dat het SIP model stabiel kan houden. Voor het inbrengen van kennis in de beginsituatie is het mogelijk om uit te gaan van een aantal a a m v r n * * A ; m a Cx---.,
b b l l V U U U l ~ b LULLY
ramnlc
\Ant
Anrrn
Gx-rrx,
1bgb.13. I V I b b UbLb L U L L y
t n m ~ I cr r r n r 4 t a n n
l b s b l 3 W U I U C bbil
tLbsblUyybI a m a l n n n n - r Vl IUR -it
nmmaononnnn
4-t Lnn
U ~ ~ ~ i > ~ U l l U l U l b b & l lU i l
worden vertaald naar een ’individu’. Door het evolueren m.b.v. een GA worden de fuzzy regels geoptimaliseerd. Het probleem hierbij is het vinden van een goede vertaling van het regeloppervlak naar het individu. Bij de tot nu toe uitgevoerde simulaties blijkt dat de dimensie van de optimaliserings ruimte te groot is voor het te optimaliseren probleem. Dit is te vergelijken met het proberen te fitten van een beste rechte op een dataset d.m.v. een tiende graads polynoom. Er wordt gezocht naar een manier om het aantal dimensies in de optimaliseringsruimte af te stemmen op het aantal dimensies van het te optimaliseren probleem.
Hoofdstuk 5 Ontwikkeling van een besturingssysteern voor een looprobot 5.1 Structurele aanpak In de literatuur wordt in een aantal artikelm de ontwikkeling van een prototype beschreven. Opmerkelijk bij de beschrijvingen is dat in alle gevallen het loopprobleem in 1 keer en in zijn geheel aangepakt wordt. Uit het navolgende blijkt dat dat niet de meest logische aanpak lijkt. Top-down of bottom-up ? vnnr AP nntxp~i&e!ifig x ~ ô neefi pretetype ifi ô!!p_ e i , d ~ , n ~ c hgex/u!!p,i, te gebruik gemaakt wordt van een zogenaamde top-down benadering. Bij deze vorm van benaderen gaat men uit van de meest globale probleemstelling om het dan op te splitsen in deelproblemen. Ieder deelprobleem moet opgelost worden om tot een resultaat te komen. Voor de loopbeweging kan men in deze opdeling zeggen dat de globale probleemstelling het dynamisch lopen is. Uitgaande van dit probleem wordt dan een onderverdeling gemaakt in o.a. evenwicht bewaren en een trajectory plannen en volgen. hliilt “11 1 c A u2 t In A o 1;t~r2tiiiir LILUL J
111 U”
C U U L
V U L
U”
Vlli
14
LITERATUURSTUDIE: LOPEN OP TWEE BENEN H.T. G. KOOPHANS TECBNISCBE UNIVERSITEIT EINDBOVEN
Uitgaande van de mens kan men in de ontwikkeling van de loopbeweging zien dat een soepele beweging niet ineens tot stand komt maar dat daar een aantal fasen van kruipen, staan en 'de eerste stapjes zetten' aan vooraf gaat. Daarom wordt hier de bottom-up aanpak geprefereerd.
De gedachte achter deze opbouw O s dat bij de ontwikkeling van een prototyperobot de ontwikkeling van de mens als voorbeeld wordt genomen. De ontwikkeling van de mens om tot een soepele loopbeweging te komen is grofweg in drie delen te splitsen te weten staan, 'de eerste stapjes' en volwaardig lopen. Kruipen is in dit kader niet relevant omdat het geen tweebenige beweging is, in deze fase wordt op vier ledematen voortbewogen. De bedoeling is dat deze fasen ook bij het prototype worden doorlopen. A l s eerste zal de aandacht gericht worden op het staan. Daarna wordt een algoritme ontwikkeld dat een stap kan uitvoeren in een gewenste richting. Als er een verstoring optreedt die te groot is om weggewerkt te worden met het statische evenwicht model moet er een regelactie ondernomen worden om een stap te zetten in de goede richting om de verstoring op te vangen en opnieuw een statisch evenwicht in te stellen. Dit levert een systeem op dat relatief grote verstoringen kan wegwerken en 'de eerste stapjes kan zetten'. Als derde en laatste stap moet er een soepele beweging ontstaan. Dit kan door de stapbeweging die in het tweede deel is bepaald te optimaliseren met een GA.
-
Voor een bottom-up benadering kan het model uitgebreid worden naar een meer algemeen model voor een tweebenige robot. Zoals in de figuur te zien is, heeft het model geen knieën. Deze vereenvoudiging is geoorloofd omdat de functie van de knie hoofdzakelijk bestaat uit het verkorten van het been tijdens de zwaaifase. Dit verkorten is noodzakelijk omdat anders het been in zwaaifase de grond raakt.
uitbreiding model
15
LITERATOORSTODIE : LOPEN OP TWEE BENEN H.T .G. KOOPUANS TECENISCEE UNIVERSITEIT EINDEOVEN
Aannamen voor de voet: Het model dat gebruikt wordt voor het statisch evenwicht kan uit het bovenstaande model afgeleid worden. De evenwichtssituatiesin het frontale en sagitale vlak zijn equivalent. Het model heeft de vorm van een dubbele omgedraaide slinger (Double Inverted Pendulum DIP). Echter in plaats van een verbinding van het onderste draaipunt met de grond zoals * 1-2: L A C T n ,,A,I UIJ IICL oir iiiuuci is ei hier sprake vâfi eei; ~ û e t .!E de ~ û e tzij.? druksensors aangebracht voor het bepalen van de gewichtsverdeling. Ook kan uit deze sensoren snelheids- en richtingsinformatie gehaald worden bij het optreden van een verstoring. 1) Er treedt geen slip op in het horizontale contactvlak van de voet met de vloer. De wrijvingskracht is voldoende voor het opvangen van krachten die ontstaan bij het balanceren. 2) De indrukking van de druksensors verwaarloosbaar is t.o.v. de andere bewegingen. 3) Door het gebruik van een servogestuurd prototype zijn de posities van de vrijheidsgraden bekend.
IEP model
De basisgedachte voor deze aanpak is ontstaan vanuit een tweetal ontwikkelingen. Ten eerste de ontwikkeling van de computer. Deze ontwikkeling heeft geresulteerd in een belangrijk gereedschap nl. het genetisch algoritme (GA). Het GA is belangrijk omdat het de mogelijkheid geeft om een evolutieproces op te zetten.
5.2 Natuurlijke evolutie Natuurlijke evolutie heeft de fantastische oplossingen voortgebracht voor zeer complexe problemen. Terwijl de grondslag voor de evolutie ligt in het simpele ’trail and error’ principe. Genetische code wordt naar willekeur gemuteerd en de meest levensvatbare (optimale) code wint de concurrentieslag. In de biologie en psychologie probeert men deze genetisch bepaalde oplossingen te doorgronden en theoretisch te onderbouwen. Een van de moeilijkheden hierbij is dat de objecten die bestudeerd worden onderdeel zijn van een groter geheel en dat invloeden van buitenaf moeilijk op waarde te schatten zijn. Ook de geschiedenis van het object speelt een belangrijke rol in de totstandkoming ervan. In [39] wordt gesteld dat de hersenen bestaan uit fysieke lagen van felogenetisch verschillende ouderdom (ontstaan op verschillende tijdstippen in de evolutie van de soort). Waarbij de oudste lagen de meest elementaire functies voor hun rekening nemen. De overeenkomst met subsumption architectuur is opvallend.
16
LITERATUURSTUDIE :
H. T. G
.
LOPEN OP TWEE BENEN XOOPUANS TECBNISCBE UNIVERSITEIT EINDEOVEN
5.3 Verandering in kennisaquisitie
Wetenschap is ontstaan uit de behoefte van de mens om de omgeving om hem heen te verklaren. Theorie als verklaring van de praktijk. Door de enorme hoeveelheid theoretische kennis heeft er een verandering plaatsgevonden in de manier waarop nieuwe theorie ontwikkeld wordt. De praktijk is niet meer de basis van waaruit nieuwe theorie ontwikkeld wordt maar de enorme h------lh-:A
IIWCVCCIIICIU
+h----+:mnLr.
1,~nn:n
. - 7 n J b
u ~ c u ~ c c I . ) uLCIIIIIJ ~c w WIUC
-1,
-ln+P-+--
nn4nn r r n n
x,rnnm,:t
ai3 p i a r L u l i l i ~ c ~ i cva11 i i w
aaiuir
1rnnn:cii:tRrn:rF;nm
hbiiiiiDuibuibiuiii&
mnnt
iiiuu
plaatsvinden. Door de ontwikkeling van de wetenschap is de nu gangbare methodiek voor het uitbreiden van kennis als volgt. Uitgaande van bekende theorie wordt een model opgesteld waarmee het praktische probleem benaderd wordt. Dit benaderingsmodel wordt gebruikt bij het uitvoeren van simulaties en het model wordt zodanig aangepast dat het binnen de grenzen van de bekende theorie en de gestelde randvoorwaarden een bevredigend resultaat oplevert. Hierna wordt de praktijk getest met de door de simulatie verkregen input. Discrepanties tussen de output van de praktijk en het theoretisch model worden als uitgangspunt genomen voor het aanpassen en uitbreiden van theoretisch inzicht. De wisselwerking tussen het aanpassen van het model en de uitkomst van de praktijk zorgt voor kennisuitbreiding. Een GA geeft de mogelijkheid om onder geconditioneerde omstandigheden een proces te laten evolueren tot een optimaal resultaat a.d.h.v. optimaliseringscriteria. Omdat beginsituatie en optimaliseringsdoelstelling volledig vastliggen, is het verkregen resultaat zeer objectief evalueerbaar. De ontwikkeling van het systeem is volledig te volgen. Dit kan leiden tot een beter inzicht in complexe systemen. Zoals uit het voorgaande blijkt is het verkregen resultaat niet theoretisch onderbouwd. Voordeel hiervan is dat het leidt tot het meest optimale systeem, uitgaande van gegeven probleemstelling en optimaliseringscriteria, zonder dat theoretische kennis een beperking oplegt aan het domein waaruit het optimale systeem afgeleid wordt. Kennisuitbreiding kan vanaf een zeer vroeg stadium in het proces plaatsvinden en op een meer elementaire manier.
17
5.4 Afstuderen
Uitgaande van de literatuurstudie worden hier een aantal stellingen geponeerd, van waaruit een geschikte aanpak kan worden afgeleid voor verdere studie. Stelling 1: De aanpak vanuit ûe püïc ïûbûiiea, d.w.z. he: opzetten v a een theûretisch model m.b.v. de inverse kinematica en de inverse dynamica, vergt een boel rekencapaciteit en uitwerking van het model met wrijving en speling is enorm complex. Voor een flexibele structuur en autonomie is het niet gewenst om hiervan uit te gaan. Stelling 2: Voor een autonome robot is het noodzakelijk om stil te kunnen staan. Het hebben van voeten is essentieel voor het bewaren van statisch evenwicht. Stelling 3: Fuzzy Logic gecombineerd met een optimaliseringsalgoritme zoals een GA of een neuraal netwerk kan een goede aanpak zijn voor het realiseren van een soepele loopbeweging omdat het uitgaat van de expert en een prototype en niet van een (onvolledig) theoretisch model. Stelling 4: Het prototype van Multi Motions is een goede mogelijkheid voor het bestuderen van het real world effect. Het real world effect is datgene dat ervoor zorgt dat een prototype zich altijd net even anders gedraagt dan vanuit de theorie en de simulaties voorspeld was. Uitgaande van een GA is het mogelijk om direct met een prototype te werken zonder een benaderingsmodel. Stelling 5: Matlab is een goede tool voor de ontwikkeling van een simulatieomgeving voor het testen van het besturingssysteem. De uitgebreide toolboxen geven de mogelijkheid voor simulatie van fuzzy inference machines, neural networks en het matrix rekenen is ideaal voor inverse kinematica berekeningen. Stelling 6: Subsumption architecture is een manier van denken die belangrijk kan zijn bij het rangschikken en indelen van complexe regelsystemen zoals lopen. Formuleren van een afstudeer opdracht: Onderzoek naar het implementeren van een besturingssysteem met subsumption architectuur en adaptieve algoritmen voor het realiseren van een flexibele controller voor een autonome loopmachine.
18
LITEFATUURSTODIE : LOPEN OP TWEE BENEN H. T . G KOOPMANS TECENISCBEUNIVERSITEIT EINDBOVEN
.
Er staan een aantal vragen open waarop in een eventueel afstudeeronderzoek een antwoord gezocht kan worden. Vraag 1: Wat zijn de mogelijkheden van een regelaar opgebouwd volgens het subsumption principe m.b.t. het parallel uitvoeren van verschillende regeltaken? Zoals het uitvoeren van een stap en het behoi?der! Var! eleflv.7iCht. Vraag 2: Is het mogelijk om door evolutie een fuzzy logic rulebase te optimaliseren die een soepele loopbeweging realiseert m.b.v. een neuraal netwerk of een GA ?
Subsumption architectuur zorgt voor een robuuste regeling gedurende het doorlopen van de drie stappen bij het ontwikkelen van het besturingssysteem. Stap 1 is het realiseren van staan, dit gebeurt met het DIP model zoals beschreven. Stap 2 is het maken van een stap. Voor de uitvoering hiervan kan men een fuzzy logic rulebase(FLRB) implementeren die uitgaat van een geparameteriseerde stap en evenwicht informatie uit het DIP model. Stap 3 is het realiseren van een soepele loopbeweging door het optimaliseren van de FLRB met een GA. De verschillende onderdelen van de besturing kan men onderbrengen in relevante ’level of competence’ lagen. Bijvoorbeeld: Introduceren van een state vector met positie informatie. Behouden van postuur laag O: door aansturen van de servo’s met huidige positie-informatie. Preprocessing van sensorinformatie. laag 1: Houdt contact met de grond. Handhaven van statisch evenwicht met DIP model. Implementeer een FLRB waarmee een stap gezet kan worden ter compensatie van laag 2: een grote verstoring. Zet stappen achter elkaar, maak eventueel gebruik van stapgeschiedenis, laag 3: optimaliseer de beweging met een GA. laag 4: Houdt rekening met een onzekere ondergrond.
19
--
LITERATUURSTUDIE : LOPEN OP TWEE BENEN H. T G KOOPHANS TECBNISCFIE UNIVERSITEIT EINDBOVEN
Schematische voorsteIIing van het besturingssysteem met in subsumption architectuur ondergebrachte deelsystemen: Genetic -
Fuzzy Step Generator 5 W
I
preprocess sensors
I
p d l Dosture
schema besturingssysteem
20
LITERATUURSTUDIE : LOPEN OP TWEE BENEN n.T .G. KCOPMANS TECBNISCBE UNIVERSITEIT EINDBOVEN
Hoofdstuk 6 Conclusie Literatuur: In de literatuur worden een aantal verschillende methodieken gevolgd om een looprobot te ontwikkelen. Volledig deterministisch met inverse kinematica en inverse dynamica zoals Shih ea. Xlvn.a.--l:+l u l c de N m.b.v. een kennissysteem e: een veremvoudigd serivorgestuurd mede! is PPI? dynamische balanceermachine gebouwd door Mulder ea. Met biper 3 en 4 is het SIP model extensief gebruikt voor het realiseren van een loopbeweging door het aaneenschakelen van een aantal SIP bewegingen met de goede randvoorwaarden. Ook bij prototype WL-1OR wordt het SIP model gebruikt voor de realisatie van een quasi-dynamische loopbeweging. Uit de studie is het volgende naar voren gekomen: - Bij de ontwikkeling van de prototypes wordt de dynamische loopbeweging als een op zichzelf staand geheel gezien. - Statisch evenwicht wordt niet gezien als basis van waaruit gewerkt kan worden, omdat men akls doelstelling heeft het dynamisch lopen. - In de opbouw van het besturingssysteem wordt niet gesproken over een analogie met de ontwikkeling die de mens doormaakt bij het leren lopen.
Afstuderen: Een onderzoek naar de uitbreiding van de kennis over optimaliseren van een fuzzy logic rulebase met een genetisch algoritme is mogelijk. Uitgaande van alleen een genetisch algoritme is het mogelijk om direct uit te gaan van een prototype zonder daarvoor een theoretisch model af te leiden. Voor implementatie van dergelijke technieken kan het besturingssysteem voor een autonome looprobot een goed experimenteer platform bieden. Subsumption architectuur voor het opbouwen van het systeem geeft de mogelijkheid om het systeem stapsgewijs op te bouwen zodat een robuust geheel ontstaat. Bij een eventueel afstudeerproject kan samenwerking gezocht worden met TU Delft alwaar R van der Linde afstudeert bij professor Cool. In samenwerking met Multi Motions is het mogelijk om een prototype te ontwikkelen zodat de regeltechniek direct geïmplementeerd en getest kan worden.
21
Literatuurlijst: boeken en artikeien [1]*Alexander R McNiel1:Exploring Biomechanics,O-7167-5035-x [2] Raibert Marc H:Legged Robots that balanceyo-262-18117-7 [3]* Told D J:Walking MachinesyO-85038936-4 [4] Whitt1e:Gait Analysis An Introduction70-7506-O045-4 i;] ;"îcKeflo-*- p J ; i ~ ~ r û & uiû~ ~Rû'UÛtiz~,V-20?-?8240-8 iû~ [6] Brooks R A A I at MIT Expanding Frontiers,0-262-23150-6 Artikel 24 en 25 [7]* McGhree R B:Some Finite state aspects of legged locomotion [SI* Raibert Marc H:Experiments in balance with a 3D one-legged hopping machine,Int.J.Robotic Research [9] Winter David:Biomechanics and Motor Control of human movement [lo]* Raibert Marc H:Machines that Walk,Sientific Amarican 248 1982 [ll]* Hennani H/Katbab:Constrained Inverted Pendulum Model for evaluating upright postural stability,J. of Dynamic Systems dec 1982 vol 104/343 1983 [12]* Hermani H/Bavarian/Wyman:Control of constrained planar simple inverted pendulum,Int.J.of control 1983 vol37 no4 741-753 1983 [13]* Frank A:On the stability of an algorithmic biped locomotion machineJ. of terramechanics 1971 vol 8 nol pp 41-50 1971 [14]* Hermami H/Golliday :The inverted pendulum and biped stability,Mathemathical Biosciences 34 pp 95-110 1977 [15] Takanishi A/Naito/Ishida:Realization of the plane walking by Biped Walking Robot WL-1OR [161* Hennami H/Wall/Black ea:Single inverted pendulum biped experiments,J.of Interdis. model&simul. 2(3) pp211-227 1979 [17] Hirofumi M/Isao S:Dynamic walk of a biped,Int.J.of Robotics research vol3 no 2 1984 [18] Shih ea:Inv. kin. and inv. dyn. for control of a biped walking machine,J. of Robotic systems 1993 [19] Shigeo Hirose/Osamu KGeneralized standard foot trajectory for a quadruped walking vehicle,Int.J.of robotic research [20] Golden J A Eheng Y F:Gait Synthesis for the DD-2 Biped robot to climb stairs,Int.J. of Robotics and Automation [21] Grishin A ea:Dynamic walking of a vehicle with two telescopic legs.. ,Int.J. of robotics research [22] Mulder M C ea:Dyn. stability in biped motion: Adapt.contr. strategies for balance.. ,Robotics&CIM [23] Shih:Fuzzy logic control for a biped robot,IEEE 1nt.symp on intelligent controle [24]** McMahon T A:Mechanics of locomotion,Int.J.of Robotics research vol3 no 2 1984 [25] Miyazaki/Arimoto:A control theorethical study on dynamical biped locomotion,J. of dynamic systems,rneasurement and control 1980 [26] Shih/Zhu/Gruwer:Optimizationof the biped robot trajectory IEEE [27] Furusho/Masubuchi:Theoretical reduced order model for the control of dyn. biped locomotion,J.of Dynamic systems,measurement and control 1987 [28]* * Imman Verne T:Human Walking,0-685-04348-x [29] Winters Jack M ea:Multiple muscle systems,Biomechanics and movement organization 1990
22
: LOPEN OP TWEE BEWEN H.T .G. KWPHPIPIS TECBNISCBEUNIVERSITEIT EINDBOVEN LITERATüURSTilDIE
[30] Chamon P/Hopkins/Pham:Derivation of optical walking motions for a biped walking robot,Robotica 1992 vol 10 pp 165-172 1992 [31] Vukobratovic:Stability analysis of mechanisms having unppowered DOF,Robotica 1989 vol 7 ~ ~ 3 4 9 - 3 51989 7 [32] Vukobratovic/Stokic:Is dynamic control needed in robotic systems and ifso to what extend?,Int.J.of robotics research vol2 no2 1983 yy’dl nn311-361 . L J2J2J 1 7V7Ü Ih ~UAU .l a. ~L ,U. V+ i~b~ e r ,;a ~ : h aprsach tÛ biped cDfit:=! sq’,”,th”sk, Robotica 1989 1989 [34] Vukobratovic ea:Biped locomotion. dynamics,stability,controland application,O-387-17456-7 1990 [35]* * Taga ea:Neuro-Musculo-Skeletal model of human locomotion [36]** Widmayer m u d e r W:Computer simulations of multi-body systems using fuzzy control [37] Angelis G /Heibloem R:Continue Variabel Demper Systeem gebaseerd op Fuzzy Logic Control geoptimalizeerd door adaptieve reactieveld besturing [38]van der Linde R:Onderzoek naar de ontwikkeling van een tweebenige looprobot TU Delft 1994 [39] Piet Vroon: Tranen van de krokodil [40] Castro/Delgado/Herrera:A learning method of fuzzy reasoning by genetic algorithms,EUFIT’93 [41] Gonzales/Perez/Verdegay:Learningthe structure of a fuzzy ru1e:a genetic approach,EUFIT’93 [42] Gacogne E:About the fitness of simulations whose fuzzy rules are learned by genetic algorithms,EUFIT’94 [43] Kropp K:Optimization of fuzzy logic controller inference rules using a genetic algorithm,EURFIT’94 [44] Glorennec P Y:Fuzzy Q-learning and evolutionary strategy for adaptive fuzzy control,EUFIT’94 [45] Surmann/Kanstein/Goser:Self-organisingand genetic algorithms for an automatic design of fuzzy control and decision systems,EUFIT’93 [46] Optimization of fuzzy systems using neural networks and genetic algorithms,EUFIT’94 Y
23
A
LITERATOORSTUDIE : LOPEN OP TWEE BENEN H. T. G KCOPMANS TECENISCEEUHIVERSITEIT EINDEOVEN
.
Bijlage Prototypes
Russische steltloper
LITERATUURSTUDIE:
I1.T.G.
KOOPUANS
=PEN
OP TWEE BENEN EINDBOVEN
TECBNISCBE UNIVERSITEIT
Biper 3 en 4
25
LITERATUURSTUDIE:
H.T.G.
IDPEN OP TWEE BENEN XWPHANS TECBNISCBE UNIVERSITEIT EINDBOVEN
Universety of Kentucky
26
LITERATüLIRSTüDIE : LOPEN OP M E BENEN H.T.G. KOOPMANS TECBNISCBE UNIVERSITEIT EINDBOVEN
Walking robot WL-1OR
27
LTTERATVURSTVDIE : LOPEW OP TWEE BENEN H T. G K W P W S TECENISCEEUNIVERSITEIT EINDEOVEN
Pneumatisch aangedreven buizen constructie
28
LITERATUURSTUDIE : LOPEH OP TWEE BENEN E .T .G. XCOP~ANSTECBNISCBE UNIVERSITEIT EINDBOVEN
n
Prototype Multi Motions
29
LITERATVURSTODIE2 H. T. G . KOOPHANS
WPEN OP TWEE BENEN
TECBNISCHE UNIVERSITEIT
EINDHOVEN
Bijlage Matlab
SIP model Simulaties met een LQR lineare terugkoppel wet en een fuzzy logic controller m.b.v. de fismat toolbox sip.m simsipm fuz-t 1.m siprule2.m sip.m % Deze functie geeft een state space beschrijving % van het Single Inverted Pendulum model % ddphi=mglsin(phi)/J*phi-b/J*dphi+1/J*M function[xdot]=sip(x,Mo);
ma=0.3; %massa ve=O; %veer de=O; %demper le=0.2; %lengte van de paal gr=9.81;%gravitatie versnelling in=ma*leA2;%traagheidsmoment van puntmassa op afst le van draaip xdot( 1)=x(2); xdot(2)=(ma*gr*le*sin(x(l))-ve*x( %%% kolom maken xdot=xdot(:);
1)-de*x(Z)+Mo)/in;
simsip.m %%% simulatie Simple Inverted Pendulum %%%%%% %%% deze file gebruikt sip.m voor de bepaling van xdot=AniBù clear; clc; clg; echo off; %%% begin condities
30
LITERATUURSTUDIE :
H.T. G.
LOPEN OP TWEE BENEN KWPUANS TECBNISCBE UNIYERSITEIT EINDBOVEN
g=9.81; xO=[0.5;0];% 0.1 rad = 5.7 graden tO=O; dt=0.001; te=0.5; x=xo; %%% modelparameters ve-m=O; % veer model % massa model ma-m=0.3; % lengte model le-m=0.2; in-m=ma-m*le-mA2; % traagheid model % demper model de-m=0.0;
%%%% SysteemMatrix A
A= [O 1;(ma-m * le-m* g-ve-m)/in-m - d e m / i n m ] ;B=[O; lhn-m]; C=[l O]; D=[O]; poles=eig(A) ; disp(po1es); T=[tO:dt:te]’ ; % de matrixen Q en R geven aan wat relatief belangrijk is % de toestand en/of de regelinspanning Q=[100000 0;O 11; R=1000; %%% Optimale lineaire terugkoppel matrix L L=lqr(A,B,Q,R) %%% lsim met lqr A-ster=A-B * L, ~I]=lsim(A -ster,lB,C,D,zeros(size(Tjj,T,xOj; poles=eig(A-ster); disp(po1es); %%% A-ster is wel stabiel %%% Niet lineaire systeem teruggekoppeld met L
u l = [];Xi=[]; 31
LITERATUURSTUDIE : LOPEN OP TWEE BENEN H.T.G. K m P m s TECBNISCEE UNIVERSITEIT EINDBOVEN
x=xo; for t=tO:dt:te u=-L*x; dx=sip(x,u); x=x+dx*dt; Ul=[Ui u]; v i-rvi Al-LAI
-?i. AJ,
end %%% resultaten:
subplot(211); plot(T,Xl( 1,:)); title(’gerege1de niet lineaire systeem ’),grid; ylabel( ’hoek’); xlabel(’tijd’); subplot(212); plot(T,Ul); title(’ingangs signaal’),grid;
fuz-t1.m % deze file maakt gebruik van: % de fismat toolbox % de rulebase in sipmle2.m % de statespace beschrijving van het SIP model in sip.m % datum: 280395 clg; CIC;
clear; % initial state x0 ; phi en phi-dot x0=[0.45; O]; x=xo; % domein voor de variabelen maken; % U1 => phi % U2 => phidot % V => Moment phi =[-0.5:0.005:0.5]; phi-dot =[-20:0.2:20]; =[- 10:o. 1:101; moment 32
LITERATUURSTUDIE: KOOPIIANS
H.T.G.
LOPEN OP TWEE BENEN
TECBNISCBE UNIVERSITEIT EINDHOVEN
% 2 antecedenten % 1 consequent
: phi en phidot : moment
clg; mfplot(Al,phi,A2,phi-dot,B,moment); pause; N=l; % voor defuzzificatie: : center of gravity % N=l % N=2 : maximum tO=O; dt=0.005; te=0.5; T=[tO:dt:te]; Bx=[];X= [I; % mamdani reasoning
AND= l;ALSO=1; for t=tO:dt:te [BP,Wl = mamdani(Al,x( l),phi,A2,~(2),phi-dot,B,AND,ALSO); [Bo] = defzfir(Bp,moment,N); dx=sip(x,Bo) ; x=x+dx*dt; Bx=[Bx BO]; X=[X x]; end figure; subplot(21i); plot(T,X( 1,:)); title(’ hoek phi 7; subplot(212); plot(T,Bx); title(’ input: moment ’);
33
LITEBATUURSTUDIE :
H. T. G
.
LOPEN OP TWEE BENEN
KWPHANS TECBNISCBE UNIVERSITEIT EINDBOVEN
pause;
siprule2.m % rulebase voor Simple Inverted Pendulum % datum 280395
% 4 regels voor simple inverted pendulum : phi en phidot % 2 antecedenten % 1 consequent : moment % lidmaatschap functies zijn trapezium vormig % a = helling % b = topbreedte % c = centrumpositie
al=[2,2,2,2]; bl=[O.5,0.5,0.5,0.5]; c1=[-0.5,0.5,-0.5,0.5]; a2=[0.1,0.1,0.1,0.1]; b2=[ 10,10,10,10]; c2=[-10,10,10,- 101; va=[0.2,0.2,0.4,0.4]; vb=[7,7,0,0]; vc=[10,-10,3,-31;
34
LITERATUURSTODIE: LOPEN OP TWEE BENEN H.T.G. KCOPMANS TECENISCBE UNIVERSITEIT EINDBOEN
Resultaten LQR en FLC van SIP model met vergelijkbare input signalen
35
LITERATUURSTUDIE : LOPEN OP TWEE BENEN n.^ .G. XWPHANS TECBNISCBE UNIVERSITEIT EINDBOVEN
Stepper toolbox been.m (hieronder afgedrukt) init-aan.m aanzicht.m an.m .c....,-.+
m
LlLLIW.Il1
r0t.m rPY .m b0dy.m v0et.m
been.m % deze functie tekent een beenmodel in drie aanzichten % nodig zijn twee vectors met hoek info van steun en zwaai been % deze functie maakt gebruik van de stepper toolbox function A=been(Thetsteun,Thet-zwaai); % defenitie van linkparameters: % Link var theta %O =ground O % 1 =foot O O % 2 =enkel th2 th2 th3 th3 % 3 =lowleg th4 th4 % 4 =upleg 90 th5 % 5 =hip th5 O th6 % 6 =body th6
alfa O 11 -90 O O
length O O 12 13 14 O O
15 O
distance O O O O
bodyb=lO; % breedte van de heup Link=[1:6]; %Thet-steun=[O 0.2 0.31 -0.5*pi 0.31 O %Thet-zwaai=[O 0.5 0.2 O O O]; Alfa=[O (-0S*pi) O O (OS*pi) O]; Leng=[-$ -4-30 -30 -4O]; Dist=[O O O O O O];
3;
% voor dominante (steun) been uitgaan van grond naar body
Al=~y(0,(0.5*pi),O)*trans(Leng( l),O,O);
A2=an(Thet-~teun(2),Alfa(2),Leng(2),Dist(2)); 36
LITERATUURSTUDIE :
H. T. G
.
XWPMANC
LOPEN OP TWEE BENEN EINDBOVEN
TECBNISCBE UNIVERSITEIT
A3=an(Thet-steun( 3),Alfa(3),Leng(3),Dist(3)); A4=an(Thet-st eun(4),Alfa(4),Leng(4) ,Dist(4)); A5=an(Thet-steun( 5),Alfa(5),Leng(5),Dist(5)); AG=an(Thet-~teun(6),Alfa(6),Leng(6),Dist(ó)); A-body =rpy(O,-0.5* pi,O) ;
____
m x7--- L - r _ _ _ _ ^:l---^ --:A L e d - . __,..._.-Ac 70 V U U L I l C l L W i l d l U C C I l U 1 l ~ d d l lV d l l U U U Y 1 1 4 4 1 V U C L
Al2=an(Thet_nvaai(2),Alfa(2),Leng(2),Dist(2)); A l l=an(Thet-zw aai(3),Alfa(3) ,Leng(3),Dist(3)); AlO=an(Thet-zwaai( 4),A1fa(4),Leng(4) ,Dist(4)); A9=an(Thet-zwaai( 5 ),Alfa(5),Leng(5),Dist(5)); A8=an(Thet_zwaai(6),Alfa(6),Leng(6),Dist( 6)); % Transformatie matrix voor iedere joint TO=eye(4); Tl=TO*Al; T2=Tl*A2; T3=T2*A3; T4=T3*A4; T5=T4*A5; T6=T5*A6; T_body=T6*A_body;
% Voor zwaai been uitgaan van body naar voet T7=T body *trans(0,-bodyb,O) * inv(A-body); T8=T?*inv(A8); T9=TShinv(A9); TlO=T9*inv(AlO); Tll=TlO*inv(All); T12=T11*inv(A12); T13=T 12*inv(A 1);
% functie voet maakt een viertalpunten uitgaande van voet T-matrix P-voet-s=voet(TO); P-voet-z=voet(T13); P b o d y =body(T-bod y) ; aanzicht(P-steun,’r-’); aanzicht(P-steun( :,[2:6]),’ro’); aanzicht(P-zwaai, ’g-’); 37
- -
LITERATUURSTUDIE 3
E T. G
KOOPMS
M P E N OP TWEE BENEN
TECHNISCHE UNIVERSITEIT EINDBOVEN
aanzicht(P-~waai(:,[1:5]),’go’); aanzicht(P-voet -s,’r-’); aanzicht(P voet-z, ’g-’); ,’y-’); aanzicht(Pbody end;
38
LITERATUURSTUDIE : LOPEN OP TWEE BENEN EI.T .G. KCOPluuiS TECBNISCBE UNIVERSITEIT EINDBOVEN
Voorbeeld van inverse kinematica berekening m.b.v stepper toolbox.
39
LITERATUURSTUDIE :
H.T.G.
LOPEN OP TWEE BENEN
KCOPHANS TECBNISCBE UNIVERSITEIT EINDBOVEN
Bijlage Prototypes Russische steltloper
LITERATUURSTUDIE :
H.T.G.
LOPEN OP TWEE BENEN
KWPHANS TECBNISCBE UNIVERSITEIT EINDBOVEN
Biper 3 en 4
25
LITERATUURSTUDIE : IDPEN OP TWEE BENEN H. T . G KOOPHANS TECBNISCBE UNIVERSITEIT EINDBOVEN
.
Universety of Kentucky
26
LITERATOORSTODIE : IX>PEN OP TWEE BENEN B.T.G. KOOPHANS TECBNISCBEUNIVERSITEIT EINDBOVEN
Walking robot WL-1OR
27
LITEWTUURSTUDIE : LOPEN OP TWEE BENEN H. T. G KWPMANS TECRNISCBE UNIVERSITEIT EINDBOVEN
.
Pneumatisch aangedreven buizen constructie
28
LITERATVORSTODIE : M P E N OP TWEE BENEN H.T.G. KWPUANS TECBNISCBE UNIVERSITEIT EINDBOVEN
n
Prototype Multi Motions
29