• No results found

Flexibelt ställdon

N/A
N/A
Protected

Academic year: 2022

Share "Flexibelt ställdon"

Copied!
106
0
0

Loading.... (view fulltext now)

Full text

(1)

EXAMENSARBETE

Mekatronikingenjör 180hp

Flexibelt ställdon

Hanna Eriksson och Eric Gustafsson

Examensarbete 15hp

(2)
(3)

Förord

Projektet valdes då det innehåller viktiga delar utav den mekatroniska ut- bildningen med fokus på programmering utav rörliga delar. Vi vill framför allt tacka personalen på STABE Drives AB som låtit oss ta del utav deras verksamhet och på plats haft möjlighet att utveckla vår produkt. Vi har fått mycket goda råd samt en lärorik inblick i arbetslivet. Vi vill även tacka vår handledare Kenneth Nilsson vid Högskolan i Halmstad för god vägledning genom projektets gång.

(4)
(5)

Abstract

This report describes the development of a flexible actuator in which one example of application is to emulate a mechanical spring. The idea to the project arose when Stabe Drives AB received a request on this particular application and realized there is a need of this type of product.

The purpose of the project is to create an actuator where size and func- tion can easily be varied. These variations the user is supposed to adapt by replacing one or more modules in a simple manner.

The object is to fabricate an actuator in which the actuator, the motor, the driver and the OP-panel is modular and replaceable. The application of the actuator must be replaceable by changing one or more modules in the actuator or by changing the readings in the OP-panel.

With an electromechanical actuator, a servo motor and a servo drive a flexible actuator have been constructed. SThe servodrivers PLC is program- med in CFC to receive instructions from an associated OP-panel.

The project resulted in a actuator in which the application can vary thru the OP-panel to emulate a mechanical feather. There are three pre- programmed functions for simple tests and an option where the user can specify the resistance to be obtained at any positions. When the function is specified the user have to press the actuator piston inwards to detect the change in resistance.

(6)
(7)

Sammanfattning

Rapporten beskriver utvecklingen utav ett flexibelt ställdon där exempel på applikation är att efterlikna en mekanisk fjäder. Idén till projektet uppstod då STABE Drives AB fick in en förfrågan på just denna applikation och insåg att det finns behov utav denna typ utav produkt.

Syftet med projektet är att ta fram ett ställdon där storlek och funktion enkelt kan varieras. Ett flexibelt ställdon skall ersätta flertalet individuellt anpassade ställdon för specifika tester. Dessa variationer skall användaren kunna anpassa genom att byta ut en eller flera moduler på ett enkelt sätt.

Målet är att konstruera ett ställdon där aktuator, drivning, styrning och OP-panel skall vara modulära och utbytbara. Applikationen för ställdonet skall gå att byta genom att byta ut en eller flera moduler i ställdonet eller genom att ändra mätvärden i OP-panelen.

Med en elektromekanisk aktuator, en servomotor och en servodrift har ett flexibelt ställdon konstruerats. Servodriftens PLC har programmerats i CFC för att ta emot instruktioner från en tillhörande OP-panel.

Projektet resulterade i ett ställdon där applikation kan varieras via OP- panelen för att efterlikna en mekanisk fjäder. Det finns tre förprogrammerade funktioner för enkla tester och ett alternativ där användaren själv kan ange vilket motstånd som skall erhållas vid valfria positioner. Då funktionen är an- given får användaren pressa in aktuatorns kolv för att känna förändringarna i motståndet som erhålls.

(8)
(9)

Innehåll

1 Introduktion 1

1.1 Syfte . . . . 2

1.2 Mål . . . . 2

1.3 Avgränsningar . . . . 2

1.4 Frågeställningar . . . . 2

1.5 Krav . . . . 3

2 Teori 5 2.1 Kunskapsläge . . . . 5

2.2 Liknande system . . . . 5

2.2.1 Linak . . . . 5

2.3 Linjära aktuatorer . . . . 5

2.3.1 Hydraulisk . . . . 6

2.3.2 Pneumatisk . . . . 7

2.3.3 Elektromekaninsk . . . . 7

2.3.4 Linjärmotor . . . . 8

2.4 Drivning av aktuatorer . . . . 9

2.4.1 Servomotor . . . . 9

2.4.2 AC-motor . . . 10

2.4.3 Hydraulpump . . . 11

2.4.4 Kompressor . . . 12

2.5 Styrning av drivenhet . . . 13

2.5.1 PLC . . . 13

2.6 Kommunikation . . . 14

2.6.1 RS-232 . . . 14

2.6.2 RS-485 . . . 14

2.6.3 Modbus . . . 15

2.6.4 Profibus . . . 15

2.6.5 EtherCAT . . . 15

2.7 Kraftmätning . . . 16

2.7.1 Trådtöjningsgivare . . . 16

2.7.2 Piezoelektrisk sensor . . . 16

2.8 Positionsmätning . . . 16

2.8.1 Fotoelektriska sensorer . . . 16

2.8.2 Bandgivare . . . 17

2.8.3 Pulsgivare . . . 17

2.8.4 Resolver . . . 18

2.9 Reglering . . . 19

(10)

3.2.1 För- och nackdelar hos olika aktuatorer . . . 22

3.2.2 Linjär aktuator . . . 23

3.2.3 Drivning . . . 23

3.2.4 Styrning . . . 24

3.2.5 OP-panel . . . 25

3.3 Programmering . . . 26

3.3.1 PLC . . . 26

3.3.2 HMI . . . 26

4 Resultat 29 4.1 Generell översikt . . . 29

4.2 Systemdesign . . . 29

4.3 Delsystem1: Konstruktion . . . 30

4.4 Delsystem2: Programmering . . . 30

4.4.1 Uppstart av program . . . 30

4.4.2 Läsa från variabellista . . . 31

4.4.3 Positionering . . . 32

4.4.4 Motkraft . . . 35

4.4.5 OP-panel . . . 37

4.5 Delsystem3: Testrigg . . . 39

4.5.1 Mätningar . . . 40

4.6 System . . . 40

4.7 Tester . . . 41

5 Diskussion 43

6 Slutsats 45

Figurer 47

Tabeller 49

Referenser 51

(11)

1 INTRODUKTION

1 Introduktion

Idén till projektet uppstod då STABE Drivers AB fick in förfrågan om en testutrustning avsedd för bilpedaler. I dagsläget används mekaniska motstånd för att simulera motkraften en bilpedal genererar (se Figur 1).

Figur 1: Mekaniska fjädrar simulerar motståndet hos en bilpedal som utsätts för en kraft.

Dessa fjädrar önskas bytas ut mot elektriskt drivna aktuatorer (hädanef- ter kallad ställdon) där olika slaglängder genererar olika krafter (hädanefter kallad funktion). Då liknande förfrågningar tidigare mottagits anses det fin- nas behov utav utrustning där ställdon och funktion kan kontrolleras. Det skall vara enkelt att byta ut en eller flera komponenter hos ställdonet och kon- figurera funktion. Önskad funktion skall anges via pekskärm på tillhörande OP-panel alternativt via en Excelfil.

(12)

1.1 Syfte

Syftet med projektet är att ta fram ett ställdon där storlek och funktion enkelt kan varieras. Ett flexibelt ställdon skall ersätta flertalet individuellt anpassade ställdon för specifika tester. På så vis kan ett och samma ställdon återanvändas och anpassas utefter olika funktioner och i längden även ge en ekonomisk vinst.

