• No results found

1. Beckhoff hardware

1.1. Industrial PC

1.1.2. Control Panel

Het Control Panel van Beckhoff dient als interface tussen mens en machine[ CITATION Bec1210 \l 1033 ]21. Een Control Panel van Beckhoff wordt bijvoorbeeld ingezet in combinatie met een Control Cabinet Industrial PC. De display grootte varieert tussen de 5,7 en 24 inch en kan geleverd worden met montage arm of als inbouw component voor bijvoorbeeld in de deur van een schakelkast. Het Control Panel is meestal voorzien van een touch screen, maar er is ook de mogelijkheid om een keyboard en muis aan te sluiten. Verder kan het Control Panel naast het display uitgerust worden met opties zoals functietoetsen, numeriek toetsenbord, alfanumeriek toetsenbord en noodstop. Dit is mogelijk voor ieder Control Panel.

Beckhoff beschikt over drie series op het gebied van Control Panels, deze zijn hieronder toegelicht.

Serie Beschrijving Foto

CP66x

x Dit control Panel is beschikbaar van 5,7 tot 24 inch. Het beschiktover 2 ethernet connectors, 2 USB poorten en 1 seriële poort.

Het Control Panel heeft een integrated PC met 128 MB RAM. Tevens kan dit panel uitgerust worden met TwinCAT run-time voor Windows CE. De voedingsspanning voor dit Control Panel bedraagt 24VDC.

CP69x x CP79x x

Deze control Panels zijn beschikbaar van 5,7 tot 24 inch. Ze beschikken over geïntegreerde DVI/USB technologie en kunnen zodoende op 50m afstand van de PC gebruikt worden. Verder bevatten de Control Panels 2 USB poorten. De

voedingsspanning bedraagt 24VDC.

1.1.3. Panel PC

Een Panel PC van Beckhoff is een combinatie tussen een Control Panel en een Control Cabinet Industrial PC in een[ CITATION Bec1211 \l 1033 ]22. Door het gebruik van hoogwaardige

componenten kunnen bediening, controle en bewaking van een machine allen uitgevoerd worden door een Panel PC. De Panel PC is beschikbaar in afmetingen van 5,7 tot en met 24-inch en kan uitgevoerd worden met verschillende processors. Verder kan het Panel PC naast de display uitgerust worden met opties zoals functietoetsen, numeriek toetsenbord, alfanumeriek toetsenbord, PLC toetsen en noodstop. Een Panel PC kan geplaatst worden in bijvoorbeeld de deur van de schakelkast, maar ook aan montagearm.

Beckhoff beschikt over acht verschillende series op het gebied van Panel PC’s, deze zijn hieronder toegelicht. Serie Beschrijving CP62x x CP72x x C33xx C36xx

De beste processor voor de CP62xx en CP72xx is de Intel® Core™2 Duo 2.53 GHz. Het geheugen bedraagt 1 GB DDR3 RAM en is uitbreidbaar tot 8 GB. Verder beschikt deze Panel PC over 2x ethernetpoorten, 1x seriële RS232 poort, 4x USB 2.0 poorten en DVI-I connector. De harde schijf bedraagt 80 GB en het geheel wordt gevoed door 24VDC. De C33xx en C36xx wordt echter gevoed door 100-230VAC en bevat een harde schijf van 320GB.

CP64x x CP71x x

De beste processor voor de CP64xx en CP71xx is de Intel® Core™2 Duo 2.16 GHz. Het geheugen bedraagt 1 GB DDR2 RAM en is uitbreidbaar tot 3 GB. Verder beschikt deze Panel PC over 2x ethernetpoorten, 4x seriële RS232 poort en 8x USB 2.0 poorten. De harde schijf bedraagt 80 GB en het geheel kaan gevoed worden door 24VDC maar ook door 100-240VAC. De CP71xx bevat ook nog een DVD/CD drive.

CP65x

