categorieën: Beginnende elektriciens, Boeken en videocursussen over elektrotechniek en elektronica, Industrieel elektricien, Programmeerbare controllers
Aantal keer bekeken: 32688
Reacties op het artikel: 5

PLC-programmeertalen en CoDeSys automatiseringssoftwareplatform

 

PLC, programmeertalen en CoDeSys automatiseringssoftwareplatformNeem het eenvoudigste voorbeeld: u moet de pers inschakelen 1 seconde nadat de operator de twee knoppen tegelijkertijd ingedrukt houdt. We garanderen dus dat beide handen van de operator bezig zijn en geven hem de tijd om de gereedheid van de machine te controleren. De eenvoudigste oplossing is om de contacten van beide knoppen in serie te schakelen en een elektronisch relais met een timer te plaatsen. Als de timer aanpassing van de vertragingstijd toestaat, biedt een dergelijk schema enige flexibiliteit van het systeem, maar niet te hoog.

Eventuele aanvullende voorwaarden, bijvoorbeeld de vereiste om de volgorde van het indrukken van knoppen te regelen, brengen ons in een moeilijke situatie - we zullen gedwongen worden om het circuit te veranderen door extra relais te introduceren. Dit is geen moeilijk probleem, op voorwaarde dat een dergelijke behoefte uiterst zelden ontstaat.

Maar in omstandigheden van concurrerende productie, is de tijd die het kost om een ​​nieuw product op de markt te brengen cruciaal en daarom moet, als het gaat om flexibele geautomatiseerde productie, de aanpassing van de apparatuur snel worden uitgevoerd, met minimale kosten.

Een bijkomend probleem is de toename van de complexiteit van het besturingssysteem naarmate de productie zich ontwikkelt en extra functies verschijnen (complicaties van het operatie-algoritme).

Elke automatiseringsspecialist werd ook geconfronteerd met het probleem van het bouwen van een besturingssysteem voor apparatuur in dat vakgebied dat hij niet voldoende kent: het ontbreken van een duidelijke verklaring van het probleem, de opkomst van nieuwe voorwaarden wanneer apparatuur wordt geïntroduceerd, kan het onmogelijk maken om een ​​project succesvol te implementeren.

Het was noodzakelijk om een ​​besturingsapparaat te maken, waarvan het bedieningsalgoritme kon worden gewijzigd zonder het bedradingsschema van het besturingssysteem opnieuw uit te voeren, en als gevolg hiervan ontstond een logisch idee om besturingssystemen te vervangen door "harde" bedieningslogica (een set relais, regelaars, timers, enz.) Door automaten met programmeerbare werklogica. Zo geboren programmeerbare logic controllers (PLC's). Voor het eerst werden PLC's in de Verenigde Staten gebruikt om de assemblage van assemblagelijnen in de auto-industrie te automatiseren (1969).

Omdat de definitie van "programmeerbare logische controller" "programmeerbaar" was, rees de vraag vrijwel onmiddellijk op, hoe de PLC te programmeren?

Algoritmische programmeertalen van computers uit die tijd waren gericht op het oplossen van computerproblemen. Het beroep van programmeur werd als uiterst zeldzaam en moeilijk beschouwd; dergelijke specialisten waren er op geen enkele productielocatie. Een ideale optie zou zijn om circuitschema's van relaismachines automatisch te vertalen in PLC-programma's.

Waarom niet? Dus in de PLC verscheen taal van relaiscontactcircuits (RCS of LD in de Engelse bronnen Ladderdiagram). De technoloog kon het regelcircuit op het display van het PLC-programmeerstation opnieuw tekenen. Natuurlijk werd het diagram niet grafisch weergegeven, maar door middel van voorwaardelijke symbolen.

De hierboven beschreven taak kan bijvoorbeeld als volgt worden geprogrammeerd:

contact relais taal

Links en rechts zien we in een dergelijk programma verticale stroombussen verbonden door horizontale circuits. Circuits kunnen bestaan ​​uit hun contacten en enkele aanvullende elementen (bijvoorbeeld een timer) die parallel of in serie zijn aangesloten. Rechts eindigt elk circuit met een relaisspoel. De contacten van dit relais kunnen op hun beurt aanwezig zijn in andere circuits. Het is dus mogelijk om een ​​redelijk complexe schakeling te maken die qua functionaliteit vergelijkbaar is met een echte relaisschakeling.

De eerste programmeerstations waren zeer omvangrijke apparaten die door meerdere mensen werden vervoerd. Desalniettemin begonnen PLC's actief nog omvangrijkere en vooral relaisautomatiseringskasten te vervangen door "rigide" logica.

Fysiek is een PLC een of meer blokken met een specifieke set uitgangen en ingangen voor het aansluiten van sensoren en actuatoren (zie figuur 1).

De logica van zijn werking wordt beschreven in software en wordt uitgevoerd door de ingebouwde microprocessor. Hierdoor kunnen exact dezelfde PLC's volledig verschillende functies uitvoeren. Om het bewerkingsalgoritme te wijzigen, zijn geen hardwarewijzigingen vereist.

PLC werkingsprincipe

Fig. 1. Het werkingsprincipe van de PLC

De ontwikkeling van elektronica heeft geleid tot de verbluffende miniaturisatie van PLC's. Tegenwoordig zijn er miniatuur programmeerbare controllers uitgerust met een klein display en ingebouwde programmeermogelijkheden, dergelijke controllers worden programmeerbare relais genoemd. Typische taken van programmeerbare relais zijn zeer eenvoudige lokale systemen met maximaal een dozijn ingangen en verschillende vermogensrelaisuitgangen.

Een complexer programma schrijven met de ingebouwde afstandsbediening is niet eenvoudig. Evenzo kunnen we eenvoudig sms-tekst typen op het toetsenbord van een mobiele telefoon, maar zelfs het invoeren van meerdere pagina's tekst, en niet te vergeten grote volumes, lijkt problematisch. Hiervoor zijn er personal computers (pc's) die mensen veel comfortabelere werkomstandigheden bieden.