1.2 Mål

Målet med projektet är att ta fram ett ställdon som enkelt kan anpassas utefter behov. Olika komponenter ska kunna bytas ut för att fungera i den applikation som avses. Detta kan till exempel vara drivningen, styrningen eller aktuatorn. Detta för att kunna variera ställdonets slaglängd, kraft och hastighet. Ställdonet ska kunna röra sig fritt utefter valfri funktion. Dessa olika funktioner matas in via en OP-panel i systemet.

1.3 Avgränsningar

• Enbart ett ställdon konfigureras för en applikation

1.4 Frågeställningar

De frågeställningar projektet är uppbyggt kring som skall besvaras är:

• Hur har liknande problem lösts tidigare?

• Vilka komponenter ska användas för att ge en flexibel lösning med utbytbara delar?

• Hur skall kommunikation OP-panel/ställdon och OP-panel/användare ske?

I mån utav tid skall även en testrigg konstrueras för att verifiera ställdonets funktioner. Frågeställningarna som skall besvaras kring den är:

• Hur skall kraften verifieras?

• Hur skall positionen verifieras?

(13)

1 INTRODUKTION

1.5 Krav

En kravspecifikation (se Appendix A) till projektet har framställts för att ange vilken funktion som skall vara uppnådda vid projektets slut. Ett ställdon skall röra sig utefter den funktion som angivits via en tillhörande OP-panel.

De krav som ställs på prototypen är följande:

• Linjär aktuator, drivning och styrning skall vara utbytbara

• Aktuatorn skall finnas i flera olika storlekar

• Drivningen skall anpassas efter aktuatorn

• Styrningen skall kunna driva olika stora motorer

• Funktionen för ställdonet skall appliceras via en OP-panel

(14)
(15)

2 TEORI

2 Teori

Här undersöks lösningar på liknande problem, vilka komponenter som är aktuella för projektet samt hur kommunikation mellan OP-panel och ställdon, samt OP-panel och användare kan lösas.

Då en testrigg eventuellt skall konstrueras besvaras även frågorna hur kraft och position kan mätas.

2.1 Kunskapsläge

I dagsläget tar företag fram nya och specialanpassade ställdon utefter behov.

Dessa ställdon fungerar då endast i specifika applikationer. Detta projekt kommer att konstruera ett generellt system där ställdon och funktion går att variera. Önskad funktion för ställdonet matas in via OP-panelens pekskärm.

För att utföra uppgiften kommer det behövas fördjupning inom områdena linjära aktuatorer, drivning utav aktuatorer, PLC-programmering, kommu- nikation samt kraft- och positionsmätningar.

2.2 Liknande system

Detta kapitel beskriver tidigare lösningar på liknande problem. Eftersom olika system som är anpassade efter speciella applikationer tas fram efter hand att de behövs, finns det i dagsläget få flexibla system där ställdon och funktioner är utbytbara.

2.2.1 Linak

År 2015 lanserade LINAK [1] en plug-and-play-systemölsning som gör det enkelt för kunden att använda. En bluetoothenhet och en radioenhet sätts samman med ställdonet och dess strömförsörjning. Via en mobilapplikation och en fjärrkontroll kan sedan komponenterna kommunicera med varandra och användaren. Ställdonets position kan då styras via antingen mobilappli- kationen eller fjärrkontrollen. Systemet fungerar endast med två olika ställ- don och är begränsat att driva ställdonet fram och tillbaka genom direkt interaktion med applikationen eller fjärrkontrollen.

2.3 Linjära aktuatorer

I detta kapitel beskrivs de alternativ till linjära aktuatorer som finns för projektet. Aktuatorn skall vara enkel att applicera och byta ut, samt passa ihop med vald drivning och styrning för projektet.

(16)

2.3.1 Hydraulisk

I hydrauliska aktuatorer överförs kraften från en hydraulpump via en vätska till mekanisk rörelse. Cylindern består utav ett rör där en kolv med kolvstång är monterad enligt Figur 2 och 3. När vätska pumpas in i ena sidan utav kolven pressas samtidigt vätska ut i andra änden (se Figur 2). När önskat läge är uppnått för kolven stängs ventilerna och den komprimerade vätskan håller kolven i samma läge tills någon ventil åter öppnas (se Figur 3). Eftersom vätska är väldigt svårt att komprimera klarar cylindern ett högt tryck under en längre tid. Detta medför att hydrauliska aktuatorer väldigt precist kan utöva mycket stora krafter. Eftersom en vätska måste pumpas in i cylindern för att skapa en rörelse har den en låg acceleration och hastighet [2].

Figur 2: Kolven pressas uppåt.

Figur 3: Kolven pressas nedåt.

(17)

2 TEORI

2.3.2 Pneumatisk

I pneumatiska aktuatorer är det en gas som utsätts för tryck. En luftkom- pressor sätter gasen under högt tryck vilket sedan används för att utföra mekanisk rörelse. Cylindern består utav ett rör där en kolv med kolvstång är monterad enligt Figur 2 och 3. När luft pumpas in i ena sidan utav kolven pressas samtidigt luft ut i andra änden (se Figur 2). När önskat läge är upp- nått för kolven stängs ventilerna och den komprimerade luften håller kolven i samma läge tills någon ventil åter öppnas (se Figur 3). Eftersom gas enkelt kan komprimeras klarar ett pneumatiskt system inte att utsättas för kon- stant tryck på samma sätt som ett hydrauliskt system. Med en kompressor som klarar högt tryck kan acceleration och hastighet vara mycket hög. De är billiga att investera i men dyra i drift [3].

2.3.3 Elektromekaninsk

I elektromekaniska ställdon omvandlas elektrisk effekt till vridmoment via en elektrisk motor. När den elektriska motorn roterar överförs denna rotations- rörelse till linjär rörelse via en ledstång med monterad kulmutter i cylindern (se Figur 4). Detta för kolven framåt eller bakåt beroende på ledstångens rotationsriktning. Då ledstången roterar sätts kullagret mellan ledstång och kulmutter i rörelse och förflyttar kolven med en mycket hög precision.

Figur 4: Kulmutter på ledstång som driver kolven i valfri riktning [4].

Eftersom det finns olika typer av elmotorer för att driva ställdonet finns det även olika typer av styrsystem. Ett styrsystem behövs för att ställdonet ska kunna arbeta enligt olika funktioner. Genom att ändra spänning- och strömtillförsel kan ställdonet arbeta utefter olika typ av funktion.

(18)

Denna typ av ställdon är billig i drift och enkelt att byta ut. De klarar stora krafter men kräver då en kraftfull elmotor. Accelerationen och hastighet är högre än i hydrauliska system men inte så hög som i ett pneumatiskt system [5].

2.3.4 Linjärmotor

En linjärmotor kan liknas vid en AC-motor som vecklats ut (se Figur 5). Likt både AC- och DC-motorer består en linjärmotor utav en stator och en rotor.

Statorn består utav en skena med flera magneter placerade bredvid varandra på en rad. Rotorn består utav spolar som strömsätts med växelström. Då de strömsätts kommer de röra sig framåt eller bakåt längs en bana över magneterna. Ibland vänder man på konstruktionen för att rotorn, det så kallade huset, ska sitta fast monterad och låta statorn röra sig framåt och bakåt likt en kolv. Så länge skenan väger mindre än huset är det effektivt att använda denna metod som lämpar sig för applikationer där hastighet och precision är viktigare än kraft [6].

