You are on page 1of 43

SLOVENSKÁ TECHNICKÁ UNIVERZITA V BRATISLAVE

STROJNÍCKA FAKULTA

MODELOVANIE NELINEÁRNEHO MECHATRONICKÉHO


SYSTÉMU

Bakalárska práca

SjF-13432-57863

Študijný program: automatizácia a informatizácia strojov a procesov


Študijný odbor: 5.2.14 automatizácia
Školiace pracovisko: Ústav automatizácie, merania a aplikovanej
informatiky
Vedúci práce: Ing. Pavol Seman

Bratislava 2011 Juraj Janík


Slovenská technická univerzita v Bratislave Strojnícka fakulta
Ústav automatizácie, merania a aplikovanej informatiky Akademicky rok: 2010/2011
Evidenčné číslo: SjF-13432-57863

ZADANIE BAKALÁRSKEJ PRÁCE

Študent: Juraj Janík


ID študenta: 57863
Študijný program: automatizácia a informatizácia strojov a procesov
Študijný odbor: 5.2.14 automatizácia
Vedúci práce: Ing. Pavol Seman
Miesto vypracovania: Ústav automatizácie, merania a aplikovanej informatiky
Názov práce: Modelovanie nelineárneho mechatronického systému
Špecifikácia zadania:
1. Charakterizujte vybrané typy nelineárnych mechatronických systémov. Zamerajte sa na
systém invertovaného kyvadla.
2. Pojednajte o možnostiach realizácie modelu prostredníctvom nástroja SimMechanics
programu MATLAB.
3. Vytvorte model invertovaného kyvadla v prevedení pendubot. Pre tvorbu modelu
použite dva prístupy. V prvom použite analytický prístup a model vytvorte na
základe pohybových rovníc. V druhom využite nástroj SimMechanics programu
MATLAB. Získané modely porovnajte.

Rozsah práce: 30 - 50 strán

Riešenie zadania práce od: 14. 02. 2011


Dátum odovzdania práce: 08. 06. 2011
Čestné prehlásenie

Vyhlasujem, že som záverečnú prácu vypracoval samostatne s použitím


uvedenej literatúry.

Bratislava, 7. júna 2011 ............................................

Juraj Janík
Poďakovanie

Moje poďakovanie patrí vedúcemu bakalárskej práce Ing. Pavlovi Semanovi


za cenné rady a odbornú pomoc pri vypracovávaní tejto práce.

Bratislava, 7. júna 2011 Juraj Janík


Názov práce: Modelovanie nelineárneho mechatronického systému
Kľúčové slová: pendubot, SimMechanics, nelineárny mechtronický systém
Abstrakt: Cieľom práce je vytvornie modelu nelineárneho mechatronického
systému, a to invertovaného kyvadla v prevedení pendubot. Práca poukazuje na
tvorbu modelu pomocou nástroja SimMechanics programu MATLAB. Prvá
kapitola definuje pojem nelineárny mechatronický systém a stručne
charakterizuje rôzne prevedenia invertovaného kyvadla. Druhá kapitola
pojednáva o možnostiach realizácie modelu prostredníctvom nástroja
SimMechanics. Tretia kapitola sa zaoberá vytváraním modelu pendubota dvomi
spôsobmi - pomocou nástroja SimMechanics a na základe pohybových rovníc.
Kapitola zároveň rieši linearizáciu oboch modelov a porovnáva ich.

Title: Nonlinear mechatronic system modelling


Key words: pendubot, SimMechanics, nonlinear mechatronic system
Abstract: The aim of the bachelor work is to create a model of nonlinear
mechatronic system - inverted pendulum in pendubot design. The work points
out model creating by SimMechanic tool of the MATLAB program. First chapter
defines the concept nonlinear mechatronic system and characterizes shortly
different types of the inverted pendulum. Second chapter dealt with
opportunities of realization the model with SimMechanics. Third chapter deals
with creating pendubot model in two ways – by SimMechanics tool and on the
basis of kinetic equations. This chapter describes also a linearization of both
models and their comparasion.
Obsah

Úvod ............................................................................................................................7
1 Nelineárne mechatronické systémy ......................................................................8
1.1 Kyvadlo na vozíku ...........................................................................................9
1.2 Pendubot ...........................................................................................................9
1.3 Rotačné kyvadlo .............................................................................................10
1.4 Dvojité kyvadlo ..............................................................................................11
1.5 Inverzné kyvadlá v praxi ..............................................................................11
1.5.1 Dopravný prostriedok SEGWAY ..........................................................11
1.5.2 Raketa .......................................................................................................12
2 SimMechanics ........................................................................................................13
2.1 Prehľad blokov v SimMechanics ..................................................................13
2.1.1Bodies (telesá) ...........................................................................................13
2.1.2 Constraints & drivers (obmedzenia a ovládače) ..................................14
2.1.3 Force elements (silové prvky) ................................................................15
2.1.4 Joints (väzby) ...........................................................................................15
2.1.5 Sensors & Actuators (senzory a akčné členy) .......................................17
2.1.6 Interface elements (prvky rozhrania) ....................................................18
2.1.7 Utilities (pomocné prvky) ......................................................................18
2.2 Postup pri modelovaní ..................................................................................18
3 Tvorba modelu kyvadla .......................................................................................20
3.1 SimMechanics model .....................................................................................22
3.2 Analytický model ...........................................................................................29
3.3 Linearizácia modelov.....................................................................................33
3.4 Porovnanie modelov ......................................................................................37
Záver..........................................................................................................................42
Bibliografické odkazy .............................................................................................43

6
Úvod

Pojem mechatronika má mnoho definícií. Termín mechatronika vznikol v roku


1969 a prvý raz ho použil Tesuro Mori, inžinier japonskej spoločnosti Yaskawa
Electric Company, keď spojil slová mechanika a elektronika. Mechatronika má za
sebou dlhší vývoj aj keď je to pomerne nový odbor, no v dnešnej dobe po rozvoji
mikroprocesora na báze integrovaného obvodu a rozmachom informačných
technológií je chápaná ako integrácia mechaniky, elektroniky, riadenia a
informatiky.

Obr. 1 Mechatronika [8]

Invertované kyvadlo je populárny mechatronický systém, vhodný najmä ako


príklad na štúdium automatického riadenia rôznymi spôsobmi. Pendubot je
dvojité rovinné kyvadlo, skladá sa z dvoch pevných členov, ramena a kyvadla
a z dvoch rotačných kĺbov. Z jednej strany je na rameno privádzaný vonkajší
budiaci moment, z druhej strany je na ramene pomocou druhého rotačného kĺbu
voľne prichytené kyvadlo. Systém je riadený tak, aby sa kyvadlo udržiavalo
v zvislej polohe. V praxi tiež existujú zariadenia, ktoré pracujú na podobnom
princípe ako inverzné kyvadlá a sú riadením udržiavané v nestabilnej polohe. Je
to napríklad moderný dopravný prostriedok segway.
Model mechatronického systému slúži na simuláciu riadenia systému a
správania sústavy. Modelovanie sa uplatňuje aj pri navrhovaní nových
mechatronických systémov.