Eén moderne PLC kan tientallen regelaars, honderden timers en duizenden relais vervangen. Het is helemaal niet moeilijk om een ​​pc te gebruiken om een ​​dergelijk systeem te programmeren. Het gebruik van de pc als een PLC-programmeerstation is tegenwoordig de dominante oplossing. Dit vereenvoudigt niet alleen de programmering, maar lost ook de problemen op van het archiveren van projecten, het voorbereiden van documentatie, visualiseren en modelleren. De computer biedt een handig universeel hulpmiddel voor het programmeren van de eenvoudigste lokale taken op een PLC, evenals voor procesbesturingssystemen.

Houd er rekening mee dat wanneer we het over PLC-programmering hebben, we altijd terugkomen op hoe we dit proces eenvoudig en gemakkelijk kunnen maken voor mensen. Het lijkt erop dat zodra een geprogrammeerde PLC jarenlang zal werken en het niet erg belangrijk is of het programma er mooi uitziet, het belangrijkste is dat het goed werkt.

Helaas is dit niet zo. De noodzaak om het programma in de PLC te wijzigen, komt regelmatig en onverwacht voor. Daarom moet het zo worden geschreven dat elke persoon, niet alleen de auteur, het snel kan begrijpen en snel de nodige verbeteringen kan aanbrengen. Het is niet helemaal correct om te zeggen dat de programma's voor de PLC zijn geschreven.

Alle programma's zijn geschreven door de mens en zijn bedoeld voor menselijk lezen. Alle programmeerhulpmiddelen geven de microprocessor uiteindelijk instructies in zijn machinecodes. Voor hem is er geen verschil in welke taal het programma is geschreven.

Hierboven vermeld LD taal werd uitgevonden in de VS tijdens de periode van relaisautomatisering. De mode voor PLC's kwam iets later in Europa, toen relaiskasten al met succes werden vervangen door kasten met logische circuits. Daarom ontstond de behoefte aan het uitvinden van andere programmeertalen die begrijpelijk zijn voor een nieuwe generatie ingenieurs.

Dus in Duitsland verschenen er talen met eenvoudige tekstinstructies die lijken op assembler (IL). In Frankrijk grafisch functionele blokdiagramtalen (FBD) en diagrammen op hoog niveau die fasen en voorwaarden van overgangen beschrijven (Graphset, moderne SFC). De talen die werden gebruikt voor het programmeren van computers (Pascal, Basic) werden ook gebruikt. Eind jaren zeventig ontwikkelde zich een extreem moeilijke situatie.