Figur 5: Förloppet av en AC-motor som ”väcklas ut” för att bilda en linjär- motor med en skena utav magneter [7].

(19)

2 TEORI

2.4 Drivning av aktuatorer

I detta kapitel redovisas vilka typer av motorer som varit aktuella för pro- jektet. Drivningen skall vara utbytbar för att klara av de stora variationerna i ställdonets funktion.

2.4.1 Servomotor

En servomotor består vanligtvis utav en likströmsmotor men kan också an- vända växelströmsmotorer. Servomotorn byggs upp av en elmotor, en po- sitionsgivare samt en växel. Likströmsmotorn, även kallad DC-motor, drivs med hjälp utav likström via en strömkälla. Den består utav en stator och en rotor där statorn består utav fasta magneter och rotorn utav en rörlig spo- le (se Figur 6). Det magnetiska fält som skapas i statorn tillsammans med likströmmen i rotorn ger upphov till rotation, som sedan översätts till en linjär rörelse i till exempel en aktuator [8]. För att en DC-motor skall kun- na arbeta i två riktningar kan en H-brygga appliceras. Detta för att ändra riktning på strömmen vilket medför att rotorns rotationsriktning ändras. För att kunna bromsa och positionera en DC-motor i både fram- och bakriktning behöver varje transistor i H-bryggan kontrolleras individuellt. Detta kallas fyrkvadrant-drift [9].

För att variera spänning och ström till motorn används P ulsbredds- modulering (PWM). PWM innebär att spänningen slås av och på i pulser för att skapa en kontinuerligt varierbar effektmatning. Växlingsfrekvensen varierar beroende på last men måste vara högre än att det påverkar lasten.

Tillslagstiden, pulskvoten, beskriver tiden då pulserna är till. Pulskvoten och växlingsfrekvensen tillsammans bestämmer den utgående effekten. En ökad spänning ökar strömmen som i sin tur förstärker spolens styrka. Detta med- för att motorns varvtal och vridmoment ökar. Ytterligare ett sätt att styra en DC-motor är via ett varierbart motstånd, kopplat i serie med motorn.

Nackdelen är att effekt som inte används av motorn blir till värme, vilket är oekonomiskt. Denna typen utav motor är vanlig i allt ifrån hemelektronik och radiostyrda bilar till tunga industrier [10].

(20)

Figur 6: Teorin hos en DC-motor där rotorn roterar medurs då rotorn ström- sätts i en specifik riktning [11].

2.4.2 AC-motor

En växelströmsmotor, även kallad AC-motor, drivs med hjälp utav växel- ström. Motorn består utav en stator och en rotor. Statorn är den ej roterande delen och består utav spolar. Rotorn är den roternade delen och består ut- av en magnet. Då spolarna matas med växelström skapas induktion som får rotorn att rotera (se Figur 7). Denna roterande rörelse kan sedan översättas till en linjär rörelse i till exempel en aktuator. Denna typ av motor är vanlig inom industrin [12, 13].

För att få en AC-motor att arbeta efter olika funktioner krävs en styr- ning. Den typ som används idag kallas för frekvensomformare (VFD). Den typ av AC-motor som används tillsammans med en VFD är vanligtvis 3-fas.

Frekvensomformaren konverterar först med hjälp av en diodbrygga den in- kommande växelströmmen till likström. Därefter sitter det två kondensatorer per fas som agerar switchar. Genom att styra dessa kondensatorer kan man skapa olika frekvenser och amplituder. En ökad amplitud ger motorn mer kraft att arbeta med och en högre frekvens ökar motorns hastighet [14, 15].

(21)

2 TEORI

Figur 7: Teorin bakom en trefas AC-motor där pilen demonstrerar hur mag- neten rör sig då spolarna strömsätts [16].

2.4.3 Hydraulpump

För att förse en hydraulisk cylinder med vätska krävs en pump som förflyttar vätskan från tanken till cylindern. Det finns olika lösningar på pumpar men den grundläggande funktionen är att komprimera och förflytta vätskan i rören till cylindern (se Figur 8). Olika typer utav pumpar genererar olika tryck och varvtal. För att sedan modifiera volym- och tryckströmningar används strypningar i flödet utav vätskan [17]. För att styra vätskan till rätt del utav cylindern används elektriskt styrda ventiler mellan pumpen och cylindern, styrda oftast utav en PLC [18]. Då vätska sedan samlas i cylindern skapas ett tryck som för kolven framåt eller bakåt [19, 20].

(22)

Figur 8: Teorin bakom en hydrulpump där en stor mängd vätska pressas ut genom ett litet rör för ökat tryck [21].

2.4.4 Kompressor

För att förse en pneumatisk cylinder med luft krävs en kompressor som kom- primerar luften. För att styra den komprimerade luften rätt i systemet an- vänds elektriskt styrda ventiler, oftast styrda utav en PLC [22]. Det finns flera metoder för att komprimera luft men grunden är alltid densamma. Luft med stor volym matas in i ett litet utrymme där luften tvingas komprimeras för att få plats (se Figur 9). På så sätt skapas ett högt tryck vilket bibehålls i en tank för att kunna förflyttas via slangar och ventiler till en pneumatisk applikation. Kompressorn drivs vanligtvis utav en elektrisk motor och skapar mycket värme vilket kräver en kylning. Kylningen i sin tur kräver ett filter för att förhindra den kylande vätskan från att tränga in i tanken. Alla dessa komponenter gör systemet stort och högljutt. Eftersom den elektriska motorn kan drivas både via eluttag och batteri finns det både stationära och mobila lösningar för kompressorer [23].

(23)

2 TEORI

Figur 9: Teorin bakom en kompressor där luft pressas ihop från en stor volym till en mindre för ökat tryck [24].

2.5 Styrning av drivenhet

Detta kapitel beskriver alternativet PLC för reglering utav drivenheten i projektet.

2.5.1 PLC

En PLC (Programmable Logic Controller) är en enhet som tar emot instruk- tioner från till exempel en OP-panel och översätter dessa till maskininstruk- tioner. I nästan varje automatiserad industri finns en PLC och för att göra det så enkelt som möjligt för användare över hela världen att programmera en PLC finns den globala standarden IEC-61131-3. I denna standard definieras sex olika programspråk för en PLC vilka förklaras nedan [25, 26].

• Instruction Ladder (IL): IL är ett textbaserat språk som kan liknas med assemblyprogrammering.

• Structured Text (ST): ST är ett textbaserat språk som kan liknas vid Pascal- eller C-programmering. Fördelaktigt vid hantering och sorte- ring av data.

• Ladder Diagram (LD): LD är ett grafiskt språk som utseendemässigt liknar relä-styrning. Ett program ser ut som en stege och avläses från vänster till höger, uppifrån och ner. Utsignaler från ett Ladder Diagram kan vara antingen True eller False.

• Function Block Diagram (FBD): FBD är ett grafiskt språk som använ- der sig utav block. Ett block har insignaler på vänster sida och utsigna- ler på höger sida. Blocken sammanlänkas med sammankopplingslinjer.

(24)

• Sequential Function Chart (SFC): SFC är ett grafiskt språk där funk- tioner skrivs i block som sammanlänkas med flödeslinjer. Programmet avläses uppifrån och ner och först när instruktionerna i ett block är utförda kan en händelse eller ett villkor sättas innan instruktionerna i nästa block påbörjas. SFC är baserat på GRAFCET som fungerar med samma principer, men inte är med i IEC-61131-3 standarden.

