flervariabel reglering av industrirobot - automatic … · flervariabel reglering av industrirobot...

89
Flervariabel reglering av industrirobot Examensarbete utf¨ ort i Reglerteknik vid Tekniska H¨ ogskolan i Link¨ oping av Claes Svensson Reg nr: LiTH-ISY-EX-3506-2004 Link¨ oping 2004

Upload: doanngoc

Post on 28-Aug-2018

225 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Flervariabel reglering av industrirobot

Examensarbete utfort i Reglerteknikvid Tekniska Hogskolan i Linkoping

av

Claes Svensson

Reg nr: LiTH-ISY-EX-3506-2004Linkoping 2004

Page 2: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning
Page 3: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Flervariabel reglering av industrirobot

Examensarbete utfort i Reglerteknikvid Tekniska Hogskolan i Linkoping

av

Claes Svensson

Reg nr: LiTH-ISY-EX-3506-2004

Handledare: Mikael NorrlofErik Wernholt

Examinator: Svante Gunnarsson

Linkoping 13 februari 2004.

Page 4: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning
Page 5: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Avdelning, Institution Division, Department

Institutionen för systemteknik 581 83 LINKÖPING

Datum Date 2004-02-13

Språk Language

Rapporttyp Report category

ISBN

X Svenska/Swedish Engelska/English

Licentiatavhandling X Examensarbete

ISRN LITH-ISY-EX-3506-2004

C-uppsats D-uppsats

Serietitel och serienummer Title of series, numbering

ISSN

Övrig rapport ____

URL för elektronisk version http://www.ep.liu.se/exjobb/isy/2004/3506/

Titel Title

Flervariabel reglering av industrirobot Multivariable control of industrial robot

Författare Author

Claes Svensson

Sammanfattning Abstract The goal of this Master thesis has on the one hand been to create a simulation environment for robots, where not only the simulations in this work can be performed, but also similar robot simulations, and on the other hand to study regulators that can increase the possibilities of rejecting disturbances on an industrial robot. The robot model used has three degrees of freedom, corresponding to the three main links on ABB:s IRB7600. The simulation environment is created using Matlab, Simulink, and Robotics Toolbox. It is constructed in a general way and can be used for simulations of other robot objects created in Robotics Toolbox. A gain scheduling is added to the LQ-regulator, where the feedback matrix is varied depending on the arm position in the workspace. The gain scheduling is implemented along a reference path in the workspace, around which the simulations and frequency analyses are performed. The regulators that have been tested are a PID-regulator, a gain scheduled LQ-regulator, a gain scheduled LQ-regulator with reconstructed states, and finally a fix LQ-regulator with reconstructed states. Results from the tests show that the gain scheduling LQ-regulator is the one that yields the best rejection of disturbances, but the corresponding regulator with reconstructed states, which is more realistic, performs nearly as well. The model based regulators are, however, significantly better when it comes to rejecting disturbances than the PID-regulator.

Nyckelord Keyword Multivariable control, gain scheduling, LQG, industrial robot

Page 6: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning
Page 7: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Sammanfattning

Examensarbetets mal har varit att dels skapa en simuleringsmiljo for robotar darinte bara detta arbetes simuleringar utan aven likvardiga robotsimuleringar kanutforas och dels att studera regulatorer som kan oka mojligheten att undertryckastorningar pa industrirobot. Robotmodellen som anvands i arbetet ar en modell aven industrirobot med tre frihetsgrader motsvarande de tre huvudlederna pa ABB:sIRB7600.

Simuleringsmiljon ar uppbyggd med hjalp av Matlab, Simulink och RoboticsToolbox. Den ar generellt uppbyggd och kan anvandas for simuleringar av robot-objekt skapade i Robotics Toolbox.

En parameterstyrning infors for LQ-regulator dar aterkopplingsmatrisen L va-rieras beroende pa position i arbetsrummet. Parameterstyrningen implementeraslangs en referensbana i arbetsrummet kring vilken simuleringar och frekvensanalysgenomfors.

De regulatorer som har testats ar PID-regulator, parameterstyrd LQ-regulator,parameterstyrd LQ-regulator med rekonstruerade tillstand samt en fix LQ-regulatormed rekonstruerade tillstand. Det visar sig att den parameterstyrda LQ-regulatornar den som ger bast undertryckning av storningar, men att motsvarande regulatormed rekonstruerade tillstand, vilken ar mer realistisk, ar nastintill lika bra. De mo-dellbaserade regulatorerna ar dock signifikant battre pa att undertrycka storningaran PID-regulatorn.

Nyckelord: Flervariabel reglering, paramtererstyrning, LQG, industrirobot

i

Page 8: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning
Page 9: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Abstract

The goal of this Master thesis has on the one hand been to create a simulation envi-ronment for robots, where not only the simulations in this work can be performed,but also similar robot simulations, and on the other hand to study regulators thatcan increase the possibilities of rejecting disturbances on an industrial robot. Therobot model used has three degrees of freedom, corresponding to the three mainlinks on ABB:s IRB7600.

The simulation environment is created using Matlab, Simulink, and RoboticsToolbox. It is constructed in a general way and can be used for simulations of otherrobot objects created in Robotics Toolbox.

A gain scheduling is added to the LQ-regulator, where the feedback matrixis varied depending on the arm position in the workspace. The gain scheduling isimplemented along a reference path in the workspace, around which the simulationsand frequency analyses are performed.

The regulators that have been tested are a PID-regulator, a gain scheduled LQ-regulator, a gain scheduled LQ-regulator with reconstructed states, and finally a fixLQ-regulator with reconstructed states. Results from the tests show that the gainscheduling LQ-regulator is the one that yields the best rejection of disturbances,but the corresponding regulator with reconstructed states, which is more realistic,performs nearly as well. The model based regulators are, however, significantlybetter when it comes to rejecting disturbances than the PID-regulator.

Keywords: Multivariable control, gain scheduling, LQG, industrial robot

iii

Page 10: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

iv

Page 11: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Forord

Jag skulle vilja tacka min examinator Svante Gunnarsson och mina handledareMikael Norrlof och Erik Wernholt for all hjalp och allt stod jag har fatt under mittarbete.

Erik Wallin ska ha ett stort tack for viktig hjalp i arbetets allra sista minuter.Jag skulle aven vilja tacka Lina for att du har engagerat dig i mitt arbete ochlyssnat pa mig och mina monologer da jag haft behov av att prata om mitt exjobb.

v

Page 12: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

vi

Page 13: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Innehall

1 Inledning 11.1 Syfte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Metod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3 Begransningar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

2 Modellen 32.1 Roboten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2.1.1 Framatkinematik . . . . . . . . . . . . . . . . . . . . . . . . . 32.1.2 Inverskinematik . . . . . . . . . . . . . . . . . . . . . . . . . . 72.1.3 Dynamik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2 Vaxelladan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.3 Linjarisering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.4 Oppna systemet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3 Simuleringsmiljon 153.1 Uppbyggnad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.2 Storningar och brus . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.3 Simulink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

4 Regulatorstrukturer 194.1 LQ-reglering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4.1.1 Integrerande tillstand . . . . . . . . . . . . . . . . . . . . . . 204.2 Aterkoppling med rekonstruerade tillstand . . . . . . . . . . . . . . . 21

4.2.1 Kalmanfilter . . . . . . . . . . . . . . . . . . . . . . . . . . . 224.2.2 Gravitationskompensering . . . . . . . . . . . . . . . . . . . . 22

4.3 PID-reglering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.4 Parameterstyrning . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.5 Relevanta overforingsfunktioner . . . . . . . . . . . . . . . . . . . . . 24

4.5.1 Overforingsfunktioner for LQ- och PID-regulatorer . . . . . . 244.5.2 Overforingsfunktioner for LQ-regulator med rekonstruerade

tillstand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

vii

Page 14: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

viii Innehall

5 Testfall 275.1 Matbara signaler och brus . . . . . . . . . . . . . . . . . . . . . . . . 275.2 Referensbana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275.3 Arbetspunkter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

5.3.1 Linjariserade arbetspunktsmodeller for berakning av para-meterstyrning . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

5.4 Analys i tidsplanet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315.4.1 Testnorm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

6 Implementering och trimning av regulatorer 356.1 Regulatortrimningar . . . . . . . . . . . . . . . . . . . . . . . . . . . 356.2 Implementering av LQ-regulator . . . . . . . . . . . . . . . . . . . . 35

6.2.1 Trimning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366.3 Implementering av parameterstyrning . . . . . . . . . . . . . . . . . 36

6.3.1 Trimning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376.4 Implementering av LQ-reglering med rekonstruerade tillstand . . . . 37

6.4.1 Implementering av observator . . . . . . . . . . . . . . . . . . 376.4.2 Trimning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

6.5 Implementering av PID-regulator . . . . . . . . . . . . . . . . . . . . 396.5.1 Trimning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

7 Utvardering av regulatorerna 417.1 Utvardering av regulatorstrukturer i tidsplanet . . . . . . . . . . . . 41

7.1.1 Utvardering av referensbana . . . . . . . . . . . . . . . . . . . 427.1.2 Utan storningar . . . . . . . . . . . . . . . . . . . . . . . . . . 427.1.3 Utvardering av storningsundertryckning i arbetspunkt . . . . 487.1.4 Utvardering av testnorm . . . . . . . . . . . . . . . . . . . . . 50

7.2 Utvardering av regulatorstrukturer i frekvensplanet . . . . . . . . . . 527.2.1 Utvardering i punkten p6 . . . . . . . . . . . . . . . . . . . . 52

8 Slutsatser 598.1 Slutsatser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598.2 Forslag pa framtida arbete . . . . . . . . . . . . . . . . . . . . . . . . 59

A Manual och exempel till simuleringsmiljon 63A.1 Manual till simuleringsmiljon . . . . . . . . . . . . . . . . . . . . . . 63

A.1.1 Extra funktioner och script . . . . . . . . . . . . . . . . . . . 64A.2 Enkelt exempel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

B Simulering av referensbana utan inverkan fran gravitation 67

C Overforingsfunktioner i punkten p7 71

Page 15: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Kapitel 1

Inledning

1.1 Syfte

Examensarbetets syfte ar att hitta forbattrade reglerstrategier for reglering av in-dustrirobot av “bending backward” typ. De forbattringar som onskas ar framforallten okad formaga att undertrycka storningar, det vill saga forbattringar som ledertill att roboten blir mindre kanslig for storningar.

Examensarbetet syftar dessutom till att, med hjalp av Matlab toolboxen Ro-botics Toolbox skapa en simuleringsmiljo dar inte enbart rapportens simuleringarutfors, utan den ska aven kunna anvandas i andra simuleringssammanhang.

1.2 Metod

Rapporten bygger endast pa simulerade resultat. Inga matningar pa riktig robothar anvants for att bekrafta resultaten. De simuleringar som rapporten innehallerhar utforts i den simuleringsmiljo som forst skapades.

For att analysera de olika reglerstrategierna anvands bade tids- och frekvens-plansanalys. For att fa en referens till hur bra ett nuvarande reglersystem aranvands PID-regulatorer.

1.3 Begransningar

Det finns en hel del begransningar i arbetet som gor resultaten osakra. Den storstabegransningen ar att det endast har handlat om simuleringar, och att inga matningarpa riktig robot har genomforts. Detta gor att avvikelser mellan modell och verklig-het inte spelar nagon roll i arbetet, och darmed forbattras generellt alla resultat.Nagon verifiering av de erhallna resultaten har inte heller genomforts pa riktigrobot varfor det ar svart att uttala sig om dess riktighet.

1

Page 16: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

2 Inledning

I den simulerade roboten fanns ingen framkoppling vilket for det mesta finns iriktiga robotar. Detta leder till att regulatorerna tvingas arbeta mer an de gor ipraktiken da de i princip endast ska undertrycka storningar.

Parameterstyrningen som anvants var endast implementerad langs med refe-rensbanan och tester utfordes endast kring denna bana. I ett mer generellt fallhade hela arbetsomradet varit representerat i parameterstyrningen och regulator Ioch II hade da varit giltiga over hela robotens arbetsomrade.

Den modell som anvandes vid simuleringarna var utford med en mangd olikaforenklingar. Antagande om tvamassemodell ar en forenkling som fungerar bra foraxel 2 och 3 medan den kan vara lite val grov for axel 1 dar en tremasse eller kanskefyrmassemodell vore mer realistisk. Antagandet om att alla vekheter endast sitteri vaxlarna samt utelamnandet av viss friktion ar andra forenklingar i modellen.

Alla regulatorer har implementerats i kontinuerlig tid vilket dock inte ar fallet ien riktig robot. Samplingsfrekvensen brukar dock vara sa hog att det inte paverkarresultaten nagot namnvart.

Page 17: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Kapitel 2

Modellen

Robotmodellen som anvands i rapporten ar tankt att efterlikna de tre huvudaxlarnahos en ABB IRB7600 (figur 2.1). Den modellerade roboten har samma principiel-la utseende och storlek som IRB7600 men modellen saknar data om IRB7600:strogheter med mera varvid dessa har approximerats i modellen. Bade IRB7600och den modellerade roboten ar industrirobotar av “bending backward” typ, detvill saga robotar som kan boja sig bakat. Detta ar en egenskap som skapar badefordelar och nackdelar gentemot de traditionella robottyperna som har dubbla pa-rallella stag pa lank 2 (se figur 2.2). De traditionella robotarna far darmed fordelarsasom sma korskopplingar och battre stabilitet. Att oka rorelseformagan hos robo-ten anses dock viktigt varvid “bending backward” robotarna blir allt mer vanliga.Modellen ar uppdelad i tva delar: sjalva roboten och vaxelladorna till motorerna. Iden har forenklade modellen ar sjalva roboten helt styv medan vekheterna aterfinnsi vaxelladorna. Detta ar en relativt grov approximation, men tillrackligt bra for attaskadligora de fenomen som ska behandlas i rapporten. Sjalva robotmodellen arframtagen med hjalp av matlabtoolboxen Robotics Toolbox [1].

2.1 Roboten

En industrirobot ar ett olinjart system med manga in och utsignaler. For att styraroboten laggs lampligt stora vridmoment pa de olika lankarna. Den mekaniskakonstruktionen medfor att korskopplingar uppstar mellan de olika lankarna, vilketinnebar att om en motor flyttar sin lank paverkas aven andra axlar av den rorelsen.Detta medfor problem vid styrning av roboten.

2.1.1 Framatkinematik

For att veta hur roboten kan rora sig kravs att robotens kinematik raknas ut.Framatkinematiken beskriver verktygets position i kartesiska koordinater givet ax-larnas lagen i vinkelkoordinater. En robot kan forenklat ses som ett antal stelalankar sammanbundna med leder. Lederna kan vara antingen translatoriska eller

3

Page 18: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

4 Modellen

Länk 1

Länk 3

Länk 2

Figur 2.1. IRB7600 med huvudlankarna markerade.

