Technische samenvatting
Kernpunten:

De inleiding licht de basisprincipes van PLC-programmering toe, de gangbare programmeertalen en voorbeelden van toepassingen in de industrie. Daarnaast wordt aandacht besteed aan de wettelijke en normatieve eisen op het gebied van machineveiligheid.

  • Een PLC is een digitale controller voor automatisering: hij verzamelt signalen van sensoren, verwerkt die en stuurt actuatoren aan
  • De belangrijkste onderdelen van een PLC zijn beschreven: de processor, I/O-modules, geheugen en de communicatie-interface
  • Overzicht van PLC-talen: LD, ST, FBD, IL, SFC en SCL, met typische toepassingen en kenmerken
  • Toepassingen van PLC’s zijn aangegeven voor de sectoren: automotive, FMCG, zware industrie en farmacie (GMP)
  • De rol van PLC’s in machineveiligheid werd besproken: Machinerichtlijn 2006/42/EC, NEN-EN-ISO ISO 12100:2012, EN ISO 13849-1, EN 62061 en veiligheidsbesturingen

PLC-programmering vormt de basis van moderne systemen voor industriële automatisering. PLC’s zijn ontworpen voor de besturing van productieprocessen, machinesystemen en installaties en worden ingezet in uiteenlopende sectoren, van de automotive-industrie en de FMCG-sector tot de zware industrie en de farmaceutische sector. In dit artikel geven we algemene informatie over het programmeren van controllers, de programmeertalen die in PLC’s worden gebruikt en hun toepassingen in verschillende sectoren.

Wat is een PLC?

Een Programmeerbare Logische Controller (PLC) is een digitaal computersysteem dat is ontworpen voor de besturing van automatiseringsprocessen. PLC’s ontvangen signalen van verschillende sensoren en apparaten, verwerken deze volgens geprogrammeerde instructies en sturen vervolgens de juiste besturingssignalen naar actuatoren. De belangrijkste componenten van een PLC zijn:

  • Processor
  • Ingangs-/uitgangsmodules (I/O)
  • Geheugen
  • Communicatie-interface

Programmeertalen voor PLC

PLC-programmering kan in meerdere talen plaatsvinden, elk met eigen voordelen en specifieke toepassingen. Hieronder volgt een overzicht van de populairste programmeertalen voor PLC’s:

  • Ladder Diagram (LD): De bekendste en meest gebruikte taal, die lijkt op elektrische schema’s. Ideaal voor elektriciens en technici. Ladder Diagram is overzichtelijk en intuïtief, wat het opsporen en verhelpen van storingen in systemen voor industriële automatisering vergemakkelijkt.
  • Structured Text (ST): Een programmeertaal op hoog niveau, vergelijkbaar met PASCAL. Wordt gebruikt voor complexere berekeningen en logica. Structured Text maakt het eenvoudiger om geavanceerde algoritmen en wiskundige bewerkingen te implementeren.
  • Function Block Diagram (FBD): Een grafische taal waarmee wordt geprogrammeerd met functieblokken. Populair in procestoepassingen. FBD maakt het mogelijk om snel programma’s op te bouwen met behulp van kant-en-klare functieblokken.
  • Instruction List (IL): Een programmeertaal op laag niveau, vergelijkbaar met assembler. Wordt gebruikt in systemen die maximale prestaties vereisen. Instruction List is complexer, maar biedt nauwkeurige controle over het besturingsproces.
  • Sequential Function Chart (SFC): Een grafische taal die wordt gebruikt voor het programmeren van sequentiële processen. Praktisch in systemen met meerdere fasen. SFC is ideaal voor het beheren van bewerkingsvolgordes, zoals productieprocessen.
  • Structured Control Language (SCL): Een programmeertaal op hoog niveau en een uitbreiding van Structured Text. SCL wordt vooral toegepast in de Siemens-omgeving en maakt meer geavanceerde PLC-programmering mogelijk dankzij de uitgebreide taalfunctionaliteit.
  • CODESYS: Een universele ontwikkelomgeving voor PLC’s die veel verschillende programmeertalen en hardwareplatforms ondersteunt. CODESYS maakt programmeren mogelijk in verschillende talen die voldoen aan IEC 61131-3, wat het tot een zeer flexibel hulpmiddel voor ingenieurs maakt.