7
1 Nelineárne mechatronické systémy

Mechatronický systém sa skladá z viacerých častí. Jednou z nich je pracovná


sústava zodpovedná za vykonávanie všetkých mechanických pohybov a funkcií.
Tie sa samy od seba vykonávať nebudú, preto pracovná sústava obsahuje akčné
členy dodávajúce mechanickú energiu mechanizmom. Na spätnú kontrolu slúžia
snímače. Tieto tri časti, mechanika, akčné členy a snímače tvoria pracovnú sústavu
mechatronického zariadenia. Nad ňou sa nachádza riadiaci člen, ktorý vydáva
povely akčným členom na základe signálov zo snímačov a požiadaviek
používateľa. Na interakciu človeka so zariadením slúži používateľské rozhranie.
Za spojenie s inými technickými sústavami zodpovedá rozhranie s inými
technickými sústavami. Základné prvky mechatronického zariadenia teda tvoria
pracovná sústava, riadenie a rozhranie s okolím mechatronickej sústavy. [1]
Nelinearita systému spočíva v tom, že sa systém správa rozdielne pri
rozdielnych podmienkach. Matematicky, výstupy systému nie sú lineárnymi
závislosťami vstupov.
V praxi máme okolo seba mnoho nelineárnych mechatronických systémov, od
CD mechaniky, fotoaparátov, cez tlmenie na autách, práčky až po lietadlá.
Ako jednoduché príklady na pochopenie nelineárnych mechatronických
systémov sú veľmi vhodné inverzné kyvadlá v rôznych prevedeniach. Ich
podstatou je na základe údajov zo snímačov o polohe kyvadla udržiavať
kyvadlo pomocou akčných zásahov vo vzpriamenej polohe. Realizuje sa to
rôznymi druhmi regulátorov. V ďalších podkapitolách si ukážeme niekoľko
vybraných typov takýchto kyvadiel.

8
1.1 Kyvadlo na vozíku

Kyvadlo na vozíku, alebo Cart-pole systém (z anglického cart - vozík a pole –


tyč, stožiar, stĺp) je prevedenie invertovaného kyvadla, kde je kyvadlo napojené
voľne rotačným kĺbom na pohyblivú platformu. Kyvadlo sa okolo kĺbu otáča
voľne, a uhol naklonenia môžeme riadiť pohybom vozíku, ktorý sa posúva
vodorovne v rovnakej osi v akej je aj jednoosým kĺbom umožnený pohyb
kyvadla.

Obr. 2 Kyvadlo na vozíku

1.2 Pendubot

Pendubot je systém, ktorým sa budú zaoberať aj ďalšie kapitoly. Výraz pendubot


vznikol spojením slov pendulum (kyvadlo) a robot. Systém má dva rotačné kĺby,
pričom na jeden je privádzaný vonkajší budiaci moment. Sústava sa opäť rieši
ako dvojrozmerná rovinná úloha.

9
Obr. 3 Pendubot

1.3 Rotačné kyvadlo

Rotačné kyvadlo, alebo tiež furuta pendulum je ďalším prevedením


invertovaného kyvadla. Systém má tiež dva rotačné kĺby, pričom na jeden je
privádzaný vonkajší budiaci moment. Kĺby sú na rozdiel od kyvadla pendubot
umiestnené tak, že telesá sa vzhľadom na nepohyblivý rám nepohybujú v jednej
rovine. Treba sa teda na tento systém pozerať ako na trojrozmernú úlohu.
Obrázok je preto v axonometrii.

Obr. 4 Rotačné kyvadlo

10
1.4 Dvojité kyvadlo

Pridaním ďalšieho kyvadla do systému kyvadla na vozíku dostávame zložitejšiu


sústavu, ktorá má až 3 stupne voľnosti, pričom budiaca sila je privádzaná opäť
len na jeden.

Obr. 5 Dvojité kyvadlo

1.5 Inverzné kyvadlá v praxi

Na princípe invertovaného kyvadla pracuje aj mnoho reálnych mechatronických


systémov využiteľných v praxi. Aj keď ide o konštrukčne omnoho zložitejšie
zariadenia, základný princíp udržiavania systému v nestabilnej polohe je
rovnaký.

1.5.1 Dopravný prostriedok SEGWAY

Segway je dvojkolesový dopravný prostriedok s elektrickým pohonom.


Zariadenie pracuje na základe údajov z piatich uhlových snímačov a dvoch
senzorov zrýchlenia. Užívateľ sa nakláňa dopredu a dozadu, na čo zariadenie
reaguje pohybom vpred, alebo brzdením. Obdobne to funguje so zmenou smeru

11
jazdy. Segway možno prirovnať k systému kyvadlo na vozíku (1.1) s tým, že na
rozdiel od tohto kyvadla, ktoré sa pohybuje len v jednej osi, segway riadi pohyb
aj do strán.

Obr. 6 Segway [9]

1.5.2 Raketa

Systém rakety letiacej zo zeme kolmo nahor by sa dal prirovnať ku kyvadlu


pendubot (1.2). Raketa je riadením udržiavaná v zvislej polohe pomocou zmien
smeru prúdu z raketového motoru. Ak sa raketa počas letu začne vonkajšími
vplyvmi vykláňať z požadovaného smeru, systém zareaguje a natočením prúdu
z motora sa snaží smer rakety vrátiť späť.

Obr. 7 Let rakery

12
2 SimMechanics

SimMechanics je rozšírenie Simulinku určené pre modelovanie sústav tuhých


telies prepojených väzbami a simuláciu ich pohybov, pomocou štandardnej
Newtonovej dynamiky síl a momentov. Model sa vytvára z fyzikálneho pohľadu
na systém. Užívateľ pomocou knižnice blokov vytvorí model reálneho
technického objektu.[3] Knižnica obsahuje rôzne bloky, ktoré predstavujú
priamo fyzické komponenty alebo vzťahy potrebné na vytvorenie modelu (napr.
telesá, väzby, senzory, akčné členy). Na základe definovaných parametrov
týchto blokov a vzájomných prepojení je možné vygenerovať matematický
model systému. Výhodou je, že signály akčných veličín alebo zo senzorov môžu
do tohto modelu vstupovať resp. vystupovať a takto je možné vzájomné
prepojenie s inými submodelmi. Taktiež je možné na doplnenie modelu použiť aj
štandardné prvky knižnice Simulinku. [6]

2.1 Prehľad blokov v SimMechanics

Bloky rozšírenia SimMechanics sú v knižnici Simulinku pod zložkou SimScape,