roterande. Bada typerna av leder beskriver en endimensionell rorelse, och dessa tvagrundleder racker for att kombinera ihop alla tankbara leder.

En robot kan antas ha n lankar som kopplas samman av n leder, dar led ikopplar samman lank i− 1 med lank i. Varje led har ett eget koordinatsystem. Ai

ar den homogena matris [7] som transformerar koordinaterna fran koordinatsystemi till koordinatsystem i − 1. Ai ar inte en konstant matris men kan pa grund avledernas utseende beskrivas som en funktion av ledvariabeln qi

Ai = Ai(qi)

Den homogena matrisen som transformerar koordinaterna fran koordinatsystemj till koordinatsystem i kallas transformationsmatris, betecknas T j

i och beskrivssom

T ji =

{ Ai+1Ai+2 . . . Aj−1Aj i < jI i = j(T i

j )−1 i > j

(2.1)

Page 19: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

2.1 Roboten 5

Parallellastag

Figur 2.2. Traditionell robot med parallella stag pa lank 2.

Denavit-Hartenberg representation

For att pa ett systematiserat satt beskriva kinematiken hos en robot finns Denavit-Hartenberg konventionen. I den konventionen beskrivs Ai som en produkt av fyratransformationer.

Ai = Rotz,ΘiTransz,di

Transx,aiRotx,αi

(2.2)

dar

• Θi= Vinkel

• ai= Langd

• αi=Vridning

• di=Forskjutning

Eftersom Ai ar en funktion av en variabel ar for varje led tre av de fyra pa-rametrarna konstanta. For vridningsleder ar endast vinkeln Θi variabel medan fortranslatoriska leder ar endast forskjutningen di variabel. For mer ingaende beskriv-ning av Denavit-Hartenberg representation hanvisas till kapitel 3.2 i [5].

Page 20: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

6 Modellen

0

0.5

1

1.5

00.10.2

0

0.5

1

1.5

2

x3

z3

y3

x

x1

y2

y1

x2

z1

z2

x0

z0

y0

z

y

Figur 2.3. Tradmodell for en treaxlig robot med utmarkerade koordinatsystem.

Den modellerade roboten, IRB7600 bestar av sex vridningsleder och sex lankar.(Se figur 2.1) Denavit-Hartenberg representationen for den blir enligt [9] som itabell 2.1.

Led/lank αi ai Θi di

i [rad] [m] [rad] [m]1 −π/2 0.41 0 0.782 0 1.075 −π/2 03 −π/2 0.165 0 04 π/2 0 0 1.0565 −π/2 0 0 06 0 0 π 0.25

Tabell 2.1. Denavit-Hartenberg parametrar for IRB7600.

I detta fallet bestar dock den modellerade roboten av de tre forsta lankarna dadessa racker for att visa de effekter som rapporten efterstravar, namligen robotenspositionering. De tre sista lankarna beskriver robotens orientering och behandlasinte vidare i rapporten. Denavit-Hartenbergparametrarna stammer dock inte heltoverens med IRB7600. I figur 2.1 ses att lank tre ligger nagot ovanfor dar lank tva

Page 21: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

2.1 Roboten 7

slutar vilket inte fangas upp i Denavit-Hartenbergparametrarna. Detta har dockinte nagon storre betydelse for hur roboten beter sig.

2.1.2 Inverskinematik

Inverskinematiken gar ut pa att man givet de kartesiska verktygskoordinaterna skahitta alla leders koordinater. Detta ar viktigt da man till exempel vill rakna ut hurrobotarmen kommer att rora sig da man flyttar verktyget fran en plats i rummettill en annan. Att rakna ut inverskinematiken ar dock ett betydligt svarare probleman att berakna framatkinematiken.

Givet den homogena transformationen

H =[

R d0 1

](2.3)

ska en eller flera losningar till

Tn0 (q1, . . . , qn) = H = A1 · . . . · An (2.4)

losas vilket resulterar i 16 olinjara ekvationer med n obekanta (varav de sista fyradock ar triviala).

Ekvation (2.4) ar komplicerad att losa analytiskt. Det finns dock ett flertalolika satt att gora detta pa, till exempel genom nyttjande av jakobianen. For meringaende analytiska metoder for losning av inverskinematik rekommenderas tillexempel [5]. Robotic toolbox anvander sig av numeriska metoder for att losa (2.4)och det ar dessa som anvands i rapporten.

2.1.3 Dynamik

Att rakna ut dynamiken for en komplex konstruktion som en modern industrirobotar svart. Det gar att rakna ut dynamiken dels med hjalp av Euler-Lagrange metodikoch dels med Newton-Euler metodik [5]. Newton-Euler, som bygger pa klassiskmekanik med krafter och motkrafter, ar mer intuitiv men svar eftersom det ar lattatt tappa bort sig i alla index. Euler-Lagrange metodiken bygger pa losning avLarangianen till systemet, det vill saga forhallandet mellan potentiell energi ochkinetisk energi.

Euler-Lagrange

Om ett mekaniskt system uppfyller tva antaganden, namligen att systemet in-nehaller holonomiska bivillkor och att bivillkorskrafterna uppfyller principen forvirtuellt arbete, kan det beskrivas med Euler-Lagrange metoden. Ett bivillkor pade k koordinaterna ri, . . . , rk ar holonomiskt om det ar pa formen

gi(ri, . . . , rk) = 0 (2.5)

och oholonomiskt i ovrigt. Se [5] for mer detaljer kring holonomiska bivillkor ochvirtuellt arbete. Om ett system har l holonomiska bivillkor kan man se det som att

Page 22: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

8 Modellen

det bivillkorsbetvingade systemet har l farre frihetsgrader an samma system utanbivillkor. Om vilkoren med holonomiska bivillkor och virtuellt arbete ar uppfyll-da kan man uttrycka de k koordinaterna i de nya, generaliserade och oberoendekoordinaterna, qi, . . . , qn enligt

ri = ri(q1, . . . , qn), i = 1, . . . , k (2.6)

Da den stela roboten enligt [5] uppfyller kraven pa saval holonomiska bivillkorsom virtuellt arbete pa bivillkorskrafterna leder Euler-Lagrange metoden oss tillmetodens rorelseekvationer.

L = K − V (2.7)

d

dt

∂L

∂qj− ∂L

∂qj= τj , j = 1, . . . , n (2.8)

dar V ar systemets potentiella energi och K ar dess kinetiska energi.Till slut kommer man fram till ekvationen

u = M(q)q + C(q, q)q + G(q) (2.9)

dar M(q) ar robotens troghetsmatris, G(q) ar inverkan fran gravitation och darelementen i C(q, q) beskrivs som

ckj =n∑

i=1

12{∂mkj

∂qi+

∂mki

∂qj− ∂mij

∂qk}qi (2.10)

Rorelseekvation (2.9) ar den olinjara differentialekvation som bestammer ro-botdynamiken. Anvandande av Newton-Euler metoder leder i slutandan fram tillsamma ekvation. Vilken av metoderna som ar den basta ar svart att svara pa.Euler-Lagrange ger lattare rakningar medan Newton-Euler ger mer intuitivitet.Robotics Toolbox anvander sig i sina dynamikberakningar av en rekursiv variantav Newton-Euler.

2.2 Vaxelladan

Ekvation (2.9) beskriver en stel robot. For att robotmodellen ska bli bra nog kravsdet att flexibiliteter tillkommer. Under forutsattning att det ar i vaxlarna de storstaflexibiliteterna sitter kan man modellera vaxelladan med flexibiliteter medan robo-ten i ovrigt anses vara styv.

For att modellera vaxelladornas vekhet modelleras dessa som tvamassemodeller.Den forsta massan kan betraktas som motorn och den andra massan som sjalvaarmen. Forutom utvaxlingsforhallandet mellan motor och arm finns vekheter mo-dellerade mellan motor och arm som en fjader parallellt med en dampare. (Se figur2.4). Genom att betrakta systemet i figur 2.4 fran armsidan, det vill saga givet arm-position och armhastighet ges motorposition och motorhastighet, erhalls foljandeekvationer med beteckning enligt figur 2.4.

Page 23: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

2.2 Vaxelladan 9

τ, qm

qa

Mm

Ma

fm

k, dn

Figur 2.4. Tvamassemodell for robotarm och vaxellada.

qm = M−1m (−n−2kqm − (n−2d + fm)qm + um + n−1kqa + nfmqa) (2.11)

ua = kn−1qm + dn−1qm − kqa − dqa (2.12)

Ekvation (2.11) och (2.12) kan skrivas om pa tillstandsform for att underlattaimplementering och forstaelse for systemet. Vad som ska betraktas som insignaler,tillstand och utsignaler ar dock inte trivialt. Eftersom ekvation (2.11) och (2.12)bygger pa berakningar fran armsida kanns det naturligt att valja qm och qm somtillstand vilket leder till att qa och qa betraktas som insignaler. Som insignal betrak-tas aven motorns palagda moment, um. Utsignalerna lamnar i det har fallet mycketfrihet. Som utsignaler ar det naturligt att atminstone valja motorposition och mo-torhastighet. En annan viktig utsignal ar det palagda moment som armen kannerav da detta ar insignal till sjalva robotmodellen. For att gora vaxelladsystemetgenerellt kan aven motorns acceleration betraktas som en utsignal.

Med val av tillstand, insignaler och utsignaler enligt ovan blir systemet:

x =(

qm qm

)T

u =(

um qa qa

)T

y =(

ua qm qm qm

)T

x = Ax + Bu

y = Cx + Du

Page 24: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

10 Modellen

med A,B,C och D enligt nedan.

A =(

0 I−M−1

m n−2k −(M−1m n−2d + M−1

m fm)

)

B =(

0 0 0M−1

m M−1m n−1k M−1

m n−1d

)

C =

kn−1 dn−1

I 00 I

−M−1m n−2k −(M−1

m n−2d + M−1m fm)

D =

0 −k −d0 0 00 0 0

M−1m M−1

m n−1k M−1m n−1d

For denna treaxlade robot far alla elementen i matriserna ovan dimensioner-na 3×3. Det betyder att A-matrisen far dimensionerna 6×6. Vaxelladsmodellenbeskriven ovan ar en linjar tillstandsmodell med nio insignaler och tolv utsignaler.

2.3 Linjarisering

Den treaxlade roboten ar ett olinjart system. Roboten beter sig olika beroende pavar i arbetsomradet den befinner sig och pa hur axlarna ar orienterade. For att tillexempel kunna rakna ut bodediagram maste systemet vara linjart. Det ar darforviktigt att kunna linjarisera roboten kring en viss arbetspunkt.

Ett satt att linjarisera systemet ar att gora det kring ett visst positionstill-stand och satta hastigheten till noll. Detta ger i och for sig begransningar i denlinjariserade modellen men begransningen anses anda vara ringa i jamforelse medandra antaganden i modellerandet.

Med dessa antaganden omvandlas ekvation (2.9) till foljande ekvation da linjar-iseringen sker i arbetspunkten q0.

u = M(q0)q0 + G(q0) (2.13)

som gerq0 = M−1(q0)(u − G(q0)) (2.14)

M(q0) och G(q0) ar systemets troghetsmatris respektive gravitationens inverkanpa systemet i punkten q0 och u ar insignalen fran vaxelladan in till sjalva roboten,det vill saga u = ua enligt ekvation (2.12).

For att fa ett linjart system som innefattar saval den stela roboten och de vekavaxlarna laggs systemet ihop enligt figur 2.5. Resultatet blir ett enda stort linjartsystem.

Page 25: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

2.3 Linjarisering 11

Robot

um ua

qmqm

qa

qa

qa

qa

Vaxellada

Figur 2.5. Principskiss for sammanslagning av vaxellada och robot.

Som tillstand valdes

x =(

qa qm qa qm

)T

En viktig aspekt da man simulerar en modell ar att man ska kunna utsattaden for storningar av olika slag for att studera hur dessa fortplantar sig i syste-met. For att kunna simulera storningar och styra dessa maste de modelleras ochtas med i den stora modellen. De storningar som modelleras i detta arbete armomentstorningar pa bade arm- och motorsida samt gravitationsstorningar, viketinnebar att gravitationen ses som en konstant storning. Dessa storningar behandlasi modellen som vanliga insignaler och insignalerna blir

u =(

um vm va vgrav

)T

dar vm ar motormomentstorning, va ar armmomentstorning och vgrav ar gravi-tationsstorning.

For att gora denna modell sa generell som mojligt och ge mojlighet till olikasensorkonfigurationer valjes utsignaler sa att inte bara motorposition ar utsignal,vilket ar det vanliga fallet i industrin, utan aven hastighet och acceleration pa savalmotor- som armsida raknas dessutom ut som utsignaler.

y =(

qa qm qa qm qa qm

)T

For att fa systemet att endast ha motorposition som utsignal ar det trivialt attandra C och D matriserna sa att detta uppnas.

Ekvation (2.11)-(2.14) ger tillsammans med notationen

x = Ax + Bu

y = Cx + Du

A,B,C och D enligt foljande:

Page 26: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

12 Modellen

A =

0 0 I 00 0 0 I

−M−1a k M−1

a kn−1 −M−1a d M−1

a dn−1

M−1m n−1k −M−1

m n−2k M−1m n−1d −M−1

m (dn−2 + fm)

B =

0 0 0 00 0 0 00 0 M−1

a −M−1a

M−1m M−1

m 0 0

C =

I 0 0 00 I 0 00 0 I 00 0 0 I

−M−1a k M−1

a kn−1 −M−1a d M−1

a dn−1

M−1m n−1k −M−1

m n−2k M−1m n−1d −M−1

m (dn−2 + fm)

D =

0 0 0 00 0 0 00 0 0 00 0 0 00 0 M−1

a −M−1a

M−1m M−1

m 0 0

Aven har ar alla element av storleken 3×3.

2.4 Oppna systemet

For att fa en kansla for hur roboten ser ut och beter sig i en viss arbetspunktar bodediagram ett bra verktyg. I figur 2.6 finns bodediagrammet som beskriverrobotens frekvensegenskaper fran armreferens till armposition. Roboten ar i dettafall linjariserad kring sin sa kallade referensposition, det vill saga med lank 2 raktupp och lank 3 vagratt ut fran denna.

I bodediagrammet ser man att det finns stora korskopplingar mellan framst lank2 och 3. Med korskoppling menas har att insignalen till lank 2 nastan paverkar lank3 lika mycket som den paverkar sin egen lank och vice versa.

I bodediagrammet syns ocksa ett flertal frekvenstoppar. Lank 1 har en fre-kvenstopp vid 138rad/s medan lank 2 och 3 har tva frekvenstoppar vardera somligger pa 96rad/s och 132rad/s. Dessa ar axlarnas egenfrekvenser da roboten stari detta lage. Beroende pa robotens position kommer frekvenstopparna att flytta pasig och ligga pa hogre respektive lagre frekvenser. Det principiella utseendet meden frekvenstopp pa lank 1 och tva frekvenstoppar pa lank 2 och 3 bibehalls dockoberoende av robotposition.

Page 27: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

2.4 Oppna systemet 13

101

102

103

From: In(3)

101

102

103

From: In(2)

101

102

103

−200

−150

−100

−50

0

To:

Out

(3)

−200

−150

−100

−50

0

To:

Out

(2)

−200

−150

−100

−50

0From: In(1)

To:

Out

(1)

Bode Diagram

Frequency (rad/sec)

Mag

nitu

de (

dB)

Figur 2.6. Bodediagram for det oppna systemet linjariserat kring referenspunkt.

Page 28: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

14 Modellen

Page 29: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Kapitel 3

Simuleringsmiljon

Simuleringsmiljon, i vilken alla rapportens simuleringar utfors, ar Matlab- och Si-mulinkbaserad. Sjalva simuleringarna utfors i simulink men styrs av matlabscript.Simuleringsmiljon ar inte enbart tankt att anvandas for denna rapports simulering-ar utan ska kunna fungera, med smarre justeringar, till robotsimuleringar av olikaslag.

Simuleringsmiljon ar baserad pa Robotics toolbox [1] vilken ar en toolbox tillMatlab som behandlar robotar pa ett generellt satt. Det ar relativt latt att skapa ettrobotobjekt som uppfyller vissa specifikationer, till exempel att den ska efterliknaen befintlig robot. Robotics toolbox generalitet gor simuleringsmiljon generell.

3.1 Uppbyggnad

Huvuddelen av simuleringsmiljon ar uppbyggd av matlabscript. Med hjalp av mat-labscripten definieras referensbanor, storningar, aktuell regulator med mera.

Eftersom simuleringsmiljon ska vara generell finns det tillgang till manga olika“sensorsignaler”. Det innebar att det i simuleringsmiljon plockas fram saval po-sition, hastighet och acceleration for bade arm- och motorsida sa att dessa kanstuderas, men aven anvandas i regleringssammanhang da man simulerar extra sen-sorer. Detta ar anledningen till att alla dessa tas med som utsignaler i kapitel 2.

Eftersom det ska vara mojligt att simulera roboten bade da den star still i envald arbetspunkt och utsatts for storningar och da den foljer en referensbana kanman i scripten valja mellan att folja referens eller att inte folja referens. Vid val avreferensfoljning skapas en trajektoria som referens till roboten. Trajektorian skickastill simulinkmodellen med hjalp av ett “from workspace” block. Referensbanan ska-pas i en separat scriptfil och kan byggas med hjalp av till exempel Path generatingtoolbox [4]. Da man ibland snabbt vill experimentera med vissa referenssignalerutan att behova rakna ut nagon trajektoria finns mojligheten att i simulinkmodel-len styra referenssignalen med signalgeneratorer. Detta bor dock endast anvandasfor att bekanta sig med systemet och ge forstaelse for dess beteende.

15

Page 30: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

16 Simuleringsmiljon

Simuleringsmiljon ar implementerad i kontinuerlig tid till storsta delen. Undan-tag ar referenssignalen och storsignaler vilka kraver en samplingstid. Samplingsti-den bestams i scriptet och inverkar pa hur lang tid varje simulering tar men aven,upp till en viss niva, pa hur noggrant simuleringarna utfors. Simuleringarna utforsav en ode45 losare med variabel steglangd

For att kunna studera robotens frekvensegenskaper har script skapats for att paett enkelt satt fa fram onskvarda bodediagram. Bodediagrammen raknas ut medvald regulator i den linjariserade arbetspunkt som bestamts pa forhand. Det finnsunderlag for att rakna ut bodediagram fran referens till alla onskvarda sensorsig-naler.

For att undersoka reglersystemets kanslighet mot modellforandringar finns detett script som forandrar robotens vekhet och troghet. Vekheten forandras genomatt andra fjaderkonstanten for respektive lank sa att den antingen blir styvare ellervekare. Trogheten andras genom att robotarmens troghetsmatris blir storre ellermindre. Forandringarna kan goras antingen ± 50% eller ± 20%. For att uppnaandra forandringar ar det trivialt att andra i scriptet sa att onskad forandringsker.

3.2 Storningar och brus

For att gora robotmodellen mer realistisk finns flera sorters storningar och brusinlagda. Storning i form av gravitation finns inbyggd i Robotics toolbox och ar ettextra moment som laggs till pa lank 2 och 3 beroende pa deras position.

Storningar pa armmoment och motormoment genereras pa samma satt somreferenssignalen. Om dessa ska tas med i simuleringen eller ej bestams av att enparameter i simuleringsmiljons huvudscript ett- eller nollstalls. Storningarnas ut-seende kan varieras godtyckligt. Det finns inbyggda storsignaler som fungerar somfyrkantssignaler men det ar trivialt att skapa egna.

I verkligheten kan man inte mata motorposition felfritt. Det beror bland annatpa vanligt matbrus men det finns aven periodiskt brus som uppkommer i resolvrar-na. For att simulera dessa verkningar har en modell av detta brus implementeratspa motorpositionsmatningarna enligt [8]. Modellen fungerar pa sa satt att givet enmatsignal adderas periodiskt brus med olika frekvenser till den givna matsignalen.Brusets amplitud ar olika mellan olika frekvenser men ligger kring 0.2 mrad.

Aven styrsignalen utsatts for paverkan av storningar och begransningar. Denviktigaste ar styrsignalsbegransningen. De motorer som roboten har for att styra si-na armar antas kunna generera ±70Nm. Detta kan ses som mjukvarubegransningarvilka ar till for att skydda motorerna och oka deras livslangd. Gransen ar darmedkand av systemet och kan till exempel anvandas av en observator for att begransainverkan av integratoruppvridning. Styrsignalen ar aven den paverkad av periodiskastorningar. Likt de periodiska matsignalsstorningarna ar dessa implementerade ut-ifran [8] och ar aven dessa av additiv natur. Amplituden for styrsignalstorningarnaandras aven den beroende pa vilken frekvens de ligger pa men alla ligger kring 0.1Nm.

Page 31: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

3.3 Simulink 17

3.3 Simulink

En av de viktigaste bitarna i simuleringsmiljon ar simulinkmodellen (Se figur 3.1).Den ar i princip uppbyggd av tva olika block; robotmodell och regulator.

ref t1t_outt

simout

To Workspace

Switch Ref

u_m

v

q_a

q_m

qd_a

qd_m

qdd_a

qdd_m

Robot non linear

ref_in

Reference signal x

ref

u_m

LQ gain scheduling

v

Disturbance

0

Clock

Figur 3.1. Simulinkmodellen.

Bade robotmodell och regulatorer finns i flera olika utforanden. I ett modell-bibliotek finns de robotmodell- och regulatoralternativ man kan valja mellan. Ro-botmodellen kan valjas antingen som olinjar eller som en linjariserad version. Denolinjara har den linjara vaxelladan beskriven i kapitel 2.2 implementerad som ett“state space-block” medan sjalva roboten ar implementerad med med hjalp av Ro-botics toolbox. Den linjara robotmodellen ar i sin tur implementerad som ett “statespace-block” med A, B, C och D enligt kapitel 2.3. For att valja vilken av robot-modellerna som ska anvandas vid simulering placeras det valda modellblocket paplatsen for robotmodell. Da bada simulinkblocken ar lika stora och har samma in-och utsignaler ar det snabbt och enkelt att byta robotmodell. I en utokad simule-ringsmiljo kan man tanka sig att det finns annu flera robotmodeller att valja pa.Detta lamnas dock till senare arbete.

Forfarandet att valja regulator till simuleringen ar valdigt likt det for att valjarobotmodell. De olika regulatorerna finns i samma modellbibliotek som robotmo-dellerna och aven dessa simulinkblock har samma storlek och samma antal in- ochutsignaler for att underlatta byte. Under varje regulatormodell skiljer regulatorernasig dock at valdigt mycket.

Insignalerna till simulinkmodellen ar referenssignaler och storsignaler som spe-cificeras med hjalp av matlabscripten beskrivna tidigare. De utsignaler som fasut ar robotens position, hastighet och acceleration pa saval arm som motorsida.Dessutom fas den aktuella insignalen som en utsignal. Det ar den insignal som re-gulatorn har genererat och som sedan har begransats till ett varde mellan ± 70Nm.Ovriga signaler som sparas undan fran simuleringen ar aktuell referenssignal ochaktuell tidssignal sa att dessa garanterat ligger i fas med varandra och med ovrigautsignaler, det vill saga att de innehaller lika manga element.

Page 32: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

18 Simuleringsmiljon

u_m

v

q_a

q_m

qd_a

qd_m

qdd_a

qdd_m

Robot non linear

u_m

v

q_a

q_m

qd_a

qd_m

qdd_a

qdd_m

Robot linear

x

ref

u_m

PID

x

ref

u_m

LQG gain scheduling

x

ref

u_m

LQG

x

ref

u_m

LQ gain scheduling

x

ref

u_m

LQ

Figur 3.2. Modellbibliotek.

Page 33: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Kapitel 4

Regulatorstrukturer

Det finns manga mojliga satt att reglera en robot. I dagslaget ar klassiska metodersom PID-reglering de mest anvanda. Modellbaserad tillstandsaterkoppling ar enreglerstrategi som ar ansedd att kunna ge betydligt battre prestanda an en PID-regulator da den har storre frihet att placera det aterkopplade systemets poler. Irapporten kommer dels PID-reglering att behandlas och dels LQ-reglering vilkenar en modellbaserad tillstandsaterkoppling skapad med hjalp av linjarkvadratiskoptimering (engelska: Linear Quadratic).

4.1 LQ-reglering

LQ-reglering bygger pa att man har stallt upp systemet pa tillstandsform enligt

x(t) = Ax(t) + Bu(t)

y(t) = Cx(t) + Du(t)

dar x(t) ar tillstanden, u(t) insignaler och y(t) ar utsignaler. Sjalva regulatorn harformen

u(t) = −Lx(t) + l0r(t)

dar L ar aterkopplingsmatrisen, vilken aterkopplar alla tillstand, och l0 ar forfiltrer-ing av referenssignalen r(t).

En forutsattning for att regulatorn ska kunna skrivas pa detta satt ar att manhar tillgang till alla tillstand, det vill saga att man kan mata dem.

Enligt figur 4.1 erhalls foljande slutna system:

x(t) = Ax(t) + B(−Lx(t) + l0r(t)) = (A − BL)x(t) + Bl0r(t)

y(t) = Cx(t) + Du(t)

Enligt [3] kan L valjas genom att minimera kriteriet

19

Page 34: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

20 Regulatorstrukturer

yurRobot

L

l0

Figur 4.1. LQ-regulator.

min(‖e‖2Q1

+ ‖u‖2Q2

) = min

∫eT (t)Q1e(t) + uT (t)Q2u(t)dt

och beraknas somL = Q−1

2 BT S (4.1)

dar S ar den entydiga positivt semidefinita, symmetriska losningen till matrisekva-tionen (4.2).

AT S + SA + Q1 − SBQ−12 BT S = 0 (4.2)

Q1 och Q2 ar viktmatriser for tillstand respektive insignal. Det ar Q1 och Q2

som ar designvariablerna i LQ-reglering. Q1 kommer att vara en n × n matris darn ar antalet tillstand och Q2 kommer vara en m × m matris dar m ar antaletinsignaler. Genom att ansatta Q1 och Q2 till diagonalmatriser far man ner antaletdesignparametrar till m + n i stallet for n2 + m2.

Genom att satta ett hogt varde i Q1 straffas avvikelser fran referens for motsva-rande tillstand hart. Q2 anvands for att se till att inte insignalerna blir for stora.Vilka varden som diagonalelementen i Q1 och Q2 ska anta ar dock inte trivialt ochdet kan kravas forandringar av vardena med flera tiopotenser for att resultatet skabli tillfredsstallande.

4.1.1 Integrerande tillstand

For att regulatorn ska kunna hantera konstanta storningar (till exempel gravitationi stillastaende lage) utan att fa ett konstant fel kravs att ett integrerande tillstandinfors. Da det ar armens position och inte motorns som ar viktig att ha pa statiskfelfri position ar det idealt att endast lagga till integralen av armarnas positionersom extra tillstand. Att ha integrerande tillstand pa bade motorer och armar skulleleda till konflikt da robotens vekheter gor det omojligt att ha exakt referensfoljningsamtidigt.

Da det dock i det verkliga fallet saknas tillforlitliga sensorvarden pa armpositionar det orealistiskt att anta att man kan integrera armpositionen med tillrackligthog precision for att kunna anvandas som ett extra tillstand. Darfor laggs istalletintegraldel pa motorsidan vilket ger statiska fel pa armsidan som foljd.

Page 35: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

4.2 Aterkoppling med rekonstruerade tillstand 21

De extra tillstanden laggs till som[xxi

]=

[A 0−C 0

] (xxi

)+

[B0

]u +

[0I

]r

4.2 Aterkoppling med rekonstruerade tillstand

Da det inte finns matsignaler for samtliga tillstand maste ovriga tillstand skattas foratt kunna utfora LQ-reglering. Detta sker med hjalp av en observator och systemetfar utseende enligt figur 4.2

yur

Observatör

Robot

Lx

l0

Figur 4.2. Robot med observator.

Observatoren bygger pa att man med hjalp av de sensorvarden man har, skat-tar de andra tillstanden med hanseende till modellen. Med en perfekt modell ochstorningsfria matningar skulle det i sa fall bli exakt overenstammelse mellan deskattade vardena, x och de riktiga vardena, x.

Med storningar bade i form av laststorningar och matstorningar kan systemetbeskrivas som

x = Ax + Bu + Nv1 (4.3)

y = Cx + Du + v2 (4.4)

dar v1 ar laststorningar och v2 ar matstorningar.Enligt [3], kan x beskrivas med

˙x(t) = Ax(t) + Bu(t) + K(y(t) − Cx(t)) (4.5)

Vilket genom omskrivning ger

˙x(t) = (A − KC)x(t) + Bu(t) + Ky(t) (4.6)

K beskriver hur avvikelse mellan sant och observerat varde kommer hanteras.Onskvart ar att avvikelsen mellan sant och observerat varde ska vara noll. For attfa en vardematare pa hur bra observatoren ar bildas skattningsfelet

x(t) = x(t) − x(t) (4.7)

Page 36: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

22 Regulatorstrukturer

Ekvation (4.3), (4.4) och (4.7) ger tillsammans

˙x(t) = (A − KC)x(t) + Nv1(t) − Kv2(t) (4.8)

Enligt 4.8 kommer K att paverka observatoren pa tva satt. Eftersom obser-vatorens egenvarden ges av A − KC paverkar K hur hur snabb observatoren blir.Samtidigt forstarker K alla matstorningar pa grund av termen Kv2(t). Ju storreK desto storre inverkan fran matfel. Valet av K blir darfor en avvagning mellanhur snabb man vill att observatoren ska vara och hur stor inverkan kommer att blifran matfelen

4.2.1 Kalmanfilter

Eftersom valet av K ar en avvagning mellan foljsamhet och kanslighet fran mat-storningar kan valet formaliseras som ett optimeringsproblem, forutsatt att manvet hur matstorningar paverkar systemet.

Genom att anta att [v1

v2

]ar vitt brus med intensiteter [

R1 R12

RT12 R2

]

med speciella krav pa R1 och R2 (se [3] Lemma 5.1), kan K beraknas som

K = (PCT + NR12)R−12 (4.9)

Dar P ar den symmetriska positivt semidefinita losningen till matrisekvationen

AP + PAT − (PCT + NR12)R−12 (PCT + NR12)T + NR1N

T = 0 (4.10)

K beraknat pa detta satt kallas for ett Kalmanfilter och ar ett optimalt linjartfilter. For detaljer kring harledningar och bevis av optimalitet se [3].

4.2.2 Gravitationskompensering

Ett problem med observatoren beskriven ovan ar att den inte tar hansyn till gra-vitationseffekter vilka kan leda till konstanta fel. For att komma tillratta med detproblemet finns flera satt att tillga. Ett satt ar att rakna ut vilka moment somgravitationen kommer bidra med for aktuell tillstandskonfiguration och se det somextra insignaler till observatoren. Observatoren kompenserar sedan for dessa ex-tra moment vilket inte ar svart eftersom det ar latt att berakna hur gravitationenpaverkar systemet.

Helt perfekt ar dock inte denna metod eftersom matosakerheter och model-losakerheter bidrar till att kompenseringen inte blir exakt utan att det kommer attbli en form av konstant fel anda fast atskilligt mycket mindre an utan kompense-ring.

Page 37: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

4.3 PID-reglering 23

Ett annat satt att fa bort gravitationens inverkan ar att lagga in extra tillstandsom tar bort konstanta storningar. I arbetet anvands dock den forsta metoden foratt kompensera for gravitation.

4.3 PID-reglering

En PID-regulator kombinerar proportionell, integrerande, och deriverande verkanenligt principen:

e(t) = r(t) − y(t)

u(t) = KP e(t) + KI

∫ t

0

e(s)ds + KDd

dte(t) (4.11)

Detta ger en intuitiv bild av hur reglerparametrarna KP , KI och KD ska valjasfor att uppna onskvarda regleregenskaper.

I dagslaget sker reglering av industrirobotar nastan uteslutande med PID-regulatorer. Anledningen ar till stor del tradition men aven att det ar en enkeloch intuitiv reglerstruktur vilken ar relativt lattrimmad eftersom det endast ar tredesignvariabler per regulator och att dess varden inte varierar lika kraftigt mellanolika trimningar som hos modellbaserade regulatorer.

Eftersom PID-regulatorn inte ar modellbaserad ar den heller inte lika kansligfor modellfel som till exempel LQ-regulatorn. Detta ar en stor fordel eftersomdet ar svart att fa fram tillforlitliga modeller pa sa pass komplexa system somindustrirobotar utgor. PID-regulatorerna behover heller inte veta alla tillstand somsystemet har utan klarar sig med de uppmatta motorpositionerna. Observator blirdarfor overflodig och detta minskar regulatorns komplexitet betydligt.

4.4 Parameterstyrning

Nar man anvander sig av modellbaserade reglermetoder ar det viktigt att ha enmodell som ar sa tillforlitlig som mojligt. Att ha en och samma modell for robotensbeteende over hela arbetsrymden kanns darfor inte som en bra metod. En effektivmetod for att hantera reglering av en process som ar olinjar ar att man linjariserarmodellen kring ett visst antal arbetspunkter, trimmar regulatorn for varje arbets-punkt och interpolerar mellan arbetspunkterna for att hitta den regulator somfungerar bast for den aktuella punkten. Detta kallas for parameterstyrning, paengelska gain scheduling.

I den har rapporten utfors endast parameterstyrning pa LQ-regulatorn eftersomdet ar dar det gar att fa fram de mest intressanta resultaten. Eftersom LQ-regulatornar modellbaserad ar den mer kanslig for modellavvilkelser an PID-regulatorn.

I en sa pass komplex modell som robotmodellen utgor ar det inte sjalvklart hurinterpolationen ska utforas. Hur A-, B-, C- och D-matriserna andras i olika arbets-punkter ar visserligen givet men de ar svara samband att reda ut och det blir mangaparametrar som maste styras om det ar dessa som valjes for parameterstyrning.

Page 38: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

24 Regulatorstrukturer

En annan metod for parameterstyrning ar att endast parameterstyra aterkop-plingsmatrisen L. L raknas fram i varje arbetspunkt och antas sedan variera linjartmellan de olika arbetspunkterna. Varje element i L interpoleras sedan till en nyaterkopplingsvektor som beror pa de narliggande arbetspunkternas aterkopplings-vektorer. For mer ingaende beskrivning av denna rapports implementering ochanvandning av parameterstyrning hanvisas till kapitel 6.3.

4.5 Relevanta overforingsfunktioner

For att fa en helhetsbedomning av en regulator ar det viktigt att se pa dessfrekvensegenskaper. I bodediagrammen for de slutna systemen kommer det attkunna observeras korskopplingar mellan axlar, frekvenstoppar, bandbredd medmera. For att studera storningarnas inverkan pa det reglerade systemet raknasoverforingsfunktionen fran armstorning respektive motorstorning ut. Dessa badaar beskriver hur storningar undertrycks.

De frekvensfunktioner som kommer att studeras ar foljande:

• Gc = Overforingsfunktion fran referens till utsignal

• Gva= Overforingsfunktion fran armstorning till utsignal

• Gvm= Overforingsfunktion fran motorstorning till utsignal

• Su = Insignal-kanslighetsfunktion

Frekvensanalysen kan dock enbart utforas i en linjariserad arbetspunkt vilketar begransande. Det borde dock ga att fa en klar bild over vilken regulator som harde basta frekvensegenskaperna genom att studera dem vid en val vald linjariseradarbetspunkt. For att gora en sa rattvis jamforelse mellan de olika regulatorstruk-turernas frekvensegenskaper som mojligt ar det viktigt att utfora frekvensanalyseni en punkt som parameterstyrningen inte anvander sig av da den beraknar sinaterkoppling, da detta ej skulle ta hansyn till hur pass val interpoleringen mellanparameterstyrningens aterkopplingsmatriser fungerar.

4.5.1 Overforingsfunktioner for LQ- och PID-regulatorer

De olika overforingsfunktionerna listade i stycke 4.5 raknas ut pa olika satt beroendepa regulatorstruktur. For de regulatorer som enbart anvander sig av matvarden,det vill saga LQ-regulatorerna och PID-regulatorn, ar det hela valdigt rattframt. I[3] kapitel 6 raknas overforingsfunktioner ut for ett slutet system uppbyggt kringsamma princip som dessa regulatorer. Namligen enligt figur 4.3.

Gc = (I + GFy)−1GFr (4.12)

Gva= (I + GFy)−1G1 (4.13)

Page 39: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

4.5 Relevanta overforingsfunktioner 25

rG

yu

vm

va

Fr

Fy

G1

Figur 4.3. Regulatorprincip for regulatorer med matbara tillstand.

Gvm= (I + GFy)−1G (4.14)

Su = (I + FyG)−1 (4.15)

dar G1 representerar sattet som armstorningar kommer in i systemet.

For PID-regulatorn ar Fy och Fr lika och ar 3×3 matriser med diagonala PID-regulatorer enligt kapitel 4.3. LQ-regulatorn ar lite mer komplicerad. Dar ar Fy

aterkopplingsvaktorn L medan Fr ar det filter som gor om den ursprungliga arm-positionsreferensen till referenssignal for ovriga tillstand.

4.5.2 Overforingsfunktioner for LQ-regulator med rekonstru-erade tillstand

For de regulatorer som bygger pa LQ-regulatorer med rekonstruerade tillstandkravs andra utrakningar av overforingsfunktionerna. Enligt [3] kapitel 8.5 kan Fy idetta fall beskrivas som

Fy(s) = L(sI − A + BL + KC)−1K (4.16)

Gc raknas ut som

Gc = C(sI − A + BL)−1B (4.17)

medan de ovriga overforingsfunktionerna, det vill saga Gva, Gvm

och Su beraknaspa samma satt som i kapitel 4.5.1.

De utraknade overforingsfunktionerna fran detta avsnitt aterfinns i form avbodediagram i avsnitt 7.2.

Page 40: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

26 Regulatorstrukturer

Page 41: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Kapitel 5

Testfall

Det som rapporten forst och framst syftar till ar att undersoka storningsundertryck-ning hos olika regulatorstrukturer. For att kunna reglera en robot racker det intemed att kunna reglera den kring en viss arbetspunkt eftersom robotens trogheterandras valdigt mycket beroende pa hur utstrackt roboten ar. Robotens dynamiskaegenskaper ar olinjart beroende pa robotens lage. For att utvardera de olika re-gulatorstrukturernas formaga att undertrycka storningar i mer an en arbetspunktanvands en referensbana. Langs denna bana utfors sedan simuleringar och frekvans-plansanalyser. For att uppna sa bra analys som mojligt skapas banan sa att robotenar saval hopdragen som utstrackt under olika delar av referensbanan.

5.1 Matbara signaler och brus

I praktiken ar det endast motorposition som ar matbar pa en industrirobot. Allaandra tillstand maste skattas. Det har visserligen gjorts undersokningar om nyasensorer, till exempel armpositionsgivare och accelerometrar (se [6]) men rapportenkommer i fortsattningen endast hantera matning av motorposition. Undantagetfran detta ar implementering av en ideal LQ-regulator som har tillgang till allatillstand.

5.2 Referensbana

Referensbanan som anvands ar tvadimensionell i xz-planet. Det betyder att endastlank 2 och lank 3 varieras i banan. Detta gors eftersom systemets troghet och vekhetinte ar beroende av hur lank 1 ar placerad. Banan ar formad som ett U dar robotenborjar i ett hopkrupet tillstand, stracker ut sig och reser sig sedan till sluttillstandet(se figur 5.1). Med denna bankonfiguration fangas robotens variationer i troghetberoende pa position upp pa ett tillfredsstallande vis.

Referensbanan ar en trajektoria och skapades med hjalp av Path generatingtoolbox [4]. Banan kors pa atta sekunder och roboten accelererar under den forsta

27

Page 42: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

28 Testfall

och retarderar den sista halvsekunden. Resterande tid ar hastigheten konstant.Banan far i kartesiska koordinater utseende enligt figur 5.1 och i vinkelkoordinaterblir banan enligt figur 5.2.

0.5

1

1.5

2

2.5

−1

−0.5

0

0.5

11

1.2

1.4

1.6

1.8

2

X (m)

Referensbana (kartesiska koordinater)

Y (m)

Z (

m)

Figur 5.1. Referensbana for testkorningar i kartesiskakoordinater.

0 1 2 3 4 5 6 7 8−1.5

−1

−0.5

0

0.5

1

tid (s)

vink

el (

rad)

Referensbana (vinkelkoordinater)

axel 1axel 2axel 3

Figur 5.2. Referensbana for testkorningar i vinkelkoordinater for respektive lank.

I figur 5.2 syns tydligt variationerna i armposition roboten maste genomga foratt aka runt banan. For att fortydliga robotens rorelser kan man i figur 5.3 - 5.5 se

Page 43: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

5.2 Referensbana 29

robotens positioner i banans startpunkt, banans mest avlagsna punkt samt banansslutpunkt.

0

0.5

1

00.10.2

0

0.5

1

1.5

2

z3

x3

y3

x

x1

y2

y1

x2

z1

z2

x0

z0

y0

z

y

Figur 5.3. Robotens position vid referensbanans startpunkt.

0

0.5

1

1.5

2

00.10.2

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

x3

z3

y3

x2

y2

x

z2

x1

y1

z1

x0

z0

y0

z

y

Figur 5.4. Robotens position vid banans mest avlagsna punkt.

Page 44: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

30 Testfall

0

0.5

1

00.10.2

0

0.5

1

1.5

2

x3

z3y

3

x

x1

y1

z1

x0

y2

z0

x2

y0

z2

z

y

Figur 5.5. Robotens position vid referensbanans slutpunkt.

5.3 Arbetspunkter

For att kunna utfora frekvensplansanalys, berakna regulatorer for parameterstyr-ning med mera, maste roboten linjariseras i ett antal arbetspunkter. Hur de olikaarbetspunkterna skall valjas ar inte trivialt. Ska de ligga langs med banan? Ska debilda ett nat runt banan? Hur manga ska de vara? Ska tatheten vara linjar ellerolinjar? Det som ar viktigt ar att modellvariationer fangas upp i de olika arbets-punkterna. For att pa ett enkelt satt fa fram olika arbetspunkter dar tester kanutforas valjs dessa langs med referensbanan. Detta belyser inte hela problematikenmed roboten, men ger pa grund av banans utformning anda tillrackligt mycket in-formation fran roboten for att det ska ga att dra slutsatser for hela arbetsomradet.

5.3.1 Linjariserade arbetspunktsmodeller for berakning avparameterstyrning

Som arbetspunkter langs referensbanan valjs banans startpunkt, p1, cirkelrorelsensstartpunkt, p2, cirkelrorelsens mittpunkt, p3, cirkelrorelsens slut, p4 samt banansslutpunkt, p5. Roboten har da gatt fran ett ihopdraget lage till i princip helt ut-strackt lage och tillbaka till ett nagot mindre ihopdraget lage an startpunkten.Dessa punkter finns markerade med hanseende till referensbanan i figur 5.6. Denarbetspunkt som skiljer sig mest fran de ovriga ar det utstrackta laget vilket haren betydligt storre troghet och koppling mellan lank 2 och lank 3 an de ovrigaarbetspunkterna.

I bodediagrammen for de oppna systemen (se figur 5.7) i de olika arbetspunk-

Page 45: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

5.4 Analys i tidsplanet 31

0.5

1

1.5

2

2.5

−1

−0.5

0

0.5

11

1.2

1.4

1.6

1.8

2

xy

z

Figur 5.6. Punkter pa referensbanan dar linjarisering utfors. Punkterna benams p1 tillp5 med numrering moturs.

terna kan det urskiljas relativt sma skillnader. Principutseendet for systemet ar detsamma for alla arbetspunkterna, vilket innebar att lank 1 har en frekvenstopp ochatt lank 2 och 3 har tva frekvenstoppar vardera. Dock skiljer sig frekvenstopparnaslagen at med flera rad/s och aven amplituden pa kurvorna skiljer sig at med nagradB vilket har stora effekter. Den arbetspunkt som skiljer sig tydligt fran de ovrigaar det utstrackta laget med anledning enligt ovan. Det leder bland annat till lagrekorskoppling mellan lank 1 och de ovriga men aven frekvenstoppar som har hogrefrekvens an hos de ovriga vilkas toppar ligger valdigt samlade.

Trots de till synes stora likheterna mellan modellerna i arbetspunkterna ar skill-naderna i beteende dock tillrackligt stora for att det bor vara nodvandigt att hanagon form av parameterstyrning for att forbattra modellbaserade regulatorstruk-turer.

5.4 Analys i tidsplanet

For att fa en uppfattning hur systemet verkligen kommer bete sig ar det en fordelatt gora analys i tidsplanet. Har ar det framforallt storningsundertryckning menaven referensfoljning som ska undersokas.

For att testa formagan hos roboten att undertrycka storningar utsatts denfor storningar langs med referensbanan. Eftersom roboten kan antas vara mereller mindre storkanslig beroende pa position langs banan aterkommer likartadestorningar langs banan (se figur 5.8).

Varje lank utsatts for momentstorningar pa saval arm- som motorsida enligtfigur 5.8. Storningsmomenten ar fyrkantsignaler och motsvarar ett stormoment pa15 Nm pa armsidan. Storningssignalen skalas med hjalp av utvaxlingsforhallandetsa att effekten av storning pa motorsida ska vara samma som storning pa armsida.

Page 46: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

32 Testfall

101

102

103

From: In(3)

101

102

103

From: In(2)

101

102

103

−200

−150

−100

−50

0

To:

Out

(3)

−300

−200

−100

0

To:

Out

(2)

−300

−200

−100

0From: In(1)

To:

Out

(1)

Bode Diagram

Frequency (rad/sec)

Mag

nitu

de (

dB)

Figur 5.7. Bodediagram over de oppna systemen i banans olika arbetspunkter.

Test utfors med storning pa en lank i taget, det vill saga referensbanan kors treganger i varje test, en gang med storningar pa respektive lank.

For att separera formagan att undertrycka storningar fran formagan att foljareferens testas aven roboten i stillastaende lage. Roboten ska i det fallet endastforsoka ta bort effekterna av de storningar den utsatts for. Storningarna har sammastruktur som de storningar som anvands langs med referensbanan men eftersomroboten befinner sig i samma arbetspunkt hela tiden racker det med att varje lankendast utsatts for arm respektive motorstorning en gang.

Under alla simuleringar finns forutom momentstorningarna de matstorningaroch brus som beskrevs i stycke 3.2.

5.4.1 Testnorm

For att fa ett matt pa hur bra regulatorstrukturen undertrycker storningarna harfoljande norm tagits fram:

H =∑N

i=1 |qa − qref |2N

(5.1)

Page 47: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

5.4 Analys i tidsplanet 33

0 1 2 3 4 5 6 7 80

5

10

15

tid (s)

mom

ent (

Nm

)

Storningsmoment motor

0 1 2 3 4 5 6 7 80

500

1000

1500

2000

2500

3000

3500

tid (s)

mom

ent (

Nm

)

Storningsmoment arm

Figur 5.8. Storsignal pa en lank vid genomforande av referensbana.

dar N ar antalet sampel i simuleringen.H Raknas ut for varje lank for sig och ger en bild av hur bra referensfoljning

som astadkoms trots paverkan av storningar. Att endast se H som ett matt pastorningsundertryckning ar dock inte bra da variationerna trots allt blir sma. Hbor darfor endast ses som ett komplement och ett overslag pa hur bra reglering-en har lyckats. H kan dock anvandas for att ange relativ prestanda mellan olikaregulatorer.

Page 48: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

34 Testfall

Page 49: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Kapitel 6

Implementering ochtrimning av regulatorer

Aven om regulatorstrukturen ar given finns det manga satt att implementera sjalvaregulatorn pa. Det finns framforallt valdigt stora variationer kring hur var och enav regulatorerna trimmas. For att gora jamforelsen mellan de olika regulatorstruk-turerna sa rattvis som mojligt trimmas de sa att de uppfyller samma krav parobusthet. For att utvardera de olika regulatorerna testas och analyseras de sedanenligt metoderna som beskrevs i kapitel 5.

6.1 Regulatortrimningar

En av de storsta svarigheterna med att jamfora tva olika regulatorstrukturer ar attrespektive regulator kan vara trimmad pa sa olika satt. En bra regulatorstrukturkan genom dalig trimning resultera i en dalig regulator, och en dalig regulator-struktur kan med hjalp av bra trimning ge en relativt bra regulator.

For att gora jamforelsen sa rattvis som mojligt lades mycket tid ned pa attskapa trimningar av regulatorerna sa att de presterade sa bra som mojligt pastorningsunder-tryckning men anda uppnadde vissa robusthetskrav.

For regulatorerna som ska verka over hela robotens arbetsomrade sattes krav attde skulle klara av stabilitet trots forandringar pa ±50% pa saval vekhet som trogheti alla linjariserade arbetspunkter langs med banan. For arbetspunktsregulatorernai parameterstyrningen sattes endast robusthetskrav i den aktuella arbetspunktendar det dock stalldes samma krav som pa de andra regulatorerna.

6.2 Implementering av LQ-regulator

LQ-regulatorn implementerades i enlighet med figur 4.1. Integrerande tillstand la-des till med avseende pa motorposition, det vill saga det nya tillstandet

∫(r − y)

35

Page 50: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

36 Implementering och trimning av regulatorer

lades till de ovriga. Referensfiltreringen l0 gavs sadana egenskaper att armpositions-referensen slapptes igenom som den var medan motorpositionsreferensen skapadesgenom att multiplicera armpositionsreferensen med utvaxlingsforhallandena. Det-ta ar dock inte idealt da det finns dynamik mellan armposition och motorposition.Att implementera en battre motorpositionsreferens lamnas till senare arbete.

6.2.1 Trimning

Trimning kan goras relativt hart da robusthetskraven inte ar alltfor svara att kla-ra da alla tillstand ar matbara. Detta leder till en regulator som ar bra pa attundertrycka storningar.

6.3 Implementering av parameterstyrning

Parameterstyrningen i denna rapport bygger pa LQ-reglering och kan implemente-ras bade utifran vanlig LQ-reglering och utifran aterkoppling med rekonstrueradetillstand.

For att pa ett forhallandevis enkelt satt implementera en parameterstyrningav roboten anvands endast arbetspunkter som ligger pa den givna referensbanan(p1 - p5 i figur 5.6). Problemet med parameterstyrning har da i princip blivitendimensionellt. Eftersom det inte gar att garantera att roboten alltid befinnersig pa referensbanan kravs det att fler an de tva punkter som roboten befinnersig mellan tas med i interpolationen. I annat fall ar risken stor att det kan blisteg i insignalen da roboten narmar sig en linjariseringspunkt men uppehaller sigen bit ifran referensbanan. Regulatorn skiftar da fran att interpolera mellan dennarliggande arbetspunktens och den tidigare arbetspunktens aterkopplingsvektorsamt den narliggande och den kommande arbetspunktens aterkopplingsvektor.

Den aktuella aterkopplingsvektorn L bestams genom att rakna ut avstandetfran robotens position till varje linjariserad arbetspunkt for att fa en viktning avvilka som ska fa ha storst inverkan. Avstanden mats i vinkelkoordinater och varjeavstand normeras till ett endimensionellt varde. Interpolationen sker enligt foljandealgoritm:

p =(

q2

q3

)

αi =1

‖p − pi‖22 + ε

dar pi ar respektive linjariserad arbetspunkt och ε ar ett mycket litet tal som skaforhindra division med noll i handelse av att roboten befinner sig i nagon av delinjariserade arbetspunkterna. L beraknas slutligen som

L =∑

i αiLi∑i αi

dar Li ar aterkopplingsvektorn for respektive linjarisering.

Page 51: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

6.4 Implementering av LQ-reglering med rekonstruerade tillstand 37

6.3.1 Trimning

Trimning sker har i fem linjariserade arbetspunkter langs med banan. Eftersomdenna regulator endast behover ta hansyn till sitt begransade arbetsomrade vad detgaller robusthet gar det darfor att trimma hardare har an i det icke-parametriseradefallet. Det visar sig aven har att den arbetspunkt som ar svarast att trimma ar deni utstrackt lage men fordelen med parameterstyrningen ar att ovriga arbetsomradetinte behover ta hansyn till att aven klara robusthetskrav i denna punkt varvid deandra kan trimmas hardare.

6.4 Implementering av LQ-reglering med rekon-struerade tillstand

LQ-regulatorn med rekonstruerade tillstand implementerades enligt figur 4.2. Im-plementeringen av sjalva tillstandsaterkopplingen gjordes enligt samma metod somden vanliga LQ-regulatorn, det vill saga med integrerande tillstand med avseendepa motorposition. Observatoren skapades med hjalp av ett kalmanfilter.

6.4.1 Implementering av observator

Observatoren ar ett kalmanfilter som tar in de uppmatta signalerna och ger ut deskattade tillstanden. For att kompensera bort de inverkningar som gravitationenhar pa lank 2 och lank 3 ar aven den beraknade inverkan fran gravitationsmomentinsignaler till observatoren enligt den forsta principen i stycke 4.2.2.

For att kunna anvanda kalmanfilter maste det finnas modeller for laststorningaroch matstorningar. Da dessa i allmanhet inte ar kanda far de approximeras. Genomatt modellera laststorningar som storningar pa arm och motor far systemstornings-matrisen N utseendet

N =

0 00 0I 00 I

(6.1)

eftersom dessa storningar kan antas paverka saval motorns som armens hastigheter.I detta fall da skattningar av systemstorningar inte ar kanda forvandlas R1 och

R2 till designvariabler, med vilka det gar att justera observatoren sa att lampligtobservatorbeteende uppnas. Lampliga varden pa R1 och R2 visar sig efter testningbli diagonalmatriser enligt foljande:

R1 =

104 0 0 0 0 00 104 0 0 0 00 0 104 0 0 00 0 0 104 0 00 0 0 0 104 00 0 0 0 0 104

(6.2)

Page 52: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

38 Implementering och trimning av regulatorer

R2 =

10−4 0 0

0 10−4 00 0 10−4

(6.3)

K-matrisen erhalls slutligen genom Matlabkommandot lqe dar argumenten pre-senterats ovan.

0.5

1

1.5

2

2.5

−1

−0.5

0

0.5

11

1.2

1.4

1.6

1.8

2

xy

z

Figur 6.1. Referensbanans mittpunkt, pm som anvands till att ta fram observator ochfixa LQ-regulatorer.

Observatoren skapas bara i referensbanans mittpunkt, pm (se figur 6.1). Dettaleder till vissa problem eftersom modellen andras under banans gang. Simuleringarvisar dock att den observator som erhalls klarar av att rekonstruera tillstandenrelativt bra och darfor anvands endast denna observator. Att skapa en parameter-styrd observator skulle dock vara att foredra men da det ar en mycket tidsodandeprocess lamnas det till framtida arbete.

Observatoren medfor dock att stabilitetsmarginalen sjunker eftersom det till-kommer nya poler som ligger relativt nara imaginara axeln. Detta blir aktuellti framfor allt utstrackt lage eftersom modellen som observatoren baserar sig paskiljer sig relativt mycket mot modellen i utstrackt lage. Detta leder till att extraforsiktighet maste vidtas vid trimning av regulatorerna sa att robusthetsmargina-lerna halls aven da roboten ar utstrackt.

6.4.2 Trimning

Denna regulator ska klara av att reglera i hela arbetsomradet. Sjalva trimningensker dock i referensbanans mittpunkt, pm. Det innebar att roboten linjariseras i

Page 53: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

6.5 Implementering av PID-regulator 39

pm och att aterkopplingsvektorn L raknas ut baserat pa den linjariseringen. Attregulatorn trots detta ska klara ±50% forandring i troghet och styvhet i alla punkterlangs referensbanan blir en begransande faktor. Hela arbetsomradet far halla tillgodo med den trimning som kravs for att den mest svarreglerade arbetspunktenska klara av robusthetskraven.

Regulatorn valjs sa att den klarar av erforderliga modellandringar runt helareferensbanan och det blir enligt diskussion ovan de arbetspunkter som ligger i ettfor roboten utstrackt lage som satter begransningar pa hur hart det ar mojligt atttrimma.

6.5 Implementering av PID-regulator

PID-regulatorn bestar egentligen av tre separata PID-regulatorer, en for varje lank.PID-regulatorn ar med andra ord helt diagonal. Aven har anvands multipliceringav vaxlingsforhallanden med armreferenspositioner for att skapa motorpositionsre-ferenser. Skillnaden har ar att armpositionsreferensen sedan inte anvands.

Implementeringen av PID-regulatorerna gjordes enligt foljande:

GPID = GP + GI + GD (6.4)

darGP = P (6.5)

GI =I

s(6.6)

For att gora D-verkan mindre kanslig for brus lagpassfiltreras D-delen enligt [2]vilket ger

GD =Ds

1M s + 1

(6.7)

dar M ar en filterkonstant.

6.5.1 Trimning

Att klara robusthetsmalen med denna regulator visar sig inte vara sa svart. Detgar darfor att trimma denna regulator valdigt hart. Trimning visar att valet avreglerparametrar, i fallet med storningsundertryckning som mal, bor valjas enligttabell 6.1.

Detta ger en regulator som ar bra pa att hindra storningar fran att flytta robotenmen som ar langsam pa att fora den tillbaka till referenspositionen igen da den valhar flyttats.

Page 54: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

40 Implementering och trimning av regulatorer

Lank P I D M1 40 40 2 1502 50 40 2 1503 40 40 2 150

Tabell 6.1. Regulatorinstallningar for PID-regulator.

Page 55: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Kapitel 7

Utvardering av regulatorerna

De regulatorer som kommer att utvarderas i rapporten ar

• Parameterstyrd LQ-regulator, regulator I

• Parameterstyrd LQ-regulator med rekonstruerade tillstand, regulator II

• Fix LQ-regulator med rekonstruerade tillstand, regulator III

• PID-regulator, regulator IV

De forsok som kommer att utforas med respektive regulator aterfinns i tabell 7.1.

Test/ Referensbana Referensbana Stillastaende FrekvensanalysRegulator: utan storningar med storningar med storningarReg I Endast som referens Endast som referens Endast som referensReg II X X X XReg III X X X XReg IV X X X X

Tabell 7.1. Regulatorer och test.

7.1 Utvardering av regulatorstrukturer i tidspla-net

For att undersoka skillnaderna mellan regulator I och II och se om de ideala LQ-regulatorerna med alla tillstand kanda ar betydligt battre an de med rekonstrueradetillstand utfors foljande simulering. Roboten fixeras kring sin referenspunkt (lank 2rakt upp och lank 3 rakt ut) och utsatts for arm- och motorstorningar enligt figur7.1 med och utan observator. Axlarnas avvikelse fran referens ses i figur 7.2.

Det visar sig att formagan att undertrycka storningar och formagan att foljareferens for de bada ar valdigt lika. Det gar knappt att urskilja den ena fran den

41

Page 56: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

42 Utvardering av regulatorerna

0 1 2 3 4 5 6 7 80

5

10

15

tid (s)

mom

ent (

Nm

)

Storningsmoment motor

lank 1lank 2lank 3

0 1 2 3 4 5 6 7 80

500

1000

1500

2000

2500

3000

3500

tid (s)

mom

ent (

Nm

)

Storningsmoment arm

lank 1lank 2lank 3

Figur 7.1. Storsignal palagd vid stillastaende simulering.

andra. Da det inte ar nagon stor skillnad mellan LQ-regulatorn med rekonstrueradetillstand och LQ-regulatorn med alla tillstand kanda forutom att regulatorn medrekonstruerade tillstand ar betydligt mer realistisk kommer endast regulator IIsresultat att finnas med i kommande plottar. Daremot kommer den framraknadetestnormen att presenteras aven for regulator I.

7.1.1 Utvardering av referensbana

Referensbanan i kapitel 5 simuleras med de implementerade regulatorerna beskriv-na ovan. For att fa en uppfattning om hur bra var och en av regulatorerna harlyckats ritas deras avvikelse fran referensposition i samma figur. Referensbanankors fyra ganger med varje regulator, en utan storning och sedan med storning paendast en lank i taget i form av storningsmoment palagda enligt figur 5.8.

7.1.2 Utan storningar

Roboten simuleras har runt referensbanan med matbrus och motorbrus som endastorningar. Resultaten blev enligt figur 7.3 och tabell 7.2.

I figur 7.3 ses avvikelsen mellan vinkel och referens da endast banan foljs. Detsyns tydligt hur accelerations- och retardationsforloppen (0-0.5s respektive 7.5-8s)paverkar referensfoljningen pa ett negativt satt. For lank 1 haller sig vinkelfeletkring noll medan det for de bada andra lankarna finns en forskjutning av felet som

Page 57: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

7.1 Utvardering av regulatorstrukturer i tidsplanet 43

0 1 2 3 4 5 6 7 8−1

0

1

2x 10

−3vi

nkel

fel (

rad)

Skillnad mellan armreferens och armvinkel

0 1 2 3 4 5 6 7 80

1

2

3

4

5x 10

−3

vink

elfe

l (ra

d)

0 1 2 3 4 5 6 7 8

2

4

6

8x 10

−3

tid (s)

vink

elfe

l (ra

d)

Figur 7.2. Avvikelse fran referens for regulator I (streckad) och regulator II (heldragen).

Regulator: Lank 1 Lank 2 Lank 3Reg I 0.0227·10−9 6.7606·10−6 9.9624·10−6

Reg II 0.0474·10−9 6.7609·10−6 9.9624·10−6

Reg III 0.0810·10−9 7.2288·10−6 9.9169·10−6

Reg IV 0.1192·10−9 8.7122·10−6 11.4496·10−6

Tabell 7.2. Testnorm H beraknad for varje regulator vid simulering langs referensbananutan yttre storningar.

varierar langs med banan. Avvikelsen fran noll i de fallen beror pa gravitationensinverkan som andras beroende pa hur lankarna ar riktade. Pa grund av flexibilite-terna i robotarmen samt den integrerande verkan pa motorsidan kommer det alltidfinnas ett statiskt fel pa lank 2 och 3 som varierar beroende pa robotarmens lage.

Storning pa lank 1

Roboten simuleras runt referensbanan med storningar enligt figur 5.8 palagda en-dast pa lank 1, resultaten blir enligt figur 7.4 och tabell 7.3. Figur 7.4 visar regler-

Page 58: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

44 Utvardering av regulatorerna

0 1 2 3 4 5 6 7 8

−2

0

2

x 10−5

vink

elfe

l (ra

d)Skillnad mellan armposition och armreferens utan storning

0 1 2 3 4 5 6 7 8−2

0

2

4

6x 10

−3

vink

elfe

l (ra

d)

0 1 2 3 4 5 6 7 80

1

2

3

4

5x 10

−3

tid (s)

vink

elfe

l (ra

d)

Figur 7.3. Skillnad mellan armvinkel och armreferens vid simulering langs referensbananutan nagra yttre palagda storsignaler. Regulator II - heldragen, regulator III - streckadoch regulator IV prickad.

felet, det vill saga skillnaden mellan armreferens och armvinkel for varje lank medlank 1 overst och lank 3 nederst. Figuren innehaller de tre regulatorerna II, III ochIV.

Det syns har tydligt att de bada modellbaserade regulatorerna ar klart mycketbattre pa att undertrycka storningar an PID-regulatorn. Da PID-regulatorn hartrimmats for att inte lata storningarna bli sa stora har den nackdelen att den arlangsam pa att ta tillbaka roboten till dess ursprungliga position. Det syns ocksatydligt att regulatorerna klarar av att reglera bort statiska storningar sa langede sker pa motorsidan (sker vid t = 1 − 1.5s, t = 3 − 3.5s och t = 5 − 5.5s).Lanken gar da tillbaka till sitt ursprungliga lage da momentstorningen ligger pa medkonstant varde. Da det inte finns nagon integrerande verkan pa armsidan uppstardar konstanta fel vid statiska storningar pa armsidan (t = 2 − 2.5s, t = 4 − 4.5soch t = 6 − 6.5s). Detta syns genom att lank lagger sig pa en annan niva an denursprungliga da momentstorningen ligger pa konstant.

Pa lank 2 och 3 syns aven dar konstanta fel. Dessa beror pa robotarmens vekhetsom gor det omojligt att halla bade motor och arm pa ratt position samtidigt da de

Page 59: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

7.1 Utvardering av regulatorstrukturer i tidsplanet 45

0 1 2 3 4 5 6 7 8−2

0

2

4x 10

−3vi

nkel

fel (

rad)

Skillnad mellan armposition och armreferens vid storning pa axel 1

0 1 2 3 4 5 6 7 8−2

0

2

4

6x 10

−3

vink

elfe

l (ra

d)

0 1 2 3 4 5 6 7 80

1

2

3

4

5x 10

−3

tid (s)

vink

elfe

l (ra

d)

Figur 7.4. Skillnad mellan armvinkel och armreferens med storningar enligt figur 5.8 palank 1. Regulator II heldragen, regulator III streckad och regulator IV prickad.

utsatts for gravitation som bojer ner armen. Da den integrerande verkan aterfinnspa motorsidan resulterar det automatiskt i konstanta fel pa saval lank 2 som lank3 pa armsidan.

Overraskande nog sa reglerar regulator II endast lite battre an regulator III paalla axlarna. Det ar dock tydligt att regulator II ar den battre av de bada.

Regulator: Lank 1 Lank 2 Lank 3Reg I 0.1240·10−6 6.7484·10−6 9.9223·10−6

Reg II 0.1314·10−6 6.7577·10−6 9.9441·10−6

Reg III 0.1718·10−6 7.2291·10−6 9.9468·10−6

Reg IV 1.0663·10−6 8.7194·10−6 11.4330·10−6

Tabell 7.3. Testnorm H beraknad for varje regulator med storningar pa lank 1.

I tabell 7.3 syns aven dar att regulator IV ar klart samst medan de andraregulatorernas testnormer ligger nara varandra. Regulator I har de lagsta och bastavardena pa alla axlar men regulator II har likvardiga tal.

Page 60: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

46 Utvardering av regulatorerna

Storning pa lank 2

Da roboten istallet simuleras runt referensbanan med storningar endast palagda palank 2 enligt figur 5.8 blir resultatet enligt figur 7.5 och tabell 7.4. Figur 7.5 visarreglerfelet, det vill saga skillnaden mellan armreferens och armposition for varjelank, och for de tre regulatorerna regulator II (heldragen), regulator III (streckad)och regulator IV (prickad).

0 1 2 3 4 5 6 7 8

−2

0

2

4x 10

−5

vink

elfe

l (ra

d)

Skillnad mellan armposition och armreferens vid storning pa axel 2

0 1 2 3 4 5 6 7 8−2

0

2

4

6

8x 10

−3

vink

elfe

l (ra

d)

0 1 2 3 4 5 6 7 80

2

4

6x 10

−3

tid (s)

vink

elfe

l (ra

d)

Figur 7.5. Skillnad mellan armvinkel och armreferens med storningar enligt figur 5.8 palank 2. Regulator II heldragen, regulator III streckad och regulator IV prickad.

Aven har ar det tydligt att regulator IV har svart att mata sig med de andra. Re-sonemanget med konstanta fel med mera ar detsamma som i fallet med storningarpa lank 1.

Korskopplingarna fran storningarna pa lank 2 till framst lank 3 ar tydliga. Trotsatt storningarna pa armsidan inte leder till nagra konstanta fel ar det dock valdigttydligt att armstorningarna skapar storst korskopplingar pa lank 3. Korskoppling-arna till lank 1 har valdigt liten amplitud men dar aterfinns inte nagon signifikantskillnad mellan storning pa arm- och motorsida.

Det ar i figuren svart att uttala sig om huruvida en regulator ar battre an

Page 61: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

7.1 Utvardering av regulatorstrukturer i tidsplanet 47

en annan pa att reducera korskopplingar. De svangningar som finns i systemetberoende av brus och regulator ar sa pass stora att de gor det svart att dra nagraegentliga slutsatser.

Avvikelsen av frekvenstopp pa lank 2 och 3 i figur 5.7, dar frekvenstoppenlag betydligt hogre i frekvens for arbetspunkten i det mest utstrackta laget, synshar tydligt da det i banans mellersta del (4-5s) aterfinns svangningar med hogrefrekvens an under ovriga banan.

Regulator: Lank 1 Lank 2 Lank 3Reg I 0.0347·10−9 8.4169·10−6 10.0125·10−6

Reg II 0.0670·10−9 8.4494·10−6 10.0502·10−6

Reg III 0.0967·10−9 8.9922·10−6 10.0263·10−6

Reg IV 0.1588·10−9 11.9303·10−6 11.5838·10−6

Tabell 7.4. Testnorm H beraknad for varje regulator med storningar pa lank 2.

I tabell 7.4 syns ganska klart att regulator II reglerar battre an regulator III paden av storning utsatta lank 2. For lank 3 ar regulator II och III likvardiga med ettminimalt overtag for regulator III. Att regulator IV ar den samsta blir har annumer tydligt.

Storning pa lank 3

Vid simulering av roboten runt referensbanan med storningar endast palagda palank 3 blir resultatet enligt figur B.3 och tabell 7.5.

Resultatet av dessa storningar ar till storsta delen desamma som da endast lank2 utsattes for storningar. Regulator II ar bast tatt foljd av regulator III och medregulator IV pa en tydlig sistaplats.

Resonemanget med korskopplingar ar i stort det samma har som i fallet medstorningar pa lank 2. De stora korskopplingarna finns i fallet med armstorning palank 2 som visar sig pa lank 3. Skillnaden har ar att armstorningarna skapar storrekorskopplingar pa lank 1 an motorstorningarna.

Regulator: Lank 1 Lank 2 Lank 3Reg I 0.0525·10−9 6.8283·10−6 13.6776·10−6

Reg II 0.0839·10−9 6.8516·10−6 13.7566·10−6

Reg III 0.1031·10−9 7.2962·10−6 13.7113·10−6

Reg IV 0.1649·10−9 8.8466·10−6 16.8683·10−6

Tabell 7.5. Testnorm H beraknad for varje regulator med storningar pa lank 3.

Siffrorna i tabell 7.5 visar inga storre skillnader jamfort med de bada andratabellerna. Noterbart fran alla tabeller ar att reglerfelen fran lank 2 och lank 3varierar betydligt mer beroende pa regulator an vad de gor for lank 1. Detta kaninte helt forklaras med det konstanta felet som finns med vid lank 2 och lank 3 utan

Page 62: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

48 Utvardering av regulatorerna

0 1 2 3 4 5 6 7 8−5

0

5

x 10−5

vink

elfe

l (ra

d)

Skillnad mellan armposition och armreferens vid storning pa axel 3

0 1 2 3 4 5 6 7 8−2

0

2

4

6

x 10−3

vink

elfe

l (ra

d)

0 1 2 3 4 5 6 7 80

0.005

0.01

tid (s)

vink

elfe

l (ra

d)

Figur 7.6. Skillnad mellan armvinkel och armreferens med storningar enligt figur 5.8 palank 3. Regulator II heldragen, regulator III streckad och regulator IV prickad.

visar pa att det ar betydligt svarare att reglera lank 2 och lank 3 vilket stammerbra overens med den intuitiva kanslan for problemet.

7.1.3 Utvardering av storningsundertryckning i arbetspunkt

For att sarskilja formaga att folja referens fran formagan att undertrycka storningaroch lattare kunna se korskopplingseffekter utfors tester i stillastaende tillstand darstorningar appliceras pa varje lank for sig pa saval motor som pa armsida enligt7.1. For att kunna testa hur val parameterstyrningen faller ut ar det viktigt attutfora de stillastaende testerna i punkter langs banan som inte har anvants for attta fram regulatorer till parameterstyrningen. Tva punkter valjs ut, en som ligger iden raka delen i borjan av referensbanan, p6, och en punkt som ligger i den andrahalvan av cirkelrorelsen, p7 (se figur 7.7). Resultaten av dessa simuleringar synsnedan.

Det dessa simuleringar ytterligare bekraftar ar regulator IVs underlagsenhetgentemot de modellbaserade regulatorerna. Att vinsterna med parameterstyrninginte ar sa stora blir synligt har an en gang. Vad galler de korskopplingseffekter som

Page 63: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

7.1 Utvardering av regulatorstrukturer i tidsplanet 49

0.5

1

1.5

2

2.5

−1

−0.5

0

0.5

11

1.2

1.4

1.6

1.8

2

xy

z

Figur 7.7. Punkter langs referensbanan dar tester utfores for stillastaende robot. Denlagre p6, den hogre p7.

Regulator: Lank 1 Lank 2 Lank 3Reg I 0.0491·10−6 0.1801·10−6 0.5832·10−6

Reg II 0.0545·10−6 0.1972·10−6 0.6500·10−6

Reg III 0.0714·10−6 0.2086·10−6 0.6719·10−6

Reg IV 0.4922·10−6 0.5569·10−6 1.4023·10−6

Tabell 7.6. Testnorm H beraknad for varje regulator vid simulering i p6.

syns relativt tydligt i figur 7.8 och 7.9 ar vinsterna med regulator II och III inte sastora som vantat. Korskopplingseffekterna ar ungefar de samma for regulator IVsom for regulator II och III.

I fallet med p7 som ligger i ett for roboten utstrackt lage syns tydligt att denhogrekventa frekvenstoppen ligger hogre i frekvens vilket sags i figur 5.7 och somaven har varit tydligt vid utvardering langs referensbana.

Dessa simuleringar visar ocksa pa att det framst ar den relativt lattregleradelank 1 som vallar storst problem for regulator IV. Lank 2 och lank 3 ar betydligt

Regulator: Lank 1 Lank 2 Lank 3Reg I 0.0498·10−6 0.1711·10−6 0.5265·10−6

Reg II 0.0531·10−6 0.1885·10−6 0.6259·10−6

Reg III 0.0775·10−6 0.2282·10−6 0.6540·10−6

Reg IV 0.5077·10−6 0.6699·10−6 1.3604·10−6

Tabell 7.7. Testnorm H beraknad for varje regulator vid simulering i p7.

Page 64: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

50 Utvardering av regulatorerna

0 1 2 3 4 5 6 7 8−2

0

2

4x 10

−3vi

nkel

fel (

rad)

Stillastaende i p6

0 1 2 3 4 5 6 7 8−2

0

2

4x 10

−3

vink

elfe

l (ra

d)

0 1 2 3 4 5 6 7 8−5

0

5

10x 10

−3

tid (s)

vink

elfe

l (ra

d)

Figur 7.8. Skillnad mellan armvinkel och armreferens med storningar enligt figur 7.1vid simulering i punkt p6. Regulator II heldragen, regulator III streckad och regulator IVprickad.

jamnare. Dock syns att regulator II och III ar mycket bra pa att undertryckastorningar pa motormomentet. Effekterna av dessa storningar ar knappt markbaraoch till exempel ger de korskopplade armstorningarna mer effekt pa lank 2 och lank3 an vad de direktverkande motorstorningarna ger. Regulator IV daremot paverkasklart synbart av de direktverkande motorstorningarna.

Den stora skillnaden mellan testnormerna for lank 2 i de bada fallen beror paatt p7 ger ett storre statiskt fel i lank 2 pa grund av det okade troghetsmomenteti den punkten, (jamfor figur 7.8 och 7.9).

7.1.4 Utvardering av testnorm

Genom att jamfora testnormerna for varje lank da storningar har utforts pa dennakan man fa en bild av hur mycket de olika regulatorerna undertrycker storningari relation till varandra. Om vi endast betraktar de direkta storningarna pa varjelank, det vill saga att endast testnormen for den led som har utsatts for storning

Page 65: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

7.1 Utvardering av regulatorstrukturer i tidsplanet 51

0 1 2 3 4 5 6 7 8−2

0

2

4x 10

−3vi

nkel

fel (

rad)

Stillastaende i p7

0 1 2 3 4 5 6 7 8−4

−2

0

2

4x 10

−3

vink

elfe

l (ra

d)

0 1 2 3 4 5 6 7 8−5

0

5

10x 10

−3

tid (s)

vink

elfe

l (ra

d)

Figur 7.9. Skillnad mellan armvinkel och armreferens med storningar enligt figur 7.1vid simulering i punkt p7. Regulator II heldragen, regulator III streckad och regulator IVprickad.

betraktas, reduceras testnormstabellerna till en tabell med endast ett varde forvarje lank och regulator. Genom att testnormerna i tabell 7.3-7.5 subtraheras medtestnormerna i det storningsfria fallet, tabell 7.2, erhalls en modifierad testnormsom bestar av de extra reglerfel som uppstar pa grund av de palagda storningarna,se tabell 7.8.

Regulator: Lank 1 Lank 2 Lank 3Reg II 0.1313·10−6 1.6885·10−6 3.7941·10−6

Reg III 0.1717·10−6 1.7634·10−6 3.7944·10−6

Reg IV 1.0662·10−6 3.2181·10−6 5.4187·10−6

Tabell 7.8. Justerad testnorm for respektive lank dar endast de direkta storningarna tasi beaktning och dar referensavvikelsen i det storningsfria fallet justerats bort.

Genom att skriva om 7.8 sa att de olika regulatorerna stalls i relation till varand-ra erhalls tabell 7.9 ur vilken man kan se att regulator II undertrycker storningar

Page 66: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

52 Utvardering av regulatorerna

31% samre an regulator II pa lank 1 och att regulator IV ar hela 811% samrepa storningsundertryckning an regulator II pa samma axel. Det syns ocksa tyd-ligt att skillnaderna ar mindre for lank 2 och 3 och att regulator III till och medundertrycker storningar lika bra som regulator II pa lank 3.

Regulator: Reg III/RegII Reg IV/Reg IILank 1 1.31 8.12Lank 2 1.04 1.91Lank 3 1.00 1.43

Tabell 7.9. Reglerfel i relation till regulator II.

7.2 Utvardering av regulatorstrukturer i frekvens-planet

Vilka overforingsfunktioner som ar de mest illustrativa ar svart att avgora. Ef-tersom de enda riktiga matvarden som finns tillgangliga ar motorposition kanns detrimligt att rakna ut overforingsfunktioner fran respektive insignal till motorposi-tion. Det viktigaste egenskaperna for roboten ar dock de som finns pa armsidan ochdet ar aven pa armsidan som tidsplansanalysen har utforts. For att gora kopplingmellan frekvensplan och tidsplan mojlig beraknas darfor overforingsfunktionernatill armposition. Detta utfors genom att roboten forses med artificiella sensorer forarmvinkel som dock inte anvands i aterkopplingsloopen.

I rapporten aterfinns endast overforingsfunktioner i den linjariserade punktenp6. Linjarisering i punkten p7 har ocksa genomforts. Motsvarande bodediagramaterfinns i bilaga C.

7.2.1 Utvardering i punkten p6

Slutna systemet - Gc

Slutna systemet, Gc ar beraknat fran armreferens till armposition. Bodediagram-mets amplitudkurva for det slutna systemet aterfinns i figur 7.10

De likheter som har kunnat ses i tidsplansanalysen mellan regulator II och IIIaterfinns aven har. For lank 1 erhalls den storsta skillnaden da regulator II haren bandbredd pa 89.4 rad/s, regulator III har en bandbredd pa 78.2 rad/s ochregulator IV har en bandbredd pa 67.4 rad/s. Generellt for lank 1 ar att regulatorII och III har en frekvenstopp pa cirka 60 rad/s, (10 Hz) vilket kan ses till exempelunder sista halvsekunden for lank 1 i figur 7.3.

Lank 2 och 3 har lite mer komplicerade utseenden vilket aven har konstateratsi tidsplansanalysen. For bada dessa axlar aterfinns for regulator II och III tva fre-kvenstoppar, en vid 33 rad/s och en vid 80 rad/s. For lank 2 ar den med hogrefrekvens den hogsta toppen och for lank 3 ar toppen med lagre frekvens hogst.Regulator IV har aven den toppar vid ovannamda frekvenser men dock inte lika

Page 67: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

7.2 Utvardering av regulatorstrukturer i frekvensplanet 53

101

102

103

From: In(3)

101

102

103

From: In(2)

101

102

103

−150

−100

−50

0

50

To:

Out

(3)

−150

−100

−50

0

50

To:

Out

(2)

−150

−100

−50

0

50From: In(1)

To:

Out

(1)

Gc

Frequency (rad/sec)

Mag

nitu

de (

dB)

Figur 7.10. Slutna systemet vid linjarisering innan cirkelrorelse i p6. Regulator II hel-dragen, regulator III streckad, regulator IV prickad.

tydliga. Paverkan fran den lagre toppen ar latt att se under den forsta halvsekun-den i figur 7.3. Det syns aven dar att toppen ar hogre i fallet med lank 3 varvidsvangningarna far hogre amplitud an for lank 2. Den mer hogfrekventa toppen synsvaldigt tydligt i figur 7.8 hos bade regulator II och III i form av ett brusigt beteendemed relativt lag amplitud langs med storre delen av simuleringarna for lank 2 och3.

Korskopplingarna mellan lank 2 och 3 ar precis som tidsplansanalysen visarganska lika for de tre regulatorerna. Det visar sig dock nagot overraskande attregulator IV ar bast pa att hantera korskopplingar fran lank 2 och 3 till lank 1.Daremot ar den klart samre an de andra vid korskopplingar som paverkar lank 3.Regulator II och III:s korskopplingar ar likvardiga.

Overforingsfunktion fran armmomentstorning till armposition - Gva

Figur 7.11 visar precis som tidsplansanalysen att regulator II ar bast pa att un-dertrycka storningar pa armsidan och att regulator IV ar den samsta. I bodedia-grammet ser vi att armstorningarna forstarks relativt lika for regulator II och III.For lank 1 finns ett synligt overtag for regulator II medan det for lank 3 ar i prin-

Page 68: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

54 Utvardering av regulatorerna

101

102

103

From: In(3)

101

102

103

From: In(2)

101

102

103

−150

−100

−50

0

To:

Out

(3)

−150

−100

−50

0

To:

Out

(2)

−150

−100

−50

0From: In(1)

To:

Out

(1)

Gva

Frequency (rad/sec)

Mag

nitu

de (

dB)

Figur 7.11. Overforingsfunktion fran armstorning till armvinkel vid linjarisering i p6.Regulator II heldragen, regulator III streckad, regulator IV prickad.

cip samma undertryckningsformaga. De frekvenstoppar dar storningarna forstarksmest ar de samma som for det slutna systemet.

Vad galler korskopplingseffekter fran armstorningar kan ses att regulator IVhar storst korskopplingar fran lagfrekventa storningar medan det for hogfrekventastorningar ar valdigt lika mellan regulatorerna. Att hogfrekventa storningar paverkarlika mycket oavsett regulator ar nagot som galler for samtliga armstorningar.

Overforingsfunktion fran motormomentstorning till armposition - Gvm

I bodediagrammet syns den tydliga skillnaden mellan storningsdampningen hosregulator IV och de andra regulatorerna. Regulator IV:s forstarkning vid laga fre-kvenser gar mot noll valdigt langsamt vilket inte framgar sa tydligt i figuren.

Figur 7.12 visar pa stora skillnader mellan regulator II och regulator III vilkadock inte ar sa tydliga i tidsplansanalysen. Skillnaderna galler framst lank 1 och2 och forstoringar av figur 7.8 kring de aktuella tidpunkterna for storningarnabekraftar skillnaderna i storningsundertryckning till regulator II:s fordel (se figur7.13).

Vad galler korskopplingseffekter kan det observeras att det ar likvardiga effekter

Page 69: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

7.2 Utvardering av regulatorstrukturer i frekvensplanet 55

101

102

103

From: In(3)

101

102

103

From: In(2)

101

102

103

−150

−100

−50

0

To:

Out

(3)

−150

−100

−50

0

To:

Out

(2)

−150

−100

−50

0From: In(1)

To:

Out

(1)

Gvm

Frequency (rad/sec)

Mag

nitu

de (

dB)

Figur 7.12. Overforingsfunktion fran motorstorning till armvinkel vid linjarisering i p6.Regulator II heldragen, regulator III streckad, regulator IV prickad.

mellan de korskopplade storningsmomenten och de direktverkande vad galler amp-litud. Regulator IV skiljer sig genom att de korskopplade storningarna har en lagrelagfrekvensforstarkning vilket gor korskopplingseffekterna mer lika regulator II ochIII:s korskopplingseffekter. Dessa fenomen observerades aven i tidsplansanalysendar de korskopplade storningarna i princip hade samma, om inte storre, inverkanan de direktverkande.

Insignal-kanslighetsfunktionen - Su

I insignal-kanslighetsfunktionen syns att regulator IV undertrycker storningar painsignalen klart samst av regulatorerna for laga frekvenser, samt aven for hoga fre-kvenser pa diagonalelementen. Det ar ocksa en tydlig skillnad pa storningsundertryckningpa insignalen mellan regulator II och III for laga frekvenser, dar regulator II ar klartbast.

For de icke-diagonala elementen gar alla regulatorernas storningsforstarkningmot noll for hoga frekvenser pa grund av regulatorernas diagonala struktur. Dettasyns dock ej for regulator II och III i figur 7.14 da dessa viker av mot noll vid enhogre frekvens an de som visas.

Page 70: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

56 Utvardering av regulatorerna

1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8−1

0

1

2

3x 10

−3vi

nkel

fel (

rad)

Stillastaende i p6

3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8−1

0

1

2x 10

−3

vink

elfe

l (ra

d)

6.6 6.7 6.8 6.9 7 7.1 7.2 7.3 7.4 7.5 7.6−4

−2

0

2x 10

−3

tid (s)

vink

elfe

l (ra

d)

Figur 7.13. Forstorning av figur 7.8 vid tidpunkter for motormomentstorningar pa re-spektive lank.

Su har stora likheter med Gvm eftersom det ar ett motormoment som ar insignaltill roboten. De stora skillnaderna mellan figur 7.14 och 7.12 beror pa att Gva harraknats ut till armposition medan Su endast stracker sig till motorposition.

Page 71: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

7.2 Utvardering av regulatorstrukturer i frekvensplanet 57

101

102

103

From: In(3)

101

102

103

From: In(2)

101

102

103

−150

−100

−50

0

50

To:

Out

(3)

−200

−100

0

100

To:

Out

(2)

−150

−100

−50

0

50From: In(1)

To:

Out

(1)

Su

Frequency (rad/sec)

Mag

nitu

de (

dB)

Figur 7.14. Insignalskanslighetsfunktion vid linjarisering i p6. Regulator II heldragen,regulator III streckad, regulator IV prickad.

Page 72: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

58 Utvardering av regulatorerna

Page 73: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Kapitel 8

Slutsatser

8.1 Slutsatser

De slutsatser som kan dras av utvarderingen i kapitel 7 ar att det finns storafordelar med modellbaserade regulatorer gentemot traditionella PID-regulatorervad galler storningsundertryckning. Det bor dock tas i beaktande att det endastar simulerade resultat, varvid modellerna som regulatorerna har beraknats utifranhar varit desamma som sedan har simulerats. Om det istallet hade varit en riktigrobot hade ickemodellerade effekter spelat in och forsamrat de modellbaseraderegulatorerna mer an PID-regulatorn.

Det ar forhallandevis sma vinster med parameterstyrning gentemot fix regu-lator, vilket ar forvanande. Anledningarna till den lilla skillnaden mellan de tvaregulatorerna kan bero pa flera saker. Till exempel kan referensbanan ge for smavariationer hos den olinjara robotmodellen varvid en fix regulator klarar sig bra.Att anta tva-massemodeller med vekhet endast i vaxlarna kan ge en for “snall”modell. Ytterligare en anledning kan helt enkelt vara att vinsterna med parame-terstyrning trots allt inte ar sa stora och att det kanske endast kravs linjariseringarkring ett fatal punkter for att justera for de mest avvikande robotpositioner vadgaller modell. Simuleringarna och analysen i frekvensplanet visar dock pa fordelarmed parameterstyrning och dessa fordelar borde kunna goras storre med hjalp avvidareutveckling av parameterstyrningen. Potentialen finns dar.

8.2 Forslag pa framtida arbete

Intressanta aspekter att ga vidare med inom detta omrade ar bland annat attskapa en parameterstyrd observator. Denna skulle oka prestandan nagot for denparameterstyrda regulatorn. Att sedan utveckla parameterstyrningen och fa den attgalla over hela arbetsomradet vore intressant da det blir mojligt att implementerastyrningen pa en riktig robot.

Att infora framkoppling och implementera omvandlingen fran armreferens till

59

Page 74: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

60 Slutsatser

motorreferens skulle aven de vara intressanta att undersoka. En omvandling av allaregulatorer till diskret tid skulle aven det oka realismen i simuleringarna.

Page 75: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Litteraturforteckning

[1] Corke P. I. Robotics toolbox for MATLAB. CSIRO Manufacturing Science andTechnology, Pullenvale, Australia, 7 edition, 2002.

[2] Glad T. & Ljung L. Reglerteknik. Grundlaggande teori. Studentlitteratur, Lund,2nd edition, 1989.

[3] Glad T. & Ljung L. Reglerteori. Flervariabla och olinjara metoder. Studentlit-teratur, Lund, 1997.

[4] Nystrom M. & Norrlof M. Pgt - a path generation toolbox for MATLAB(v0.1). Technical Report LiTH-ISY-R-2542, Department of Electrical Enginee-ring, Linkoping University, Linkoping, 2003.

[5] Spong M. W. & Vidyasagar M. Robot dynamics and control. John Wiley &sons, Inc., New York, USA, 1989.

[6] Malmlof E. & Scholander O. Reglering av veka strukturer med multipla senso-rer. Master’s thesis LiTH-ISY-EX-3338-2003, Department of Electrical Engi-neering, Linkoping University, Linkoping, 2003.

[7] Hackman P. Boken med kossan pa. Hut, Hyfs och Hallning Productions,Linkoping, 15 edition, 1999.

[8] Wernholt E. Gunnarsson S. Hanssen S. & Moberg S. On the use of a multi-variable frequency response identification method in the presence of periodicdisturbances. Technical Report LiTH-ISY-R-2549, Department of ElectricalEngineering, Linkoping University, Linkoping, 2003.

[9] Wernholt E. & Ostring M. Modeling and control of a bending backwardsindustrial robot. Technical Report LiTH-ISY-R-2522, Department of ElectricalEngineering, Linkoping University, Linkoping, 2003.

61

Page 76: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

62 Slutsatser

Page 77: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Bilaga A

Manual och exempel tillsimuleringsmiljon

A.1 Manual till simuleringsmiljon

Simuleringsmiljon bestar av tva huvuddelar: ett matlabscript och en simulinkmo-dell. I matlabscriptet definieras parametervarden och dar bestams vad som skautforas vid och kring simulering. I simulinkmodellen far man sjalv se till att det arratt regulator och ratt robot som ska simuleras. Fler robotar och regulatorer finnsi ett modellbibliotek, robolib.mdl.

I matlabscriptet finns flertalet parametrar som ska stallas in beroende pa vadman vill fa ut av varje simulering. De parametrar som antingen kan ett- ellernollstallas ar:

• do sim, 1 for simulering, 0 for att inte utfora simulering.

• do dist, 1 for extra stormoment, 0 for simulering utan extra stormoment.

• do plot, 1 for att efter utford simulering rita vinklar, insignaler reglerfel m.m.,0 for att inte rita figurer.

• do bode, 1 for ritande av diverse bodediagram for vald regulator, 0 for attinte utfora nagon frekvensplansanalys.

• do ref, 1 for att folja referens signal, 0 for att sta still i initialposition.

• do int, 1 for inforande av integrerande verkan, 0 for att inte ha integrerandeverkan.

I scriptet anges ocksa vilken regulator som man amnar simulera med. valethar paverkar inte sjalva simuleringarna utan anvands bara for frekvensanalys. Deregulatorer som i nulaget finns att tillga ar:

63

Page 78: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

64 Manual och exempel till simuleringsmiljon

• 1 - Parameterstyrd LQ-regulator.

• 2 - Parameterstyrd LQ-regulator med rekonstruerade tillstand.

• 3 - Fix LQ-regulator med rekonstruerade tillstand.

• 4 - PID-regulator

Om man vid simuleringen vill lagga till modellfel kan man genom att andra pavariablerna inertia och stiffness andra robotarmens vekhet respektive troghet.Vardet 1 innebar sanna varden (100% av de ursprungliga vardena) medan vardenskilda fran 1 antingen ger minskad (< 1) eller okad (> 1) vekhet respektive troghet.

Initialvillkor maste ocksa de anges i matlabscriptet. init pos a anger robotar-mens startposition i vinkelkoordinater och init spd a anger robotarmens initial-hastighet for varje lank i rad/s. Aven en sampeltid, T maste anges. T anger hurtatt referensbanan samt storningar samplas.

A.1.1 Extra funktioner och script

Utover huvudscriptet som utfor sjalva simuleringarna och raknar alla diagram finnsdiverse mindre script som utfor deluppgifter vilka en anvandare ofta vill kunnajustera for att uppfylla sina specifika krav. Dessa anropas fran huvudscriptet ochbeskrivs nedan

robopath

I robopath.m raknas referensbanan fram ifall do ref ar ettstalld. referensbanan ska-pas som en trjektoria och kan med fordel skapas med hjalp av Path generatingtoolbox [4]

sys

sys.m beraknar A, B, C och D matriserna da linjariserad robotmodell ska tas fram.

linjariseringar

I linjariseringar.m beraknas de aterkopplingsmatriser, L, som anvands av LQ-regulatorerna. Linjariseringar utfors i de punkter som anges i scriptet med till-horande straffmatriser. L beraknas sedan for var och en av de linjariserade punk-terna.

observ

observ.m beraknar en observator for de regulatorer som behover en sadan. Iobserv.m kan man ange var modellen ska linjariseras och hur straffmatriserna skase ut.

Page 79: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

A.2 Enkelt exempel 65

plots

I plots.m finns script som ritar diverse figurer utifran den utforda simuleringen. Harkan anvandaren sjalv lagga till eller ta bort de signaler som denna ar intresseradav att se.

tfa

tfa.m ar en funktion som givet robot, position, L och K beraknar diverse overforings-funktioner for en LQ-regulator med rekonstruerade tillstand.

A.2 Enkelt exempel

Detta ar ett enkelt exempel som gar ut pa att utfora en simulering i punkten [000]T

med PID-regulator, rita figurer over resultat samt rita relevanta bodediagram. Un-der simuleringen ska roboten utsattas for storningar pa saval arm- som motorsida

I simulinkmodellen ersatts den davarande regulatorn med PID-regulatorn i mo-dellbiblioteket. Som robotmodell valjs den olinjara robotmodellen fran modellbib-lioteket.

I matlabscriptet satts do sim till 1 eftersom simulering ska utforas, do dist sattsaven den till 1 eftersom det ska forekomma storningar under simuleringen. Eftersomresultatet fran simuleringen ska ritas satts do plot till 1 och eftersom det ska ritasrelevanta bodediagram satts aven do bode till 1. Simuleringen ska ske i stillastaendepunkt ska det inte finnas nagon referensbana varfor do ref satts till 0.

Den regulator som ska anvandas, PID-regulatorn, har nummer 4 satts reg till4. Robotmodellen ska vara den korrekta, det vill saga att den inte ska innehallanagra modellfel varvid inertia och stiffness bada satts till 1.

Eftersom simuleringen ska ske i punkten [000]T satts init pos a till just [000]T

och da det simuleringen ska ske i stillastaende punkt satts init spd a till [000]T .Da alla dessa variabler har fatt sina varden ar det bara att kora scriptet och

simuleringen kommer genomforas automatiskt och efter det kommer resultat fransimuleringen och bodediagram att ritas.

Page 80: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

66 Manual och exempel till simuleringsmiljon

Page 81: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Bilaga B

Simulering av referensbanautan inverkan frangravitation

Regulator: Lank 1 Lank 2 Lank 3Reg II 0.1640·10−6 0.0521·10−6 0.0839·10−6

Reg III 0.1549·10−6 0.0521·10−6 0.0839·10−6

Reg IV 1.3329·10−6 0.0394·10−6 0.0521·10−6

Tabell B.1. Testnorm H beraknad for varje regulator med storningar pa lank 1.

Regulator: Lank 1 Lank 2 Lank 3Reg II 0.0443·10−9 0.5556·10−6 0.2209·10−6

Reg III 0.0884·10−9 0.8368·10−6 0.2000·10−6

Reg IV 0.1351·10−9 1.5560·10−6 0.2427·10−6

Tabell B.2. Testnorm H beraknad for varje regulator med storningar pa lank 2.

Regulator: Lank 1 Lank 2 Lank 3Reg II 0.0667·10−9 0.1730·10−6 1.6198·10−6

Reg III 0.0973·10−9 0.3251·10−6 1.5734·10−6

Reg IV 0.1432·10−9 0.2021·10−6 3.3794·10−6

Tabell B.3. Testnorm H beraknad for varje regulator med storningar pa lank 3.

67

Page 82: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

68 Simulering av referensbana utan inverkan fran gravitation

0 1 2 3 4 5 6 7 8−2

0

2

4x 10

−3

vink

elfe

l (ra

d)

Skillnad mellan armposition och armreferens vid storning pa axel 1

0 1 2 3 4 5 6 7 8−10

−5

0

5x 10

−4

vink

elfe

l (ra

d)

0 1 2 3 4 5 6 7 8−1

−0.5

0

0.5

1x 10

−3

tid (s)

vink

elfe

l (ra

d)

Figur B.1. Skillnad mellan armvinkel och armreferens med storningar enligt figur 5.8 palank 1 samt utan gravitation. Regulator II heldragen, regulator III streckad och regulatorIV prickad.

Page 83: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

69

0 1 2 3 4 5 6 7 8−4

−2

0

2

4x 10

−5

vink

elfe

l (ra

d)

Skillnad mellan armposition och armreferens vid storning pa axel 2

0 1 2 3 4 5 6 7 8−4

−2

0

2

4x 10

−3

vink

elfe

l (ra

d)

0 1 2 3 4 5 6 7 8−4

−2

0

2

4x 10

−3

tid (s)

vink

elfe

l (ra

d)

Figur B.2. Skillnad mellan armvinkel och armreferens med storningar enligt figur 5.8 palank 2 samt utan gravitation. Regulator II heldragen, regulator III streckad och regulatorIV prickad.

Page 84: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

70 Simulering av referensbana utan inverkan fran gravitation

0 1 2 3 4 5 6 7 8−5

0

5

10x 10

−5

vink

elfe

l (ra

d)

Skillnad mellan armposition och armreferens vid storning pa axel 3

0 1 2 3 4 5 6 7 8−2

−1

0

1

2x 10

−3

vink

elfe

l (ra

d)

0 1 2 3 4 5 6 7 8−5

0

5

10x 10

−3

tid (s)

vink

elfe

l (ra

d)

Figur B.3. Skillnad mellan armvinkel och armreferens med storningar enligt figur 5.8 palank 3 samt utan gravitation. Regulator II heldragen, regulator III streckad och regulatorIV prickad.

Page 85: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

Bilaga C

Overforingsfunktioner ipunkten p7

101

102

103

From: In(3)

101

102

103

From: In(2)

101

102

103

−150

−100

−50

0

50

To:

Out

(3)

−150

−100

−50

0

50

To:

Out

(2)

−150

−100

−50

0

50From: In(1)

To:

Out

(1)

Gc

Frequency (rad/sec)

Mag

nitu

de (

dB)

Figur C.1. Slutna systemet vid linjarisering innan cirkelrorelse i p7. Regulator II heldra-gen, regulator III streckad, regulator IV prickad.

71

Page 86: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

72 Overforingsfunktioner i punkten p7

101

102

103

From: In(3)

101

102

103

From: In(2)

101

102

103

−150

−100

−50

0

To:

Out

(3)

−150

−100

−50

0

To:

Out

(2)

−150

−100

−50

0From: In(1)

To:

Out

(1)

Gva

Frequency (rad/sec)

Mag

nitu

de (

dB)

Figur C.2. Overforingsfunktion fran armstorning till armvinkel vid linjarisering i p7.Regulator II heldragen, regulator III streckad, regulator IV prickad.

Page 87: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

73

101

102

103

From: In(3)

101

102

103

From: In(2)

101

102

103

−200

−150

−100

−50

0

To:

Out

(3)

−200

−150

−100

−50

0

To:

Out

(2)

−200

−150

−100

−50

0From: In(1)

To:

Out

(1)

Gvm

Frequency (rad/sec)

Mag

nitu

de (

dB)

Figur C.3. Overforingsfunktion fran motorstorning till armvinkel vid linjarisering i p7.Regulator II heldragen, regulator III streckad, regulator IV prickad.

Page 88: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

74 Overforingsfunktioner i punkten p7

101

102

103

From: In(3)

101

102

103

From: In(2)

101

102

103

−150

−100

−50

0

50

To:

Out

(3)

−200

−100

0

100

To:

Out

(2)

−150

−100

−50

0

50From: In(1)

To:

Out

(1)

Su

Frequency (rad/sec)

Mag

nitu

de (

dB)

Figur C.4. Insignalskanslighetsfunktion vid linjarisering i p7. Regulator II heldragen,regulator III streckad, regulator IV prickad.

Page 89: Flervariabel reglering av industrirobot - Automatic … · Flervariabel reglering av industrirobot Multivariable control of industrial robot Författare Author Claes Svensson Sammanfattning

På svenska

Detta dokument hålls tillgängligt på Internet – eller dess framtida ersättare –under en längre tid från publiceringsdatum under förutsättning att inga extra-ordinära omständigheter uppstår.

Tillgång till dokumentet innebär tillstånd för var och en att läsa, ladda ner,skriva ut enstaka kopior för enskilt bruk och att använda det oförändrat förickekommersiell forskning och för undervisning. Överföring av upphovsrättenvid en senare tidpunkt kan inte upphäva detta tillstånd. All annan användning avdokumentet kräver upphovsmannens medgivande. För att garantera äktheten,säkerheten och tillgängligheten finns det lösningar av teknisk och administrativart.

Upphovsmannens ideella rätt innefattar rätt att bli nämnd som upphovsman iden omfattning som god sed kräver vid användning av dokumentet på ovanbeskrivna sätt samt skydd mot att dokumentet ändras eller presenteras i sådanform eller i sådant sammanhang som är kränkande för upphovsmannens litteräraeller konstnärliga anseende eller egenart.

För ytterligare information om Linköping University Electronic Press seförlagets hemsida http://www.ep.liu.se/

In English

The publishers will keep this document online on the Internet - or its possiblereplacement - for a considerable time from the date of publication barringexceptional circumstances.

The online availability of the document implies a permanent permission foranyone to read, to download, to print out single copies for your own use and touse it unchanged for any non-commercial research and educational purpose.Subsequent transfers of copyright cannot revoke this permission. All other usesof the document are conditional on the consent of the copyright owner. Thepublisher has taken technical and administrative measures to assure authenticity,security and accessibility.

According to intellectual property law the author has the right to bementioned when his/her work is accessed as described above and to be protectedagainst infringement.

For additional information about the Linköping University Electronic Pressand its procedures for publication and for assurance of document integrity,please refer to its WWW home page: http://www.ep.liu.se/

© [Claes Svensson]