• Continuous Function Chart (CFC): CFC är ett tillägg till IEC-61131-3 standarden. Det är ett grafiskt språk som liknar FBD där blocken kan placeras fritt i programmet.

2.6 Kommunikation

Detta kapitel beskriver de olika alternativen för kommunikation mellan OP- panel och styenhet som finns.

Inom kommunikation finns det två typiska anslutningar, punkt-till-punkt (PPP) och multi-punkt (PMP). En PPP-anslutning avser kommunikation mellan två noder eller ändpunkter. Detta kan vara mellan en PLC och en sty- renhet. Multi-punkt innebär att en enhet kan kommunicera med flera andra samtidigt över ett buss-system. Profibus är ett exempel på ett sådant system.

2.6.1 RS-232

RS-232 introducerades 1962 och är en seriell kommunikation som tillåter da- taöverföring via 3 ledningar med full duplex. Standarden för kablaget är en längd uppåt 15 meter. Används en kabel med låg kapacitans ökas maxläng- den, frånses hastighetsfall ökas den ytterligare uppåt 1000m. RS-232 utveck- lades för 20kb/s men kan idag nå hastigheter upp till 1.5 Mbps . Trots att protokollet är gammalt används det fortfarande inom industrin. I protokollet översetts +3 till +15 V till en logisk nolla och -3 till -15 V som en logisk etta.

Ett av de största problemen med RS-232 är känsligheten för brus [27, 28].

2.6.2 RS-485

RS-485 introducerades på 1980-talet som en förlängning till RS-422. RS-422 fungerar som RS-232 men genom att mäta spänningen relativt enheterna istället för mot jord har maximalt avstånd ökat uppåt 1200 meter och käns- ligheten för störningar har minskat drastiskt. RS-485 tillåter att flera enheter kommunicerar med halv duplex. En master-enhet krävs för att kontrollera nätverket. De andra 31 enheterna (för ett maxantal på 32 stycken) kan motta all data men endast skicka när master-enheten tillåter det [29, 30].

(25)

2 TEORI

2.6.3 Modbus

Modbus är det första industriella kommunikationsprotokollet som utveck- lats. Det kom under 1970-talet som ett sätt att länka samman PLCs på ett simpelt master/slave-sätt. Kommunikation sker vanligen över RS-232 eller RS-485. RS-232 är för punkt-till-punkt och RS-485 är för multipunktssystem- applikationer där en master-enhet kan kommunicera med flera sammanlän- kade slav-enheter. Det fungerar genom att slav-noderna endast svarar då mastern kommunicerar med dem. Detta gör att mastern alltid måste sända för att uppdatera sin information [31].

2.6.4 Profibus

Profibus (Process Field Bus) introducerades 1989 och är idag uppdelat i flera varianter. Profibus DP (Decentralized Peripherals) är vanligast och används för att styra sensorer och aktuatorer. Decentralized Peripherals innebär kort att man kan flytta I/O-enheter från masterenheten, närmare där de behövs.

På så sätt sparas pengar i form av kortare kablar. Detta åstadkoms genom att använda ett buss-system i form av en gränssnittsmodul (interface module) vilken kopplas samman med master-enheten samt I/O-modulerna. Kommu- nikaitonen mellan master-enheten och gränssnittsmodulen sker via RS-485 vilket ger en maximal överföringshastighet på 12 Mbit/s. Eftersom Profibus’s viktigaste fysiska lager är RS-485 har det låg känslighet för brus [32, 33].

2.6.5 EtherCAT

EtherCAT (Ethernet for Control Automation Technology) är en Ethernet- baserad kommunikation. Protokollet togs fram för automationsapplikationer som kräver korta cykeltider och låg känslighet för störningar.

IP-paket som skickas via Ethernet kapslas in i så kallade ramar. En master-enhet skickar en ram med paket adresserade till en eller flera no- der, så kallade slav-enheter. När ramen passerar en slav-enhet läser enheten endast in datan adresserad dit. på samma sätt skrivs indata. Den sista noden skickar tillbaks ett meddelande till master-enheten med hjälpa av ethernets duplex-funktion. EtherCAT kan nå hastigheter på över 100 Mbit/s [34].

(26)

2.7 Kraftmätning

Detta kapitel beskriver några av de alternativ som finns för att testriggen skall verifiera kraften som aktuatorn genererar.

2.7.1 Trådtöjningsgivare

En trådtöjningsgivare består utav ett resistivt material. När detta materi- al utsätts för en töjning ändras dess resistans[35]. Resistansen kan sedan bestämmas med hög exakthet med hjälp av en W heatstone Brygga. Fyra motstånd, varav tre med känd resistans, kopplas samman. Två och två i serie, sedan parallellt. Detta resulterar i

R1 R2 = R3

R4

vilket medför att den okända resistansen kan lösas ut [36, 37]. Detta kan sedan översättas till den kraft sensorn utsätts för (se Figur 11).

2.7.2 Piezoelektrisk sensor

En piezoelektrisk sensor är en enhet som använder den piezoelektriska effek- ten för att mäta olika förändringar, till exempel kraftförändring [39].

När man deformerar en piezokristall ändras atomernas läge, vilket skapar en obalans och orsakar en laddning. Laddningen genomtränger hela kristallen så positiv och negativ laddning uppkommer på kristallens yttre, motsatta sidor. Den omvända effekten sker på motsatt sätt. [40]. Denna laddning kan sedan översättas till vilken kraft sensorn utsätts för. Piezoelektriska sensorer kan inte mäta konstant kraft.

2.8 Positionsmätning

Detta kapitel beskriver några alternativ för positionsmätning utav aktuatorn.

2.8.1 Fotoelektriska sensorer

Fotoelektriska sensorer är ett samlingsnamn för sensorer som detekterar fö- remål med hjälp av ljus. En sändare skickar ut ljus mot det detekterade föremålet för att bestämma dess position. Den reflektiva sensorn har sän- dare och mottagare i samma hus och använder en reflektor på föremålet för att låta ljuset studsa tillbaka till enheten (se Figur 10). T hrough − beam sensorn har sändare och mottagare för sig. I båda fallen, när ljuset har nått mottagaren, kan time of flight bestämmas och översättas till ett avstånd [41, 42].

(27)

2 TEORI

Figur 10: Principen hos en fotoelektrisk sensor [43].

2.8.2 Bandgivare

En bandgivare består utav ett så kallat hus som innehåller en spole med en upprullad tråd och en sensor (se Figur 11). Denna tråd rullas ut och fästs på det rörliga objektet som skall mätas och huset monteras fast i det innersta ändläget för det rörliga objektet. Då tråden dras ut roterar spolen och en avläsare kan avgöra hur många varv spolen snurrat för att sedan översätta det till avståndet tråden rört sig [44].

Figur 11: Hur en bandgivare ser ut inuti [45].

2.8.3 Pulsgivare

Pulsgivaren består utav en ljuskälla samt en skiva, ofta av glas eller plast [46, 47]. Skivan, som har genomskinliga och ogenomskinliga partier (se Figur 12), roterar med axeln. När skivan belyses skapas pulser vilka belyser en fotosensor. Sensorn tillsammans med en avkodare skapar en fyrkantsvåg som kan översättas till exempelvis antalet pulser eller hastighet. Ofta används två ljuskällor och fotosensorer för att även kunna bestämma riktning med mera. Det finns inkrementella och absoluta pulsgivare. Den inkrementella