kde sú aj iné rozšírenia Simulinku, ako napríklad SimHydraulics. Bloky sú
typovo rozdelené do viacerých skupín:

2.1.1Bodies (telesá)

Knižnica slúži na modelovanie telies sústavy a rámu a definíciu parametrov


prostredia, v ktorom sa sústava nachádza. Patria sem bloky body, ground,
machine environment a shared environment.

13
Obr. 8 Bodies

Body – predstavuje tuhé teleso, zadáva sa hmotnosť, momenty zotrvačnosti,


poloha ťažiska a poloha ďalších bodov, ku ktorým chceme napojiť ďalšie prvky.
Tieto parametre určujú počiatočnú polohu a orientáciu.

Ground – definuje fixne určený, nehybný bod v hlavnom súradnicovom systému


modelu.[5] Sústava všetkých ground blokov v systéme popisuje nepohyblivý
rám v absolútnej súradnicovej sústave.[4]

Machine enviroment – definuje základné parametre prostredia sústavy.


Umožňuje do sústavy pridať vektor gravitácie, zvoliť druh analýzy, tolerancie,
spôsob linearizácie či bude prostredie dvojrozmerné alebo trojrozmerné atď. [4][5]

2.1.2 Constraints & drivers (obmedzenia a ovládače)

Sú to bloky, ktoré odoberajú stupne voľnosti.[2]

Constraint (obmedzenie) – je to väzba bez pasívnych odporov, nezávislá na čase.


Definujúca pohyby, ktoré nie sú umožnené. Je možné modelovať prevody (Gear
constraint), paralelnosť mechanizmov (Parallel constraint) a pohyb bodu po
definovanej trajektórii (Point curve constraint).[5]

Driver (ovládač) – je to kinematické budenie, väzba závislá na čase, ktorá


predpisuje napríklad polohu (Linear driver) uhol natočenia (Angle driver),
vzdialenosť telies (Distance driver) alebo rýchlosť (Velocity driver).[5]

14
Obr. 9 Constraints and Drivers

2.1.3 Force elements (silové prvky)

Pomocou blokov z tejto skupiny je možné vytvoriť vnútrotelesové sily. [2]


Knižnica obsahuje dva bloky:

Body Spring & Damper (pružina a tlmič telesa): modeluje silu tlmenia
a lineárneho oscilátora medzi dvomi telesami.[2]

Joint Spring & Damper (pružina a tlmič vo väzbe): sila alebo moment tlmenia
a lineárneho oscilátora v posuvnej alebo rotačnej väzbe.[2]

Obr. 10 Force elements

2.1.4 Joints (väzby)

Väzby pridávajú stupne voľnosti, definujú prepojenie medzi telesami, alebo


telesom a rámom ground, každý joint môže obsahovať jednu alebo viacero
základných väzieb, teda rotácií a translácií v jednotlivých osiach. Každý blok
typu Joint má dva porty na pripojenie telies, ktoré budú navzájom konať daný typ
15
pohybu. Sú to BASE a FOLLOWER. Teleso pripojené na port Follower vykonáva
zvolený typ relatívneho pohybu vzhľadom k telesu na porte base. Bloky Joints sa
ešte ďalej delia na tri skupiny: assembled joints, disassembled joints (prvky väzby
base a follower je možné definovať do rôznych bodov)a massless connectors
(slúžia na prenos pohybu medzi dvoma časťami sústavy. Prvky týchto väzieb
base a follower sa pred i počas simulácie nachádzajú na rôznych miestach).

Každý z týchto blokov pridáva určitý počet stupňov voľnosti (translácie a


rotácie) v daných osiach. Najjednoduchšie väzby Revolute a Prismatic pridávajú
len jeden stupeň voľnosti, rotáciu okolo jednej osi a transláciu v jednej osi.
Rotačné a posuvné pohyby sa potom v ďalších typoch väzieb rôzne kombinujú.
Na blokoch iných väzieb je názvom a obrázkom jasne zobrazené o akú väzbu
ide. Presnejšie popisy k jednotlivým blokom nájdeme v oknách, ktoré zobrazíme
dvojitým kliknutím na bloky. Väzba Six-Dof nakoniec dovoľuje posuvný pohyb
vo všetkých troch osiach a taktiež rotáciu okolo všetkých osí. Blok Weld naopak
odoberá všetky stupne voľnosti. Knižnica obsahuje aj blok Custom Joint, kde si
užívateľ sám navolí koľko a aké stupne voľnosti bude táto väzba umožňovať.

Obr. 11 Assembled joints

16
Obr. 12 Disassembled joints

Obr. 13 Massless joints

2.1.5 Sensors & Actuators (senzory a akčné členy)

Obr. 14 Sensors and Actuators

Bloky Sensors (Body Sensor, Joint Sensor, Constraint and Driver Sensor)
umožňujú snímanie stavových veličín z niektorých iných blokov a bloky
Actuators (Body Actuator, Joint Actuator, Driver Actuator) naopak pôsobia silou
alebo momentom na telesá alebo väzby. Joint Stiction Actuator slúži na
simuláciu trenia vo väzbe.
Blok Joint Initial Condition slúži na nastavenie počiatočných podmienok
(polohy, rýchlosti, zrýchlenia) vo väzbe.
Blok Variable Mass and Inertia Actuator pripojený na teleso dokáže meniť
v závislosti na čase jeho hmotnosť a moment zotrvačnosti.

17
2.1.6 Interface elements (prvky rozhrania)

Obr. 15 Interface elements

Bloky z tejto skupiny slúžia na prepojenie trojrozmerného pohybu


s jednorozmernými prvkami.
Prismatic-Translational Interface - spája prismatic primitive s jednorozmernými
SimScape mechanickými translačnými prvkami.[2]
Revolute-Rotational Interface - spája revolute primitive s jednorozmernými
SimScape mechanickými rotačnými prvkami.[2]

2.1.7 Utilities (pomocné prvky)

Sú to rôzne užitočné bloky, ktoré nespadajú pod žiadnu z predchádzajúcich


kategórií.

Obr. 16 Utilities

2.2 Postup pri modelovaní

Pri modelovaní hlavne zložitejších systémov je dobré mať v tom určitý systém.
Odporúča sa postupovať podľa nasledovných bodov.
 O akú sústavu ide?
Nie je to tak zbytočná otázka ako by sa mohlo na prvý pohľad zdať. Je dobré
si danú sústavu nakresliť, aby bolo naozaj jasné aká sústava sa bude modelovať.

18
Ak je treba namodelovať nejaký reálny systém, sústava sa musí zjednodušiť tak,
aby išlo o mechanickú úlohu a bolo ju možné modelovať nástrojom
SimMechanics. Častokrát sa to robí podvedome a automaticky. V modeloch sa
zanedbávajú niektoré faktory, ako napr. odpor vzduchu, niektoré druhy trenia,
uvažujeme o dokonale tuhých telesách a pod., treba si uvedomiť, že model sa
nikdy nebude správať úplne rovnako ako reálna sústava. Tieto rozdiely sa môžu
prejavovať najmä po dlhšom čase simulácie.
 Bude možné sústavu modelovať v SimMechanics?
