Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
-
Upload
muamer-dubravac -
Category
Documents
-
view
248 -
download
3
Transcript of Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
1/62
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
2/62
S
ET K TEME Z VRNOGRADA
Rad razmatra stabilnost esterononih (hexapod) robota s pravokutnim oblikom tijelarobota. Specifinost kretanja ove vrste robota jeste da prave dulje korake prema naprijed, dok sukod istih sa krunim tijelomovi koraci jednakih duljina. Tokom kretanja neophodno je osigurati
statiku stabilnost, odnosno da se centar mase robota nalazi unutar potpornog trokuta. U radu jepotrebno analizirati statiku stabilnost robota u razliitim stanjima lokomocije na horizontalnojravnini za razliite konfiguracije noge. Osim statike stabilnosti, razmatra se i dinamikastabilnost, odnosno upravljanje hodom s ciljem osiguranja da teite (centar mase) robota budeunutar konveksnog omotaa kojeg formiraju noge u dodiru s tlom. Unutar dinamike stabilnostirobot odrava stabilnost upravljanjem kretanja robota, modeliranjem i koritenjem inercije.Analizu stabilnosti i upravljanje kretanjem realizirati na fizikom modelu hexapod robota sapravougaonim oblikom tijela, te razviti odgovarajui softver za njegovo upravljanje.
A
BSTRACT
This paper analyses stability of hexapod robots with rectangular shape of body. What is
specific about movements of these robots is that they make longer steps forward, while those
steps are of equal length at robots with hexagonal shape of body. It is necessary to provide static
and dynamic stability during movements, apropos to ensure that center of mass of the robot is
placed inside supporting triangle. In the paper is required to analyse static stability of the robot
in various states of locomotion on the horizontal plane for different configuration of leg. Apart
from static stability, it is also required to analyse dynamical stability which includes control of gait
in order to ensure that center of mass of the robot is inside convex polygon formed by feet in
contact with ground. Within dynamical stability, robot maintains its stability by controlling the
movements, modelling and using inertia. It is required to implement stability analysis and motioncontrol on the physical model of a hexapod robot with rectangular shape of body, as well as to
develop corresponding software for its control.
P
OLAZNA LITERATURA
1. X. Ding, Z. Wang, A. Rovetta and J.M. Zhu (2010). Locomotion analysis of hexapod robot,in book: Climbing and Walking Robots, Behnam Miripour (Ed.), InTech, Vienna, Austria, pp.
291-310.
2. S. Manoiu-Olaru and M. Nitulescu (2013). Stability analysis software platform dedicated
for a hexapod robot, in book:Advances in Intelligent Systems and Computing,Vol. 187, pp143-156, Springer, Germany.3. M. M. Agheli Hajiabadi (2013). Analytical workspace, kinematics and foot force based
stability of hexapod walking robots, PhD Thesis, Worcester Polytechnic Institute, USA.
Mentor:
Red.prof.dr. Jasmin Velagi, dipl.ing.el.
____________________________________________
http://link.springer.com/bookseries/11156http://link.springer.com/bookseries/11156http://link.springer.com/bookseries/11156http://link.springer.com/bookseries/11156 -
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
3/62
SADRAJ
1 Uvod ..................... ...................... ..................... ...................... ...................... ...................... ...................... ..................... .. 1
2 Mehanika konstrukcija......................................................................................................................................... 3
2.1 Uvod ...................... ..................... ...................... ...................... ...................... ...................... ...................... ............ 3
2.2 Servo motor Hitec HS-485HB .................... ...................... ...................... ...................... ..................... ......... 4
2.2.1 Princip rada ................... ...................... ...................... ...................... ...................... ..................... ............. 4
2.2.2 Specifikacije servo motora HS-485HB.................... ..................... ...................... ...................... ..... 5
2.3 Serijski Servo Kontroler SSC-32 ...................... ...................... ...................... ...................... ..................... .. 6
2.3.1 Hardverske informacije ...................... ...................... ...................... ...................... ..................... ......... 7
2.3.2 Softver .................... ..................... ...................... ...................... ...................... ..................... ...................... .. 9
2.3.3 FlowBotics Studio SSC-32 Servo Sequencer ...................... ...................... ..................... .......... 11
2.4 BotBoarduino ................... ..................... ...................... ...................... ...................... ...................... ................ 12
2.4.1 Hardverske informacije ...................... ...................... ...................... ...................... ..................... ...... 12
2.4.2 Softver .................... ..................... ...................... ...................... ...................... ..................... ..................... 15
2.5 Napajanje................................ ..................... ...................... ..................... ...................... ...................... ............. 16
2.6 Shema spajanja .................... ..................... ...................... ..................... ...................... ...................... ............. 17
2.7 Zakljuak ......................................................................................................................................................... 19
3 Kinematika ................... ..................... ...................... ...................... ...................... ...................... ...................... ......... 20
3.1 Uvod ...................... ..................... ...................... ...................... ...................... ...................... ...................... ......... 20
3.2 Pozadina ...................... ..................... ...................... ...................... ..................... ...................... ...................... .. 20
3.3 Inverzna kinematika noge hexapod robota ...................... ...................... ..................... ..................... 21
3.4 Zakljuak ......................................................................................................................................................... 23
4 Stabilnost ...................... ..................... ...................... ...................... ...................... ...................... ...................... ......... 24
4.1 Uvod ...................... ..................... ...................... ...................... ...................... ...................... ...................... ......... 24
4.2 Margine stabilnosti ...................... ...................... ..................... ...................... ...................... ..................... ... 24
4.2.1 Margine statike stabilnosti........................................................................................................... 25
4.2.2 Margine dinamike stabilnosti ..................................................................................................... 26
4.3 Dinamika stabilnost .................................................................................................................................. 28
4.3.1 Kompleksni kontroleri .................... ...................... ...................... ...................... ..................... .......... 29
4.3.2 Mapiranje na jednostavne modele ................... ...................... ...................... ...................... ......... 29
4.3.3 Utjecaj poze robota na margine stabilnosti .................... ...................... ...................... ............. 29
4.4 Analiza hoda hexapod robota .................... ...................... ...................... ...................... ..................... ...... 31
4.4.1 Valni hod ................... ..................... ...................... ...................... ...................... ...................... ................ 32
4.4.2 Vievalni hod ........................................................................................................................................ 35
4.4.3 Trononi hod ........................................................................................................................................ 36
4.5 Zakljuak ......................................................................................................................................................... 41
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
4/62
5 Eksperiment .................... ..................... ...................... ...................... ...................... ...................... ...................... ..... 43
5.1 Uvod ...................... ..................... ...................... ...................... ...................... ...................... ...................... ......... 43
5.2 Programski kd ............................................................................................................................................ 44
5.2.1 Programski kd za valni hod......................................................................................................... 46
5.2.2 Programski kd za vievalni hod................................................................................................. 49
5.2.3 Programski kd za trononi hod ................................................................................................. 51
5.3 Zakljuak ......................................................................................................................................................... 54
6 Zakljuak ................................................................................................................................................................... 56
7 Bibliografija...................... ..................... ...................... ...................... ...................... ...................... ...................... ..... 57
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
5/62
1
1 U
VOD
Moderna istraivanja na polju robotike su sve vie inspirisana biologijom. ivotinjepredstavljaju zlatni standard kad je rije o lokomociji. Njihova sposobnost kretanja na razliitimterenima je jo uvijek neuporedivo bolja od sposobnosti robota. Tako su razvijeni razliiti tipovibio-inspirisanih robota, meu kojima je i esterononi (hexapod) robot. Brojne su prednostinonih robota u odnosu na robote sa kotaima jer noni roboti ne zahtijevaju stalni kontakt spodlogom da bi se kretali. Ova osobina none robote ini pogodnim za primjene na neravnimterenima. Postoji vie tipova nonih robota. Na slikama 1.1 ., 1.2. i 1.3. prikazani su dvononi(biped) robot, vienoni (etverononi) robot i jednononi (hopper) robot respektivno.
Slika 1.1.Nao (Aldebaran Robotics) Slika 1.2.Boston Dynamics Big Dog Slika 1.3.Toyota Monoped
esterononi (hexapod) robot je tipian primjer robota inspirisanog anatomijom ilokomocijom insekta. Takoer,hexapod roboti mogu biti stabilni i kretati se u sluaju otkazivanjajedne ili ak dvije noge, odnosno kae se da su tolerantni na kvarove. Lahko odravaju statikustabilnost na tri ili vie nogu. Veoma su fleksibilni u pogledu naina kretanja. Istraivanja supokazala da se sa poveanjem broja nogu iznad est ne poveava brzina hodanja [ 1]. Hexapodroboti takoer mogu koristiti jednu, dvije ili tri noge kao ruke u svrhu izvravanja kompleksnihoperacija. Zbog toga su oni pouzdani u primjenama kao to su izvianje nepoznatog terena,podvodna istraivanja, primjene u podrujima nakon prirodnih katastrofa, u naftnim buotinama,iskopinama i sl. Zahtjevi koje robot mora zadovoljiti da bi bio koriten u navedene svrhe sumobilnost, manipulabilnost i stabilnost.
Najinteresantniji i najistraeniji problem vezan za vienone robote jeste planiranjekretanja. Sa aspekta stabilnosti, kretanje robota se moe podijeliti na dinamikokretanje gdjespadaju tranje, skakanje i hodanje po neravnom terenu, te statiki stabilno kretanje topodrazumijeva hodanje.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
6/62
U v o d | 2
Statiki stabilno kretanje zahtijeva stabilnost tijela robota u svakom trenutku. Da bi robotbio statiki stabilan, vertikalna projekcija njegovog centra mase se mora nalaziti unutarkonveksnog poligona kojeg formiraju noge u dodiru sa tlom. Dinamiki stabilno kretanjepodrazumijeva i koritenje inercije. Za razliku od hopper i biped robota, hexapod roboti su statikistabilni. Meutim, sloenost problema stabilnosti se ogleda u tome to vrlo male promjene fizikih
parametara robota (kao to su krutost i priguenje) mogu rezultirati velikim promjenama brzinei stabilnosti robota.
Najpopularniji hexapod roboti se mogu podijeliti u dvije skupine, pravougaone i
heksagonalne. Pravougaoni hexapodi imaju pravougaono tijelo sa po tri noge simetrinorasporeene na dvjema stranama. Heksagonalni hexapodi imaju estougaono ili kruno tijelo sajednako rasporeenim nogama. Istraivanja su pokazala da heksagonalni roboti u mnogimaspektima pokazuju bolje performanse od pravougaonih robota. Heksagonalni roboti se znatno
bolje rotiraju i kreu u svim smjerovima u poreenju sa pravougaonim, te imaju due marginestabilnosti od pravougaonih. Takoer je pokazano da optimiziranje strukture pravougaonoghexapod robota u smislu produavanja srednjih nogu pomae u tednji energije [2]. Ovaj ishod se
moe posmatrati kao neka vrsta tranzicije od pravougaonih do heksagonalnih esterononihrobota.
Ovaj rad e opisati razvoj, implementaciju hoda, te analizu strukture i lokomocije hexapodrobota, posebno se osvrui na njegovu statiku stabilnost. Bit e analizirane tri vrste hodahexapod robota:
Valni hod,
Vievalni hod, Trononi hod.
Navedene tri vrste hoda su implementirane na fizikom modeluLynxmotion BH3-KThexapod
robota s pravougaonim oblikom tijela proizvoaaLynxmotion s ciljem demonstracije stabilnostihoda robota. Koriteni fiziki model robota na kojem su implementirane navedene tri vrste hodaje radi kratkoe nazvan AMINA1.
1AMINA je akronim od 'Advanced Mobile Independently NavigatedAutomaton'
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
7/62
3
2 MEH NIK KONSTRUKCIJ
A
2.1 UVOD
Analiza stabilnosti i upravljanje kretanjem realizirani su na fizikom modelu hexapodrobota s pravougaonim oblikom tijela, AMINA (Slika 2.1). Na svakoj od est nogu robota AMINAnalaze se po tri servo Hitec HS-485HBmotora (Slika 2.2). Upravljanje motorima vri se putem SSC-32 pogonskog sistema sa pojaalima kojim upravlja BotBoarduino, kontroler na bazi ArduinoDuemilanove,koji alje komande na SSC-32 putem serijske komunikacije koristei TTL standard.
Slika 2.1.3DOF BH3 KT robot proizvoaa Lynxmotion
Specifikacije i dimenzije robota date su u tabelama 2.1 i 2.2 respektivno.
Tabela 2.1: Specifikacije robota Lynxmotion BH3 KT
Servo upravljanje kretanjem Lokalno u zatvorenoj petlji
Upravljaki sistem SvesmjerniBroj nogu 6
Broj stepeni slobode po nozi 3
Brzina kretanja [cm/s] 25.4
Udaljenost od tla [cm] do 10.16
Tijelo robota sastoji se od gornjeg i donjeg panela, te est nogu, tri sa jedne i tri sa suprotnestrane. Konstrukcija je napravljena od laserski sjeenog leksana, napredne polikarbonatneplastike koja je vra od pleksiglasa i prilino lagana[3].
Tabela 2.2: Dimenzije robota Lynxmotion BH3 KT
Dimenzije (ukupno) [mm] 368 (L) x 356 (W) x 159 (H)
Dimenzije (tijelo) [mm] 330 (L) x 89 (W) x 51 (H)
Masa (bez baterija) [kg] 1.871
Duina noge (coxa + femur + tibia) [cm] 4.7 + 8.3 + 12.6
Kao to je prikazano na slici 2.2., noga robota AMINA ima tri stepena slobode, odnosno trizgloba, a posljedino i tri segmenta noge izmeu zglobova. Konstrukcija noge ovakvog hexapod
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
8/62
M e h a n i k a k o n s t r u k c i j a | 4
robota je inspirisana biologijom i odgovara morfologiji noge insekta, sa odreenimzanemarenjima. Zbog toga se za segmente noge robota nerijetko koriste latinski nazivi, isti kao i
za segmente noge insekta: coxa,femuri tibia. U nastavku ovog rada koristit e se sljedei nazivi(slika 2.2.): kuk krajnji desni zglob noge, koljeno srednji zglob, lanak krajnji lijevi zglob; coxa segment noge izmeu kuka i koljena, femur segment noge izmeu koljena i lanka, tibia
segment noge koji poinje u lanku a zavrava stopalom.
(a) (b)
Slika 2.2.Mehanika konstrukcija jedne noge 3DOF robota (a) sa shematskim prikazom zglobova i segmenata (b).
U ovom poglavlju su date specifikacije svih hardverskih komponenti od kojih je robot
AMINA sastavljen. Objanjen je princip rada servo motora, kao i nain njegovog upravljanja.
Upravljanje servo motorom se vri koritenjem servo kontrolera SSC 32, te su predstavljenenjegove znaajke koritene u eksperimentalnom dijelu rada, kao i sintaksa programiranja.Takoer su date hardverske specifikacije nadreenog kontrolera, BotBoarduino, i opisano jenapajanje robota. Date su sheme spajanja svih hardverskih komponenti robota AMINA, te je
opisan nain konfigurisanja koritenih kontrolera.
2.2 SERVO MOTOR HITEC HS 485HB
2.2.1
Princip rada
Servo motor posjeduje tri prikljuka, jedan upravljaki i dva putem kojih se motoru dovodinapajanje. Upravljaki signal se koristi za upravljanje ugaonom pozicijom izlazne osovine i toPWM (Puls-Width Modulation) signal amplitude 3-5 V.
Trajanje impulsa PWM signala odreuje poziciju osovine servo motora. Dok god jeupravljaki signal prisutan, servo motor zadrava poziciju svoje osovine. Pri pojavi signala, motorrotira osovinu u smjeru u kojem e se najprije ostvariti zadana pozicija. Kada sepozicija ostvari,osovina se zaustavlja i zadrava poziciju.
irina impulsa je 0.5 do 2.5 ms za kretanje osovine od 180. Sredina opsega kretanjaosovine je na 1.5 . Krai impulsi okreu osovinu u smjeru kazaljke na satu, a dui suprotno, kaoto je prikazano na slici 2.3.. Upravljaki signali servo motora imaju period od
20 . Faktor
ispune (duty cycle) impulsa unutar perioda upravlja pozicijom izlazne osovine. Naprimjer, ako se
osovina eli dovesti na ugao od 90, potrebno je da impuls upravljakog signala traje 0.5
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
9/62
M e h a n i k a k o n s t r u k c i j a | 5
(faktor ispune od 2.5%); kako bi se osovina pozicionirala u centralnu poziciju (0), irina impulsatreba biti 1.5 (faktor ispune 7.5%); ukoliko je potrebno pozicionirati osovinu na ugao od 90,potrebna irina impulsa je 2.5 (faktor ispune 12.5%). U nastavku ovog rada, termin 'pozicijaservo motora' i 'irina upravljakog impulsa u s' e se poistovijetiti.
Slika 2.3.Signali za upravljanje servo motorom
Slika 2.4.Opseg zakretanja servo Hitec HS-485HB motora sa pripadnim signalima
2.2.2 Specifikacije servo motora HS 485HB
Hitec servo HS-485HB [4] se moe napajati naponom opsega 4.8 6.0 V. Ovaj motorposjeduje tri izvoda. Crna ica predstavlja negativni pol napona napajanja, crvena (srednja)predstavlja pozitivni pol napona napajanja, dok se utom prenosi upravljaki signal.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
10/62
M e h a n i k a k o n s t r u k c i j a | 6
Slika 2.5.Hitec servo HS-485HB
Tehnike specifikacije Hitec HS-485HB motora date su u tabeli 2.3.
Tabela 2.3: Detaljne specifikacije Hitec HS - 485HB servo motora
Sistem upravljanja + irinsko impulsno upravljanje1.5 ms neutralni poloajZahtijevani signal 3 5 V unipolarne etvrtkeRadni napon [V] 4.8 6.0Radna temperature [C] -20 do +60Radna brzina (4.8 V) 0.22 sec/60 bez teretaRadna brzina (6.0 V) 0.18 sec/60 bez teretaMoment usporenja (4.8 V) 4.8 kg cm
Moment usporenja (6.0 V) 6.0 kg cm
Modifikabilna kontinuirana rotacija da
Smjer U smjeru kazaljke; signal 1.5 1.9 msOdvod struje (4.8 V) 8 mA/prazan hod i 150mA rad bez tereta
Odvod struje (6.0 V) 8.8 mA/prazan hod i 180mA rad bez tereta
Mrtva zona 8 sTip motora Feritni motor sa 3 pola
Tip zupanika Karbonski zupaniciDuina spojnih vodia[mm] 300Dimenzije [mm] 39.88 x 19.81 x 37.85
Masa [g] 45
2.3 SERIJSKI SERVO KONTROLER SSC 32
SSC 32 (Serial Servo Controller) [5] je mali preasemblirani servo kontroler sa velikimznaajkama. Ima visoku rezoluciju (1s) za tano pozicioniranje i znaajno glatke pokrete.Upravljanje kretanjem moe biti sa trenutnim odzivom, upravljano brzinom, vremenskiogranieno ili kombinacijanavedenih. Unikatni 'grupni pokret' dozvoljava bilo kojoj grupi servomotora da zaponu i zavre pokret istovremeno, ak i ako pojedini servo motori moraju opisatirazliite uglove. Ovo je veoma mona osobina koja umnogome olakava kreiranje sloenih hodovakod hodajuih robota sa velikim brojem servo motora.
Mogue je poslati upit sa nadreenog raunara na servo kontroler i na taj nain dobitipovratnu informaciju o poziciji ili pokretu servo motora. Bilo koji izlaz moe biti koriten kao izlazTTL logikog nivoa. Postoje 4 digitalna ulaza koja mogu biti staticili latching, a mogu se koristiti
i kao analogni ulazi. Postoje tri terminala za opcije napajanja. DB9 ulaz koristi RS 232 standardza komunikaciju sa PC raunarom.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
11/62
M e h a n i k a k o n s t r u k c i j a | 7
2.3.1
Hardverske informacije
Topologija SSC 32 kontrolera prikazana je na slici 2.6.. Crnom bojom su oznaenikratkospojnici prema rasporedu po isporuci koji odreuju odreene parametre za rad kontrolera.Meutim, potrebno ih je prilagoditi zahtjevima korisnika. U nastavku e biti vie rijei o nainukoritenja i spajanja SSC 32 kontrolera u svrhu upravljanja robotom AMINA. Tehnikespecifikacije SSC 32 date su u tabeli 2.5..
Slika 2.6.SSC 32
Brojem 1 na slici 2.6. oznaen je regulator napona koji daje 5 VDC na izlazu ako je barem5.5 VDC na ulazu. Ovo moe biti vano ako se robot napaja iz baterije. Maksimalni ulazni napon je9 VDC. Regulator je kalibrisan za 500 mA ali proizvoa ploice ga je ograniio na 250 mA kako bise izbjeglo eventualno pregrijavanje.
Terminal oznaen brojem 2 na slici 2.6. slui za napajanje servo kanala rednih brojeva 1631. Potrebno je dovesti od 4.8 do 6.0 VDC za napajanje servo motora. Autor rada je koristio 5-elijsku NiMH bateriju ije specifikacije su date u poglavlju 2.4., te na terminal 2 doveo napon od6 VDC.
Kratkospojnici oznaeni brojem 3 na slici 2.6. slue za povezivanje VS1(Voltage Servo 1)na VS2. Obzirom da robot AMINA koristi jednu bateriju za napajanje svih 18 servo motora
potrebno je zadrati oba kratkospojnika. Kada bi se koristile dvije baterije za svaku stranukontrolera, tada bi trebalo ukloniti oba kratkospojnika.
Brojem 4 na slici 2.6. oznaen je ulaz za napajanje logike VL. Ovaj ulaz se tipinokoristi sa9 VDC baterijom koja napaja integralna kola i sve to je spojeno na pet-voltne linije na ploici.Validan opseg za ovaj terminal je 6 9 VDC. Ovaj ulaz se koristi za razdvajanje napajanja servomotora i logike. Potrebno je ukloniti VS1=VL kratkospojnik kada se servo motori napajaju
odvojeno od logike VL. Robot AMINA koristi jednu bateriju za cjelokupno napajanje pa se na VL
ulaz nita se spaja.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
12/62
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
13/62
M e h a n i k a k o n s t r u k c i j a | 9
Tabela 2.5: Detaljne specifikacije serijskog servo kontrolera SSC 32
Mikrokontroler Atmel ATMEGA168-20PU
EEPROM 24LC32P
Brzina [MHz] 14.75
Interni sekvencer Hexapod sa 12 servo motora (trononi hod)
Serijski ulaz RS 232 ili TTL log. nivo; 2400, 9600, 38.4k, 115.2k, N81Izlazi 32 (Servo ili TTL)Ulazi 4 (Static ili Latching; Analogni ili Digitalni)
Strujni zahtjevi 31 mA
Modifikabilna kontinuirana rotacija da
PC interfejs DB9F
Servo upravljanje 32 servo motora direktno prikljuenaPodrani tip servo motora Futaba ili HitecOpseg zakretanja servo motora 180Servo rezolucija 1 s, 0.09Rezolucija brzine servo-a 1 s/secServo upravljanje kretanjem Trenutno, Vremensko, Brzinsko ili Sinhronizirano
Dimenzije [mm] 76.2 x 58.42
VS strujni kapacitet 15 A po strani, 30 A max
2.3.2
Softver
SSC 32 kontroler koristi sopstvenu sintaksu za kodiranje naredbi. Sve komande morajuzavriti znakom za oznaku kraja reda (Carriage Return, CR, ASCII 13). Mogue je simultano izdativie komandi u komandnoj grupi. Sve komande u komandnoj grupi e se izvriti nakon primanjaCR znaka. Komande razliitih tipova se ne mogu koristiti mjeovito u istoj komandnoj grupi.Takoer, numeriki argumentiza sve SSC 32 komande moraju biti ASCII stringovi decimalnih
brojeva npr '1234'. Neke komande kao argumente mogu primiti i negativne brojeve npr. '-5678'.ASCII format ne pravi razliku izmeu velikih i malih slova (nije case sensitive). Razmaci, tabovi iprelazi u novi red se ignoriu.
Tabela 2.6: Tipovi i grupe komandi
1 Servo pokret 7 itanje analognih ulaza2 Diskretni izlaz 8 Sekvencer hoda za 12servo hexapod3 Bajt izlaz 9 Upit za hexapod sekvencer
4 Upit za status pokreta 10 Daj verziju
5 Upit za irinu impulsa 11 Idi na pokretanje6 itanje digitalnih ulaza 12 MiniSSC-II kompatibilnost
U nastavku e biti obraene komande koritene za programiranje robota AMINA.
2 3 2 1 Pomjeranje servo motora ili grupni pomak
Komanda za pomjeranje jednog ili vieservo motora ima oblik
# P S ... # P S T
U tabeli 2.7 dat je pregled segmenata komande za pomjeranje jednog servo motora.
Pozicija servo motora Hitec HS 485HB moe biti u opsegu [-90, 90] to odgovara irini
impulsa PWM upravljakog signala opsega [500s, 2500s]. Dakle, moe se izraunati
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
14/62
M e h a n i k a k o n s t r u k c i j a | 10
karakteristika koja daje ugao zakreta servo motora u ovisnosti od irine impulsa umikrosekundama koji se alje motoru, i predstavljena je linearnom jednadbom:
[] 0.09 [] 135 2.1Tabela 2.7: Komande za upravljanje servo motorom
Redni broj kanala; decimalni broj 0 31 irina impulsa u s, 500-2500 Brzina pomjeraja u s po sekundi za jedan kanal (opcionalno) Vrijeme u ms za cijeli pomjeraj, utie na sve kanale, 65535 max (opcionalno)
Znak za oznaku kraja reda, ASCII 13 (potreban za poetak akcije) Otkazivanje trenutne akcije, ASCII 27
Primjer 1: #5 P1600 S750
Ovaj primjer e zakrenuti servo spojen na kanal 5 na poziciju 1600 (to odgovara 9).Pomjeranje e se vriti od trenutne pozicije stopom od 750 s po sekundi dok se ne dostigne
zadana pozicija. Argument brzine moe biti neintuitivan na prvi pogled, stoga e biti poblieobjanjen. 1000s putovanja rezultira rotacijom od 90. Shodno tome, vrijednost brzine od100s/sec znai da servo motor treba 10 sekundi da bi se zakrenuo za ugao 90. S druge strane,vrijednost brzine od 2000s/sec e zahtijevati 500ms za zakretanje motora za isti ugao.
Primjer 2: #5 P1600T1000
Ovaj primjer e pomjeriti servo spojen na kanal 5 na poziciju 1600. Zakret e trajati 1sekundu bez obzira na to za koliko se servo mora zakrenuti da bi dostigao ovu poziciju.
Primjer 3(grupni pomjeraj): "#5 P1600 #10 P750 T2500 "
Ovaj primjer e zakrenuti servo spojen na kanal 5 na poziciju 1600 i servo spojen na kanal
10 na poziciju 750. Bit e potrebne 2.5 sekunde da se izvri cijeli pomjeraj, ak iako jedan servotreba vei zakret od drugog. Oba servo motora e se pokrenuti i zaustaviti u istom trenutku. Ovoje veoma mona komanda jer omoguava sinhronizaciju zahtjevnih hodova kod hodajuih robotana jednostavan nain.
Mogue je kombinovati komande brzine i vremena po elji. Brzina za svaki pojedinaniservo e biti izraunata prema sljedeim pravilima:
1) Svi servo motori e zapoeti i zavriti zakret simultano.2) Ako je specificirana brzina za servo, on se nee kretati bre od zadane brzine, ali se
moe kretati sporije ukoliko to vremenska komanda zahtijeva.3) Ako je specificirano vrijeme trajanja pomaka, tada e se pomak izvriti barem za
vrijeme koje je zadano, ali moe trajati i due ukoliko to komande brzine zahtijevaju.
Vrlo je vano da prva komanda za pozicioniranje servo motora bude obina #P komanda. Poto kontroler ne zna poziciju servo motora nakon samog ukljuivanja,ignorisat e komande brzine i vremena dok se ne primi prva ovakva komanda.
2 3 2 2 Upit o trenutnoj poziciji i pokretu
Mogue je ispitati status kretanja odreenog motora, kao i trenutnu poziciju motora.
Ispitivanje statusa kretanja motora vri se komandom Q . Ova naredba e vratitiznak .(taka)Ako je prethodni pomjeraj zavren, odnosno +(plus) ako je pomjeraj u toku.
Vremensko kanjenje povratne informacije moe biti u opsegu od 50s do 5ms.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
15/62
M e h a n i k a k o n s t r u k c i j a | 11
Komanda koja je koritena pri programiranju nekih funkcija robota AMINA jeste komandaza upit o trenutnoj poziciji motora, odnosno irini PWM signala koja odreuje poziciju motora.Format ove komande je QP . Ona vraa jedan bajt (u binarnom formatu) kojipredstavlja irinu impulsa servo motora, odreenog brojem pina na koji je spojen , sarezolucijom od 10 s. Naprimjer, ukoliko se servo motor nalazi na poziciji 1500s, vraeni bajt bi
bio 150 (binarno).
Mogue je ispitati poziciju veeg brojaservo motora u jednoj komandi. Povratna vrijednostje veliine jedan bajt po servo motoru. Takoer, javlja se vremensko kanjenje od od 50s do 5ms prije slanja povratne informacije. Tipino vrijeme potrebno za primanje povratne informacijeje 100 s.
2.3.3
FlowBotics Studio SSC 32 Servo Sequencer
Jednostavno upravljanje servo motorima putem SSC 32 servo kontrolera je omoguenopomou SSC 32 Servo Sequencer Utility. Forma ove aplikacije prikazana je na slici 2.7., a ona
omoguava direktno pomijeranje servo motora zadavanjem komandi na PC raunaru, kalibriranjenjihove pozicije, pohranu i reprodukciju sekvenci zadanih pokreta i mnoge druge.
Slika 2.7. SSC 32 Servo Sequencer Utility
Ova aplikacija koritena je za inicijalnu kalibraciju servo motora robota AMINA. Poto nijemogue fiziki podesiti sasvim tanu eljenu srednju poziciju servo motora zbog ljudskog faktoranepreciznosti, odstupanje od srednje pozicije izmjereno je pomou ove aplikacije i uneseno kaooffset vrijednostu softver koji upravlja kretanjem robota. Na slici 5.2.prikazan je model robota
zajedno sa numerikim vrijednostima srednje pozicije svakog servo motora.
Kontroler SSC 32 se fiziki povezuje sa PC raunarom putem DB9 kabla (port oznaenbrojem 12 na slici 2.6.). Da bi komunikacija bila uspjena, potrebno je kratkospojiti pinove TX iRX, te podesiti brzinu prijenosa podataka na 115.2k. Nakon fizikog povezivanja, potrebno je
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
16/62
M e h a n i k a k o n s t r u k c i j a | 12
ukljuiti napajanje robota, te pokrenuti FlowBotics Studio i kreirati novi projekat. Projekat jenapravljen tako da automatski detektuje COM port, meutim on se moe i runo promijeniti.Softver e automatski traiti SSC 32, to je se prikazuje blinkanjemAutooznake u aplikaciji. Kadaje pronaen, zasvijetle i Auto i Foundoznake. Tada je robot uspjeno konektovan i spreman zamanipulaciju.
U konzolu na slici 2.7. je mogue upisivati naredbe i slati ih neposredno na kontroler. Sdruge strane, pomou klizaa je mogue mijenjati pozicije servo motora, grupisati motore uskupine i zadavati grupne poteze, snimati uzorke poteza, reproducirati ih i slino.
2.4 B
OT
B
OARDUINO
BotBoarduino [6] je razvojni sistem zasnovan na sistemu Arduino Duemilanove i namjenski
dizajniran za Lynxmotion robote. Kretanje robota je implementirano neposredno na ovom
sistemu.
2.4.1 Hardverske informacije
Topologija SSC 32 kontrolera prikazana je na slici 2.8. Crnom bojom su oznaenikratkospojnici prema rasporedu po isporuci koji definiraju odreene parametre za radkontrolera. Meutim, potrebno ih je prilagoditi zahtjevima korisnika. U nastavku e biti vie rijeio nainu spajanja BotBoarduino sistema u svrhu upravljanja AMINA robotom.
Slika 2.8.BotBoarduino
Dimenzije ploice su 7.62(L) x 5.84(W) [cm]sa 0.3175 [cm] rupama udaljenim 0.381 [cm]
od svake ivice. Takoer zadrava sve funkcionalnosti tipinog Arduina.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
17/62
M e h a n i k a k o n s t r u k c i j a | 13
BotBoarduino je baziran na Arduino Duemilanove. Pri razvoju spoftvera potrebno je
odabrati ToolsBoard 'Arduino Duemilanove w/ATmega328' u Arduino razvojnom okruenju.Fiziko povezivanje kontrolera sa PC raunarom ostvaruje se putem USB Mini kabla.
Pinovi oznaeni brojem 2 na slici 2.8. su povezani na FTDI, CTS, DSR i RI signale. Savjetujese oprez pri koritenju istih jer mogu sprijeiti BotBoarduino da se programira.
Brojem 3 na slici 2.8. oznaena je LED koja indicira napajanje. Ukoliko je napajanje naregulatoru ploice valjano ukljuit e se uta LED.
Kratkospojnik oznaen brojem 4 na slici 2.8. predstavlja zvunik na ploici. Za koritenjezvunika potrebno je poslati adekvatnu komandu za generisanje zvuka na pin 5.
Brojem 5 na slici 2.8. oznaene su tri LED i tri tastera koji koriste tri I/O linije i inejednostavni UI za korisniki program. Ako se na I/O liniju poalje izlaz niskog nivoa, LED se moeukljuiti. Ukoliko se I/O linija nakratko postavi za ulaznu, ona moe biti proitana i na taj nain semoe utvrditi da li je taster pritisnut. Savjetuje se oprez pri koritenju ovih linija jer sepin moeotetiti u sluaju slanja vieg naponskog nivoa na izlaz I/O linije. Za koritenje ovih LED i tasterapotrebno je instalirati kratkospojnike JA, JB i JC.
Tabela 2.8: Tasteri
I/O Taster/LED
Pin 7 A Crvena
Pin 8 B Zelena
Pin 9 C uta
Brojem 6 na slici 2.8. oznaeni su pinovi za spajanje servo motora, kontrolera, senzora itd.Savjetuje se oprez pri spajanju vanjskih ureaja na ove portove. Dok je ploica pod naponom nijepoeljno spajati nove vanjske ureaje. Vanjski red predstavlja uzemljenje, srednji napajanje, aunutranji signal.Kako se za izvravanje komandi robota AMINA koristi SSC 32 kontroler, ovipinovi nisu koriteni.
Brojem 7 na slici 2.8. oznaeni su konfiguracijski pinovi za srednji red I/O porta. NapajanjeI/O porta moe biti VL (+5 VDC sa regulatora sa ploice) ili VS (direktno sa ulaza za napajanjeservo motora). Ovo se radi u bankama od etiri I/O pina. Savjetuje se oprez jer dovoenje servonapona na ovaj red moe uzrokovati tetu vanjskim ureajima koji su povezani na njega, a radena 5 VDC. Autor rada je podesio 5 VDC na svim bankama.
Port za povezivanje Sony Playstation dojstika oznaen je brojem 8 na slici 2.8. SonyPlaystation dojstik se moe koristiti za upravljanje robotom, meutim ova znaajka nije
koritena u ovom radu.
Grupa pinova oznaena brojem 9 na slici 2.8. predstavlja ICSP pinove. Oni dozvoljavajuprogramiranje ipa eksternim programerom, to nije koriteno u ovom radu.
Brojem 10 na slici 2.8. oznaen je konektor koji izvodi pinove arduina 0 i 1, kao iuzemljenje, te na taj nain omoguava povezivanje BotBoarduina sa SSC 32. Za vrijemeprogramiranja potrebno je ukloniti sve spojeno na ove pinove.
Brojem 13 na slici 2.8. oznaen je kratkospojnik koji povezuje VL sa VS ulazom, toomoguava napajanje servo motora i logike iz iste baterije. Ako se koristi ova opcija, tada se nitane spaja na VL ulaz. Ovaj kratkospojnik je uklonjen jer se logika ploice napaja sa baterije, a
napajanje za VS nije potrebno s obzirom da nita nije spojeno na izlazne pinove.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
18/62
M e h a n i k a k o n s t r u k c i j a | 14
Dugme oznaeno brojem 14 na slici 2.8. resetuje mikrokontroler kada se pritisne. Ova opcijamoe biti korisna za pokretanje razliitih programa u ovisnosti od toga koje SUI dugme jepritisnuto pri resetu.
VS ulaz (servo napon) je oznaen brojem 15 na slici 2.8. Servo napon moe imati vrijednostu opsegu od 4.8 VDC do 7.2 VDC. Meutim, neki servo motori ne toleriu napon vei od 6 VDC.Ovaj ulaz obezbjeuje napajanje za servo motore, ili ako je instaliran VS=VL kratkospojnik tada sesa VS ulaza napajaju i servo motori i logika ploice.
VL ulaz (napon logike) je oznaen brojem 16 na slici 2.8. Ovaj ulaz se tipino koristi sabaterijom od 9 VDC koja obezbjeuje napajanje za mikrokontroler i ostale komponente povezanena pet-voltne linije na ploici. Ovaj ulaz se takoer moe koristiti za izolaciju VL od VS. Autor radaje doveo napon baterije na VL ulaz.
Brojem 17 na slici 2.8. oznaeni su pinovi koji odreuju izvor napajanja za ploicu. Ukolikose ploica napaja sa USB porta na ploici, potrebno je odabrati USB. Ukoliko se ploica napaja izVL terminala, potrebno je odabrati EXT.
Naponski regulator je oznaen brojem 18 na slici 2.8. i obezbjeuje 5 VDC na izlazu ukolikona ulazu ima barem 5.4 VDC. Ovo je vano kada se robot napaja iz baterije. Regulator moe primitinajvie 12 VDC na ulazu. Kalibrisan je za 1.5 A.
Brojem 19 na slici 2.8. oznaen je prostor predvien za sve eksterne hardverske ureajekompatibilne sa Arduinom.
Brojem 20 na slici 2.8. su oznaene statusne LED ije su funkcionalnosti navedene u tabeli2.9..
Tabela 2.9: Statusne LED na BotBoarduino
LED FunkcijaL Direktno spojena na P13 na Arduino ipu
TX Blinka u toku slanja podataka
RX Blinka u toku primanja podataka
Brojem 21 na slici 2.8. oznaeno je mjesto gdje je spojen ATmega 328 ip. Raspored pinovaATmega 328 ipa prikazan je na slici 2.9.
Slika 2.9. Raspored pinova na ATmega 328 ipu
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
19/62
M e h a n i k a k o n s t r u k c i j a | 15
2.4.2
Softver
Razvojno okruenje u kojem se programira BotBoarduino je Arduino IDE (Slika 2.10.),verzija Arduino IDE 1.5 ili skorija. Arduino IDE sadri editor teksta u kojem se pie kd, prostorza poruke, konzolu, traku sa alatima (toolbar) sa dugmadima za uobiajene funkcije i menijima.Povezuje se sa hardverom i uitava programe, te komunicira sa njima. Programski kd se pieprogramskim jezikom C/C++.
Softver napisan u Arduino IDE se naziva skica(sketch). Skice se piu u editoru teksta ispaavaju sa ekstenzijom .ino. U prostoru za poruke se prikazuju povratne informacije prispaavanju ili eksportovanju, te greke. Konzola prikazuje tekstualni izlaz Arduino razvojnogokruenja ukljuujui potpune poruke greaka i druge informacije. U donjem desnom uglu jeprikazan naziv trenutne ploice i serijski port. Dugmad na traci sa alatima omoguava verifikacijui uitavanje programa, kreiranje, otvaranje i spaavanje skica, te otvaranje serijskog monitora okome e biti rijei u poglavlju 5.
Prije uitavanja skice na sam kontroler, potrebno je odabrati tane stavke iz (u ovom sluaju 'Arduino Duemilanove w/ATmega328') i menija,odnosno odabrati tip ploice na koju se eli uitati kd, te serijski port PC raunara na koji jeploica povezana.
Skica, odnosno izvrni program, mora sadravati bar dvije funkcije:
setup() funkcija se poziva na samom poetku izvravanja programa i koristi se zainicijalizaciju varijabli, konfigurisanje pinova, pokretanje biblioteka i sl. Ova funkcija e seizvriti jednom nakon svakog ukljuivanja ploice ili nakon reseta ploice.
loop()funkcija zapravo predstavlja beskonanu petlju, odnosno naredbe ove funkcije se
uzastpono ponavljaju u petlji dok god je ploica ukljuena.
Slika 2.10.Razvojno okruenje Arduino IDE
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
20/62
M e h a n i k a k o n s t r u k c i j a | 16
2.5 N
APAJANJE
Za napajanje robota AMINA koriten je Conrad energy NiMH Sub Cpaket aku-baterija zaprijemnik 6 V / 3300 mAh. Zbog konfekcioniranja s izboenjima (hump) moe stati u uzak prostor.
Opremljen je silikonskim kablovima i utikaem sa zlatnim kontaktima. Tehniki podaci su dati utabeli 2.10.
Tabela 2.10: Tehniki podaci o koritenoj baterijiConrad energy NiMH Sub C
Neto teina[g] 340Napon [V] 6
Veliina baterije i akumulatora Sub CSistem utinica BEC BuchseKapacitet akumulatora [mAh] 3300
Broj elija 5Tehnologija akumulatora NiMH
Dimenzije [mm] 70 (L) x 45 (W) x 42 (H)
Tehnologija baterija i akumulatora NiMH
Slika 2.11. Conrad energy NiMH Sub C paket aku baterija za prijemnik 6 V / 3300 mAh
Baterija se koristi za napajanje logike BotBoarduino i SSC 32 kontrolera, te napajanje svihosamnaest servo motora robota AMINA. Takoer, instaliran je prekida za brzo ukljuivanje iiskljuivanje napajanja robota. Baterija se neposredno spaja na SSC 32 kontroler, a odatle sekratkospojnicima izvodi napajanje logike BotBoarduina.
Slika 2.12. Nain spajanja baterije na SSC 32 zajedno sa prekidaem
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
21/62
M e h a n i k a k o n s t r u k c i j a | 17
2.6 S
HEMA SPAJANJA
Elektronika struktura robota AMINA se sastoji od dva kontrolera, BotBoarduino i SSC 32,te baterije koja napaja servo motore i logiku kontrolera. Na slici 2.13. je prikazana shema spajanja,
a u nastavku e ista biti detaljno objanjena.Baterija za napajanje (1) je spojena na VS2 ulaz SSC-32 kontrolera. Crnim pravougaonicima
na ploicama oznaeni su kratko spojeni pinovi. Kratkospojnici su spojeni na VS1=VS2 pinove (2)kako bi baterija mogla napajati obje grupe servo pinova oznaene rednim brojevima 0 15 (3) i16 31 (4). Ista baterija napaja i integralna kola (logiku) dvaju ploica. Napajanje logike SSC 32kontrolera je omogueno instaliranjem kratkospojnika VL=VS (5), dok je napon za napajanjelogike BotBoarduina (6) icama doveden sa VL ulaza SSC 32 kontrolera. Takoer je instalirankratkospojnik Ext. (7) koji definira da se logika BotBoarduina napaja iz vanjskog izvora.
Za programiranje kretanja robota AMINA koriten je BotBoarduino razvojni sistem.BotBoarduino alje komande SSC 32 servo kontroleru koji potom generie i alje upravljakesignale svim servo motorima. Bidirekciona TTL komunikacija izmeu ova dva kontrolera vri sekroz troini konektor (8) brzinom 9600 bps (9). Crna ica predstavlja uzemljenje, crvena signalkoji odailje BotBoarduino a prima SSC 32, dok se utom alje signal od strane SSC 32 premaBotBoarduinu. Potrebno je napomenuti da se konektor za komunikaciju mora odspojiti za vrijeme
programiranja BotBoarduina jer USB port dijeli iste I/O pinove.
Slika 2.13. Shema spajanja BotBoarduino, SSC 32, baterije i servo motora
(1)
2
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
22/62
M e h a n i k a k o n s t r u k c i j a | 18
Srednja linija I/O pinova na BotBoarduino ploici predstavlja pozitivni pol napajanja kojese moe podesiti na VS ili 5 V (10) instaliranjem kratkospojnika na odgovarajui nain. Autor radaje na sve etiribanke I/O pinova podesio na TTL logiki nivo od 5 V koji se interno uzima saregulatora napona na ploici.
Omoguavanje koritenja tastera na BotBoarduinu vri se instaliranjem etirikratkospojnika oznaena brojem (11) na slici 2.13.
Ostali kratkospojnici na ploici su instalirani po isporuci i odreuju parametre koji nisukoriteni u razvoju robota AMINA, stoga se mogu i ukloniti.
Servo motori su spojeni na servo (izlazne) pinove SSC 32 kontrolera. Svaki izlaz moedati najvie 35 mA, meutim, postoji ogranienje s gornje strane od 70 mA na grupe od po 8 I/Opinova 0 7, 8 15, 16 23, 24 31. Iz predostronosti, na ovaj nain su rasporeeni servo motorikako bi se smanjila mogunost dostizanja zasienja struje. Taan raspored motora dat je tabeli2.11.
Tabela 2.11: Raspored servo motora na SSC 32Pin Puni naziv Oznaka0 Prednji lijevi kuk pLKuk
1 Prednje lijevo koljeno pLKolj
2 Prednji lijevi lanak pLCl4 Srednji lijevi lanak sLCl5 Srednji lijevi kuk sLKuk
11 Srednje lijevo koljeno sLKolj
13 Zadnji lijevi kuk zLKuk
14 Zadnje lijevo koljeno zLKolj
15 Zadnji lijevi lanak zLCl
16 Prednji desni lanak pDCl17 Prednje desno koljeno pDKolj18 Prednji desni kuk pDKuk
20 Srednji desni lanak sDCl26 Srednji desni kuk sDKuk
27 Srednje desno koljeno sDKolj
29 Zadnji desni kuk zDKuk
30 Zadnje desno koljeno zDKolj
31 Zadnji desni lanak zDCl
Slika 2.13. Raspored i nain oznaavanja servo motora na robotuAMINA
BotB
SSC-32
pDKuk pDKolj pDClpLKukpLKoljpLCl
sDClsDKuk sDKoljsLCl sLKolj sLKuk
zDKuk zDKolj zDClzLKukzLKoljzLCl
012
4 511
1314
20
15
161718
2726
29 30 31
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
23/62
M e h a n i k a k o n s t r u k c i j a | 19
2.7 Z KLJU K
U okviru ovog poglavlja opisana je mehanika konstrukcija fizikog modela koritenogrobota, kao i sve hardverske komponente od kojih se koriteni robotskisistem koristi. Analiza
svih komponenti hexapod robota je neophodna za razumijevanje rada i naina funkcioniranjarobota, kako bi se moglo pristupiti razvoju softvera i sintezi stabilnog hoda robota. Svaku odkomponenti je potrebno detaljno prouitikako bi se ispravno rukovalno njome, jer pogrenimkoritenjem moe doi do oteenja komponente i neispravnosti robota.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
24/62
20
3 K
INEMATIKA
3.1 UVOD
Rjeenja inverzne i direktne kinematike su neophodna za kontrolisanje pokreta iimplementaciju hoda robota. Inverzna kinematika daje geometrijske parametre neophodne za
postizanje zadane pozicije i orijentacije vrha noge robota (stopala), dok direktna kinematikadaje poziciju i orijentaciju vrha noge robota za zadane geometrijske parametre. Unutar ovog
poglavlja, kada je rije o centru mase (COM) za 'kinematiku', centar platforme robota se uzima kaotaka od interesa.
U ovom poglavlju e biti predstavljen pregled nekih dosadanjih radova na temu kinematikehexapod robota, koji su od znaaja za ovaj rad. Takoer e biti izvedena inverzna kinematika nogesa tri stepena slobode hexapod robota. Obzirom da cjelokupni sistem (robot) ima ukupno
osamnaest stepeni slobode, a kinematika nije tema ovog rada, zbog sloenosti nee bitianalizirana.
3.2
P
OZADINA
Inverzna kinematika robota s paralelnim nogama se moe prouavati iz dva aspekta:inverzna kinematika robota i inverzna kinematika svake pojedine noge. Takoer, ista dva pristupase razmatraju i kod direktne kinematike.
Rjeenje inverzne kinematike kod robota s paralelnim nogama je neophodno za kontrolukretanja robota, omoguavanje kretanja robota preko neravnog terena, te manipulaciju drugimobjektima. Kinematika hexapod robota je dugo prouavana ali je vodila rjeenjima koja ili nisuanalitika, ili imaju visoke trokove memorije pri raunanju komplikovanih konfiguracija [7].Yanto Go et al. [8], Duan et al. [9] i Netto et al. [10] su predstavili hexapod robota i diskutovali
njegovu kinematiku. Sva trojica su razvili matematski model za kinematiku hexapod robota.
Meutim, njihova rjeenja imaju iste pretpostavke: da je tijelo robota u horizontalnom poloaju usvakom trenutku, kako bi se pojednostavilo rjeenje. Ova rjeenja ne oslikavaju kretanje tijela urazliitim orijentacijama i ne mogu biti generalizirana za razliite orijentacije . Arai et al. [11] suprouavali mehaniki dizajn i jednostavno upravljanje hexapod robotom. Istraivali su dvije vrstedizajna nogu. Jedan tip koristi estozglobne noge, dok drugi tip ima etiri stepena slobode.
Indicirano je da su rijeili inverznu kinematiku robota, ali rjeenje nikada nije predstavljeno. Bezobzira na to, ograniili su rjeenje razmatranjem jednog stepena slobode za inklinaciju platformedok robot moe imati do tri razliita ugla oko tri razliite ose (x, y, z) za sloenije terene.
Inverzna kinematika noge hexapod robota moe se izraunati pomou geometrijekoritenjem kosinusne teoreme. Rjeenje inverzne kinematike za nogu hexapod robota sa tristepena slobode je predstavljeno u sljedeemodjeljku.
Opte analitiko rjeenje za direktnu kinematiku hexapod robota ne postoji, te se koristenumerika rjeenja. Direktna kinematika noge hexapod robota se moe nai pomou Denavit-Hartenberg (D H) parametara. Zakljuno, direktna kinematika hexapod robota je iznad opsegaovog istraivanja i nije detaljnije razmatrana u ovom radu.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
25/62
K i n e m a t i k a | 21
3.3 I
NVERZNA KINEMATIKA NOGE HEXAPOD ROBOTA
Postoji vie naina za rjeavanje inverzne kinematike trosegmentnog robotskogmanipulatora. Ovdje e biti predstavljen raunski najjednostavniji pristup. Prije svega, problem
se pojednostavljuje i svodi sa tri na dvije dimenzije, to je prikazano na slikama 3.2. i 3.3. Zatim seraunaju uglovi , i .
Slika 3.1. Noga hexapod robota sa tri stepena slobode
Ugao se dobija direktno iz definicije funkcije tangens, iz trougla sa slike 3.2. atan 3.1
Preostala dva traena ugla se nalaze u istoj ravni kao to je prikazano na slici 3.3.
Slika 3.2. Simboliki prikaz tlocrta noge hexapod robota
Sa slike 3.3. se Pitagorinom teoremom dobije relacija:
3.2
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
26/62
K i n e m a t i k a | 22
acos 3.3
Slika 3.3.Simboliki prikaz bokocrta noge hexapod robota
Za raunanje uglova
i
koristi se kosinusna teorema. Vrijede relacije:
2 cos acos 2 3.4
Sada se ugao moe dobitiiz relacija 3.3i 3.4kao:
acos
acos
2
3.5
Konano, ugao je: 2 cos acos 2 3.6
Dakle, inverzna kinematika noge hexapod robota data je sistemom jednadbi 3.5, 3.6i3.1:
acos
acos
2
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
27/62
K i n e m a t i k a | 23
acos 2 atan
3.4 Z KLJU K
U okviru ovog poglavlja izvedena je inverzna kinematika jedne noge koritenog hexapodrobota. Relacije koje daju unutranje (zglobovske) varijable, odnosno uglove zakreta pojedinihsegmenata noge, coxe, femura i tibie (u odnosu na prethodni segment), su date relacijama 3.5,3.6i 3.1respektivno. Poznavanje inverzne kinematike jedne noge bilo je sasvim dovoljno zasintezu softvera za hod robota. Stoga, inverzna kinematika cjelokupnog robotskog sistema koja
predstavlja raunanje zglobovskih varijabli (uglova zakreta svih est nogu, odnosno svihosamnaest motora) na osnovu zadanog poloaja platforme robota (tijelarobota) nije sprovedena.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
28/62
24
4 S
TABILNOST
4.1 UVOD
Stabilnost vienonih robota se istrauje skoro pola stoljea. U vremenu kada mikroprocesorinisu bili dovoljno snani da implementiraju sofisticirane sisteme upravljanja, koritene surazliite tehnike u svrhu stabilizacije hodajuih robota. Ove tehnike su se zasnivale na ljudskojdomiljatosti, pametnom mehanikom dizajnu ili pak jednostavnim trajektorijama.
Osnovni koncept stabilnosti vienonihrobota sastoji se u odranju projekcije centra mase(GCOM) unutar potpornog poligona kako bi se sprijeilo prevrtanje robota. Meutim, kako ustatinim, tako i u dinaminim situacijama pri kretanju, pomjeranju i manipulisanju, od kljune jevanosti nadzirati stabilnost robota u svakom trenutku koristei odreeni kriterij stabilnosti usvrhu kontrole, osobito pri kretanju preko neravnih terena.
Do sada je koritena jednostavna binarna definicija stabilnosti ili robot konvergira ka hoduravnotenog stanja na glatkom terenu, ili ne. S druge strane, teko je mjeriti stabilnost naneravnom terenu. Jo uvijek nije odgovoreno pitanje kako promjene povrine utiu na kretanjerobota.
Ovo poglavlje opisuje nekoliko razliitih kriterija za mjerenje stabilnosti, kako statike tako idinamike. Date su definicije margina stabilnosti robota te napravljena usporedba koja istieprednosti i nedostke koritenja istih na stvarnim hexapod robotima. Napravljena je analiza trivrste hoda pravougaonog hexapod robota sa aspekta stabilnosti, sa osvrtom na stabilnost robota
AMINA.
4.2 MARGINE STABILNOSTI
Teko je kvantificirati stabilnost robota pri kretanju, osobito po neravnom terenu. Nanajjednostavnijem nivou, stabilnost podrazumijeva da robot moe kontinuirano hodati uzadanom pravcu. Povrh toga, poeljno je imati diskretnu mjeru tako da se efekti promjene dizajnaili upravljake sheme robotamogu konkretno evaluirati. Raznovrsna priroda stvarnih povrina,potreba za ponovljivou, te praktina ogranienja modeliranja softvera uslonjavajukonstruisanje izvedive, kvantitivne mjere stabilnosti. Postoje dva tradicionalna pristupa mjerenju
stabilnosti, eksperimentalni testovi i teoretski kriteriji.Postoji nekoliko kriterija stabilnosti koji su u upotrebi u polju robotike i koji se generalno
mogu podijeliti na statike i dinamike. Meutim, mogue ih je klasificirati u pet kategorija poosnovu njihove metrike stabilnosti. To su:
Kriterij udaljenosti,
Kriterij ugla,
Kriterij energije,
Kriterij momenta i
Kriterij sile.
Prva tri kriterija se uglavnom koriste za procjenu statike stabilnosti, dok se preostala dva koristeza procjenu dinamike stabilnosti.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
29/62
S t a b i l n o s t | 25
4.2.1
Margine statike stabilnosti
Kvazi statini roboti ili roboti koji se sporo kreu su stabilni sve dok se vertikalna projekcijacentra mase (GCOM) robota nalazi unutar potpornog poligona definisanog potpornim nogama.
Mjeru stabilnosti zvanu Margina statike stabilnosti (SSM) je definisao McGhee [12] kaominimalnu udaljenost od GCOM do najblieivice potpornog poligona. Ovo je shematski prikazanona slici 4.1. Potporni poligon je predstavljen sivim trouglom.
Druga varijanta margine statike stabilnosti, Longitudinalna margina stabilnosti (LSM) je datakao vodoravna udaljenost u sagitalnoj (uzdunoj) ravni od projekcije centra mase do prednje ivicepotporog poligona [13]. Ove margine stabilnosti se ne raunaju za nagete terene kao ni terene sadrugim nepravilnostima.
Slika 4.1.Potporni poligon (u ovom konkretnom sluaju trougao) hexapod robota
Slika 4.2.Definicija margine statikestabilnosti (a) i longitudinalne margine stabilnosti (b)
Unaprijeenu i praktiniju mjeru stabilnosti, Marginu energetske stabilnosti (ESM) jepredstavio Messuri [14], i shematski je prikazana na slici 4.3. ESM pokazuje koliinu potencijalneenergije (proporcionalne ) koju je potrebno savladati prije nego to robot doe na granicustabilnosti, stoga se eksplicitno razmatra nagib i visina tijela robota.
U sutini, ESM mjeri visinu za koju se mora podii centar mase robota, pri kojoj e GCOM izaiiz potpornog poligona za vrijeme naginjanja. Matematiki opis je dat relacijom:
1 c o s cos 4.1
CENTAR MASE
POTPORNI POLIGON
(TROUGAO)
SMJER KRETANJA
SSM = min
, , LSM = min
,
a) Margina statike stabilnosti b) Longitudinalna margina stabilnosti
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
30/62
S t a b i l n o s t | 26
Slika 4.3.Margina statike stabilnosti (SSM) i Margina energetske stabilnosti (ESM).
Gdje je masa robota, konstanta gravitacije i visina na koju se centar mase moe podiiprije nego robot padne preko -te ivice potpornog poligona. je udaljenost izmeu GCOM i -teivice potpornog poligona, a je ugao izmeu i vektora sile gravitacije. pokazuje nagib -teivice potpornog poligona s obzirom na njegovu projekciju na ravan normalnu na vektor
gravitacije.
Verziju ove mjere stabilnosti (skaliranu sa ), pod nazivom Normalizirana marginaenergetske stabilnosti (NESM) je uspjeno implementirao Hirose na Titan VII [15] robotu. Ovajrobot je koristio kontroler koji je modificirao svoj poloaj stajanja u svrhu maksimiziranja NESMi mogao je savladavati nagibe do 30 stepeni.
4.2.2
Margine dinamike stabilnosti
Margine statike stabilnosti opisane u potpoglavlju 4.1.1. se odnose samo na robote koji sekreu vrlo sporo, tipino koristei valni hod.Da bi se inkorporirao utjecaj dinamike na stabilnostrobota koji se kree brzinama veim od kvazi-statikih, predloen je veliki broj alternativnihmargina stabilnosti.
Praenjem udaljenosti trenutnog centra pritiska (COP) umjesto GCOM kod robota, moe se odrediti tanija margina stabilnosti.COP je lokacija rezultantne sile reakcije podloge u kontaktnojravni (kao na slici 4.4.) i moe se matematski izraziti kao:
= = 4.2Gdje je OP vektor poloaja od ishodita do COP, je normalna komponenta sile reakcije
podloge na -tom stopalu, i je vektor poloaja iz ishodita koordinatnog sistema do take dodira -tog stopala sa podlogom. U literaturi se koriste dva termina za udaljenost od najblie ivicepotpornog poligona do COP: Margina dinamike stabilnosti (Dynamic Stability Margin) i Centarefektivne mase (Effective Mass Center) poto u obzir uzima i dinamiku mehanizma, kao ikinematiku robota.
Vienoni roboti imaju hodove sa relativno velikim marginama stabilnosti. Iako to olakavaproblem stabilnosti, ljudi su teili gradnji antropomorfnog robota. Ustvari, teina problema hodadvonone maine je potaknula razvoj sofisticiranijih i osjetljivijih kontrolera. Tako je
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
31/62
S t a b i l n o s t | 27
Vukobratovi definisaoTaku nultog momenta (Zero Moment Point) (ZMP) u svrhu stabilizacijebipeda [16]. Na slici 4.5. je prikazana lokacija ZMP u odnosu na proizvoljan koordinatni sistem.
Matematski, ZMP se definie kao:
=
=
= 4.3Gdje je vektor poloaja od ishodita do ZMP, a vektor poloaja od ishodita do centra
mase -tog segmenta. je moment sile inercije, je sila inercije, a je sila gravitacije. Svaka odnavedenih veliina se rauna za pripadni centar mase svakog segmenta.
Slika 4.4.Mjera dinamike stabilnosti je udaljenost centra pritiska (COP) ili Centra efektivne mase (EMC) od najblie ivicepotpornog poligona (oznaenog sivom bojom).
ZMP se podudara sa COP dok god se nalazi unutar potpornog poligona. Razlika je u tome tose ZMP rauna iz ubrzanja segmenata, a ne iz sila reakcije podloge, to dozvoljava upotrebu
centraliziranih proprioceptivnih senzora2za procjenu stabilnosti robota.
ZMP, ili neka njegova varijanta, je koriten kod velikog broja vienonih robota u upravljakojshemi robota, ali niti jedan od tih robota nije pokazao dobre performanse na neravnom terenu.
Jedan od razloga je injenica da kada je jedno stopalo u krutom dodiru sa neravnom povrinom,mala promjena pritiska bi mogla dramatino promijeniti interakciju podloga-stopalo na sredinikoraka, trenutno destabilizirajui robota.
2Proprioceptivni senzori slue za mjerenje unutranjih varijabli stanja robota npr. brzina obrtanja motora,optereenje nogu, stanje baterije itd.
COP/EMC = Centar pritiska ili Centar efektivne mase
OP = vektor poloajaod ishodita do COP/EMC = sila reakcije podloge na i-to stopalo = vektor poloajaod ishodita do take dodira i-togstopala sa podlogom
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
32/62
S t a b i l n o s t | 28
Slika 4.5.Taka nultog momenta je taka u potpornoj ravni gdje rezultantna sila inercije mora djelovati tako da obezbijedida intenzitet vanjskih momenata bude jednak nuli. Ako robot nije na granici ravnotee, onda je to ista taka kao i centarpritiska.
4.3 DIN MIK ST BILNOST
Stabilno tranje je znaajno drugaije i umnogome zahtjevnije od stabilnog hodanja.Poveanje brzine i vrste hodova koje se koriste kod tranja rezultiraju dinamikim efektima koji
nisu zanemarivi: vei momenti, krae vrijeme odziva i veliki uticaji pri kontaktu s podlogom.
Na prvi pogled se ini da je postizanje dinamike stabilnosti kod hexapod robotajednostavnije nego kod monopeda, poto su kod hexapoda mogue stabilne konfiguracije.Meutim, kompleksnost koju unosi struktura sa vie udova onemoguava direktnu primjenurjeenja upravljanja u zatvorenom i funkcionalih aproksimacija koje su radile dosta dobro kodmonopeda.
Uprkos injenici da su statiki stabilne konfiguracije mogue tijekom tranjakod hexapoda,margine stabilnosti opisane u poglavlju 4.1. nisu primjenjive za brze dinamike sisteme poto aki roboti sa irokim rasponom nogu (to implicira vei potporni poligon) imajufaze leta i moe senaruiti margina dinamike stabilnosti sa svakim korakom. Jedan izuzetak je irinska marginastabilnosti (Wide Stability Margin)(WSM) [17]. Kao to je prikazano na slici 4.6., WSM mapiraprojekciju svakog stopala na podlozi i centar mase. Iako je ova mjera razvijena za analizu hoda,
takoer se moe primjeniti na tranje sa fazama leta. WSM je analogna margini statike stabilnostipoto ne uzima u obzir dinamiku sistema. U optem sluaju, ova metoda moe biti usavrenazamjenom projekcije centra mase sa ZMP.
ak i bez mogunosti direktne analize ili mjerenja stabilnosti sistema, mogue je projektovatikontrolere i robote koji imaju dobro dinamiko ponaanje ak i na neravnim terenima. Iako seovaj rad ne bavi metodama upravljanja dinamikim kretanjem robota, u nastavku e ukratko bitipredstavljena dva osnovna pristupa koja se koriste pri projektovanju brzih i stabilnih robota:
implementacija kompleksnih kontrolerai mapiranje na jednostavne modele.
OZ = vektor poloajaod ishodita do ZMP = vektor od ishodita do centra mase i-tog segmenta= moment sile inercije i-tog segmenta oko njegovog centra mase = sila inercije i-tog segmenta od njegovog centra mase = gravitaciona sila i-tog segmenta od njegovog centra mase
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
33/62
S t a b i l n o s t | 29
4.3.1
Kompleksni kontroleri
Prvi pristup potekoama vezanim za upravljanje sloenim vienonim dinaminimrobotima ogleda se u koritenju inteligentne ili adaptivne regulacije. Ovaj pristup je koriten kodOSU/Stanford hopping robotaigalopirajue koze. Koriten je direktni adaptivni fuzzy kontroler zarjeavanje problema nelinearnosti, greaka u samom pogonu i ostalih poremeaja koji djeluju narobota. Ovakav sistem ne zahtijeva dobar model pogona, niti opsenu identifikaciju sistema, vekoristi heuristiku (105 pravila) kao osnovu za upravljanje. Stoga, sistem moe iskoristiti svojuprirodnu dinamiku i generirati hod sa osobinama uporedivim sa biolokim biima kojima je iinspirisan [17]. Loa strana ove meteode je to to koristi pristup crne kutije i teko je tanopoznavati ta ustvari kontroler radiu svrhu osiguravanja stabilnosti.
4.3.2
Mapiranje na jednostavne modele
Upravljaka shema hopping robota se moe prilagoditi bipedima i vienonim robotima
pomou kontrole virtualne noge. Koritenjem simetrije robota, struktura bipeda i hexapoda se usutini pojednostavljuje na strukturu monopeda. Dvije ili est nogu se ogranie na nain da sepomjeraju zajedno i pri upravljanju se tretiraju kao jedna noga koja operie na sredini robota.Razvijena shema upravljanja za hopping robota se sada moe primjeniti na virtuelnu nogu, te jebipedu i hexapodu omogueno da kaska i skae. Ovaj pristup omoguava mapiranje kontrolerarazvijenih za poznatu dinamiku jednostavnog modela na kompleksnije robote. Sloenamorfologija robota se moe reducirati na jednostavne modele dinamikog hodanja ili tranja, zakoje se mogu napraviti dokazano stabilni kontroleri.
4.3.3 Utjecaj poze robota na margine stabilnosti
WSM mjeri udaljenost izmeu projekcije centra mase i prednje ivice potpornog poligona usagitalnoj ravni (slika 4.6.), te je jednostavna za izraunavanje. Meutim, kao to je prikazano naslici 4.7., adekvatna je za predvianje pojave posrtanja robota (na granici stabilnosti) naprijed nazad.
Kao to je prikazano na slici 4.7., granica stabilne konfiguracije odreena sa WSM ima dobrukorelaciju sa stabilnou odreenom posrtanjem. WSM margina ustvari nikada ne pada na nulu(to bi podrazumijevalo prevrtanje, a ne posrtanje), i postoji snana veza sa posrtanjem. Ovo imasmisla jer su kod posrtanja prednje noge u potpunosti savijene ispod robota , to dovodi centarmase u najdalju moguu prednju taku, u odnosu na prednja stopala.
Slika 4.7.(b) prikazuje kako smanjenje amplitude ugla srednje noge (gledajui nadesno nadijagramu) poveava marginu stabilnosti, koja je proporcionalna veliini kruga u svakojkonfiguraciji. Ovo je i oekivano poto pomijera nominalnu lokaciju stopala dalje od centra mase.Ugao stranje noge je takoer vaan jer utie na nominalnu orijentaciju tijela i koliinu naginjanjau toku koraka. Naalost, ovi rezultati samo pokazuju kako veu stabilnost u pogledu WSM pratisporiji hod.
Na slici 4.8. je prikazano kako se WSM smanjuje pri posrtanju kroz nekoliko koraka, sve dok
se ne desi kontakt platforme robota s podlogom. Robot se resetuje, a zatim iznova poinje padatinaprijed. Postupnost ove nestabilnosti nagovjetava da ako se izmjeri maksimalna rotacija uglovaprednje noge, nastanak nestabilnosti bi se mogao detektovati i nominalna orijentacija bi se mogla
promijeniti u svrhu ispravljanja robota. Ustvari, postoje dva ili tri koraka izmeu dostizanja praga
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
34/62
S t a b i l n o s t | 30
stabilnosti i kontakta s podlogom pri padu, dovoljno vremena za implementaciju stabilizirajuegrefleksa.
Slika 4.6.irinska margina stabilnosti (WSM)
Slika 4.7. Uticaj ugla noge na pojednostavljenu WSM. Tamna linija predstavlja granicu nestabilnosti definiranu
posrtanjem, i WSM respektivno. Veliina kruga predstavlja brzinu uotvorenom (a) i amplitudu WSM (b) [17].
U ovom odjeljaku je pokazano da je WSM prilagoenje tradicionalne margine stabilnostidobar prediktor konfiguracija koje dovode do pada robota i moe se koristiti za online praenjestabilnosti. Nedostatak ovog naina mjerenja je to ne daje uvid u to kako veliina stabilnogpodruja ili pak promjena konfiguracija nogu unutar stabilnog podruja utjeu na sposobnost
robota da se kree po neravnom terenu. WSM samo implicira da sporije kretanje poveavastabilnost.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
35/62
S t a b i l n o s t | 31
Slika 4.8.Tipino smanjenje WSM za nestabilnu konfiguraciju (prag WSM 0.33)[17]
4.4 A
NALIZA HODA HEXAPOD ROBOTA
U poreenju sa bipedima, vienoni roboti imaju vei broj naina postavljanja nogu zaodravanje statike stabilnosti. Zbog toga su mnogi istraivaki radovi fokusirani na planiranjekretanja statiki stabilnih robota, i ne bave se problemom dinamike stabilnosti.
U nastavku e biti predstavljena generalna analiza hoda hexapod robota sa posebnimosvrtom na statiki stabilne hodove. Sa ove take gledita zanemaruje se traenje uporita napodlozi od strane robota, kao i upravljanje stavom (pozom) robota.
Posmatrajui rezultat bilo kakvog mehanizma generisanja hoda, moe se snimitiprivremena sekvenca koraka koje e robot izvriti.
Poto se ovaj rad bavi statiki stabilnim hodovima, iz analize e se iskljuiti takvi hodovikoji robotu ne obezbjeuju dovoljno veliku marginu stabilnosti. U optem sluaju, kodesterononog robota, razumna stabilnost je zagarantovana ako je u svakom trenutkuzadovoljeno sljedee pravilo:
Pravilo 1:Dvije susjedne noge ne smiju istovremeno biti u zraku ni u jednom trenutku.
Krenje ovog pravila dovodi robota u situacije prikazane na slici 4.9., odnosno na granicustabilnosti. Pravilo 1 implicira da dvije susjedne noge ne smiju istovremeno zapoeti korak. Ovoomoguava da se definie nedvosmislen odnos korakaizmeu susjednih nogu. Za svaku statikistabilnu sekvencu koraka i za svaki par susjednih nogu 'a' i 'b', vrijedi da je noga 'a' izvrila korakprije 'b' ili obrnuto.
Song i Choi su 1990. godine definisali odreene veliine koje olakavaju analizu hoda i nekeod njih e se koristiti u ovom radu [18].
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
36/62
S t a b i l n o s t | 32
Slika 4.9.Primjeri dvaju vrsta moguih potencijalno nestabilnih konfiguracija kada su podignute dvije susjedne noge. Crnetake predstavljaju potporne noge, a bijelepodignute. Potporni poligon je oznaen isprekidanom linijom, a GCOM kriiem.
Razlomljena funkcijarealnog argumentaje definisana na sljedei nain:{ , 0,1 ||, < 0. 4.4
Potporna fazanoge je vremenski period u kojem se stopalo noge robota nalazi na podlozi.
Ako se stopalo ne nalazi na podlozi, noga je ufazi transfera.
Vrijeme ciklusa je vrijeme potrebno za izvrenje potpunog ciklusa -te noge.Faktor ispune (duty cycle) je dio vremenskog ciklusa u kojem se -ta noga nalazi u
potpornoj fazi.
Poteznoge (stroke) Rje udaljenost za koju se translira stopalo u odnosu na tijelo robota za
vrijeme potporne faze.
Koraknoge je udaljenost za koju se translira COM za vrijeme jednog potpunog ciklusalokomocije. Za periodine hodove vrijedi /.
Faza -te nogeje dio vremena ciklusa za koji kontakt -te noge sa podlogom zaostaje zakontaktom noge 1. Relativna faza -te noge u odnosu na-tu nogu , je dio vremena ciklusa zakoji polaganje -te noge zaostaje za polaganjem-te noge [18].
, ( ) 1 , 4.5Za hod se kae da je regularanako sve noge imaju isti faktor ispune (duty factor)
. Za hod
se kae da je simetriankada su desna i lijeva noga svake kolone fazno pomjerene za polovinuciklusa, 0.5 [19].
Hexapod robot ima vie tipova statiki stabilnih hodova koji mogu biti regularni, iregularni,periodiki itd. Kad je rije o regularnim periodikim hodovima, oni se mogu klasificirati premabroju nogu u potpornoj fazi na 3+3 trononi hodsa tri potporne noge, 4+2 vievalni hodsa etiripotporne noge, te 5+1 valni hodsa pet potpornih nogu.
4.4.1
Valni hod
Valni hod je regularan i periodian, a jedan ciklus za koji se izvri jedan korak se sastoji iz
est poteza nogu, to je i intuitivno jer za 5+1 hod esterononog robota je potrebno po jedanputpomjeriti svaku nogu kako bi se COM robota translirao za jedan korak. Sekvenca poteza nogu kod
1
65
4
3
2
1
65
4
3
2
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
37/62
S t a b i l n o s t | 33
valnog hoda moe biti proizvoljnog redoslijeda, ali obino se potezi implementiraju u smjerukazaljke na satu, ili u obrnutom smjeru. Valni hod kod AMINA robota je implementiran tako da je
redoslijed poteza nogu 1, 3, 5, 2, 4, 6, ako su noge numerisane kao na slici 4.9. Na slici 4.10.
prikazan je dijagram hoda koji opisuje sekvencu hoda hexapod robota. Apscisa oznaava vrijemenormalizirano vremenom ciklusa
. Vii nivo funkcije pridruene svakoj od nogu oznaava fazu
transfera, dok nii nivo oznaava potpornu fazu. Stoga, duina nieg nivoa pokazuje periodpotporne faze. Sa ovog dijagrama se moe definisati faktor ispune i faza -te noge kao:
4.6 4.7
Numeracija nogu je kao na slici 4.9. i podrazumijeva se da se robot kree prema naprijedako se smatra da je 'glava' robota na strani nogu 1 i 2. Vrijeme kontakta -te noge se mjeri odtrenutka kontakta noge 1, stoga je
0za svaki hod.
Slika 4.10.Dijagram valnog hoda hexapod robota za 5/6Valni hod je najsporiji od svih statiki stabilnih hodova. Song i Choi [18] su dokazali da je
valni hod optimalno stabilan u odnosu na sve periodike i regularne hodove za pravougaone
hexapod robote definie se kao: , 1, , 6, 4.8 < 1, 4.9 1 , 4.10 2 1 , 4.11
,
4.12
1 , 4.13
Red. Br. noge
Normalizirano vrijeme
3
56
4
22
3
6
4
2
1
0
1 6
2 6
3 6
4 6
5 6
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
38/62
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
39/62
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
40/62
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
41/62
S t a b i l n o s t | 37
hoda . Trononihod je takoer regularan i periodian. Na slici 4.14. prikazan je dijagram hodakoji opisuje sekvencu trononog hoda hexapod robota za 1/2 . Apscisa oznaava vrijemenormalizirano vremenom ciklusa . Vii nivo funkcije pridruene svakoj od nogu oznaava fazutransfera, dok nii nivooznaava potpornu fazu.
Slika 4.14.Dijagram trononog hoda hexapod robota za 1/2.Trononi hod je statiki stabilan ako vrijedi:
1/2 < 1 4.16Trononi hod kod robota AMINA je implementiran sa faktorom ispune 1/2, tako da
robot AMINA hoda najveom moguom brzinom kada je u pitanju ovaj hod. Jedan korak se sastojiiz dva poteza koji su fazno pomjereni za pola ciklusa:
1) Noge 1, 4 i 5 istovremeno zamahuju naprijed, noge 2, 3 i 6 su potporne i odguruju tijelo,
2) Noge 2, 3 i 6 istovremeno zamahuju naprijed, noge 1, 4 i 5 su potporne i odguruju tijelo.
Na slici 4.15. prikazani su potezi od kojih se sastoji jedan ciklus valnog hoda. Ciklusi se zatim
periodino ponavljaju.
Neka su noge robota grupisane u dvije grupe:
Grupa A: noge 1, 4 i 5,
Grupa B: noge 2, 3 i 6.
U prvom potezu prema naprijed zamahuju noge iz grupe A, ostale tri potporne noge (Slika
4.15.(b)) odguruju tijelo robota prema naprijed (Slika 4.15.(c)). Nakon toga potporne noge postaju
one iz grupe A (Slika 4.15.(d))i one su odgovorne za odgurivanje robota prema naprijed (Slika
4.15.(e)), a noge iz grupe B prelaze u fazu transfera. Navedena procedura se zatim periodinoponavlja.
3
5
6
4
2
1
0
1
Red. Br. noge
Normalizirano vrijeme
1/6
2/6
3/6
4/6
5/6
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
42/62
S t a b i l n o s t | 38
Slika 4.15.Dva poteza od kojih se sastoji jedan korak valnog hoda. Sivom bojom oznaen je potporni poligon, a kriiemGCOM robota.
Potporni poligon kod trononog hoda je jednakokraki trougao. Duina za koju potpornenoge odguruju tijelo (najee je to duina koraka) mora osigurati da GCOM robota ostane unutarpotpornog poligona kako bi robot odrao stabilnost. Usluaju prikazanom na slikama 4.15.(c) i4.15.(e) GCOM je na rubu potpornog poligona, odnosno robot je na granici stabilnosti.
Inicijalna konfiguracija
Na slici 4.16. prikazane su margine stabilnosti kod pravougaonog hexapod robota u
inicijalnoj konfiguraciji za trononi hod.
Slika 4.16.SSM i LSM hexapod robota u inicijalnoj konfiguraciji za trononi hod.
Na slici 4.16. koja e se analizirati u nastavku, potporne noge robota se nalaze pod uglomod 0. U ovoj konfiguraciji margine stabilnosti (SSM i LSM) imaju najveu moguu vrijednost.
Poznate su dimenzije robota oznaene sa a(duina), c(irina) i l(duina segmenta noge femur).Pretpostavljeno je da je segment tibia u okomitom poloaju u odnosu na femur.
(a) Inicijalna konfiguracija (b) Potez 1.1 (c) Potez 1.2
(d) Potez 2.1
SMJER KRETANJA
(e) Potez 2.2
SMJER KRETANJA
a
b
cl
SSM
LSM
A
B
C
E
D
O
h
F
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
43/62
S t a b i l n o s t | 39
Visina potpornog trougla h jednaka je zbiru dvostruke duine femura (ako je nogazakrenuta, onda je to 2D projekcija femura na apscisnu osu) i irine tijela robota:
2 4.17Potporni trougao je jednakokraki, a duina kraka se moe izraunati pomou Pitagorine
teoreme iz trougla ACF:
4
4 2 4.18
Iz trougla ACF slijedi:
sin /2 2 4.19Iz trougla ADO slijedi:
sin /2 2 4.20Izjednaavanjem relacija 4.19i 4.20, te uvrtavanjem 4.17i 4.18dobije se margina
statike stabilnosti:
2 4 4 2 4.21
Uvrtavanjem dimenzija robota AMINA (Tabela 2.2) u relaciju 4.21 , dobije se najveamogua margina statike stabilnosti kod robota AMINA za trononi hod koja iznosi 6.93 .Oigledno je da je vrijednost longitudinalne margine stabilnosti:
4 4.22Najvea mogua longitudinalna margina stabilnosti kod robota AMINA za trononi hod
iznosi 8.25.Proizvoljna konfiguracija
Od vee je vanosti analizirati proizvoljnu konfiguraciju robota pri trononom hodu kadastabilnost robota moe biti ugroena. U nastavku je sprovedena analiza ovog sluaja prikazanogna slici 4.17.
Visina potpornog trougla iznosi:
2cos 4.23Duina kraka potpornog trougla je:
4 4 2 cos 4.24
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
44/62
S t a b i l n o s t | 40
Slika 4.17.SSM i LSM hexapod robota u proizvoljnoj konfiguraciji kod trononog hoda.
Poto vrijedi , , , slijedi da su trouglovi ACFi ODE slini.Iz trougla ACF slijedi:
cos 4.25Iz trougla ODE slijedi:
cos 4.26Ako je pretpostavljeni smjer kretanja kao na slici 4.17., u jednom koraku trononog hoda
GCOM se translira za s in , gdje je ugao zakretanja femura pri odgurivanju tijela robota. Sobzirom na relaciju 4.22i dato obrazloenje, opti izraz za longitudinalnu marginu stabilnostipravougaonog hexapod robota je:
4 sin 4.27Izjednaavanjem relacija 4.25 i 4.26 i uvrtavanjem 4.23,4.24 i 4.27 , dobije se
opti izraz za marginu statike stabilnosti:
4 sin 2 cos 4 2 cos 4.28
Za maksimalno moguiugao zakreta femura /2margine stabilnosti su najugroenije.Margina statike stabilnostikod robota AMINA tada iznosi
0.0237 , dok minimalna
longitudinalna margina stabilnosti iznosi 0.05 . To znai da je robot AMINA statikinestabilan za maksimalno mogui korak.
a
b
c
A
C
D
B
l sin()
l cos()
OSSM
LSME
O
D
E
LSM
SSM
F
a b
SMJER KRETANJA
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
45/62
S t a b i l n o s t | 41
Na slikama 4.18.(a) i (b) su prikazane funkcionalne ovisnosti promjene analiziranih
margina stabilnosti od ugla zakreta femura koji je odreen duinom koraka robota.
Slika 4.18. Dijagram funkcionalne ovisnosti margine statike stabilnosti (a) i longitudinalne margine stabilnosti (b) odugla zakreta femura kod robota AMINA
Detalji softverske implementacije trononog hoda na robotu AMINA su dati u poglavlju5.2.3..
4.5
Z KLJU K
Definiran je veliki broj mjera za stabilnost robota pri hodanju i tranju. Meutim, ne postojiadekvatan kriterij koji daje kvantitivnu mjeru stabilnosti koja moe odrediti koliko blizu ili daleko
se robot nalazi od nestabilnog ili maksimalno mogueg stabilnog stanja. Takoer, kako sestabilnost neprekidno nadzire u odreenom vremenskom periodu, margine dinamike stabilnostiobino zahtijevaju znantnu koliinu ulaznih informacija sa senzora kao i zahtjevnu raunarskumo za obradu istih.Standardne margine statike i dinamike stabilnosti se esto naruavaju zbogvelikih brzina i faza leta robota pri tranju. Drugi generalizirani pristupi za analizu stabilnostisistema su do sada uspjeno primjenjivani samo na veoma jednostavnim robotskim sistemima.
Sprovedena analiza statiki stabilnih hodova implementiranih na robotu AMINA pokazala jeda adekvatan fiziki dizajn u pogledu dimenzija tijela robota zajedno sa dovoljno sporim hodommoe rezultirati vrlo zadovoljavajuim stepenom statike stabilnosti. U optem sluaju, regularnii simetrini hodovi hexapod robota se mogu opisati relacijama:
+ , 1, 2, 4.290.5 < 1 4.30Gdje je funkcija definisana relacijom 4.4. Jednadba 4.29je generalizacija jednadbe4.12. Na slici 4.14. elipse pokazuju stanje definisano sa 4.29. Slika 4.15. prikazuje najvaniji
hod koji hexapod robot moe koristiti, trononi hod, iji je faktor ispune 1/2. S obzirom naogranienje 4.30, ovo je najmanji faktor ispune kod hexapod robota i stoga rezultira najveombrzinom hoda. S druge strane, trononi hod ima najmanje margine statike i longitudinalnestabilnosti. Izvedene su relacije za SSM 4.28 i LSM 4.27 za proizvoljnu konfiguracijupravougaonog hexapod robota kod trononog hoda.
(a) SSM()
[rad]
SSM
[cm]
(b) LSM()
[rad]
LSM
[cm]
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
46/62
S t a b i l n o s t | 42
Poznato je da analizirani hodovi u optem sluaju maksimiziraju longitudinalnu marginu stabilnosti kod 2-nonih robota [20]. Slika 4.19. [19] prikazuje optimalnu marginu stabilnostiperiodinog statiki stabilnog hoda, normaliziranu duinom tijela -nonog robota [21]. Moe sezakljuiti da s porastom broja nogu raste i stabilnost, kao i dozvoljeni opseg faktora ispune.Najvee poboljanje je ostvareno prelaskom sa
4na
6, a poboljanja se postupno
smanjuju prema . Poto trokovi hardvera rastu proporcionalno sa brojem nogu, toobjanjava zato se skoro nikako ne razvijaju roboti sa vie od deset nogu.
Slika 4.19.[19] Optimalna margina stabilnosti periodinog statiki stabilnog hoda kod -nonih sistemalokomocije.
U konanici, pokazano je da su poboljanja u stabilnosti za robote sa vie od est nogu uodnosu na hexapode zanemariva (
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
47/62
43
5 E
KSPERIMENT
5.1 UVOD
Realizirane su tri vrste statiki stabilnog hoda na hexapod robotu AMINA sa pravouglimoblikom tijela, ije su definicije, osobine i stabilnost analizirane u poglavlju 4.4.. U ovom poglavljuje dat programski kd koji realizira analizirane tri vrste hoda, a uitava se neposredno naBotBoarduino, koji nadalje alje komande putem TTL serijske komunikacije na upravljaki sistemsa pojaalima SSC 32, na koji je spojeno osamnaest motora koliko robot AMINA ima. Za sintezuupravljakog programa potrebno je detaljno poznavanje performansi svih komponenti robota,koje su objanjeneu poglavlju 2.. Robot AMINA je prikazan na slici 5.1..
Slika 5.1.Robot AMINA u konfiguraciji sa tri potporne noge
U tabeli 2.11. dat je pregled oznaka svih servo motora koritenih u programskom kdu, ipinova na koje su motori spojeni. 2D prikaz robota AMINA sa oznakama servo motora prikazan jena slici 2.13..
Kao to je reeno u poglavlju 2.2., servo motor e zauzeti centralnu poziciju ako mu se poaljePWM signal perioda 20, gdje je irina impulsa 1.5. Krai impulsi okreu osovinu u smjerukazaljke na satu, a dui suprotno, kao to je prikazano na slici 2. 3.. Faktor ispune (duty cycle)impulsa unutar perioda upravlja pozicijom izlazne osovine. Svaki od servo motora se moezakrenuti za ugao od 90do 90. Kada robot uravnoteeno stoji (Slika 2.1.), svi motori su ucentralnoj poziciji. Da bi se noga podigla ili zakrenula, potrebno je zakrenuti osovinu
odgovarajuegmotora na odgovarajui nain zadavanjem odgovarajue komande (PWM signal).Unutar ovog poglavlja irina impulsa e se navoditi bez jedinice, i podrazumijevat e se da je umikrosekundama.
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
48/62
E k s p e r i m e n t | 44
Centralna pozicija servo motora je 1500, meutim ovo je teoretski sluaj koji zbog runogpozicioniranja osovine motora od strane korisnika esto ima odreenja odstupanja. Tako i narobotu AMINA neki motori ne zauzimaju centralnu poziciju za irinu impulsa od 1500 zboggreaka nastalih ljudskim faktorom pri pozicioniranju osovine, pa ih je potrebno kalibrisati.Kalibracija je izvrena mjerenjem odstupanja pozicije osovine svakog motora ponaosob pomou
aplikacije Servo Sequencer Utility, te podeavanjem offset vrijednosti u programskom kdu zaizmjereni iznos. Na slici 5.2. prikazane su izmjerene vrijednosti irine impulsa za centralnupoziciju za svaki motor na robotu AMINA.
Robot AMINA je sastavljen tako da svi kukovi na desnoj strani zakreu coxu prema naprijedpoveavanjem irine impulsa (1500-2500), a nazad smanjivanjem irine impulsa (500-1500). Svakoljena na desnoj strani podiu nogu smanjivanjem irine impulsa (500-1500), a sputajupoveavanjem irine impulsa (1500-2500). Svi lanci na desnoj strani zakreu tibiu prema vani(od platforme robota) poveavanjem irine impulsa (1500-2500), a prema unutra (premaplatformi robota) smanjivanjem irine impulsa (500-1500). Na lijevoj strani robota poveavanje(smanjenje) irine impulsa rezultira zakretajima odgovarajuih segmenata na suprotnu stranu od
one na desnoj. 2D prikaz robota AMINA sa smjerovima zakreta motora sa poveavanjem, odnosnosmanjenjem irine impulsa prikazana je na slici 5.2..
Slika 5.2. Ilustracija robota AMINA sa oznaenim centralnim pozicijama svih osamnaest servo motora i smjerovimazakreta motora sa poveanjem (smanjenjem) zadane irine impulsa upravljakog PWM signala. Kruiima su oznaeni
servo motori, a crnim rombovima stopala. Brojevi iznad motora predstavljaju irinu impulsa za centralnu poziciju.
5.2 P
ROGR MSKI KD
Programski kd za BotBoarduino koji se izvrava na robotu AMINAje napisan programskimjezikom C++. U ovom poglavlju e biti priloene i objanjene funkcije koje realiziraju navedene trivrste hoda, a cjelokupan programski kd se nalazi na CD-u u prilogu ovog rada. Prilikomprogramiranja, autor rada je vodio rauna o pravilu 1, kao i odranju stabilnosti koja je analiziranau u poglavlju 4.4.. BotBoarduno serijskom komunikacijom alje komande na pogonski kontrolerSSC 32 u skladu sa sintaksom koju ovaj koristi, a koja je data u potpoglavlju 2.3.2.. Ukoliko se
BotBoarduino USB kablom povee sa PC raunarom i otvori se Serial Monitorunutar razvojnog
BotB
SSC-32
1450
1450
1450
1450
1470
1470
1610
1400 1400
1480
1460
1350
1500 1500
1500
1500
1500
1500
2500 500 25002500 500500
COXA FEMUR TIBIA
KUK
STOPALO
LANAKKOLJENO
-
7/21/2019 Amina Sljivo - Analiza Stabilnosti Hexapod Robota.pdf
49/62
E k s p e r i m e n t | 45
okruenjaArduino IDE, mogu se vidjeti upravo naredbe koje BotBoarduino alje na SSC -32 tokomhodanja robota.
Deklarisana su tri niza od po est elemenata tipa int3kao globalne varijable: servoKukovi,servoKoljenaiservoClanciu koje su smjeteni brojevi pinovaodgovarajuih servo motora.
Deklarisan je i niz znakije su vrijednosti iz skupa 1,1}i koje e mnoiti vrijednost koja sedodaje (oduzima) od irine impulsa za centralnu poziciju motora, jer je smjer pomjeranja zglobovana desnoj strani robota za poveavajue impulse suprotan od onog na lijevoj, stoga je desna stranauzeta sa znakom '+' (plus) a lijeva sa '-' (minus). Takoer, u nizove istih dimenzija i tipaservoOffsetKukovi, servoOffsetKoljena i servoOffsetClanci su smjetenevrijednosti odstupanja srednje pozicije odgovarajuih servo motora od 1500. Definisana jekonstanta srednjaPozicijakoja iznosi 1500, te su deklarisane globalne varijable tipa int:
visinaKorakairina impulsa koju je potrebno dodati na konstantu srednjaPozicija da bikoljeno na desnoj strani podiglo nogu robota. Koristi se u funkcijama za implementaciju sve tri
vrste hoda. Definisana je od strane programera. Validne vrijednosti za ovu varijablu su u opsegu
0 < 1000.korakirina impulsa koju je potrebno dodati na konstantu srednjaPozicijada bi kukna desnoj strani robota zakrenuo nogu robota tako da noga pree jedan korak. Koristi se ufunkcijama za implementaciju sve tri vrste hoda. Definisana je od strane programera. Ako ima
negativnu v