Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Workshop
IT-Powered Automation
Multifunctionele besturingen
Voorjaar 2016
Inhoudsopgave
1 Beschrijving van de hardware 1
1.1 Structuur van de starterkits . . . . . . . . . . . . . . . . . . . . . ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
3 Aanmaken van een project met de ILC131 26
3.1 Nieuw ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
6 Ladder 73
6.1 Voorbeeld: Transportband . . . . . . ....
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
12 Modbus 119
12.1 De 1x1-reeks . . . . . . . . . . . ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
15.6.1 Verbinding met controller maken . . . . . . . ....
1 Beschrijving van de hardware
1.1 Structuur van de starterkits
1.1.1 ILC131 starterkit
De ILC131 starterkit is een combin...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
1.1.2 AXC1050 starterkit
De AXC1050 starterkit is een ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
1.2 Phoenix Contact
1.2.1 Overzicht van de PLC’s
Phoen...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Tabel 1.1: Specificaties voor ILC’s binnen de 100-reeks...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Tabel 1.3: Specificaties voor ILC’s binnen de 400-reeks...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Tabel 1.5: Specificaties voor Axiocontrollers binnen de...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
1.2.2 Specifieke kenmerken voor de 100-reeks
ILC131 ETH...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
– 2 Ethernetpoorten
– Modbus-client geïmplementeerd (1...
2 IEC 61131-3
2.1 Inleiding
De IEC 61131 STANDAARD is een internationale standaard voor programmeerbare sturingen
(PLC’s, ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
2.2 Structuur van een applicatie volgens de IEC 61131-...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 2.1: Structuur van een applicatie volgens de IE...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
2.3 POU’s
POU staat voor Program Organisation Units en...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
2.4 Functies
2.4.1 Algemeen
Een functie is een softwar...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
• Bit stringfuncties (SHL, SHR, ROR, ROL).
• Booleaans...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
2.5 Functiebouwstenen
2.5.1 Algemeen
Een functieblok i...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
2.6 Programma’s
2.6.1 Algemeen
Een programma is een gr...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
2.7 Naamgeving
De naamgeving van variabelen is onderwo...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Tabel 2.2: Overzicht van prefixen binnen een functiebou...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
2.8 Datatypes
2.8.1 Numerieke datatypes
De volgende ta...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
2.8.3 Time-gebaseerde datatypes
De volgende tabel toon...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
2.8.4 Array
‘Array’ datatype is een structuur van vers...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Definitie van variabelen
VAR
udtProductielijn_1 : udtRe...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
2.9 Structured Text
Specifiek aan structured text zijn ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
CASE
CASE <integer expression> OF
<integer value_1> : ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
REPEAT... UNTIL
REPEAT
<statement>;
<statement>;
<stat...
3 Aanmaken van een project met
de ILC131
3.1 Nieuw project aanmaken
1. Selecteer “New Project” onder het menu “File” om ee...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Ieder project wordt opgeslagen als een ∗.mwt bestand e...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
3.2 Structuur nieuw project conform de IEC 61131-3
Fig...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
3.3 Aanpassen van de projectinformatie
3.3.1 Bus config...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 3.6: Configuratie
Figuur 3.7: Ipconfig
Vast IP-ad...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Er wordt gebruik gemaakt van IPv4, dus moeten de eigen...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
3.4 IP configuratie van de controller
3.4.1 Algemeen
De...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
3.4.2 Aanpassen IP-adres via de BootP Server (m.b.v. P...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
3.4.3 Aanpassen IP-adres via de IP Assigment Tool (IPA...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 3.16: Wachten op bevestiging
6. Wacht tot de aa...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
3.4.4 Communicatie opzetten tussen PC en plc
Eens bij ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
3.5 De INTERBUS configuratie
Eens het communicatiepad a...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
• Klik hiervoor op de controller, rechtermuistoets en ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
3.6 Compileren en downloaden
Het project bevat nu alle...
4 Aanmaken van een project met
de AXC1050
4.1 Nieuw project aanmaken
1. Selecteer “New Project” onder het menu “File” om e...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Ieder project wordt opgeslagen als een ∗.mwt bestand e...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
4.2 Structuur nieuw project conform de IEC 61131-3
Fig...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
4.3 Aanpassen van de projectinformatie
4.3.1 Bus config...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 4.6: Ipconfig
Vast IP-adres kiezen Om een vast I...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 4.8: IPv4-eigenschappen selecteren
Figuur 4.9: ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
4.4 IP configuratie van de controller
4.4.1 Algemeen
De...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
4.4.2 Aanpassen IP-adres via de IP Assigment Tool (IPA...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 4.13: Wachten op bevestiging
6. Wacht tot de aa...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
4.4.3 Aanpassen IP-adres via DCP in PC Worx
Het Discov...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 4.17: AXC1050 in lijst van beschikbare Profinet ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 4.19: Succesvolle toekenning van de IP-settings...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
4.4.4 Aanpassen IP-adres via USB-interface in PC Worx
...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 4.24: IP-settings succesvol verzonden
4 Aanmake...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
4.4.5 Communicatie opzetten tussen PC en PLC
Eens bij ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
4.5 De AXIOLINE configuratie
Nu het communicatiepad tus...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 4.28: Gevonden modules
Figuur 4.29: Uiteindelij...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
4.6 Compileren en downloaden
Het project bevat nu alle...
5 Uitgewerkt
Voorbeeldprogramma
5.1 Inleiding
Hieronder wordt een eenvoudig voorbeeldprogramma stap voor stap omschreven. ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
5.2 Opdrachtomschrijving
Na een correcte hardwareconfig...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
5.3 Uitwerking
Eerst en vooral moet er omgeschakeld wo...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
– SYSTEM variabelen
Systeem variabelen zijn voorgedefin...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
– USER variabelen
Naast de systeemvariabelen zal de ge...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Vervolgens moet de POU in het window “Insert” verder g...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 5.7: POU groep toevoegen
In deze opdracht zulle...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Opmerking: Indien het niet mogelijk is om de ‘Definitio...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 5.10: Nieuwe functieblok aanmaken
• Bevestig me...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
“oRS_StartStop”, wijzig de Local Variable Group naar “...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
– Klik op een plaats in het werkblad, klik rechtermuis...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 5.16: Lijst met variabelen van de functieblok “...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 5.19: On-board input toevoegen
• Kies voor Glob...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Door het schakelen van de derde schakelaar op de switc...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Naam Data type Usage Scope Local Var.
Groups
Global Va...
6 Ladder
6.1 Voorbeeld: Transportband
Om de programmeertaal Ladder Diagram uit te leggen wordt er gewerkt met de basisoefe...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
• Voeg een nieuw netwerk in via:
Figuur 6.2: Werkbalk ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 6.5
• Doe hetzelfde over coil ‘C001’. Hier word...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 6.7: Uiteindelijk resultaat
6 Ladder 76
7 Structured Text
7.1 Voorbeeld: Transportband
• Maak een nieuwe functieblok aan volgens figuur7.1, selecteer de programmee...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
– Typ de gewenste variabele(n) in. Selecteer de variab...
8 WebVisit
8.1 Inleiding
WebVisit is een softwarepakket dat mee geínstalleerd wordt tijdens het installeren van PC
WorX. M...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
gepast worden zoals in figuur 8.3: een OR- poort wordt ...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
8.2 Een project uitwerken in WebVisit
Start de WebVisi...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
– In het tabblad ‘Runtime Configurations’ onder de ‘Pro...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 8.7: Nieuwe webpagina aanmaken
• Geef de eerste...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 8.9
• Dubbelklik op de bovenste button om de ei...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 8.10
• Nu moet er ingesteld worden wat er gebeu...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
(a) PPO instellen (b) Muisactie instellen
Figuur 8.11:...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 8.13: Kleur veranderen in ‘Border Advanced’ eig...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 8.14: Conditioneel tussen 2 kleuren switchen
Hi...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 8.17: Jump actie naar specifieke pagina instelle...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
8.2.4 Downloaden van het project
Nu de HTML pagina aan...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
8.3 Uitbreiding
8.3.1 Figuur invoegen
• Selecteer de o...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 8.24: Background instellen voor een project
Opm...
9 Analoge signaalverwerking met
de ILC
9.1 Functiebouwsteen voor analoge signaalverwerking
Om het toekennen van procesdata...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 9.3: Aanmaken in- en outputvariabele
• Uiteinde...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 9.5: Proceswoord ingangsmodule
• De potentiomet...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
Figuur 9.7
9 Analoge signaalverwerking met de ILC 96
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
9.2 Functie
De zopas uitgevoerde opdracht is louter da...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
9.3 Watch Window
Figuur 9.9
Een andere handige mogelij...
IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT
9.4 Opdracht temperatuursmeting
De potentiometer wordt...
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"
Upcoming SlideShare
Loading in …5
×

Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"

2,009 views

Published on

Workshop IT-powered AUTOMATION - multifunctionele besturingen

In deze workshop leert u hoe u kleine tot middelgrote automatiseringsuitdagingen voordelig kunt automatiseren en in uw bedrijfsnetwerk kunt integreren.
De compacte besturing ILC 150 ETH biedt u hiervoor de perfecte oplossing en onderscheidt zich niet alleen door modulaire uitbreidingsmogelijkheden, eenvoudige programmering en een hoge performance. Dankzij open automatiserings- en IT-interfaces zoals Interbus, Ethernet TCP/IP, FTP, SNMP of HTTP, laat deze compacte besturing zich naadloos in nagenoeg elk netwerk integreren.
Overtuig u zelf van deze communicatieve mogelijkheden en leer hoe eenvoudig de compacte besturing en de onboard web-server kunnen worden geprogrammeerd. Ook zult u in deze workshop ervaren hoe eenvoudig de Ethernetcommunicatie met een grafisch panel kan worden gerealiseerd, de PLC via een GSM-modem SMS-jes kan versturen en hoe er data tussen de PLC en een applicatie op een PC kan worden uitgewisseld!
Geef u snel op voor deze inspirerende workshop, ontdek de voordelen van deze compacte besturing en ga na de workshop direct aan de slag met de gratis starterkit!
In deze workshop leert u:
• De PLC programmeren volgens IEC 61131
• De PLC web-server programmeren
• Hoe de communicatie tussen de PLC en een grafisch panel, een PC en een GSM-modem via Ethernetgerealiseerd kan worden.
De gratis starterkit bestaat uit:
• Inline Controller ILC 150 ETH
• Voeding STEP –PS-100-240AC/25DC/1.5
• Inline-analoge uitgangsklem IB IL AO 1/U/SF-PAC
• Inline-analoge ingangsklem IB IL AI 2/SF-ME
• Programmeersoftware PC WORX
• CD-rom “Starterkit ILC 150 ETH” incl. documentatie en voorbeeldprogramma
Voorkennis:
• In deze workshops gaan we er van uit uit dat u enige ervaring heeft met het programmeren van PLC's in het algemeen. Indien u dit niet heeft dan vragen wij u dit aan te geven in het 'Vragen, wensen of opmerkingen' veld. Wij nemen dan contact met u op om voor u een speciale training te organiseren.
Aantal deelnemers: maximaal 12 personen
Kosten: € 795,00 inclusief gratis starterkit

Published in: Technology
  • Be the first to comment

Phoenix Contact, workshop "IT-powered AUTOMATION - multifunctionele besturingen"

  1. 1. Workshop IT-Powered Automation Multifunctionele besturingen Voorjaar 2016
  2. 2. Inhoudsopgave 1 Beschrijving van de hardware 1 1.1 Structuur van de starterkits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1.1 ILC131 starterkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1.2 AXC1050 starterkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 Phoenix Contact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2.1 Overzicht van de PLC’s . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2.2 Specifieke kenmerken voor de 100-reeks . . . . . . . . . . . . . . . . . . 7 1.2.3 Specifieke kenmerken voor de AXC1050 . . . . . . . . . . . . . . . . . . . 8 2 IEC 61131-3 9 2.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2 Structuur van een applicatie volgens de IEC 61131-3 norm . . . . . . . . . . . . 10 2.3 POU’s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.4 Functies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.4.1 Algemeen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.4.2 Variabelen en functies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.4.3 Standaardfuncties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.5 Functiebouwstenen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.5.1 Algemeen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.5.2 Variabelen en functiebouwstenen . . . . . . . . . . . . . . . . . . . . . . 15 2.5.3 Standaardfunctiebouwstenen . . . . . . . . . . . . . . . . . . . . . . . . 15 2.6 Programma’s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.6.1 Algemeen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.6.2 Variabelen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.7 Naamgeving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.7.1 Benaming binnen een functiebouwsteen . . . . . . . . . . . . . . . . . . 17 2.7.2 Benaming binnen een programma . . . . . . . . . . . . . . . . . . . . . . 17 2.7.3 Benaming van user defined datatypes . . . . . . . . . . . . . . . . . . . . 18 2.8 Datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.8.1 Numerieke datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.8.2 Bitgebaseerde datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.8.3 Time-gebaseerde datatypes . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.8.4 Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.8.5 Struct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.8.6 String . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.9 Structured Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.9.1 Selectie statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.9.2 Iteratie statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Inhoudsopgave i
  3. 3. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 3 Aanmaken van een project met de ILC131 26 3.1 Nieuw project aanmaken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.2 Structuur nieuw project conform de IEC 61131-3 . . . . . . . . . . . . . . . . . . 28 3.3 Aanpassen van de projectinformatie . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.3.1 Bus configuratie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.3.2 IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.3.3 IP configuratie van uw PC . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.4 IP configuratie van de controller . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3.4.1 Algemeen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3.4.2 Aanpassen IP-adres via de BootP Server (m.b.v. PC WorX) . . . . . . . . 33 3.4.3 Aanpassen IP-adres via de IP Assigment Tool (IPAssign) . . . . . . . . . . 34 3.4.4 Communicatie opzetten tussen PC en plc . . . . . . . . . . . . . . . . . . 36 3.5 De INTERBUS configuratie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.6 Compileren en downloaden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4 Aanmaken van een project met de AXC1050 40 4.1 Nieuw project aanmaken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.2 Structuur nieuw project conform de IEC 61131-3 . . . . . . . . . . . . . . . . . . 42 4.3 Aanpassen van de projectinformatie . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.3.1 Bus configuratie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.3.2 IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.3.3 IP configuratie van uw PC . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.4 IP configuratie van de controller . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4.4.1 Algemeen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4.4.2 Aanpassen IP-adres via de IP Assigment Tool (IPAssign) . . . . . . . . . . 47 4.4.3 Aanpassen IP-adres via DCP in PC Worx . . . . . . . . . . . . . . . . . . . 49 4.4.4 Aanpassen IP-adres via USB-interface in PC Worx . . . . . . . . . . . . . 52 4.4.5 Communicatie opzetten tussen PC en PLC . . . . . . . . . . . . . . . . . 54 4.5 De AXIOLINE configuratie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 4.6 Compileren en downloaden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 5 Uitgewerkt Voorbeeldprogramma 58 5.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 5.2 Opdrachtomschrijving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 5.3 Uitwerking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 5.3.1 Definiëren van de variabelen . . . . . . . . . . . . . . . . . . . . . . . . . 60 5.3.2 Aanmaken van een nieuwe POU . . . . . . . . . . . . . . . . . . . . . . . 62 5.3.3 Aanmaken van een nieuwe POU groep . . . . . . . . . . . . . . . . . . . 63 5.3.4 Aanmaken van een variabele . . . . . . . . . . . . . . . . . . . . . . . . . 64 5.3.5 Aanmaken van een functieblok “Transportband” . . . . . . . . . . . . . . 65 5.3.6 Het hoofdprogramma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 5.3.7 Testen van het programma . . . . . . . . . . . . . . . . . . . . . . . . . . 70 5.3.8 Deel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Inhoudsopgave ii
  4. 4. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 6 Ladder 73 6.1 Voorbeeld: Transportband . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 7 Structured Text 77 7.1 Voorbeeld: Transportband . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 8 WebVisit 79 8.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 8.2 Een project uitwerken in WebVisit . . . . . . . . . . . . . . . . . . . . . . . . . . 81 8.2.1 Een nieuw project aanmaken . . . . . . . . . . . . . . . . . . . . . . . . . 81 8.2.2 Een nieuwe webpagina aanmaken . . . . . . . . . . . . . . . . . . . . . 82 8.2.3 Compileren van het project . . . . . . . . . . . . . . . . . . . . . . . . . . 89 8.2.4 Downloaden van het project . . . . . . . . . . . . . . . . . . . . . . . . . 90 8.3 Uitbreiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 8.3.1 Figuur invoegen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 8.3.2 Background en Foreground TEQ . . . . . . . . . . . . . . . . . . . . . . . 91 9 Analoge signaalverwerking met de ILC 93 9.1 Functiebouwsteen voor analoge signaalverwerking . . . . . . . . . . . . . . . . 93 9.1.1 De analoge ingangsmodules . . . . . . . . . . . . . . . . . . . . . . . . . 94 9.1.2 De analoge uitgangsmodule . . . . . . . . . . . . . . . . . . . . . . . . . 95 9.2 Functie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 9.3 Watch Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 9.4 Opdracht temperatuursmeting . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 9.4.1 Resultaat in FBD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 9.4.2 Resultaat in ST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 9.5 Uitbreiding WebVisit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 10 Analoge signaalverwerking met de AXC1050 104 10.1 Toevoegen van de analoge I/O-kaarten . . . . . . . . . . . . . . . . . . . . . . . 105 10.2 Configureren van de analoge I/O-kaarten . . . . . . . . . . . . . . . . . . . . . . 105 10.3 Programmatie voor de signaalverwerking . . . . . . . . . . . . . . . . . . . . . 108 10.3.1 Binnenlezen met analoge ingangskaart . . . . . . . . . . . . . . . . . . . 108 10.3.2 Uitsturen met analoge uitgangskaart . . . . . . . . . . . . . . . . . . . . 109 10.4 Koppelen van de procesdata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 11 User Defined Datatypes 111 11.1 Algemeen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 11.1.1 Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 11.1.2 Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 11.1.3 Combinatie van User Defined Datatypes . . . . . . . . . . . . . . . . . . 115 11.2 Opdracht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 11.3 Aanvullende FB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 11.3.1 STRING_TO_BUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 Inhoudsopgave iii
  5. 5. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 12 Modbus 119 12.1 De 1x1-reeks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 12.2 Modbus: de basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 12.2.1 Functiecodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 12.2.2 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 12.2.3 Berichtstructuur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 13 Modbus TCP 124 13.1 Aansluitingen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 13.2 Toevoegen nodige bibliotheek . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 13.3 Modbus TCP met functiebouwstenen . . . . . . . . . . . . . . . . . . . . . . . . . 127 13.3.1 Werking functiebouwstenen . . . . . . . . . . . . . . . . . . . . . . . . . 127 13.3.2 Gebruik in Function Block Diagram . . . . . . . . . . . . . . . . . . . . . . 130 13.3.3 Gebruik in Structured Text . . . . . . . . . . . . . . . . . . . . . . . . . . 130 13.3.4 Uitgewerkt voorbeeld: ILC 171 en EMpro met FB’s . . . . . . . . . . . . . 131 13.4 Modbus TCP met modbusregister . . . . . . . . . . . . . . . . . . . . . . . . . . 134 13.4.1 Modbus-settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 13.4.2 Modbusregister editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 13.5 Modbus kopstation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 13.5.1 Configureren en lezen van de registers . . . . . . . . . . . . . . . . . . . 137 13.5.2 Binnenlezen inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 14 Modbus RTU 142 14.1 Modbus RTU over RS485 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 14.1.1 Benodigde functiebouwstenen . . . . . . . . . . . . . . . . . . . . . . . . 143 14.1.2 Werking functiebouwstenen . . . . . . . . . . . . . . . . . . . . . . . . . 144 14.1.3 Gebruik in Function Block Diagram . . . . . . . . . . . . . . . . . . . . . . 147 14.2 Modbus RTU met gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 14.2.1 Aansluitingen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 14.2.2 Voordeel gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 14.2.3 Instellen gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 14.2.4 Communicatie met functiebouwstenen . . . . . . . . . . . . . . . . . . . 151 14.2.5 Communicatie met modbusregisters . . . . . . . . . . . . . . . . . . . . 152 15 Uitbreiding 155 15.1 Tips & Trics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 15.1.1 Schermbeheer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 15.1.2 Beheer van variabelen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 15.1.3 Aanmaken project m.b.v. de wizard . . . . . . . . . . . . . . . . . . . . . 157 15.2 Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 15.2.1 Functiebouwsteen: analoge technologie . . . . . . . . . . . . . . . . . . 158 15.3 Firmware Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 15.4 Variabelen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 15.5 Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 15.6 Bus Diagnose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 Inhoudsopgave iv
  6. 6. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 15.6.1 Verbinding met controller maken . . . . . . . . . . . . . . . . . . . . . . . 170 15.6.2 Interbus Diagnose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 15.6.3 Axioline Diagnose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 16 Opdrachten 175 16.1 Een alarmsysteem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 16.2 Openen van een sectionaal poort . . . . . . . . . . . . . . . . . . . . . . . . . . 177 16.3 Temperatuursopvolging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 16.4 Sequentieel programmeren in ST: de rolkraan . . . . . . . . . . . . . . . . . . . 181 16.5 Tapijtoproller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 16.5.1 Overzicht in- en uitgangen opdracht tapijtroller . . . . . . . . . . . . . . 182 16.5.2 Verloop van de oprolcyclus . . . . . . . . . . . . . . . . . . . . . . . . . . 183 16.5.3 Hoofdprogramma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 16.5.4 Functiebouwsteen Blokgolf . . . . . . . . . . . . . . . . . . . . . . . . . . 184 16.5.5 Functiebouwsteen StartStop . . . . . . . . . . . . . . . . . . . . . . . . . 184 16.5.6 Functiebouwsteen Oprolcyclus . . . . . . . . . . . . . . . . . . . . . . . . 185 16.6 Voorbeeld in ST met array’s en structuren . . . . . . . . . . . . . . . . . . . . . 189 Inhoudsopgave v
  7. 7. 1 Beschrijving van de hardware 1.1 Structuur van de starterkits 1.1.1 ILC131 starterkit De ILC131 starterkit is een combinatie van hardware en software die nodig is om een basis- project aan te maken. De starterkit is geassembleerd op een bord en bevat een voeding, een ILC131 met analoge ingangskaart, een potentiometer en een switch module met 8 schake- laars (zie figuur 1.1). Figuur 1.1: Opbouw van de starterkit 1 Beschrijving van de hardware 1
  8. 8. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 1.1.2 AXC1050 starterkit De AXC1050 starterkit is een combinatie van hardware en software die nodig is om een basisproject aan te maken. De starterkit is geassembleerd op een bord en bevat een AXC1050 met daaraan gekoppeld een digitale in- en uitgangskaart, een analoge uitgangskaart en een analoge ingangskaart voor spanningssignalen. Daarnaast bevat het bord ook een voeding, een switch module met 8 schakelaars, een led- bar en een potentiometer (zie figuur 1.2). Figuur 1.2: Opbouw van de starterkit 1 Beschrijving van de hardware 2
  9. 9. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 1.2 Phoenix Contact 1.2.1 Overzicht van de PLC’s Phoenix Contact volgt de internationale IEC 61131-3 norm voor programmeerbare sturingen. Figuur 1.3 toont een overzicht van het plc-gamma van Phoenix Contact: de ILC’s, de Axio- controllers en de softPLC’s. Figuur 1.3: Overzicht plc’s van Phoenix Contact ILC’s De ILC’s uit het gamma van Phoenix Contact zijn ingedeeld in 3 performantieklasses: de 100- reeks, de 300-reeks en de 400-reeks. Specificaties van de ILC’s binnen iedere reeks zijn te vinden in tabellen 1.1, 1.2 en 1.3. Axioline Binnen de Axioline zijn er twee reeksen: de 1000-reeks en de 3000-reeks. Specificaties van de Axiocontrollers per reeks zijn te vinden in tabellen 1.4 en 1.5. SoftPLC’s Ook is het mogelijk om softwarematig een cyclische plc-werking te verkrijgen op een indus- triële pc. Specificaties van de mogelijke softPLC’s zijn te vinden in tabel 1.6. 1 Beschrijving van de hardware 3
  10. 10. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Tabel 1.1: Specificaties voor ILC’s binnen de 100-reeks van Phoenix Contact Tabel 1.2: Specificaties voor ILC’s binnen de 300-reeks van Phoenix Contact 1 Beschrijving van de hardware 4
  11. 11. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Tabel 1.3: Specificaties voor ILC’s binnen de 400-reeks van Phoenix Contact Tabel 1.4: Specificaties voor Axiocontrollers binnen de 1000-reeks van Phoenix Contact 1 Beschrijving van de hardware 5
  12. 12. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Tabel 1.5: Specificaties voor Axiocontrollers binnen de 3000-reeks van Phoenix Contact Tabel 1.6: Specificaties voor softPLC’s van Phoenix Contact 1 Beschrijving van de hardware 6
  13. 13. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 1.2.2 Specifieke kenmerken voor de 100-reeks ILC131 ETH Dit is een PLC Base-Unit voor de kleine toepassingen. De plc heeft de volgende kenmerken: – 192kB programma- en datageheugen – 8kB retain-geheugen – 1 Ethernetpoort – Modbus-client geïmplementeerd (4 connecties) Het geheugen kan uitgebreid worden met een SD-kaart. ILC151 ETH Dit is een PLC Standard-Unit voor de basis toepassingen. De plc heeft de volgende kenmer- ken: – 256kB programma- en datageheugen – 8kB retain-geheugen – 1 Ethernetpoort – Modbus-client geïmplementeerd (8 connecties) Het geheugen kan uitgebreid worden met een SD-kaart. ILC171 ETH 2TX Deze PLC Advanced-Unit wordt gebruikt in toepassingen voor data-logging en communicatie. De plc heeft de volgende kenmerken: – 512kB programma- en datageheugen – 48kB retain-geheugen – 2 Ethernetpoorten – Modbus-client geïmplementeerd (16 connecties) Het geheugen kan uitgebreid worden met een SD-kaart. ILC191 ETH 2TX Deze PLC Advanced-Unit met FPU wordt gebruikt in closed-loop control toepassingen. De plc heeft de volgende kenmerken: – 1MB programma- en datageheugen – 48kB retain-geheugen 1 Beschrijving van de hardware 7
  14. 14. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT – 2 Ethernetpoorten – Modbus-client geïmplementeerd (16 connecties) – Geïntegreerde FPU voor snellere floating-point bewerkingen Het geheugen kan uitgebreid worden met een SD-kaart. ILC151 GSM/GPRS Deze PLC met geïntegreerde GSM/GPRS modem wordt gebruikt voor Remote Control toepas- singen. De PLC heeft de volgende kenmerken: – 512kB programma- en datageheugen – 48kB retain-geheugen – 1 Ethernetpoort – Modbus-client geïmplementeerd (8 connecties) – Nieuw geïntegreerde webserver Het geheugen kan uitgebreid worden met een SD-kaart. 1.2.3 Specifieke kenmerken voor de AXC1050 De Axiocontroller AXC1050 is snel, robuust en eenvoudig. Deze PLC is geschikt voor middel- grote automatiseringstaken en heeft onder andere de volgende kenmerken: – Geïntegreerde UPS – 48 kB retain-geheugen – 2 ethernetpoorten, 1 USB poort – Modbus-client geïmplementeerd (16 connecties) – Profinet controller Het geheugen kan uitgebreid worden met een SD-kaart. 1 Beschrijving van de hardware 8
  15. 15. 2 IEC 61131-3 2.1 Inleiding De IEC 61131 STANDAARD is een internationale standaard voor programmeerbare sturingen (PLC’s, soft PLC’s. . . ) en bestaat uit 5 delen: IEC 61131-1 : Algemeen overzicht; IEC 61131-2 : Hardware karakteristieken; IEC 61131-3 : Programmeertalen; IEC 61131-4 : Richtlijnen voor de gebruiker; IEC 61131-5 : Communicatie; + 2 technische rapporten. DE IEC 61131-3 NORM is sinds 1993 de internationale standaard voor het programmeren van industriële controllers. Het definieert 5 verschillende talen. Deze worden wereldwijd door alle grote PLC-fabrikanten gebruikt. Deze 5 talen zijn de volgende: • LADDER DIAGRAM (LD), een grafische taal welke gebaseerd is op contactorlogica; • FUNCTION BLOCK DIAGRAM (FBD); • INSTRUCTION LIST (IL): een ‘low-level’ taal, vergelijkbaar met assembler; • SEQUENTIAL FUNCTION CHART (SFC): een grafische taal speciaal ontwikkeld om de af- loop van sequentiële systemen te programmeren; • STRUCTURED TEXT (ST): een ‘high-level’ taal om gestructureerd te programmeren. Deze taal is sterk vergelijkbaar met PASCAL. 2 IEC 61131-3 9
  16. 16. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 2.2 Structuur van een applicatie volgens de IEC 61131-3 norm Elke configuratie bevat één of meerdere resources. Een resource voorziet in alle mogelijke tools om een bepaald gebruikersprogramma uit te voeren. Het is een kenmerk om een be- paalde processor te ondersteunen. Een resource is het best te begrijpen als een CPU met het daarbij behorende operating systeem. In elke resource kunnen meerdere tasks actief zijn. Een task wordt aangemaakt om een aantal programma’s uit te voeren. Een TASK kan een cyclische (periodische) task, een event-gestuurde task of een systeem-gestuurde (interrupt-) task zijn. Een cyclische task wordt cyclisch uitgevoerd met tijdsbewaking. Meestal wordt een default task voorzien in de engineeringssofware. Dit is een cyclische taak die steeds opnieuw wordt uitgevoerd. De cyclischtijd is enerzijds afhankelijk van de verwerkingssnelheid van de CPU van het besturingssyteem, anderzijds van de grootte van het gebruikersprogramma. Een event-gestuurde task wordt aangestoten bij een bepaalde gebeurtenis. Bij PC WorX wordt de event-gestuurde task gebruikt voor de mogelijkheid van sequential processing. Een systeem-gestuurde task wordt aangestoten door het operatingsysteem (warme start, koude start, stop, watchdog error, divide by zero. . . ). In sectie 15.5 op pagina 168 wordt dieper ingegaan op de verschillende tasks. Het uitvoeringsprogramma gekoppeld aan een task kan bestaan uit verschillende POU’s (Pro- gram Organisation Unit). 2 IEC 61131-3 10
  17. 17. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 2.1: Structuur van een applicatie volgens de IEC 61131-3 norm 2 IEC 61131-3 11
  18. 18. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 2.3 POU’s POU staat voor Program Organisation Units en is de verzamelnaam voor programma’s, func- tieblokken en functies. Een overzicht: POU type Meermaals gebruik als Commentaar Programma Programma instance Grotere herbruikbare software elementen binnen een gebruikersprogramma Functieblok Functieblok instance Kleinere (van complex algoritmes tot eenvoudige besturingstaken) herbruikbare software elementen Functie Functie Herbruikbare software elementen voor data manipulatie 2 IEC 61131-3 12
  19. 19. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 2.4 Functies 2.4.1 Algemeen Een functie is een software-blokje dat meermaals kan gebruikt worden in een andere POU. Meestal zullen functies gebruikt worden om data te manipuleren. Een functie produceert al- tijd ogenblikkelijk een definitief resultaat met behulp van een aantal ingangsparameters. Het resultaat wordt toegekend aan de functienaam zelf. Hiervoor zal een functie altijd van een bepaald data-type moeten zijn. • Een functie heeft juist één uitgang • Voor een identieke set ingangsparameters zal een functie altijd hetzelfde resultaat te- ruggeven Figuur 2.2: Voorstelling van een functie 2.4.2 Variabelen en functies Een variabele in een functie kan van het type VAR en VAR_INPUT zijn. Variabelen van het type VAR_OUTPUT zijn niet mogelijk omdat een functie slechts één uitgang heeft, nl. de functienaam zelf. 2.4.3 Standaardfuncties Er zijn heel wat standaardfuncties. Een greep uit de beschikbare groepen: • Numerieke functies (ABS, SQRT, LN, LOG, EXP, SIN, COS, TAN, ASIN, ACOS, ATAN). • Rekenkundige functies (ADD, MUL, SUB, DIV, MOD, EXPT, MOVE) Deze functies zijn meestal van het data-type ANY_NUM. Dit betekent dat het data_type van de inputparameters zowel een INT, DINT of REAL kan zijn. 2 IEC 61131-3 13
  20. 20. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT • Bit stringfuncties (SHL, SHR, ROR, ROL). • Booleaanse bit-functies (AND, OR, XOR, NOT) De functies van de twee laatste groepen zijn meestal van het data-type ANY_BIT. Dit betekent dat het data_type van de inputparameters zowel een BIT, BYTE, WORD of DWORD kan zijn. • Vergelijkingsfuncties (GT, GE, EQ, LE, LT, NE). • Karakter stringfuncties (LEFT, RIGHT, MID, CONCAT, INSERT, DELETE, REPLACE, LEN, FIND) functies om data-types om te zetten. Voor PC WorX zijn nog heel wat bibliotheken voorhanden met speciale functies. 2 IEC 61131-3 14
  21. 21. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 2.5 Functiebouwstenen 2.5.1 Algemeen Een functieblok is een herbruikbaar software element om eenvoudige tot complexe bestu- ringstaken uit te voeren. Bij het aanmaken van een functiebouwsteen worden variabelen gedefinieerd. Bij de oproep van deze functiebouwsteen wordt er voor deze variabelen ge- heugenruimte voorzien. Indien deze functiebouwsteen meerdere malen opgeroepen wordt, dan moet er meerdere keren geheugenruimte voorzien worden. Daarom wordt er bij de oproep van een functiebouwsteen een instance gedefinieerd. Deze instance verwijst dan naar deze specifieke geheugenlocatie. Bij een bepaalde set ingangsparameters zullen de uitgangsparameters van een functieblok een variërend resultaat hebben in functie van de tijd. 2.5.2 Variabelen en functiebouwstenen Een variabele in een functiebouwsteen kan van het type VAR, VAR_GLOBAL, VAR_INPUT en VAR_OUTPUT zijn. Hierbij zijn de ingangsparameters van het type VAR_INPUT. De uitgangs- waarden van de FB zijn van het type VAR_OUTPUT. Een variabele kan ook van het type VAR_IN_OUT zijn. Dergelijke variabele krijgen een inputwaarde meegegeven welke kan ver- anderen in de uitvoering van de FB. Het gebruik van VAR_GLOBAL wordt vermeden in een functiebouwsteen. Een voorstelling van een functiebouwsteen is te zien in figuur ??. Figuur 2.3: Voorstelling van een functiebouwsteen 2.5.3 Standaardfunctiebouwstenen Er zijn heel wat vooraf gedefinieerde functieblokken. De belangrijkste zijn: • SR, RS, R_TRIG, F_TRIG • Counters: CTU, CTD, CTUD • Timers: TP,TOF, TON 2 IEC 61131-3 15
  22. 22. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 2.6 Programma’s 2.6.1 Algemeen Een programma is een groot herbruikbaar software element. Dit element is meestal opge- bouwd uit verschillende andere software elementen zoals functies en functieblokken. Die elementen worden in één van de 5 IEC talen geschreven. Een typisch programma bestaat uit een aantal gelinkte functieblokken die softwarematig data kunnen uitwisselen. 2.6.2 Variabelen Variabelen kunnen van het type VAR, VAR EXTERNAL, VAR_EXTERNAL_PG en VAR_GLOBAL zijn. Globale variabelen worden in programma’s gebruikt en worden nadien gelinkt aan periferie IO of aan softwarevariabelen. In het laatste hoofdstuk worden de verschillen tussen deze variabelen onder de loep geno- men. 2 IEC 61131-3 16
  23. 23. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 2.7 Naamgeving De naamgeving van variabelen is onderworpen aan een standaard. De richtlijnen zorgen ervoor dat bij de diagnose van een probleem de programmeur in één oogopslag het gebruik van de variabelen kan aflezen aan de hand van de naamgeving. Algemeen kan gesteld worden dat de opbouw voor de naamgeving van een variabele is vol- gens figuur 2.4. Figuur 2.4: Opbouw naamgeving Ieder datatype heeft zijn eigen afkorting, deze worden weergegeven in tabel 2.1. Tabel 2.1: Overzicht van afkortingen voor datatypes De naam zelf dient logisch te zijn en zelfverklarend te zijn. Te lange namen worden logisch afgekort. Namen die bestaan uit meerdere woorden worden aan elkaar geschreven, waarbij ieder woord begint met een hoofdletter zoals bv. xEnableDataExchange. Afkortingen worden in hoofdletters geschreven en van de rest van de naam gescheiden door een underscore zoals bv. xClearBuffer_RTU. 2.7.1 Benaming binnen een functiebouwsteen De variabelen binnen een functiebouwsteen krijgen een prefix naargelang hun gebruik, zie tabel 2.2. 2.7.2 Benaming binnen een programma De variabelen binnen het hogere programmaniveau krijgen ook een prefix naargelang hun gebruik, zie tabel 2.3. 2 IEC 61131-3 17
  24. 24. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Tabel 2.2: Overzicht van prefixen binnen een functiebouwsteen Tabel 2.3: Overzicht van prefixen binnen een programma 2.7.3 Benaming van user defined datatypes Datatypes zoals ARRAYs en STRUCTs worden door de gebruiker gedefinieerd. De benaming voor het datatype zelf wordt als volgt voorgesteld: • Array: ARR_x_y_z – x: Start getal array – y: Eind getal array – z: datatype arrayelement vb. ARR_1_10_BYTE: een array van 10 bytes, ARR_0_9_Settings: een array van 10 elementen van het eerder aangemaakte datatype ‘Settings’. • Struct: udt<benaming> vb. udtLaskop De benaming van de variabele van zo’n datatype volgt de algemene regels van hierboven. 2 IEC 61131-3 18
  25. 25. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 2.8 Datatypes 2.8.1 Numerieke datatypes De volgende tabel toont een overzicht van de belangrijkste numerieke datatypes. Datatype Beschrijving Bits Bereik SINT Short integer 8 -128 tot +127 INT Integer 16 -32768 tot 32767 DINT Double integer 32 −231 tot +231 − 1 LINT Long integer 64 −263 tot +261 − 1 USINT Unsigned short integer 8 0 tot 255 UINT Unsigned integer 16 0 tot 216 − 1 UDINT Unsigned double integer 32 0 tot 232 − 1 ULINT Unsigned long integer 64 0 tot 264 − 1 REAL Floating point 32 ±10±38 LREAL Long floating point 64 ±10±308 Opmerkingen over de notatie van numerieke datatypes: • INT#15 of 15 • REAL#8 of 8.0 2.8.2 Bitgebaseerde datatypes De volgende tabel toont een overzicht van de belangrijkste bitgebaseerde datatypes. Datatype Beschrijving Bits Bereik BOOL 1 bit 1 Logisch 1 of 0 BYTE Bitstring van 8 bits 8 Binaire informatie WORD Bitstring van 16 bits 16 Binaire informatie DWORD Bitstring van 32 bits 32 Binaire informatie LWORD Bitstring van 64 bits 64 Binaire informatie STRING Karakter string Tekst informatie Opmerkingen over de notatie van bitgebaseerde datatypes: • WORD#2#1010111100000011 (binaire notatie) • WORD #16#AF03 (hexadecimal notatie) • BYTE#2#10100011 2 IEC 61131-3 19
  26. 26. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 2.8.3 Time-gebaseerde datatypes De volgende tabel toont een overzicht van de belangrijkste time-gebaseerde datatypes. Datatype Beschrijving Bits Bereik TIME Tijdsduur DATE Kalendergegevens TIME_OF_DAY Tijd van de dag DATE_AND_TIME Kalendergegevens + tijd van de dag Opmerkingen over de notatie van bitgebaseerde datatypes: • Opmerkingen over TIME: – T#3s – T#16d_5h_3m_4s_20ms (16 dagen, 5 uur, 3 minuten, 4 seconden en 20 millise- conden) – TIME#10s • Opmerkingen over DATE: – D#2001-10-15 (15 oktober 2001) – DATE#1999-1-30 • Opmerkingen over TIME_OF_DAY – TOD#10:10:30 (10 uur, 10 minuten en 30 seconden) – TIME_OF_DAY#23:59:59 (1 seconde voor middernacht) • Opmerkingen over DATE_AND_TIME – DT#2007-03-22-15:36:50 – DATE_AND_TIME#2007-02-01-12:00:00 2 IEC 61131-3 20
  27. 27. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 2.8.4 Array ‘Array’ datatype is een structuur van verschillende elementen van hetzelfde datatype. De verschillende elementen kunnen één voor één apart gemanipuleerd worden aan de hand van een array-index. Een array datatype moet vooraf gedeclareerd worden. Eens het datatype gedeclareerd is, dan kunnen variabelen van dit array datatype gedefinieerd worden. TYPE (*Typename*) : ARRAY [(*From..To*)] OF (*DATATYPE*); END_TYPE Voorbeeld van een ééndimensionale array Declaratie array datatype TYPE ARR_1_23_INT : ARRAY[1..23] OF INT; END_TYPE Definitie van variabelen VAR arrReeks_1 : ARR_1_23_INT; iWaarde_4: INT; END_VAR CODE in ST iWaarde_4 := arrReeks_1 Voorbeeld van een multi-dimensionale array Declaratie array datatype TYPE ARR_1_23_INT : ARRAY[1..23] OF INT; udtResultaten : ARRAY [1..3] OF ARR_1_23_INT; END_TYPE 2 IEC 61131-3 21
  28. 28. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Definitie van variabelen VAR udtProductielijn_1 : udtResultaten; iOpbrengst_x: INT; END_VAR CODE in ST iOpbrengst_x := udtProductielijn_1 [2] [10]; 2.8.5 Struct ‘Struct’ datatype is een structuur van verschillende elementen van een verschillend data- type. TYPE (*Typename*) : STRUCT (*Element 1 Name*) : (*DATATYPE*); (*Element 2 Name*) : (*DATATYPE*); (*Element 3 Name*) : (*DATATYPE*); (* . : . *); (* . : . *); (*Element n Name*) : (*DATATYPE*); END_STRUCT; END_TYPE 2.8.6 String Een string is een datatype om tekst te verwerken. Het is een verzameling van bytes, waarbij elke byte een character voorstelt (ASCII-tabel). TYPE (*Typename*):STRING((*String length*)); END_TYPE 2 IEC 61131-3 22
  29. 29. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 2.9 Structured Text Specifiek aan structured text zijn de voorwaardelijke statements. Hierna volgt een kort over- zicht. 2.9.1 Selectie statements IF... THEN... ELSE... IF <boolean expression> THEN <statement>; ELSE <statement>; END_IF; Met ELSIF wordt het: IF <boolean expression> THEN <statement>; ELSIF <boolean expression> THEN <statement>; ELSE <statement>; END_IF; 2 IEC 61131-3 23
  30. 30. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT CASE CASE <integer expression> OF <integer value_1> : <statement>; <integer value_2> : <statement>; <integer value_3> : <statement>; ELSE <statement>; END_CASE; 2.9.2 Iteratie statements FOR... DO FOR <initialiserende waarde> TO <eindwaarde> BY <incrementele waarde> DO (* BY is optioneel. Standaard wordt er met 1 stap verhoogd *) <statement>; <statement>; <statement>; END_FOR; WHILE... DO WHILE <boolean expression> DO <statement>; <statement>; <statement>; END_WHILE; 2 IEC 61131-3 24
  31. 31. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT REPEAT... UNTIL REPEAT <statement>; <statement>; <statement>; UNTIL <boolean expression> END_REPEAT; Met het statement EXIT kan een voorwaardelijk einde gemaakt worden aan een iteratie statement. 2 IEC 61131-3 25
  32. 32. 3 Aanmaken van een project met de ILC131 3.1 Nieuw project aanmaken 1. Selecteer “New Project” onder het menu “File” om een nieuw project aan te maken via een template. De structuur van het project alsook de keuzemogelijkheid van een controller worden nu voorbereid. 2. Selecteer een template voor de gebruikte ILC, bv.: “ILC 131 ETH Rev. > 00/4.00” en bevestig met OK (zie figuur 3.1). Figuur 3.1: Project templates 3. Selecteer “Save Project As. . . ” onder het menu “File”. Kies een projectnaam, i.f.v. het gebruik van Webvisit zijn spaties in de naam niet toegelaten, (hier StartersProgram, zie figuur 4.2) en sla het project op via “Save”, zie figuur 4.2. Figuur 3.2: Opslaan project 3 Aanmaken van een project met de ILC131 26
  33. 33. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Ieder project wordt opgeslagen als een ∗.mwt bestand en een folder met dezelfde naam. Op figuur 4.2 is er een ∗.mwt bestand met de naam DEMO_PRO alsook een folder met de naam DEMO_PRO. Het is ook mogelijk om het project te zippen tot een ∗.zwt bestand. Het is interessant om vooraf bij “Options” onder “Extras” de gewenste project directories in te stellen zoals in figuur 4.3. Figuur 3.3: Instellen project directories 3 Aanmaken van een project met de ILC131 27
  34. 34. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 3.2 Structuur nieuw project conform de IEC 61131-3 Figuur 3.4: Structuur bij het aanmaken van een nieuw project in PC WorX Zie “2.2 Structuur van een applicatie volgens de IEC 61131-3 norm” op pagina 10 voor de theoretische uitleg. Zoals te zien is in figuur 3.4 wordt onder de map ‘Logical POU’s’ reeds één programma aan- gemaakt met de naam Main. Dit programma wordt een eerste in gebruik genomen via de DEFAULT task. Hierdoor is dit programma dadelijk compileerbaar. Indien andere programma’s aangemaakt worden dienen die zeker in een task geactiveerd te worden (zie verder in deze cursus). 3 Aanmaken van een project met de ILC131 28
  35. 35. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 3.3 Aanpassen van de projectinformatie 3.3.1 Bus configuratie Schakel over naar het werkgebied “Bus configuration”. Hier wordt alle projectinformatie weergegeven (zie figuur 3.5). Figuur 3.5: De busconfiguratie 3.3.2 IP Tijdens het aanmaken van het project kent PC WorX automatisch een IP range toe voor een lokaal netwerk (192.168.0.2 tot 192.168.0.254). Indien een ander adres moet gebruikt worden, dan moet het start- en eindadres aangepast worden. Indien nodig moet ook het subnetmask aangepast worden. Voor de cursus worden volgende IP adressen toegepast: PC 192.168.0.10/24 (subnetmask 255.255.255.0) ILC_150 192.168.0.11/24 (subnetmask 255.255.255.0) Beiden moeten hetzelfde subnetmask hebben. 3.3.3 IP configuratie van uw PC Belangrijk is om eerst de netwerkinstellingen van de PC te controleren. Via de Command Prompt wordt met behulp van het commando “ipconfig” het IP-adres van de PC opgevraagd (zie figuur 4.6). De PC instellingen aanpassen indien nodig via de eigenschappen voor LAN-verbinding. Bij het Internet-protocol, kiezen voor de eigenschappen en een vast IP-adres instellen. 3 Aanmaken van een project met de ILC131 29
  36. 36. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 3.6: Configuratie Figuur 3.7: Ipconfig Vast IP-adres kiezen Om een vast IP-adres voor de PC te kiezen, moet het netwerkcen- trum geopend worden. Via ‘adapter-instellingen wijzigen’ wordt een overzicht van alle adap- ters verkregen. Rechtermuisklik op de gewenste adapter, meestal LAN-verbinding (zie figuur 4.7), en het venster ‘Eigenschappen’ wordt geopend. Figuur 3.8: Verschillende netwerkadapters in netwerkcentrum 3 Aanmaken van een project met de ILC131 30
  37. 37. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Er wordt gebruik gemaakt van IPv4, dus moeten de eigenschappen van dit protocol geopend worden, zie figuur 4.8. Figuur 3.9: IPv4-eigenschappen selecteren Uiteindelijk kan er een vast IP-adres ingesteld worden dat in dezelfde range van het IP-adres van de controller moet liggen. Dit wordt weergegeven in figuur 4.9. Figuur 3.10: Vast IP-adres toekennen 3 Aanmaken van een project met de ILC131 31
  38. 38. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 3.4 IP configuratie van de controller 3.4.1 Algemeen De IP-settings binnen PCWorx zijn te zien in figuur 3.11. Om het IP-adres van de plc aan te Figuur 3.11: IP Settings passen zijn er de volgende mogelijkheden: • Voor de eerste keer een IP-adres toekennen – Via IPAssign (BootP Server) – Via PC WorX (BootP Server) – Via de seriële interface – Via PC Worx, extended settings • Veranderen van het IP-adres – Via IPAssign (BootP Server) – Via PC WorX (BootP Server) – Via de seriële interface 3 Aanmaken van een project met de ILC131 32
  39. 39. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 3.4.2 Aanpassen IP-adres via de BootP Server (m.b.v. PC WorX) Opmerking: De BootP-methode werkt enkel tot en met Windows XP! Figuur 3.12: BootP opstarten binnen PCWorx 1. Activeer de “BootP Server active” checkbox. 2. Schakel over naar het werkgebied “Bus configuration”. 3. Selecteer de “ILC 131 ETH” controller. 4. Selecteer het tabblad “IP Settings” in het venster “Device Details”. 5. Breng het MAC-adres van de controller in (MAC-adres begint met 00-A0-45). 6. Vul het gewenste IP-adres in. Figuur 3.13: Aanpassen van het IP-adres 7. Neem de spanning weg van de controller. 8. De spanning terug laten opkomen. Vanaf nu wordt het BootP proces opgestart, de controller krijgt het ingestelde IP-adres en na een tweetal minuten is het IP-adres geac- tiveerd. 3 Aanmaken van een project met de ILC131 33
  40. 40. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 3.4.3 Aanpassen IP-adres via de IP Assigment Tool (IPAssign) IPAssign is te downloaden op de website van Phoenix Contact. 1. Zorg ervoor dat de BootP Server van PC WorX niet geactiveerd is. Enkel de bedrade adapter van de PC mag aanliggen, alle andere adapters uitschakelen. 2. Openen IPAssign, klik op volgende en wacht tot het MAC-adres verschijnt, zie figuur 4.11. 3. Indien de controler niet in de lijst verschijnt, neem dan de spanning weg van de control- ler door de zwarte connector even los te maken, daarna de spanning terug opzetten. Figuur 3.14: MAC-adres selecteren 4. Klik op het MAC-adres van de controller dat op het scherm verschijnt (MAC-adres begint met 00-A0-45). 5. Vul het gewenste IP-adres in zoals in figuur 4.12. Figuur 3.15: IP-adres invullen 3 Aanmaken van een project met de ILC131 34
  41. 41. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 3.16: Wachten op bevestiging 6. Wacht tot de aanpassing bevestigd is. Indien er na een twintigtal seconden nog geen bevestiging verkregen is, neem dan terug even kort de spanning weg van de controller. Bij de heropstart neemt de controller het IP-adres aan. Figuur 3.17: Bevestiging 3 Aanmaken van een project met de ILC131 35
  42. 42. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 3.4.4 Communicatie opzetten tussen PC en plc Eens bij de controller en op de PC het juiste IP-adres ingesteld staat kan de communicatie geactiveerd worden. Hiervoor wordt de ILC 131 ETH aangeklikt in het window “Bus Structure” (links) en wordt het tabblad “Communication” gekozen in het window “Device Details”, zie figuur 3.18. Na het Figuur 3.18: ‘Communication’-tabblad om verbinding te maken instellen van het juiste IP-adres van de controller kan de communicatie getest worden via de knop “Test”, zie figuur 3.19. Figuur 3.19: Testen van de communicatie Na enkele seconden zal de indicatiebar groen oplichten zoals in figuur 3.20. Vervolgens kan op ‘Apply’ geklikt worden om te bevestigen. Ter controle zal links in de boomstructuur het IP-adres wijzigen. Figuur 3.20: Geslaagde communicatietest 3 Aanmaken van een project met de ILC131 36
  43. 43. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 3.5 De INTERBUS configuratie Eens het communicatiepad actief is tussen de controller en de PC kan het INTERBUS systeem verbonden met de controller automatisch ingelezen worden. Voor dit project zijn twee INTERBUS modules verbonden met de controller. • Selecteer het “Connected Bus” commando via het “View” menu om het INTERBUS sys- teem in te lezen (zie figuur 3.21). Figuur 3.21: Connected Bus • Selecteer de juiste controller in het venster “Connected INTERBUS” (zie figuur 3.22). Figuur 3.22: Selecteer de juiste controller • De INTERBUS modules worden nu automatisch ingelezen. Eens ingelezen moeten ze toegevoegd worden aan het project. 3 Aanmaken van een project met de ILC131 37
  44. 44. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT • Klik hiervoor op de controller, rechtermuistoets en kies vervolgens “Import to Project” en “With Device Description”. Figuur 3.23: Uitgelezen busstructure • Het venster “Select Device” toont nu alle modules welke overeenstemmen met de ID code en met de hoeveelheid processdata van de geconnecteerde modules. Uit deze lijst moeten de werkelijk verbonden modules geselecteerd worden. De INTERBUS modules welke in dit project gebruikt zijn: - IB IL AI 2/SF-ME Beiden moeten hetzelfde subnetsmask hebben. • Uiteindelijk moet de configuratie opgebouwd zijn zoals op figuur 3.24 wordt weergege- ven. Figuur 3.24: Uiteindelijke configuratie • Tot slot is het beter om nu opnieuw offline te selecteren vooraleer dit venster af te sluiten. Figuur 3.25: Opnieuw offline gaan 3 Aanmaken van een project met de ILC131 38
  45. 45. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 3.6 Compileren en downloaden Het project bevat nu alle informatie omtrent de busconfiguraties (Ethernet & INTERBUS) en is er een actieve communicatie. Op dit moment is het mogelijk om het project te compileren en te downloaden om eventuele fouten te herkennen. compileren → downloaden naar de controller → cold start uitvoeren. Enkele belangrijke sneltoetsen betreffende het compileren: Figuur 3.26: Compileren en downloaden Figuur 3.27: Sneltoetsen 3 Aanmaken van een project met de ILC131 39
  46. 46. 4 Aanmaken van een project met de AXC1050 4.1 Nieuw project aanmaken 1. Selecteer “New Project” onder het menu “File” om een nieuw project aan te maken via een template. De structuur van het project alsook de keuzemogelijkheid van een controller worden nu voorbereid. 2. Selecteer een template voor de gebruikte Axiocontroller, bv.: “AXC 1050 Rev. > 01/2.10” en bevestig met OK (zie figuur 4.1). Figuur 4.1: Project templates voor AXC1050 3. Selecteer “Save Project As. . . ” onder het menu “File”. Kies een projectnaam, i.f.v. het gebruik van Webvisit zijn spaties in de naam niet toegelaten, (hier StartersProgram, zie figuur 4.2) en sla het project op via “Save”, zie figuur 4.2. Figuur 4.2: Opslaan project 4 Aanmaken van een project met de AXC1050 40
  47. 47. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Ieder project wordt opgeslagen als een ∗.mwt bestand en een folder met dezelfde naam. Op figuur 4.2 is er een ∗.mwt bestand met de naam DEMO_PRO alsook een folder met de naam DEMO_PRO. Het is ook mogelijk om het project te zippen tot een ∗.zwt bestand. Het is interessant om vooraf bij “Options” onder “Extras” de gewenste project directories in te stellen zoals in figuur 4.3. Figuur 4.3: Instellen project directories 4 Aanmaken van een project met de AXC1050 41
  48. 48. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 4.2 Structuur nieuw project conform de IEC 61131-3 Figuur 4.4: Structuur bij het aanmaken van een nieuw project in PC WorX Zie “2.2 Structuur van een applicatie volgens de IEC 61131-3 norm” op pagina 10 voor de theoretische uitleg. Zoals te zien is in figuur 4.4 wordt onder de map ‘Logical POU’s’ reeds één programma aan- gemaakt met de naam Main. Dit programma wordt bij aanmaak van een project standaard via de DEFAULT task opgeroe- pen. Hierdoor is dit programma dadelijk compileerbaar. Indien andere programma’s aangemaakt worden, dienen deze zeker in een task geactiveerd te worden (zie verder in deze cursus). 4 Aanmaken van een project met de AXC1050 42
  49. 49. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 4.3 Aanpassen van de projectinformatie 4.3.1 Bus configuratie Schakel over naar het werkgebied “Bus configuration”. Hier wordt alle projectinformatie weergegeven (zie figuur 4.5). Figuur 4.5: De busconfiguratie 4.3.2 IP Tijdens het aanmaken van het project kent PC WorX automatisch een IP range toe voor een lokaal netwerk (192.168.0.2 tot 192.168.0.254). Indien een ander adres moet gebruikt worden, dan moet het start- en eindadres aangepast worden. Indien nodig moet ook het subnetmask aangepast worden. Voor de cursus worden volgende IP adressen toegepast: PC 192.168.0.10/24 (subnetmask 255.255.255.0) AXC1050 192.168.0.11/24 (subnetmask 255.255.255.0) Beiden moeten hetzelfde subnetmask hebben. 4.3.3 IP configuratie van uw PC Belangrijk is om eerst de netwerkinstellingen van de PC te controleren. Via de Command Prompt wordt met behulp van het commando “ipconfig” het IP-adres van de PC opgevraagd (zie figuur 4.6). De PC instellingen aanpassen indien nodig via de eigenschappen voor LAN-verbinding. Bij het Internet-protocol, kiezen voor de eigenschappen en een vast IP-adres instellen. 4 Aanmaken van een project met de AXC1050 43
  50. 50. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 4.6: Ipconfig Vast IP-adres kiezen Om een vast IP-adres voor de PC te kiezen, moet het netwerkcen- trum geopend worden. Via ‘adapter-instellingen wijzigen’ wordt een overzicht van alle adap- ters verkregen. Rechtermuisklik op de gewenste adapter, meestal LAN-verbinding (zie figuur 4.7), en het venster ‘Eigenschappen’ wordt geopend. Figuur 4.7: Verschillende netwerkadapters in netwerkcentrum Er wordt gebruik gemaakt van IPv4, dus moeten de eigenschappen van dit protocol geopend worden, zie figuur 4.8. Uiteindelijk kan er een vast IP-adres ingesteld worden dat in dezelfde range van het IP-adres van de controller moet liggen. Dit wordt weergegeven in figuur 4.9. 4 Aanmaken van een project met de AXC1050 44
  51. 51. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 4.8: IPv4-eigenschappen selecteren Figuur 4.9: Vast IP-adres toekennen 4 Aanmaken van een project met de AXC1050 45
  52. 52. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 4.4 IP configuratie van de controller 4.4.1 Algemeen De IP-settings binnen PCWorx zijn te zien in figuur 4.10. Figuur 4.10: IP Settings Om het IP-adres van de plc aan te passen zijn er de volgende mogelijkheden: • Voor de eerste keer een IP-adres toekennen – Via IPAssign (BootP Server) – Via PC WorX (DCP) – Via PC Worx (Extended settings, over USB interface) • Veranderen van het IP-adres – Via IPAssign (BootP Server) – Via PC WorX (DCP) – Via PC WorX (Extended settings, over USB interface) – Via PC Worx (Extended settings, over ethernet) 4 Aanmaken van een project met de AXC1050 46
  53. 53. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 4.4.2 Aanpassen IP-adres via de IP Assigment Tool (IPAssign) IPAssign is te downloaden op de website van Phoenix Contact. 1. Zorg ervoor dat de BootP Server van PC WorX niet geactiveerd is. Enkel de bedrade adapter van de PC mag aanliggen, alle andere adapters uitschakelen. 2. Openen IPAssign, klik op volgende en wacht tot het MAC-adres verschijnt, zie figuur 4.11. 3. Indien de controler niet in de lijst verschijnt, neem dan de spanning weg van de control- ler door de zwarte connector even los te maken, daarna de spanning terug opzetten. Figuur 4.11: MAC-adres selecteren 4. Klik op het MAC-adres van de controller dat op het scherm verschijnt (MAC-adres begint met 00-A0-45). 5. Vul het gewenste IP-adres in zoals in figuur 4.12. Figuur 4.12: IP-adres invullen 4 Aanmaken van een project met de AXC1050 47
  54. 54. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 4.13: Wachten op bevestiging 6. Wacht tot de aanpassing bevestigd is. Indien er na een twintigtal seconden nog geen bevestiging verkregen is, neem dan terug even kort de spanning weg van de controller. Bij de heropstart neemt de controller het IP-adres aan. Figuur 4.14: Bevestiging 4 Aanmaken van een project met de AXC1050 48
  55. 55. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 4.4.3 Aanpassen IP-adres via DCP in PC Worx Het Discovery and Configuration Protocol (DCP) is een protocol binnen de Profinet context. Daar de AXC1050 een Profinet controller/device is, kunnen het IP-adres en de device name rechtstreeks via DCP toegekend worden. 1. Na het selecteren van de AXC1050 binnen de “Bus Structure”, kunnen de gewenste IP-settings ingevoerd worden (zie figuur 4.15). Figuur 4.15: Ingeven gewenste IP-settings 2. Van zodra op het tabblad “IP Assignment” geklikt wordt, worden alle beschikbare Profi- net toestellen binnen het netwerk door DCP afgescand (zie figuur 4.16. Figuur 4.16: Met DCP wordt een lijst van beschikbare Profinet toestellen verkregen 3. De AXC1050 komt in de lijst voor als beschikbaar Profinet toestel (zie figuur 4.17) Het toestel is herkenbaar aan zijn MAC-adres. Daarnaast kan ook een visuele controle ge- beuren door op “Flashing on” te klikken. 4 Aanmaken van een project met de AXC1050 49
  56. 56. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 4.17: AXC1050 in lijst van beschikbare Profinet toestellen 4. De IP-settings rechtsboven komen overeen met deze die ingesteld zijn in het “IP set- tings” tabblad. Om deze toe te kennen aan de AXC1050 volstaat het om de AXC1050 te selecteren en te klikken op “Assign IP” (zie figuur 4.18). Figuur 4.18: Toekennen van de IP-settings aan de AXC1050 5. De IP-settings zijn succesvol toegekend, zie figuur 4.19. 6. Ook de Profinet device name kan ingesteld worden zoals gespecifieerd onder het tab- blad “IP Settings”, dit door te klikken op “Assign Name” (zie figuur 4.20 7. De Profinet device name is succesvol toegekend, zie figuur 4.21 4 Aanmaken van een project met de AXC1050 50
  57. 57. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 4.19: Succesvolle toekenning van de IP-settings Figuur 4.20: Toekennen van de Profinet device name Figuur 4.21: Succesvolle toekenning van de Profinet device name 4 Aanmaken van een project met de AXC1050 51
  58. 58. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 4.4.4 Aanpassen IP-adres via USB-interface in PC Worx De AXC1050 is voorzien van een micro-USB interface. Deze kan gebruikt worden voor dia- gnose (bijvoorbeeld via Diag+), maar ook om de IP-settings te wijzigen. Om de USB-interface te kunnen gebruiken, moet de “Phoenix Contact USB to UART Interface” driver geïnstalleerd zijn. 1. In het tabblad “Extended settings” kunnen de gewenste IP-settings ingegeven worden. Verzenden van deze settings gebeurt door te klikken op “Send” (zie figuur 4.22). Figuur 4.22: Verzenden van de IP-settings 2. Vervolgens moet het communicatiepad ingesteld worden op de USB-interface, zie figuur 4.23. Figuur 4.23: USB-interface als communicatiepad kiezen 3. Een melding verschijnt indien de service correct uitgevoerd is, zie figuur 4.24. 4. Om de nieuwe IP-settings effectief aan te nemen, moet de controller nog heropgestart worden. 4 Aanmaken van een project met de AXC1050 52
  59. 59. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 4.24: IP-settings succesvol verzonden 4 Aanmaken van een project met de AXC1050 53
  60. 60. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 4.4.5 Communicatie opzetten tussen PC en PLC Eens bij de controller en op de PC het juiste IP-adres ingesteld staat, kan de communicatie geactiveerd worden. Hiervoor wordt de AXC1050 aangeklikt in het window “Bus Structure” (links) en wordt het tabblad “Communication” gekozen in het window “Device Details”, zie figuur 4.25. Figuur 4.25: ‘Communication’-tabblad om verbinding te maken Na het instellen van het juiste IP-adres van de controller kan de communicatie getest worden via de knop “Test”, zie figuur 4.25. Na enkele seconden zal de indicatiebar groen oplichten zoals in figuur 4.26. Vervolgens kan op ‘Apply’ geklikt worden om te bevestigen. Ter controle zal links in de boomstructuur het IP-adres wijzigen. Figuur 4.26: Geslaagde communicatietest 4 Aanmaken van een project met de AXC1050 54
  61. 61. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 4.5 De AXIOLINE configuratie Nu het communicatiepad tussen de controller en de PC actief is, kunnen de extra modu- les met de controller verbonden worden. Het AXIOLINE systeem kan automatisch ingelezen worden. Bij deze starterkit worden 3 AXIOLINE modules verbonden met de controller: – AXL F DI8/1 DO8/1 1H, module met 8 digitale ingangen en 8 digitale uitgangen – AXL F AO4 1H, module met 4 analoge uitgangen – AXL F AI4 U 1H, module met 4 analoge ingangen, spanningssignalen Om de bus in te lezen moeten de volgende stappen doorlopen worden: 1. Ga naar de “Bus Structure” binnen de “Bus Configuration Workspace”. 2. Selecteer via een rechtermuisklik op “#Axioline” de functie “Read Axioline”, zie figuur 4.27. Figuur 4.27: Read Axioline 3. De bus wordt automatisch uitgelezen en er wordt een overzicht gegeven van de gevon- den modules, zie figuur 4.28 4. Na bevestiging ziet de uiteindelijke busstructuur eruit zoals in figuur 4.29 4 Aanmaken van een project met de AXC1050 55
  62. 62. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 4.28: Gevonden modules Figuur 4.29: Uiteindelijke busstructuur 4 Aanmaken van een project met de AXC1050 56
  63. 63. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 4.6 Compileren en downloaden Het project bevat nu alle informatie omtrent de busconfiguraties (Ethernet & INTERBUS) en is er een actieve communicatie. Op dit moment is het mogelijk om het project te compileren en te downloaden om eventuele fouten te herkennen. compileren → downloaden naar de controller → cold start uitvoeren. Enkele belangrijke sneltoetsen betreffende het compileren: Figuur 4.30: Compileren en downloaden Figuur 4.31: Sneltoetsen 4 Aanmaken van een project met de AXC1050 57
  64. 64. 5 Uitgewerkt Voorbeeldprogramma 5.1 Inleiding Hieronder wordt een eenvoudig voorbeeldprogramma stap voor stap omschreven. De be- oogde werking bestaat uit 2 delen: 1. PC WorX: In PC WorX wordt een eenvoudig programma geschreven die een transport- band met telfunctie voorstelt. Daarnaast wordt ook een analoge waarde binnengelezen en gevisualiseerd op een LED-bar. 2. Webvisit: De ILC131 ETH beschikt over een webserver. Bij deze oefening is het de bedoeling dat een webpagina aangemaakt wordt waarmee de transportband gevisua- liseerd wordt, alsook de aansturing ervan mogelijk wordt. De toestand van de analoge ingang zal hier ook worden gevisualiseerd. 5 Uitgewerkt Voorbeeldprogramma 58
  65. 65. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 5.2 Opdrachtomschrijving Na een correcte hardwareconfiguratie wordt aan de hand van een voorbeeldprogramma de programmeeromgeving van PC WorX, conform de IEC61131-3 norm, verder toegelicht. De opdracht omvat een transportband met een bedienkastje en een lampenzuil. Een motor, die in snelheid regelbaar is, laat de transportband draaien. Met behulp van een startknop (NO) kan de band gestart worden. Met de stopknop (NC) kan de band gestopt worden. Een veiligheidrelais (NC) wordt eveneens op het kastje gemonteerd en wordt als ingang op de PLC binnen genomen. De lampenzuil bestaat uit een rode en groene lamp. De rode lamp gaat branden wanneer de noodstop (veiligheidsrelais) ingedrukt is. De groene lamp brandt continu wanneer de transportband draait en de werking OK is. De groene lamp brandt niet als de rode lamp brandt. Wanneer alle voorwaarden OK zijn (geen noodstop), maar er is nog niet gestart, gaat de groene lamp pulsen (halve seconde hoog, halve seconde laag). Met behulp van een potentiometer (analoge ingang) kan de transportband in snelheid ge- stuurd worden (analoge uitgang). Figuur 5.1: De transportband 5 Uitgewerkt Voorbeeldprogramma 59
  66. 66. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 5.3 Uitwerking Eerst en vooral moet er omgeschakeld worden naar het werkgebied “IEC Programming”. Met- een is duidelijk dat PC WorX conform de IEC 61131-3 norm opgebouwd is. In het venster “Pro- ject Tree Window” zijn er enkele duidelijke onderverdelingen terug te vinden. Figuur 5.2: Projectstructuur Er is een mapstructuur voor libraries, voor datatypes, voor POU’s en er is de Physical Hardware. Op figuur 5.2 is deze structuur afgebeeld. Onder “Physical Hardware” is de hoofdstructuur terug te vin- den. De STD_CNF (standaard configuratie) bestaat uit een STD_RES (standaard resource) welke hier de ILC 150 ETH is. Deze resource kan dan verschillende Tasks uitvoeren. Bij de opstart van een nieuw project is er telkens een “Main program” voorzien onder het mapje “Logical POU’s” welke geactiveerd is binnen de “Default task”. 5.3.1 Definiëren van de variabelen Vooreerst wordt er een onderscheid gemaakt tussen lokale en globale variabelen. • Lokale variabelen Lokale variabelen worden gedefinieerd op POU niveau. Deze variabelen kunnen enkel gebruikt worden binnen de POU waarin ze aangemaakt worden. Naast het gebruik van lokale variabelen als VAR kunnen lokale variabelen ook op een ander manier gebruikt worden. Hier wordt onderscheid gemaakt naargelang het type POU. Binnen een functie kunnen lokale variabelen als VAR_INPUT gedefinieerd worden. Deze zullen de ingangsparameters van de functie worden. Binnen een functiebouwsteen kunnen lokale variabelen als VAR_INPUT, VAR_OUTPUT en als VAR_IN_OUT. Via deze variabelen worden alle input- en outputparameters van de functiebouwsteen gedefinieerd. • Globale variabelen Globale variabelen worden gedefinieerd op project niveau. Deze variabelen kunnen over het volledige project afgevraagd of gemanipuleerd worden. Hier moet er onder- scheid gemaakt worden tussen systeem variabelen en user variabelen. 5 Uitgewerkt Voorbeeldprogramma 60
  67. 67. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT – SYSTEM variabelen Systeem variabelen zijn voorgedefinieerde variabelen, afhankelijk van de gekozen controller, welke sowieso altijd beschikbaar zijn. Een lijst van alle systeemvariabe- len is terug te vinden onder het item “Global Variables” in de Project Tree Window, zie figuur 5.3. Figuur 5.3: Systeemvariabelen 5 Uitgewerkt Voorbeeldprogramma 61
  68. 68. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT – USER variabelen Naast de systeemvariabelen zal de gebrui- ker ook een lijst met globale user variabelen. Deze kunnen beter onderverdeeld worden in verschillende groepen om dusdanig een goed overzicht te bewaren tussen alle globale va- riabelen. Daartoe kunnen nieuwe groepen aangemaakt worden onder het item “Global Variables”. Figuur 5.4: aanmaken groepen voor globale variabelen Klik op de lijn “System Variables”, rechtermuistoets en selecteer het item “Insert Group”. Op die manier kunnen betekenisvolle groepen aangemaakt. Maak 3 groe- pen aan met de volgende namen: ∗ Analoog ∗ Digitaal I/O ∗ Webvisit Figuur 5.5: Globale user variabelen indelen 5.3.2 Aanmaken van een nieuwe POU Het aanmaken van een nieuwe POU kan op twee manieren. Enerzijds links in de boomstruc- tuur met een rechtermuisklik op “Logical POUs” gevolgd door “Insert” en de gewenste POU. Anderzijds door bovenaan in de werkbalk rechtstreeks met de 4 aangeduide icons te werken. Er kan een keuze gemaakt worden tussen een nieuw programma ( ), een nieuwe functie- bouwsteen ( ) of een nieuwe functie ( ). 5 Uitgewerkt Voorbeeldprogramma 62
  69. 69. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Vervolgens moet de POU in het window “Insert” verder gespecificeerd worden. Eén van de vijf programmeertalen (conform de norm) moet gekozen worden voor de POU. Enkel in het geval van een functie moet een “Datatype” of “return value” geselecteerd worden, zie figuur 5.6. Figuur 5.6: Aanmaken van een functie die een boolean teruggeeft Per POU worden drie werkbladen aangemaakt: • NaamPOUT( ); Textveld: alles wat hierin genoteerd wordt, zal verschijnen bij het op- vragen van de help omtrent deze POU. • NaamPOUV( ): Veld voor het ingeven van variabelen • NaamPOU( , , , , ): Programmeerveld 5.3.3 Aanmaken van een nieuwe POU groep Een POU groep wordt gebruikt om een duidelijkere structuur te creëren in een (groot) pro- ject. Zo kunnen bv. alle programma’s, functies en functieblokken elk apart een groep krijgen, maar er kan bv. ook een groep aangemaakt worden voor een aantal functies en/of functie- blokken die een gemeenschappelijk doel hebben. Om een POU groep aan te maken wordt er met de rechtermuisknop geklikt op ’Logical POUs’, klik vervolgens op ’insert’ en ’POU group’ (zie figuur 5.7). 5 Uitgewerkt Voorbeeldprogramma 63
  70. 70. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 5.7: POU groep toevoegen In deze opdracht zullen er 2 POU groepen aangemaakt worden: • FBs • Programs Na het aanmaken van beide groepen kan het hoofdprogramma “Main” versleept worden naar de POU groep “Programs”. 5.3.4 Aanmaken van een variabele Binnen een POU moeten variabelen aangemaakt worden. Dit kan op verschillende manieren gebeuren: – Door te dubbelklikken op een ingangs- of uitgangsbolletje van een functiebouwsteen. – Via een rechtermuisklik ergens in het werkblad en te kiezen voor “Variable”. – Door de sneltoets ‘F5’ te gebruiken. In ieder geval verschijnt het “Variable Properties” venster. De variabele moet een naam krij- gen, een datatype en een scoop (local of global). Afhankelijk van de scoop kan de ‘usage’ geselecteerd worden, bijvoorbeeld VAR_INPUT voor een digitale ingang. De mogelijkheden zijn te zien in figuur 5.8. (a) Bij local scope (b) Bij global scope Figuur 5.8: Mogelijke ‘usage’ voor een variabele 5 Uitgewerkt Voorbeeldprogramma 64
  71. 71. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Opmerking: Indien het niet mogelijk is om de ‘Definition scope’ te wijzigen, moet de check- box ‘Show all variables of worksheets’ afgevinkt worden. Om een overzichtelijk project te verkrijgen worden alle variabelen ingedeeld in groepen: één groep voor input parameters, één voor output parameters. . . Deze groepen moeten aange- maakt worden in het variabelenveld van de POU ( ). De groepen worden standaard voor- zien, zelfs als deze niet gebruikt worden, zie figuur 5.9. De verschillende groepen zijn: – Input Parameters – Output Parameters – InOut Parameters – Local Parameters – External Variables – FB Instances Figuur 5.9: Indeling van variabelen in groepen Voor iedere variabele die aangemaakt wordt, kan in het “Variable Properties” venster inge- steld worden onder welke groep de variabele moet komen. Dit via ‘Local Variable Groups’, zie opnieuw figuur 5.8. 5.3.5 Aanmaken van een functieblok “Transportband” • De transportband wordt gemaakt in een functieblok. Om een nieuwe functieblok aan te maken, kies links bovenaan. • Selecteer de programmeertaal FBD ("Function Block Diagram") en stel bovenaan de gewenste bouwsteennaam in (hier: ‘Transportband’). 5 Uitgewerkt Voorbeeldprogramma 65
  72. 72. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 5.10: Nieuwe functieblok aanmaken • Bevestig met OK. De bouwsteen wordt aangemaakt. • Dubbelklik op . Maak daar de volgende groepen aan zoals in figuur 5.11: – Input Parameters – Output Parameters – InOut Parameters – Local Parameters – External Variables – FB Instances Figuur 5.11: Aanmaken van variabelengroepen • Open het werkblad van de functieblok door te dubbelklikken op • Nu kan het programma voor de transportband geschreven worden. • Voeg een ‘Set Reset’ in vanuit de Edit Wizard aan de rechterzijde: selecteer onder “Favorites” ‘RS’ en sleep het in het werkveld, wijzig de Instance van de bouwsteen naar 5 Uitgewerkt Voorbeeldprogramma 66
  73. 73. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT “oRS_StartStop”, wijzig de Local Variable Group naar “FBs” en bevestig vervolgens met OK. Figuur 5.12 Figuur 5.13: Instance voor FB • Op dezelfde manier wordt een OR functie vanuit de Edit Wizard opgehaald. Let op het feit dat er voor de OR functie geen instance moet toegekend worden (verschil functie- bouwsteen en functie). Figuur 5.14: Transportband FBD • De uitgang van de OR functie wordt nu met de RESET1 ingang van de bouwsteen RS_StartStop verbonden. • Nu moeten enkel nog de lokale variabelen aangemaakt worden. Dit kan op 2 manieren gebeuren: – De variabele in- of uitgangen van een bouwsteen zijn gemakkelijk aan te maken door dubbel te klikken op het bolletje bij de in- of uitgang. 5 Uitgewerkt Voorbeeldprogramma 67
  74. 74. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT – Klik op een plaats in het werkblad, klik rechtermuisknop en kies voor het item “Variable”. • In beide gevallen wordt het scherm zoals in figuur 5.15 weergegeven. Figuur 5.15: Lokale variabele aanmaken • Stel linksboven de gewenste naam in, bv.: i_xVeiligheidsrelais. • Kies als datatype Bool en kies bij het item “Usage” voor VAR_INPUT. • De scope voor deze “User Variable” staat ingesteld op local. • Kies bij “Local Variable Groups” voor Inputs. • Op dezelfde manier worden volgende variabelen gedeclareerd: Naam Data type Usage Scope Local Var. Groups Global Var. Groups i_xStart Bool VAR_INPUT Local Inputs i_xStop Bool VAR_INPUT Local Inputs i_xVeiligheidsrelaisBool VAR_INPUT Local Inputs q_xMotor Bool VAR_OUTPUT Local Outputs q_xRood Bool VAR_OUTPUT Local Outputs q_xGroen Bool VAR_OUTPUT Local Outputs Figuur 5.16 geeft de lijst weer na het invoegen van alle variabelen. 5 Uitgewerkt Voorbeeldprogramma 68
  75. 75. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 5.16: Lijst met variabelen van de functieblok “Transportband” Vooraleer de functieblok verder gebruikt kan worden moet deze eerst gecompi- leerd worden! Figuur 5.17: Compileer de functieblok 5.3.6 Het hoofdprogramma • In het werkblad “Main” kan de aangemaakte functie- bouwsteen opgevraagd worden. Voeg deze toe door in de “Edit Wizard” onder de programmanaam te dubbel- klikken op de functieblok ’Transportband’. Deze func- tiebouwsteen kan nu eventueel een tweede keer opge- vraagd worden om een tweede transportband voor te stellen. Figuur 5.18 • Nu moeten ook nog alle variabelen toegekend worden. De 8 digitale ingangen en de 4 digitale uitgangen on board van de ILC 131 ETH, zijn te vinden als systeem- variabelen. Dubbelklikken op het aansluitpunt (niet op de naam zelf) van de ingang i_xVeiligheidsrelais: 5 Uitgewerkt Voorbeeldprogramma 69
  76. 76. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 5.19: On-board input toevoegen • Kies voor Global, en via de selecttoets onder Name kan een keuze gemaakt worden tussen alle systeemvariabelen. Selecteer de ONBOARD_INPUT_BIT0. • Het programma kan nu als volgt worden afgewerkt: Figuur 5.20 Opmerking: Signalen kunnen geínverteerd worden door ter hoogte van de gewenste in- of uitgang van de functiebouwsteen, net buiten de functiebouwsteen te klikken met de rechtermuisknop. Dan kan ‘Toggle FP Negation’ geselecteerd worden. Daarnaast kan dit ook gebeuren door de in- of uitgang van de functiebouwsteen te selecteren en de sneltoets SHIFT+F5 te gebruiken. • Vergeet niet alles opnieuw te compileren! 5.3.7 Testen van het programma Het testen van het programma met de ILC 131 ETH kan tot slot gebeuren na het compileren downloaden (zie 4.6 op pagina 57) van het project. Met het icoon (Debug On/Off) kan het opsporen van fouten gestart worden. Onder elke variabele wordt nu zijn status of actuele waarde weergegeven. 5 Uitgewerkt Voorbeeldprogramma 70
  77. 77. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Door het schakelen van de derde schakelaar op de switchbox kan de transportband geac- tiveerd worden. De statusveranderingen kunnen nu zowel online als op de modules zelf worden teruggevonden. Figuur 5.21 5.3.8 Deel 2 Tijdens het tweede deel van de opdracht zal de knipperlichtfunctie van de groene lamp op- gebouwd worden. • Maak in de POU group “FBs” een nieuwe functieblok met de naam “AanUitpuls”. • Ga naar de lijst met variabelen en maak er opnieuw de groepen ‘Input Parameters’, ‘Output Parameters’, ‘InOut Parameters’, ‘Local Variables’, ‘External Variables’ en ‘FB instances’ aan. • Voeg een ‘On delay’ timer, een ‘Puls’ timer en een ‘AND’ functie in vanuit de Edit Wizard. Benoem deze respectievelijk TON_1 en TP_1. Voor de AND functie moet geen instance toegekend worden. • Uiteindelijk moet alles aan elkaar verbonden worden tot de volgende functionaliteit bekomen wordt: – Let wel: Het ingangssignaal van de timer-on-delay dient geínverteerd te worden. Dit kan door te dubbelklikken op de ingang van de functiebouwsteen en het vakje “negated” aan te vinken. Figuur 5.22 • Maak de variabelen aan: 5 Uitgewerkt Voorbeeldprogramma 71
  78. 78. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Naam Data type Usage Scope Local Var. Groups Global Var. Groups i_tTotalePulsTijd Time VAR_INPUT Local Inputs i_tPulsAanTijd Time VAR_INPUT Local Inputs i_xEnable Bool VAR_INPUT Local Inputs q_xPuls Bool VAR_OUTPUT Local Outputs • Compileer de functieblok! • Open het werkblad van de functieblok ‘Transportband’ • Voeg daar de functiebouwsteen ‘AanUitpuls’ toe via de ‘Edit Wizard’. • Vervolledig het programma als volgt: Figuur 5.23 • Compileer en dowload het project. • Test het project m.b.v. de ILC 131 ETH. 5 Uitgewerkt Voorbeeldprogramma 72
  79. 79. 6 Ladder 6.1 Voorbeeld: Transportband Om de programmeertaal Ladder Diagram uit te leggen wordt er gewerkt met de basisoefe- ning ‘Transportband’. • Maak een nieuwe functieblok aan, selecteer de programmeertaal LD (“Ladder Dia- gram”) en stel bovenaan de gewenste bouwsteennaam in (hier: ‘Transportband_LD’). Figuur 6.1: Aanmaken functieblok in LD • Bevestig met OK. De bouwsteen wordt aangemaakt. • Dubbelklik op . Maak daar de volgende 4 groepen aan: – Inputs – Outputs – Locals – FBs • Open het werkblad van de functieblok door te dubbelklikken op • Nu kan het programma voor de transportband in Ladder Diagram geschreven worden. 6 Ladder 73
  80. 80. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT • Voeg een nieuw netwerk in via: Figuur 6.2: Werkbalk LD • Voeg een ‘Set Reset’ in vanuit de Edit Wizard aan de rechterzijde: selecteer onder “Favorites” ‘RS’ en sleep het in het zojuist aangemaakte netwerk, wijzig de Instance van de bouwsteen naar “RS_StartStop”, wijzig de Local Variable Group naar “FBs” en bevestig vervolgens met OK. Figuur 6.3 • Klik in de bouwsteen ‘RS_StartStop’ op ‘Reset1’. En klik dan op het icoontje ‘Contact left’. Contact ‘C002’ komt dan te voorschijn zoals op figuur 6.4. Figuur 6.4 • Verbind het begin van ’COO2’ met powerrail ’001’. • Er zijn echter 2 variabelen die de ingang ‘Reset1’ kunnen manipuleren. In Ladder Dia- gram wordt een OR-functie voorgesteld als een parallele weergaven van contacten. Bij een AND-functie is dit in serie. Voeg nu parallel met ‘C002’ een nieuw contact in. 6 Ladder 74
  81. 81. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 6.5 • Doe hetzelfde over coil ‘C001’. Hier worden dus twee uitgangen voorgesteld. • Nu moeten enkel nog de variabelen gedeclareerd worden. Dit gebeurt door op het contact of de coil te klikken. Ga nu als volgt te werk voor het declareren van bv. ‘COO0’: Figuur 6.6: Invoegen variabele – Stel linksboven de gewenste naam in, bv.: i_xStart. – Kies als datatype Bool en kies bij het item “Usage” voor VAR_INPUT. – De scope voor deze “User Variable” staat ingesteld op local. – Kies bij “Local Variable Groups” voor Inputs. – Kies onderaan voor ‘Contact’. – Het type mag ongewijzigd blijven. • Voeg een tweede netwerk toe en zorg ervoor dat uiteindelijk figuur 6.7 bekomen wordt. 6 Ladder 75
  82. 82. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 6.7: Uiteindelijk resultaat 6 Ladder 76
  83. 83. 7 Structured Text 7.1 Voorbeeld: Transportband • Maak een nieuwe functieblok aan volgens figuur7.1, selecteer de programmeertaal ST (“Structured Text”) en stel bovenaan de gewenste bouwsteennaam in (hier: ‘Transport- band_ST’). Figuur 7.1: Aanmaken nieuwe functieblok • Bevestig met OK. De bouwsteen wordt aangemaakt. • Dubbelklik op . Maak daar de volgende 4 groepen aan: Inputs, Outputs, Locals en FBs • Open het werkblad van de functieblok door te dubbelklikken op • Nu kan het programma voor de transportband in Structured Text geschreven worden. • Voeg een ‘Set Reset’ in vanuit de Edit Wizard aan de rechterzijde: selecteer onder “Favorites” ’RS’ en sleep het in het werkveld, wijzig de Instance van de bouwsteen naar “oRS_StartStop”, wijzig de Local Variable Group naar “FBs” en bevestig vervolgens met OK. • De lokale variabelen moeten ingevuld worden op de plaatsen waar er (* BOOL *) staat. Dit wordt als volgt gedaan: 7 Structured Text 77
  84. 84. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT – Typ de gewenste variabele(n) in. Selecteer de variabele, rechtermuisklik en klik op ‘Variabele’. Het volgende scherm komt te voorschijn: Figuur 7.2: Variabel properties – Laat de naam ongewijzigd. In dit geval is dit dus i_xStart. – Kies als datatype Bool en kies bij het item “Usage” voor VAR_INPUT. – De scope voor deze “User Variable” staat ingesteld op local. – Kies bij “Local Variable Groups” voor Inputs. • Doe nu hetzelfde voor de andere variabelen en vervolledig als volgt: Figuur 7.3: Functieblok Transportband in ST • Vergeet niet iedere regel code met ‘;’ af te sluiten! 7 Structured Text 78
  85. 85. 8 WebVisit 8.1 Inleiding WebVisit is een softwarepakket dat mee geínstalleerd wordt tijdens het installeren van PC WorX. Met behulp van deze software kan op een grafische manier een webpagina aange- maakt worden en gedownload worden naar de ILC. Op deze manier kunnen globale variabe- len van het programma worden gevisualiseerd en gemanipuleerd. De methode om een variabele in een WebVisit toepassing te gaan gebruiken bestaat er ener- zijds in de variabele als een VAR_GLOBAL te declareren. Anderzijds moet ook de “PPD check- box” aangevinkt worden waardoor in het programma vastgelegd wordt dat de variabele te benaderen is vanaf de webpagina (zie figuur 8.1). Figuur 8.1: PDD optie aanvinken Een overzicht van alle globale in- en uitgangen, welke als PDD aangevinkt zijn, is ook te vinden bij de lijst “Global_Variables” (links in het ‘Project Tree Window’). Figuur 8.2: PDD controleren in “Global_Variables”-lijst Om nu een WebVisit toepassing te maken met de transportband moet het programma aan- 8 WebVisit 79
  86. 86. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT gepast worden zoals in figuur 8.3: een OR- poort wordt bij iedere ingang toegevoegd, iedere keer wordt een nieuwe globale variabele aangemaakt. Bij iedere variabel moet de optie PDD aangevinkt worden. Op die manier kan de transportband bediend worden met zowel de ana- loge als de digitale schakelaars via WebVisit. Ook moet er bij elke “ONBOARD_INPUT_BITx” en “ONBOARD_OUTPUT_BITx” PDD aangevinkt worden. Figuur 8.3: Main programma voor de transportband Tijdens het compileren van een PC WorX project wordt er door de software steeds een “PDD.CSV” bestand gegenereerd. Dit bestand bevat een lijst met de variabelennamen die vanuit de web- pagina kunnen benaderd worden. Figuur 8.4: CSV-file van alle weer te geven PDD-variabelen Figuur 8.4 toont een voorbeeld van een dergelijk bestand. Wanneer Microsoft Office op de PC genstalleerd is zal dit bestand (met extensie .CSV) geopend kunnen worden in Excel. Het PDD.CSV bestand is terug te vinden in de map horende bij het PC WorX project. PC WorX maakt namelijk voor elk project een map aan met dezelfde naam als het PC WorX project en plaatst deze map op dezelfde locatie (directory) als het project zelf. In deze map is het PDD.CSV bestand terug te vinden onder: Locatie van het project...ProjectnaamCSTD_CNFRSTD_RES 8 WebVisit 80
  87. 87. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 8.2 Een project uitwerken in WebVisit Start de WebVisit software via “Start → Programma’s → Phoenix Contact → AUTOMATION- WORX Software suite 2013 1.81 → WebVisit 6.21.xx” 8.2.1 Een nieuw project aanmaken – Sluit eventuele openstaande projecten af door onder “File” voor “Close project” te kie- zen. – Een nieuw project aanmaken gebeurt door in het beginscherm op “New Project” te klikken of onder “File”, “New Project. . . ” te kiezen. In de 7 stappen moet een naam ge- kozen worden voor het project en een locatie, vervolgens enkele grafische instellingen en andere opties. Deze kunnen later nog aangepast worden. – Na het afronden van de ‘New Project’-wizard moeten de belangrijke instellingen gebeu- ren. Bovenaan kan via “Project → Project Configurations” en te klikken op het tabblad ‘Project Advanced’ het venster uit figuur 8.5 geopend worden. Figuur 8.5: PCWorx project + PPO lijst instellen Het is belangrijk om in te stellen met welk PC WorX project zal gecommuniceerd worden, en welke het daarbij horende “PDD.CSV” bestand is. Onder PPO Variable List moet het pad naar het PCWorX project (.mwt bestand) ingesteld wordt, het bijhorende PDD.CSV bestand zal automatisch opgezocht en ingesteld worden door de WebVisit software. 8 WebVisit 81
  88. 88. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT – In het tabblad ‘Runtime Configurations’ onder de ‘Project Configurations’ kan de ‘Client Technology’ ingesteld worden, zie figuur 8.6. Tot voor kort was enkel Java mogelijk, wat problemen gaf voor systemen waarop Java niet geïnstalleerd is. Met de nieuwe ILC 1x1-reeks kan vanaf firmwareversie 4.30 ook gekozen worden voor HTML5, wat geen bijkomende software vereist en daarom ideaal is voor visualisaties op tablets en dergelijke. Figuur 8.6: Kiezen van de client technology Het verdere verloop van deze WebVisit cursus is gebaseerd op de eerder aangemaakte oe- fening. Het is de bedoeling een webpagina aan te maken waarmee de transportband kan gestart en gestopt worden. Ook de transportband zelf wordt op deze pagina gevisualiseerd. Het geheel wordt gecontroleerd door een hoofdpagina van waaruit de andere pagina’s opge- roepen kunnen worden. 8.2.2 Een nieuwe webpagina aanmaken Een nieuwe webpagina (xxx.teq) invoegen gebeurt als volgt: 8 WebVisit 82
  89. 89. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 8.7: Nieuwe webpagina aanmaken • Geef de eerste pagina bijvoorbeeld de naam ‘Transportband’. • Selecteer de zopas aangemaakte pagina “Transportband.teq” links onder ‘Project Files’. • Een object toevoegen op de pagina kan door het gewenste object te selecteren in de ‘painters gallery’ (te vinden zowel rechts in de sidebalk, zie figuur 8.8, als boven in de toolbar) en vervolgens op het werkvlak te klikken. De positie en grootte van het object kunnen aangepast worden. Figuur 8.8: Painters gallery • Voeg in het venster 4 buttons en 2 cirkels toe zoals in figuur 8.9: 8 WebVisit 83
  90. 90. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 8.9 • Dubbelklik op de bovenste button om de eigenschappen te bekomen. Dit wordt de startknop. De belangrijkste basiseigenschappen uit het “Properties”-venster zijn: – General: algemene lay-out instellingen voor het object zoals grootte, positie, kleur, font voor tekst. . . – Repaints: instellingen voor data die op het object weergegeven moeten worden. Zo kan per conditie een andere tekst verschijnen op een button. . . – Actions: specifieke instellingen per object. Voor een button zijn dit: ∗ Actions Set Variables: enkel voor een button. Met dit kan een toestand van een variabele veranderd worden naargelang de knop ingedrukt is of niet. ∗ Actions Toggle Increment Variables: enkel voor een button. Met ‘Toggle’ kan een variabele hoog en laag gezet worden met een muisklik. Increment zorgt voor een verhoging van een variabele per muisklik. ∗ Actions Jump: enkel voor een button. Om te navigeren tussen verschillende webpagina’s. – Border Advanced: mogelijkheid om per conditie een ander kleur te geven aan het object via vb. 2-kleurenmode. – Hide-Disable: conditioneel kan een object verschijnen of vervagen. • Figuur 8.10 toont dat onder “Repaints” de tekst op de drukknop gewijzigd kan worden. 8 WebVisit 84
  91. 91. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 8.10 • Nu moet er ingesteld worden wat er gebeurt bij de bediening van de startdrukknop. De werking van de schakelaar wordt opgevat als een ‘Mouse Down/Up’ functie. Dit betekent dat de ingang ‘1’ wordt bij het indrukken van de knop en terug ‘0’ bij het loslaten ervan. • Vink hiervoor onder ‘Actions Set Variables’ zowel de ‘Set Var On Mouse Down’ als ‘Set Var on Mouse Up’ optie aan. Kies bij beiden voor het type ‘PPO’ en selecteer als naam “@GV.IN_xWebStart” (zie figuur 8.11). Een ‘PPO’ (Process POint) is een plc-variabele die zichtbaar gemaakt wordt op de webpagina. Stel ‘Value = 1’ bij ‘Set Var On Mouse Down’ en ‘Value = 0’ bij ‘Set Var On Mouse Up’. • Doe hetzelfde voor de tweede button. Dit wordt de stopknop, dus de gekozen ‘PPO’ wordt in dit geval “@GV.IN_xWebStop”. • De derde en kleinste button wordt de noodknop. In tegenstelling tot de start -en stop- knoppen moet deze knop ingedrukt blijven bij het loslaten van de muis. Er wordt ge- bruik gemaakt van de ‘Toggle’ functie. Dit betekent dat de noodstop ingeschakeld wordt 8 WebVisit 85
  92. 92. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT (a) PPO instellen (b) Muisactie instellen Figuur 8.11: Bediening startknop instellen bij een eerste maal klikken op de drukknop. Een tweede maal klikken op dezelfde knop schakelt de noodstop terug uit. Figuur 8.12: Toggle instellen • Het koppelen van de bovenste cirkel met de variabele “ONBOARD_OUTPUT_BIT1” zodat deze de groene lamp voorstelt, gebeurt onder de optie ‘Boarder Advanced’. Daar kan de binnenkleur van de cirkel veranderd worden afhankelijk van de toestand van de plc- variabele. Indien de variabele laag (==0) is, zal ‘Color1’ aangenomen worden. Is de variabele hoog (==1), zal ‘Color2’ gebruikt worden, zie figuur 8.13. • Doe nu hetzelfde voor de onderste cirkel die de rode lamp voorstelt. • Om de werking van de motor te visualiseren wordt een tweede webpagina aangemaakt. Klik dus opnieuw op ‘Project’ → ‘Add to project’ → ‘New...’ en geef de pagina de naam “Motor.teq”. 8 WebVisit 86
  93. 93. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 8.13: Kleur veranderen in ‘Border Advanced’ eigenschappen • De motor wordt voorgesteld als een grote cirkel die rood is als de transportband stil ligt en groen is als de motor van de transportband werkt. Dit wordt opnieuw ingesteld via ‘Border Advanced’, zie figuur 8.14: • Als de noodstop ingedrukt is (dus als de rode lamp brandt) moet de tekst “Noodstop is ingedrukt!” verschijnen. Dit wordt gedaan door gebruik te maken van de ‘hide’ optie, zie figuur 8.15: Figuur 8.15: Tekst conditioneel zichtbaar maken • Het moet het ook mogelijk zijn om te navigeren tussen de verschillende webpagina’s. 8 WebVisit 87
  94. 94. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 8.14: Conditioneel tussen 2 kleuren switchen Hiervoor wordt op deze pagina een button toegevoegd met de tekst “Terug”. De link terug naar de vorige pagina kan zeer eenvoudig ingesteld worden onder ‘Actions Jump’ door de optie ‘Back Jump’ aan te selecteren, zie figuur 8.16. Figuur 8.16: Jump actie naar vorige pagina instellen • Ga nu terug naar het scherm ‘Transportband.teq’, selecteer de overgebleven button en geef deze de naam ‘Transportband’. Deze drukknop moet naar het scherm van de motor leiden. Onder ‘Actions Jump’ kan de pagina ingesteld worden waarnaar omge- schakeld moet worden. Figuur 8.17 toont hoe dit moet. 8 WebVisit 88
  95. 95. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 8.17: Jump actie naar specifieke pagina instellen Tot slot dient nog 1 instelling te gebeuren om er voor te zorgen dat de ‘Transportband.teq’ wel degelijk als startpagina wordt weergegeven. Via ‘Projects → Project Configurations → Applet Advanced’ wordt het venster zoals in figuur 8.18 terug opgeroepen. Hierin kan de “Main TEQ” ingesteld worden. Geef hiervoor ‘Transportband.teq’ in zodat dit de startpagina wordt bij het surfen naar de ILC. Figuur 8.18: Startpagina instellen Let ook op de instelling ‘period’. Standaard staat dit ingesteld op 1000ms wat betekent dat elke seconde het beeld van de webpagina geüpdate wordt. Bij het visualiseren van een knip- perlicht van 1Hz is dit uiteraard te traag. Daarom zal deze parameter moeten verlaagd wor- den tot bijvoorbeeld 50ms om een snellere en meer correcte weergave van het knipperlicht te bekomen. 8.2.3 Compileren van het project Net als in PC WorX moet een project gecompileerd worden, of met andere woorden, alle gemaakte instellingen moeten worden vertaald naar HTML code. Dit kan uitgevoerd worden onder ‘Project’ → ‘Build All’ ( ). Een simulatie van de webpagina’s kan opgeroepen worden via de simulatieknop ( ). De interactie met de plc blijft in simulatiemode achterwege. 8 WebVisit 89
  96. 96. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 8.2.4 Downloaden van het project Nu de HTML pagina aangemaakt is kan het project gedownload worden. Om het project naar de ILC 131 ETH te downloaden wordt gebruik gemaakt van de ftp-server van de ILC, zie figuur 8.19: • Roep het downloadvenster op: Figuur 8.19: Downloaden via ftp-server van de ILC • Geeft het IP-adres van de ILC (192.168.0.11) in en druk op “Connect”, zie figuur 8.20. Figuur 8.20: Connectie maken met de plc • De verbinding wordt tot stand gebracht en door een druk op de knop “Download pro- ject” wordt het project gedownload. Figuur 8.21: Downloaden naar de plc • Het oproepen van de webpagina kan nu gebeuren door in een webbrowser (bijvoorbeeld Internet Explorer) het IP-adres van de ILC in te stellen. 8 WebVisit 90
  97. 97. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 8.3 Uitbreiding 8.3.1 Figuur invoegen • Selecteer de optie ‘image’ in de ‘Painters Gallery’. • Kies in het werkgebied de plaats uit waar de afbeelding moet komen. • Figuur 8.22 toont dat onder “Repaints” een figuur die opgeslagen staat op de computer ingevoegd kan worden. Als “Adjust Image” aangevinkt wordt, kan de figuur verschaald worden naar eigen wens. Dit kan gebeuren door de hoogte en de breedte van de figuur in te stellen via het properties menu of door het formaat van de figuur aan te passen door de hoekpunten te verslepen. Figuur 8.22 8.3.2 Background en Foreground TEQ • Maak 2 nieuwe webpagina’s aan (de uitleg hierover is terug te vinden op pagina 82) en geef deze de naam “Knoppenbalk.teq” en “Settings.teq”. • Open de pagina “Knoppenbalk.teq” en voeg onderaan de pagina 3 buttons toe, nl. “Transportband”, “Motor” en “Settings”. Figuur 8.23 • Deze knoppen dienen een jump actie uit te voeren naar hun bijhorende pagina. Stel deze jump acties bij alle 3 de knoppen in. • Het is de bedoeling dat deze pagina de achtergrond (background) wordt van iedere pagina. Stel via ‘Project’ → ‘Project Configurations’ in het ‘View Configurations’-tabblad “Knoppenbalk.teq” in als ‘Background TEQ’ zoals in figuur 8.24 weergegeven wordt. 8 WebVisit 91
  98. 98. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 8.24: Background instellen voor een project Opmerking: De ingestelde achtergrondpagina wordt enkel toegevoegd bij nieuwe webpagina’s (pagina’s aangemaakt nadat de achtergrond ingesteld is zoals hierboven). Voor reeds bestaande pagina’s moet de achtergrond apart toegevoegd worden. Zorg dat de pagina actief is en stel dan via ‘Project’ → ‘Teq view configurations’, de ‘Back- ground view’ in, zie figuur 8.25. Figuur 8.25: Background instellen per view 8 WebVisit 92
  99. 99. 9 Analoge signaalverwerking met de ILC 9.1 Functiebouwsteen voor analoge signaalverwerking Om het toekennen van procesdata en het gebruik van analoge in- en uitgangen toe te lichten wordt een tweede functionaliteit voorzien in het bestaande project. Hiervoor wordt opnieuw een functieblok aangemaakt met de naam ’Analog_In_Out’. Bedoeling is om de analoge ingang (potentiometer) door te koppelen naar de analoge uitgang (LED bar graph). • Dit programma kan heel eenvoudig zijn: Figuur 9.1 • Oproep van deze functiebouwsteen in het programma ’Main’: Figuur 9.2 • Er moeten nu twee variabelen aangemaakt worden om te linken aan de werkelijke fy- sische IO. Deze worden op de volgende manier gedeclareerd, en worden onder ’Project Variables’ geplaatst. 9 Analoge signaalverwerking met de ILC 93
  100. 100. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 9.3: Aanmaken in- en outputvariabele • Uiteindelijk wordt volgend programma bekomen volgens figuur 9.4: Figuur 9.4: Uindelijk programma met in- en uitgangsvariabelen • Via “process data workspace” kunnen deze variabelen aan de fysische IO gekoppeld worden. In deze werkomgeving is er de onderverdeling met links de softwarevariabelen en rechts de hardwarevariabelen. • Onder de groep “Analoog” staan de zopas aangemaakte variabelen. • Rechts staan alle gebruikte in- en uitgangsmodules. De variabelen worden gekoppeld door ze naar de desbetreffende module te slepen. Voor “IN_wPotentiometer1” kies “AI 1 Voltage”. “OUT_wLedBar1” wordt gelinkt aan “1.1.1 Output Voltage”. Dit programma kan nu getest worden. Na het testen blijkt dat er een probleem is. Slechts de halve range van de ledbar wordt gebruikt. Het probleem ontstaat omdat het proceswoord gekoppeld aan de ingangs- en uit- gangsmodule op een verschillende manier gebruikt wordt. Om dit op te lossen worden de proceswoorden van naderbij bekeken. 9.1.1 De analoge ingangsmodules • De analoge ingangsmodules gebruiken een tekenbit: 9 Analoge signaalverwerking met de ILC 94
  101. 101. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 9.5: Proceswoord ingangsmodule • De potentiometer biedt een stroomsignaal aan tussen 0 en 20mA. Uit tabel 9.1 valt af te leiden dat dit door de analoge inputmodule wordt vertaald naar een inputrange tussen 0 en 30000. Tabel 9.1: Omzetfactor analoge signaalverwerking 9.1.2 De analoge uitgangsmodule • De analoge uitgangsbit gebruikt geen tekenbit. Hierdoor kan een extra bit gebruikt worden om nuttige data te verzenden. Figuur 9.6: Proceswoord uitgansmodule • De analoge outputrange wordt voor deze module vertaald naar een waarde tussen 0 en 65535. (=216) De waarde moet van de range van 0 tot 30000 aangepast worden naar een range tussen 0 tot 65535. Daarom moet de waarde van de analoge ingangskaart vermenigvuldigd worden met een schalingsfactor van 65635 gedeeld door 30000, zijnde 2,1845. Daarom wordt de functiebouwsteen als volgt aangepast: 9 Analoge signaalverwerking met de ILC 95
  102. 102. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT Figuur 9.7 9 Analoge signaalverwerking met de ILC 96
  103. 103. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 9.2 Functie De zopas uitgevoerde opdracht is louter datamanipulatie. Hiervoor kan i.p.v. een functie- bouwsteen ook gewoon een functie gebruikt worden. Voeg een functie toe, kies een naam en een programmeertaal. Let op het feit dat de func- tienaam een variabele is en er dus ook een datatype moet toegekend worden. Dit datatype komt overeen met de enige uitgang van de functie. Figuur 9.8: Functie toevoegen De functie in ST wordt dan de volgende code: AnaloogInUit := real_to_word(word_to_real(i_wAnaloogIn) ∗ 2, 1845)); Het programma kan nu gecompileerd en gedownload worden. 9 Analoge signaalverwerking met de ILC 97
  104. 104. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 9.3 Watch Window Figuur 9.9 Een andere handige mogelijkheid om uw programma op te vol- gen is het Watch Window. Eens online kan iedere variabele aan het Watch Window toe- gevoegd worden. Klik in de programmeeromgeving op een variabele, rechter- muistoets en dan kiezen voor het item “Add to Watch Window”. Figuur 9.10 Een andere manier is via het werkblad vari- abelen van een bepaalde functieblok, func- tie of programma: klikken op een variabele, rechtermuistoets en kiezen voor het item “Add to Watch Window”. Activeer het “watch window” via volgend icoon . Figuur 9.11: Watch window 9 Analoge signaalverwerking met de ILC 98
  105. 105. IT Powered Automation: multifunctionele besturingen PHOENIX CONTACT 9.4 Opdracht temperatuursmeting De potentiometer wordt in de volgende opdracht beschouwd als een temperatuurssensor welke een temperatuursrange van -50.0 tot +100.0◦C omzet naar een analoge spanning van 0 tot 10V. Gevraagd wordt om een functiebouwsteen te schrijven welke volgende outputparameters levert: • De temperatuur in graden Celsius. • Een warninguitgang indien de temperatuur kleiner is dan -10.0◦C en groter is dan -20.0◦ C of indien de temperatuur groter wordt dan een warning temperatuursgrens welke als inputparameter wordt meegegeven en kleiner is dan een alarm temperatuurgrens welke als inputparameter wordt meegegeven. • Een alarmuitgang indien de temperatuur kleiner is dan -20.0◦C of indien de tempera- tuur groter wordt dan een alarm temperatuursgrens die als inputparameter meegeven wordt. Verder moet er nagegaan worden indien de inputparameters correct ingegeven worden. Hier- bij moet de warninggrens kleiner zijn dan de alarmgrens. Indien dit niet zo is wordt de warninggrens op 40.0◦C geplaatst en zal de alarmgrens op 60.0◦C geplaatst worden. Deze opdracht wordt uitgewerkt in FBD en/of ST. Het resultaat wordt een functiebouwsteen waarbij de oproep ervan volgend resultaat heeft. Figuur 9.12: Functiebouwsteen temperatuursopvolging Bestuur het resultaat en ga na waarom er hier gebruik gemaakt wordt van VAR_INOUT para- meters. 9 Analoge signaalverwerking met de ILC 99

×