V SimMechanics možno riešiť klasické úlohy dynamiky, kinematiky alebo
statiky. Nie je možné riešiť problémy pružnosti a pevnosti. Ráta sa teda so
zidealizovanými podmienkami. Treba si uvedomiť koľko telies obsahuje daná
sústava a aké väzby medzi nimi sú. Podľa toho sa určí počet stupňov voľnosti.
 Modelovanie telies, geometria
Do nového modelového súboru sa vložia telesá a definuje sa poloha ich
prípojných bodov. Je dobré používať relatívnu polohu bodov na jednom telese
k jednému bodu (Adjoining). Telesá sa potom prepoja väzbami joints. Otestuje
sa, či je možné spustiť simuláciu.
 Bloky Constraints a Drivers
Ak je treba pridajú sa do modelu aj väzby typu Constraints a Drivers, ktorými
sa odoberú ďalšie stupne voľnosti. Otestuje sa, či model funguje aj teraz.
 Ďalšie bloky
Pridajú sa ďalšie potrebné bloky na simuláciu budenia väzieb, snímanie
veličín, silové pôsobenie na telesá atď.
 Zadanie podstatných parametrov
Doteraz sa pri modelovaní zadávali len parametre nevyhnutné pre spustenie
modelu (poloha dôležitých bodov telies) a keď sa po predchádzajúcich krokoch
overila správnosť modelu, môžu sa presne nadefinovať aj ostatné požadované
parametre podstatné pre výpočet dynamiky sústavy (poloha ťažísk telies,
hmotnosti telies a ich momenty zotrvačnosti vzhľadom k ťažisku).

19
Nástroj SimMechanics je teda veľmi vhodný prostriedok na modelovanie
jednoduchých, ale aj zložitejších mechanických systémov. Invertované kyvadlá
spomínané v prvej kapitole sa dajú v prostredí SimMechanics namodelovať
veľmi jednoducho, rýchlo a efektívne.

3 Tvorba modelu kyvadla

Model kyvadla bol vytvorený dvoma spôsobmi. Prvý využíva na získanie modelu
nástroj SimMechanics prostredia MATLAB. Druhým bolo vytvorenie modelu
kyvadla na základe pohybových rovníc. Toto je bežne zaužívaný spôsob, pri
ktorom sa z pohybových rovníc vyjadria najvyššie derivácie premenných,
charakterizujúcich jednotlivé stupne voľnosti, ktoré popisujú správanie systému.
V tomto prípade sú to uhlové zrýchlenia 𝜑 a 𝜃 . [6]
Systém je totožný pre oba prístupy:

Obr. 17 Pendubot

20
Z obrázku 14 vidieť, že uhly sú zvolené tak, že keď sú nulové, sústava je vo
vodorovnej polohe.
V oboch prípadoch bolo použité rovnaké značenie všetkých veličín
popisujúcich systém a taktiež rovnaké číselné hodnoty konštantných parametrov
sústavy:
Tabuľka 1 Konštantné parametre

symbol veličina hodnota jednotka


m1 hmotnosť ramena 0,63 kg
m2 hmotnosť kyvadla 0,062 kg
l1 dĺžka ramena 0,44 m
l2 dĺžka kyvadla 0,4 m
vzdialenosť ťažiska ramena od
lg1 0,1 m
osi otáčania
vzdialenosť ťažiska kyvadla od
lg2 0,2 m
osi otáčania
moment zotrvačnosti ramena
I1 0,021 kg.m2
vzhľadom na ťažisko
moment zotrvačnosti kyvadla
I2 0,0012 kg.m2
vzhľadom na ťažisko
g gravitačné zrýchlenie 9,81 m.s-2
Br koeficient tlmenia ramena 0,008 kg.m2.s-1
Bk koeficient tlmenia kyvadla 0,001 kg.m2.s-1

Tabuľka 2 Premenné

symbol veličina jednotka


vonkajší budiaci moment kg.m2.s-2
φ uhol medzi ramenom a osou x rad
uhol medzi kyvadlom
θ rad
a priamkou ramena
𝜑 uhlová rýchlosť ramena rad.s-1
uhlová rýchlosť kyvadla
𝜃 rad.s-1
vzhľadom na rameno
𝜑 uhlové zrýchlenie ramena rad.s-2
uhlové zrýchlenie kyvadla
𝜃 rad.s-2
vzhľadom na rameno

21
3.1 SimMechanics model

Model pendubota bol zostavený ako vidieť na obrázku 15. Skladá sa z dvoch
blokov body, ktoré predstavujú rameno a kyvadlo pendubota. Ďalej boli použité
dva bloky Revolute, ktoré predstavujú kĺby medzi telesami a medzi ramenom
a nehybnou podložkou (blok Ground). Na blok Ground je pripojený blok
Machine environment, ktorý udáva okrem iného veľkosť a smer gravitačného
zrýchlenia. Počiatočné podmienky sú zadané pomocou blokov Initial condition.
Požadované veličiny boli snímané blokmi Joint Sensor, trenie je realizované
pomocou blokov Gain, ktoré ďalej vstupovali do blokov Joint Actuator, ktoré
pôsobia na kĺby. Do aktuátora ramena vstupuje zároveň aj budiaci moment 𝜏.
Spojenie signálov z trenia a momentu 𝜏 bolo realizované blokom Sum. Blok In
predstavuje vstupný vonkajší budiaci moment 𝜏, a výstupné veličiny (uhly
a uhlové rýchlosti) predstavujú štyri bloky Out.

Obr. 18 SimMechanics model

Každý blok si samozrejme vyžaduje zadať požadované parametre. Bloky boli


teda nastavené nasledovne:

22
Machine environment:

Obr. 19 Machine environment

V tomto bloku je nastavené gravitačné zrýchlenie. Udáva sa ako vektor,


zložený z 3 prvkov, sú to zložky veľkosti zrýchlenia v osiach x, y, z. Smer
zrýchlenia bol zvolený v zápornom smere osi y, a preto jeho číselná hodnota má
záporné znamienko. Hodnotu je zadaná -9.81 a jednotka m/s2. Súradnicový
system je teda taký, že os y je v zvislom smere a vodorovnú rovinu tvoria osi x
a z. Všetky ostatné parametre sú ponechané tak, ako boli prednastavené. (napr.
typ analýzy Forward Dynamics hovorí, že sa jedná o priamu dynamickú úlohu
atď.)

Ground:
Tento blok definuje súradnice nepohyblivého bodu, teda rámu sústavy. V tomto
prípade sú zadané súradnice [0 0 0], Na tento blok sa priamo napája blok, ktorý

