Afstudeerproject
H-brug besturing
Gerealiseerd met:
Digitax ST regelaars
SM-EtherCAT optiemodules
IPC met touchpanel
CodeSys Developer
Afstudeerverslag
Besturing van een H‐brug met Digitax ST servoregelaars, EtherCAT en
een CodeSys SoftMotion controller.
Control Techniques B.V. Projectnummer: 2011.019 Versie: 2.2 Startdatum: 6‐12‐2010 Einddatum: 31‐05‐2011Akkoord Bedrijf : Akkoord Hogeschool: Opsteldatum: 06‐06‐2011 Ad van Genderen Derk Pruisken Student: Michael Eling
Voorwoord
De aanzet voor dit project is afkomstig van Control Techniques B.V. Ik volg hier een duale opleiding elektrotechniek. In het kader van mijn afstudeerproject en de groeiende vraag in de markt is ervoor gekozen een universele motion controller te ontwikkelen.
Dit rapport is bedoeld voor alle betrokkenen bij het afstudeerproject en de beoordeling ervan. Hierbij wordt uitgegaan van de aanwezigheid van enige basiskennis binnen de elektrotechniek en industriële automatisering. Het rapport geeft inzicht in de wijze waarop het eindproduct tot stand is gekomen door middel van de uitwerking van een vijftal doelstellingen.
Dank gaat uit naar alle betrokken collega’s binnen Control Techniques B.V. voor het mogelijk maken van dit afstudeerproject en alle technische en financiële ondersteuning, Hiflex Automatiseringstechniek B.V. voor de geleverde ondersteuning voor CodeSys en Stamhuis Lineairtechniek voor het leveren van de H‐brug en technische ondersteuning.
Samenvatting
De opdracht bestaat uit het ontwerpen en realiseren van een op CodeSys gebaseerde motion controller voor de aansturing van een twee‐assige mechanische opstelling, aangedreven door één enkele tandriem en twee motoren op een vaste opstelling. Dit wordt ook wel een H‐brug genoemd vanwege de traditionele H‐vormige opbouw. Hierin wijkt het gebruikte model al gelijk af, aangezien deze een kruisvormige opstelling betreft. De motion controller zal draaien op een industriële PC met touchscreen.
De keuze voor het ontwikkelen van dit positioneersysteem komt voort uit de groeiende vraag naar totaaloplossingen voor de aansturing van complexe machines. Door gebruik te maken van de H‐brug kan gedemonstreerd worden waar het systeem toe in staat is en wat de mogelijkheden en voordelen zijn van het aansturen vanuit een industriële PC.
De gebruikte programmeeromgeving CodeSys biedt de mogelijk tot het schrijven van PLC programma´s, visualisaties en ook motion controllers. Ook kan via CodeSys de aansturing van een groot aantal veldbussen en industriële netwerken worden afgehandeld. CodeSys werkt volgens de IEC 61131‐3 standaard voor industriële automatisering, een internationale programmeertaal voornamelijk toegepast voor PLC´s.
De aandrijving van de H‐brug is gerealiseerd met Digitax ST servoregelaars en Unidrive HD servomotoren, beide van Control Techniques B.V. Via een EtherCAT verbinding worden deze de regelaars aangestuurd vanuit een industriële PC, waar een op CodeSys gebaseerde motion controller op draait. Door de geschreven software op te splitsen in een aantal hoofdfuncties en deze vast te leggen in functieblokken, hoeft men in de toekomst alleen de benodigde functies ”aan elkaar te knopen”. Als in de toekomst andere functies nodig zijn, zullen deze op dezelfde manier aangemaakt worden, zodat een steeds groeiende bibliotheek met functieblokken ontstaat.
Het gerealiseerde systeem zal gebruikt gaan worden voor beurzen, demonstaties, trainingen en testopstellingen. Daarom is ervoor gekozen om de Industriële PC in een koffer te bouwen en de servoregelaars op een los frame te plaatsen. Ook is de H‐brug op een staand frame gemonteerd en zijn alle aansluitingen voorzien van stekkerverbindingen. Hierdoor is het geheel makkelijk te vervoeren en kunnen de Industriële PC en de H‐brug ook onafhankelijk van elkaar gebuikt worden als bepaalde testen dit vereisen.
Op moment van schrijven is het systeem al vertoond op de MOCON 2011 beurs, Deze beurs is volledig toegespitst op motion control en alles wat daarbij komt kijken. Het systeem heeft hier zijn betrouwbaarheid kunnen bewijzen door twee dagen lang probleemloos te draaien. Hopelijk is er bij de bezoekers interesse gewekt en kunnen we al op korte termijn het systeem toe gaan passen in projecten.
Inhoudsopgave
Voorwoord
Samenvatting
1. Inleiding
Blz. 6
2. Realisatie doelstellingen
Blz. 7
2.1. Realisatie positioneersysteem
Blz. 8
2.1.1. Selectie IPC Blz. 8 2.1.2. Wiskundig rekenmodel H‐brug Blz. 12 2.1.3. Opbouw applicatiesoftware Blz. 17 2.2. Realisatie EtherCAT communicatie
Blz. 21
2.2.1. De opstelling Blz. 21 2.2.2. EtherCAT protocol Blz. 22 2.3. Realisatie elektromechanisch model
Blz. 23
2.3.1. Selectie aandrijving Blz. 23 2.3.2. De motorterugkoppeling Blz. 27 2.3.3. De Servoregelaar Blz. 28 2.4. Realisatie universele motion controller Blz. 29 2.4.1. Brandlabel Blz. 29 2.4.2. Aanmaken functieblokken Blz. 29 2.4.3. Visualisatie Blz. 36 2.5. Systeem voor dagelijks gebruik
Blz. 37 2.5.1. CodeSys in testopstellingen Blz. 37 2.5.2. Beursdemonstraties Blz. 37
3. Conclusies
Blz. 40
4. Aanbevelingen
Blz. 40
5. Bronnenlijst
Blz. 41
Bijlagen
Blz. 42
Bijlage 1: Project management document Blz. 43
Bijlage 2: Flowchart Blz. 57 Bijlage 3: Planning Blz. 58 Bijlage 4: Datasheet Hbrug Blz. 59 Bijlage 5: CodeSys programma versie1 Blz. 61 Bijlage 6: CodeSys programma versie2 Blz. 74 Bijlage 7: Testrapporten servomotoren Blz. 96
6
Inleiding
Als fabrikant van elektrische aandrijvingen en leverancier van oplossingen in aandrijftechniek en automatisering, krijgt Control Techniques B.V. steeds meer vraag naar totaaloplossingen voor positioneersystemen.
Tot op heden leverde zij voor een groot aantal klanten al de elektrische aandrijvingen in de vorm van servomotoren en bijbehorende regelaars. Echter de bovenliggende aansturing in de vorm van een motion controller heeft zij niet in het pakket. Om ook hier in te kunnen voorzien is er voor gekozen een Motion Controller te ontwikkelen op basis van CodeSys Developer. Dit is een geavanceerd softwarepakket, waarin zowel PLC‐programma’s als motion controllers en visualisatie schermen geschreven kunnen worden.
Tijdens het project zal een motion controller voor zowel complexe systemen als simpele aandrijvingen van diverse grootte en omvang gerealiseerd worden. Het geheel moet kunnen werken op een industriële PC, zonder hierin merkgebonden te zijn. De industriële PC moet zowel stand‐alone als onder een bovenliggend systeem kunnen draaien en direct kunnen communiceren met de elektrische aandrijvingen die hij bestuurt.
Dit verslag is een weergave van de werkzaamheden en vorderingen gedurende de afstudeerperiode. In hoofdstuk 2 wordt het hoofddoel uitgewerkt zoals vooraf vastgelegd in het opgestelde PMD. De doelstelling is uitgewerkt in een vijftal subdoelen, zoals weergegeven in hoofdstuk 2.1 t/m 2.5. In deze hoofdstukken wordt uitleg gegeven over de gemaakte keuzes en geven inzicht in hoe het uiteindelijke systeem tot stand is gekomen. Het PMD en verdere relevante documenten zijn bijgevoegd in bijlagen 1 t/m 7. Waar nodig zullen in het verslag
7
Realisatie doelstellingen
Voorafgaand aan het project is er een PMD opgesteld waarin alle doelstellingen vastgesteld en uitgewerkt zijn. Aan de hand hiervan is een lijst met activiteiten met een globale tijdsplanning opgezet. Om een duidelijk beeld te scheppen van de gemaakte vorderingen, zullen de reeds afgeronde werkzaamheden toegelicht worden. In bijlage 1 is het PMD te vinden waarin alle activiteiten uitgewerkt zijn, Hier zullen verder alleen de doelstellingen en de behaalde resultaten vermeld worden.
Hoofddoel
Aan het einde van het project zal een positioneringsysteem zijn ontwikkeld dat in staat is tweedimensionale vormen te tekenen op een vel papier. Hiervoor zal een twee‐assig servosysteem gebruikt gaan worden, aangedreven door Control Techniques servoregelaars en motoren. Doel 1 Aan het einde van dit project is een positioneringsysteem gerealiseerd op basis van een CodeSys programmeeromgeving, draaiende op een geschikte Industriële PC (IPC). Doel 2 De IPC en de servoregelaars zullen onderling communiceren door middel van een EtherCAT verbinding, gerealiseerd met een geschikte netwerkadapter voor de IPC, SM‐EtherCAT optiemodules voor de servoregelaars en standaard CAT5e Ethernetkabel. Doel 3 Het systeem zal geschikt zijn voor de aandrijving van een reeds bestelde H‐brug met twee servo‐ assen, die worden aangestuurd met Digitax ST servoregelaars van Control Techniques. Doel 4
Het eindproduct is reproduceerbaar voor verkoopdoeleinden en is aan te passen voor de aansturing van 3 of meer assen. In overleg met de fabrikant van de IPC zal deze een Control Techniques brandlabel krijgen.
Doel 5
De IPC en bijbehorende software kan intern gebruikt worden voor trainingen en testopstellingen, om de kennis van de CodeSys programmeeromgeving te vergroten.
8
2.1 Realisatie positioneersysteem
Aan het einde van dit project is een positioneringsysteem gerealiseerd op basis van een CodeSys programmeeromgeving, draaiende op een geschikte Industriële PC (IPC). 2.1.1 Selectie IPC Om duidelijk een beeld te scheppen van de structuur van het systeem is eerst een flowchart opgezet waarin de onderlinge verhoudingen van alle componenten duidelijk naar voren komt. Deze flowchart is opgenomen in bijlage 2.Vervolgens is er grondig onderzoek gedaan naar de werking en voornamelijk de beperkingen van CodeSys en de benodigde hardware. Hieruit blijkt al snel dat voor de EtherCAT verbinding maar een beperkt aantal netwerkkaarten geschikt is. Uit het onderzoek is de volgende lijst met systeemvereisten naar voren gekomen. Industriële PanelPC: Doorbouw Voet/flens montage 24 VDC of 230 VAC supply Mogelijkheid uitbreiding met UPS Hardware: 1 GB RAM 1 GHz Pentium of gelijkwaardig 1 GB hard disk Touchpanel: Minimale resolutie 1024 x 768 2 Ethernet controllers: 10/100 Mbit voor EtherCAT: IntelPro100 RTL8139 RTL8169 10/100/1000 Mbit voor netwerk Interfaces: USB RS232 Software: Windows XP of XPe CodeSys V3 CodeSys RTE CodeSys Visualisation
9
Aan de hand van de systeemvereisten van CodeSys en de benodigde performance, is een Panel‐PC geselecteerd met touchscreen en Windows XP besturingsysteem. De keuze voor zowel het merk als type is gemaakt door geschikte IPC’s van een aantal fabrikanten te vergelijken volgens bovenstaande systeemvereisten en de mogelijkheid tot brandlabelen. Dit heeft geleid tot de volgende productvergelijking: Duranmatic Fabrikaat: Winmate Panel PC’s Type: T‐serie I570 Touchpanel optioneel, keuze uit: o Resistief o Infrarood o SAW Grafisch krachtig, hoge resolutie heldere beeldschermen Veel verschillende bouwvormen: o Panel o Rack o Chassis o Open frame o Rear Mount Standaard NIC niet geschikt voor EtherCAT Evt. geschikte NIC via beschikbaar PCI‐slot Standaard 12V DC gevoed, met losse 230V AC adapter Optioneel 24V DC gevoed (Adapter/Intern?) Leverbaar met WindowsXP(e) of Linux Fanless systeem (geluidloos) Zeer laag energieverbruik (80W) Leverancier in Dordrecht Opslagmedia: 2,5” SATA Ingebouwde geluidskaart Leverbaar in verschillende schermafmetingen Telemeqanique Fabrikaat: eigen Type: vrij samen te stellen Modulair systeem (Control panel, CPU‐unit, optiesloten en voeding in losse componenten) Display met touch‐screen of membraam toetsenbord Display gemaakt voor doorbouw in wand Overige units als koppelbaar systeem (control box) inbouw in kast Volledig samen te stellen naar wens Control box neemt zeel veel ruimte in Relatief hoog energieverbruik. (120‐350 W, afhankelijk van samenstelling)
1
0
ESA Fabrikaat: eigen Type: XS615 Standaard uitgevoerd met touch screen Standaard NIC niet geschikt voor EtherCAT Evt. geschikte NIC via beschikbaar PCI‐slot Standaard 24 VDC gevoed Zeer laag energieverbruik (80 W) Diverse opslagmedia leverbaar: o CompactFlash (1/2/4 GB) o HDD (80 GB/120 GB SATA) o 8 GB Solid‐State Leverbaar met WindowsXP(e) Hiflex Fabrikaat: MSC‐Tuttlingen Leverbaar in custom design (logo) Type: TC/BC Standaard uitgevoerd met touch screen EMC‐afgeschermde behuizing Leverbaar in 12,1” en 17” Doorbouw of flensbevestiging Voorzien van 1 Ethernet connectie (type navragen) Standaard 24V DC gevoed Zeer laag energieverbruik (gemiddeld 30‐50 W, max: 75 W) Leverbaar met Windows XPe Opslag op CompactFlash (512 MB tot 4 GB) Fanless systeem (geluidloos) Type: BeBo Standaard uitgevoerd met touch screen EMC‐afgeschermde behuizing Leverbaar in 12.1/15/17/19” Doorbouw Voorzien van 2 Ethernet connecties (type navragen) Evt. geschikte NIC via beschikbaar PCI‐slot Optie tot uitbreiding met fieldbus: o CANopen o InterBus o ProfiBus Standaard 24 VDC gevoed Energieverbruik afhankelijk van beeldformaat en performance‐level (max 115 W) Leverbaar met WindowsXP Opslag op CompactFlash (512 MB tot 4 GB) Fanless systeem mogelijk (geluidloos) High‐performance uitvoering leverbaar (met fan)
1
1
De IPC van Telemeqanique valt al vrij snel af. Deze is volledig modulair opgebouwd wat handig kan zijn, maar in dit geval zoeken we een compact lichtgewicht systeem.Ook de IPC’s van Hiflex vallen af. De IPC’s zijn wel geschikt maar Hiflex is op het gebied van motion control directe concurrentie en daarom is er vanuit Control Techniques besloten om hier geen IPC’s te kopen.
Na deze eerste selectie zijn er nog twee systemen over, de IPC van Duranmatic en van ESA. Beide systemen voldoen volledig aan de gestelde eisen maar ESA is meer gericht op industriële toepassingen dan Duranmatic en levert dan ook robuustere systemen voor zwaar industrieel gebruik. Ook hebben we met ESA al goede ervaringen op het gebied van HMI’s en touchpanels.
1
2
2.1.2 Wiskundig rekenmodel Hbrug
Door de complexe opbouw van de H‐brug is het toepassen van een standaard twee‐assige aansturing, waarbij zowel de X‐as als de Y‐as een eigen motor heeft niet mogelijk.
Om het werkingsprincipe van de H‐brug te begrijpen en te kunnen vertalen naar een werkend programma, is een wiskundige benadering gemaakt van het bewegingsprincipe.
Om een gewenste verplaatsing te realiseren onder een bepaalde hoek, dienen de twee motoren samen te werken. Uit het model in de databladen van de H‐brug kan het werkingsprincipe van de opstelling bepaald worden. Hieruit is op de maken dat, in tegenstelling tot conventionele portaalmachines, niet iedere bewegingsas een eigen motor heeft.
Bij een conventionele portaalmachine zal het aansturen van één motor resulteren in een rechtlijnige verplaatsing over de betreffende as. Zo zal het aandrijven van beide assen met gelijke snelheid, een verplaatsing onder een hoek van 45 graden tot gevolg hebben. Dit vergelijkend met de H‐brug komt men al snel tot de conclusie dat hier een heel ander principe van toepassing is. Zo zal het aansturen van één as resulteren in een verplaatsing onder een hoek van 45 graden, en zal men voor een horizontale en verticale verplaatsing beide motoren met dezelfde snelheid moeten aansturen. Dit resulteert in het volgende principe:
Als beide assen in dit voorbeeld met gelijke snelheid worden aangedreven kan geconcludeerd worden dat bij gelijke draairichting een horizontale verplaatsing plaatsvindt, en bij een tegenovergestelde draairichting een verticale verplaatsing. Bij een diagonale verplaatsing niet gelijk aan 45 graden, zal een verhouding in snelheid berekend moeten worden voor beide motorassen.
1
3
Om dit te realiseren kan het model opgesplitst worden in vier kwadranten, elk een bereik van 90 graden bevattend. Per kwadrant kan voor beide assen de draairichting bepaald worden, en kan bepaald worden welke as de maximale snelheid mag behalen en welke as geschaald moet worden. Kwadrant 1 As 1: positief maximale snelheid As 2: geschaald Kwadrant 2 As1: geschaald As 2: negatief maximale snelheid Kwadrant 4 As 1: geschaald As 2: positief maximale snelheid Kwadrant 3 As 1: negatief maximale snelheid As 2: geschaald De kwadranten komen overeen met de richting van de opgegeven verplaatsing. De verhouding tussen de twee assen is per kwadrant hetzelfde, echter verandert het voorteken van de te schalen as afhankelijk van het kwadrant. Voor een beter beeld van de werking van de H‐brug, kan de invloed van iedere aandrijfas afzonderlijk bestudeerd worden.
Bij het aansturen van aandrijfas 1 zal de H‐brug als volgt bewegen, afhankelijk van de draairichting van de as: aandrijfas 1
1
4
Bij het aansturen van aandrijfas 2 zal de H‐brug volgens onderstaande illustratie bewegen. Bij het aansturen van beide assen kunnen de vectoren van de verplaatsing bij elkaar opgeteld worden waardoor het systeem onder iedere gewenste hoek kan verplaatsen en iedere positie binnen de opstelling bereikt kan worden. aandrijfas 2
1
5
Vanuit de verplaatsing over de X‐as en Y‐as in mm kan de totale verplaatsing onder hoek α berekend worden. Deze verplaatsing kan opgesplitst worden in een component geleverd door as 1 en een component geleverd door as 2. Deze componenten staan lijnrecht op elkaar en onder een hoek van 1/4π –α ten opzichte van de totale verplaatsing. De afgelegde weg kan berekend worden met de volgende vergelijkingen: sin 1 4 sin 1 4 Uit de databladen is op te maken dat de H‐brug een overbrenging heeft van 160 mm/omw. Dus één omwenteling levert een verplaatsing van 160 mm op. Aan de hand van deze gegevens kan het benodigde aantal omwentelingen per as bepaald worden voor de berekende verplaatsing. . /160 Vanuit de verplaatsing kan een maximaal toegestane snelheid worden berekend per as. Hierbij is de verhouding in snelheid gelijk aan de verhouding in verplaatsing, met als voorwaarde dat de snelheid van de gecombineerde beweging niet hoger is dan de maximale waarde opgegeven in de databladen van de H‐brug. Hierin word een maximale snelheid van V=4 m/s opgegeven. Uitgaande van de overbrenging van de H‐brug van 160 mm/omw. komt dit op het volgende toerental uit: 4000 160 60 1500 / X Stotaal Sas1 Sas2 1/4π –α α 0rad. 1/2 πrad. Y
1
6
Om op een gecombineerde snelheid van maximaal 4 m/s uit te komen zal de verhouding in snelheid tussen de beide assen berekend moeten worden. Deze verhouding is gelijk aan de verhouding in verplaatsing per as ten opzichte van de totale verplaatsing. 1500 1500 Direct van positieopdracht naar snelheid per as komt dit op het volgende neer: 1500 sin 1 4 1500 sin 1 4Ter controle kan de snelheid van beide assen teruggerekend worden naar een totale snelheid. Aangezien de vectoren van beide assen loodrecht op elkaar staan, mag dit eenvoudig met de stelling van Pythagoras.
60 1000 160 4 /
Deze formule kan gebruikt worden voor ieder kwadrant. Hierbij dient rekening gehouden te worden met het voorteken van n1 en n2, afhankelijk van het kwadrant. Deze vergelijking voorziet echter niet in een X of Y verplaatsing gelijk aan 0, dus een horizontale of verticale beweging. Aangezien in dit geval de verplaatsing voor as 1 en as 2 even groot is, is de snelheid voor beide assen ook even groot. Ook dienen beide vectoren opgeteld weer 4 m/s dus 1500 rpm te zijn. 1500 1500 1500 2 1500 2 1060,660172
1
7
2.1.3 Opbouw applicatiesoftware De software voor de Motion Controller is geschreven en getest in een demoversie van CodeSys, dit om er zeker van te zijn dat het pakket voldoet aan de eisen, alvorens een dure licentie te kopen. De software is opgebouwd uit functieblokken en globaal opgedeeld in drie programma’s: CNC controller (CNC_Control) Home functie (SM_Home) Motion controller (SM_PosControl) Verder bevat de software een globale variabelenlijst (GVL), een visualisatiescherm en een EtherCAT master met een slave configuratie. In CodeSys wordt dit weergeven in een zogeheten Device Tree, die er als volgt uitziet. De programma’s en de GVL zijn terug te vinden in bijlage 5. EtherCAT configuratie Visualisatie Task manager Programma’s GVL
1
8
Uitleg programma’s
CNC controller Dit programma leest coördinatenlijsten met een *.txt extensie vanaf de harde schijf en vertaalt deze naar een bewegingsprofiel voor de motion controller. Ook controleert dit programma op scherpe bochten in de uit te voeren beweging. Vormen als bijvoorbeeld een driehoek kunnen namelijk niet in één vloeiende beweging getekend worden. Zowel de regelaar als de motor zullen theoretisch een oneindig grote versnelling moeten genereren om dit te kunnen doen. Het programma corrigeert dit door op de kritieke punten te stoppen en vervolgens pas de bocht te maken.S
(t)V
(t)A
(t) Zonder correctie Met correctie
1
9
Home functie Deze functie stuurt de H‐brug naar een vast nulpunt, in dit geval linksonder. Omdat de motoren voorzien zijn van absoluut encoders, is er voor de home functie geen schakelaar nodig op de opstelling. De absoluut encoders geven een vaste waarde voor iedere positie van de motoras, zelfs nadat de motoren spanningsloos zijn geweest. Dit betekent dat er alleen een offset gegeven hoeft te worden voor de herkenning van de nulpositie. De offset is gelijk aan de encoderpositie van beide motoren op de gewenste X/Y positie van de opstelling. Deze kan dus eenvoudig ingesteld worden door de opstelling handmatig op de gewenste positie te zetten en de waarde van de encoders uit te lezen.
Om het uitlijnen te vereenvoudigen, zijn de encoderposities en X/Y coördinaten zichtbaar gemaakt in de visualisatie. (0,0) Home (X,Y) Encoder B Encoder A Encoder positie Home positie Offset
2
0
Motion controller
De motion controller verwerkt de positieopdrachten vanuit de CNC controller en verzorgt de start/stop en reset logica van de regelaars. De positieopdrachten worden verwerkt door een interpolator. De interpolator berekent aan de hand van de ruwe positieopdrachten het benodigde bewegingsprofiel voor zowel de X‐ als Y‐as. Hierdoor ontstaat er een soepele, gecontroleerde beweging. De bewegingsprofielen worden vervolgens omgerekend naar bewegingsprofielen voor de motorassen. Hiervoor wordt het eerder behandelde wiskundige model gebruikt.
De geïnterpoleerde bewegingsprofielen voor de motorassen worden verder verwerkt door een tweetal positiecontrollers en vervolgens naar de EtherCAT master verstuurd. Voor de visualisatie is er nog een rekenfunctie gemaakt, die de actuele encoderposities terugvertaalt naar X/Y coördinaten. Dit is nodig omdat er alleen een terugkoppeling is op de motorassen en niet op de
2
1
2.2 Realisatie EtherCAT communicatie
De IPC en de servoregelaars zullen onderling communiceren door middel van een EtherCAT verbinding, gerealiseerd met een geschikte netwerkadapter voor de IPC, SM EtherCAT optiemodules voor de servoregelaars en standaard CAT5e Ethernetkabel. 2.2.1 De opstelling Er is een testopstelling gebouwd met twee regelaars met servomotoren en EtherCAT optiemodules, aangesloten op de IPC met CodeSys. De IPC functioneert nu als Motion Controller en als master voor de EtherCAT bus.
In CodeSys wordt alleen een EtherCAT master aangemaakt en moeten de regelaars toegevoegd worden als slaves. De gegevens van de regelaars kunnen uitgelezen worden vanuit een xml bestand. Dit bestand bevat alle communicatie instellingen en standaard benamingen. Deze xml bestanden zijn beschikbaar op een afgeschermd deel van de Control Techniques website. IPC ‐Motion controller ‐EtherCAT master Motor A Motor B Servoregelaars EtherCAT modules Encoders
2
2
2.2.2 Het EtherCAT protocol
De master communiceert met de slaves via een DSP402 protocol. Dit is een gestandaardiseerd protocol voor motion toepassingen. DSP402 maakt gebruik van Process Data Objects (PDO’s). Dit zijn pakketten waarin een bepaalde hoeveelheid informatie verzonden en ontvangen kan worden. Er is een opsplitsing gemaakt tussen verzenden en ontvangen door RxPDO’s (receive) en TxPDO’s (transmit) te gebruiken. Deze PDO’s bevatten informatie over de bestemming, de afzender en de te schrijven en/of te lezen objecten. In de handleiding van de EtherCAT module is de functie, opbouw en adressering van de verschillende objecten vastgelegd. De adressering is in Hexadecimale code en is als volgt opgebouwd: Object index nummer: (0x0000) Object sub‐index nummer: (0x00) Grootte in Bytes: (1‐4) Om bijvoorbeeld te schrijven naar parameter 20.21 van de regelaar, dit is een vrij programmeerbaar 32‐bits datawoord in menu 20, moet het volgende adres gebruikt worden: Index 0x2000 + menu nummer Sub index 0x00 + parameter nummer Grootte 4 (32 bits = 4 bytes)
Het getal 20 decimaal is 14 in Hexadecimaal, 21 is 15 in Hexadecimaal. Het adres van parameter 20.21 is dus 0x2014, sub 0x15, size 4. De benodigde PDO’s voor de positiecontroller zijn al vastgelegd in CodeSys en hier hoeft dan ook niets aan gedaan te worden. CodeSys wijst ook adressen toe aan de indexen voor gebruik binnen de PLC logica volgens de vaste IEC 61131‐3 norm voor PLC software. De toewijzing van parameter 20.21 in CodeSys zal er dan als volgt uitzien: %QW0 (Q=uitgaand, W=Datawoord, 0= adres 0).
In het DSP402 protocol zijn ook standaard functies vastgelegd voor homing, storingsafhandeling en start/stop logica. Deze homing functies zijn echter alleen geschikt voor standaard X/Y modellen en niet voor de complexe aansturing van onze opstelling. Vanuit veiligheid is ervoor gekozen om de storingsafhandeling en start/stop logica hardwarematig af te handelen. Dit betekent dat de reeds ingestelde PDO’s voldoende zijn voor de communicatie met de regelaars. Om de regelaars goed te laten werken in combinatie met de motion controller moet de IPC weten hoeveel encoderpulsen hij kan verwachten per omwenteling en wat de totale overbrenging is vanaf de motoras tot aan de lineaire beweging van de opstelling. Deze gegevens kunnen ingevoerd worden in de instellingen van de EtherCAT slaves.
Tijdens het opzetten van de communicatie ontstaan al vrij snel problemen. De EtherCAT bus lijkt hardwarematig goed te werken, maar de master lijkt geen verbinding te kunnen maken met de regelaars. Na contact opgenomen te hebben met de Nederlandse distributeur, blijkt dat zij hier ook niet direct een oplossing voor hebben. Na veel zoekwerk blijkt een software update voor CodeSys de oplossing te zijn, echter is hierover geen enkele informatie te vinden op de website van de fabrikant. Na de uitgevoerde update werkt de EtherCAT verbinding uitstekend en kan begonnen worden met het testen van de reeds geschreven motion software. Aan de hand van de wiskundige benadering en de verplaatsing van de motorassen kan bepaald worden of de ontwikkelde motion controller correct werkt en de opgegeven X/Y coördinaten correct vertaalt naar motorposities, zonder de limieten te overschrijden.
2
3
2.3 Realisatie elektromechanisch model
Het systeem zal geschikt zijn voor de aandrijving van een reeds bestelde Hbrug met twee servoassen, die worden aangestuurd met Digitax ST servoregelaars van Control Techniques.
2.3.1 Selectie aandrijving
Voor de Selectie van een geschikte aandrijving is gebruik gemaakt van CTsize. Dit is een selectieprogramma van Control Techniques. In CTsize kunnen alle mechanische gegevens en het benodigde dynamisch gedrag van de opstelling ingevoerd worden. Omdat CTsize geen H‐brug kent is er voor een lopende band gekozen. Deze heeft hetzelfde gedrag als de Tandriem in de H‐brug maar beschikt maar over één motor, hier dient rekening mee gehouden te worden bij de berekening.
Als er vanuit één motor wordt uitgegaan zijn de volgende gegevens van toepassing voor de loopwielen en aandrijving. omtrek = 160mm Massa = 4Kg Diameter 50,93 De resulterende Massatraagheden worden door CTsize berekent.
2
4
De volgende stap is het opgeven van het gewenste bewegingsprofiel. Er is voor gekozen hetdynamisch gedrag voor het maken van een vierkant en een driehoek in te vullen aangezien dit de zwaarste bewegingen zijn. Vierkant BxH = 200x200 mm Acceleratie =7.5 m/s2 Driehoek BxH = 200x200 mm schuine zijde = 200 √2 282.843 Acceleratie =7.5 m/s2
2
5
Na het invoeren van alle mechanische gegevens en het gewenste bewegingsprofiel kan nog eenreductie opgegeven worden zoals een tandwiel, reductiekast, of tandriem. Er is voor gekozen een haakse reductiekast te plaatsen met een ratio van 5:1. Hierdoor kunnen relatief kleine motoren worden geplaatst omdat het koppel bijna 5 maal hoger is aan de uitgaande as van de reductiekast. Door de keuze voor de haakse reductiekast zullen de motoren ook niet recht naar voren steken als deze op de H‐brug worden gebouwd. De massatraagheid en het rendement van de reductiekasten zijn uit de specificaties van de fabrikant gehaald. De laatste stap is het opgeven van het type regelaar en motor dat gebruikt moet worden voor de selectie. CTsize zal vervolgens opgeven welke vermogens van deze types geschikt zijn voor de aandrijving en welke veiligheidsmarges deze hebben. Afhankelijk van de verwachte omgevingstemperatuur, bedrijfsduur en mogelijk zwaardere belastingen in de toekomst moet een veiligheidsmarge in acht genomen worden.
2
6
De keuze voor een Digitax ST servoregelaar stond al vast, echter kan in CTsize een geschikt typegeselecteerd worden met voldoende vermogen. De keuze voor een bepaald type regelaar en motor is soms een kwestie van proberen. CTsize geeft vervolgens aan of deze keuze voldoet en hoeveel marge er nog is. De uiteindelijke keuze is een Digitax ST1204 met een unimotor HD 6000RPM servomotor geworden. hieronder is te zien wat dit betekent voor het systeem. hierin is de koppel‐ toeren karakteristiek van de motor uitgezet en is met kruisjes de benodigde waarde weergegeven. Zolang deze binnen de overeenkomstige lijn blijven betekent dit dat de aandrijving geschikt is.
In bovenstaande resultaten is duidelijk te zien dat de motor veel groter is dan nodig. Door leveringsproblemen met een aantal typen motoren is dit het enige geschikte model wat binnen korte tijd geleverd kan worden. De keuze voor een bepaalde aandrijving wordt dus niet alleen bepaald door de toepassing, maar ook door de levertijden van de aandrijving.
Na het maken van de selectie zijn de motoren en reductiekasten besteld. Het aanbouwen van de reductiekasten aan de motoren doen we zelf. De motoren worden na het aanbouwen van de reductiekasten eerst getest volgens de standaard testprocedures van Control Techniques, dit om een goede werking te garanderen en te controleren of de reductiekasten correct zijn gemonteerd. Een verkeerde montage of productiefouten kunnen leiden tot excessieve slijtage, defecten of oververhitting van de motoren door de wrijving. Door te controleren op “vreemde”geluiden tijdens het draaien en het meten van motorstromen en warmteontwikkeling na ongeveer een half uur draaien, kan bepaald worden of de reductiekasten correct zijn aangebouwd. Na het afronden van de testprocedure wordt een testformulier ingevuld. Hierin zijn de testresultaten van de motoren vastgelegd. De testformulieren zijn bijgevoegd in bijlage 7.
2
7
2.3.2 De motorterugkoppeling Als terugkoppeling voor de snelheid en positie is gekozen voor SinCos EnDat 2.1 Servo encoders. Dit houdt in dat de encoder eigenlijk drie verschillende functies bevat. Om de werking van de encoders te kunnen begrijpen, wordt hier op de volgende pagina’s dieper op in gegaan.
Om de dataoverdracht van de encoders betrouwbaar te maken, wordt er gebruik gemaakt van een differentiële overdracht, waarbij voor ieder signaal een geïnverteerd signaal wordt meegezonden. Dit principe komt overeen met het RS485 protocol, wat veel voor veldbussen wordt gebruikt.
SinCos
Dit is de positieterugkoppeling van de encoder. Deze werkt met een Sinus‐ en een Cosinus generator, die beide 4096 golven per motoromwenteling maken. Door deze signalen te interpoleren, kunnen er 40962 = 16777216 unieke posities per omwenteling geproduceerd worden. Verder wordt er per omwenteling nog een derde signaal gegenereerd om de omwentelingen te tellen. Ook dit signaal bevat 4069 pulsen. Dit betekent dus dat de encoder totaal 16777216 X 4069 unieke posities kan onderscheiden. SinCos signalen in de encoder. Als de maximale waarde echter overschreden wordt, zal de encoder weer beginnen met aftellen naar nul en dus zal een negatieve positieterugkoppeling ontstaan, met als gevolg een snel groeiende volgfout die de regelaar zal proberen te corrigeren door te versnellen met als gevolg een nog sneller toenemende volgfout. De meeste regelaars kunnen dit detecteren en ingrijpen. Voor alleen een snelheidsregeling zal de regelaar dit corrigeren en gewoon doordraaien. Voor een positieregeling zal de regelaar echter geen andere keuze hebben dan stoppen en een foutmelding genereren. Bij het monteren van de motoren op de opstelling moet er dus voor gezorgd worden dat de motoren de maximale positie niet overschrijden.
2
8
EnDat 2.1EnDat 2.1 is een communicatieprotocol, speciaal voor encoders en kan voor verschillende doeleinden gebruikt worden. De verbinding kan gebruikt worden als positieterugkoppeling, klokpuls voor synchronisatie en voor het opslaan van motorgegevens. De positieterugkoppeling wordt in ons geval niet gebruikt, deze is namelijk hetzelfde als de SinCos signalen, alleen beperkt door de Baudrate van het datakanaal. Bij hoogdynamische systemen levert dit vervelende vertragingen op in de terugkoppeling. De klokpuls en de mogelijkheid tot dataopslag zijn echter wel interessant. Zo kan de klokpuls gebruikt worden als watchdog timer om een constante terugkoppeling te garanderen. En de dataopslag kan de totale motormap bevatten, hierin staan alle belangrijke gegevens van de motor en de encoder opgeslagen.
Eenmaal goed ingesteld en opgeslagen hoeft men bij het inregelen alleen maar de motormap uit te lezen. Hierin staan de instellingen voor de encoder en alle parameters voor de servomotor, zoals toerental, motorpolen, nominale motorstroom, maximale spanning, koppelconstante, maar ook de ideale instellingen voor de versterkingsfactor Kp en Ki van de koppelregeling.
Servo
Dit is het belangrijkste signaal om de motor aan te kunnen sturen. In tegenstelling tot een normale Asynchrone 3 fasen motor, heeft de servomotor een permanent magnetische rotor en vaak een veel groter aantal motorpolen. Dit heeft als voordeel dat de motor geen slip en een vaste koppelconstante heeft. Echter betekent dit wel dat de regelaar verteld moet worden welke motorfase hij op welk moment moet aansturen, afhankelijk van de positie van de rotor. Bij een normale Asynchrone motor gaat dit vanzelf, doordat de rotor gemagnetiseerd wordt door de statorstroom.
Door middel van een terugkoppeling van U,V, en W signalen vanuit de encoder, weet de regelaar welke fase hij op welk moment moet aansturen. Dit heeft dus wel gevolgen voor de plaatsing van de encoder op de motoras, Als de UVW signalen van de encoder te veel verschillen met de rotorpositie klopt de terugkoppeling naar de regelaar niet. Een paar graden afwijking kan in de regelaar nog gecorrigeerd worden via een phasingparameter. Hier is het verschil tussen de rotor en encoder vastgelegd. Dit ziet er als volgt uit: UVW‐signalen in de encoder. Phasing in de regelaar. Rotor positie Encoder positie Phasing
2
9
De geselecteerde servomotoren bepalen het benodigde vermogen voor de servoregelaars. Dezeregelaars kunnen al direct op een vaste opstelling gemonteerd worden en ingeregeld worden voor gebruik met de servomotoren en aansturing via EtherCAT vanuit de geschreven software. In de eerste fase zal de software nog getest worden zonder de H‐brug. Ten eerste is deze nog niet binnen, maar op deze manier leidt een fout in de software ook niet tot beschadigingen aan de H‐ brug. Pas als de aansturing van de servomotoren en de positiebegrenzing onder controle is, zullen de motoren op de H‐brug gemonteerd worden. Na het afronden van de “droge” test kan er getest worden met het volledige systeem, dus met de motoren op de H‐brug gemonteerd.
De eerste stap is het uitlijnen van de motorassen met de bewegingsassen. De encoders van de servomotoren geven een positieterugkoppeling naar de regelaar, die dit doorstuurt naar de master. Door de H‐brug op de gewenste nulpositie te zetten en vervolgens de bijbehorende encoderpositie in de software als offset in te stellen, weet de motion controller welke motorpositie overeenkomt met de gewenste X/Y positie. Aangezien alleen de motoren een positieterugkoppeling hebben, zal zowel de huidige als de gewenste X/Y positie altijd berekend moeten worden. Dit wordt gedaan aan de hand van het wiskundige model in de software. Fouten in de berekening zullen dus leiden tot verkeerde posities en mogelijke schade aan de H‐brug.
Het testen verloopt soepel en enkele uren na het aansluiten van de H‐brug is deze in staat gecoördineerde bewegingen te maken. Door een groot vel papier onder de H‐brug te plaatsen en de kop van de H‐brug van een balpen te voorzien, wordt pas echt duidelijk hoe nauwkeurig het systeem is. Zelfs complexe vormen worden zeer nauwkeurig getekend. Door meerdere malen dezelfde vormen te tekenen op hetzelfde stuk papier, wordt de nauwkeurigheid bepaald. Als deze zeer nauwkeurig is, zullen de getekende lijnen steeds op dezelfde plek komen. Afwijkingen zullen resulteren in verschuivingen in de getekende figuur. Zonder verdere aanpassingen werkt de H‐brug naar behoren en is deze in staat herhaaldelijk bewegingen uit te voeren zonder afwijkingen.
3
0
2.4 Realisatie universele motion controller
Het eindproduct is reproduceerbaar voor verkoopdoeleinden en is aan te passen voor de aansturing van 3 of meer assen. In overleg met de fabrikant van de IPC zal deze een Control Techniques brandlabel krijgen.
2.4.1 Brandlabel
Gezien de voorlopig nog kleinschalige afname van IPC’s is een brandlabel nog geen optie. Dit is achteraf gezien ook niet noodzakelijk, aangezien de ontwikkelde motion controller op iedere PC die geschikt is voor CodeSys kan draaien. Dit maakt het eindproduct ook reproduceerbaar en zelfs toepasbaar in bestaande situaties. De uitbreiding voor meerdere assen of andere systemen zal een aanpassing is de software vereisen, maar dit betekent wel dat er altijd een oplossing op maat geleverd wordt. 2.4.2 Aanmaken functieblokken In CodeSys is er een mogelijkheid om zelf functieblokken te schrijven. Hierbij kunnen de benodigde in‐en uitgangsvariabelen aangemaakt worden. Deze worden dan als aansluitingen weergegeven als het functieblok elders in de software aangeroepen wordt. Het voordeel is ook dat de aangemaakte functieblokken meerdere malen gebruikt kunnen worden. Device tree met functieblokken bibliotheek en visualisaties.
Uiteraard is de keuze gemaakt om deze methode te gaan gebruiken en een bibliotheek aan te maken met standaard functies en bijbehorende visualisaties. In eerste instantie is ervoor gekozen om de reeds gemaakte motion controller globaal op te splitsen in functies. hierbij is het volgende onderscheid gemaakt: CNC‐controller Coördinaten transformatie Drive controller Home functie Jog functie Op de volgende pagina’s zal een korte uitleg gegeven worden van deze functieblokken. De volledige code van de functieblokken en het totale programma is bijgevoegd in bijlage 6.
3
1
CNCcontroller
De CNC‐controller vertaalt tekstbestanden met G‐code naar bruikbare positie‐en snelheidsdata voor de coördinaten transformatie. Deze data bestaat uit één string met gegevens. Via een aantal ingangen voor het starten en stoppen van de functie kan de CNC‐controller bediend worden. Hierbij dient zelf nagedacht te worden over de start‐en stoplogica, aangezien dit per toepassing verschilt. Verder kan voor dit functieblok een standaard snelheid, acceleratie en deceleratie opgegeven worden. Deze gegevens worden gebruikt als er geen snelheden zijn opgenomen in de tekstbestanden. Aan de uitgaande kant van het functieblok zijn functies opgenomen zoals statusinformatie en het aansturen van andere functies die afhankelijk zijn van de CNC‐controller.
3
2
Coördinatentransformatie
Dit functieblok vertaalt de door de CNC‐Controller aangeleverde data voor het gewenste type mechanische opstelling en splits dit op in separate positieopdrachten voor iedere as. Ook vertaalt dit functieblok de encoderterugkoppeling naar positiedata voor visualisatiedoeleinden. In de toekomst zullen er nog veel meer transformatiemethodes bijkomen voor andere mechanische opstellingen en systemen, maar voorlopig is dit beperkt tot de H‐brug die voor dit project gebruikt wordt, met als aanvulling een los functieblok voor een derde as.
Omdat de transformatieblokken alleen rekenwerk doen en geen verdere bedieningsfuncties of statusmeldingen bevatten, is ervoor gekozen om hier geen visualisatie voor te maken.
3
3
Drive controller Dit functieblok communiceert direct met de EtherCAT master en handelt de volledige aansturing van de geselecteerde regelaar af. in de controller is de start‐stop logica, de positiecontroller, en een reset functie opgenomen. Bij het toevoegen van een extra regelaar op de EtherCAT bus hoeft in de software dus alleen een drive controller toegevoegd en toegewezen te worden. Het toevoegen van een extra motor‐as is hierdoor zeer eenvoudig geworden. Er kan voor gekozen worden om direct positieopdrachten op te geven aan de controller of deze uit te lezen vanuit een transformatieblok om zo meerdere assen geïnterpoleerd te laten werken.
3
4
Home functie Om de aangestuurde assen in een beginpositie te zetten, is een home functie nodig. Afhankelijk van het type mechanische opstelling en het type terugkoppeling is een bepaalde homing methode vereist, zoals eerder in het rapport al uitgelegd is. De home functie, zoals deze al gebruikt is in de originele software, is hier omgezet naar één functieblok. deze is echter alleen geschikt voor een twee‐assig systeem met absoluut encoders. Voor de aansturing van een derde as is dus nog een extra home functie nodig. Omdat het hier maar om de homing gaat van één enkele as, kan hiervoor een standaard home functie gebruikt worden, waarbij een home‐switch of index puls op de encoder gebruikt kan worden. in het functieblok zijn echter nog wel wat bewakingen opgenomen om er zeker van te zijn dat de homing functie correct is afgerond.
3
5
Jog functie De jog functie maakt het mogelijk om de opstelling “handmatig” te bedienen via toetsen op de IPC. Hiermee kan de opstelling in een veilige positie worden gezet voor werkzaamheden of om producten te verwijderen als deze bekneld zijn geraakt. Zodra de jog functie wordt geactiveerd, worden alle andere functies geblokkeerd. Door de complexe opstelling is ook deze functie weer moeilijk te realiseren, aangezien voor een horizontale of verticale beweging twee assen samen moeten werken. In dit geval kan er geen interpolator gebruikt worden die de onderlinge snelheid berekent en kan ook de standaard H‐brug transformatie niet gebruikt worden. Dit betekent dus dat zowel de draairichting en de onderlinge verhouding van de motoren opgegeven moeten worden in de software en dat beide assen elkaar moeten controleren. Want als één van de regelaars in storing gaat, mag de andere ook absoluut niet meer draaien.
3
6
2.4.3 Visualisatie
Voor het maken van een visualisatie of bedieningspaneel hoeven alleen maar de gewenste schermen toegevoegd te worden en naar wens geplaatst te worden. Als voorbeeld is het volgende scherm gemaakt. Hierin worden de basisfuncties en de onderlinge verhoudingen weergegeven.
3
7
2.5 Systeem voor dagelijks gebruik
De IPC en bijbehorende software kan intern gebruikt worden voor trainingen en testopstellingen, om de kennis van de CodeSys programmeeromgeving te vergroten. 2.5.1 CodeSys in testopstellingen De IPC kan al volledig gebruikt worden voor testdoeleinden waarbij CodeSys vereist is. CodeSys werkt met projecten. Het aanmaken van een ander project zal dan ook geen invloed hebben op de werking van de motion controller. Op dit moment is er nog geen cursusmateriaal geschreven voor het gebruik van CodeSys, maar al een aantal is zelf aan de slag gegaan met CodeSys en uiteraard voorzie ik hen van ondersteuning en uitleg als dit nodig is. 2.5.2 Beursdemonstraties Door het voorspoedige verloop van het project is de H‐brug op de MOCON 2011 gebruikt voor demonstratiedoeleinden. Deze vond plaats op 20 en 21 april in de Brabanthallen, waarbij ik zelf ook aanwezig was als exposant.
Prioriteit werd dus een representatief systeem te bouwen voor beursdoeleinden. Een strak ogend systeem en een goede werking kan mogelijk al op korte termijn potentiële klanten en dus een geslaagd project opleveren.
Om beschadigingen tijdens transport te voorkomen en om de IPC gemakkelijk op te bergen, is deze in een koffer gebouwd. De koffer is waterdicht en stootbestendig. Verder is de koffer uitgerust met een draadloos toetsenbord met muis. De IPC heeft een touchscreen, maar zonder toetsenbord is het programmeren nagenoeg onmogelijk.
3
8
Om demonstraties te kunnen geven op de MOCON beurs is een visualisatie gemaakt met een aantal keuzes voor uit te voeren bewegingen. Achter de opstelling is een Whiteboard gemaakt waarop met een op de H‐brug gemonteerde stift getekend kan worden.
3
9
Het systeem heeft zich tijdens de MOCON 2011 bewezen als stabiel en betrouwbaar systeem en heeft twee dagen lang gedraaid, zonder enkele problemen. Er is behoorlijk wat belangstelling geweest. Voornamelijk ook van Stamhuis, de leverancier van de H‐brug en van ESA, leverancier van de IPC.
4
0
Conclusies
Aan de vraag naar een universele motion controller die feilloos samenwerkt met Control Techniques regelaars is zeker voldaan, echter is het systeem voor simpele Stand‐Alone toepassingen financieel niet aantrekkelijk door de kosten van de IPC en het CodeSys pakket, welke beide veel meer kunnen dat noodzakelijk voor simpele Stand‐Alone toepassingen.
Voor complexe systemen waarbij een hoge functionaliteit gevraagd wordt, kan er juist voordeel behaald worden. Door de veelzijdigheid van CodeSys kan er met één enkele licentie een totaaloplossing geleverd worden voor een gehele productielijn. CodeSys kan in dit geval als master optreden voor verschillende bussystemen en netwerken, complexe PLC programma’s afhandelen en meerdere bedieningsschermen beheren. Normaal gesproken zouden hiervoor aparte pakketten aangeschaft moeten worden. Deze zullen onderling gekoppeld moeten worden via interfaces om informatie uit te wisselen. Ook steeds meer PLC fabrikanten gaan over op een CodeSys gebaseerde programmeeromgeving, waardoor een nog betere aansluiting ontstaat.
Ook in de vraag naar een demonstratiemodel is voldaan. Het systeem heeft zich al bewezen op een beurs en blijkt ook relatief eenvoudig vervoerbaar. Verder zijn er al een aantal haalbaarheidstesten uitgevoerd voor potentiële klanten. Voor het gebruik van het systeem in trainingen zal in de toekomst nog cursusmateriaal geschreven moeten worden, maar een aantal collega’s heeft de mogelijkheid al aangegrepen om zich te verdiepen in de CodeSys omgeving.
Voor de nabije toekomst zijn plannen om de H‐brug uit te rusten met een derde as om ook demonstraties en testen uit te kunnen voeren met zowel een X, Y, als Z‐as. De software is hier momenteel al volledig geschikt voor.
Aanbevelingen
Met de huidige prijzen kost een IPC met CodeSys gemiddeld €4000,‐. Hier komen nog kosten bij voor de benodigde in‐/en uitgangen die normaal in de PLC zijn opgenomen. Afhankelijk van de te maken kosten bij het toepassen van conventionele oplossingen in de vorm van een PLC, motion controller en mogelijk bedieningspanelen moet per project een afweging gemaakt worden.De toepassing van de H‐brug is ook een financiële afweging. Door de lage massa van de bewegende delen kan veel energie bespaard worden en hogere productieaantallen behaald worden. In nieuwe situaties heeft dit dus de voorkeur en ook in de ombouw van bestaande systemen kan dit vaak op lange termijn voordeel opleveren.
Voor te toekomst is het maken van cursusmateriaal met oefenopdrachten aan te bevelen om het systeem volledig te kunnen benutten voor trainingen. De uitbreiding van het systeem met een derde as kan hier een extra dimensie aan geven en is ook een mooie uitbreiding voor demonstraties.
4
1
Bronnenlijst
www.Bahr‐modultechnik.de
Website fabrikant van de H‐brug
www.Stamhuislineair.nl
Website Nederlandse distributeur Bahr‐modultechnik
www.esahmi.com
Website leverancier IPC
www.3s‐software.com
Website fabrikant CodeSys
www.hiflex.nl
Nederlandse distributeur van CodeSys
www.ctsupport.com
Ondersteuningswebsite van Control Techniques, alleen toegankelijk voor medewerkers
4
2
Bijlagen
1. Project management document
Blz. 43
2. Flowchart
Blz. 57
3. Planning
Blz. 58
4. Datasheet H‐brug
Blz. 59
5. CodeSys programma versie1
Blz. 61
6. CodeSys programma versie2
Blz. 74
7. Testrapporten servomotoren
Blz. 96
4
3
Bijlage 1: PROJECT MANAGEMENT DOCUMENT
Besturing van een H‐brug met Digitax ST servoregelaars, EtherCAT en
een CodeSys SoftMotion controller.
Control Techniques BV Projectnummer: 2011.019 Versie: 1.1 Startdatum: 6‐12‐2010 Einddatum: 29‐04‐2011Akkoord Bedrijf : Akkoord Hogeschool: Opsteldatum: 28‐12‐2010 Ad van Genderen Derk Pruisken Student: Michael Eling
4
4
0. Uitvoeringsgegevens
Bedrijfsgegevens: Control Techniques BV Kubus 155 3364 DG Sliedrecht tel 0184‐420 555 fax 0184‐420 721 Bedrijfsbegeleiding: Ad van Genderen ad.vangenderen@emerson.com tel 0184‐420 555 Onderwijsinstelling: Avans Hogeschool Academie voor Techniek en Management Lovensdijkstraat 61 4818 AJ Breda tel 076‐525 05 00 Hogeschoolbegeleiding: Derk Pruisken hp.pruisken@avans.nl Student: Michael Eling Pieter langendijkstraat 32 3351 GP Papendrecht m.eling@student.avans.nl tel 06‐3875 7395
4
5
1. Situatiebeschrijving
Bedrijfskarakteristiek
Control Techniques is marktleider op het gebied van intelligente aandrijf‐ en
besturingssystemen
Als onderdeel van Emerson Industrial Automation is Control Techniques volledig gericht op het ontwerp en de productie van elektrisch regelbare aandrijftechniek. Onze aandrijvingen worden gebruikt voor de besturing van motoren in een groot aantal verschillende toepassingen, uiteenlopend van precisiemachines tot liften met een groot prestatievermogen en van hijskranen tot ventilatoren. De aandrijvingen van Control Techniques bieden voor iedere willekeurige toepassing een effectieve oplossing om de productiviteit te verhogen en het energieverbruik te verlagen.
Grenzeloos zakendoen
Control Techniques is een wereldwijde speler met productie‐ en onderzoeksfaciliteiten in zowel Europa als Azië. Drive & Application Centres op meer dan 50 locaties in 35 landen bieden klanten expertise op het gebied van lokale technische verkoop, diensten en ontwerp. Veel van deze centra bieden ook uitgebreide systeemontwerpen en bouwdiensten.
Onze expertise ligt in uw bedrijfstak
Onze ervaring en expertise op het gebied van een breed scala van toepassingen stellen ons in staat met u samen te werken om de prestaties van uw machines te optimaliseren. Samen kunnen wij het voordeel bieden dat u nodig hebt om de sterke concurrentie van vandaag de dag altijd een stapje voor te blijven.
Uit marktonderzoeken is gebleken dat onze klanten voor Control Techniques kiezen, omdat ze vertrouwen hebben in ons vermogen oplossingen te bieden op de punten waar productprestaties en kwaliteitsondersteuning het meest worden gewaardeerd.
4
6
2.
Doelstellingen.
Aan het eind van het project zal een positioneringsysteem zijn ontwikkeld, die in staat is tweedimensionale vormen te tekenen op een vel papier. Hiervoor zal een twee‐assig servosysteem gebruikt gaan worden, aangedreven door Control Techniques servoregelaars en motoren.
Doel 1
Aan het eind van dit project is een positioneringsysteem gerealiseerd op basis van een CodeSys programmeeromgeving, draaiende op een geschikte Industriële PC (IPC).
Doel 2
De IPC en de servoregelaars zullen onderling communiceren door middel van een EtherCAT verbinding gerealiseerd met een geschikte netwerkadapter voor de IPC, SM‐EtherCAT optiemodules voor de servoregelaars en standaard CAT5e Ethernetkabel.
Doel 3
Het systeem zal geschikt zijn voor de aandrijving van een reeds bestelde H‐brug met twee servo‐ assen, die worden aangestuurd met Digitax ST servoregelaars van Control Techniques.
Doel 4
Het eindproduct is reproduceerbaar voor verkoopdoeleinden en is aan te passen voor de aansturing van 3 of meer assen. In overleg met de fabrikant van de IPC zal deze een Control Techniques brandlabel krijgen.
Doel 5
De IPC en bijbehorende software kan intern gebruikt worden voor trainingen en testopstellingen om de kennis van de CodeSys programmeeromgeving te vergroten.3. Relevante documenten
Onderstaande documenten zijn ter verduidelijking bijgevoegd in de bijlagen: 3. Planning 4.Datasheet H‐brug
4
7
4. Werkzaamheden
Doel 1
1. Opzoeken van systeemvereisten voor CodeSys 2. Selectie maken voor merk en type IPC 3. Na goedkeuring van selectie de IPC bestellen 4. Inrichten van de softwareomgeving 5. Schrijven van de positioneersoftware 6. Schrijven van de communicatieprotocollenDoel 2
1. Opbouwen van een testomgeving 2. Verbinding tot stand brengen tussen IPC en servoregelaars over EtherCAT 3. Testen van de geschreven software in de opgebouwde testomgeving 4. Analyseren van het gedrag van de testopstelling 5. Mogelijk de software aanpassen voor een correcte werkingDoel 3
1. Selecteren van geschikte servomotoren voor de H‐brug 2. Selecteren van geschikt type Digitax ST regelaar 3. Ontwerpen en tekenen van de elektrische installatie 4. Inventariseren van benodigde materialen en systeemkast voor de elektrische installatie 5. Na goedkeuring van het ontwerp het benodigde materiaal bestellen 6. Bepalen van de kastindeling in overleg met de afdeling paneelbouw 7. Paneelbouw opdracht geven voor het bouwen van de systeemkast 8. Servomotoren monteren op de H‐brug9. Montageframe en afscherming maken voor de H‐brug, om een veilige opstelling te realiseren 10. Testprotocol schrijven 11. Systeemkast testen 12. Inregelen van de servoregelaars voor een optimale aandrijving van de H‐brug 13. Testen van het totale systeem in combinatie met de geschreven software
Doel 4/5
1. Schema’s en tekeningen bijwerken tot definitieve versie2. Opschonen van de geschreven software en voorzien van duidelijk commentaar voor aanpassingen in de toekomst
3. Opstellen van documentatie over het totale verloop van het project, met als doel het reproduceerbaar maken van het systeem voor verkoop in de toekomst 4. Back‐up maken van het totale besturingsysteem en geschreven software en bijvoegen bij de documentatie 5. Schrijven van een bedieningshandleiding