Programmeertaal Beschrijving Toepassing Voordelen Nadelen
Ladder Diagram (LD) Ladderdiagram dat lijkt op elektrische schakelingen Basistoepassingen, eenvoudig voor elektriciens Intuïtief, eenvoudig te debuggen Beperkte logische complexiteit
Structured Text (ST) Programmeertaal op hoog niveau, vergelijkbaar met PASCAL Complexe berekeningen en logica Flexibel, begrijpelijk voor programmeurs Minder visueel, lastiger voor beginners
Function Block Diagram (FBD) Grafische taal met functieblokken Procestoepassingen Snel programma’s opbouwen, kant-en-klare functieblokken Kan minder overzichtelijk zijn bij grote projecten
Instruction List (IL) Programmeertaal op laag niveau, vergelijkbaar met assembler Hoogpresterende systemen Nauwkeurige controle over het proces Moeilijker te leren en te debuggen
Sequential Function Chart (SFC) Grafische taal voor het programmeren van sequenties Sequentiële productieprocessen Overzichtelijk beheer van fasen Kan complex worden bij ingewikkelde processen
Vergelijking van PLC-programmeertalen

Toepassingen van PLC in verschillende industriële sectoren

PLC-programmering wordt breed toegepast in verschillende industriële sectoren:

  • Automotive: Aansturing van assemblagelijnen, beheer van las- en lakrobots. PLC’s zijn onmisbaar bij de automatisering van autoproductie, waar precisie en betrouwbaarheid doorslaggevend zijn.
  • FMCG (Fast-Moving Consumer Goods): Automatisering van verpakkingslijnen, bewaking van productie- en magazijnprocessen. In de FMCG-industrie zijn snelheid en efficiëntie essentieel, en PLC-programmering helpt deze doelen te bereiken door productieprocessen te optimaliseren.
  • Zware industrie: Beheersing van metallurgische processen, aansturing van grote machines en systemen voor materiaaltransport. In de zware industrie stuurt PLC-programmering complexe processen aan en waarborgt deze de veiligheid van de bedrijfsvoering.
  • Farmacie: Nauwkeurige aansturing van processen voor de productie van geneesmiddelen, kwaliteitscontrole, verpakking en distributie. In de farmaceutische sector worden PLC’s ingezet om hoge kwaliteitsnormen en naleving van voorschriften, zoals GMP, te waarborgen.

PLC-programmering en machineveiligheid

PLC-programmering speelt een sleutelrol bij het waarborgen van de veiligheid van machines en industriële installaties. Binnen de context van de industriële automatisering heeft veiligheid de hoogste prioriteit en is naleving van wet- en regelgeving en normen onmisbaar. Een belangrijk onderdeel van machineveiligheid zijn de eisen uit de Machinerichtlijn 2006/42/EC, die de essentiële vereisten vastlegt voor het ontwerpen en bouwen van machines, zodat deze veilig kunnen worden gebruikt.

De richtlijn vereist dat machines zo worden ontworpen en gebouwd dat het risico op ongevallen wordt weggenomen. Daaronder valt ook de implementatie van veiligheidssystemen die door PLC-besturingen kunnen worden beheerd. Een belangrijk aspect hierbij is de risicoanalyse volgens NEN-EN-ISO ISO 12100, die de principes vastlegt voor het identificeren van gevaren, het beoordelen van risico’s en het reduceren daarvan.

Geharmoniseerde normen, zoals EN ISO 13849-1 en EN 62061, geven richtlijnen voor het ontwerpen en implementeren van veiligheidssystemen. Veiligheidsbesturingen, een speciaal type PLC, worden gebruikt voor het bewaken en aansturen van veiligheidsfuncties. Ze onderscheiden zich door een hogere betrouwbaarheid en zijn zo ontworpen dat zij bij een storing een veilige stop van de machine waarborgen.