23
predstavuje kĺb ramena, a teda začiaok súradnicovej sústavy je v tomto kĺbe, a
ten je nepohyblivý.

Revolute:

Obr. 20 Revolute

Blok Revolute predstavuje rotačnú väzbu, v tomto prípade kĺb ramena a aj kĺb
kyvadla. Oba bloky majú aj rovnaké nastavenia. Nastavuje sa tu os, okolo ktorej
bude umožnená rotácia , v tomto prípade okolo osi z vzhľadom na nehybný rám,
teda world. Ďalej bolo nastavené koľko portov na spojenie so senzormi
a aktuátormi sa má vytvoriť. V tomto prípade 3 (dva základne porty na
pripojenie samotných telies base a follower sa nerátajú).

24
Body:

Obr. 21 Body

Bloky body predstavujú telesá, rameno a kyvadlo. Nastavuje sa tu hmotnosť,


pre rameno, je to m1. Jednotkou sú kilogramy. Ďalej sa nastavil moment
zotrvačnosti vzhľadom na ťažisko (Inetrtia). Moment zotrvačnosti je matica 3x3,
kde na diagonále sú hodnoty momentov okolo jednotlivých osí. Zvyšné čísla sú
nuly. Okolo osi z je nastavený moment zotrvačnosti na hodnotu I1. Hodnoty
momentov okolo osí x a y nie sú v tomto prípade dôležité, a hodnoty sa nijako
neprejavia na správaní modelu. Sú preto nastavené na hodnotu 1. Jednotka je
kg.m2.SimMechanics nepotrebuje poznať presný tvar telesa, na simuláciu
systému stačí definovať polohu bodov, ktoré sú pre výpočet správania systému
dôležité. V prípade ramena sú to koncové body, kde sa napájajú kĺby a ťažisko
ramena. Aby sa model zhodoval s analytickým modelom, bolo potrebné
umiestniť celé kyvadlo tak, aby oba uhly boli nulové, čiže vo vodorovnej polohe,
kolmo doprava. Prvý bod je bod CS1 (Name). Je to miesto kde je kĺb ramena
a podložky. Súradnice pre tento bod boli teda nastavené na [0 0 0] (Origin

25
Position Vector). Udávané sú v metroch (Units). Súradnice sú merané vzhľadom
na komponent napojený na tento bod, čiže kĺb ramena (možnosť Adjoining).
Ďalej je zaškrtnuté, že má byť viditeľný port pre tento bod (Show port) a že má
byť na ľavej strane bloku.
Ťažisko CG má súradnice [lg1 0 0], ale teraz vzhľadom na bod CS1. (možnosť
CS1) Vzdialenosť ťažiska od kĺbu je na mieste x-ovej súradnice, teda rameno
bude naozaj umiestnené vodorovne. Port pre ťažisko nie je potrebný, keďže naň
nie je napojený žiadny ďalší komponent. Obdobne boli nastavené súradnice pre
bod CS2, ktorý predstavuje koncový bod ramena, kde sa napája druhý kĺb. Port
pre tento bod je zviditeľnený a nastavený vpravo.
Obdobne bol nastavený aj druhý blok body ktorý predstavuje kyvadlo, s tým,
že už ani na koncový bod kyvadla CS2 nie je nič napojené, a preto nie je
zobrazený príslušný port.

Joint Sensor:

Obr. 22 Joint Sensor

26
Blok Joint Sensor slúži na zaznamenávanie daných stavových veličín. V tomto
prípade boli použité dva bloky Joint Sensor, každý napojený na jeden
z rotačných kĺbov (bloky Revolute). Merať sa budú uhly a uhlové rýchlosti.
V nastaveniach sú teda zaškrtnuté možnosti Angle (uhol) a Angular velocity
(uhlová rýchlosť). Zvolené sú tiež jednotky, rad pre uhol a rad/s pre uhlovú
rýchlosť. Z blokov Joint Sensor teda vystupujú dva signály, ktoré sú vlastne
výstupné údaje modelu, a preto vystupujú do blokov Out. Signály možno spojiť
tiež s blokom Scope, aby mohli byť sledované priebehy daných veličín.

Joint Initial Condition:

Obr. 23 Joint Initial Condition

Blok Joint Initial Condition slúži na nastavenie počiatočných podmienok, to


znamená polohy a rýchlosti. Na simuláciu pádu kyvadla z vodorovnej polohy
bola nastavená v oboch blokoch , pre rameno aj kyvadlo, nulová rýchlosť a tiež
uhly 0 rad.

Joint Actuator:
V týchto blokoch sú v podstate ponechané všetky prednastavené nastavenia.
Do blokov vstupujú signály o veľkosti momentov (v prípade bloku pre rameno
je to suma vonkajšieho budiaceho momentu 𝜏 a trecieho momentu, v prípade

27
bloku prislúchajúcemu kyvadlu je to len trecí moment), a tie ich posielajú ďalej
do rotačných väzieb ako budiace momenty.

Gain:
Bloky Gain sú štandardné bloky knižnice Simulinku, v modeli ich využívame
na prenásobenie uhlových rýchlostí koeficientmi trenia v kĺboch Br a Bk.
Z blokov teda vystupujú tlmiace momenty, ktoré sú pridané do väzieb. Keďže
momenty pôsobia opačným smerom ako je pohyb telies pripojených na kĺby,
v blokoch Gain sú zadané koeficienty Br a B k so záporným znamienkom.

Veľkou výhodou je, že priebeh pohybu sústavy vytvorenej v prostredí


SimMechanics možno aj vizuálne sledovať vďaka jednoduchej animovanej
vizualizácii, ktorá je integrovaná priamo v programe a tak si jednoducho
kontrolovať správne správanie modelu počas tvorby modelu.

Obr. 24 Vizualizácia

28
3.2 Analytický model

Analytický model bol teda zostavený na základe pohybových rovníc. Na ich


získanie bola použitá metóda Lagrangeových rovníc druhého druhu, ktoré sa
najviac uplatňujú pri tvorbe pohybových rovníc zložitejších mechanických
systémov. [6]
Základný tvar Lagrangeových rovníc je

𝑑 𝜕𝐿 𝜕𝐿
− = 𝑄𝑖
𝑑𝑡 𝜕𝑞𝑖 𝜕𝑞𝑖 (1)

kde L je Lagrangeova funkcia, qi je i-tá zovšeobecnená súradnica a Qi je

zovšeobecnená sila pôsobiaca v smere i-tej súradnice.


V prípade kyvadla pendubot majú tvar

𝑑 𝜕𝐿 𝜕𝐿
− =𝜏
𝑑𝑡 𝜕𝜑 𝜕𝜑 (2)

𝑑 𝜕𝐿 𝜕𝐿
− =0
𝑑𝑡 𝜕𝜃 𝜕𝜃 (3)

