2.1 Opbouw en verwerking van een programma
| Surf naar het gewenste item van dit deeltje: |
| Opbouw van een instructie Belangrijkste operaties Belangrijkste soorten operanden Soorten PLC-talen |
2.1.1 Opbouw van een instructie.
Bovenstaande relaisschakeling wordt vervangen door een PLC-schakeling. Een programma bepaalt hoe de schakeling werkt.
Een programma bestaat uit instructies.
2.1.2 Belangrijkste operaties.
2.1.4 Soorten PLC-talen
2.2 Logische basisfuncties programmeren
FBD

Bijvoorbeeld:
A I 0.0
= Q 1.0
Dit programma bestaat uit twee instructies. De lamp zal branden als je de schakelaar sluit. Door een ander programma in te geven, kan je de werking van de schakeling veranderen. Zo zou je bijvoorbeeld de lamp 1 minuut kunnen laten branden bij het sluiten van de schakelaar.
Een PLC-instructie is als volgt opgebouwd:

IEC (Engels)
SIEMENS-taal (Duits)
VERKLARING
A
U
En-functie (AND) (UND)
O
O
Of-functie (Or) (Oder)
N
N
NIET-functie (NOT) (Nicht)
=
=
Toewijzen
R
R
Reset
S
S
Set
2.1.3 Belangrijkste soorten operanden
IEC (Engels)
SIEMENS-taal (Duits)
VERKLARING
I
E
Ingang (Input) (Eingang)
Q
A
Uitgang (Quit)(Ausgang)
M
M
Geheugen(Memory)(Marker)(Merker)
T
T
Tijdfunctie (Timer)
C
Z
Telfunctie (Counter) (Zälher)
Oefening
Analyseer de instructie = Q 124.3
![]()
IEC (Engels)
SIEMENS-taal (Duits)
LD of LAD (Ladderdiagram)
KOP (Kontactplan)
IL of STL (Instrucion List of Statement List
AWL (Anweizungsliste)
FBD (Function Block Diagram)
FUP (Functieplan)
Er zijn nog enkele soorten PLC-talen, die we niet verder behandelen in deze cursus. Je vindt er info over op volgende site:
![]()
Surf naar het gewenste item van dit deeltje:
JA-functie
NEEN-functie
EN-functie
OF-functie
EXOF-functie
NEN-functie
NOF-functie
Afvragen van de status of de toestand
RLO; Result of Logic Operation
Hoe NO en NG-schakelelementen vertalen in een PLC-programma


Waarheidstabel
I 0.0
Q 1.0
0
0
1
1
Booleaanse schrijfwijze: Q 1.0 = I 0.0
IL
= Q 1.0
LD

![]()
NIET-functie
FBD

Waarheidstabel
I 0.0
Q 1.0
1
0
0
1
Booleaanse schrijfwijze: Q 1.0 = -I 0.0
IL
= Q 1.0
LD

![]()
EN-functie
FBD

Waarheidstabel
I 0.0
I 0.1
Q 1.0
0
0
0
0
1
0
1
0
0
1
1
1
Booleaanse schrijfwijze: Q 1.0 = I 0.0 . I 0.1
IL
A I 0.1
= Q 1.0
LD

![]()
OF-functie
FBD

Waarheidstabel
I 0.0
I 0.1
Q 1.0
0
0
0
0
1
1
1
0
1
1
1
1
Booleaanse schrijfwijze:Q 1.0 = I 0.0 + I 0.1
IL
O I 0.1
= Q 1.0
LD

![]()
EXOF-functie
FBD
NEN-functie (NIET-EN)
FBD
Oefening
NOF-functie (NIET OF)
Het resultaat van de OF-functie geïnverteerd.
FBD
Oefening
Afvragen van de status of de toestand
Als de status van I 0.0 "1" is, dan moet de uitgang Q 2.0 gestuurd worden.
2.2.9 RLO; Result of Logic Operation
Bij de verwerking van het PLC-programma wordt het reslultaat na elke instructie opgeslagen in een geheugen.
Oefening

Waarheidstabel
I 0.0
I 0.1
Q 1.0
0
0
0
0
1
1
1
0
1
1
1
0
Booleaanse schrijfwijze:Q 1.0 = (I 0.0 . I 0.1)+(-I 0.0 . -I 0.1)
IL
X I 0.1
= Q 1.0
LD: geen symbool

De EN-functie wordt geïnverteerd.
Waarheidstabel
I 0.0
I 0.1
I 0.0 & I 0.1
Q 1.0
0
0
0
1
0
1
0
1
1
0
0
1
1
1
1
0
Booleaanse schrijfwijze: Q 1.0 = -(I 0.0 . I 0.1)
IL
A I 0.1
NOT
= Q 1.0
LD

Bouw, vertrekkende van de Booleaanse vergelijking het FBD-schema op door combinaties van EN en NIET-poorten.
Waarheidstabel
I 0.0
I 0.1
I 0.0 + I 0.1
Q 1.0
0
0
0
1
0
1
1
0
1
0
1
0
1
1
1
0
Booleaanse schrijfwijze:Q 1.0 = -(I 0.0 + I 0.1)
IL
O I 0.0
O I 0.1
)
NOT
= Q 1.0
LD

Bouw, vertrekkende van de Booleaanse vergelijking het FBD-schema op door combinaties EN en NIET-poorten.
![]()
OPMERKING: De symbolen zijn getekend zoals ze bij een aantal PLC-programma's voorkomen. Er zijn ook nog andere symbolen in omgang!
IEC-poortsymbolen:![]()
Bij deze link vind je korte uitleg over de poorten.![]()

Als de status van I 0.0 "0" is, dan moet de uitgang Q 2.0 gestuurd worden.



Vul de "RLO" in.
a.
PROGRAMMA
STAUS
RLO
A I 0.0
1
...
A I 0.1
0
...
A I 0.2
1
...
= Q 2.2
...
...
b.
PROGRAMMA
STAUS
RLO
A I 0.0
0
...
A I 0.1
1
...
A I 0.2
1
...
= Q 2.2
...
...
c.
PROGRAMMA
STAUS
RLO
O I 0.0
1
...
O I 0.1
0
...
O I 0.2
1
...
= Q 2.2
...
...
d.
PROGRAMMA
STAUS
RLO
O I 0.0
0
...
O I 0.1
1
...
O I 0.2
0
...
= Q 2.2
...
...
e.
PROGRAMMA
STAUS
RLO
A I 0.0
1
...
AN I 0.1
0
...
A I 0.2
1
...
= Q 2.2
...
...
f.
| PROGRAMMA | STAUS | RLO |
| ON I 0.0 | 1 | ... |
| O I 0.1 | 0 | ... |
| O I 0.2 | 1 | ... |
| = Q 2.2 | ... | ... |
| PROGRAMMA | STAUS | RLO |
| AN I 0.0 | 0 | ... |
| A I 0.1 | 1 | ... |
| AN I 0.2 | 0 | ... |
| = Q 2.2 | ... | ... |
| PROGRAMMA | STAUS | RLO |
| A I 0.0 | ... | ... |
| AN I 0.1 | ... | ... |
| AN I 0.2 | ... | ... |
| A I 0.3 | ... | ... |
| = Q 3.2 | ... | ... |
| PROGRAMMA | STAUS | RLO |
| AN I 0.0 | ... | ... |
| AN I 0.1 | ... | ... |
| AN I 0.2 | ... | ... |
| A I 0.3 | ... | ... |
| = Q 3.2 | ... | ... |
| PROGRAMMA | STAUS | RLO |
| ON I 0.0 | ... | ... |
| O I 0.1 | ... | ... |
| O I 0.2 | ... | ... |
| ON I 0.3 | ... | ... |
| = Q 3.2 | ... | ... |
| PROGRAMMA | STAUS | RLO |
| O0 I 0.0 | ... | ... |
| ON I 0.1 | ... | ... |
| ON I 0.2 | ... | ... |
| O I 0.3 | ... | ... |
| = Q 3.2 | ... | ... |
| PROGRAMMA | STAUS | RLO |
| AN I 0.0 | ... | ... |
| A I 0.1 | ... | ... |
| AN I 0.2 | ... | ... |
| A I 0.3 | ... | ... |
| = Q 3.2 | ... | ... |



2.3 Samenstellen van basisfuncties
Je mag haakjes bij vertakkingen plaatsen.
Parallelschakeling
Oefening
Uitzondering: haakjes mogen weggelaten worden als de paralleschakeling uiterst LINKS staat.
Oefening
Oefening
Surf naar het gewenste item van dit deeltje:
Parallelschakeling met een serieingangen
Serieschakeling met parallelingangen
Gebruik van haakjes
Oefening gebruik haakjes
Oefeningen gebruik zo weinig mogelijk haakjes
A I 0.0
A I 0.1
O I 0.2
= Q 2.0
A I 0.0
A I 0.1
O
A I 0.2
A I 0.3
= Q 2.0
2.3.2 Serieschakeling met parallelingangen
A I 0.2
A (
O I 0.3
O I 0.4
)
= Q 2.0
A(
O I 0.0
O I 0.2
)
A (
O I 0.1
O I 0.3
)
= Q 2.0
2.3.3 Gebruik van haakjes
Serieschakeling

...
O(
A I 0.0
A I 0.1
)
...

...
A(
O I 0.0
O I 0.3
)
...
Stel de instructielijst op.
A I 0.2
A(
O I 0.3
O I 0.4
)
= Q 3.2
A I 0.2
O I 0.3
O I 0.4
= Q 3.2
Stel de instructielijst op, gebruik zo weinig mogelijk haakjes
a.

Bouw het ladderdiagram op.
Bij Omron gebruikt men geen haakjes. Zie hier voor voorbeelden:![]()
2.4 Gebruik een van hulpgeheugen M (Memory of Marker)
2.5 Set-Reset-geheugen
Verkort prgramma, met voorrang voor het resetten:
Klik hier om te leren hoe je een SR-geheugen programmeert bij het softwarepaket S7 van Siemens:
Oefening
2.6 Flankdetectie
2.6.1 Detectie van een positieve flank aan I 0.0
2.6.2 Detectie van een negatieve flank
De uitgang Q 3.1 wordt gestuurd indien I0.4 status "1" heeft en indien er een negatieve flank aan I 0.6 komt.
2.6.3 Oefening
2.7 Tijdfuncties of timers
2.7.1 Soorten tijdsfuncties
Overzicht van de verschillende soorten timers
In de kolom "LD" staat de code om de tijdsfunctie in het ladderdiagram weer te geven. In de kolom "IL" vind je de timercode die je moet gebruiken in een instructielijst.
Klik op de knop om een invulblad voor het oplossen van de oefeningen te kunnen afprinten:
Oefening
a.
b.
c.
d.
e.
In het handboek staan andere oefeningen.
2.8 Telfuncties, tellers of counters
2.8.1 Soorten telfuncties
Klik hier om te leren hoe je een teller programmeert bij het softwarepaket S7 van Siemens:
Oefening
Klik op de knop om een invulblad voor het oplossen van de oefeningen te kunnen afprinten:
2.9 Vergelijkerfuncties of comparatoren
Deze leerstof is uitgebreid behandeld in het handboek.
2.10 Programmeren van combinatorische schakelingen en kleine sequentiële schakelingen
2.10.1 Verschil tussen een combinatorische en een sequentiële schakeling
Zie handboek
2.10.2 Werkwijze vertrekkende van een relaisschema
Je werkt in 4 stappen:
Voorbeeld
STAP 3:
STAP 3:
2.10.3 Relaisschakelingen die niet rechstreeks omvormbaar zijn naar een ladderdiagram
Wisselcontacten en vertakkingen kunnen niet rechtstreeks omgevormd worden tot een ladderdiagram.
2.10.4 Door beredenering PLC-programma's ontwerpen met functieblokken (FBD)
Je zoekt een oplossing door te redeneren. De meeste problemen kun je oplossen door EN, Niet, OF- functies te combineren. Een geheugen realiseer je met een terugkoppeling naar de ingang van de functieblok.
Een voorbeeld is uitgewerkt in je handboek
2.10.5 Door beredenering ladderdiagrammen ontwerpen
Je zoekt een oplossing door te redeneren. De meeste problemen kun je oplossen door EN, Niet, OF- functies te combineren.
Een voorbeeld is uitgewerkt in je handboek
2.10.6 Oefeningen motorschakelingen
In je handboek staan er nog meer oefeningen.
Oefening omkeerschakeling
OPMERKING: In het handboek staat de oefening "Indirecte omkeerschakeling"
Directe omkeerschakeling:
Oefening dahlanderschakeling
STAP 2
Oefening Schijfbesturing
Oplossing vertrekkende van een relaisschema:
In het handboek vind je andere oefeningen. De oplossingen voor de SIEMENS-PLC staan op de cd-rom. Voor OMRON geven we hier de oplossing.
Op de uitgang Q 2.4 moet niets aangesloten worden. Je gebruikt dan een memory (marker of merker). Memories worden opdezelfde wijze geadresseerd als in- en uitgangen.


We veranderen de status van de setingang (S) en de resetingang (R). Hoe verandert de uitgang Q 3.1?


A I 0.0
S Q 3.1
A I 0.1
R Q 3.1![]()
![]()
Staat de setingang als laastste dan is er voorrang voor het setten.
Teken het ladderdiagram (LD) en schrijf de instructielijst (IL). Een lamp moet branden als op ingang 0.1 OF op ingang 0.2 een impuls komt. De lamp moet uitschakelen als op ingang 0.3 EN op ingang 0.4 een impuls komt. De lamp wordt op uitgang 3.3 aangesloten. Er moet prioriteit voor het inschakelen zijn. Maak gebruik van een SR of RS-geheugen.
Surf naar het gewenste item van dit deeltje:
Detectie van een positieve flank
Detectie van een negatieve flank
Oefeningen flankdetectie



Bij een machine worden rode en groene dozen gesorteerd. De rode dozen moeten in bak 1 belanden, de groene in bak 2.
Als er zich een rode doos op de schuif bevindt zal de schuif stoppen bij een positieve flank aan I 124.0. Bij een groene doos stopt de schuif bij een negatieve flank aan I 124.0. De twee posities worden bepaald door de lengte van de nok.
De aandrijving van de schuif gebeurt via Q 124.4. Het startcommando komt van een marker M 15.0.
Vervolledig het ladderdiagram en schrijf de instructielijst voor de schuifbeweging.
Surf naar het gewenste item van dit deeltje:
Soorten tijdsfuncties
Opbouw van het ladderdiagram van een tijdsfunctie
Voorbeeld van een programma van een timer
Overzicht van de verschillende soorten timers
Oefeningen