(28)

typen har en skiva med partier vilken ger en fyrkantsvåg med endast två värden, hög eller låg. Den absoluta pulsgivarens skiva är uppdelad i flera, unika spår. Med en upplösning på 12 bitar ges 4096 punkter som läses av.

Denna lösning ger endast absolutvärden per varv. Genom att i följd placera flera skivor med olika rotationshastighet, som belyses av flera ljuskällor, kan absoluta positioner uppnås över flera varv.

Figur 12: Skivan till en absolut pulsgivare med genomskinliga och ogenom- skinliga partier som skapar unika mönster för varje position då de belyses utav en ljuskälla.

2.8.4 Resolver

En resolver använder en kombination av spolar och magnetiska sensorer för att upptäcka rörelse och position [49]. Rotorn befinner sig inuti statorn och är den del som är magnetiserad.

Den enklaste konfigurationen använder två spolar, en för nord- respektive sydpol på motsatta kanter av rotorn, och en sensor. När rotorn roterar gene- rerar detta en sinusvåg där axelns rotationshastighet är lika med sinusvågens frekvens. Med ytterligare en sensor, 90 förskjuten från den första, genereras en cosinusvåg. Utsignalen från resolvern blir därför en analog växelspänning som motsvarar den absoluta vinkeln mellan rotorn och statorn. Den absoluta positionen beräknas genom θ = arctan(sinθcosθ). Flera spolar och därmed fler poler kan läggas till för att öka noggrannheten.

(29)

2 TEORI

2.9 Reglering

Då ett system behöver regleras används ofta en regulator som har i uppgift att styra de insignaler som krävs för att systemet skall uppträda på valt sätt [50].

Den utsignal som önskas kallas för börvärde och den verkliga utsignalen kallas ärvärde. Genom att jämföra ärvärdet med det önskade börvärdet kan felet beräknas och regleras med hjälp utav en styrsignal. Till exempel då aktuatorn är satt att röra sig till en specifik position med en konstant hastighet och en yttre last appliceras på aktuatorn skulle den utan reglering sänka hastigheten.

Med hjälp utav återkoppling till en regulator kan i stället strömmen till motorn öka så att den fortsatt orkar driva aktuatorn till bestämd position med vald hastighet. Den vanligaste typen utav regulator i ett reglertekniskt system är PID-regulatorn. Den består utav en förstärkande, en integrerande och en deriverande del och har i uppgift att manipulera styrsignalen till systemet för att minska felet. Själva regulatorn är ofta integrerad i en PLC för att kunna styra utsignalerna med hjälp utav de återkopplade insignalerna.

Ett generellt slutet system med återkoppling beskrivs enligt nedan (se Figur 13). För systemet är insignalen den valda hastigheten för aktuatorn.

Felet som uppnås är skillnaden på den önskade hastigheten och den verkli- ga hastigheten. Regulatorn är integrerad i servodriften och har i uppgift att hålla felet så lågt som möjligt. Den manipulerade signalen är den styrsignal som beräknas för att minska på felet och störningen i systemet är en yttre påverkande kraft på aktuatorn. Processen är själva systemet som skall styras vilken för projektet är motorn som i sin tur bestämmer aktuatorns hastig- het. En sensor återkopplar hela tiden den verkliga hastigheten så att felet kontinuerligt beräknas.

Figur 13: Blockschema för ett generellt slutet reglersystem.

(30)
(31)

3 METOD

3 Metod

Då projektet kan delas upp i tre tydliga faser anses projektmodellen LIPS bäst lämpad som metod för genomförande. Projektet delas upp i de tre fa- serna:

• Startfas

• Utvecklingsfas

• Slutfas

Startfasen innefattar planering utav projektet samt ingående förstudier för att få god förståelse utav vad som skall göras. Här skall även kravspecifi- kation och testspecifikation sammanställas.

Utvecklingsfasen innefattar tre steg som utgör tre delsystem.

1. Delsystem 1: Konstruktion utav ställdon 2. Delsystem 2: Programmering utav ställdon 3. Delsystem 3: Verifiera ställdon i testrigg

Slutfasen innefattar utvärdering utav de resultat som uppnåtts. Här skall även produkten levereras till kunden och all dokumentation sammanställas.

Därefter skall slutpresentation och UtExpo fullföljas för att sedan avsluta projektet.

3.1 Utförande

I ett tidigt skede utav projektet har en projektplan (se Appendix C) med tillhörande GANTT-schema (se Appendix D) tagits fram. GANTT-schemat beskriver de aktiviteter som skall utföras, samt vilka milstolpar som skall uppnås. För att utföra projektet på ett korrekt sätt har en kravspecifikation (se Appendix A) tagits fram i samarbete med STABE. Här redovisas de krav prototypen skall uppnått vid projektets slut.

I utvecklingsfasen skall ett flexibelt system konstrueras för att slippa ta fram nya lösningar för specifika situationer. Ett ställdon, med tillhörande drivning och linjär aktuator, skall styras via en OP-panel där valfri funktion kan anges där kraft är en funktion av position. För att verifiera den angivna funktionen skall även en testrigg konstrueras.

I slutfasen skall det uppnådda resultatet analyseras och diskuteras. Här skall även alla krav med prioritet 1 vara uppfyllda enligt testspecifikationen (se Appendix B).

(32)

3.2 Komponenter

Detta kapitel beskriver de komponenter som valts för att utveckla prototypen.

3.2.1 För- och nackdelar hos olika aktuatorer

De alternativ till lösningar redovisas i Tabell 1 med för- och nackdelar för en enkel överblick utav vad som är bäst lämpat för projektet.

Metod Fördel(ar) Nackdel(ar)

Ställdon

Hydraulisk -Stora krafter -Tål konstant tryck

-Låg hastighet och acceleration vid styrning

-Otymplig hydraultank

-Kräver hydraulpump

Pneumatisk

-Billig att köpa -Hög hastighet och acceleration vid styrning

-Dyr i drift

-Tål ej konstant tryck -Krävs kompressor

Elektromekanisk -Billig i drift -Enkel att byta ut

-Kräver en elmotor per ställdon

-Dyr i inköp Linjärmotor -Billig i drift

-Hög precision

-Hög hastighet -Låga krafter Tabell 1: För- och nackdelar med olika ställdon.

Utefter denna tabell valdes en elektromekaninsk aktuator till projektet eftersom att denna typ av ställdon är uppbyggt av komponenter vilka enkelt kan bytas ut. Detta är ett krav för att systemet ska kunna anpassas till oli- ka applikationer för en hög flexibilitet. Flexibilitet kommer utifrån att där inte finns någon trycksatt luft eller olja som försvårar byte utav komponen- ter, där finns heller inga stora tankar för att förse systemet med luft eller olja. Elektromekaniken möjliggör också ett brett funktionsområde. Elektro- mekaniska aktuatorer kan arbeta med hög hastighet och acceleration, mycket precist och med stor kraft.

(33)

3 METOD

3.2.2 Linjär aktuator

Till projektet har ett elektromekaniskt ställdon från Parkers ETH-serie valts (se Figur 14). Den kommer i flertalet olika storlekar vilket är ett krav för projektet för att det ska vara så flexibelt som möjligt. ETH-serien kommer i sex olika modeller med slaglängder från 0 - 2 m och krafter från 0 - 11.4 ton. I de sex modellerna överförs en motors roterande rörelse via en ledstång och kulmutter till en linjär rörelse hos aktuatorn (se Figur 4). Till projektet används ETH032M16A1K1BFMN1000A som har en slaglängd på 1 m och klarar av krafter upp till 3.6 ton.