Elke PLC-fabrikant (inclusief in de USSR) ontwikkelde zijn eigen programmeertaal, daarom waren PLC's van verschillende fabrikanten software incompatibel, bovendien was er een probleem van hardware incompatibiliteit. Een PLC vervangen door een product van een andere fabrikant is een enorm probleem geworden.De PLC-koper werd gedwongen om de producten van slechts één bedrijf te gebruiken of energie te spenderen aan het leren van verschillende talen en middelen aan het verwerven van geschikte hulpmiddelen.

Als gevolg hiervan werd in 1979, in het kader van de Internationale Elektrotechnische Commissie (IEC), een speciale groep technische deskundigen op het gebied van PLC-problemen opgericht. Ze kreeg de opdracht om standaardvereisten te ontwikkelen voor hardware, software, installatieregels, testen, documentatie en PLC-communicatie.

In 1982 werd de eerste conceptversie van de standaard gepubliceerd, die de naam IEC 1131 kreeg. Vanwege de complexiteit van het resulterende document werd besloten het in verschillende delen op te splitsen, het derde deel van de standaard "PLC-programmeertalen" is gewijd aan programmeerkwesties.

Omdat de IEC sinds 1997 is overgeschakeld naar 5 digitale notaties, is IEC 61131-3 de juiste naam voor de internationale versie van het deel van de norm dat is gewijd aan de PLC-programmeertalen. De IEC-werkgroep heeft een vrij originele beslissing genomen. Uit de hele verscheidenheid aan PLC-programmeertalen die bestonden ten tijde van de ontwikkeling van de standaard, werden 5 talen gebruikt die het meest werden gebruikt.

De taalspecificaties zijn afgerond, zodat het mogelijk werd om een ​​gestandaardiseerde set elementen en gegevenstypen te gebruiken in programma's die in een van deze talen zijn geschreven. Deze benadering van de IEC is meer dan eens bekritiseerd, maar de tijd heeft de juistheid van deze beslissing bewezen.

De implementatie van een dergelijke aanpak maakte het mogelijk om specialisten uit verschillende kennisgebieden (en, wat vooral belangrijk is, van verschillende kwalificaties) aan te trekken om dezelfde PLC te programmeren: relaisautomatiseringsspecialisten (en zelfs elektriciens) programmeren in LD, specialisten op het gebied van halfgeleiderschakelingen en automatische besturing voor wie de gebruikelijke taal is FBD, programmeurs met ervaring in het schrijven van programma's voor computers in assembleertaal (het komt overeen met de IL-taal voor PLC's), in talen op hoog niveau (ST-taal), zelfs die verre van Programmeertechnologen hebben hun programmeergereedschap gekregen - de SFC-taal.

Hoewel de introductie van de IEC-programmeersystemen niet volledig voorbijging aan de diensten van professionele programmeurs (dit doel was echter niet vastgesteld), maar het liet toe de kwalificatievereisten en dienovereenkomstig de arbeidskosten voor PLC-programmeurs te verlagen. De standaardisatie van talen maakte het (althans gedeeltelijk) mogelijk om het probleem van de afhankelijkheid van de PLC-gebruiker van een specifieke fabrikant op te lossen.

Alle moderne PLC's zijn uitgerust met IEC 61131-3 programmeerhulpmiddelen, die het werk van controllergebruikers vereenvoudigen (u kunt PLC's van verschillende bedrijven gebruiken zonder omscholing) en tegelijkertijd een aantal problemen voor PLC-fabrikanten wegnemen (u kunt PLC-componenten van andere fabrikanten gebruiken).

De standaard heeft de kansen op de arbeidsmarkt voor een specialist in PLC-programmering aanzienlijk uitgebreid. Net zoals een automonteur met een standaardset van gereedschappen elk onderdeel (behalve niet-standaard) van een machine van een bedrijf kan repareren, zal een specialist die de talen van IEC 61131-3 heeft bestudeerd, het programma van elke moderne PLC kunnen uitzoeken. Dit maakte het mogelijk om zowel de afhankelijkheid van het bedrijf van de PLC-programmeerspecialist als de specialist van het bedrijf te verminderen.

CoDeSys complex