Veiligheidssystemen omvatten verschillende componenten, zoals veiligheidssensoren, noodstopschakelaars, lichtschermen en modules voor veiligheidsschakelaars. Al deze elementen werken samen met veiligheidsbesturingen om machines te bewaken en aan te sturen in overeenstemming met de eisen van de Machinerichtlijn 2006/42/EC en de relevante normen.

In de context van PLC-programmering betekent de integratie van veiligheidsfuncties dat engineers zich bewust moeten zijn van de specifieke veiligheidseisen en passende programmeer- en testtechnieken moeten toepassen om te waarborgen dat systemen aan de voorschriften voldoen. Het invoeren van veiligheidsmaatregelen in overeenstemming met normen en richtlijnen zorgt niet alleen voor wettelijke naleving, maar beschermt ook medewerkers en apparatuur en draagt zo bij aan een veiligere en efficiëntere werkomgeving.

PLC-programmering is nauw verbonden met SCADA-systemen (Supervisory Control and Data Acquisition), die worden gebruikt voor het op grote schaal bewaken en aansturen van industriële processen. SCADA-systemen verzamelen gegevens van PLC’s en andere apparaten, waardoor operators toezicht kunnen houden op de volledige productie-infrastructuur. De integratie van PLC-programmering met SCADA zorgt voor een soepele gegevensverwerking in real time, zodat snel kan worden gereageerd op afwijkingen en productieprocessen kunnen worden geoptimaliseerd.

Voor- en nadelen van verschillende typen PLC’s

Afhankelijk van de specifieke eisen van de toepassing kunnen verschillende typen PLC’s worden gekozen:

  • Compacte PLC’s: Alle modules zijn geïntegreerd in één apparaat. Ideaal voor kleinere toepassingen.
    • Voordelen: Eenvoudige installatie, lagere kosten.
    • Nadelen: Minder flexibiliteit en schaalbaarheid.
  • Modulaire PLC’s: Bestaan uit afzonderlijke modules die kunnen worden aangepast aan de behoeften van de toepassing.
    • Voordelen: Hoge flexibiliteit en schaalbaarheid.
    • Nadelen: Hogere initiële kosten, complexere installatie.
  • Rack-PLC’s: Modules die in speciale kasten worden gemonteerd, bedoeld voor grote en complexe systemen.
    • Voordelen: Geschikt voor een zeer groot aantal in- en uitgangen, hoge betrouwbaarheid.
    • Nadelen: Hoogste kosten, grote afmetingen.

PLC-programmering: basisgereedschappen van Siemens en Allen Bradley

Bij PLC-programmering zijn de tools voor het ontwikkelen en beheren van code net zo belangrijk als de programmeertalen zelf. Twee van de bekendste merken op het gebied van PLC’s zijn Siemens en Allen Bradley.

Siemens

  • TIA Portal (Totally Integrated Automation Portal): Dit is de uitgebreide ontwikkelomgeving van Siemens, waarin alle tools zijn geïntegreerd die nodig zijn voor PLC-programmering, configuratie en diagnose van systemen voor industriële automatisering. TIA Portal ondersteunt verschillende programmeertalen volgens IEC 61131-3, waaronder Ladder Diagram (LD), Function Block Diagram (FBD), Structured Text (ST), Instruction List (IL) en Sequential Function Chart (SFC).
    • Voordelen: Alle tools geïntegreerd in één omgeving, intuïtieve gebruikersinterface, brede ondersteuning voor verschillende programmeertalen.
    • Nadelen: Hoge licentiekosten, geavanceerde kennis vereist om alle mogelijkheden volledig te benutten.
  • SIMATIC Step 7: Dit is een tool voor het programmeren van Siemens-controllers uit de S7-serie. Step 7 biedt geavanceerde functies voor PLC-programmering, diagnose en onderhoud, waardoor complexe automatiseringstoepassingen kunnen worden ontwikkeld.
    • Voordelen: Uitgebreide programmeermogelijkheden, compatibel met veel Siemens-controllers.
    • Nadelen: Steile leercurve, hogere kosten in vergelijking met andere tools.