Figur 14: Linjäraktuator från Parkers ETH-serie [51].

3.2.3 Drivning

En servomotor från Parkers serie SMH (se Figur 15) har valts för projek- tet. Serien består av flertalet motorer vars effekt varierar från 0.1 - 9.4 kW, vridmomentet från 0.35 - 60 Nm och ett maxvarvtal på 7500 min−1. Moto- rerna har inbygd resolver som ger återkoppling om hur många varv rotorn har rört sig för att kunna beräkna positionen hos den tillhörande aktuatorns kolv [52]. Den motor som används är SMH60301,45112I642 vilken har ett vridmomentet på 1.4 Nm och ett maxvarvtal på 3000 min−1. Motorn kräver en spänningsmatning på 230V.

(34)

Figur 15: Servomotor från Parkers SMH-serie [53].

3.2.4 Styrning

En servodrift ur Parkers Compax3-serie (se Figur 16) har valts till projektet.

Detta då det är en flexibel servodrift som klarar driva alla motorer ur Parkers SMH-serie. Styrningen kräver 24 V för att drivas samt en högre spänning att mata vidare till motorn. Utefter vilka funktioner som valts justeras frekvensen och amplituden på den spänning som förser motorn, . Frekvensen justerar motorns rotationshastighet medans amplituden justerar dess kraft.

Compax3 använder P ulsbreddsmodulering (PWM) för att förse motorn med rätt ström- och spänningsvärden [54, 55]. PWM innebär att spänningen slås av och på i pulser för att skapa en kontinuerligt varierbar effektmatning.

Då ett block i PLC-programmet anropas för att till exempel öka motorns hastighet skickar styrenheten ut pulser i de frekvenser som krävs för att uppnå vald hastighet. En konstant puls genererar maxhastighet för motorn medans kortare pulser genererar lägre hastighet.

En PLC krävs för att skapa och köra avancerade program. Compax3 har en inbyggd PLC vilket gör att ingen extra hårdvara behöver införskaffas.

Detta gör det också enklare att föra vidare det PLC-program som skapats, vid byte av drift [56, 57].

I Compax3 finns det en variabellista, vilken nås via olika register. Listan används för att lagra de variabler som ändras av PLCn eller OP-panelen.

Variabellistan kan visas och ändras i Parkers program C3 Servo Manager.

I detta program sköts också alla inställningarna för styrningen så som vilken drift och aktuator som används. Finns inte produkten med läggs den in av användaren [58].

(35)

3 METOD

Figur 16: Servodriften Compax3 från Parker [59].

3.2.5 OP-panel

OP-panelen som valts för projektet är en XPR2 från Parker (se Figur 17).

Då den kommer i flera storlekar och kan kommunicera med servodriften via driftens inbyggda PLC uppfyller den de krav som ställs på OP-panelen i detta projekt[60]. OP-panelen kommunicerar med servodriftens PLC via taggar som sätter värden till valda platser i en variabellista.

Figur 17: OP-panel från Parkers XPR2-serie [61].

(36)

3.3 Programmering

Detta kapitel beskriver de metoder som valts för att programmera ställdonet.

3.3.1 PLC

I styrningen sitter en PLC som programmeras för att driva ställdonet efter olika funktoner. Programmet CoDeSys är förinstallerat och kommer med flera färdiga funktioner för till exempel vridmoment och positionering. Huvudpro- grammet skrivs i Continuous Function Chart (CFC) som baseras på block med in och utgångar. För funktioner som saknas skapas egna block, Function Block (FB), i valfritt språk som sedan implementeras i huvudprogrammet.

3.3.2 HMI

För kommunikation mellan användare och servodrift kommer en OP-panel från Parker användas. OP-panelen programmeras antingen direkt i enheten eller via en dator.

På panelen skapas visuella knappar samt taggar. En tag är en hänvisning till ett register i styrningen eller ett annat objekt i panelen (se Figur 18).

Knapparna länkas samman med taggarna och kan på så sätt skriva värden till styrningen för att skriva olika registervärden. Styrningens PLC-program använder samma register, vilket medför att en knapp kan ställas in till att påverka variabler i PLC-programmet genom att till exempel sätta en 1:a eller en boolesk TRUE. Det kan också skapas inmatningsdisplayer för att ändra på värden i form av till exempel REAL, som inte endast är 1 eller 0.

För att sammanlänka dessa värden med PLC-programmet används en variabellista som ligger lagrad i styrningen (se Figur 19). Olika platser i listan har olika register och det är till dessa OP-panelens taggar länkas samman.

I PLC-programmet hämtas sedan värden från dessa specifika platser innan instruktionerna utförs.

(37)

3 METOD

Figur 18: Taggar sätts i OP-panelen för att läsa och skriva till variabellistan.

Figur 19: Variabellistan som länkar samman servodriften med OP-panelen.

(38)
(39)

4 RESULTAT

4 Resultat

Detta kapitel beskriver de resultat som uppnåtts i projektet.

4.1 Generell översikt

Systemet består utav en aktuator, en servomotor, en servodrift och en OP- panel (se Figur 20). OP-panelen med pekskärm har programmerats så att användaren kan ange ställdonets funktioner. Via seriell kommunikation med servodriften kan funktionerna tolkas och sedan utföras. I servodriften sitter en PLC som är förprogrmmerad i CoDeSys för att utföra de funktioer som angivits. Servodriften skickar sedan de spänningar och strömmar som behövs för att servomotorn skall arbeta på korrekt sätt. Då driften håller emot med önskade krafter vid valda positioner kommer aktuatorn uppfylla de funktio- ner som matats in i OP-panelen.

Figur 20: Ställdonet med aktuator, servomotor, servodrift och OP-panel.

4.2 Systemdesign

Systemdesignen (se Figur 21) beskriver de moduler och kommunikationer som sker för att de angivna mätvärdena från OP-panelen skall översättas och sedan driva motorn på ett korrekt sätt så att aktuatorn skall uppfylla önskad funktion.

OP-panelen tar emot mätvärden som via taggar i programmet sparats un- dan i en variabellista. Servodriften som innehåller en förprogrammerad PLC

(40)

hämtar sedan dessa värden från samma variabellista för att utföra önskad funktion.

OP-panel Servodrift Servomotor Aktuator

RS-232 230V Mekanik

Figur 21: Systemdesign för ställdon.

4.3 Delsystem1: Konstruktion

De moduler som används i ställdonet har sammankopplats enligt bifogade specifikationer och manualer från tillverkarens hemsida. OP-panelen matas med 24V och kommunicerar med servodriften genom seriell kommunikation via RS-232. Servodriften i sin tur innehåller en PLC för att kunna utföra mer avancerade funktioner. Styrningen skickar ut spänning till motorn och tar emot signaler från den inbyggda givaren. Aktuatorn är monterad på motorns axel för att via en ledskruv och kulmutter överföra den roterande rörelsen till en linjär rörelse.

4.4 Delsystem2: Programmering

Huvudprogram för både positionering och motkraft har skrivits i PLC-språket CFC. De funktioner som inte funnits som färdiga block har lagts till som funk- tionsblock, skrivna i ST. Två program har skrivits, ett för positionering utav aktuatorn och ett för att generera valda motkrafter vid specifika positioner för att efterlikna en mekanisk fjäder.