x De beste processor voor de CP62xx is de Intel® Core™2 Duo 2.53 GHz. Het geheugen bedraagt 1 GBDDR3 RAM en is uitbreidbaar tot 8 GB. Verder beschikt deze Panel PC over 2x ethernetpoorten, 4x seriële RS232 poort, 12x USB 2.0 poorten en DVI-I connector. De harde schijf bedraagt 320 GB en het geheel wordt gevoed door 100-240VAC.

CP77x

x De beste processor voor de CP77xx is de Intel® Atom™1.6 GHz. Het geheugen bedraagt 1 GB DDR2 RAM en is uitbreidbaar tot 2 GB. Verder beschikt deze Panel PC over 2x ethernetpoorten, 1x seriële RS232 poort en een DVI-I connector. Tevens is deze Panel PC uitgerust met CD/DVD drive. De Compact Flash Card bedraagt 64 MB en het geheel wordt gevoed door 24VDC. Het operating

system is Microsoft Windows CE 6. 1.1.4. Bus coupler

Daarnaast heeft Beckhoff Bus Couplers ontwikkeld om een EtherCAT Terminal System te koppelen met andere veldbusprotocollen[ CITATION Bec1212 \l 1033 ]23. De EtherCAT Bus Coupler wordt dan vervangen door een Bus Coupler met het gewenste protocol. Een overzicht van de beschikbare Bus Couplers met EtherCAT terminals wordt in onderstaande tabel weergegeven.

Veldbusprotocol Naam Type

Profibus PROFIBUS Bus Coupler EK3100

CAN open CANopen Bus Coupler EK5100

DeviceNet DeviceNet Bus Coupler EK5200

Ethernet Ethernet Bus Coupler EK9000

Profinet PROFINET IO Bus Coupler EK9300

Profinet PROFINET IRT Bus Coupler EK9310

EtherNet/IP EtherNet/IP Bus Coupler EK9500

Sercos interface SERCOS III Bus Coupler EK9700

Waar E-bus de interne terminal bus van EtherCAT Terminal Systems is, is K-bus dit bij het traditionele Terminal System van Beckhoff. Het traditionele Terminal System van Beckhoff kan eveneens als het EtherCAT Terminal System gekoppeld worden aan verschillende veldbusprotocollen. Dit zijn niet dezelfde Bus Couplers als bij de EtherCAT couplers, omdat de EtherCAT couplers gebruik maken van E- bus als interne terminal bus. Het enige verschil met de EtherCAT couplers is dat het traditionele Terminal System gebruik maakt van K-bus.

Hieronder is een overzicht terug te vinden met welke veldbusprotocollen het traditionele Terminal System verbonden kan worden.

Veldbusprotocol Naam Type

EtherCAT EtherCAT Bus Coupler BK11xx

LightBUS Lightbus Bus Coupler BK20xx

Profibus PROFIBUS Bus Coupler BK30xx

InterBus Interbus Bus Coupler BK40xx

CANopen CANopen Bus Coupler BK51xx

DeviceNet DeviceNet Bus Coupler BK52xx

ControlNet ControlNet Bus Coupler BK7000

CC-link CC-Link Bus Coupler BK7150

ModBus Modbus Bus Coupler BK73xx

Fipio Fipio Bus Coupler BK7420

Sercos SERCOS Bus Coupler BK75xx

RS485 RS485 Bus Coupler BK8000

RS232 RS232 Bus Coupler BK8100

Ethernet TCP/IP EternetTCP/IP Bus Coupler BK90xx

Profinet PROFINET Bus Coupler BK9103

Ethernet/IP EtherNet/IP Bus Coupler BK9105

USB USB Bus Coupler BK9500

2. TwinCAT

De embedded PC’s worden geprogrammeerd via het TwinCAT platform. TwinCAT staat voor “The Windows Control and Automation Technology”. Dit platform is opgebouwd uit verschillende lagen, elke laag voegt meer functionaliteit aan het automatiserings platform toe.

Hieronder staat een afbeelding die alle verschillende lagen van het TwinCAT systeem weergeeft.

Afb. 47 – TwinCAT lagen

Elk van deze lagen biedt extra functionaliteit ten opzichte van de onderliggende laag. De verschillende lagen staan hieronder beschreven.

Product Beschrijving