Allen Bradley

  • RSLogix 5000/Studio 5000: RSLogix 5000 (tegenwoordig bekend als Studio 5000) is een geavanceerde tool voor PLC-programmering van Allen Bradley. Het ondersteunt programmeertalen volgens IEC 61131-3, zoals Ladder Diagram (LD), Function Block Diagram (FBD), Structured Text (ST) en Sequential Function Chart (SFC). Studio 5000 wordt voornamelijk gebruikt voor het programmeren van controllers uit de ControlLogix- en CompactLogix-serie.
    • Voordelen: Intuïtieve gebruikersinterface, geavanceerde diagnose- en simulatiefuncties.
    • Nadelen: Hoge licentiekosten, specialistische kennis vereist.
  • RSLogix 500: Een tool voor het programmeren van oudere Allen Bradley-controllers uit de SLC 500- en MicroLogix-serie. RSLogix 500 biedt basisfuncties voor PLC-programmering en diagnose, waardoor het geschikt is voor minder complexe toepassingen.
    • Voordelen: Eenvoudig in gebruik, lagere kosten in vergelijking met Studio 5000.
    • Nadelen: Beperkte functionaliteit in vergelijking met meer geavanceerde tools, geen ondersteuning voor de nieuwste controllers.

De toekomst van PLC-technologie

PLC-technologie ontwikkelt zich voortdurend en brengt steeds nieuwe functies en mogelijkheden met zich mee. Toekomstige trends zijn onder meer integratie met het Internet of Things (IoT), cyberbeveiliging, kunstmatige intelligentie (AI) en geavanceerde data-analyse. Verwacht wordt dat PLC-programmering steeds geavanceerder wordt, waardoor nog meer automatisering en optimalisatie van industriële processen mogelijk is, in lijn met de uitgangspunten van Industrie 4.0.

PLC-programmering: meest voorkomende problemen en oplossingen

Tijdens PLC-programmering kunnen verschillende problemen optreden, zoals fouten in de code, communicatieproblemen of hardwarestoringen. De meest voorkomende problemen en bijbehorende oplossingen zijn:

  • Fouten in de code: De code regelmatig testen en debuggen.
  • Communicatieproblemen: De netwerkconfiguratie en de juistheid van de bekabeling controleren.
  • Hardwarestoringen: Regelmatig onderhoud uitvoeren en versleten componenten vervangen.

Best practices voor PLC-programmering

Om efficiënte en betrouwbare PLC-programma’s te ontwikkelen, is het raadzaam best practices toe te passen, zoals:

  • Modulaire codeopbouw: Code modulair schrijven, zodat onderhoud en wijzigingen eenvoudiger worden.
  • Documentatie: Gedetailleerde codedocumentatie, zodat de werking en toekomstige wijzigingen gemakkelijker te begrijpen zijn. Goed gedocumenteerde code is bovendien in overeenstemming met de eisen van de Machinerichtlijn 2006/42/EC.
  • Testen: De code regelmatig testen onder verschillende bedrijfsomstandigheden.
  • Veiligheid: Veiligheidsmaatregelen implementeren, zoals wachtwoorden en gegevensversleuteling. Zorgen voor naleving van de normen voor elektromagnetische compatibiliteit en de Laagspanningsrichtlijn.

In de context van PLC-programmering moet de gebruikershandleiding van de machine gedetailleerde informatie bevatten over de werking van het programma, zodat gebruikers de werking ervan volledig kunnen begrijpen en het apparaat veilig en efficiënt kunnen bedienen. Belangrijke elementen die in de gebruikershandleiding moeten worden opgenomen, zijn:

  1. Beschrijving van de programmatische functies:
    • Een gedetailleerde beschrijving van de afzonderlijke functies van het PLC-programma.
    • Toelichting op de besturingslogica en de volgorde van de bewerkingen.
  2. Cyclogramschema’s:
    • Een grafische weergave van de bedrijfssequenties (cyclogrammen), waarin de volgorde en voorwaarden voor de uitvoering van de afzonderlijke bewerkingen worden getoond.
    • De cyclogrammen moeten nauwkeurig zijn beschreven en gemakkelijk te begrijpen zijn, zodat de gebruiker snel de procesfasen en eventuele storingspunten kan identificeren.
  3. Instructies voor diagnose:
    • Beschrijving van de diagnoseprocedures die in het PLC-programma beschikbaar zijn.
    • Methoden voor het identificeren en interpreteren van fouten en hun mogelijke oorzaken.
  4. Procedures voor onderhoud en reparatie:
    • Instructies voor het periodieke onderhoud van het systeem om de betrouwbaarheid en prestaties ervan te waarborgen.
    • Stapsgewijze procedures voor de reparatie en vervanging van componenten die verband houden met het PLC-programma.