4.4.1 Uppstart av program

I början av ett program krävs alltid ett MC_P ower-block för att spän- ningssätta motorn och en AXIS_REF _LocalAxis för att blocket ska kun- na referera till en axel. Både programmet ”Positionering” och programmet

Motkraft” återställs innan de startas med hjälp utav blocket MC_Reset.

Då MC_Reset har rensat felmeddelanden och kommandon som väntar på att utföras aktiveras Reset.Done. Reset.Done skickar då en booelsk TRUE till MC_P ower som i sin tur spänningssätter servomotorn (se Figur 22).

(41)

4 RESULTAT

Figur 22: Varje gång programmet startas om görs en reset.

Blocket MC_Reset rensar väntande kommandon samt felmeddelanden som kan uppstå under en körning. För projektet används detta block varje gång programmet startas upp eller om användaren vill rensa felmeddelanden och starta om.

Då strömtillförseln till ställdonet är avslagen är motorns axel fritt rörlig.

Blocket MC_P ower ger ström till motorn och försätter axeln i ett fryst läge där den är fast fixerad.

Kombinationen utav drift och motor kallas för en axel. Datatypen AXIS_REF innehåller information om den axel som specificerats.

AXIS_REF _LocalAxis avser den drift som innehåller PLC’n och behövs för att kommandot ska utföras på rätt axel. Detta på grund av att flera axlar kan existera i samma PLC-program.

4.4.2 Läsa från variabellista

Blocket C3_ReadArray (se Figur 23) läser värden från variabellistan (se Figur 19). Det radvärde som anges vid blockets ingång läses av i den eller de kolumner som är aktiva. Blocket och variabellistan innehåller 9 kolumner med 32 rader i varje kolumn vilket skapar plats för 288 värden.

(42)

Figur 23: CFC-blocket C3_ReadArray som hämtar värden från variabellis- tan.

Då C3_ReadArray-ingången Enable sätts till TRUE aktiveras blocket och kolumnerna läses av i den rad som anges i ingången Row. För att inte alla kolumner skall läsas av samtidigt används en variabel som aktiverar en eller flera valda kolumner åt gången.

4.4.3 Positionering

Programmet för positionering kan i stora drag beskrivas i de fyra sekvenserna start av program, hämta position, uppnå position och räkna upp radvärdet (se Figur 24).

Figur 24: Flödesschema för programmet ”Positionering” med fyra olika se- kvenser.

I sekvens 1 (se Figur 24) spänningssätts servomotorn efter att felmed- delanden och kommande kommandon rensats (se Figur 22). I sekvens 2 (se

(43)

4 RESULTAT

Figur 24) hämtar sedan blocket C3_ReadArray den positionen som skall uppnås. Det är positioneringsblocket MC_MoveAbsolute som förflyttar ak- tuatorn till den givna positionen. Om aktuatorn utsätts för en last under programmets gång skall fortfarande den valda hastigheten behållas tills dess att valda positioner är uppnådda. Detta görs med hjälp utav en reglering i servodriften som hela tiden anpassar matningen till servomotorn för att matcha de specifikationer som angetts på ingångarna i PLC-programmets block.

I sekvens 3 (se Figur 24) har aktuatorn uppnått den önskade positionen.

I sekvens 4 (se Figur 24), då en position är upnådd, räknas C3_ReadArray- blockets Row-värde upp med ett för att hämta nästa position från varia- bellistan. Varje gång Row-värdet räknats upp går programmet tillbaka till sekvens 2 (se Figur 24) så länge där finns nya värden att hämta. Så fort en ny position är hämtad påbörjar MC_MoveAbsolute den nya rörelsen.

För att blocket MC_MoveAbsolute skall aktiveras krävs en booelsk TRUE på ingången Enable, samt en given position att förflytta aktuatorn till.

Då en position är uppnådd aktiveras Move1.Done vilken även ger en boo- elsk TRUE till blockets egna ingång för att ej påbörja en ny rörelse innan föregående är klar och nästa position kan hämtas (se Figur 25).

Figur 25: Blocket MC_MoveAbsolute hämtar en ny position först då den föregående positionen är uppnådd (Move1.Done). Här är en konstant has- tighet och acceleration satt som ej förändras under programmets gång.

Först då Move1.Done är aktiv, det vill säga då en given position är upp- nådd, räknas även variabeln CounterV alue + 1 upp med ett. Detta för att

(44)

öka Row-värdet i C3_ReadArry så en ny position kan hämtas från varia- bellistan. Först då CounterV alue + 1 nått 32 aktiveras Counter1.Q vilken ökar kolumnräknaren nArray med ett samtidigt som Countervalue + 1 åter sätts till ett (se Figur 26).

Figur 26: Blocket Counter1 räknar upp med ett varje gång CU aktiveras (i samband med Move1.Done), var gång den räknar ökar CounterV alue + 1 upp med ett och först då Counter1.Q aktiveras efter 32 uppräkningar ökar kolumnräknaren nArray med ett och radräknaren CounterV alue + 1 återställs till ett.

(45)

4 RESULTAT

Då programmet är färdigt kan användaren välja att köra aktuatorn hem, det vill säga till position noll. Detta görs med ytterligare ett MC_MoveAbsolute- block där positionen alltid är satt till noll. Vill användaren någon gång under programmets gång göra ett nödstopp finns blocket MC_Stop som avbryter all aktivitet och stannar pågående rörelse. Då programmet är redo att köras igen aktiverar användaren återigen Reset− och P ower−blocken genom en knapptryckning för att återställa programmet (se Figur 22).

4.4.4 Motkraft

Programmet för motkraft kan grovt delas upp i de fyra sekvenserna start av program, hämta position och motkraft, uppnådd position med vald motkraft och räkna upp radvärdet (se Figur 27)

Figur 27: Flödesschema för programmet ”Motkraft” med fyra olika sekvenser.

(46)

I sekvens 1 (se Figur 27) spänningssätts servomotorn efter att felmed- delanden och kommande kommandon rensats (se Figur 22). I sekvens 2 (se Figur 27) hämtas det positionsvärde där nästa kraftförändring skall ske, samt den motkraft som då skall genereras. Detta görs med hjälp utav blocket C3_ReadArray där nu Row-värdet läses av i två separata kolumner, en för position och en för motkraft. I sekvens 3 (se Figur 27) har aktuatorn pressats in till den position där nästa kraftförändring skall ske. Samtidigt som det- ta uppnåtts påbörjas sekvens 4 (se Figur 27) och Row-räknaren räknar upp med ett i de två aktiva kolumnerna. Här hämtas den nya positionen där en kraftförändring kommer ske samt den nya motkraften.

För att åstadkomma en motkraft hos aktuatorn har kommandona C3Limit_CurrentP ositive och C3Limit_CurrentNegative användts. Des- sa variabler sätter hur många procent utav motorns maximala ström som an- vänds då ett program körs. Då aktuatorn pressas inåt orkar motorn därmed hålla emot med en viss kraft innan den ger med sig och aktuatorn pressas inåt. Eftersom att ingen hastighet anges till motorn kommer strömmen som tillförs inte att medföra en rörelse utan endast stå i ett fast läge tills att en yttre kraft appliceras.