TwinCAT CP Dit is een display driver om Beckhoff (touch)panels aan te

sluiten op een standaard computer.

TwinCAT I/O Hiermee is het mogelijk om I/O die een embedded PC bevat

aan te sturen zonder de PLC runtime.

TwinCAT PLC Hiermee wordt de embedded PC een IEC-61131 PLC en kan

zodoende geprogrammeerd worden via de TwinCAT software. TwinCAT NC PTP / NC I / CNC Met deze opties is het mogelijk om motion en CNC

toepassingen uit te voeren met een Beckhoff embedded PC. Voor dit onderzoek is geen motion control benodigd en valt buiten de scope van het onderzoek, vandaar dat het enkel benoemd zal worden en niet verder behandeld wordt.

Naast deze standaard pakketten levert Beckhoff een aantal toevoegingen, ook wel Supplements genoemd. Dit zijn extra pakketten of bibliotheken die specifieke taken toevoegen, enkele voorbeelden hiervan zijn:

Product Beschrijving Benodigd

TwinCAT SMS/SMTP server Verstuur SMS en email berichten vanaf een Beckhoff controller

TwinCAT I/O, TwinCAT PLC

TwinCAT PLC Building

Automation Voegt een extra bibliotheek toemet componenten voor de

TwinCAT PLC

gebouwautomatisering

2.1. TwinCAT I/O

TwinCAT I/O is de minimale vereiste module die op een Beckhoff controller aanwezig moet zijn om te kunnen communiceren met de I/O kaarten. Deze module kan op verschillende software platformen draaien, op een volledige Windows server of op een embedded PC.

De controller zal dan geen logica uitvoeren, maar enkel I/O uitlezen en aansturen als daar commando’s toe komen. [ CITATION Bec15 \l 1033 ]24

2.2. TwinCAT PLC

De meest gebruikte functionaliteit van het TwinCAT platform is de PLC module. Hiermee wordt de embedded PC omgezet in een krachtige IEC 61131-3 PLC. De PLC wordt direct vanuit de software van Beckhoff geprogrammeerd.

De IEC 61131-3 standaard beschrijft een aantal programmeertalen voor PLC’s. Hieronder vallen ladder, functieblok, structured text en enkele anderen. TwinCAT PLC kan alle van deze talen aan en ook combinaties hiervan. Daarnaast kunnen ook flowcharts geprogrammeerd worden met TwinCAT PLC.

Binnen TwinCAT wordt veelvuldig gebruik gemaakt van bibliotheken. Zo levert Beckhoff een speciale bibliotheek voor gebouwautomatisering, motion control, speciale veldbussen. Hierdoor kan de ontwikkelingstijd ingekort worden wanneer er in een bepaalde branche gewerkt wordt. [ CITATION Bec14 \l 1033 ]25

2.3. TwinCAT ADS

TwinCAT ADS is het universele communicatie protocol van Beckhoff, deze interface maakt van een server of werkstation met Windows of een embedded Windows apparaat een TwinCAT node. Via deze methode kan een Windows applicatie communiceren met een Beckhoff apparaat die de TwinCAT PLC of I/O runtime heeft draaien. De ADS DLL is in tegenstelling tot de PLC en I/O runtime gratis verkrijgbaar.

De schematische werking hiervan is hieronder afgebeeld:

Harm Bastiaansen 49 Reditech Engineering

Afb. 49- TwinCAT system overview

Elke apparaat die de TwinCAT ADS software heeft draaien kan communiceren met een ander ADS apparaat, zoals een embedded PC of een Industrial PC. Deze communicatie verloopt over standaard TCP/IP en kan daarom over bestaande ethernet netwerken. [ CITATION Bec13 \l 1033 ]26

3. EtherCAT

EtherCAT is een veldbus die oorspronkelijk ontwikkeld is door Beckhoff, de standaard wordt nu onderhouden door de EtherCAT Technology Group. Het is een real-time ethernet veldbus waarmee data van I/O eilanden in het veld uitgelezen en geschreven kan worden.

3.1. Werking