kde Lagrangeova funkcia je vyjadrená ako rozdiel kinetickej a potenciálnej


energie systému. K1 predstavuje kinetickú energiu ramena, K2 kinetickú energiu

kyvadla, P1 potenciálnu energiu kyvadla a P2 potenciálnu energiu kyvadla.

𝐿 = 𝐾1 +𝐾2 − 𝑃1 +𝑃2
(4)

Pre kinetickú energiu ramena platí:

1
𝐾1 = 𝐼1 + 𝑚1 𝑙𝑔1 2 𝜑2 (5)
2
29
Pre kinetickú energiu kyvadla platí:
1
𝐾2 = 𝐼2 +𝑚2 𝑙1 𝑙𝑔2 cos 𝜃 + 𝑚2 𝑙𝑔2 2 + 𝑚2 𝑙1 2 𝜑2
2
+ 𝐼2 + 𝑚2 𝑙1 𝑙𝑔2 cos 𝜃 + 𝑚2 𝑙𝑔2 2 𝜑𝜃
(6)
1
+ 𝐼2 + 𝑚2 𝑙𝑔2 2 𝜃 2
2

Potenciálna energia ramena:

𝑃1 = 𝑚1 𝑔𝑙𝑔1 sin 𝜑
(7)

Potenciálna energia kyvadla:

𝑃2 = 𝑚2 𝑔 𝑙1 sin 𝜑 + 𝑙𝑔2 sin 𝜑 + 𝜃


(8)

Po dosadení rovníc (5) až (8) do tvaru Lagrangeovej funkcie (4)


a nasledovných úpravách pre Lagrangeovu funkciu platí:

1
𝐿= (𝐼 +𝑚2 𝑙1 𝑙𝑔2 cos 𝜃 + 𝑚2 𝑙𝑔2 2 + 𝑚2 𝑙1 2 + 𝐼1
2 2
+ 𝑚1 𝑙𝑔1 2 )𝜑2 + (𝐼2 + 𝑚2 𝑙1 𝑙𝑔2 cos 𝜃 + 𝑚2 𝑙𝑔2 2 )𝜑𝜃
1 (9)
+ (𝐼2 + 𝑚2 𝑙𝑔2 2 )𝜃 2
2
− (𝑚1 𝑔𝑙𝑔1 + 𝑚2 𝑙1 𝑔 sin 𝜑 + 𝑚2 𝑙𝑔2 𝑔 sin 𝜑 + 𝜃

Po dosadení do Lagrangeových rovníc (2) a (3) dostávame tvar pohybových


rovníc:

𝜏 = 𝐴 + 𝐵 + 2𝐶 cos 𝜃 𝜑 + 𝐵 + 𝐶 cos 𝜃 𝜃 − 𝐶 sin 𝜃 𝜃 2


(10)
− 2𝐶 sin 𝜃 𝜑𝜃 + 𝐷𝑔 cos 𝜑 + 𝐸𝑔 cos(𝜑 + 𝜃)

30
0 = 𝐵𝜃 + 𝐵 + 𝐶 cos 𝜃 𝜑 + 𝐶 sin 𝜃 𝜑2 + 𝐸𝑔 cos(𝜑 + 𝜃) (11)

kde sme využili nasledovné substitúcie:

𝐴 = 𝑚1 𝑙𝑔1 2 + 𝑚2 𝑙1 2 + 𝐼1 (12)

𝐵 = 𝑚2 𝑙𝑔2 2 + 𝐼2 (13)

𝐶 = 𝑚2 𝑙1 𝑙𝑔2 (14)

𝐷 = 𝑚1 𝑔𝑙𝑔1 + 𝑚2 𝑙1 (15)

𝐸 = 𝑚2 𝑙𝑔2 (16)

Pre reálnejšie zobrazenie správania kyvadla sa do rovníc započítalo trenie v


kĺboch, a to pridaním tlmiacich momentov 𝐵𝑟 𝜑 a 𝐵𝑘 𝜃 . Keďže pôsobia v opačnom
smere ako je smer budiacich momentov majú záporné znamienko:

𝜏 − 𝐵𝑟 𝜑 = 𝐴 + 𝐵 + 2𝐶 cos 𝜃 𝜑 + 𝐵 + 𝐶 cos 𝜃 𝜃 −
𝐶 sin 𝜃 𝜃 2 − 2𝐶 sin 𝜃 𝜑𝜃 + 𝐷𝑔 cos 𝜑 + 𝐸𝑔 cos(𝜑 + 𝜃) (17)

−𝐵𝑘 𝜃 = 𝐵𝜃 + 𝐵 + 𝐶 cos 𝜃 𝜑 + 𝐶 sin 𝜃 𝜑2 + 𝐸𝑔 cos(𝜑 + 𝜃) (18)

Z pohybových rovníc sa následne vyjadrili obe uhlové zrýchlenia 𝜑 a 𝜃 .

𝑔 cos 𝜃 cos 𝜑 + 𝜃 𝐶𝐸 − 𝑔 cos 𝜑 𝐵𝐷 + 𝜑2 cos 𝜃 sin 𝜃 𝐶 2


𝜑=− …
cos 2 𝜃 𝐶 2
(19)
2 2
+ sin 𝜃 𝜃 + 2𝜑 sin 𝜃 𝜃 + 𝜑 sin 𝜃 𝐵 + 𝐵𝑘 cos 𝜃 𝜃 𝐶 + 𝐵𝑘 𝜃 + 𝜏 − 𝐵𝑟 𝜑 𝐵)

−𝐴𝐵

31
𝑔 𝑐𝑜𝑠 𝜃 𝑐𝑜𝑠 𝜑 + 𝜃 𝐶 + 𝑔 𝑐𝑜𝑠 𝜑 + 𝜃 𝐴 𝐸 +
𝜃= …
𝑐𝑜𝑠 2 𝜃 𝐶 2

+ −𝑔 𝑐𝑜𝑠 𝜑 𝑐𝑜𝑠 𝜃 𝐶 − 𝑔 𝑐𝑜𝑠 𝜑 𝐵 𝐷


… +
−𝐴𝐵

𝑐𝑜𝑠 𝜃 𝑠𝑖𝑛 𝜃 𝜃 2 + 2𝜑 𝑐𝑜𝑠 𝜃 𝑠𝑖𝑛 𝜃 𝜃 + 2𝜑2 𝑐𝑜𝑠 𝜃 𝑠𝑖𝑛 𝜃 𝐶 2