Då aktuatorn skall efterlikna en mekanisk fjäder får användaren ange vil- ken kraft aktuatorn skall hålla emot med samt vid vilka positioner. Även i detta program har CFC-blocket C3_ReadArray (se Figur 23) vart avgö- rande. Blocket har plats för 288 värden och då aktuatorn har en tillgänglig slaglängd på 75 cm behöver inte alla dessa användas eftersom programmets noggrannhet ligger på en kraftförändring per centimeter. Det används tre kolumner i variabellistan för positionering och tre kolumner för att justera motorns strömtillförsel. I detta program skall inte aktuatorn själv röra på sig, endast få en större strömtillförsel då en viss position är uppnådd med hjälp utav en yttre påverkande kraft. Blocket MC_ReadActualP osition lä- ser med hjälp utav återkoppling från servomotorns resolver därför hela tiden av aktuatorns position så att strömtillförseln kan regleras därefter (se Figur 28).Positionen som skall uppnås hämtas från variabellistan med hjälp utav C3_ReadArray. Då programmet startar har kolumnräknaren ArrayN vär- det ett och först då radräknaren uppnått 32 ökas ArrayN till två. Då ArrayN är ett aktiveras två kolumner, kolumn ett och kolumn tre. Från kolumn ett hämtas de positioner där kraftförändringar kommer ske (se Figur 29) och från kolumn tre hämtas de strömmar som skall åstadkomma kraftörändringarna (se Figur 30).

Då alla värden räknats igenom och aktuatorn är på position noll kan an- vändaren via OP-panelen välja att köra aktuatorn tillbaka till sitt utgångsläge på 75cm igen. Detta görs med hjälp utav blocket MC_MoveAbsolute där

(47)

4 RESULTAT

Figur 28: MC_ReadActualP osition läser kontinuerligt av aktuatorns posi- tion som ett REAL-tal vilket görs om till en DINT och divideras med tio för att omvandla positionen från mm till cm och sparas undan som variabeln acc_pos.

Figur 29: Då ArrayN = 1 hämtas positioner från kolumn ett och behandlas.

Eftersom aktuatorns hemläge är i ytterläget får hela tiden den totala slag- längden subtraheras med positionen där en kraftförändring skall ske vilket resulterar i den önskade positionen. Till exempel om slaglängden är 75cm och det efter 2cm skall ske en kraftförändring, blir den önskade positionen 73cm.

Figur 30: När kolumnräknaren ArrayN=1 hämtas kraftförändringar från kolumn ett och översätts från en procentenhet till kilogram enligt beräknad ekvation.

positionen är satt till 750mm.

4.4.5 OP-panel

I OP-panelen har taggar (se Figur 18) lagts till som knyts samman med servodriftens variabellista (se Figur 19). Genom taggarna kan OP-panelen läsa och skriva information till och från servodriften.

Då ett program startas visas en startsida på OP-panelen. Här kan an-

(48)

vändaren välja om ett förprogrammerat program skall köras eller om egna värden skall anges (se Figur 31).

Figur 31: Startsidan på OP-panelen.

Om ett förprogrammerat program väljs visas vilket utav programmen som valts bredvid knappen Initiate. Då användaren valt Initiate och sedan Start är programmet redo att köras. Vill användaren göra ett eget program väljs Def ine values och en ny panel öppnas (se Figur 32). Här anges vilken total släglängd som önskas samt hur många mätpunkter som skall anges. Då dessa är valda kan användaren ange de positioner där kraftförändringar skall ske, samt vilka krafter som skall sättas.

Då användaren är klar med inmatningen väljs Done och en ny panel öppnas. Här kan användaren kontinuerligt se aktuatorns position och vilken kraft motorn håller emot med.

(49)

4 RESULTAT

Figur 32: Användaren får ange slaglängd, antal mätpunkter, position och kraft.

4.5 Delsystem3: Testrigg

För att verifiera kraften som krävs för att förflytta kolven har en fjädervåg använts. Fjädervågens krok hakas fast i aktuatorns yttersta ände och genom att dra i fjädervågen i stället för att pressa in kolven visas kontinuerligt den kraft som används.

Under aktuatorns kolv har ett måttband placerats med sin nollpunkt där aktuatorn har sin nollposition. Då aktuatorn rör på sig kan kraft- och positionsförändringar jämföras manuellt (se Figur 33).

Figur 33: Tester utfördes med fjädervåg och måttband.

(50)

4.5.1 Mätningar

För att översätta motorns procentuella strömtillförsel till hur stor kraft den håller emot med har mätningar med hjälp utav testriggen utförts (se Tabell 2). Då en specifik ström tillåts till motorn görs en mätning med fjädervågen där det avläses vilken kraft som krävs för att förflytta aktuatorn.

CurrentLimit Kraft

0 % 5 kg

2 % 6 kg

4 % 6.5 kg

5 % 7 kg

6 % 7,5 kg

8 % 9 kg

10 % 10 kg

12 % 11 kg

16 % 12,1 kg

18 % 13,8 kg

20 % 16 kg

30 % 21 kg

Tabell 2: Resultat utav kraftmätningar där en viss strömtillförsel tillåts till motorn.

Utefter denna tabell togs ekvationen CurrentLimit = 0, 5xKraft + 5 fram för att kunna omvandla den ström som tillåts till motorn till den kraft det genererar.

4.6 System

Hela systemet fungerar på liknande vis för både positioneringsprogrammet och motkraftsprogrammet. Användaren anger ställdonets funktion via OP- panelen och startat sedan programmet med en knapptryckning. Då posi- tionsprogrammet kört till sin sista position kan användaren via ytterligare en knapptryckning köra aktuatorn till sitt hemmaläge och sedan köra om programmet igen med samma värden eller ange nya. I motkraftsprogrammet kan användaren ange aktuatorns motkraft vid valda positioner och sedan starta programmet med en knapptryckning. Aktuatorn startar i sitt ytter- läge på 750mm och användaren får sedan pressa in aktuatorn med den kraft som angivits tills aktuatorn är i positionen 0mm. För att köra om program- met får användaren genom en knapptryckning köra tillbaka aktuatorn till sitt utgångsläge innan en ny simulering kan göras.

References

Related documents

Om handlingar kommer in till myndigheten i annan form än papper, som fax eller e-post, och skrivs ut på papper av myndigheten, ska de framstäl- las med papper och skrivmedel

bosatt i Motala, mannen folkskole- och ämneslärare bosatt på Terrassgatan 10 i Motala [Ola Lönnqvist] [Ur mapp innehållande från Karin Lilja Lennermark diverse handlingar om Carl

m – Minst en balkong/uteplats till varje bostad eller en gemensam uteplats i anslutning till bostäderna ska utföras eller placeras så att de utsätts för högst 55 dB(A) ekvivalent

Lösningen ska vara utformad för anslutning till e-arkiv enligt angivna anslutningstyper (Se Stödjande dokument, E-arkiv). 2.4.3

Karlsson (Karlsson, 1998) ger nedanstående bild av kravhanteringsprocessen. Som bilden visar, består processen av en rad olika aktiviteter, som dock är lika viktiga. Syftet

~ shall initiate braking through passenger emergency brake application, the level of which is specified by the national or relevant railway authority in accordance with EN 14198,

Kurs för utbildning till enstjärnig instruktör får arrangeras av SSDF eller auktoriserade utbildare och huvudansvarig för kursen skall vara en CMAS/SSDF trestjärnig

1.44034 Provning skall utföras för att kontrollera att tändsystemet inte initieras av miljöpåkänning enligt objektets kravspecifikation, i banan eller efter utläggning, efter