Met traditionele veldbussen wordt data door de master op de bus gezet, deze data wordt door alle deelnemers ingelezen en verwerkt tot de lokale bus of backplane om vervolgens bij een input of output terecht te komen. Dit zorgt voor een

vertraging bij elke deelnemer.

EtherCAT lost dit op door de backplane van de deelnemers ook EtherCAT te laten

gebruiken, de enige omzetting die nodig is, is de fysieke ethernet verbinding omzetten tot de interne busverbinding die ook op

EtherCAT werkt. Dit is een volledig

hardwarematige omzetting die zeer efficiënt is. De datastructuur blijft volledig intact. [ CITATION Eth12 \l 1033 ]27

Vanwege het feit dat EtherCAT full-duplex is, wat wil zeggen dat er tweeweg verkeer is,

bestaat het netwerk uit een loop. Hierdoor kan er nooit een botsing optreden tussen de data telegrammen.

De definitie van een deelnemer is ook anders ten opzichte van traditionele bus systemen. Aangezien het EtherCAT protocol doorgetrokken wordt tot de bus terminal, zal elke bus terminal op zich zelf een deelnemer zijn. Als voorbeeld een I/O eiland met twee terminals, dit eiland bestaat in totaal uit drie

Harm Bastiaansen 50 Reditech Engineering

deelnemers; als eerste de buscoupler en vervolgens de twee bus terminals. [ CITATION Eth123 \l 1033 ]28

Adressering wordt door de master gedaan, er zijn verschillende manieren van adressering. Maar de meest geschikte voor cyclische data is de logische

adressering.[ CITATION Eth123 \l 1033 ]28 Via deze methode worden deelnemers niet direct geadresseerd, maar maken ze deel uit van een proces-image die meerdere deelnemers kan beslaan. De koppeling van fysieke adressen naar logische adressen wordt in de master bepaald en verzonden naar de deelnemers tijdens de opstart fase. Elke deelnemer bevat een Fieldbus Memory Management Unit (FMMU) die de verwerking van het logische adres naar een fysiek adres zal uitvoeren. Elke deelnemer apart zal de volgende onderdelen configureren:

 Een logisch adres  Een fysiek adres  Data lengte

 Type (inputs en/of outputs)

Als een deelnemer een telegram krijgt met een logische adressering zal hij kijken of de data voor hem bestemd is. Zo ja, dan zal hij op de juiste plek data uitlezen of wegschrijven. Dit gebeurd tijdens het verwerken van het telegram, er is dus een minimale vertraging bij elke deelnemer.

De laatste deelnemer in het veld zal het telegram terugsturen over de retourlijn naar de master. Dit zorgt voor een gesloten systeem. De deelnemer kan zelf waarnemen of hij het laatste element in het netwerk is, hierdoor is diagnose bij een lijnbreuk eenvoudig uit te voeren.

Een korte samenvatting van de functionaliteit van EtherCAT:

 EtherCAT rechtstreeks tot de busterminal, geen tijdrovende omzetters  Adressering vanuit centraal punt

 Hardwarematige verwerking  Full-Duplex ethernet

3.2. Hardware

EtherCAT is ontworpen om met de standaard ethernet controller in een PC te werken. Hierdoor worden er geen bijzondere eisen aan de master zijde gevraagd. Bij de EtherCAT master kan dus een standaard ethernetpoort gebruikt worden, dit zorgt er voor dat elke willekeurige PC een EtherCAT master kan zijn. [ CITATION Eth122 \l 1033 ]29

Aan de deelnemers kant is echter wel een speciale chip vereist om de real-time bewerkingen op het data telegram uit te voeren.

Harm Bastiaansen 51 Reditech Engineering

3.3. Configuratie

Net als elk ander netwerk moet EtherCAT geconfigureerd worden. Omdat bij EtherCAT de deelnemers en vooral de posities daarvan van te voren bekend moeten zijn is een goede configuratie belangrijk. In onderstaande afbeelding is de configuratie van een EtherCAT netwerk schematisch weergegeven.

Afb. 52 - EtherCAT configuratie