+ +
𝑐𝑜𝑠 2 𝜃 𝐶 2 − 𝐴𝐵
(20)
2 2
(𝑠𝑖𝑛 𝜃 𝜃 + 2𝜑 𝑠𝑖𝑛 𝜃 𝜃 + 𝜑 𝑠𝑖𝑛 𝜃 𝐵
+ …
𝑐𝑜𝑠 2 𝜃 𝐶 2

+𝜑2 𝑠𝑖𝑛 𝜃 𝐴 + 2𝐵𝑘 𝑐𝑜𝑠 𝜃 𝜃 + 𝜏 − 𝐵𝑟 𝜑 𝑐𝑜𝑠 𝜃 𝐶


… +
−𝐴𝐵

𝐵𝑘 𝜃 + 𝜏 − 𝐵𝑟 𝜑 𝐵 + 𝐵𝑘 𝜃 𝐴
+
𝑐𝑜𝑠 2 𝜃 𝐶 2 − 𝐴𝐵

Na základe týchto rovníc sa v prostredí Matlab Simulink vytvoril nelineárny


analytický model.

Obr. 25 Analytický model

Model bol zostavený pomocou blokov Fcn, Integrator, Mux, In, Out. Do
dvoch blokov Fcn s názvami Phidd a Thetadd boli zadané vyššie uvedené
32
rovnice (19) a (20). Z blokov teda vystupujú uhlové zrýchlenia 𝜑 a 𝜃 . Za nimi sú
umiestnené bloky integrator s názvami Phid a Thetad, ktoré hodnoty zrýchlení
zintegrujú a teda z blokov vychádzajú uhlové rýchlosti 𝜑 a 𝜃 , po ďalších
integráciách pomocou blokov Phi a Theta dostávame uhly 𝜑 a 𝜃. Uhly a uhlové
rýchlosti potom pomocou blokov Mux spolu s budiacim momentom 𝜏, ktorý
predstavuje vstupnú hodnotu (blok In) opäť vstupujú do blokov Phidd
a Thetadd. Tým sa vytvorí slučka a v týchto blokoch sa preto vždy počíta
s aktuálnymi hodnotami. Uhly a rýchlosti vstupujú tiež do blokov Out ako
výstupné hodnoty. Pre zobrazenie priebehov uhlov boli použité dva bloky
Scope.

3.3 Linearizácia modelov

Pre účely riadenia sa nelineárne modely linearizujú. Keďže v tomto prípade ale
ide o nelineárny systém, bude sa správať približne lineárne len v určitom malom
rozsahu polôh okolo daného bodu. V tomto prípade je to rovnovážny bod
𝜋
v nestabilnej zvislej polohe, čiže 𝜑 = (uhol má kladné hodnoty proti smeru
2

hodinových ručičiek) a 𝜃 = 0. Lineárny stavový model dynamického systému je


popísaný rovnicou:

𝑥 (𝑡) = 𝐴𝑚 𝑥(𝑡) + 𝐵𝑚 𝑢(𝑡) (21)


𝑦(𝑡) = 𝐶𝑚 𝑥(𝑡) + 𝐷𝑚 𝑢(𝑡) (22)

Vektor x(t) sú stavy sústavy (v tomto prípade stĺpcový vektor(𝜑, 𝜑, 𝜃, 𝜃 )) , u(t) je


vstupná veličina (𝜏), y(t) sú výstupné veličiny. Parametrami rovníc sú matica Am
(matica dynamiky), matica B m (váhová matica vstupu), matica C m (váhová
matica výstupu) a matica D m (matica priamej väzby). [7] V tomto prípade je
dôležitá len rovnica (21), keďže x(t)=y(t). Rovnica (22) je preto bezpredmetná.
Matice Am,B m,Cm,Dm boli z modelov v MATLABe jednoducho vyjadrené
pomocou príkazu linmod.

33
Pre SimMechanics model bol zadaný príkaz:

[A_sm,B_sm,C_sm,D_sm]=linmod('sm_model')

Na to, aby bol model linearizovaný v zvislej polohe bolo nutné ešte pred
použitím príkazu nastaviť počiatočné podmienky v blokoch Initial Condition do
𝜋
zvislej polohy, čiže 𝜑 = a 𝜑, 𝜃, 𝜃 = 0.
2

Získané matice sú:


0 0 1 0
A_sm = 0 0 0 1
47.3996 −23.0402 −0.4692 0.6363
−5.7779 22.5955 0.0795 −0.2563
0
B_sm = 0
−79.5349
32.0368
1 0 0 0
C_sm = 0 0 1 0
0 1 0 0
0 0 0 1
0
D_sm = 0
0
0
Na zistenie poradia prvkov vo vektore x(t) zo SimMechanics modelu boi použité
nasledovné príkazy:
[t,x,y] = sim('sm_model')
StateVectorMgr=mech_get_states(x(end,:),'sm_model/simmechanics_model/
Machine Environment')
StateVectorMgr.StateNames

Výpis:
'sm_model/simmechanics_model/Revolute1:R1:Position'
'sm_model/simmechanics_model/Revolute:R1:Position'
'sm_model/simmechanics_model/Revolute1:R1:Velocity'
'sm_model/simmechanics_model/Revolute:R1:Velocity'

34
Vektor x(t) prislúchajúci k maticiam A_sm,B_sm,C_sm,D_sm je stĺpcový vektor a
má teda tvar: 𝑥 𝑡 = (𝜃, 𝜑, 𝜃 , 𝜑)𝑇 . Na základe toho bol zostavená stavová rovnica
v maticovom tvare:

𝜃 0 0 1 0 𝜃 0
𝜑 0 0 0 1 𝜑 0
= + (𝜏)
𝜃 47.3996 −23.0402 −0.4692 0.6363 𝜃 −79.5349 (23)
𝜑 −5.7779 22.5955 0.0795 −0.2563 𝜑 32.0368

Pre analytický model bol zadaný príkaz:

[A_a,B_a,C_a,D_a]=linmod('a_model',[pi/2;0;0;0],0)

Priamo v príkaze bola zadaná poloha systému, v ktorej bude model


𝜋
linearizovaný (uhol 𝜑 = a 𝜑, 𝜃, 𝜃 = 0). Získané matice sú:
2

0 1 0 0
A_a = 22.5955 −0.2563 −5.7779 0.0795
0 0 0 1
−23.0402 0.6363 47.3996 −0.4692
0
B_a = 32.0368
0
−79.5349
1 0 0 0
C_a = 0 1 0 0
0 0 1 0
0 0 0 1
0
D_a = 0
0
0
Poradie prvkov vektoru x(t) prislúchajúceho k maticiam A_a,B_a,C_a,D_a
vyplýva z modelu a vektor má tvar: 𝑥 𝑡 = (𝜑, 𝜑, 𝜃, 𝜃 )𝑇 . Na základe toho bol
zostavená stavová rovnica v maticovom tvare:

35
𝜑 0 1 0 0 𝜑 0
𝜑 𝜑
= 22.5955 −0.2563 −5.7779 0.0795 + 32.0368 (𝜏) (24)
𝜃 0 0 0 1 𝜃 0
𝜃 −23.0402 0.6363 47.3996 −0.4692 𝜃 −79.5349

Je vidno, že odpovedajúce matice oboch systémov obsahujú tie isté číselné


hodnoty, ale poradie prvkov je rozdielne. Je to spôsobené tým, že v každom
prípade je iné poradie prvkov vektora x(t) a tým pádom aj matice sa prispôsobia
tomuto poradiu. Výsledné stavové rovnice v maticovom tvare sú však totožné.
Sú len inak zapísané.

36
3.4 Porovnanie modelov

Modely by sa mali správať rovnako, a to bolo overované priebehmi nameraných


hodnôt uhlov a rýchlostí 𝜑, 𝜑, 𝜃, 𝜃 , po dobu t=10s. Na to, aby bolo možné
priebehy hodnôt z oboch modelov zobraziť graficky, sa z modelov spravili
submodely a vložil sa blok Scope tak, aby doň vstupovali uhly a rýchlosti, ktoré
chceme zobraziť. Aby sa priebehy dali ľahšie porovnať, boli použité 4 bloky Mux
podľa obrázka 23 tak, aby Scope zobrazoval v jednom grafe tú istú veličinu
z oboch modelov.

Obr. 26 Porovnanie modelov

Simulácia sa spustila na čas t=10s a po otvorení bloku Scope sa zobrazili


nasledujúce grafy:

37
Obr. 27 Uhol ramena

Obr. 28 Uhlová rýchlosť ramena

38
Obr. 29 Uhol kyvadla

Obr. 30 Uhlová rýchlosť kyvadla

Prvý graf ukazuje závislosť uhla 𝜑 v čase, uhol je v radiánoch, čas


v sekundách. Druhý graf zobrazuje priebeh uhlovej rýchlosti 𝜑, tretí je priebeh
uhla 𝜃 a štvrtý zobrazuje priebeh uhlovej rýchlosti 𝜃 .

39
Modrou farbou sú zobrazené grafy zo SimMechanics modelu a červenou
farbou grafy z analytického modelu. Na prvom, druhom a štvrtom grafe je vidieť
len modrú krivku. Červená je ale v presnom zákryte pod ňou, preto je vidieť len
modrú krivku. Jedine v prípade tretieho grafu, ktorý ukazuje priebeh uhla medzi
ramenom a kyvadlom 𝜃, sa začnú krivky rozchádzať. Je to spôsobené tým, že
v SimMechanics modeli je blok Joint sensor, ktorý tento uhol meria len v rozsahu
od –π po π, preto funkcia uhla nie je spojitá a naopak analytický model ráta
s uhlom aj mimo týchto hraníc, teda funkcia je spojitá.
Aby bolo možné merať uhol na väčšom rozsahu aj v SimMechanics modeli, dá
sa vyrobiť viacotáčkový snímač pomocou bloku Continuous Angle ako je vidno
na obrázku 25. Blok je v knižnici SimMechanics v skupine Utilities.

Obr. 31 Blok Continuous Angle

Do bloku vstupujú dva signály, uhol, ktorý je meraný na intervale od –π po π,


a jeho časová derivácia, čiže uhlová rýchlosť. Na základe týchto údajov z bloku
vystupuje už spojitá funkcia uhla, ktorej dovolený rozsah je prakticky
neobmedzený.
Do schémy bol vložený aj blok Scope, kde sa zobrazil priebeh uhla 𝜃 už ako
spojitá funkcia.

40
Obr. 32 Priebeh spojitého uhla

Blok Continuous Angle bol použitý aj v pre uhol 𝜑 aj keď to v tomto prípade
nebolo nutné, keďže neboli namerané v priebehu uhla 𝜑 hodnoty za hranicami
intervalu [–π , π].
Po opätovnom porovnaní grafov z analytického modelu a SimMechanics
modelu s pridaným blokom Continuous Angle sa už všetky priebehy absolútne
zhodovali.

41
Záver

Cieľom práce bola tvorbu modelu mechatronického systému – invertovaného


kyvadla pendubot. Boli vytvorené dva modely kyvadla – nelineárny model
vytvorený pomocou nástroja SimMechanics a analytický nelineárny model
vychádzajúci z pohybových rovníc. Na základe porovnania priebehov uhlov
a uhlových rýchlostí získaných po odsimulovaní modelov po dobu 10s sa
preukázalo rovnaké správanie obidvoch modelov. Tento fakt tiež potvrdzujú
zhodné stavové rovnice získané po linearizácii oboch modelov. Linearizácia bola
realizovaná pomocou programu MATLAB.
Treba však povedať, že z hľadiska časovej náročnosti bolo vytvorenie modelu
pomocou nástroja SimMechanics výhodnejšie, keďže model bol zostavený za
podstatne kratší čas. Ďalšou nemalou výhodou tohto spôsobu modelovania je, že
nie je potrebné riešenie zložitých rovníc a tým pádom tu odpadá riziko
vzniknutia chýb spôsobených ľudskou nepozornosťou pri manuálnom riešení
rovníc.
SimMechanics je teda výhodný nástroj na tvorbu modelov hlavne zložitejších
systémov, kde sa jeho výhody oproti klasickému analytickému prístupu ešte viac
prejavia.

42
Bibliografické odkazy

[1] B. BLOŽON, M. KARBOVANEC. 2009. Mechatronika všade okolo nás. In AT&P


journal [online]. 2009, no. 2 [cit. 2011-06-06]. Dostupné na internete:
<http://www.atpjournal.sk/buxus/docs/casopisy/atp_2009/pdf/atp-2009-
02-04.pdf> s. 4-6

[2] Oficiálna stránka firmy Math Works, dokumentácia SimMechanics. [online].


2011, [cit. 2011-06-06] Dostupné na internete:
<http://www.mathworks.com/help/toolbox/physmod/mech/>

[3] GREPL, R. 2007. Modelování mechatronických systémů v Matlab/SimMechanics.


Praha: BEN, 2007. 152 s. ISBN 8073002268

[4] BLAHÚT, L. 2009. Aplikace matematických softwar při numerickém řešení úloh
mechaniky : bakalárska práca. Brno: Vysoké učení technické v Brně, 2009. 47 s

[5] ISTENES, I. 2008. Analýza pohybu šesťnohého mobilného robota : diplomová


práca. Bratislava: Slovenská technická univerzita v Bratislave, 2008. 67 s

[6] SEMAN P., JUHÁS M. 2008. Modelling and LQ control of furuta pendulum,
Bratislava: 2008. 10 s

[7] Popis portálového žeriavu [online] 2011, [cit. 2011-06-06].Dostupné na


internete:
<http://cyberneticsmws.fei.tuke.sk/cybervirtlab/Portalovy_zeriav_simulova
ny/zeriavpop.html>

[8] <http://sk.wikipedia.org/wiki/Mechatronika>

[9] <http://aliensandthegang.blogspot.com/2010/11/segway.html>

43

You might also like