categorieën: Domotica, Programmeerbare controllers
Aantal keer bekeken: 28074
Reacties op het artikel: 0
Functionele blokdiagramtaal (FBD) en de toepassing ervan
Een van de populaire PLC-programmeertalen - programmeerbare logische controllers, is de grafische taal van functionele blokdiagrammen FBD - Functieblokdiagram. Deze taal, samen met andere talen van IEC 61131-3, zoals bijvoorbeeld ladder logic language (LD), gebruikt in zijn architectuur een soort elektronisch circuit.
Een programma dat in deze taal voor de controller is geschreven, bestaat uit een bepaalde lijst met circuits die van boven naar beneden worden uitgevoerd. Bovendien is er de mogelijkheid om labels toe te wijzen aan individuele ketens, in dit geval zal het gebruik van instructies om naar het label te gaan beschikbaar zijn om de volgorde van uitvoering van ketens te wijzigen en voorwaarden en cycli te creëren.

Een programma geschreven in de grafische taal FBD is dus een set functionele blokken die met elkaar zijn verbonden, waarvan de uitgangen en ingangen zijn verbonden door communicatielijnen. Communicatielijnen weerspiegelen bepaalde programmavariabelen waarmee gegevens van blok tot blok worden uitgewisseld.
Een afzonderlijk blok heeft een specifieke functie (logisch "en", "niet", teller, etc.), terwijl een blok meerdere uitgangen en ingangen kan hebben. Aanvankelijk worden de waarden van de variabelen ingesteld door constanten of via speciale ingangen, en hun uitgangen worden verder verbonden met andere programmavariabelen of met de uitgangen van de PLC.
De afbeelding toont een voorbeeldprogramma geschreven in de functionele blokdiagramtaal FBD. Zoals u kunt zien, weerspiegelt dit beeld van het programma heel duidelijk het algoritme, waardoor deze taal vrij eenvoudig en handig is voor het ontwikkelen van software voor PLC's.
Tijdens het programmeren in de FBD-taal worden zowel standaardblokken uit bibliotheken als blokken geschreven in FBD of in andere talen van de IEC 61131-3-standaard gebruikt. Een blok is een programma-element, een soort subprogramma, een functieblok of -functie (logisch "NIET", "OF", "EN", timer, teller, trigger, wiskundige bewerking, verwerking van een analoog signaal, enz.).
Van deze blokken zijn de uitdrukkingen die de ketens vormen grafisch samengesteld: het volgende blok is verbonden met de uitgang van een blok, dan een ander blok, en zo worden de ketens gevormd. In de loop van het circuit komt de volgorde van uitvoering van de blokken overeen met de volgorde van hun verbinding, en het resultaat van de uitvoering van het circuit wordt ofwel naar de PLC-uitgang gevoerd of naar een interne variabele geschreven.

Beschouw een stukje van het programma geschreven in de FBD-taal: vermenigvuldig met 4, deel vervolgens door A en schrijf het resultaat in het variabele resultaat. In pseudocode ziet het er zo uit: resultaat: = B * 4 / A. Het is ook mogelijk om speciale besturingsingangen EN- en ENO-uitgangen aan de blokken toe te voegen om de oproepen van afzonderlijke blokken te besturen: een logische nul die op de EN-ingang wordt toegepast, verbiedt de oproep van dit blok en de ENO-uitgang meldt het in geval van een fout en onderbreekt daarmee de uitvoering van het circuit tot het einde .
Zoals u kunt zien, is de FBD-taal buitengewoon visueel, handig en daarom gemakkelijk te leren, zelfs door toepassingsspecialisten die geen speciale training in informatica hebben. De code wordt opeenvolgend uitgevoerd, de structuur van de opdrachten in de code is eenvoudig, daarom wordt het programma zeer snel uitgezonden en de taak betrouwbaar uitgevoerd.

Er zijn verschillende wijzigingen in de FBD-programmeertaal, gekenmerkt door de aanwezigheid van bepaalde beperkingen of uitbreidingen.
Er is bijvoorbeeld een variant van FBC die het gebruik van pure functies mogelijk maakt met slechts één uitgang zonder tussenliggende variabelen - een aanpassing voor functionele programmering.
Of een wijziging van CFC (Continuous Function Chart), waarmee u de volgorde van de uitvoering van de grafiek niet alleen door een sequentiële keten, maar naar goeddunken van de softwareontwikkelaar kunt instellen. Met CFC krijgt de ontwikkelaar meer vrijheid, hoewel de code langer is.
Zie ook over dit onderwerp:PLC-programmeertalen en CoDeSys automatiseringssoftwareplatform
Zie ook op electro-nl.tomathouse.com
: