XIOS HOGESCHOOL LIMBURG DEPARTEMENT INDUSTRIELE WETENSCHAPPEN EN TECHNOLOGIE
OPTIMALISATIE VAN DE PLC-STURING VAN EEN KRATTENTRANSPORTSYSTEEM Bert COENEN en Koen SWALENS
Afstudeerwerk ingediend tot het behalen van het diploma van industrieel ingenieur in elektromechanica optie automatisering master in de industriële wetenschappen: elektromechanica
Promotoren: dhr. I Guisson (Manshoven SA NV) dhr. G. Vanolst (Manshoven SA NV) dhr. J. Claes (XIOS Hogeschool Limburg)
Academiejaar 2004 - 2005
Inhoudsopgave: DANKBETUIGINGEN
I
ABSTRACT
II
1.
1
2.
3.
STAGEPLAATS 1.1.
ALGEMEEN
1
1.2.
NV MANSHOVEN VERS SA
1
DOELSTELLINGEN
2
2.1.
DE BESTAANDE STURING VERVANGEN DOOR EEN SIEMENS S7 PLC
2
2.2.
EVALUATIE VAN DE HUIDIGE STURING
2
2.3.
STUDIE EN AANKOOP VAN DE TE GEBRUIKEN MATERIALEN
3
2.4.
PROGRAMMATIE VAN DE TEKSTDISPLAY
3
2.5.
PROGRAMMATIE VAN DE PLC IN S7
3
2.6.
SCHRIJVEN VAN EEN HANDLEIDING
4
2.7.
OMBOUW VAN DE INSTALLATIE
4
PLC-STURING 3.1.
STRUCTUUR VAN EEN PLC-STURING
5 5
3.1.1 INGANGSDEEL
5
3.1.1.1 Bediening
5
3.1.1.2 Processignaalgevers
6
3.1.2 VERWERKINGSDEEL
6
3.1.3 UITGANGSDEEL
7
3.2.
3.1.3.1 Aandrijvingen
7
3.1.3.2 Procesinformatie en –registratie
8
VOORDELEN VAN PLC T.O.V. KLASSIEKE STURINGEN
8
3.2.1 FLEXIBELE OPBOUW EN WIJZIGING VAN DE STURING
9
3.2.2 EENVOUDIGE MONTAGE
10
3.2.3 EXTRA MOGELIJKHEDEN
10
3.2.4 ECONOMISCHE VOORDELEN
11
3.3.
BESTANDDELEN VAN EEN PLC
3.3.1 INGANGEN
13
3.3.2 UITGANGEN
15
3.3.2.1 Relais
16
3.3.2.2 Transistor
16
3.3.2.3 Solid-State uitgangen
17
3.3.3 DE CENTRALE VERWERKINGSEENHEID
17
3.3.3.1 Logische Eenheid
18
3.3.3.2 Accumulator
18
3.3.4 GEHEUGENS
19
3.3.4.1 ROM-geheugen (Read Only Memory)
19
3.3.4.2 RAM geheugens (Random Acces Memory)
19
3.3.4.3 PROM (Programmable Read Only Memory)
19
3.3.4.4 EPROM (Erasable Programmable Read Only Memory)
20
3.3.4.5 EEPROM (Electrically Erasable Programmable Read Only Memory)
20
3.3.5 BUSSYSTEEM
20
3.3.6 VOEDINGSEENHEID
21
3.3.7 BUFFERBATTERIJ
21
3.4.
ADRESSERING
22
3.4.1 BIT-, BYTE- EN WOORDADRES
22
3.4.2 ADRESSERING VAN DE IN- EN DE UITGANGEN
23
3.5.
PROGRAMMAVERWERKING
24
3.5.1 LINEAIR OF CYCLISCH PROGRAMMEREN
24
3.5.2 GESTRUCTUREERD PROGRAMMEREN
25
3.6. 4.
12
VEILIGHEID
HET KRATTENTRANSPORT
26 27
4.1.
ALGEMEEN
27
4.2.
DE VERSCHILLENDE PROGRAMMA’S
27
4.2.1 PROGRAMMA 1: AUTOMATISCH
27
4.2.2 PROGRAMMA 2: BUFFER
29
4.2.3 PROGRAMMA 3: NOOD
29
4.3.
6.
30
4.3.2 DE LIFT
30
4.3.3 DE ONTNESTER
32
4.3.4 DE BUFFER
33
4.3.5 DE NOODAFVOER
35
AANGEBRACHTE VERBETERINGEN
35
4.4.1 AUTOMATISCH UITSCHAKELEN STAPELOPZETTRANSPORT
36
4.4.2 AFVOER STAPELS KRATTEN NAAR BUFFER
36
4.4.3 IN- EN UITVOERBEVEILIGING LIFT
38
4.4.4 POSITIE ROLLENBANEN
39
STUDIE VAN DE OORSPRONKELIJKE PLC-INSTALLATIE
40
5.1.
INLEIDING
40
5.2.
DE CPU
41
5.3.
DE VOEDING
42
5.4.
DE PERIFERIEMODULES
43
5.5.
DE BUSMODULE
44
MATERIAALKEUZE 6.1.
DE PLC
45 45
6.1.1 INLEIDING
45
6.1.2 BOUWVORMEN VAN DE PLC
45
6.1.3 DE CPU
46
6.1.4 DE POWER SUPPLY
48
6.1.5 DE PERIFERIEMODULES
48
6.1.6 DE FRONTCONNECTOR
50
6.1.7 DE BUSVERBINDING
50
6.1.8 DE RAIL
51
6.2. 7.
30
4.3.1 HET STAPELOPZETTRANSPORT
4.4.
5.
DE ONDERDELEN VAN HET KRATTENTRANPORTSYTEEM
DE TEKSTDISPLAY
PROGRAMMATIE 7.1.
DE PROGRAMMATIESOFTWARE
51 53 53
7.1.1 STEP 7 LITE V 3.0
53
7.1.2 SIMATIC STEP 7 MANAGER & PLC-SIM
54
7.1.3 PROTOOL LITE
55
7.2.
AANMAKEN VAN HET PROJECT
55
7.2.1 HARDWARECONFIGURATIE
56
7.2.2 AANMAKEN VAN DE SYMBOL TABLE
56
7.2.3 AANMAKEN VAN DE PROGRAMMABLOKKEN
58
7.2.4 DE CROSS-REFERENCES TABLE
59
7.2.5 SIMULATIE VAN HET PROGRAMMA
59
7.2.6 PROGRAMMATIE VAN DE DISPLAY
61
7.3.
HET PLC-PROGRAMMA
61
7.3.1 INLEIDING
61
7.3.2 DE PROGRAMMABOUWSTENEN
62
7.3.2.1 Organisatiebouwsteen OB
62
7.3.2.1.1OB1: CYCL_PROGR
63
7.3.2.1.2OB 100: Complete restart
63
7.3.2.2 Functiebouwsteen FB
63
7.3.2.2.1FB1: Display
64
7.3.2.2.2FB2: Claxon
64
7.3.2.2.3FB3: Krattenteller
65
7.3.2.2.4FB4: Lift snelheden
65
7.3.2.2.5FB5: Storing opslag
65
7.3.2.2.6FB10: Storingen
66
7.3.2.2.7FB20: Handbediening bufferbanen
66
7.3.2.2.8FB30: Stapelopzet
66
7.3.2.2.9FB40 & FB50: Lift
66
7.3.2.2.10FB60 & FB70: Bufferbanen
67
7.3.2.2.11FB80: Bovenontnester
67
7.3.2.2.12FB100: Uitgangen
67
7.3.2.3 Databouwsteen DB
67
7.3.2.4 Systeemfunctie SFC
68
7.3.3 DE PROGRAMMA-ELEMENTEN
69
7.3.3.1 Merkers
69
7.3.3.2 Timers
70
7.3.3.3 Counters
72
7.3.3.4 Set-Reset
73
7.3.3.5 Positieve flankdetectie / One shot
73
8.
9.
OMBOUW
75
8.1.
DEMONTAGE VAN S5 EN DISPLAY
75
8.2.
MONTAGE S7-PLC EN DISPLAY
77
8.2.1 MONTAGE VAN DE DIN-RAIL
77
8.2.2 MONTAGE VAN DE MODULES EN BUSVERBINDING
77
8.2.3 AANSLUITEN VAN DE IN- EN UITGANGEN
80
8.2.3.1 Aansluiten van de ingangen
80
8.2.3.2 Aansluiten van de relaisuitgangen
81
8.2.4 AANSLUITEN VAN DE SPANNING
83
8.2.5 AANSLUITEN VAN DE FREQUENTIEREGELAAR
84
8.2.6 LADEN VAN HET PROGRAMMA
85
CONCLUSIE
87
LITERATUUROPGAVE
A
LIJST VAN FIGUREN:
B
I
Dankbetuigingen Dit project, dat werd uitgevoerd bij NV Manshoven Vers SA, is tot stand gekomen dankzij de hulp van een aantal mensen die wij langs deze weg graag willen bedanken. Hierbij denken wij in de eerste plaats aan de heer Ivo Guisson en de heer Guy Vanolst, onze externe promotoren. Als rechtstreekse begeleiders binnen het bedrijf waren zij er steeds om ons met raad en daad bij te staan. Vervolgens willen wij de heer Jos Claes, onze interne promotor, bedanken voor de tijd en energie die hij gestoken heeft in het opvolgen van ons eindwerk. Ook onze ouders verdienen een dankwoordje omdat ze ons de mogelijkheid hebben gegeven deze studies te volgen, en voor de steun gedurende onze volledige opleiding. Tot slot wensen wij ook nog Marc Vercammen en Luc Reekmans te bedanken voor hun bijdrage bij het maken van ons eindwerk.
II
Abstract Dit eindwerk handelt over de ombouw van een verouderde Siemens S5 PLC-sturing naar een nieuwe Siemens S7 PLC-sturing voor een krattentransportsysteem. Dit project werd uitgevoerd bij NV Manshoven Vers SA, een onderdeel van de La Lorraine Bakery Group. De rode draad door het project is het vervangen van de bestaande sturing. Hiervoor zijn eerst alle gegevens verzameld van de reeds aanwezige S5 sturing. Dit omvatte een studie van code, van de functieomschrijving en van de machine zelf. Hierbij kwamen enkele belangrijke gebreken van de bestaande sturing aan het licht. Vervolgens kon er overgegaan worden tot het uitdenken en ontwikkelen van de nieuwe S7 PLC-sturing. Hiervoor werd er vertrokken van de schema’s, functieomschrijvingen en de code van de oude S5-sturing. Deze basis werd behouden, maar er moesten toch ook een reeks veranderingen aangebracht worden om de gebreken uit de oude sturing weg te werken. Voor het schrijven van de S7 programmacode werd gebruik gemaakt van het Step 7 Lite softwarepakket. De code werd hierna uitvoerig gecontroleerd op fouten door middel van een reeks simulaties. Ten slotte diende er nog een materiaalkeuze gemaakt te worden. Hiertoe behoorden enerzijds de PLC en zijn toebehoren, en anderzijds de tekstdisplay die verantwoordelijk is voor de signalisatie van de sturing. Het programmeren van de tekstdisplay in Protool was eveneens een onderdeel van het project.
Deel 1: Stageplaats
1.
1
Stageplaats
1.1. Algemeen De La Lorraine Bakery Group is op Belgisch grondgebied de grootste verdeler van brooden banketproducten. De groep belevert enerzijds de grootste Belgische supermarkten met dagverse producten en anderzijds tracht het zich te positioneren op de internationale markten met zijn bake-off producten. Een grote variëteit aan broodsoorten en een vast en wisselend assortiment patisserie vormen het verse gamma, dat elke dag opnieuw geproduceerd en verdeeld wordt over het ganse land. De Bake-off productie bestrijkt een zeer groot gamma diepgevroren producten, zowel diepgevroren deegproducten als diepgevroren en voorgebakken broodproducten. Er zijn ongeveer 1.000 mensen werkzaam binnen de groep, die tewerkgesteld worden in de verschillende vestigingen in Ninove, Alken, Lokeren, Barchon en Erpe-Mere.
1.2. NV Manshoven Vers SA NV Manshoven Vers SA is een industriële bakkerij van vers gebakken brood- en patisserieproducten. Er worden per dag ongeveer 13.000 broden, 25.000 stuks kleinbrood en 3.000 stuks patisserie geproduceerd. Dit bedrijf is gevestigd op het industrieterrein Kolmen in Alken, en is een onderdeel van de La Lorraine Bakery Group.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 2: Doelstellingen
2.
2
Doelstellingen
2.1. De bestaande sturing vervangen door een Siemens S7 PLC De huidige sturing is opgebouwd met een Siemens S5 PLC. Aangezien Siemens nu toch al enkele jaren geleden gestopt is met de productie van deze PLC’s en is overgeschakeld op de productie van zijn S7 PLC, worden de onderdelen voor S5 PLC’s schaars. Hierdoor is het niet alleen moeilijker om, bij defecten, aan nieuwe of tweedehandse onderdelen te raken, maar deze onderdelen worden ook almaar duurder. Om niet in problemen te komen wanneer er een defect aan de sturing zou komen, kiest het bedrijf ervoor om te investeren in een nieuwe sturing. Deze investering kan hen in de toekomst geld besparen, want wanneer de machine defect zou raken, kan de productie in gevaar komen en kunnen grote bedragen verloren gaan.
2.2. Evaluatie van de huidige sturing Vooraleer er nieuw sturingsapparaat aangekocht kan worden is het belangrijk om het volledige proces te bestuderen. Aangezien iedereen op zijn eigen manier programmeert, vergt het van anderen veel moeite om zich in te leven in deze code. Toch is het begrijpen van de code en het proces essentieel om de sturing te kunnen uitbouwen, daarom wordt er een volledige functieomschrijving van de installatie gemaakt. Bij de huidige PLC bestaat er geen mogelijkheid tot uitbreiding meer. Er is vroeger reeds getracht om enkele aanpassingen te maken. Men wilde de code uitbreiden, maar de S5 PLC had hiervoor onvoldoende geheugen ter beschikking. Het is dus zeker de bedoeling dat de nieuwe PLC voldoende geheugen bezit om in de toekomst enkele aanpassingen in de code toe te laten. De mogelijkheid bestaat immers dat de installatie later met een 3e bufferbaan wordt uitgebreid. Hiermee dient dus zeker rekening gehouden te worden.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 2: Doelstellingen
3
2.3. Studie en aankoop van de te gebruiken materialen Zoals hierboven vermeld, is het belangrijkste criterium voor de aankoop van de nieuwe PLC het geheugen. Er moet voor gezorgd worden dat het geheugen groot genoeg is, zonder al te fel te overdimensioneren. Eerst en vooral moet er op zoek gegaan worden naar een gepaste CPU, vervolgens komen de voedingsmodule en de in- en uitgangsmodules aan de beurt. Hier moet men zoeken naar de meest optimale configuratie voor de nieuwe sturing. De PLC stuurt ook een display aan via een S5-PG-poort, er moet ook nagetrokken worden of deze display compatibel is met een S7 PLC. Eventueel moet er een alternatief voor deze display worden gezocht.
2.4. Programmatie van de tekstdisplay Vanaf het moment dat er een tekstdisplay geselecteerd is dat aan de nodige eisen voldoet moet deze display ook geprogrammeerd worden met de bijhorende software. Deze software maakt het mogelijk om via de display de toestand van de machine zichtbaar te maken. De tekstdisplay doet dus enkel dienst doen als signalisatiepaneel. Bij de programmering ervan moet er dus ook voor gezorgd worden dat de uitgangssignalen van de PLC bepaalde alarmboodschappen op de tekstdisplay weergeven.
2.5. Programmatie van de PLC in S7 Het grootste deel van dit project is het ontwikkelen van een nieuwe code voor de sturing van het proces. Eerst en vooral wordt er een duidelijk overzicht gemaakt van al de in- en uitgangen die op de PLC aangesloten moeten worden. Vervolgens wordt er op basis van de huidige code en de huidige werking van het proces een nieuwe code ontwikkeld. Belangrijk is ook dat de nieuwe code grondig getest en gesimuleerd wordt. Alle fouten moeten uit de code verdwenen zijn alvorens over te gaan tot de montage van de nieuwe sturing. Wanneer de code nog fouten bevat, zou het proces kunnen vastlopen of de Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 2: Doelstellingen
4
installatie zou beschadigd kunnen worden. Met als gevolg dat de installatie niet gebruikt kan worden, hoewel het juist de bedoeling is om de bedrijfszekerheid te verhogen.
2.6. Schrijven van een handleiding Een goede handleiding is noodzakelijk. Het personeel weet wel hoe het proces werkt, maar voor fouten waarvan de oorzaak in de code ligt kan men zonder een goede kennis van deze code vaak geen afdoende oplossing vinden. Daarom zal er in de handleiding besproken worden hoe de volledige sturing werkt, en hoe dit terug te vinden is in de code. Bij eventuele problemen kan een fout of een storing in het proces dan veel vlugger gelokaliseerd worden, en dus ook veel vlugger opgelost. Zo moet men binnen het bedrijf in staat zijn het grootste deel van de problemen zelf op te lossen.
2.7. Ombouw van de installatie Ten slotte is de volledige sturing klaar om omgebouwd te worden. Belangrijk is dat deze ombouw goed voorbereid wordt, zodat ze zo snel mogelijk kan verlopen. Eerst moet de huidige PLC gedemonteerd worden, vervolgens is er plaats om de nieuwe PLC te plaatsen. Aangezien de kabels naar de sensoren en relais al aanwezig zijn van de vorige sturing, is het enkel nog nodig deze kabels op een overzichtelijke manier te nummeren. Anders kunnen er bij de installatie draden verwisseld worden. Door het plaatsen van een power supply moet er binnen de hoofdstroomkring van de schakelkast wel een gedeeltelijk nieuwe bedrading geplaatst worden.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
3.
5
PLC-sturing
3.1. Structuur van een PLC-sturing
Figuur 1: Uitgebreid blokschema van een PLC-sturing
3.1.1 Ingangsdeel Het ingangsdeel kan men opsplitsen in 2 delen: de bediening en de processignaalgevers. 3.1.1.1 Bediening Bij de bediening treft men steeds de drukknoppen aan waarmee men het proces kan starten en stoppen. Meestal is ook een schakelaar voorzien die toelaat te kiezen tussen een handbediend en een automatisch productieproces. Bij handbediening kunnen de aandrijfcomponenten afzonderlijk bewogen worden; bij automatische bediening heeft men meestal nog een bijkomende keuze: men kan het volledige proces eenmalig uitvoeren ofwel blijft het proces zicht continu herhalen. De bedieningsknoppen zijn op een bedieningspaneel gegroepeerd en zijn uitgevoerd als drukknop of schakelaar. De
noodstopschakelaars
zijn
handbediende
bedieningsknoppen, meestal uitgevoerd in
schakelaars
met
de vorm van een
grote,
rode
paddestoel. De
noodstopsturing wordt zodanig ontworpen dat de aandrijving onmiddellijk of aan het einde van de actuele bewegingscyclus stopt.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
6
3.1.1.2 Processignaalgevers Schakelaars, eindeloopschakelaars en sensoren worden ingedeeld in de groep processignaalgevers. Ze detecteren de proceswaarden zoals vloeistofniveau, temperatuur, verplaatsing van zuigerstang, ed. De fysische proceswaarden worden voortdurend waargenomen en omgezet in een door de besturing verwerkbaar signaal. Deze signalen worden stuursignalen genoemd.
3.1.2 Verwerkingsdeel In de verwerking worden de opeenvolgende acties in de vorm van een programma vastgelegd. Het programma wordt met een programmeerapparaat opgesteld. Dit programma wordt in het geheugen van de PLC geplaatst. De PLC bepaalt, rekening houdend met de ingangssignalen: de commando’s naar de afzonderlijke aandrijvingen in het proces de informatiesignalen naar de apparatuur voor procesregistratie Als men de verwerking nader beschouwt, kan men een onderscheid maken tussen twee grote groepen. De ene groep noemt men combinatorische sturingen, de andere sequentiële sturingen. Bij combinatorische sturingen wordt tijdens de verwerking alleen rekening gehouden met de actuele toestand van de verschillende ingangssignalen. Bij een sequentiële sturing wordt bovendien rekening gehouden met de volgorde. Buiten de actuele toestand van de verschillende ingangssignalen draagt de verwerking er zorg voor dat het proces in een welbepaalde volgorde verloopt. De bewegingsvolgorde is bij deze sturingen volledig vastgelegd. De benaming PLC is reeds meerdere malen gebruikt om een elektronisch apparaat aan te duiden dat gebruikt wordt om de verwerking van de sturing te realiseren. Het letterwoord PLC staat voor “Programmable Logic Controller”. Een gebruikelijke Nederlandse benaming is: “Programmeerbaar Logisch Sturingsapparaat”.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
7
Programmable: In het programma wordt vastgelegd welke ingangssignalen men moet selecteren, welke verwerkingen moeten plaatsvinden en welke uitgangen men moet sturen. Dit programma wordt, d.m.v. een programmeerapparaat in het geheugen van de PLC gebracht. Het programmeren gebeurt via een hogere, op de sturingstechniek gerichte en gebruiksvriendelijke programmeertaal. De moderne PLC is niets anders dan een microcomputer die aangepast is voor het sturen van machines en installaties. De PLC is tegen storende invloeden uit de industriële omgeving beveiligd en kan allerlei gegevens registreren. Logic: Zowel de ingangs- als uitgangssignalen zijn meestal binaire signalen. Dit wil zeggen dat deze signalen twee toestanden kunnen aannemen. Controller: Een PLC is een sturingsapparaat dat, afhankelijk van de volledige ingangsinformatie, stuurt volgens een bepaald vastgelegd programma.
3.1.3 Uitgangsdeel De PLC, als verwerkingseenheid van de sturing, zorgt voor twee groepen van uitgangssignalen. In de eerste plaats onderscheidt men de signalen die via een versterking of omvorming de aandrijfcomponenten aansturen. Daarnaast is de PLC in staat een aantal gegevens aan aangepaste registratieapparatuur door te geven. 3.1.3.1 Aandrijvingen Via het uitgangsgedeelte van de PLC worden de verschillende actie gestart, in stand gehouden en gestopt. Het uitgangsdeel van de PLC kan wel een signaal doorgeven maar is meestal niet geschikt om rechtstreeks de vermogenselementen te sturen. Een extra tussenstap is nodig. Voor elektrische sturingen moet een contactor aan de uitgang van de PLC worden aangesloten. Deze zal de elektrische energie die noodzakelijk is voor het functioneren van de installatie, in- en uitschakelen. Voor pneumatische sturingen zal men gebruik maken van een elektroventiel. Het ventiel wordt door de signalen van de PLC gestuurd. Het ventiel zal de pneumatische energie doorlaten zodat de vermogenselementen kunnen functioneren. Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
8
3.1.3.2 Procesinformatie en –registratie Informatie over het productieproces (procesverloop, veiligheid, e.d.) kan direct afgelezen en geregistreerd worden. De PLC stuurt hiervoor signalen naar de displays, terminals, printer en plotters, procescomputers, e.d.
3.2. Voordelen van PLC t.o.v. klassieke sturingen Vroeger werden elektrische, pneumatische, hydraulische of elektronische sturingen nagenoeg voor elk project afzonderlijk ontwikkeld. Alleen in uitzonderlijke gevallen kan de ontwerper gebruik maken van voorgemonteerde componenten, zoals geïntegreerde schakelingen en kaarten die complete functies bevatten. Een individueel printontwerp, of op een bepaald project afgestemde bedrading, is hierbij onvermijdelijk. Wijzingen en uitbreidingen tijdens en na het in bedrijf stellen, kortom elke ingreep in een besturing, gaan met de nodige problemen gepaard. Bedradingen aanbrengen of wijzigen, componenten toevoegen, printen aanpassen … zijn kostbare operaties. Bovendien is de kans groot dat met de wijziging fouten in het bestaande gedeelte worden aangebracht. Hoe goedkoper een systeem wordt uitgebouwd, uit elektrisch of mechanisch oogpunt gezien, hoe minder voorzieningen getroffen zijn voor het aanbrengen van correcties. De uitbreidingen zijn meestal beperkt door plaatsgebrek, terwijl de overzichtelijkheid en de lay-out van de behuizing zwaar lijden onder de aangebrachte veranderingen. De praktijk leert dat wijzigingen en uitbreidingen van een sturing meer regel dan uitzondering zijn. Ze zijn meestal het gevolg van een onjuiste probleemstelling of van eisen die in een beginstadium onvolledig gekend waren en slechts aan de werkende schakeling worden vastgelegd. Iedere besturingtechnicus ervaart de onaangename gevolgen van deze aanpassingen.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
9
In een ideaal besturingssysteem worden deze problemen vermeden. De PLC beschikt over een groot aantal voordelen ten opzichte van de klassieke sturingen. De voordelen kunnen in enkele groepen worden onderverdeeld.
3.2.1 Flexibele opbouw en wijziging van de sturing Alle
voorkomende
ingangssignalen
kunnen
worden
verwerkt.
Drukknoppen,
eindeloopschakelaars, naderingsschakelaars, drukventielen, thermostaten, enz. … kunnen door elkaar worden gebruikt. Normaal open of gesloten contacten kunnen door het programma worden geïnverteerd. Bij het aansluiten van de verschillende componenten moet niet alleen rekening kunnen worden gehouden met de ingangsinformatie, maar meestal worden ook tel- en tijdfuncties gebruikt. In iedere PLC zijn deze functies standaard ingebouwd en gemakkelijk in te stellen en te controleren. Iedere ingangsinformatie en alle beschikbare functies kunnen meerdere malen in het programma worden verwerkt. Bij klassieke sturingen is dit beperkt door het aantal beschikbare contacten van de elementen. Sequenties die veelvuldig in hetzelfde programma voorkomen, kunnen in een subroutine worden opgenomen. De PLC bevat geen bewegende delen en is daardoor nagenoeg niet aan slijtage onderhevig. De programma’s kunnen opgeslagen worden op diskette, harddisk, EPROM, EEPROM, flash EPROM of RAM-geheugen met bufferbatterij. Moeten er nadien wijzigingen of uitbreidingen aan een proces worden aangebracht, is het niet nodig om het hele programma opnieuw te typen. De programma’s kunnen van extra commentaarlijnen worden voorzien, zodat de werking van het proces kan worden verduidelijkt. Het opgestelde programma kan in de vorm van een ladderdiagram, logisch schema of instructielijst, worden uitgeprint. Daardoor wordt het noodzakelijk tekenwerk, als documentatie van het proces, beperkt.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
10
3.2.2 Eenvoudige montage Het
uitgangsvermogen
van
sommige
PLC’s
is
voldoende
groot,
zodat
de
vermogenselementen rechtstreeks worden aangestuurd zonder gebruik te maken van eindversterkingtrappen. De omvang van de behuizing wordt veel kleiner, omdat de afmetingen van de PLC, in vergelijking met klassieke sturingen, veel kleiner zijn. De constructie van de meeste PLC’s is zo uitgebouwd dat een maximale veiligheid verzekerd is. Kortsluitingen in het uitwendige gedeelte van de besturing zullen de PLC zelf niet beschadigen. Het opstellen of wijzigen van logische functies kan gebeuren zonder ingreep in de besturing, zonder uitwisselen van bouwgroepen of componenten, zonder verandering in bedrading of zonder kabels en leidingen te herleggen.
3.2.3 Extra mogelijkheden De toestanden van de in- en uitgangen worden steeds met LED-indicaties weergegeven, zodat de storingsanalyse sterk wordt vereenvoudigd. Met het programmeerapparaat kan de toestand tijdens het programmaverloop worden gewijzigd, gecontroleerd of opgevolgd. De stand van de tellers en tijdfuncties is ook op te vragen. De montage en bedradingstijd worden sterk gereduceerd, omdat het aantal draden ten opzichte van een klassieke sturing sterk is verminderd. Bovendien is bij de klassieke relaisschakeling de assemblagetijd voor de 1e, 10e of 100e kast nagenoeg even groot. Elke schakeling moet volledig worden uitgetest. Eenmaal een PLC geprogrammeerd is, wordt de tijd die nodig is voor het kopiëren van het programma tot enkele minuten teruggebracht. Het volledige programmaverloop kan vooraf door simulatie worden uitgetest. Op die manier wordt volledige zekerheid over een gemaakt ontwerp verkregen, voordat het PLCsysteem aan kostbare machines of installaties wordt aangesloten. Bij het omschakelen van het productieproces van een machine of installatie, moet deze maar enkele ogenblikken uit productie worden genomen om het nieuwe programma te laden. Het testen en simuleren kan op voorhand op een extra systeem gebeuren. Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
11
3.2.4 Economische voordelen Door het feit dat PLC’s standaardproducten zijn, worden ze in serie vervaardigd. Hierdoor wordt de kostprijs gedrukt. Doordat de concurrentie tussen de PLC-fabrikanten scherp is, heeft dit uiteraard invloed op de kostprijs van de PLC. Machinebouwers kunnen nu een standaardproduct kopen. Levertermijnen kunnen door gebruik van PLC’s sterk worden ingekort. Bij een defect is een PLC snel uit te bouwen en kunnen de niet-productieve tijden tot een minimum worden herleid. Met een PLC moet men om bij defecten snel te kunnen ingrijpen, veel minder onderdelen in het magazijn stockeren. Bij modulair ingebouwde PLC’s kan men zich beperken tot een extra aanschaf van één kaart per soort. Dit beperkt de investeringskost aanzienlijk. Een belangrijk voordeel situeert zich bij de aankoop van het PLC-systeem. Bij het opmaken van een prijsofferte was het vroeger noodzakelijk om het hele project uit te werken om een nauwkeurige raming te maken. Nu moet alleen het aantal ingangen, uitgangen, tel- en tijdsfuncties bekend zijn. Daaruit kan de kostprijs van de PLC worden afgeleid. De gedetailleerde uitwerking van de sturing kan op een later tijdstip, samen met de bestelling, plaatsvinden. Het is niet nodig om andere materiaalkosten, voor eventuele wijzigingen in het besturingsverloop, te voorzien.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
12
3.3. Bestanddelen van een PLC
Figuur 2: Blokschematische voorstelling van een PLC
Een PLC bestaat in principe uit: Een centrale verwerkingseenheid met stuurorgaan en programmeergeheugen Een aantal in- en uitgangsbouwgroepen (periferie) Een voedingseenheid De signaalgevers zijn aangesloten aan de ingangen van de PLC. In de centrale eenheid wordt, door het besturingsorgaan, het in het geheugen opgeslagen programma verwerkt. Instructies in dit programma kunnen de toestand van de ingangen afvragen. Er wordt gedetecteerd of er al dan niet een spanning aan de opgeroepen ingang aanwezig is. Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
13
Afhankelijk van deze toestand kunnen beslissingen worden genomen die in het aansturen van een uitgang kunnen resulteren.
3.3.1 Ingangen Wordt een proces geautomatiseerd, dan worden een aantal schakelstanden van detectoren verwerkt. De toestand van deze detectoren, die opgesteld staan in de installatie, worden via de ingangseenheid aan de PLC gelezen. De CPU tast de toestand van de signalen van de sensoren af. De toestanden worden naar het ingangsprocesbeeld PII (PII = Proces-Image Input table), bij elk cyclusbegin, overgedragen. Met behulp van een LED, zichtbaar in de PLC gemonteerd, wordt de toestand van een ingang weergegeven. De LED licht op bij een gesloten stroomkring. Zo een stroomkring bestaat uit de serieschakeling van de voeding, het schakelcontact van de detector, en de aansluitklem van de ingang. Deze indicatie is zeer efficiënt bij het testen van een nieuwe installatie of bij het opsporen van fouten. De ingangen zijn meestal zo geconstrueerd dat ze volledig galvanisch van het centrale verwerkingsgedeelte zijn gescheiden. Uitwendige fouten kunnen geen invloed op het procesgedeelte uitoefenen. Om deze galvanische scheiding te realiseren tussen de PLC en de overige delen van de installatie, worden de ingangselementen via een optische koppeling aangesloten. Deze bestaat uit een LED en een transistor, in een hermetisch gesloten behuizing ondergebracht. De transistor wordt als open of gesloten schakelaar door de lichtstraal van de LED gestuurd. Bij de kleinere PLC’s wordt de voeding, noodzakelijk om de ingangen te sturen, ingebouwd. Bij grotere PLC-systemen moet men de voeding als een afzonderlijke component naast de PLC monteren. Bij de meeste PLC’s wordt 24V DC toegepast omdat dit een veilige spanning is. De ingangselementen hebben ook tot taak de stoorsignalen buiten de PLC te houden. Dikwijls gebruikt men daarom een RC-Network met tijdsconstante van 0,2 à 0,3 ms. De correcte tijden zijn terug te vinden in de technische specificaties die bij de PLC horen. Dit Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
14
netwerk heeft als nadeel dat de responsietijd vergroot. Anderzijds heeft dit het voordeel dat de contactdender van de detectoren geen invloed heeft op het schakelproces. Hier moeten fabrikanten tegenstrijdige belangen verzoenen. Hoe beter de PLC contactdender elimineert, hoe trager hij het proces opvolgt. Voor de meeste processen speelt deze vertraging echter geen rol omdat de optredende tijdsvertragingen klein zijn. Praktisch wordt de storingsgevoeligheid door een selectief systeem verbeterd. Door de PLC worden de ingangen als een logisch nulsignaal gedetecteerd, ook al loopt de spanning van 0 tot 5V. Pas vanaf een bepaalde drempelwaarde, bijvoorbeeld 13V, verkrijgt men een logisch één signaal.
Figuur 3: Logisch “0” en “1”-signaal bij detectie van ingangssignalen
Bij een gesloten contact van de detector bedraagt de stroom die door het schakelelement vloeit, ongeveer 5mA. Het is noodzakelijk dat er stroom door het schakelelement vloeit. Wordt de stroomsterkte verlaagd, dan kan een kleinere voeding gebruikt worden. Dat beïnvloedt de kostprijs van de installatie gunstig. Wordt de detector in een industriële omgeving geplaatst en is de stroomsterkte kleiner dan 5mA, dan is de kans groot dat er oxidatie gaat optreden van de schakelcontacten. Is de stroom groter dan deze drempelwaarde, dan ontstaat er bij gebruik een kleine vonkvorming. Die zorgt ervoor dat de contactpunten van het contact zuiver blijven. Voor het nemen van beslissingen in het programma wordt door de PLC de “toestand” van de ingangssignalen bekeken. De toestand is afgeleid van de elektrische spanning: Toestand “0” komt overeen met “spanning niet aanwezig” Toestand “1” komt overeen met “spanning wel aanwezig” Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
De
elektrische
spanning
stelt
een
procesgegeven
15
voor.
In
de
elektronische
besturingstechniek wordt veel met binaire signalen gewerkt. Dit zijn signalen waarbij slechts 2 toestanden mogelijk zijn, namelijk “0” of “1”. Ook procesgegevens worden binair (= tweewaardig) geïnterpreteerd. Het procesgegeven is een bewering die met JA of NEE beantwoord kan worden. In het programma worden beslissingen genomen afhankelijk van het wel of niet aanwezig zijn van de spanningen op de ingangen van de PLC. Daarbij wordt niet gekeken of de detectors als maak- of verbreekcontacten zijn uitgevoerd. Vooraleer men het programma kan opstellen, moeten deze gegevens wel gekend zijn. Is de detector met een maakcontact uitgevoerd, dan heeft de ingang toestand “1” wanneer aan de voorwaarde behorende bij de detector voldaan is. Wordt de detector niet bediend, dan wordt de toestand “0” gedetecteerd. Dit noemt men het arbeidsstroomprincipe. Is de detector als verbreekcontact uitgevoerd en werd aan de procesvoorwaarde voldaan, dan wordt het contact geopend. Aan de ingang van de PLC komt dit overeen met een toestand “0”. Dit is het ruststroomprincipe. Het ruststroomprincipe wordt meestal uit veiligheidsoverwegingen gebruikt. Een installatiedeel moet kunnen afschakelen, ook bij draadbreuk.
3.3.2 Uitgangen De uitgangsmodules zetten resultaten uit het gebruikersprogramma om in signalen. De resultaten van de verwerking door de CPU worden bewaard in het uitgangsprocesbeeld PIQ (Proces-Image Output table). Aan het einde van elke cyclus worden de toestand, aanwezig in het PIQ geheugen, gekopieerd naar de uitgangen. De uitgangen sturen deze signalen naar de aangesloten verbruikers (contactoren, ventielen, signaallampen, e.a.) Bij PLC-systemen worden 3 verschillende soorten uitgangen onderscheiden. Bij elk van de 3 systemen kan een volledige galvanische scheiding, tussen de uitgang en het centrale verwerkingsgedeelte van de PLC, worden gerealiseerd. Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
16
Bij elke uitgang is, net zoals bij de ingangen, een LED-indicatie voorzien die de toestand weergeeft van de betreffende uitgang. Bij de keuze van een bepaald systeem zijn het schakelvermogen en de schakelfrequentie meestal doorslaggevend.
3.3.2.1 Relais Een relais is een robuust element. Men kan als uitgangsrelais uitvoeringen verkrijgen tot 230V. De toegelaten stromen kunnen variëren van 100mA tot 2 à 3 A bij een ohmse belasting. Men moet er rekening mee houden dat kleine toegelaten stroomsterktes de prijs van de PLC gunstig beïnvloeden. Daartegenover staat dat men bij iedere uitgang van een dergelijke PLC, zelf een extra relais moet monteren en aansluiten. Er is uiteraard ook een relatie tussen het schakelvermogen van de uitgangen en de compactheid van de PLC. Er wordt zeer veel gebruikt gemaakt van PLC’s met relaisuitgangen, voornamelijk omwille van de kostprijs. Alleen als de schakelfrequentie te groot wordt, is het gebruik van een PLC uitvoering met relais niet aangewezen. Bij dergelijke toepassingen is het maximum aantal schakelingen van het relais bepalend voor de levensduur van de PLC. Vele PLC’s beschikken over potentiaalvrije contacten. De beide contactpunten van de verschillende uitgangsrelais zijn verbonden met klemmen, voorzien op de PLC. Bij dergelijke PLC’s kan men aan de uitgangen toestellen aansluiten, geschikt voor verschillende spanningen. Het komt ook veel voor dat één aansluitdraad gemeenschappelijk is. Er is dan slechts één aansluitdraad per uitgang aan de aansluitklemmen verbonden. Bij deze PLC uitvoering moeten alle aan te sturen toestellen geschikt zijn voor dezelfde spanning. Anderzijds hebben deze toestellen het voordeel dat er minder bedrading nodig is.
3.3.2.2 Transistor Een transistor is nuttig als de schakelingen op een gelijkspanning zijn aangesloten. De toegelaten schakelfrequenties kunnen veel hoger liggen dan bij relaisuitgangen.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
17
3.3.2.3 Solid-State uitgangen Deze uitvoering wordt toegepast bij die schakelingen die een grote schakelfrequentie vereisen en bij schakelingen aangesloten op wisselspanning. De Solid-State uitvoering heeft 2 grote nadelen. De kostprijs van een PLC met Solid-State uitvoering is merkelijk hoger dan die met relaisuitvoering. Bovendien kan een foutieve aansluiting tot gevolg hebben dat een Solid-State blijvend defect raakt. Daarbij kunnen de aansluitingen niet met eenvoudige apparatuur kunnen worden gecontroleerd. De ingangen en uitgangen zijn zowat de belangrijkste delen van een PLC. Dit niet alleen door hun prijs, maar ook door de invloed van hun keuze op het succes van het project. Voor een middelgrote automaat situeert de kostprijs van de in- en uitgangsmodules zich meestal boven de helft van de totale kostprijs.
3.3.3 De Centrale Verwerkingseenheid De centrale verwerkingseenheid wordt in het Engels “Central Processing Unit” genoemd, afgekort CPU. Deze module bestaat uit 3 delen: De logische eenheid of in het Engels “Logic Unit” De accumulator of kortweg accu genoemd De tijd- en controle-eenheid De centrale verwerkingseenheid is het brein van de PLC. De ingebouwde microcomputer voert allerlei bewerkingen uit aan de hand van opdrachten die hem worden gegeven. Deze reeks van opdrachten vormt samen een programma. Elke opdracht wordt voorafgegaan door een adres.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
18
3.3.3.1 Logische Eenheid In dit deel van de CPU gebeurt de verwerking van de gegevens, gebaseerd op het programma dat in het programmageheugen aanwezig is. De verwerking is “logisch” omdat het programma uit regels bestaat met instructies van logische bewerkingen zoals EN, OF en NIET. Ook inhouden van geheugens die alleen de waarde “0” of “1” kunnen aannemen, komen erin voor. De programmalijnen worden door de centrale verwerkingseenheid in stijgende volgorde verwerkt. Dit gebeurt aan de hand van twee soorten informatie: Deze die in de vorm van ingangssignalen worden aangeboden, en deze die in de vorm van instructies in het programmageheugen staan.
3.3.3.2 Accumulator De accumulator is een register of geheugen waarin het tussenresultaat van de bewerkingen wordt bewaard tot een volgende bewerking wordt uitgevoerd. De inhoud van de accumulator wordt dan overschreven door het nieuwe resultaat. Aan het begin van elke cyclus vraagt het stuurorgaan de signaaltoestanden van alle ingangen op. De toestand van alle ingangen wordt gekopieerd naar een geheugen: Het PIIregister. Daarna begint de eigenlijke verwerking van het programma. Instructie na instructie wordt afgewerkt. De tussenresultaten van de bewerkingen in de logische eenheid worden bewaard tot er nieuwe tussenresultaten voorkomen. De oude toestanden worden overschreven. De resultaten van de verwerkingen, die op de uitgangen betrekking hebben, worden weggeschreven naar het PIQ-register. Na de laatste instructie wordt de inhoud van het PIQregister gekopieerd naar de uitgangen.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
19
3.3.4 Geheugens 3.3.4.1 ROM-geheugen (Read Only Memory) Dit geheugen wordt tijdens de fabricage in de fabriek geprogrammeerd, de gebruiker kan er niets in wijzigen. Het ROM-geheugen kan dus alleen uitgelezen worden en bevat informatie voor de werking van de PLC.
3.3.4.2 RAM geheugens (Random Acces Memory) Een RAM-geheugen is een vrij programmeerbaar lees- en schrijfgeheugen. Als de voedingsspanning van het RAM-geheugen wegvalt, is de inhoud verloren. Doel van het RAM-geheugen: Opslag van het PLC-programma Opslag toestanden (status) in- en uitgangen (PII en PIQ; zie verder) De accumulator die het tussenresultaat van twee bewerkingen opslaat Toestanden van timers en tellers Het volledige gebruikersprogramma wordt voor de bewerking van het inwendige EEPROM geheugen naar dit geheugen geschreven. De verwerkingssnelheid van een RAM geheugen is veel hoger dan van een EEPROM.
3.3.4.3 PROM (Programmable Read Only Memory) Het PROM geheugen is een soort van ROM geheugen, dus alleen uitleesbaar. De gebruiker kan met een programmeerapparaat, een eigen gemaakt programma in het geheugen invoeren. Dit gebeurt door verbindingen blijvend te onderbreken. De onderbrekingen kunnen niet worden opgeheven.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
20
3.3.4.4 EPROM (Erasable Programmable Read Only Memory) Deze module kan door de PLC geprogrammeerd d.m.v. elektrische pulsen. Bij spanningsuitval blijft het geheugen behouden. De geheugeninhoud kan door bestraling met ultraviolet licht worden gewist. Wanneer het geheugen volledig gewist is, kan het opnieuw geprogrammeerd worden.
3.3.4.5 EEPROM (Electrically Erasable Programmable Read Only Memory) Het EEPROM geheugen kan elektrisch zowel geprogrammeerd als gewist worden. De mogelijkheid bestaat om slechts een deel van het geheugen te wissen. Bij een EPROM wordt door UV-bestraling de hele geheugeninhoud gewist. Het EEPROM wordt soms voorgesteld door E²PROM. Het gebruikersprogramma, de systeemparameters en gegevens die als remanent worden geparametreerd, worden nadat ze via het programmeerapparaat naar de PLC werden overgedragen, in een intern EEPROM-geheugen bewaard. Een externe EEPROM-module mag men niet beschouwen als een geheugenuitbreiding. De module wordt in de CPU geplugd. Ze is hoofdzakelijk bedoeld als hulp voor de gebruikerssoftware of om eenvoudig een programmawisseling in de PLC uit te voeren, zonder gebruik te maken van een programmeerapparaat.
3.3.5 Bussysteem Om de verschillende delen van de PLC onderling te laten samenwerken, zijn er verbindingen nodig: het bussysteem. Het bussysteem is een verzameling van leidingen die zorgen voor de overdracht van signalen. Via deze bus gebeurt, bijvoorbeeld, de uitwisseling van gegevens tussen de processor en de in- en uitgangskaarten. De bus bestaat uit meerdere parallelle signaalleidingen: De adresbus, waarmee de adressen op de verschillende kaarten aangesproken worden. De databus, waarmee gegevens afkomstig van ingangskaarten of vertrekkende naar uitgangskaarten overgedragen worden. De sturingsbus waarmee de stuur- en bewakingssignalen worden overgedragen. Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
21
Is de PLC opgebouwd als één geheel (monoblok), dan zijn deze verbindingen intern gerealiseerd. Heeft men te maken met een modulair opgebouwde PLC, dan zijn deze verbindingen op de met steekplaatsen voorziene moederplaat van het rack aangebracht.
3.3.6 Voedingseenheid Men moet onderscheid maken tussen twee soorten voedingen: De externe voeding: Deze voeding brengt de gebruikelijke spanning tot een veilige spanningswaarde terug. Deze spanning wordt ook gebruikt om de signaalgevers aan de ingangen van de PLC aan te sluiten. Bij sommige PLC’s, vooral bij kleiner systemen, is de voeding ingebouwd. De interne voeding: Deze voedingseenheid transformeert de netspanning. De nodige gelijkrichter, filters en ontstoorapparaten zijn ingebouwd.
3.3.7 Bufferbatterij Door een bufferbatterij kan het RAM-geheugen of een gedeelte hiervan onder spanning worden gehouden. Is de PLC met een bufferbatterij uitgerust, dan gaat de informatie bij een eventuele spanningsonderbreking niet verloren. Op die manier is het mogelijk dat men bijvoorbeeld de inhoud van een teller onthoudt.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
22
3.4. Adressering 3.4.1 Bit-, byte- en woordadres Een bit is de kleinste eenheid van het binair systeem. Een eenheid van 8 op elkaar volgende bits noemt met een byte. De PLC vat bijvoorbeeld de toestand van 8 in- of uitgangen samen in een ingangsbyte (IB), respectievelijk een uitgangsbyte (QB). Elke bit van een byte kan de waarde 0 of 1 aannemen. De PLC is eveneens in staat een volledige byte als geheel te verwerken. Worden 16 opeenvolgende bits tot een eenheid gebracht, dan spreekt men van een woord. Een woord bestaat uit 16 bits of 2 bytes. In de PLC wordt bijvoorbeeld de toestand van 16 in- of uitgangen samengevat in een ingangswoord (IW), respectievelijk een uitgangswoord (QW). Worden 32 opeenvolgende bits tot een eenheid gebracht dan spreekt men van een dubbelwoord.
Figuur 4: Voorstelling van bit, byte en woord
Om een bit te kunnen aanspreken, wordt aan elke bit binnen een byte een nummer toegekend. Men noemt dit nummer een bitadres. In elke byte krijgt de uiterst rechtse bit het bitadres 0 en de uiterst linkse bit het bitadres 7. Als men het zogenaamde woordadres gebruikt, dan kunnen 16 informatieplaatsen in één woord worden samengevat. Zo kenmerkt IW2 het ingangswoord dat bestaat uit ingangsbit IB2 en IB3. Elke byte is van een nummer voorzien, dat men het byteadres noemt. Bijkomend wordt de operand nog nader geïdentificeerd, zodat bijvoorbeeld IB2 voor ingangsbyte 2 en QB4 uitgangsbyte 4 staat. Een combinatie van het bitadres en het byteadres maakt het mogelijk Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
23
een specifieke, enkelvoudige bit in een specifieke byte aan te spreken. Hierbij wordt het bitadres en het byte adres door een punt gescheiden. Links van het punt staat het byteadres; rechts van het punt het bitadres. Bij modulaire PLC’s komt het zeer frequent voor dat de byteadressen van in- en uitgangen afhankelijk zijn van het steekplaatsnummer van de overeenkomstige in- of uitgangskaart. Aan elke steekplaats in het rack is een vast nummer verbonden. Dit nummer legt het beginadres van de op deze plaats geïnstalleerde kaart vast. De nummering loopt door, zelfs wanneer niet alle steekplaatsen gebruikt zijn. Bij vaste steekplaatsadressering kunnen in- en uitgangen niet hetzelfde adres hebben. Een adres gekoppeld aan een ingangskaart kan niet opnieuw als adres voor een uitgangskaart worden gebruikt. Grote PLC’s maken gebruik van variabele adressering van in- en uitgangskaarten. Het adresbereik ligt niet vast maar kan door de gebruiker worden ingesteld.
Figuur 5: Adressering van een PLC
3.4.2 Adressering van de in- en de uitgangen
Ingangen worden aangeduid door de letter I (Input). Uitgangen worden aangeduid door letter de Q (de O van output wordt niet gebruikt omdat die letter voor een andere functie gebruikt wordt.) Achter de letters I en Q staat een soort volgnummer. Voorbeelden: I 0.0
I 124.2
Q 125.7
Q 1.1
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
24
Het eerste getal duidt op de byte waar die in- of uitgang toe behoort. Het tweede cijfer duidt de bit aan. De bits zijn genummerd van 0 tot 7. (Dat zijn er dus 8; 8 bits in een byte.) I 0.3 betekent: ingang nummer 3 van byte 0. Q 124.0 betekent: uitgang 0 van byte 124. Elke ingangsbyte kan 8 ingangen hebben van 0 tot 7. Elke uitgangsbyte kan 8 uitgangen hebben van 0 tot 7.
3.5. Programmaverwerking 3.5.1 Lineair of cyclisch programmeren Bij het starten van de PLC is alleen de opstartbouwsteen OB1 actief. Als men het programma zuiver lineair opstelt zal men alle instructies en de verschillende programmadelen na elkaar plaatsen. Het volledige programma wordt volledig cyclisch verwerkt.
Figuur 6: Lineair programma
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
25
3.5.2 Gestructureerd programmeren Het programma wordt in modules geschreven. Modulair programmeren is bedoeld om programma’s gestructureerd te ontwerpen zodat men een overzichtelijk geheel krijgt. Als een installatie zowel automatisch als manueel moet kunnen functioneren, zal men beide delen in afzonderlijke subroutines programmeren. Deze zullen nooit samen moeten werken. Door het oproepen van de gewenste subroutine, zal de PLC alleen springen naar de geactiveerde subroutine. De overige programmalijnen worden niet verwerkt, zodat de PLC sneller zal reageren. Bovendien zal het testen gemakkelijker worden omdat het programma overzichtelijker wordt. De volgorde waarin de afzonderlijke bouwstenen opgeroepen en bewerkt moeten worden, worden in het programma vastgelegd. Er moet een onderscheid gemaakt worden tussen subroutines en interruptprogramma‘s. Wanneer aan de geprogrammeerde voorwaarden voldaan is zal de subroutine elke cyclus opnieuw, samen met het hoofdprogramma, worden verwerkt. Interruptprogramma’s worden alleen actief als aan speciale voorwaarden is voldaan. Het is mogelijk dat een ingang (noodstop) zal zorgen dat het normale programmaverloop
onderbroken
wordt
en
doorgeschoven
wordt
naar
het
interruptprogramma. Andere mogelijkheden zijn real-time-clock, snelle telleringang, tijdgestuurde interrupts, e.a. Na de instructie END, in het hoofdprogramma (MEND), worden de nodige subroutines en eventuele onderbrekingsprogramma’s toegevoegd. Het is mogelijk om terug te keren naar het hoofdprogramma, afhankelijk van geprogrammeerde voorwaarden. Het is ook mogelijk om aan het einde van en subroutine onvoorwaardelijk terug te keren naar het hoofdprogramma. Het hoofdprogramma OB1 wordt cyclisch bewerkt. Met oproepen kan een hoofdprogramma verlaten worden en kan er naar onderprogramma’s gesprongen worden. Men kan tot totaal maximaal 8 niveaus van vernesting gaan, hoewel de vernestingsdiepte afhankelijk is van het type PLC.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 3: PLC-sturing
26
Figuur 7: Gestructureerd programmeren
3.6. Veiligheid Om veiligheidsredenen is men verplicht een normaal gesloten contact aan de ingang van de PLC aan te sluiten voor alle beveiligingsfuncties zoals stopdrukknop, overdrukventiel, thermische beveiliging, enz… kortom voor alle onderbrekingsvoorwaarden van een proces. Bovendien zal men alle noodstopfuncties, verplicht, hardwarematig moeten aansluiten.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
4.
27
Het krattentransport
4.1. Algemeen Het bedrijf gebruikt plastic kratten om de vers gebakken broden in te transporteren. ’s Avonds wanneer de vrachtwagens geladen worden, gaan deze kratten, met de broden, de vrachtwagens in, en worden ze naar de winkels gebracht. In de vroege ochtend komen er stapels lege kratten via de vrachtwagens terug in het bedrijf aan. Deze kratten moeten opgeslagen worden. Wanneer er nieuwe broden klaar zijn worden deze kratten gewassen zodat ze klaar zijn om opnieuw gebruikt worden. Het krattentransport bestaat uit 5 delen, namelijk: het stapelopzettransport, de lift, de buffer, de ontnester en de noodafvoer. De installatie kan op 3 verschillende manier werken: Automatisch: Kratten worden via het opzettransport naar de lift gebracht, deze brengt de kratten naar boven. Boven wordt er dan gekeken of de kratten via de ontnester naar het wasmachine gaan, zoniet gaan ze naar de buffer waar ze worden opgeslagen. Bufferen: Alle de kratten die via het opzettransport en de lift naar boven worden gebracht, worden in de buffer opgeslagen. Nood: Wanneer er een defect aan de wasmachine zou zijn, worden de kratten uit de buffer gehaald, en worden ze via de lift naar de noodafvoer gebracht.
4.2. De verschillende programma’s 4.2.1 Programma 1: Automatisch Het programma “Automatisch” wordt bijna continu gebruikt wanneer het bedrijf in normale productie is. In dit programma is het mogelijk om stapels kratten op het stapelopzettransport te plaatsen. De stapels worden dan via de haakse overname in de lift ingenomen, die ze naar boven brengt. Eens de lift met de stapel kratten boven is aangekomen zijn er twee verschillende mogelijkheden binnen dit programma.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
28
Indien de ontnester niet bezet is, wordt de stapel afgevoerd naar de invoer van de ontnester. Hierna kan de stapel in de lift van de ontnester worden ingenomen en wordt de stapel terug gescheiden in aparte kratten. Deze kratten worden in de glijgoot van het grove vuil ontdaan en daarna grondig gereinigd in de wasmachine. Hierna worden de kratten doorheen het volledige bedrijf getransporteerd om te drogen en tot slot komen ze terecht op een krattenafneemsysteem waar de broden in de kratten gesorteerd kunnen worden. Indien de ontnester wel bezet is, blijft de stapel kratten gewoon op de lift staan totdat er beneden aan de invoer van de lift een nieuwe stapel kratten zich aanbiedt. De stapel wordt dan van de lift op de toevoerbaan naar de buffer overgezet, en de lift vertrekt naar beneden om de nieuwe stapel kratten op te halen. Dit deelproces herhaalt zich totdat er zich 4 stapels kratten op de toevoerbaan bevinden. Indien dit nu het geval is, dan worden de kratten afgevoerd naar de buffer voor opslag. De 4 stapels komen terecht op rollenbaan 1 en hier wordt er gekozen in welke bufferbaan de kratten moeten worden opgeslagen. Indien de kratten in bufferbaan 1 ingenomen moeten worden, zal het rollenbed naar beneden bewegen en de kratten worden via het kettingtransport ingenomen. Indien de kratten in bufferbaan 2 moeten worden ingenomen zullen ze van rollenbaan 1 naar rollenbaan 2 overgezet worden, waarna ze door het kettingtransport in bufferbaan 2 worden ingenomen. Wanneer er zich nu beneden aan de invoer van de lift geen kratten meer aanbieden, en zowel de toevoerbaan naar de lift, als de lift zelf niet bezet zijn, worden stapels kratten uit de bufferbaan uitgenomen. De rollenbaan van bufferbaan 1 of bufferbaan 2 komen naar beneden en door het kettingtransport worden 4 stapels kratten op het overeenkomende rollenbed geplaatst. De stapel lopen over de rollenbedden en komen op de toevoerbaan terecht. Wanneer de 1e stapel op de lift terecht komt stopt de uitgave en staan er weer stapels gereed om naar de ontnester gevoerd te worden.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
29
4.2.2 Programma 2: Buffer Het programma “Buffer” wordt zelden of nooit gebruikt binnen het fabricageproces. Tijdens het uitvoeren van dit programma is het enkel mogelijk om stapels kratten die op het stapelopzettransport gezet worden en via de haakse overname en de lift naar boven komen af te voeren naar de buffer. Dit programma verloopt verder analoog aan het programma “Automatisch” met die uitzondering dat er nooit stapels naar de ontnester terug afgevoerd zullen worden. De stapels die boven op de lift aankomen worden op het toevoertransport overgezet van zodra er zich een nieuwe stapel onder aan de invoer van de lift aanbiedt. Wanneer de toevoerbaan vol staat met 4 stapels worden deze overgebracht naar rollenbaan 1. Van op rollenbaan 1 wordt er gekeken of er rechtstreeks ingevoerd kan worden in bufferbaan 1 of dat de stapels eerst nog moeten worden overgezet naar rollenbaan 2. Wanneer er rechtstreeks in bufferbaan 1 kan ingevoerd worden, gaat rollenbaan 1 naar beneden, en worden de kratten via het kettingtransport van bufferbaan 1 ingenomen. Wanner de kratten in bufferbaan 2 moeten worden ingenomen, worden ze eerst overgezet van rollenbaan 1 naar rollenbaan 2, hierna beweegt rollenbaan 2 naar beneden en worden de kratten via het kettingtransport van bufferbaan 2 ingenomen. Dit kan verdergaan tot beide bufferbanen volzet zijn, daarna zal de toevoerbaan nog worden volgezet, de overblijvende stapels blijven beneden op het stapelopzettransport staan.
4.2.3 Programma 3: Nood Het programma “Nood” wordt regelmatig gebruikt wanneer er een storing optreedt in het wasmachine of wanneer er grote hoeveelheden kratten nodig zijn in de patisserieafdeling. De stapels kratten worden dan per 4 van op de kettingtransporten uit één van de twee bufferbanen overgezet op de rollenbaan. De rollenbaan beweegt naar boven en zet de kratten over op het toevoertransport, in geval van rollenbaan 2 worden de kratten eerst overgezet op rollenbaan 1. Van op het toevoertransport loopt de eerste stapel kratten in de lift, die wanneer ze beneden aankomt de stapel naar de manuele afnamepost uitgeeft. De lift gaat daarna terug naar boven om de volgende stapel te halen. Wanneer de lift de laatste stapels op de toevoerbaan inneemt, worden reeds de volgende 4 stapels uit de bufferbaan gehaald. Beneden, aan de manuele afnamepost kunnen de stapels kratten terug op dolly’s getrokken worden om ze zo doorheen het bedrijf te transporteren. Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
30
4.3. De onderdelen van het krattentranportsyteem 4.3.1 Het stapelopzettransport Het stapelopzettransport wordt gebruikt voor het verwerken van de stapels kratten die op dolly’s uit de vrachtwagens komen. Het opzettransport wordt gebruikt bij 2 van de 3 programma’s: “Automatisch” en “Buffer”. Hierbij worden de stapels kratten handmatig van de dolly’s afgetrokken en tegelijk daarmee op het opzettransport getrokken. Via een haakse overname worden de stapels qua looprichting in de goede richting gezet, en staan ze gereed om door de lift naar de bovenverdieping gebracht te worden voor opslag of reiniging van de kratten.
Figuur 8: Stapelopzettransport
4.3.2 De lift De lift dient om stapels kratten vanaf het opzettransport op niveau +200 mm (beneden) te verplaatsen naar het transport op niveau +3600 mm (boven) in de programma’s “Automatisch” en “Buffer”, en in de omgekeerde richting in programma “Nood”. Er wordt telkens één stapel van 25 kratten verplaatst.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
31
Om tijdverlies door het onnodig bewegen van de lift te vermijden, is deze zo geprogrammeerd dat hij in zijn bovenpositie blijft staan, tenzij hij beneden aan het opzettransport een stapel kratten moet gaan halen die naar de ontnester of naar de buffer moet. Ook als er beneden geen kratten meer toekomen, en de lift dus heel de tijd boven blijft staan, is er aan het beperken van tijdsverlies gedacht: De lift wordt in zijn bovenpositie altijd volzet met een krat, zolang hij deze niet moet afvoeren naar buffer of ontnester. Hiermee wordt vooral tijd gewonnen als de ontnester nog bezet is. De lift kan in dat geval toch al een stapel kratten van de toevoerbaan van de buffer op zich trekken, zodat die vlugger naar de ontnester kunnen afgevoerd worden bij het vrijkomen van de laatstgenoemde. Het mechanisme van de lift wordt aangedreven door een motor met rem. De snelheid wordt geregeld door middel van een frequentieregeling waarin tevens een remweerstand is opgenomen. Het gewicht van het hefplateau met transport, dus zonder de last van de stapel kratten, wordt gecompenseerd door een contragewicht (ca. 170kg). De capaciteit van de installatie bedraagt 40 stapels per uur. Bij het uitladen van vrachtwagens zullen grote hoeveelheden in korte tijden worden aangeboden. De lift is daarom berekend op 80 stapels per uur.
Figuur 9: De lift
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
32
4.3.3 De ontnester De kratten worden in stapels van 25 kratten aan de invoer van de wasmachine aangeboden. De wasmachine kan enkel afzonderlijke kratten verwerken, er is dus een machine nodig die de kratten ontstapelt en van het grove vuil ontdoet. Een stapel wordt aangevoerd door krattentransport tot in de ontnestlift. In de lift wordt de stapel opgetild tot het bovenste krat op het niveau van de ontnesting is. Het bovenste krat wordt door een aan de voorkant inschuivende glijplaat iets gelicht, waardoor het krat al niet meer genest is. Een hierboven hangend takttransport draait 1 takt door, en schuift het krat van de stapel en over de glijplaat waarna het krat in een glijgoot terechtkomt. De stapel wordt weer omhoog gebracht tot het volgende krat weer op ontnestniveau is. Het krat in de glijgoot wordt door een stopper opgevangen om zodoende de val te breken. Als het afvoertransport naar de wasmachine leeg is, gaat de stopper uit de glijgoot, en het krat valt dan door tot op het transport. Door de klap bij de stopper en de val op het transport wordt het grove vuil uit het krat geschud.
Figuur 10: De ontnester
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
33
4.3.4 De buffer Het doel van de buffer is om stapels kratten die van het opzettransport beneden komen, en die boven niet meteen naar de ontnester kunnen, tijdelijk op te slaan. Zodoende kunnen de stapels vlot naar boven blijven gaan. Indien er geen stapels meer via het opzettransport beneden toekomen, en er in het bedrijf toch nog kratten nodig zijn, kunnen de stapels kratten die eerst in de buffer zijn opgeslagen nu worden uitgenomen en afgevoerd naar de ontnester. Van hieruit gaan de kratten dan afzonderlijk verder via de wasmachine naar het krattenafneemsysteem. Zoals eerder gezegd kan de sturing zich in 3 verschillende programma’s bevinden. Tijdens elke programma heeft ook de buffer een verschillende functie: In het programma “Buffer” moeten de kratten steeds van het opzettransport naar de buffer gebracht worden om daar gestockeerd te worden. De lift brengt de stapels één voor één van het opzettransport beneden naar boven, en zet ze op de toevoerbaan naar de buffer. Als deze dan bezet is met 4 stapels wordt hij volgemeld. Er kunnen er geen stapels meer bij tot de 4 stapels in de buffer zijn ingenomen. De 4 stapels op de toevoerbaan gaan dus eerst afgevoerd worden naar één van de rollenbanen. Als de stapels dan op de juiste rollenbaan zijn aangekomen, wordt deze vol gemeld. Het hefbed van die rollenbaan zal de stapels dan naar beneden brengen, en op de bufferbaan zetten, waarna de bufferbaan ten slotte de stapels zal innemen. De 4 stapels staan nu in de buffer. Het programma “Nood” doet zich voor als er in de bakkerij onmiddellijk kratten nodig zijn, of wanneer er een storing optreedt aan de wasmachine. In deze situatie moeten de kratten dan meteen vanuit de buffer boven naar de handafnamebaan beneden gebracht worden, waar ze handmatig weer op dolly’s worden getrokken. Eén van de bufferbanen zal 4 stapels gaan uitvoeren naar zijn rollenbaan, die beneden staat. Als deze stapels op de rollenbaan zijn aangekomen, zal zijn hefbed de rollenbaan in zijn bovenpositie brengen. Vervolgens worden de 4 stapels afgevoerd naar de toevoerbaan van de buffer. Nu worden de stapels één voor één door de lift naar beneden gebracht. Via de handafnamebaan worden de stapels dan afgevoerd en kunnen ze handmatig op dolly’s getrokken worden om ze elders in de bakkerij te gebruiken.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
34
Tijdens het programma “Automatisch” moeten de kratten weer van het opzettransport naar boven gebracht worden. Hier aangekomen, kan het volgende met de stapels gebeuren: Ofwel is de ontnester vrij en worden de kratten meteen naar hier afgevoerd. Ofwel is de ontnester niet vrij en komt er beneden aan de invoer van de lift nog geen krat toe. De stapel blijft dan staan tot de ontnester vrijkomt. Ofwel is de ontnester niet vrij en komt er beneden aan de invoer van de lift wel een krat toe. De stapel wordt dan afgevoerd naar de toevoerbaan van de buffer. In dit geval bevinden we ons in dezelfde situatie als bij toestand “Buffer”. Indien er beneden nu helemaal geen kratten meer uit het opzettransport toekomen, en er zijn in het bedrijf toch nog gewassen kratten nodig, dan gaat de sturing bij het programma “Automatisch” kratten uit de buffer uitnemen en naar de ontnester brengen. De uitwerking van deze stappen zijn dezelfde als bij het programma “Nood”, alleen worden de stapels nu niet meer met de lift naar beneden gebracht. De lift blijft nu boven en dient nu voor het overzetten van de stapels van de toevoerbaan van de buffer naar de ontnester. De stapels worden dan ontnest en gaan via de wasmachine naar de aftakpunten in het bedrijf.
Figuur 11: De rollen- en bufferbanen
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
35
4.3.5 De noodafvoer De noodafvoer wordt gebruikt voor het uitnemen van de stapels kratten als er een storing is in de wasmachine, en er toch kratten nodig zijn in het bedrijf. Dit gebeurt tijdens het programma “Nood”. De lift haalt dan stapels kratten vanuit de buffer naar beneden, en voert deze af naar een handafnamebaan. Vanaf de handafnamebaan kunnen de stapels dan via een helling weer op dolly’s getrokken worden, om ze binnen de bakkerij naar de gewenste plek te brengen.
Figuur 12: De noodafvoer
Een uitgebreide functieomschrijving is terug te vinden in “Bijlage 1: Handleiding en tekeningen”. 4.4. Aangebrachte verbeteringen Bij het omzetten van de PLC-sturing naar de nieuwe S7-versie is de originele code om praktische redenen zo veel mogelijk behouden geweest. Op deze manier werd er niet of nauwelijks geraakt aan het verloop van de bestaande sturing, die in het algemeen vlot verliep. Toch bevatte de oude sturing een aantal gebreken, die op vraag van het bedrijf bij de omzetting naar de nieuwe PLC dienden opgelost te worden. In wat volgt, zullen we een overzicht geven van deze problemen, en hoe ze in de nieuwe code opgelost zijn: Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
36
4.4.1 Automatisch uitschakelen stapelopzettransport Aan de code van het stapelopzettransport (FB30) is een timer met uitschakelvertraging van 15 min. toegevoegd. Deze timer zorgt ervoor dat het opzettransport nu automatisch uitvalt, indien er gedurende deze 15 min. geen stapel kratten meer de haakse overname passeert. Deze functie is toegevoegd, omdat is gebleken dat men het opzettransport nooit uitzet, en dit dus onnodig blijft draaien, wat mechanische slijtage met zich meebrengt.
Figuur 13: Uitschakelvertraging stapelopzettransport
4.4.2 Afvoer stapels kratten naar buffer Bij de toepassing van de originele code is tevens gebleken dat er problemen waren bij het afvoeren van de stapels, vanuit de lift, naar de toevoerbaan van de buffer (transportband 5M70). Als er op deze laatste transportband reeds 4 stapels staan, mag de lift hier geen stapel meer bijzetten. De 4 stapels moeten namelijk eerst naar één van de bufferbanen afgevoerd worden vooraleer de lift een volgende stapel op de toevoerbaan mag plaatsen.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
37
In de praktijk was dit echter niet het geval. Door een onvolledigheid in de originele code bleef de lift, bij een storing op één van de rollenbedden, stapels bij op transportband 5M70 zetten, waardoor deze overvol raakte, en er ernstige problemen optraden bij het innemen van de stapels in de bufferbanen. Het probleem bleek uiteindelijk op te lossen met het toevoegen van één enkele regel in de code van de lift (FB40&FB50). De reeds aanwezige sensor 32B20, die kan detecteren of er al 4 stapels kratten op de toevoer naar de bufferbanen staan, werd toegevoegd om het aanvoeren van stapels kratten te beperken. De lift zal de stapel nu niet meer naar de toevoerbaan van de buffer afvoeren. De stapel blijft nu op de lift staan tot de toevoerbaan wel vrijkomt, of de ontnester vrijkomt.
Figuur 14; Afvoeren stapels kratten naar buffer
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
38
4.4.3 In- en uitvoerbeveiliging lift Op de lift zelf bevinden zich 2 sensoren die het omhoog- en omlaag bewegen van de lift veilig moeten laten verlopen: sensoren 31B25 en 31B30. Indien één van deze sensoren bezet is, hetzij door een krat, hetzij door een ander voorwerp, dan mag de lift in geen geval een opwaartse of neerwaartse beweging maken. Het veilige verloop van de opwaartse of neerwaartse beweging is dan niet meer gegarandeerd, en de stapel kan omvallen. In de praktijk bleek echter dat de lift toch kon stijgen en dalen terwijl deze sensoren bezet waren, met uiteindelijk het omkiepen van de stapels tot gevolg. Oorzaak hiervan is dat in de originele code geen gebruik is gemaakt van deze sensoren om dit te verhinderen, hoewel ze toch specifiek hiervoor bedoeld zijn. In de code van de lift (FB40&FB50) moesten dus enkele veranderingen worden aangebracht: In de segmenten die dienen voor het vrijgeven van de opwaartse en neerwaartse beweging van de lift zijn deze sensoren geïmplementeerd. Hierdoor is het nu voor de lift onmogelijk nog te stijgen of te dalen als één van deze sensoren bezet is.
Figuur 15: Beveiliging in- en uitvoer lift
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 4: Het krattentransport
39
4.4.4 Positie rollenbanen In de nieuwe code is er tevens voor gezorgd dat de hefbedden van rollenbaan 1 en rollenbaan 2 meteen terug naar boven komen, nadat ze naar beneden zijn gekomen om de stapels in de bufferbanen in te nemen. Hiervoor gebeurde dit niet, wat soms voor vertraging van het inneemproces zorgde. Een echte fout was het dus niet, maar deze aanpassing is op vraag van het bedrijf aangebracht.
Figuur 16: Positie rollenbanen
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 5: Studie van de oorspronkelijke PLC-installatie
5.
40
Studie van de oorspronkelijke PLC-installatie
5.1. Inleiding De oorspronkelijke PLC is er een uit de verouderde Siemens S5-familie. Het doel van het project is, zoals eerder al aangegeven, niet alleen de sturing te vervangen, maar ook enkele fouten die in het PLC-programma zitten op te lossen. Deze 2 zaken vereisen eerst en vooral een grondige studie van de bestaande sturing. Het is immers niet mogelijk een sturing om te bouwen en de fouten eruit te halen zonder de installatie helemaal te kennen. Daarom wordt er in dit deel nagegaan welke functies er op de S5-PLC aanwezig zijn, en dus ook nodig zullen zijn bij de nieuwe S7.
Figuur 17: De S5-PLC
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 5: Studie van de oorspronkelijke PLC-installatie
41
5.2. De CPU De centrale verwerkingseenheid van deze PLC is een S5-95U. Op de onderstaande figuur kunnen we duidelijk alle verschillende elementen waaruit de CPU opgebouwd is onderscheiden.
Figuur 18: Overzicht aansluitingen S5-95U
1) Batterijvak De batterij zorgt ervoor dat, indien de netspanning weg zou vallen, de PLC toch nog onder spanning blijft. Indien deze batterij niet aanwezig zou zijn, zou bij spanningsuitval het volledige PLC-programma verloren gaan. 2) Frontstekker voor digitale in- en uitgangen De CPU bevat onboard 16 digitale ingangen en 16 digitale uitgangen. Op deze aansluitingsklemmen kunnen zowel sensoren als relais aangesloten worden voor de werking van het machine. 3) LED dat het uitvallen van de batterij aanduidt 4) Schakelaar om PLC in en uit te schakelen 5) LED voor toestandsaanduiding van digitale in- en uitgangen 6) Aansluitklemmen voor voedingsspanning Op deze klemmen dient een gelijkspanning van 24V DC aangelegd worden als voeding voor de PLC. Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 5: Studie van de oorspronkelijke PLC-installatie
42
7) LED dat toestand van SINEC L2-bus aanduidt 8) Aansluitstekker voor uitbreidingsmodules Via deze aansluitstekker wordt de bus vastgemaakt aan de CPU, zodat communicatie met de verschillende modules mogelijk is. 9) Led voor aanduiding van bedrijfstoestand Groene LED
Run
Rode LED
Stop
10) Interface voor analoge in- en uitgangen De CPU bevat onboard 8 analoge ingangen en 1 analoge uitgang. Met de analoge in- en uitgangen kunnen sinusvormige signalen ontvangen of verstuurd worden om bijvoorbeeld een frequentieregelaar aan te sturen. 11) SINEC L2-interface Door middel van deze interface kan de PLC in een netwerk gekoppeld worden. Deze interface is wel niet aanwezig op de S5 PLC in deze installatie. 12) Schakelaar om van bedrijfstoestand te veranderen 13) Plaats voor geheugenmodule Om het PLC-programma remanent in de PLC te houden, moet er een EPROM of EEPROM geheugen geplaatst worden. Bij het terugkeren van de spanning wordt het programma uit de geheugenmodule gehaald en in het RAM geschreven. 14) Interface voor aansluiting van programmeerapparaat Via deze interface is het mogelijk een programmeerapparaat aan te sluiten om zo het programma naar het geheugen van de PLC over te brengen. Deze interface wordt hier ook gebruikt om een display aan te sturen. 15) Interface voor alarm- en telleringangen De CPU bevat onboard 4 alarmingangen en 2 telleringangen
5.3. De Voeding De S5-95U CPU kan rechtstreeks op een gelijkspanning van 24V DC aangesloten worden, er is dus geen voedingsmodule nodig. Om van de netspanning, wisselstroom 230V AC, over te gaan naar de vereiste gelijkstroom wordt er gebruik gemaakt van een transformator. De secundaire spanning van deze transformator wordt ook nog gebruikt om verscheidene randapparaten van spanning te voorzien. Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 5: Studie van de oorspronkelijke PLC-installatie
43
Figuur 19: De voedingstransformator
5.4. De periferiemodules Dit zijn de modules die de aansluitingen bevatten voor de digitale en analoge in- en uitgangen. Alle sensoren en actuatoren worden op de frontconnector aangesloten en deze wordt dan in de periferiemodule vastgeschroefd. De frontconnector vergemakkelijkt dus enkel de aansluiting. De periferiemodules worden tot slot in de busmodule geklikt. Bij deze PLC zijn er in totaal 7 periferiemodules aangesloten die elk 16 digitale ingangen en 16 digitale uitgangen bevatten.
Figuur 20: De periferiemodule
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 5: Studie van de oorspronkelijke PLC-installatie
44
5.5. De busmodule Deze module verbindt de CPU met de verschillende uitbreidingsmodules, zoals interfacemodules, periferiemodules,… Deze module bevat de communicatie- en de periferiebus. Door middel van deze bussen gebeurt de gegevensoverdracht tussen de verschillende modules van de PLC. De status van de ingangen kan zo worden afgevraagd en de uitgangen kunnen worden aangestuurd via de periferiebus. Via de communicatiebus is het mogelijk te communiceren met interface- en functiemodules. Elke plaats in de busmodule heeft een beveiliging zodat er geen module op de verkeerde plaats kan bevestigd worden. De busmodule wordt op een normprofiel bevestigd dat in de elektrische kast hangt.
Figuur 21: De busmodule
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 6: Materiaalkeuze
6.
45
Materiaalkeuze
6.1. De PLC 6.1.1 Inleiding Het Siemens PLC-gamma bestaat uit drie groepen: S7, M7 en C7. Het S7 gamma (opvolger van S5) is het meest gebruikte of voorkomende en bestaat op zijn beurt uit drie modellen: S7-200, S7-300 en S7-400. De S7-300 wordt in de industrie het meest toegepast.
6.1.2 Bouwvormen van de PLC Monoblok systeem: De CPU met het geheugen, de ingangs- uitgangsblokken vormen één onafscheidelijk geheel. Soms maakt ook de voeding deel uit van het geheel. Je hebt een vast aantal in- en uitgangen ter beschikking. Modulaire systeem: PS:
voeding voor het systeem (vormt de netspanning om tot 24V DC en 5 V DC)
CPU:
met het geheugen
IM:
interfacemodule om de PLC uit te breiden met verschillende racks
SM:
signaalmodules (in- en uitgangen)
Figuur 22: Modules van de Siemens PLC S7-300
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 6: Materiaalkeuze
46
De verschillende blokken worden op een gemeenschappelijk voetstuk of rail gemonteerd. De PLC kan volgens eigen wens samengesteld worden. Monoblok systeem modulair uitbreidbaar: heel wat PLC-fabrikanten verkopen een basismodule die bestaat uit een voeding, een CPU en een aantal in- en uitgangen. De basismodule kan uitgebreid worden met modules, het is dus een combinatie van een monoblok en een modulair systeem.
6.1.3 De CPU Op basis van de benodigdheden voor de sturing van het krattentransportsysteem werd er voor een CPU 313C gekozen. In vergelijking met de gewone 313 is de 313C compacter en bevat hij reeds analoge en digitale periferie op de CPU zelf. Deze PLC bevat een voldoende groot programmageheugen, het bevat reeds onboard analoge periferie zodat hiervoor geen extra module moet worden aangekocht en er is een MPI-interface aanwezig voor de sturing van de display en het inlezen van het programma.
Figuur 23 De CPU 313C
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 6: Materiaalkeuze
47
Een kort overzicht van de eigenschappen van de CPU 313C wordt hieronder gegeven: Geheugen RAM
32kB
FEPROM
64kByte tot 4MByte
Verwerkingstijden Bit
0,1µs
Woord
0,5µs
Fixed-point
3,5µs
Floating-point
15µs
Timers
256
Counters
256
Digitale ingangen
1016
Analoge ingangen
253
Interfaces MPI
ja
Profibus DP
neen
PtP communicatie
neen
Onboard I/O Digitale ingangen
24
Digitale uitgangen
16
Analoge ingangen
4
Analoge uitgangen
2
Gëintegreerde functies Tellers / frequentiemeters 3 (30kHZ) Pulsuitgangen
Bert Coenen – Koen Swalens
3 (2,5kHz)
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 6: Materiaalkeuze
48
6.1.4 De power supply De power supply of voeding dient om de CPU en alle uitbreidingsmodules van een gestabiliseerde gelijkspanning te voorzien. De ingangspanning van de voeding is een enkelfasige wisselspanning van 120/230V AC die gekozen kan worden door middel van een schakelaar op de voeding zelf. De uitgangspanning is een gelijkspanning van 24V DC.
Figuur 24: De voedingsmodule
6.1.5 De periferiemodules Deze modules worden, zoals hierboven al vermeld, gebruikt voor het afvragen van de status van de sensoren en het bedienen van de actuatoren. Op deze modules zijn LED’s gemonteerd zodat de status ook visueel kan nagegaan worden. Deze modules worden, in tegenstelling tot de S5 PLC rechtstreeks op de DIN-rail bevestigd. Dit kan omdat ze een geïntegreerde communicatie- en periferiebus hebben, er is dus geen busmodule meer nodig. De aansluiting van de kabels gebeurt opnieuw via een frontconnector die gemakkelijk in de module bevestigd kan worden. In totaal moeten er ten minste 105 digitale ingangen en 58 digitale uitgangen beschikbaar zijn. Aangezien er reeds 24 digitale ingangen en 16 digitale uitgangen aanwezig zijn op de CPU, moeten er nog slechts 81 ingangen en 42 uitgangen bijgeplaatst worden. Omdat er Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 6: Materiaalkeuze
49
van elke verschillende soort modules een reserve op stock moet liggen voor noodgevallen, is het financieel het interessantste om met zoveel mogelijk identieke modules het benodigde aantal in- en uitgangen te bekomen. Het plaatsen van 5 SM321 modules met 16 digitale in- en uitgangen en 1 SM323 module met 32 digitale ingangen bleek financieel het meest interessant. In totaal komt dit, samen met de onboard periferie van de CPU, neer op 136 digitale ingangen en 96 digitale uitgangen, wat ruim boven het benodigde aantal was. Maar wanneer de voorziene uitbreidingen in rekening gebracht worden, komt dit net boven het benodigde aantal uit.
Figuur 25: De periferiemodules
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 6: Materiaalkeuze
50
6.1.6 De frontconnector De frontconnector is een stekker waarin de bekabeling van de sensoren en actuatoren door middel van schroefcontacten gemakkelijk in bevestigd kunnen worden. Deze frontconnector wordt dan in de periferiemodule geklikt, op deze manier wordt de aansluiting vergemakkelijkt.
Figuur 26: De frontconnector
6.1.7 De busverbinding Bij iedere module wordt er standaard een busverbinding geleverd. Deze busverbinding wordt op de rechteraansluiting van de reeds aanwezige module geklikt. Op die manier komt de busverbinding op de linkeraansluiting van de nieuwe module terecht en krijg je geen open verbinding door een eventuele busverbinding die zou uitsteken naast de laatste module. Deze busverbinding zorgt voor de communicatie tussen de periferiemodules en de CPU. De status van de verschillende in- en uitgangen wordt via deze verbinding doorgegeven.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 6: Materiaalkeuze
51
6.1.8 De rail Deze rail dient voor het bevestigen van de verschillende modules. De module wordt op de rail geklikt en vervolgens met een bevestigingsschroef vastgezet. De DIN-rail zelf wordt met 4 schroeven vastgezet in de elektrische kast en moet geaard worden.
Figuur 27: De DIN-rail
6.2. De tekstdisplay Om de fouten die eventueel optreden duidelijk te kunnen weergeven, wordt er gebruik gemaakt van een tekstdisplay. Deze display heeft als enig doel om tekst weer te geven die duidelijk maakt wat er fout gelopen is. Op deze manier kan men snel en efficiënt optreden bij storingen. Het is dus niet nodig om hier een touch-screen te plaatsen, een eenvoudige display die 2 of meer tekstregel kan weergeven volstaat. Er wordt hier gekozen voor de TD17 display van Siemens omdat dit een van de weinige displays is die zonder het touch-screen principe werkt. Deze display is trouwens ook eenvoudig aan te sluiten op de MPI-interface van de PLC.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 6: Materiaalkeuze
52
Figuur 28: De tekstdisplay
Omdat de foutmeldingen op de oorspronkelijke display slechts 2 regels konden bedragen, kon niet alle informatie worden meegedeeld. Het was dan soms ook moeilijk om de storing terug te vinden. Vanuit het bedrijf werd er gevraagd om de foutmeldingen wat duidelijker te maken, er is dan ook een display aangekocht waar 4 tot 8 regels tekst op kunnen getoond worden. Op deze manier is er voldoende ruimte om zowel de nummers van de motor, contactoren en thermische veiligheden op het display te tonen.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
7.
53
Programmatie
7.1. De programmatiesoftware Voor het programmeren van de PLC en de display worden verschillende softwarepakketten gebruikt. De PLC-code wordt ontwikkeld in Step 7 Lite en de simulaties worden uitgevoerd in PLC-sim. Voor het programmeren van de display wordt er tenslotte gebruik gemaakt van Protool Lite.
7.1.1 Step 7 Lite V 3.0 Step 7 Lite V3.0 is een softwarepakket voor het programmeren van onder andere S7-300 PLC’s. Deze Lite-versie heeft beperkte mogelijkheden ten opzichte van de SIMATIC Manager, het is enkel mogelijk om stand-alone PLC’s te programmeren. Het is niet mogelijk om S7-400 PLC’s, decentrale periferie, communicatiemodules, functiemodules of systemen die uit meer dan 1 CPU bestaan te programmeren. Deze software wordt hier gebruikt voor het ontwikkelen van de PLC code, en voor het programmeren van de PLC. Het is mogelijk in 3 verschillende talen te programmeren in dit programma, namelijk STL of statement list, FBD of function block diagram en LAD of ladderdiagram.
Figuur 29: De gebruikersinterface van S7 Lite
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
54
7.1.2 Simatic Step 7 Manager & PLC-Sim Simatic Step 7 is het standaardpakket voor het configureren en programmeren van Simatic PLC’s. Met dit pakket is het mogelijk om zowel de PLC als netwerken tussen verschillende PLC’s of decentrale periferie te configureren. De basisprincipes zijn identiek aan die van Step 7 Lite, alleen bevat dit pakket meer mogelijkheden. S7 PLCSIM is optionele software voor Step 7. Dit programma maakt het mogelijk om het door de gebruiker aangemaakte PLC-programma uit te voeren en te testen. Er wordt een gesimuleerde PLC aangemaakt op het programmeerapparaat zelf. Aangezien de simulatie volledig bestaat op het programmeerapparaat is het niet nodig om een koppeling met de PLC hardware te voorzien. De code die in Step 7 Lite ontwikkeld is, werd overgebracht naar het Step 7 programma, om zo de virtuele PLC te programmeren voor de simulaties. Deze 2 programma’s zijn dus enkel gebruikt voor het simuleren en controleren van de correcte werking van het proces.
Figuur 30: De gebruikersinterface van S7 PLCSIM
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
55
7.1.3 Protool Lite Het programma Protool van het merk Siemens dient om de displays van Siemens te programmeren. Voor dit project werd er gewerkt met Protool Lite.
Figuur 31: De gebruikersinterface van Protool
7.2. Aanmaken van het project De S7 Lite software wordt dus, zoals hierboven reeds vermeld, gebruikt om de PLC code te ontwikkelen en programmeren. In dit software pakket moet echter niet enkel de code worden ingegeven, maar ook de hardware moet geconfigureerd worden. Bovendien is het ook mogelijk om een symbolenlijst in te geven zodat er geprogrammeerd kan worden met deze symboolnotatie, wat het geheel veel overzichtelijker maakt.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
56
7.2.1 Hardwareconfiguratie Een eerste stap die moet gemaakt worden bij het opstarten van een nieuw project is het configureren van de hardware. Dit wil zeggen dat de PLC, waarnaar men later het programma zal wegschrijven, volledig ingegeven moet worden. Hierdoor kent de programmatiesoftware het aantal beschikbare aansluitingsmogelijkheden en hun adressen. Bovendien is het op deze manier mogelijk om, wanneer de PLC aan de PC gekoppeld is, een diagnose over de werking van de hardware te stellen. In de hardwareconfigurator is er een lijst met alle mogelijke PLC-modules voor handen, zodat door klikken en slepen gemakkelijk de PLC geconfigureerd kan worden.
Figuur 32: Step 7 Lite - Hardwareconfiguratie
7.2.2 Aanmaken van de symbol table Vervolgens wordt de symbolenlijst aangemaakt, dit is een lijst die alle ingangen, uitgangen, tellers, timers, programmabouwstenen, merkers, … bevat. Deze lijst bevat zowel de symbolische naam, het adres, het datatype als een korte omschrijving van deze Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
57
elementen. Wanneer een element ingegeven is in deze symbolenlijst, is het mogelijk om tijdens de programmatie ook met deze symbolennaam te programmeren, wat vaak overzichtelijker is. Het is ook mogelijk om verschillende lijsten te trekken van bijvoorbeeld de ingangen, de ongebruikte elementen, … Er zijn verschillende datatypes voorhanden waartussen er gekozen kan worden. De volgende datatypes worden in het programma van het krattentransportsysteem gebruikt: BOOL: Een bool-variabele kan slechts 2 waarden hebben, namelijk 0 of 1 en is slechts 1 bit groot. Dit type kan dus gebruikt worden voor het opslaan van de status van merkers, in- en uitgangen. WORD: Een word-variabele bestaat uit 16 bits, die elke de waarde 1 of 0 kunnen hebben.
Een
merkerwoord
wordt
bijvoorbeeld
gebruikt
om
16
opeenvolgende merkerbits te groeperen. Woorden kunnen ook gebruikt worden om getalwaardes, bijvoorbeeld van counters, in op te slaan. INT:
Een integer bevat een decimaal getal en zijn teken en is 16 bits groot. Het getal moet tussen -32768 en 32767 liggen.
De timers, tellers en programmabouwstenen hebben elk hun eigen data type en worden voorgesteld door respectievelijk TIMER, COUNTER, OB of FB.
Figuur 33: Step 7 Lite - Symbol table
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
58
7.2.3 Aanmaken van de programmablokken Om gestructureerd te kunnen programmeren is het bij grote programma’s noodzakelijk dit programma in verschillende onderdelen of programmablokken op te delen. Deze blokken kunnen in een apart venster aangemaakt worden. Er bestaan verschillende soorten programmablokken, een korte bespreking volgt verder in dit hoofdstuk. Er is ook weer een mogelijkheid om aan elk blok een symbolische naam toe te kennen, en bovendien kan er ook gekozen worden in welke taal het blok geprogrammeerd zal worden.
Figuur 34: Step 7 Lite - Programmaopbouw
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
59
7.2.4 De cross-references table De cross-references table is een overzicht dat alle elementen bevat, die in de symbol table opgenomen zijn, en de plaatsen waar ze in het programma gebruikt worden. Deze lijst moet niet door de gebruiker zelf aangemaakt, maar wordt, nadat de programma-code ingegeven is, automatisch aangemaakt. Deze lijst is een handig hulpmiddel wanneer er later iets opgezocht moet worden in de code.
Figuur 35: Step 7 Lite - Cross-references table
7.2.5 Simulatie van het programma Wanneer al de vorige stappen doorlopen zijn, kan men beginnen met het simuleren van de code. Het is van belang dat dit nauwkeurig verloopt, omdat op deze manier eventuele fouten nog opgespoord kunnen worden, wat de kans op fouten na de plaatsing van de PLC vermindert. Voor de simulatie wordt gebruikt gemaakt van S7-PLCSIM, dit softwarepakket creëert een virtuele PLC op de PC, waarin het programma geladen en uitgevoerd kan worden. Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
60
Het programma wordt via het download commando naar de PLC overgebracht, waarna de PLC naar bedrijfstoestand RUN geschakeld kan worden. De PLC start dan automatisch met het doorlopen van het programma. De ingangen kunnen bediend worden door de checkbox onder het ingangsadres aan te klikken. Op basis van de ingeschakelde ingangen worden de toestand van de uitgangen bepaald. Het programma kan op 2 manieren doorlopen worden: Continuous scan: Het volledige programma wordt in lusvorm doorlopen. Wanneer het programma volledig doorlopen is, wordt er teruggegaan naar de 1e regel van het programma en wordt het opnieuw doorlopen. Een nadeel aan deze methode is dat bepaalde processen binnen een tijdslimiet moeten gebeuren omdat anders de installatie stilvalt. Soms is deze tijd zo kort dat het moeilijk wordt om alle noodzakelijke acties uit te voeren zodat alles stilvalt. Single scan:
Hierbij wordt opnieuw het volledige programma doorlopen, maar aan het einde van het programma wordt er gepauzeerd totdat er door de gebruiker een commando wordt gegeven om het programma opnieuw te doorlopen. Deze methode heeft als voordeel dat de gebruiker het volledige proces kan opvolgen zonder veel last te hebben van de tijdslimiet. Een nadeel is dat een uitgang die met inschakelvertraging werkt niet onmiddellijk de volgende cyclus bediend wordt, maar een aantal cycli nodig heeft. Dit kan voor de gebruiker soms de indruk wekken dat uitgang niet aangestuurd wordt en er zich dus ergens een fout in het programma bevindt.
In dit programma is het ook mogelijk om de toestand van geheugenelementen zoals merkers of woorden continu doorheen het proces te volgen. Op deze manier kan in dit project het signaal dat naar de PLC gestuurd wordt continu opgevolgd worden. Om de simulaties van het programma eenvoudig te houden, is het mogelijk om eerst bepaalde delen van het programma afzonderlijk te simuleren en achteraf alles samen te voegen en de interactie tussen de verschillende programmablokken te simuleren.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
61
Figuur 36: PLCSIM - Simulaties
7.2.6 Programmatie van de display Aangezien het lang duurde vooraleer het softwarepakket Protool Lite geleverd werd, is er nog geen code ontwikkeld voor de display. De voorbereiding voor de programmatie zijn al wel getroffen zodat de code gemakkelijk te schrijven is.
7.3. Het PLC-programma 7.3.1 Inleiding Hierboven is besproken hoe het programma projectmatig opgebouwd wordt in de software. Het is natuurlijk ook noodzakelijk dat de programma-code zelf overzichtelijk en duidelijk wordt opgebouwd. Hiertoe bestaan er 2 manieren voor het programmeren: Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
62
Cyclisch of lineair programma: Het volledige programma bevindt zich in OB1, dit is de blok bij het opstarten van de PLC automatisch doorlopen wordt. Het programma wordt van boven naar onder lineair doorlopen, en eens aan het einde gekomen, wordt automatisch het programma opnieuw bovenaan hervat. Gestructureerd programma: Een gestructureerd programma is opgebouwd uit verschillende blokken. De diverse blokken moeten opgeroepen worden vanuit de organisatieblok OB1. Het organisatieblok wordt door de CPU opgeroepen na het inlezen van de ingangsbeeldtafel. Na de laatste instructie (eventueel aangeduid met BE) in het organisatieblok OB1 is het programma volledig verwerkt en wordt de uitgangsbeeldtafel naar buiten gestuurd. Vervolgens begint de scancyclus opnieuw met het inlezen van de ingangsbeeldtafel. De blokken worden niet door het bedrijfssysteem van de PLC opgeroepen. Indien we in een gestructureerd programma blokken met een andere naam dan OB1 gebruiken dan moet de gebruiker zelf zorgen dat deze door de scancyclus doorlopen worden, door het programmeren van sprongfuncties in OB 1. Door de uitgebreidheid van dit programma wordt er hier gestructureerd geprogrammeerd, OB1 wordt dus enkel gebruikt voor het aanroepen van de programmablokken. Een korte bespreking van de verschillende programmablokken volgt hieronder.
7.3.2 De programmabouwstenen 7.3.2.1 Organisatiebouwsteen OB Organisatieblokken (OB’s) vormen de verbinding tussen het werkingssysteem van de PLC en het gebruikersprogramma en organiseren dus het programma. In het belangrijkste organisatieblok OB1, dat de cyclische programmaverwerking verzorgt, wordt vastgelegd welke blokken in welke volgorde en onder welke voorwaarden worden opgeroepen. Andere organisatieblokken hebben speciale functies, bijvoorbeeld cyclustijdbewaking, interruptafhandeling en het bepalen van het aanloopgedrag van de PLC bij het inschakelen van de spanning of STOP naar RUN overgang.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
7.3.2.1.1
63
OB1: CYCL_PROGR
OB1 is dus de belangrijkste bouwsteen in het programma, het is de bouwsteen die bij elke cyclus als eerste doorlopen wordt. Deze bouwsteen wordt cyclisch doorlopen en bevat de oproep van de andere bouwstenen. OB1 heeft de laagste prioriteit van alle organisatiebouwstenen, dit wil zeggen dat OB1 door alle andere OB’s kan onderbroken worden. Voor het doorlopen van OB1 wordt altijd eerst de ingangstafel gelezen, vervolgens wordt OB1 doorlopen en tot slotte wordt de uitgangstafel geschreven. 7.3.2.1.2
OB 100: Complete restart
Deze organisatiebouwsteen bevat de opstartroutines van de PLC. Bij een complete restart wordt eerst OB100 eenmalig uitgevoerd, waarna de ingangstafel ingelezen wordt en het gebruikersprogramma wordt gestart met de eerste instructie in OB1. De CPU voert de opstartroutines uit na een van volgende gebeurtenissen: na het inschakelen van de spanning; na het verplaatsen van de sleutelschakelaar van STOP naar RUN; na een verzoek van een communicatiepartner (bv. na een menucommando vanuit het programmeerapparaat). Worden de opstart-OB' s niet geprogrammeerd, dan wordt bij het opstarten onmiddellijk OB1 gestart.
7.3.2.2 Functiebouwsteen FB Functiebouwstenen bevatten veelvuldig te gebruiken programmadelen of universele functies. Ze kunnen meerdere keren in het programma gebruikt worden. Een functiebouwsteen is een logische bouwsteen “met geheugen”. Aan een functiebouwsteen is telkens een databouwsteen (instance data block of instance DB) gekoppeld als geheugen. De parameters die toegewezen worden aan een functiebouwsteen worden in die databouwsteen opgeslagen. Tijdelijke variabelen behorende bij de FC worden opgeslagen in de lokale datastapel. Data opgeslagen in de instance DB gaat niet verloren als de FB
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
64
uitgevoerd is. Data in de lokale datastapel daarentegen gaat wel verloren als de uitvoering van de FB ten einde gelopen is.
7.3.2.2.1
FB1: Display
In FB1 wordt voor al de mogelijke storingen een unieke cijfercode gegenereerd die dan doorgestuurd wordt naar de display. Op basis van deze code weet de display welke boodschap zij moet weergeven. FB 1 is dus een heel uitgebreide functieblok. Het spreekt voor zich dat bij elke fout een andere tekst moet verschijnen. Hierdoor moet bij elke fout die kan optreden ook een andere cijfercode naar de display doorgestuurd worden, en dus een apart segment geschreven worden waarin dit getal wordt toegekend aan een bepaalde fout. Een netwerk binnen deze FB ziet er als volgt uit:
Figuur 37: FB1 Display - Netwerk 4
7.3.2.2.2
FB2: Claxon
In deze FB worden de 2 claxons aangestuurd door middel van verschillende merkerwoorden. Met MW190, MW192, MW194 en MW196 wordt er gekeken of er een flank optreedt in FW160, FW162, FW164 of FW166. Als dit zo is, wordt een merker geset en gaat de continue claxon aan. De claxon moet met de resetknop uitgezet worden.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
65
Vervolgens wordt er met merkerwoorden MW200 en MW202 gekeken of er een flank optreedt in FW170 of FW172. Als dit zo is, wordt een andere merker geset en gaat de claxon 2 maal een halve seconde.
7.3.2.2.3
FB3: Krattenteller
Met behulp van de krattenteller wordt geteld hoeveel kratten er in de buffer zitten. Dit aantal wordt bijgehouden in een merkerwoord, en wordt weergegeven op de display bij de standaardtekst. De kratten worden geteld op het moment dat ze in de buffer gezet worden en daar sensoren 34B40 of 35B15 passeren. Door middel van 2 knoppen in de schakelkast is zowel manueel op- en aftellen als resetten van de krattenteller mogelijk.
7.3.2.2.4
FB4: Lift snelheden
In deze FB wordt de snelheid van de lift ingesteld en via de analoge uitgang doorgestuurd naar de frequentieregelaar. Op basis van de beweging die de lift uitvoert wordt er een acceleratiefactor en deceleratiefactor ingesteld. Door een vergelijking te maken van de actuele snelheid met de ingestelde snelheid, kan bij een afwijking van de actuele snelheid, de snelheid teruggebracht worden naar de ingestelde snelheid met behulp van de acceleratiefactor en de deceleratiefactor. Dit wordt het op- en aftoeren genoemd.
7.3.2.2.5
FB5: Storing opslag
In deze FB wordt gebruik gemaakt van DB5 voor het opslaan van gegevens wanneer er een storing optreedt in het proces. In deze DB worden de gegevens van de rollenbanen en de vrijgaven van de lift opgeslagen. Al deze gegevens kunnen tot 4 maal toe worden opgeslagen.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
7.3.2.2.6
66
FB10: Storingen
In FB10 worden de storingen uit het proces omgezet naar merkers die onder andere in FB1 en FB 2 gebruikt worden voor respectievelijk het weergeven van de foutmeldingen op de display en het aansturen van de claxon.
7.3.2.2.7
FB20: Handbediening bufferbanen
De handbediening wordt gebruikt om de stapels handmatig in de bufferbanen in- of uit te nemen. Aangezien er 2 bufferbanen zijn, zijn er ook 2 kastjes voor de handbediening, één voor elke bufferbaan. Met de handbediening kan men enkel stapels in of uit de bufferbanen laten lopen. De hefbedden van de rollenbanen moeten hiervoor in hun benedenpositie staan. De hefbedden kunnen echter niet zelf naar beneden of omhoog komen: Eenmaal de handbediening opgezet, gaan de beide hefbedden naar beneden en blijven beneden zolang de handbediening aanstaat. Pas door het uitzetten van de handbediening komen de hefbedden terug omhoog.
7.3.2.2.8
FB30: Stapelopzet
In deze FB wordt de werking van het stapelopzettransport besproken. Aangezien dit geen uitgebreid proces is, is deze FB kleiner van omvang dan de andere FB’s. Het stapelopzettransport wordt gebruikt om stapels naar de invoer van de lift te brengen.
7.3.2.2.9
FB40 & FB50: Lift
De lift dient om stapels kratten vanaf het opzettransport beneden te verplaatsen naar het transport boven of in de omgekeerde richting. Er wordt telkens één stapel van 25 kratten verplaatst. De programmatie van de lift gebeurt in deze 2 aparte functiebouwstenen. FB40 is meer gericht op omhoog en omlaag bewegen van de lift, waar FB50 meer toegespitst is op het transport in en uit de lift. Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
7.3.2.2.10
67
FB60 & FB70: Bufferbanen
Het doel van de buffer is het tijdelijk opslaan van stapels kratten tot deze terug in het bedrijf nodig zijn. Ook de programmatie van de bufferbanen is opgedeeld in 2 functiebouwstenen, maar hier is er minder onderscheid in de toepassing van beide FB’s.
7.3.2.2.11
FB80: Bovenontnester
Het doel van de ontnester is om een stapel kratten (25 stuks) te ontnesten en van het grove vuil te ontdoen. Deze functiebouwsteen bevat 4 grote onderdelen die elk bij een verschillend onderdeel van het ontnestproces horen. Deze 4 onderdelen zijn: het invoeren van de stapel in de ontnestlift, het bewegen van de ontnestlift, het ontnesten van de stapels en het afvoeren van de kratten naar de wasmachine.
7.3.2.2.12
FB100: Uitgangen
In deze functiebouwsteen wordt het aansturen van de uitgangen van de PLC beschreven, hiervoor worden de merkers uit de vorige functiebouwstenen gebruikt. Voor elke uitgang is er een apart netwerk zodat deze functiebouwsteen ook een van de grootste uit het programma is.
7.3.2.3 Databouwsteen DB Er bestaan 2 soorten databouwstenen: Gemeenschappelijke databouwstenen (shared data blocks). Gemeenschappelijke databouwstenen kunnen als archief gebruikt worden. Hierin worden vaste of variabele gegevens opgeslagen. Ze bevatten in tegenstelling tot alle andere bloksoorten geen instructies. Vanuit een ander blok wordt een datablok opgeroepen zodat hierin gegevens kunnen geschreven worden of gegevens terug
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
68
gelezen kunnen worden. Gemeenschappelijke datablokken zijn toegankelijk voor alle OB’s, FC’s en FB’s. Oproepdatabouwstenen (instance data blocks). Een oproepdatabouwsteen wordt toegewezen aan
elke oproep
van
een
functiebouwsteen waarbij parameters doorgegeven worden. De actuele parameters en de statische data van deze FB worden opgeslagen in de oproep databouwsteen. De parameters gedefinieerd in de FB bepalen de structuur van de oproep oproepdatabouwstenen. “Instance” staat voor functiebouwsteenoproep. Indien, bij voorbeeld, in een gebruikersprogramma een FB vijf keer opgeroepen wordt, zijn er ook vijf oproepdatabouwstenen voor dit FB. In het programma van het krattentransportsysteem wordt er gebruik gemaakt van een gemeenschappelijke databouwsteen. DB5 wordt gebruikt om gegevens over het krattentransportsysteem in op te slaan wanneer er een storing optreedt.
7.3.2.4 Systeemfunctie SFC Systeemfuncties zijn voorgeprogrammeerde en uitgeteste functies die reeds in de S7 PLC aanwezig zijn. SFC’s kunnen in het gebruikersprogramma opgeroepen worden, maar vormen een integraal onderdeel van het werkingssysteem van de PLC en moeten dus niet als onderdeel van het gebruikersprogramma geladen worden. Net zoals FC’s zijn SFC’s blokken zonder geheugen. In het programma van het krattentransportsysteem wordt gebruik gemaakt van SFC 22. Met SFC22 “CREAT_DB” (creëer een datablok) wordt in het gebruikersprogramma een niet geïnitialiseerd datablok aangemaakt. SFC22 creëert een datablok met het laagst mogelijke nummer in het opgegeven bereik. Indien een datablok met een specifiek nummer moet aangemaakt worden, kan voor zowel de onderste limiet als voor de bovenste limiet hetzelfde nummer opgegeven worden. Een datablok creëren met een nummer dat reeds bestaat is niet mogelijk. De lengte van het datablok moet een even aantal bytes zijn.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
69
Figuur 38: De oproep van SFC22
7.3.3 De programma-elementen 7.3.3.1 Merkers Merkers dienen in PLC-programma’s als hulpgeheugens. Er is geen fysische koppeling met de in- en uitgangen. Zo is het mogelijk dat bij programma’s met complexe functies een tussenresultaat in een merker wordt opgeslagen en elders in het programma terug wordt opgevraagd. Merkers zijn een aantal bits in het RAM-geheugen van de PLC. Elke bit kan op dezelfde manier als de uitgangen worden geprogrammeerd. Een PLC kan over remanente en niet-remanente merkers beschikken. Remanente merkers onthouden hun waarde omdat ze door een bufferbatterij gebufferd zijn. Bij een eventuele spanningsonderbreking blijven ze hun toestand bewaren. Niet alle merkers zijn remanent. Meestal zijn ze voor de helft als remanente en voor de helft als niet-remanente merkers uitgevoerd. Bij moderne PLC’s kan men softwarematig instellen welke merkers remanent worden gebruikt. Gebruik maken van merkers bij het opstellen van programma’s heeft een aantal voordelen: De verbindingen worden overzichtelijker en zijn eenvoudiger te programmeren Het testen van tussenresultaten, en daarmee het zoeken van fouten wordt eenvoudiger De tussenresultaten, opgeslagen in de merkers, kunnen in andere delen van het programma worden verwerkt.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
70
7.3.3.2 Timers Men kan de werking van een proces met tijdsfuncties of timers gaan beïnvloeden, meestal kan men het gebruik ervan onderbrengen in één van volgende groepen: Met een zekere tijdsvertraging een actie laten reageren op een commando of een vorige actie. Na het beëindigen van de ene actie de andere actie nog een tijd geactiveerd houden. Na een startimpuls een proces gedurende een welbepaalde tijd in stand houden. Voor het programmeren van een timer zijn er verschillende in- en uitgangen voorhanden, hieronder volgt een overzicht: S = Set-ingang: Bij het programmeren moet worden aangegeven op welk moment de tijdsfunctie moet geactiveerd worden. Hiervoor kunnen verschillende PLCinstructies gebruikt worden: ingangen, uitgangen, merkers, andere tijdsfuncties en andere instructies. R = Reset-ingang: Met deze verschillende PLC-instructies is het tevens mogelijk de tijdsfunctie te onderbreken. Men noemt dit het reset-signaal. TV = Tijdsconstante: Aan deze ingang wordt de tijd die de timer gaat gebruiken geprogrammeerd. Het toekennen van de tijd gebeurt door de instructie S5T# gevolgd door de tijd in milliseconden (ms), seconden (s), minuten (m) of uren (h). De grootst mogelijke tijd die kan ingegeven worden is 2h 46m 30s, de kleinste waarde is 10ms. Q = Statusuitgang: Q wordt hoog als de status van de timer hoog is, en dit hangt uiteraard af van de soort tijdsfunctie. Deze timeruitgang kan slechts 2 waarden aannemen, 0 of 1. BI = Integeruitgang: Bij afloop van de tijd, wordt hier de tijdswaarde in binaire code (16 bits) ter beschikking gesteld. Deze waarde kan doorgestuurd of getransfereerd worden naar bijvoorbeeld een merkerwoord of uitgangswoord om bijvoorbeeld een display te sturen. BCD = BCD-uitgang: Bij afloop van de tijd wordt hier de actuele tijdwaarde in BCD-code (1 2 4 8) ter beschikking gesteld. Ook deze waarde kan doorgestuurd worden naar bijvoorbeeld een merkerwoord of uitgangswoord.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
71
Figuur 39: Aansluiting timer
Bij Siemens S7 zijn er 5 timerfuncties voorhanden:
Figuur 40: Overzicht van de timers
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
72
7.3.3.3 Counters Bij elk besturingssysteem moet er vaak worden geteld. Elke PLC beschikt over een aantal telfuncties. In de technische specificatie van het toestel kan het aantal beschikbare tellers worden teruggevonden. Er bestaan 3 soorten tellers namelijk de opteller, de afteller en een combinatie van beide, namelijk de op/afteller.
Figuur 41: Aansluiting counter
Voor het programmeren van een counter zijn er verschillende in- en uitgangen voorhanden, hieronder volgt een overzicht: CU = optelingang: Bij elke positieve flank die aan deze ingang wordt aangelegd, wordt de waarde van de teller met 1 verhoogd. CD = aftelingang: Bij elke positieve flank die aan deze ingang wordt aangelegd, wordt de waarde van de teller met 1 verlaagd. S = setingang: Wanneer een positieve flank aan deze ingang optreedt, wordt de presetwaarde in de teller geladen. PV = presetwaarde: Aan deze ingang kan een getal aangelegd worden die bij een positieve flank aan de setingang in de teller geladen wordt. R = resetingang: Wanneer een positieve flank aan deze ingang optreedt, wordt de inhoud van de teller 0 en kan er niet op- of afgeteld worden. Q = statusuitgang: Deze geeft de logische toestand of status weer van de teller. Als de tellerinhoud gelijk is aan 0 zal de statusuitgang Q ook de status 0 hebben. Als daarentegen de tellerinhoud niet 0 is zal de statusuitgang Q de status 1 hebben. CV = hexadecimale uitgang: Hier is de telwaarde in hexadecimale waarde ter beschikking. Deze waarde kan doorgestuurd of getransfereerd worden naar
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
73
bijvoorbeeld een merkerwoord of uitgangswoord om bijvoorbeeld een display te sturen. CV_BCD = BCD-uitgang: Hier is de telwaarde in BCD-code ter beschikking. Deze waarde kan doorgestuurd of getransfereerd worden naar bijvoorbeeld een merkerwoord of uitgangswoord om bijvoorbeeld een display te sturen.
7.3.3.4 Set-Reset Een set-reset-funtie wordt ook set-reset-flipflop genoemd. De signaalwisseling van toestand 0 naar toestand 1 zorgt ervoor dat de uitgang Q toestand 1 krijgt en deze toestand behoudt. Wanneer de setingang weer toestand 0 krijgt blijft de toestand van de uitgang Q hoog. Deze kan alleen weer toestand 0 aannemen wanneer de reset-ingang van toestand 0 naar toestand 1 gaat.
Figuur 42: Set-Reset
7.3.3.5 Positieve flankdetectie / One shot De uitgang van een positieve flankdetectie wordt bij een “0
1”- overgang van de ingang
gedurende 1 PLC-cyclus hoog.
Figuur 43: Positieve flankdetectie
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 7: Programmatie
74
STEP 7 bevat een standaardinstructie om een positieve flank op een adres te detecteren. Aan de hand van een kort programma, wordt een beter inzicht bekomen betreffende de werking van deze standaardinstructie.
Figuur 44: Voorbeeld one shot
In dit programma wordt gebruik gemaakt van de cyclische werking van de PLC. De volgorde van de programmalijnen is in dit geval zeer essentieel. Om een positieve flank te kunnen detecteren moet steeds de vorige toestand van een signaal gekend zijn en deze toestand moet dan worden vergeleken met de huidige toestand. Indien de vorige toestand van een signaal “0” was en de huidige toestand “1” is, kan er worden gesteld dat een signaalverandering van “0” naar “1” is opgetreden (= positieve flank).
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
8.
75
Ombouw
8.1. Demontage van S5 en display Tijdens de ombouw van de installatie moet de bekabeling van de in- en uitgangen van de S5 volledig losgemaakt worden, en later terug aan de S7 bevestigd worden. Om de mogelijkheid dat er kabels verwisseld zouden worden uit te sluiten, wordt er eerst een duidelijke nummering aangebracht op elke kabel afzonderlijk. Bovendien zal het opnieuw inschroeven van de kabels in de S7 periferiemodules hierdoor vlotter verlopen. Ook de voedingskabel die van de transformator naar de CPU loopt moet volledig verwijderd worden. Vervolgens kan de S5 PLC verwijderd worden uit de elektrische kast. Eerst worden de schroeven die de periferiemodules verbinden met de busmodule verwijderd. Vervolgens kunnen de modules simpel uit de busmodule geschoven worden.
Figuur 45: Demontage van de periferiemodules
Wanneer alle periferiemodules verwijderd zijn, kan de busmodule gedemonteerd worden. Eerst worden de verbindingen tussen de verschillende busmodules onderling en tussen de eerste busmodule en de CPU losgekoppeld. Vervolgens wordt met een schroevendraaier een klem losgeduwd en wanneer de module nu naar boven gekanteld wordt, komt ze los van de DIN-rail.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
76
Figuur 46: Demontage van de busmodules
Hierna kan de CPU op dezelfde manier als de busmodules van de rail worden losgemaakt. Met een schroevendraaier wordt de klem opnieuw verwijderd en de CPU kan van de rail gekanteld worden.
Figuur 47: Demontage van de CPU
De rail kan door het losdraaien van de bevestigingsschroeven uit de kast gehaald worden. Tot slot moet de display nog verwijderd worden. Eerst worden de kabels weer losgekoppeld, en wanneer de bevestigingsschroeven losgedraaid zijn, kan de display gemakkelijk uit het frontpaneel van de kast geschoven worden.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
77
8.2. Montage S7-PLC en display 8.2.1 Montage van de DIN-rail Eerst wordt de nieuwe DIN-rail bevestigd door middel van de bevestigingsschroeven, bovendien wordt op deze rail ook de aarding aangesloten op de daartoe voorziene aardingsschroef
Figuur 48: Montage van de DIN-rail en aardingsschroef
8.2.2 Montage van de modules en busverbinding Vervolgens kunnen de verschillende modules op deze rail gemonteerd worden. Eerst wordt de voedingsmodule op de rail bevestigd. Deze module kan zowel aangesloten worden op 120VAC als 230VAC. Het selecteren van de netspanning gebeurt met een schuifschakelaar, die in deze installatie op 230VAC ingesteld zal worden.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
78
Figuur 49: Instellen van spanning op voedingsmodule
Bij de andere modules wordt er standaard een busverbinding geleverd. Deze busverbinding wordt op de rechteraansluiting van de te plaatsen module geklikt. Op die manier komt de busverbinding op de linkeraansluiting van de volgende module terecht en krijg je geen open verbinding door een eventuele busverbinding die zou uitsteken naast de laatste module. Deze busverbinding moet op de module geplaatst worden vooraleer de modules gemonteerd worden op het rack.
Figuur 50: Montage van de busmodule
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
79
De modules worden bovenaan op het profiel gehangen, tegen elkaar geschoven en naar beneden toe vastgeduwd. Eerst wordt de voedingsmodule geplaatst, daarna de CPU en de verschillende periferiemodules. Door middel van de bevestigingsschroef worden alle modules afzonderlijk vastgeschroefd
Figuur 51: Montage van de modules
Figuur 52: Bevestiging van de modules
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
80
8.2.3 Aansluiten van de in- en uitgangen Wanneer de PLC en alle periferiemodules op deze manier aangesloten zijn, wordt het tijd om de bekabeling terug te plaatsen. De voedingsmodule biedt 3 uitgangen die kunnen gebruikt wordt om in- en uitgangen van spanning te voorzien. In de S5 sturing werden de in- en uitgangen nog door de transformator gevoed, nu moeten ze door de voedingsmodule gevoed worden. We verwijderen de kabel uit de transformator en schroeven hem terug vast in klem L1 van de voedingsmodule. Klem M1 wordt verbonden met de massaklem van de ingangsmodule. Ook de voeding van de uitgangen wordt losgekoppeld van de transformator en bevestigd aan de klemmen L2 en M2 van de voedingsmodule. 8.2.3.1 Aansluiten van de ingangen Aansluiten van de 2-draadse schakelelementen:
Figuur 53: Aansluiting van een 2-draads schakelelement
Als het schakelelement gesloten wordt, wordt de 24V+ aan de ingang geschakeld. De bijhorende LED licht op. Men zegt dan dat de toestand of de status van die ingang “1” is. Als het schakelelement open is, zal de LED niet branden, zodat men weet dat de toestand
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
81
of de status van die ingang “0” is. Tweedraadse sensoren worden op dezelfde wijze aangesloten. Aansluiten van de 3-draadse sensoren
Figuur 54: Aansluiting van een 3-draads sensor
Een driedraadse sensor heeft een voedingsspanning nodig om te kunnen werken. Bij een driedraadse sensor moet men daarom zowel de 24V+ als de M of het nulpotentiaal van de 24V DC-voeding op de sensor aansluiten. De schakeldraad wordt verbonden met de ingang van de PLC.
8.2.3.2 Aansluiten van de relaisuitgangen In de uitgangsmodule van de PLC is er voor elke uitgang een klein relais. De relaisspoel wordt aangestuurd door de inwendige elektronica van de PLC. Een schakelcontact van het relais is inwendig verbonden met de aansluitklem van de uitgang.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
82
Figuur 55: Relaisuitgang
In figuur 55 is er voor elke PLC-uitgang één klem. De inwendige relaiscontacten zijn aan één zijde met elkaar verbonden. Die gemeenschappelijke aansluiting is gemaakt op de klem Q:com. De verbruikers die je aansluit op de PLC-uitgangen moeten daardoor allemaal op dezelfde spanning werken. Je hebt een externe spanningsbron nodig om de verbruikers van spanning te voorzien. Welke soort spanningsbron je gebruikt, hangt af van de werkspanning van de verbruikers. Aan de LED kun je zien of een uitgang geschakeld wordt. Als de LED oplicht, is de uitgang ingeschakeld, men zegt dat de toestand of de status van die uitgang “1” is. Als de LED niet brandt, is toestand of de status van die uitgang “0” .
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
83
8.2.4 Aansluiten van de spanning Vervolgens moeten de voeding van de voedingsmodule overgebracht worden naar de CPU. Voor het aansluiten van de stuurstroomvoorziening aan de CPU wordt gebruik gemaakt van de meegeleverde verbindingskraag. Tot slot wordt de trekbelasting nog vastgeschroefd.
Figuur 56: Bevestiging van de verbindingskraag
Om de elektrische aansluiting van de PLC af te werken moet enkel nog de netspanning aangesloten worden op de voedingsmodule we verbinden de L en M klem met respectievelijk een lijn en de massakabel van het net.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
84
Figuur 57: Overzicht aansluiting PLC
8.2.5 Aansluiten van de frequentieregelaar Vervolgens moet de frequentieregelaar opnieuw worden aangesloten. Bij de S5 was er op de CPU een interface aanwezig om de analoge in- en uitgangen aan te sluiten, bij de S7 gebeurt dit door de kabels vast te schroeven in de frontconnector. De stekker zal dus van de kabel moeten worden verwijderd en de kabels afzonderlijk op de juiste plaats in de frontconnector inschroefd. De frontconnector zag er als volgt uit:
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
85
Figuur 58: Analoge interface S5-95U
Enkel AW 40 werd gebruikt, en bij de S7 wordt dus ook enkel deze uitgang gebruikt, maar onder de naam QW 752. De kabel die met pin 14 verbonden was, moet aan de klem van de analoge uitgang bevestigd worden, de kabel van pin 15 aan de massa.
8.2.6 Laden van het programma Na het inbrengen van de MMC kan ook het programma in de PLC geladen worden. Daarvoor wordt de PC met de MPI poort van de PLC verbonden via RS232 poort van de PC. De programmatiesoftware wordt opgestart en PG-PC interface wordt gecontroleerd. Vervolgens kan de code naar de PLC gedownload worden. De PLC is nu volledig geïnstalleerd en klaar om het machine te besturen. Maar vooraleer de spanning in de kast terug in te schakelen, moet eerst nog de display geïnstalleerd worden.
8.2.7 Aansluiten van de display De nieuwe TD17 display is iets groter dan de vorige, er moet dus materiaal uit het voorpaneel van de schakelkast verwijderd worden. Wanneer de opening groot genoeg is, kan de TD17 in de kast geschoven worden en met de bevestigingsschroeven wordt het vastgezet. Via de programmeerpoort wordt de code van de PC naar het geheugen van de display overgedragen. Nadat nu de voeding van de display is aangesloten, kan zijn programmeerpoort verbonden worden met de MPI-interface van de PLC.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 8: Ombouw
86
De volledige installatie is nu omgebouwd en de spanning kan terug ingeschakeld worden. De hoofdschakelaar van de kast wordt terug ingeschakeld en tot slot wordt ook de bedrijfstoestand van de PLC naar RUN geschakeld.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
Deel 9: Conclusie
9.
87
Conclusie
De meeste van de vooropgestelde doelstellingen van dit project, uitgezonderd de ombouw van de sturing, zijn gerealiseerd. In eerste instantie is er een grondige studie gedaan van de huidige sturing. Hierna werd er overgegaan tot de aankoop van een nieuwe PLC, waarbij vooral aandacht werd besteed aan het geheugen en de uitbreidmogelijkheden. Door de studie van de huidige sturing werd het tevens mogelijk om een aantal opmerkelijke verbeteringen aan te brengen. Vervolgens werden de functieomschrijving en aansluitschema’s hieraan aangepast. Na het voltooien van het voorbereidende werk werden de simulaties uitgevoerd en de nieuwe PLC en display aangekocht. Voor het ombouwen van de installatie zijn alle voorbereidingen getroffen, maar de ombouw zelf heeft nog niet plaatsgevonden. Deze is wel gepland voor de maand juli.
Bert Coenen – Koen Swalens
Xios Hogeschool Limburg – Dep. IWT
Academiejaar 2004 – 2005
A
Literatuuropgave 172, HUGO MARIËN, I-PLC-Q Programmeerbare Logische Sturingen, 2001, Die Keure, Brugge 832, HUGO MARIËN, PLC Programmeerbare Logische Sturingen 2, 1995, Die Keure, Brugge IVAN MAESEN, Basiscursus PLC, http://www.st-pieter.be/~vti/_maesen_i/E-cursussen%20b/startpagina%20PLC.html SIEMENS http://www.siemens.be
B
Lijst van figuren: Figuur 1: Uitgebreid blokschema van een PLC-sturing ........................................................5 Figuur 2: Blokschematische voorstelling van een PLC........................................................12 Figuur 3: Logisch “0” en “1”-signaal bij detectie van ingangssignalen............................14 Figuur 4: Voorstelling van bit, byte en woord......................................................................22 Figuur 5: Adressering van een PLC .....................................................................................23 Figuur 6: Lineair programma ..............................................................................................24 Figuur 7: Gestructureerd programmeren ............................................................................26 Figuur 8: Stapelopzettransport.............................................................................................30 Figuur 9: De lift....................................................................................................................31 Figuur 10: De ontnester .......................................................................................................32 Figuur 11: De rollen- en bufferbanen ..................................................................................34 Figuur 12: De noodafvoer ....................................................................................................35 Figuur 13: Uitschakelvertraging stapelopzettransport ........................................................36 Figuur 14; Afvoeren stapels kratten naar buffer ..................................................................37 Figuur 15: Beveiliging in- en uitvoer lift..............................................................................38 Figuur 16: Positie rollenbanen.............................................................................................39 Figuur 17: De S5-PLC..........................................................................................................40 Figuur 18: Overzicht aansluitingen S5-95U ........................................................................41 Figuur 19: De voedingstransformator..................................................................................43 Figuur 20: De periferiemodule.............................................................................................43 Figuur 21: De busmodule .....................................................................................................44 Figuur 22: Modules van de Siemens PLC S7-300................................................................45 Figuur 23 De CPU 313C ......................................................................................................46 Figuur 24: De voedingsmodule ............................................................................................48 Figuur 25: De periferiemodules ...........................................................................................49 Figuur 26: De frontconnector...............................................................................................50 Figuur 27: De DIN-rail ........................................................................................................51 Figuur 28: De tekstdisplay ...................................................................................................52 Figuur 29: De gebruikersinterface van S7 Lite ....................................................................53 Figuur 30: De gebruikersinterface van S7 PLCSIM ............................................................54 Figuur 31: De gebruikersinterface van Protool ...................................................................55
C Figuur 32: Step 7 Lite - Hardwareconfiguratie ....................................................................56 Figuur 33: Step 7 Lite - Symbol table...................................................................................57 Figuur 34: Step 7 Lite - Programmaopbouw .......................................................................58 Figuur 35: Step 7 Lite - Cross-references table ...................................................................59 Figuur 36: PLCSIM - Simulaties ..........................................................................................61 Figuur 37: FB1 Display - Netwerk 4 ....................................................................................64 Figuur 38: De oproep van SFC22 ........................................................................................69 Figuur 39: Aansluiting timer ................................................................................................71 Figuur 40: Overzicht van de timers......................................................................................71 Figuur 41: Aansluiting counter ............................................................................................72 Figuur 42: Set-Reset .............................................................................................................73 Figuur 43: Positieve flankdetectie........................................................................................73 Figuur 44: Voorbeeld one shot.............................................................................................74 Figuur 45: Demontage van de periferiemodules..................................................................75 Figuur 46: Demontage van de busmodules ..........................................................................76 Figuur 47: Demontage van de CPU .....................................................................................76 Figuur 48: Montage van de DIN-rail en aardingsschroef ...................................................77 Figuur 49: Instellen van spanning op voedingsmodule ......................................................78 Figuur 50: Montage van de busmodule................................................................................78 Figuur 51: Montage van de modules....................................................................................79 Figuur 52: Bevestiging van de modules ...............................................................................79 Figuur 53: Aansluiting van een 2-draads schakelelement ...................................................80 Figuur 54: Aansluiting van een 3-draads sensor .................................................................81 Figuur 55: Relaisuitgang......................................................................................................82 Figuur 56: Bevestiging van de verbindingskraag.................................................................83 Figuur 57: Overzicht aansluiting PLC .................................................................................84 Figuur 58: Analoge interface S5-95U ..................................................................................85