2.7.2 Opbouw van het ladderdiagram van een tijdsfunctie
Kijk voor meer gegevens over de verschillende in- en uit-gangen in het handboek.
Voorbeeld van een programma van een timer
In het handboek vind je van elke timer een voorbeelprogramma.
![]()
Soort tijdfunctie (Nl)
Soort tijdfunctie (Eng)
LD
IL
Inschakelvertraging
On-delay Timer
S_ODT
SD
Inschakelvertraging met geheugen
Retentive On-delay Timer
S_ODTS
SS
Uitschakelvertraging
Off-delay Timer
S_OFFDT
SF
Impulstimer
Impuls Timer
S_PULSE
SP
Verlengde impuls
Extended Impuls Timer
S_PEXT
SE
Klik hier om te leren hoe je een timer programmeert bij het softwarepaket S7 van Siemens:
![]()
Oefening
Vul de tijdsdiagrammen van de tijdfuncties aan
Kies de juiste timer om het probleem op te lossen en maak het ladderdiagram en de instructielijst.
Als je op een monostabiele schakelaar (I 124.0) drukt, moet een lamp (Q 124.0) 1 minuut branden. (In de verlichtingstechniek noem je dit een trappenhuisautomaat.)
![]()
Als je de verlichting (Q 124.1) van het toilet aandoet (via I 124.1), werkt er gelijktijdig een ventilator (Q 124.2). Na het uitschakelen van het licht, blijft de ventilator nog 30 seconden draaien.
![]()
Bij een verwarmingstoestel wordt eerst de verwarmingsweerstand (Q 124.3) ingeschakeld. Drie seconden later schakelt de ventilator (Q124.4) in om de warme lucht weg te blazen. Het toestel schakel je in en uit met een bistabiele schakelaar (I 124.2). Bij het uitschakelen van het toestel schakelen de verwarmingsweerstand en de ventilator gelijktijdig uit.
![]()
Aan de ingang van een winkel wordt een optische sensor (I 124.3) geplaatst die een bel doet werken als een klant door de lichtstraal van de sensor gaat. Om te voorkomen dat het belsignaal te lang aanhoudt als een klant voor de sensor blijft staan, schakelt een timer de bel (Q 124.5) na 15 seconden uit.
![]()
Bij een diefstalbeveiliging, moet het alarm 3 minuten nadat een bewegingssensor (I 124.4) iemand gedetecteerd heeft een sirene (Q124.6) in werking treden. Die tijd is nodig om de bewoner de gelegenheid te geven zelf het alarm uit te schakelen. Het uitschakelen gebeurt met een cijferklavier dat een signaal geeft aan I 124.5.
![]()
Surf naar het gewenste item van dit deeltje:
Soorten telfuncties
Opbouw van het ladderdiagram van een teller
Programma van een op- en af teller
Werking van een op- en af teller
Oefeningen
Opbouw van het ladderdiagram van een teller
Kijk voor meer gegevens over de verschillende in- en uit-gangen in het handboek.
Programma van een op- en af teller
![]()
2.8.5 Werking van een op- en af teller
Bij aanvang van het diagram is de counter geset op 5.
![]()
Oefening
Een pick & place machine (Q 2.1) moet geactiveerd worden als er 24 producten voorbij gekomen zijn. Het aantal stuks wordt geteld met een optische sensor (I 1.3).
Indien er moet geset worden doe je dat met M 110.1. Indien je de reset-ingang nodig hebt, gebruik je ingang I 1.7.
Als de band gestopt is, moet er een controlelamp (Q 3.2)branden.
Bouw het PLC-programma in LD en in IL.
Vul het signaaltijdsdiagram aan van de up and down-counter. De setwaarde is 5. Bij aanvang van het diagram is de telhinhoud 0.

STAP 1: Neem een bestaande relaisschakeling, waarmee je het probleem kunt oplossen, of bouw ze op.
STAP 2: Stel de adressenlijst of de toewijzingslijst op.
STAP 3: Maak het ladderdiagram door in de relaisschakeling de schakelelementen te vervangen door ingangen en door de verbruikers te vervangen door uitgangen.
STAP 4: Leid de instructielijst af uit het ladderdiagram.
Deze methode noemen we de vierstappenmethode.
Probleem: een lamp moet inschakelen als er 2 schakelelementen bediend worden.
STAP 1:
Maak het relaisschema.

STAP 2:
Stel de instructielijst op.
Toestel
PLC-adres
Commentaar
Ingangen
S1
I 0.1
NO
S2
I 0.2
NO
K1
Q 2.0
Lamp
Vorm het relaisschema om tot een ladderdiagram.

