PLCopen publiceert richtlijnen voor objectgeoriënteerd programmeren van PLC’s

De organisatie PLCopen heeft een eerste versie gepubliceerd van zijn “PLCopen Guidelines for usage of Object-Oriented Programming”. Het objectgeoriënteerd programmeren van PLC’s is al sinds 2013 als optie opgenomen in de IEC 61131-3 standaard, maar de manier waarop het geïmplementeerd wordt, is niet eenduidig vastgelegd. Daar wil PLCopen met zijn OOP Guidelines bij helpen.

PLCopen startte twee jaar geleden met een project om richtlijnen uit te werken rond de implementatie van het objectgeoriënteerd programmeren van PLC’s. De richtlijnen van PLCopen genieten een brede erkenning in de wereld van automatisering. Door functieblokken, bijvoorbeeld, steeds op een systematische manier te programmeren ontstaan programma’s die makkelijker te beheren zijn omdat het resultaat minder afhankelijk wordt van de voorkeuzen en zienswijze van een specifieke programmeur. Hierdoor kunnen onderdelen van programma’s ook makkelijker hergebruikt worden.

Dat laatste is ook een van de meest uitgesproken voordelen van objectgeoriënteerd programmeren, dus was het ook niet meer dan logisch dat PLCopen die methode zou omarmen. Het objectgeoriënteerd programmeren is al sinds 2013 opgenomen in de IEC 61131-3 standaard. Onder meer de convergentie tussen OT en IT leiden er toe dat de methode steeds meer aandacht krijgt in de wereld van automatisering. Maar het zijn ook net al die invloeden van IT die de noodzaak verhogen om de methode op een systematische manier te implementeren.

In het artikel PLCopen implementeert object georiënteerd programmeren van PLC’s gaven we destijds al een situering van wat objectgeoriënteerd programmeren kan betekenen in de wereld van PLC’s. Een van de kernideeën hierbij is dat programma’s op een meer modulaire manier worden opgebouwd waarbij instanties van objecten de vertaalslag maken van de methodes die in het programma gebruikt worden naar het beheer van de directe variabelen dat in de objecten gebeurt.

Het gevolg hiervan kan bijvoorbeeld zijn dat een PLC programma nauwelijks nog gewijzigd moet worden indien men besluit om andere drives te gebruiken in een machine, precies omdat de methodes dezelfde blijven en er enkel een ander object gecreëerd moet worden dat de vertaalslag naar de hardware maakt. In de richtlijnen van PLCopen wordt in dat verband bijvoorbeeld ingegaan op het gebruik van inheritance – een methode in objectgeoriënteerd programmeren die gebruikt kan worden om een hiërarchie in classes te creëren zodat men bij meerdere drives de gemeenschappelijke methodes en variabelen in een hoger gelegen klasse kan definiëren waar de klasses voor de verschillende drives dan van afgeleid worden.

De eerste versie van “PLCopen Guidelines for usage of Object-Oriented Programming” is te downloaden via plcopen.org/node/90?file=612

© Productivity.be, 01/12/2021


Feel free to share

Newsletter

News

Emerson’s New Comprehensive Automation Platform Empowers Decisive Action from Plant to Enterprise

Three trends set to drive cyber-attacks in 2024

Apptronik and Mercedes-Benz Enter Commercial Agreement

The All Electric Society Arena points the way to a carbon-neutral industrial society

Machine manufacturers showcasing security solutions for digital grinding processes at GrindingHub

New Level and Flow Controller Reduces Complexity in Water and Wastewater Applications


Agenda

27/03 - 28/03: Design to Manufacturing (D2M), Kortrijk Xpo (B)

15/04 - 19/04: Wire/Tube, Düsseldorf (D)

22/04 - 26/04: Hannover Messe, Hannover (D)

14/05 - 16/05: Advanced Manufacturing, Antwerp Expo (B)

15/05 - 16/05: Advanced Engineering, Antwerp Expo (B)

15/05 - 16/05: Food Tech Event, Brabanthallen, 's-Hertogenbosch (Nl)

28/05: Industrie & Maintenance, Namur Expo (B)

05/06 - 06/06: Vision, Robotics & Motion, Brabanthallen, 's-Hertogenbosch

10/06 - 14/06: ACHEMA, Frankfurt am Main (D)

18/09 - 19/09: Kunststoffen, Brabanthallen 's-Hertogenbosch (Nl)

08/10 - 11/10: Motek, Stuttgart (D)

15/09/25 - 19/09/25: Schweissen & Schneiden, Messe Essen (D)

08/10/25 - 15/10/25: K, Düsseldorf (D)