Vandaag is de leidende positie in de markt voor IEC-programmeersystemen CoDeSys complex Duits bedrijf 3S-Smart Software Solutions GmbH. Het wordt gebruikt door 190 bedrijven wereldwijd, de meeste van deze bedrijven zijn toonaangevende fabrikanten van apparatuur en / of industriële automatiseringssystemen.

In Rusland zijn PLC's met CoDeSys bekend bij specialisten; het assortiment producten dat wordt geproduceerd onder de controle van deze PLC's is enorm. CoDeSys bevat 5 gespecialiseerde editors voor elk van de standaard programmeertalen:

  • Lijst met instructies (IL),

  • Functionele blokdiagrammen (FBD),

  • Relaiscontactcircuits (LD),

  • Gestructureerde tekst (ST),

  • Opeenvolgende functiediagrammen (SFC's).

CoDeSys

Editors worden ondersteund door een groot aantal hulpmiddelen voor het versnellen van programma-invoer. Dit zijn invoerassistent, automatische variabele declaratie, intelligente invoercorrectie, kleuraccentuering en syntaxiscontrole tijdens invoer, schalen, automatische plaatsing en aansluiting van grafische elementen.

In één project kunt u programma's combineren die in verschillende IEC-talen zijn geschreven of een ervan gebruiken. Er zijn geen speciale vereisten voor het kiezen van een taal. Het is uitsluitend te wijten aan persoonlijke voorkeuren.

De meest populaire taal in Rusland is ST. Dit is een teksttaal, wat een enigszins aangepaste Pascal is. De tweede meest populaire grafische taal is FBD, gevolgd door LD. Naast hulpprogramma's voor het voorbereiden van programma's, bevat CoDeSys een geïntegreerde hulpprogramma's voor foutopsporing, emulator, visualisatie en projectbeheer, PLC en netwerkconfigurators.

De belichaming van een ander onverwacht idee, gezamenlijk gegenereerd door CoDeSys-gebruikers, was de vrijwillige associatie van PLC-fabrikanten die CoDeSys ondersteunen in de non-profit organisatie CoDeSys Automation Alliance (CAA). De essentie van het idee is om fabrikanten van industriële automatiseringsproducten die CoDeSys ondersteunen, tot partners te maken (voor zover mogelijk in een competitieve markt) en om de gevolgen van concurrentie tussen fabrikanten voor PLC-gebruikers te neutraliseren.

In plaats van opzettelijk technische obstakels te creëren waardoor gebruikers niet gemakkelijk producten van een ander bedrijf kunnen gebruiken, nemen CAA-leden bewust maatregelen om de compatibiliteit van hun producten te waarborgen.

De gebruiker kan er zeker van zijn dat zijn CoDeSys-applicatie werkt in elke controller van elk bedrijf dat lid is van de CAA. De gebruiker kan er zeker van zijn dat de tools die ze gebruiken (CoDeSys) door duizenden gebruikers over de hele wereld zijn geverifieerd. De gebruiker kan altijd zijn problemen bespreken en echte hulp krijgen van een breed scala aan collega's die ervaring hebben met het oplossen van dergelijke problemen.

Brokarev A.Zh., Petrov I.V. Bedrijf "PROLOGUE"

Zie ook op electro-nl.tomathouse.com:

  • Functionele blokdiagramtaal (FBD) en de toepassing ervan
  • LD-laddertaal en de toepassing ervan
  • ARIES PLC gebruiken in automatische lichtregelsystemen
  • Motorstartdiagrammen in de ladderdiagramtaal LD ​​voor PLC
  • Programmeerbare logische controllers voor domotica

  •  
     
    reacties:

    # 1 schreef: | [Cite]

     
     

    Handig artikel!

     
    reacties:

    # 2 schreef: | [Cite]

     
     

    Wie heeft dit hele verhaal nodig. Geef details !!!

     
    reacties:

    # 3 schreef: | [Cite]

     
     

    Bedankt, het was interessant. En je kent de details in het werk))

     
    reacties:

    # 4 schreef: | [Cite]

     
     

    Schrijf op hoe de afstandsbedieningen voor besturingsrelais zijn geprogrammeerd, die afzonderlijk worden verkocht op AliExpress.

     
    reacties:

    # 5 schreef: | [Cite]

     
     

    Geweldig uiteengezet, gewoon begrijpelijk. Goed gedaan! Bedankt! We willen graag doorgaan met verschillende kwesties en gebieden, elke dag, noodzakelijk.