Vorm het ladderdiagram om tot een instructielijst.
A I 0.1
A I 0.2
= Q 2.0
In je je handboek is uitgelegd hoe je dat oplost .
Oefening volgordeschakeling
Bouw het PLC-programma (ladderdiagram en instructielijst) op van de volgordeschakeling .
STAP 1
Op de figuur wordt in drie stappen verduidelijkt dat je het oorspronkelijke relasisschema moet opsplitsen in 2 netwerken.

STAP 2
Toestel
PLC-adres
Commentaar
Ingangen
F1
I 0.0
Therm. bev. - NG
S1
I 0.1
Stop 1- NG
S2
I 0.2
Start 2 - NO
S3
I 0.3
Stop 2 - NG
S4
I 0.4
Start 1 - NO
Uitgangen
K1
Q 3.1
Motor 1
K2
Q 3.2
Motor 2
STAP 3 en 4
Bouw het PLC-programma (ladderdiagram en instructielijst) op van de directe omkeerschakeling (L/R) .
STAP 1
Op de figuur wordt in drie stappen verduidelijkt dat je het oorspronkelijke relasisschema moet opsplitsen in 2 netwerken.

STAP 2
Toestel
PLC-adres
Commentaar
Ingangen
F1
I 0.0
Therm. bev. - NG
S1
I 0.1
Stop - NG
S2
I 0.2
R - NO
S3
I 0.3
L - NO
Uitgangen
K1
Q 1.1
R
K2
Q 1.2
L
STAP 3 en 4
![]()
Indirecte omkeerschakeling:
Bouw het PLC-programma (ladderdiagram en instructielijst) voor een dahlanderschakeling (Y/YY) waarbij je zowel in lage snelheid als in hoge snelheid kunt starten. Omschakelen van hoge naar lage snelheid mag niet.
Info over de dahlandermotor:![]()
STAP 1

Toestel
PLC-adres
Commentaar
Ingangen
F1
I 0.0
Therm. bev. - N0
S1
I 0.1
Stop - NG
S2
I 0.2
Start 1 - NO
S3
I 0.3
Start 2 - NO
Uitgangen
K1
Q 3.0
Lage snelheid
K2
Q 3.1
Hoge snelheid
K3
Q 3.2
Hoge snelheid, sterpunt
STAP 3 en 4
Oplossing zonder gebruik te maken van een marker:
![]()
Oplossing met een marker :
![]()

Een schijf met nok moet eerst rechts draaien van punt a tot punt b, daarna draait ze automatisch terug naar links tot in punt a. Voor elke draaizin is er een eindstandschakelaar die de beweging stopt. Als tijdens de automatische cyclus gestopt wordt met een stopschakelaar dan moet bij het herstarten de cyclus verder afgewerkt worden. Ontwerp het PLC-programma.
Oplossing zonder te vertrekken van een relaisschema:
Adressenlijst
Toestel
PLC-adres
Commentaar
Ingangen
F1
I 0.0
Therm. bev. - NG
S1
I 0.1
Stop - NG
S2
I 0.2
Start - NO
S3
I 0.3
Eindstand a NO
S4
I 0.4
Eindstand b NO
Uitgangen
K1
M 90.1
Hulpgeheugen start/stop
K2
M 90.2
Geheugen L/R
K3
Q 2.1
Motor R
K4
Q 2.2
Motor L
![]()
STAP 1
![]()
STAP 2
De adressenlijst is dezelfde als bij de vorige oplossing.
STAP 3
![]()
Start-stop met voorrang stop
Start-stop met voorrang stop (Op te lossen met SR-geheugen)
Start-stop met voorrang start met controlelamp "aan"
Start-stop met voorrang stop vanop twee plaatsen te bedienen ![]()
Pompschakeling![]()
Links-rechts (indirecte inschakeling)
Automatische ster-driehoekschakeling