De technische documentatie moet ook gedetailleerde informatie bevatten over:

  • Elektrische schema’s: die de verbindingen van alle componenten van het PLC-systeem weergeven.
  • Lijst met codes en programma’s: met de volledige broncode en commentaar waarin de werking van de afzonderlijke codegedeelten wordt toegelicht.
  • Configuratiebestanden: die noodzakelijk zijn voor de correcte werking van het PLC-systeem.
  • Test- en validatieprocedures: om te verifiëren dat het PLC-programma werkt zoals bedoeld en aan de veiligheidseisen voldoet.

Nauwkeurige en doordachte technische documentatie, inclusief cyclogramschema’s en gedetailleerde bedieningsinstructies, is onmisbaar om een veilige werking van machines te waarborgen, conformiteit met normen te ondersteunen en toekomstige wijzigingen en probleemoplossing te vergemakkelijken.

PLC-programmering: educatieve bronnen en hulpmiddelen

Voor ingenieurs en automatiseringsspecialisten die hun kennis van PLC-programmering willen uitbreiden, zijn er tal van educatieve bronnen beschikbaar:

  • Online cursussen: Platforms zoals Coursera, Udemy en edX bieden cursussen aan op het gebied van PLC-programmering.
  • Studieboeken en vakliteratuur
  • Simulatiesoftware: Hulpmiddelen zoals TIA Portal van Siemens of RSLogix van Rockwell Automation maken het mogelijk om PLC-programmering te leren en code te testen in een virtuele omgeving.

PLC-programmering is een essentieel onderdeel van de moderne industriële automatisering en wordt toegepast in tal van industriële sectoren. Inzicht in de basisconcepten, programmeertalen en best practices stelt ingenieurs en automatiseringsspecialisten in staat om efficiënte, betrouwbare en veilige systemen te ontwikkelen. Door de voortdurende technologische vooruitgang zal PLC-programmering een steeds grotere rol spelen in de automatisering van industriële processen en bijdragen aan een hogere efficiëntie en lagere productiekosten.

PLC-programmering – inleiding

Een programmeerbare logische controller (PLC) is een digitaal computerapparaat dat is ontworpen voor de besturing van automatiseringsprocessen. Het ontvangt signalen van sensoren, verwerkt deze volgens het programma en stuurt besturingssignalen naar actuatoren.

In het artikel worden de volgende onderdelen genoemd: de processor, de in-/uitvoermodules (I/O), het geheugen en de communicatie-interface. Deze elementen maken het mogelijk signalen te verzamelen, de besturingslogica uit te voeren en met de omgeving te communiceren.

Onder meer Ladder Diagram (LD), Structured Text (ST), Function Block Diagram (FBD), Instruction List (IL) en Sequential Function Chart (SFC) werden genoemd, evenals SCL en de CODESYS-omgeving. De keuze van de taal hangt af van het type applicatie, de complexiteit van de logica en de voorkeuren van het team.

PLC’s worden onder meer gebruikt in de automotive (assemblagelijnen, robots), FMCG (verpakkingslijnen), de zware industrie (metaalprocessen, materiaaltransport) en de farmaceutische industrie (productie van geneesmiddelen, kwaliteitscontrole en verpakking). Deze toepassing vloeit voort uit de behoefte aan een betrouwbare en reproduceerbare procesbesturing.

PLC-programmering ondersteunt de implementatie van veiligheidsfuncties en de naleving van de vereisten van de Machinerichtlijn 2006/42/EC en de risicoanalyse volgens NEN-EN-ISO ISO 12100:2012. In veiligheidssystemen worden ook veiligheidsbesturingen toegepast, die zo zijn ontworpen dat zij bij een storing zorgen voor een veilige stopzetting van de machine.

Delen: LinkedIn Facebook