Basisopleiding TwinCAT 3
Rudi Grouset
Support Engineer
2
Info
3560 Lummen
Tel: +32 13 / 25 22 00
Fax: +32 13 / 25 22 01
info@beckhoff.be
www.beckhoff.be
3
Inhoud
Pagina Titel
5 Algemeen - Engineering (XAE) & Runtime (XAR)
36 TwinCAT 3 op mijn PC - Installatie
43 Netwerkinstellingen
52 Engineering XAE in de praktijk
63 Configuratie PLC hardware met System Manager
65 I/O configuratie | PLC hardware configuratie
83 PLC project
86 Een eerste programma
89 Variabelen
100 Linken Mapping
108 Downloaden configuratie naar XAR (Runtime soft PLC)
116 PLC programma
116 Programmastructuur
121 FB_Flash
123 Ladder Diagram (LD)
135 Function Block Diagram (FBD)
148 Continuous Function Chart (CFC)
158 Structured Text (ST)
4
Inhoud
Pagina Titel
166 PRG_Knipperlichten
168 Ladder Diagram (LD)
178 Function Block Diagram (FBD)
188 Continuous Function Chart (CFC)
199 Structured Text (ST)
207 MAIN
209 Samenvatting
5
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
6
Software oplossingen
IEC-61131-3
Software PLC
Motion Control
Software NC/NC I
PC Based Control
7
Architectuur (XAA)
Engineering (XAE)
Ontwikkelsoftware
Runtime (XAR)
Soft PLC
8
Architectuur (XAA)
TcCOM
TcCOM
TcCOM
PLC Safety NC
TcCOM
TcCOM
C++
Module
eXtended Automation
Runtime (XAR)
TwinCAT 3
eXtended Automation (XA)
eXtended Automation
Engineering (XAE)
TwinCAT 3 ontwikkelomgeving gebaseerd op
Visual Studio
2010/2012/2013
TwinCAT 3 TwinCAT 3
Standard Integrated
Architectuur (XAA)
PC Systeem
Real-time Kernel
TcCOM
TcCOM
TcCOM
TcCOM
PLC
PLC Safety
PLC NC
PLC CPLC
Module eXtended
Automation Runtime (XAR)
TcCOM
TcCOM
TcCOM
TcCOM
Fieldbus
10
Architectuur (XAA)
Engineering (XAE)
Ontwikkelsoftware Visual Studio
Configuratie
PLC programma IEC61131-3
Motion Control
C/C++ programmatie
Matlab/Simulink Integratie
C#/.NET programmatie
Runtime (XAR)
Soft PLC
Realtime uitvoering
Ondersteuning multicore CPUs
Ondersteuning 32/64-bit systemen
11
Engineering (XAE)
Standard / Integrated
System Configuration
PLC Configuration
I/O Configuration
13
Engineering (XAE)
Gentegreerde System Manager | Mapping
Classes ~ (FB) + + + +
Methods ~ (actions) + + + +
Interfaces - + - + +
Polymorphism - + +/- + +
Constructor/destructor - + + + +
Properties - + - - +
+
Pos Ctrl Limit
PLC
Layer
- +
+
SP Velo Preset Scale & Limit
Pos Meas.
Fieldbus
Layer
Drives
Layer
18
Engineering (XAE)
Motion Control | Van PTP (Point To Point) tot Robot Control
Punt tot Punt beweging Genterpoleerde beweging met Complete CNC functionaliteit Genterpoleerde beweging voor
3 assen en robotic control
gearing 5 hulpassen genterpoleerde beweging
camming tot 32 axen per kanaal ondersteuning voor een
superposition programmatie verschillende transformaties brede waaier aan
flying saw volgens DIN 66025 kinematische systemen
technologische features optioneel koppel
eenvoudig gebruik dmv pre-control
functieblokken vanuit de PLC
19
Engineering (XAE)
Motion Control
Code generering
Design: Simulink
Automatische generering van C code door Simulink Real-time Workshop
Compilering door de Visual Studio C Compiler
Parametrering in TwinCAT System Manager
Download en uitvoering in de TwinCAT 3 Runtime (XAR)
24
Engineering (XAE)
C#/.NET programmatie
.NET application
HMI / Windows processes
Niet Real-time!
TwinCAT 3 Project
Real-time
25
Runtime (XAR)
TcCOM
TcCOM
Task PLC Call C++
32/64-bit ondersteuning Module
TcCOM
Task
PLC
NC
Dynamische omgeving voor de uitvoering en het
TcCOM
TcCOM
PLC
C++ PLC
C
beheer van TwinCAT 3 modules Task
Module
Call
Module
TcCOM
PLC
Simulink
Standard PLC code
Task
Module
TcCOM
TcCOM
PLC PLC
NC code
TwinCAT Real-time
Task CNC Simulink
Call Module
TcCOM
PLC
PLC
C++ code
Task
TcCOM
Kernel
Task PLC
Safety
TwinCAT 3 Runtime
TcCom modules
Vast gedefinieerde interface
TwinCAT Component Object Model
26
Runtime (XAR)
TwinCAT 3
performance (platform) level
Kostprijs Runtime licenties
gekoppeld aan de performance
van de hardware
27
Runtime (XAR)
TwinCAT Module
Interfaces
Parameters
Data Areas Data Areas
Contexts
Data Area
Categories
Pointers
ADS Port
28
Runtime (XAR)
Multicore ondersteuning
Multi-core CPU
Ondersteuning van multi-core systemen Core 0 Core 1 Core 2 Core 3 Core ...
Window PLC User HMI PLC Runtime 0 PLC Runtime 1 NC Runtime 1
Toekenning van individuele projecten aan s
Apps
Control
Task 0 Task 1
Opsplitsing van PLC, NC, HMI, etc. op elk hun ADS Router Engine
System Memory
(PLC) PC 1 (PLC) PC 2
TwinCAT
TwinCAT TwinCAT
Acyclic
TwinCAT ADS
TwinCAT ADS Router TCP, UDP, Serial,
Router
Fieldbus, MQTT
Cyclic
EtherCAT Automation Protocol
(EAP), Network variables
31
eXtended Automation
TwinCAT Functies
TwinCAT Functions zijn extra uitbreidingen, vb:
OPC UA
Modbus TCP
Controller Toolbox
Temperature Control
Motion
...
Simulation
Modeling &
Advanced Control
33
eXtended Automation
IoT & TwinCAT Analytics
TwinCAT IoT - Internet of Things
TwinCAT Analytics - Data Analytics
Cloud Services
34
eXtended Automation
TwinCAT HMI
HTML CSS Javascript
35
eXtended Automation
TwinCAT 2 Migratie
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
37
TwinCAT 3 op mijn PC
Installatie
www.beckhoff.be/english/download/tc3-downloads
Engineering Engineering Remote Manager
Remote Manager oudere versies van TC3 integreren in XAE
39
TwinCAT 3 op mijn PC
Installatie
2
41
TwinCAT 3 op mijn PC
TwinCAT Switch Runtime
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
44
Netwerkinstellingen
Meest voorkomende configuratie
DHCP
192.168.0.1
Router LAN 255.255.255.0
WAN
DHCP
192.168.0.2
255.255.255.0
DHCP
192.168.0.3
WLAN
255.255.255.0
DHCP
192.168.0.4
255.255.255.0
DHCP
192.168.0.5
255.255.255.0
DHCP
DHCP server 192.168.0.6
IP-address 192.168.0.x 255.255.255.0
Subnet mask 255.255.255.0
45
Netwerkinstellingen
Laptop rechtstreeks verbinden met een PLC
Beperkte Netwerkverbinding
Opbouw duurt tot 3 minuten
46
Netwerkinstellingen
Weetjes
Toegang naar buiten (Internet) dient te worden afgeschermd met veilige paswoorden
Best maak je een eigen user aan met een veilig paswoord (ook bij Win-CE, WEC)
en verwijder je na testen de originele user
49
Netwerkinstellingen
TwinCAT ADS router ADS Identificatie
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
53
Engineering XAE in de praktijk
Architectuur (XAA) voorbeeld : Notebook (XAE) & CX (XAR)
ontwikkelomgeving
en
CX-controller met TwinCAT 3 XAR
runtime
Laptop met TwinCAT 3 XAE/XAR
De XAR runtime werkt met een
7-daagse test licentie
CX-controller of iPC met
TwinCAT XAE/XAR
Met de XAE is het mogelijk lokaal
TwinCAT 3 Ontwikkelomgeving
1
55
Engineering XAE in de praktijk
Engineering XAE omgeving starten
Projectnaam (Solution) en
4 locatie instellen
Add to source control mogelijk
5 (geen Beckhoff product):
Subversion
Github
Microsoft Team Foundation Server
4
5
56
Engineering XAE in de praktijk
XAR runtime selecteren
In de AMS-router tabel
7 kan de gewenste XAR runtime 7
geselecteerd worden
Is de XAR runtime niet aanwezig dan kan
8 deze worden toegevoegd aan de 8
AMS-router tabel via de
knop Search (Ethernet)...
58
Engineering XAE in de praktijk
XAR runtime selecteren
9
Met de knop Broadcast Search op het
9 netwerk zoeken naar XAR runtimes 10
Een Beckhoff controller wordt
standaard aangeduid met 2 letters
en 6 digits (HEX-code)
Bv: CX-170EC6
De HEX-code zijn de 6 laatste digits
van MAC-ID1 (zie stikker op de
controller) 11
16
60
Engineering XAE in de praktijk
XAR runtime selecteren
18
61
Engineering XAE in de praktijk
XAR runtime selecteren
21
20
63
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
64
Configuratie PLC hardware met System Manager
Solution Explorer
System Configuration
PLC Configuration
I/O Configuration
65
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
66
Configuratie PLC hardware met System Manager
I/O configuratie Scannen
2
67
Configuratie PLC hardware met System Manager
I/O configuratie Scannen
type controller 6
USB = CX2000 navigation keys
NOV-DP-RAM = Geheugen module voor opslaan
6 remanente data Extra interface (Mxxxx)
Extra interface Vb: Profibus, CANopen
7 (RS232, ProfiBus, ProfiNet, CANopen, ...)
... 7
69
Configuratie PLC hardware met System Manager
I/O configuratie Scannen
Resultaat
12 I/O Devices
Elke veldbus wordt in een afzonderlijke device geplaatst
13 Image
Lijst van alle in- en uitgangen in deze device 12
13
14 Systeemvariabelen
Deze geven informatie over de werking van de device 14
15
15 Term of Box eilanden 16
De verschillende I/O-eilanden zijn te herkennen door het inspringen
in een boomstructuur
Het kopstation is steeds te herkennen aan zijn typenummer
De voedingsmodule op een CX-controller wordt aangeduid met:
Oude controller: CX1100-0004 (E-bus) of CX1100-0002 (K-bus)
Nieuwe controller: EK1200 (E-bus) of CX-BK (K-bus)
16 Terminals
I/O-terminals bevatten de in- en uitgangen
73
Configuratie PLC hardware met System Manager
I/O configuratie Scannen
Online informatie
24 Grafisch
Uitgangen sturen
25 Online Write
24
25
76
Configuratie PLC hardware met System Manager
I/O configuratie Intelligente terminal via EtherCAT
27
77
Configuratie PLC hardware met System Manager
I/O configuratie Intelligente terminal via EtherCAT
29
78
Configuratie PLC hardware met System Manager
I/O configuratie Intelligente terminal via EtherCAT CoE-Online
Analoge Ingangskaart
30
bij EtherCAT
30 Parameterlijst in
CoE-Online tabblad
32
31 User-parameters
meestal beschikbaar
vanaf Index h8000
32 Dubbelklik op een 31
waarde om deze te
wijzigen
OPGELET: Alles in de
CoE-parameterlijst is
rechtstreeks in de
terminal, er is geen
backup in TwinCAT 3
79
Configuratie PLC hardware met System Manager
I/O configuratie Intelligente terminal via EtherCAT Startup List
Analoge Ingangskaart 33
33 bij EtherCAT
Parameterlijst via 38
37 36
Startup tabblad
34 Klik op de New knop
35 Dubbelklik op de
gewenste variabele
36 Wijzig de waarde
37 Bevestig 2x met OK
38
Alle parameters 35 34
toegevoegd in dit
tabblad worden
automatisch in de
terminal geladen bij
opstart controller
80
Configuratie PLC hardware met System Manager
I/O configuratie Intelligente terminal via K-bus Process data
Register communicatie
40 Ctrl : Register kiezen
Data Out : Data voor het register kiezen
Zie documentatie voor meer informatie
betreffende de registers
40
82
Configuratie PLC hardware met System Manager
I/O configuratie Intelligente terminal via K-bus registercommunicatie
Registercommunicatie kan
41 ook via rechtsklik op het
K-bus kopstation en dan 41
kiezen voor
Register Acess
Er bestaat ook optionele
software KS2000 voor het
instellen van K-bus
terminals met de extra
mogelijkheid om registers
te backuppen
83
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
84
PLC project
Basis opbouw
PRG_1
PRG_2
PRG_3
FB_1
I/O Image Device 1
PLC Instance
Mapping
85
PLC project
Basis opbouw
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
87
PLC project
Een eerste programma
1
88
PLC project
Een eerste programma
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
90
PLC project
Variabelen
Var_Global Var
PRG_1
Lokale Variabelen
Var
Var PRG_2
Interne Variabelen
Externe Variabelen
91
PLC project
Variabelen
BOOL 0 1 1 Bit
BYTE 0 255 8 Bit
WORD 0 65535 16 Bit
DWORD 0 4294967295 32 Bit
SINT - 128 127 8 Bit
USINT 0 255 8 Bit
INT - 32768 32767 16 Bit
UINT 0 65535 16 Bit
DINT - 2147483648 2147483647 32 Bit
UDINT 0 4294967295 32 Bit
REAL ~-3.402823x1038 ~3.402823x1038 32 Bit
LREAL ~-1.79769313486231x10308 ~1.79769313486232x10308 64 Bit
STRING Default 80 char 1 char = 1 byte + 1 byte Null char
STRING(20) 0 char 255 char voor aanduiden einde vd String
95
PLC project
Variabelen
Telkens een woord wordt getypt dat de PLC niet kent zal het Declaratie venster
verschijnen
Resultaat:
96
PLC project
Variabelen
3
97
PLC project
Variabelen
6
100
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
101
PLC project
Linking - Mapping
Device 1
Motor Drives
Device 2
103
PLC project
Linking - Mapping
I/O-Eiland 1
I/O-Eiland 2
I/O-Eiland 3
EL9185
EL1859
EL3162
EL4002
KL9185
KL1408
KL2408
KL3062
KL4002
KL2408
104
PLC project
Linking - Mapping
Resultaat na linken
Controleren via Link to
5
Reeds gekoppelde
variabelen worden 5
aangeduid met een grijs
vierkantje met daarin een
pijl
106
PLC project
Linking - Mapping
Resultaat na linken
Eindresultaat voor alle
I/O-ingangsvariabelen
van de Beckhoff lesstand
Digitale Ingangen
17 tem 24 zijn in de
hardware niet gebruikt
107
PLC project
Linking - Mapping
Resultaat na linken
Eindresultaat voor alle
I/O-uitgangsvariabelen
van de Beckhoff lesstand
108
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
109
PLC project
Downloaden configuratie naar XAR (Runtime soft PLC)
2 3
110
PLC project
Downloaden configuratie naar XAR (Runtime soft PLC)
5
111
PLC project
Downloaden configuratie naar XAR (Runtime soft PLC)
7
Start
7 Het PLC programma wordt gestart
De data is daarna online beschikbaar
Stop
Het PLC programma wordt gestopt
(Dit heb je normaal nooit nodig)
Logout
Het online PLC programma verlaten
Een gestart programma blijft werken
112
PLC project
Downloaden configuratie naar XAR (Runtime soft PLC)
Belangrijke instellingen
9 Via Real-Time kun je
de PLC taak toewijzen
aan een CPU
Via Real-Time kun je
10 ook de Base Time per 11
CPU instellen
Stel deze niet sneller in dan de
gewenste snelste PLC taak om
de CPU niet onnodig te belasten
9
114
PLC project
Downloaden configuratie naar XAR (Runtime soft PLC)
Belangrijke instellingen
12 PLC programma automatisch starten bij
spanningsopstart
12
115
PLC project
Downloaden configuratie naar XAR (Runtime soft PLC)
2
116
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
117
PLC programma
Programmastructuur
Voorbeeldoefening
Enkele uitgangen laten knipperen I/O
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
122
PLC programma
FB_Flash
Gewenste werking
Ingang : bEnable : BOOL variabele
Bij TRUE generator inschakelen
& Timer
bEnable IN
IN Q Q
tCycletime PT PT ET
>
/ Q
2
123
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
124
PLC programma
FB_Flash Ladder Diagram (LD)
Grafische editor
2
Lokale variabelen en 3
3 interface variabelen
4
4 Toolbox 2
126
PLC programma
FB_Flash Ladder Diagram (LD)
Sleep de gewenste
5 onderdelen naar het
programmavenster
Voor de timer gebruiken
we een TON-timer
(inschakelvertraging) uit de
rubriek Function Blocks
5
127
PLC programma
FB_Flash Ladder Diagram (LD)
6
128
PLC programma
FB_Flash Ladder Diagram (LD)
Standaard is in
Ladder Diagram de
bovenste output van een
Box de standaard output
waarop een volgende Box
wordt aangesloten
Door rechtsklik op de
7 gewenste output en 7
vervolgens op
Set output connection
kan die output de standaard
output worden
129
PLC programma
FB_Flash Ladder Diagram (LD)
10
131
PLC programma
FB_Flash Ladder Diagram (LD)
Variabelen aanmaken
11 Op de vraagtekens klikken en de nieuwe naam
ingeven
Bij drukken op Enter zal het Auto Declare
venter verschijnen
Op dit moment is enkel Scope, Name
en Type belangrijk
11
Scope + Object : Plaats waar de
variabele wordt geplaatst
Name : de zonet ingegeven naam voor
de nieuwe variabele
Type : Soort variabele
Na bevestigen met OK krijg je een venster
Refactoring, hier dien je ook op OK te
klikken
132
PLC programma
FB_Flash Ladder Diagram (LD)
Variabelen aanmaken
12 Alle variabelen ingeven, het resultaat komt in de juiste 12
variabele tabel te staan
Manueel een variabele tabel editeren is mogelijk
Standaard heeft een variabele bij opstart de waarde 0
Via Initialization kan de opstartwaarde worden
gekozen
Voor tCycletime geven we de opstartwaarde 1s mee
Voor een TIME variabele is de standaard notatie T#_m_s_ms
Vb; T#5s500ms of t#5500ms of t#5.5s
133
PLC programma
FB_Flash Ladder Diagram (LD)
Variabelen aanmaken
De uitgang Q van
functieblok fbTimer moet 13 15
teruggekoppeld worden
naar de genverteerde
14
ingang in de AND
schakeling
Een reeds bestaande variabele typ je niet opnieuw, die
13
selecteer je door op de vraagtekens te klikken en dan:
Input Assistant, te bereiken via functietoets F2 of via de button
naast de geselecteerde vraagtekens
of
Ctrl+Space, selecteer vervolgens de gewenste variabele
De bovenste input voor DIV functionaliteit is tCycletime en
14
selecteer je eveneens via Input Assistant of Ctrl+Space
De onderste input voor DIV functionaliteit krijgt de
constante waarde 2
15 Ongebruikte ??? bij variabelen verwijderen
134
PLC programma
FB_Flash Ladder Diagram (LD)
Eindresultaat
Opbouw code in
kleine stukken per
netwerk
Het is mogelijk niet
binaire data toe te
voegen
Goed leesbare code
voor enkel technisch
geschoolden
135
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
136
PLC programma
FB_Flash Function Block Diagram (FBD)
Grafische editor
2
Lokale variabelen en 3
3 interface variabelen
4
4 Toolbox 2
138
PLC programma
FB_Flash Function Block Diagram (FBD)
Sleep de gewenste
5 onderdelen naar het
programmavenster
Voor de timer gebruiken
we een TON-timer
(inschakelvertraging) uit de
rubriek Function Blocks
5
139
PLC programma
FB_Flash Function Block Diagram (FBD)
Standaard is in
Function Block Diagram de
bovenste output van een
Box de standaard output
waarop een volgende Box
wordt aangesloten
Door rechtsklik op de
9 gewenste output en 9
vervolgens op
Set output connection
kan die output de standaard
output worden
141
PLC programma
FB_Flash Ladder Diagram (LD)
Variabelen aanmaken
12 Op de vraagtekens klikken en de nieuwe naam ingeven
Bij drukken op Enter zal het
Auto Declare venter verschijnen
Op dit moment is enkel Scope, Name
en Type belangrijk
Scope + Object : Plaats waar de variabele wordt
geplaatst
Name : de zonet ingegeven naam voor de nieuwe 12
variabele
Type : Soort variabele
Na bevestigen met OK krijg je een venster
Refactoring, hier dien je ook op OK te klikken
144
PLC programma
FB_Flash Function Block Diagram (FBD)
Variabelen aanmaken
13 Alle variabelen ingeven, het resultaat komt in de juiste 13
variabele tabel te staan
Manueel een variabele tabel editeren is mogelijk
Standaard heeft een variabele bij opstart de waarde 0
Via Initialization kan de opstartwaarde worden
gekozen
Voor tCycletime geven we de opstartwaarde 1s mee
Voor een TIME variabele is de standaard notatie T#_m_s_ms
Vb; T#5s500ms of t#5500ms of t#5.5s
145
PLC programma
FB_Flash Function Block Diagram (FBD)
Variabelen aanmaken
De uitgang Q van
functieblok fbTimer
moet teruggekoppeld
worden naar een
ingang van de
14
AND bouwsteen
14 15
Een reeds bestaande
variabele typ je niet opnieuw, die
selecteer je door op de
vraagtekens te klikken en dan:
Input Assistant, te bereiken via
functietoets F2 of via de button naast de geselecteerde vraagtekens
of
Ctrl+Space, selecteer vervolgens de gewenste variabele
15 Het signaal moet genventeerd worden, dit kan via
rechtsklik en de functionaliteit Negation
146
PLC programma
FB_Flash Function Block Diagram (FBD)
Variabelen aanmaken
De bovenste input voor
17
DIV functionaliteit is
tCycletime en selecteer
je eveneens via
16
Input Assistant of
Ctrl+Space
De onderste input voor DIV functionaliteit
16 krijgt de constante waarde 2
Eindresultaat
Kleine stukjes code in netwerken
Goed leesbare code voor enkel
technisch geschoolden
148
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
149
PLC programma
FB_Flash Continuous Function Chart (CFC)
Grafische editor
2
Lokale variabelen en 3
3 interface variabelen
4
4 Toolbox 2
151
PLC programma
FB_Flash Continuous Function Chart (CFC)
Sleep de gewenste
5 onderdelen naar het
programmavenster 5
Voor de timer gebruiken
we een TON-timer
(inschakelvertraging) uit de
rubriek Function Blocks
Klik op de vraagtekens en kies
dan: 6
Input Assistant, te bereiken via
6 functietoets F2 of via de button naast
de geselecteerde vraagtekens
of
Ctrl+Space, selecteer vervolgens de
gewenste functionaliteit
152
PLC programma
FB_Flash Continuous Function Chart (CFC)
Variabelen aanmaken
12 Op de vraagtekens klikken en de nieuwe naam ingeven
Bij drukken op Enter zal het
Auto Declare venter verschijnen
Op dit moment is enkel Scope, Name
en Type belangrijk
Scope + Object : Plaats waar de variabele wordt
geplaatst 12
Name : de zonet ingegeven naam voor de nieuwe
variabele
Type : Soort variabele
Na bevestigen met OK krijg je een venster
Refactoring, hier dien je ook op OK te klikken
156
PLC programma
FB_Flash Continuous Function Chart (CFC)
Variabelen aanmaken
13 Alle variabelen ingeven, het resultaat komt in de juiste 13
variabele tabel te staan
Manueel een variabele tabel editeren is mogelijk
Standaard heeft een variabele bij opstart de waarde 0
Via Initialization kan de opstartwaarde worden
gekozen
Voor tCycletime geven we de opstartwaarde 1s mee
Voor een TIME variabele is de standaard notatie T#_m_s_ms
Vb; T#5s500ms of t#5500ms of t#5.5s
157
PLC programma
FB_Flash Continuous Function Chart (CFC)
Eindresultaat
Vlot leesbare code
Meest gebruikte taal in de
building automation en
domotica
Vaak ook gebruikt in de
industrie om FB-oproepen
visueel weer te geven
158
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
159
PLC programma
FB_Flash Structured Text (ST)
Tekstuele editor
2 Bijna alles dient manueel
opgebouwd te worden
3
Lokale variabelen en
3 interface variabelen
4
Toolbox
2
4 Toolbox wordt niet gebruik
in Structure Text
161
PLC programma
FB_Flash Structured Text (ST)
7
162
PLC programma
FB_Flash Structured Text (ST)
10
Druk F2 om Input Assistant
op te roepen
Selecteer de gewenste functionaliteit
Code opbouwen met
Ctrl+Space
Plaats de cursur op de juiste plaats
Typ een aantal letters, dan op
Ctrl+Space en selecteer uit de lijst
164
PLC programma
FB_Flash Structured Text (ST)
11
165
PLC programma
FB_Flash Structured Text (ST)
Eindresultaat
Compacte code
Vertrouwde omgeving voor wie
vertrouwd is met IT-programmatie
Moeilijker te lezen voor enkel
technisch geschoolden
Meest gebruikte taal in de industrie
166
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
167
PLC programma
Programmastructuur
Voorbeeldoefening
Vanuit het programma PRG_Knipperlichten willen I/O
Programma aanmaken
Ladder Diagram (LD)
Var_Global
Function Block Diagram (FBD)
Var
Continuous Function Chart (CFC) MAIN
Structured Text (ST)
Var
PRG_Knipperlichten
Dit voorbeeld is in de verschillende programmeertalen
opgebouwd, welke je gebruikt in de oefening is Var
FB_Flash
volledig vrij
Var_Input
Var_Output
Var_In_Out
168
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
169
PLC programma
PRG_Knipperlichten Ladder Diagram (LD)
Tekstuele editor
2 Bijna alles dient manueel
opgebouwd te worden 3
Lokale variabelen
3 Standaard zijn er geen interface 4
variabelen beschikbaar
2
Toolbox
4 Toolbox wordt niet gebruik in
Structured Text
171
PLC programma
PRG_Knipperlichten Ladder Diagram (LD)
7
172
PLC programma
PRG_Knipperlichten Ladder Diagram (LD)
10
Druk F2 om Input Assistant
op te roepen of klik op het witte icoontje
Selecteer de gewenste functionaliteit
Code opbouwen met
Ctrl+Space
Plaats de cursur op de juiste plaats
Typ een aantal letters, dan op
Ctrl+Space en selecteer uit de lijst
Tcycletime krijgt een constante tijd
174
PLC programma
PRG_Knipperlichten Ladder Diagram (LD)
14
14
176
PLC programma
PRG_Knipperlichten Ladder Diagram (LD)
Variabelen toevoegen
15 Klikken op de plaats voor de
variabele F2 drukken of wit 16
icoontje gebruiken
Signaalconvertie
16 De DIV functie geeft als resultaat
een reel getal terwijl tCycletime
een TIME type verwacht
Resultaat 15
17
17
177
PLC programma
PRG_Knipperlichten Ladder Diagram (LD)
Eindresultaat
178
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
179
PLC programma
PRG_Knipperlichten Function Block Diagram (FBD)
Tekstuele editor
2 Bijna alles dient manueel
opgebouwd te worden
Lokale variabelen 3
3 Standaard zijn er geen interface
variabelen beschikbaar 4
Toolbox
2
4 Toolbox wordt niet gebruik in
Structured Text
181
PLC programma
PRG_Knipperlichten Function Block Diagram (FBD)
7 5
182
PLC programma
PRG_Knipperlichten Function Block Diagram (FBD)
10
Druk F2 om Input Assistant
op te roepen of klik op het witte icoontje
Selecteer de gewenste functionaliteit
Code opbouwen met
Ctrl+Space
Plaats de cursur op de juiste plaats
Typ een aantal letters, dan op
Ctrl+Space en selecteer uit de lijst
Tcycletime krijgt een constante tijd
184
PLC programma
PRG_Knipperlichten Function Block Diagram (FBD)
14
186
PLC programma
PRG_Knipperlichten Function Block Diagram (FBD)
Variabelen toevoegen
15 Klikken op de plaats voor de
variabele F2 drukken of wit
icoontje gebruiken 16
Signaalconvertie
16 De DIV functie geeft als resultaat
een reel getal terwijl tCycletime
een TIME type verwacht
Resultaat
15
17
17
187
PLC programma
PRG_Knipperlichten Function Block Diagram (FBD)
Eindresultaat
188
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
189
PLC programma
PRG_Knipperlichten Continuous Function Chart (CFC)
Tekstuele editor
2 Bijna alles dient manueel
opgebouwd te worden 3
Lokale variabelen
3 Standaard zijn er geen interface
variabelen beschikbaar 2
Toolbox
4 Toolbox wordt niet gebruik in
Structured Text
4
191
PLC programma
PRG_Knipperlichten Continuous Function Chart (CFC)
5
192
PLC programma
PRG_Knipperlichten Continuous Function Chart (CFC)
8
193
PLC programma
PRG_Knipperlichten Continuous Function Chart (CFC)
10
Resultaat
10 9
194
PLC programma
PRG_Knipperlichten Continuous Function Chart (CFC)
Variabelen toevoegen
15 Klikken op de plaats voor de
variabele F2 drukken of wit
icoontje gebruiken
Signaalconvertie 15
16 De DIV functie geeft als resultaat
een reel getal terwijl tCycletime
een TIME type verwacht
Execution Order instellen
Order by data flow 16
Resultaat
17
17
198
PLC programma
PRG_Knipperlichten Continuous Function Chart (CFC)
Eindresultaat
199
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
200
PLC programma
PRG_Knipperlichten Structured Text (ST)
Tekstuele editor
2 Bijna alles dient manueel
opgebouwd te worden
3
Lokale variabelen
3 Standaard zijn er geen interface
4
variabelen beschikbaar
2
Toolbox
4 Toolbox wordt niet gebruik in
Structured Text
202
PLC programma
PRG_Knipperlichten Structured Text (ST)
7
203
PLC programma
PRG_Knipperlichten Structured Text (ST)
8
204
PLC programma
PRG_Knipperlichten Structured Text (ST)
9
Druk F2 om Input Assistant
op te roepen
Selecteer de gewenste functionaliteit
Code opbouwen met
Ctrl+Space
Plaats de cursur op de juiste plaats
Typ een aantal letters, dan op
Ctrl+Space en selecteer uit de lijst
Tcycletime krijgt een constante tijd
205
PLC programma
PRG_Knipperlichten Structured Text (ST)
Eindresultaat
207
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
208
PLC programma
MAIN Structured Text (ST)
Overzicht
Variabelen MAIN
Linken - Mapping Samenvatting
Downloaden configuratie naar XAR
(Runtime soft PLC)
210
Beckhoff TwinCAT PLC project
Samenvatting
Training materiaal
This training material is provided to complement the presented training content. Outside the
actual training the material may only be used for internal purposes at the company of the
course participant. In addition, the material or extracts thereof may be used in end customer
training for products including Beckhoff products, or for presentations, provided the
presentation refers to Beckhoff products. Extracts or copies of the training material must
contain the following copyright acknowledgement:
Beckhoff Automation GmbH & Co. KG.
The same applies to extracts from presentation material. The user of the material is solely
responsible for the completeness of extracts and copies. It is explicitly not permitted to offer
commercial or free training for Beckhoff products. This applies to training with and or without
the training material. The training material must not be edited, manipulated or modified.
Passing on of the aforementioned rights to third parties is not permitted.
Beckhoff Automation GmbH & Co. KG
212
Contact
All images are protected by copyright. The use and transfer to third parties is not permitted.
Beckhoff, TwinCAT, EtherCAT, Safety over EtherCAT, TwinSAFE, XFC and XTS are registered trademarks of and licensed by
Beckhoff Automation GmbH. Other designations used in this presentation may be trademarks whose use by third parties for their own
purposes could violate the rights of the owners.
The information provided in this presentation contains merely general descriptions or characteristics of performance which in case of actual
application do not always apply as described or which may change as a result of further development of the products. An obligation to provide
the respective characteristics shall only exist if expressively agreed in the terms of contract.