Er zijn twee belangrijke elementen te ontdekken die zorgen voor een compleet netwerk configuratie:  Slave configuratiebestand (ESI bestand)

 Master configuratiebestand (ENI bestand)

Elk van deze bestanden is opgebouwd volgens het Extensible Markup Language (XML) formaat. Dit is een universele notatie van data. [ CITATION Eth121 \l 1033 ]30

Er zijn verschillende EtherCAT masters op de markt, het TwinCAT pakket van Beckhoff biedt direct ondersteuning aan EtherCAT zodat met een Beckhoff PLC een EtherCAT netwerk direct

geprogrammeerd kan worden.

Wanneer een ander programma een EtherCAT netwerk moet aansturen, bijvoorbeeld AutomationX, dan is er een losse EtherCAT master vereist.

4. Object oriëntatie

AX5 werkt volgens het Object Oriëntatie (OO) principe. Deze techniek wordt veelal gebruikt bij hogere programmeertalen zoals VB.Net en C#. AX5 probeert deze techniek gebruiksvriendelijk toe te passen op de automatiseringstechniek.

Bij object georiënteerd programmeren wordt er gewerkt met classes en objecten. Een class is een blauwdruk van een object. Als voorbeeld nemen we een auto, van een bepaald type auto zijn waarschijnlijk duizenden exemplaren gemaakt. Elk exemplaar is een object wat gebouwd is aan de hand van de blauwdruk. Deze blauwdruk beschrijft precies hoe de auto eruit moet zien, hoe hij werkt en welke functionaliteit hij bevat. Zo werkt het binnen software ook, de class wordt eenmaal

beschreven en kan eindeloos aangeroepen als object.

Object georiënteerd programmeren bestaat onder andere uit de volgende basis principe, deze principes worden ondersteund door AX5.

Harm Bastiaansen 52 Reditech Engineering

4.1. Encapsulatie

Met encapsulatie wordt er voor gezorgd dat de werking van een class onbekend of irrelevant is voor de buitenwereld. Het zorgt ervoor dat enkel bepaalde functies of eigenschappen bekend zijn voor de buitenwereld. [ CITATION Sum12 \l 1033 ]31 [ CITATION Wik123 \l 1033 ]32

Hierdoor kan een complex proces verwerkt worden tot een eenvoudig object met een set van parameters. Dit zorgt ervoor dat complexe kennis bewaard en gebruikt kan worden door enkel de juiste koppelingen te leggen.

Dit is het principe waar AX5 het zwaarst aan trekt. De bedoeling is dat experts hun kennis in verschillende functieblokken opslaan. Deze blokken kunnen dan vervolgens aan minder ervaren engineers gegeven worden die het blok ook kan gebruiken ondanks dat hij niet alle kennis heeft over het proces dat zich in het blok afsleept. Dit kan gerealiseerd worden door het opzetten van een duidelijke interface en/of parameter set.[ CITATION Aut121 \l 1033 ]33

4.2. Aggregatie

Bij aggregatie wordt door het samenvoegen van verschillende objecten, plus interface logica, een nieuwe class gecreëerd. Deze class bestaat dan uit meerdere objecten die samen een samenhangend geheel vormen. [ CITATION Ato12 \l 1033 ]34

Een voorbeeld van een aggregatie class is een transportband, een transportband bestaat vaak uit een motor en enkele sensors. Als er een motor en sensor class bestaat dan kunnen deze samengevoegd worden en met interface logica tot een transportband geprogrammeerd worden.

Binnen AX5 is deze manier van werken mogelijk, binnen een class kan een andere class aangeroepen worden, dit worden dan Compositions genoemd.

4.3. Overerving

Door middel van overerving kan een class als basis een andere class hebben. Dit wil zeggen dat een nieuwe class alle functionaliteit overerft van een andere class, hierdoor kan er extra functionaliteit aan een bestaande class toegevoegd worden. [ CITATION Ato121 \l 1033 ]35

Dit principe wordt niet ondersteund door AX5, om het eenvoudig en toegankelijk te houden wordt er meer naar de vorm van aggregatie gestuurd.

Harm Bastiaansen 54 Reditech Engineering

Afb. 54 - Aggegratie