Kategorijas: Mājas automatizācija, Programmējami kontrolieri
Skatījumu skaits: 28074
Komentāri par rakstu: 0

Funkcionālā blokshēmas valoda (FBD) un tās pielietojums

 

Viena no populārākajām PLC programmēšanas valodām - programmējamiem loģiskajiem kontrolleriem - ir funkcionālo bloku diagrammu FBD - Function Block Diagram - grafiskā valoda. Šī valoda kopā ar citām IEC 61131-3 valodām, piemēram, piemēram kāpņu loģikas valoda (LD), savā arhitektūrā izmanto sava veida elektronisko shēmu.

Programma, kas šajā valodā uzrakstīta kontrolierim, sastāv no noteikta to ķēžu saraksta, kuras tiek izpildītas viena pēc otras no augšas uz leju. Turklāt pastāv iespēja atsevišķām ķēdēm piešķirt etiķetes, šajā gadījumā būs pieejamas instrukcijas, lai pārietu uz etiķeti, lai mainītu ķēžu izpildes secību un izveidotu apstākļus un ciklus.

Funkciju bloka diagrammas valoda (FBD)

Tādējādi grafiskajā valodā FBD rakstītā programma ir funkcionālu bloku komplekts, kas savienoti viens ar otru, kuru izejas un ieejas ir savienotas ar sakaru līnijām. Sakaru līnijas atspoguļo noteiktus programmas mainīgos, caur kuriem notiek datu apmaiņa no bloka uz bloku.

Atsevišķs bloks veic noteiktu funkciju (loģiski “un”, “nav”, skaitītājs utt.), Savukārt vienam blokam var būt vairākas izejas un ieejas. Sākotnēji mainīgo lielumus nosaka ar konstantes vai no īpašām ieejām, un to izvadi tiek savienoti tālāk ar citiem programmas mainīgajiem vai ar PLC izejām.

Attēlā parādīts programmas piemērs, kas uzrakstīts funkcionālās blokshēmas valodā FBD. Kā redzat, šis programmas attēls ļoti skaidri atspoguļo algoritmu, kas padara šo valodu diezgan vienkāršu un ērtu programmatūras izstrādei PLC.

Programmēšanas laikā FBD valodā tiek izmantoti gan standarta bloki no bibliotēkām, gan bloki, kas rakstīti FBD vai citās IEC 61131-3 standarta valodās. Bloks ir programmas elements, sava veida apakšprogramma, funkciju bloks vai funkcija (loģiski “NAV”, “VAI”, “UN”, taimeris, skaitītājs, sprūda, matemātiska darbība, analogā signāla apstrāde utt.).

No šiem blokiem izteicieni, kas veido ķēdes, tiek grafiski apkopoti: nākamais bloks ir savienots ar viena bloka izvadi, tad vēl viens bloks, un tā veidojas ķēdes. Ķēdes laikā bloku izpildes secība atbilst to savienojuma secībai, un ķēdes izpildes rezultāts tiek vai nu padots PLC izvadei, vai arī ierakstīts kādam iekšējam mainīgajam.

Funkciju bloki

Apsveriet kādu programmas daļu, kas uzrakstīta FBD valodā: Reiziniet ar 4, tad daliet ar A un ierakstiet rezultātu mainīgajā rezultātā. Pseidokodā tas izskatīsies šādi: rezultāts: = B * 4 / A. Blokiem ir iespējams pievienot arī īpašas vadības ieejas EN un ENO izejas, lai kontrolētu atsevišķu bloku izsaukumus: EN ieejai piemērota nulles loģika liegs izsaukt šo bloku, un ENO izvade ziņos par to kļūdas gadījumā un tādējādi pārtrauks ķēdes izpildi līdz beigām. .


Kā redzat, FBD valoda ir ārkārtīgi vizuāla, ērta, un tāpēc to ir viegli iemācīties pat lietojumprogrammu speciālistiem, kuriem nav speciālas apmācības datorzinātnēs. Kods tiek izpildīts secīgi, komandu struktūra komandā ir vienkārša, tāpēc programma tiek pārraidīta ļoti ātri un uzdevums tiek izpildīts uzticami.

FBD programmēšanas valoda

Ir dažādas FBD programmēšanas valodas modifikācijas, kurām raksturīgi noteikti ierobežojumi vai paplašinājumi.

Piemēram, ir FBC variants, kas ļauj izmantot tīras funkcijas tikai ar vienu izvadi bez starpposma mainīgajiem - modifikācija funkcionālai programmēšanai.

Vai arī CFC (nepārtraukto funkciju diagramma) modifikācija, kas ļauj iestatīt diagrammas izpildes secību ne tikai pēc kārtas, bet pēc programmatūras izstrādātāja ieskatiem. Izmantojot CFC, izstrādātājs iegūst lielāku brīvību, lai gan kods ir garāks.

Skatīt arī par šo tēmu:PLC programmēšanas valodas un CoDeSys automatizācijas programmatūras platforma

Skatīt arī vietnē i.electricianexp.com:

  • LD Ladder valoda un tās pielietojums
  • PLC programmēšanas valodas un CoDeSys automatizācijas programmatūras platforma
  • Motora palaišanas diagrammas kāpņu diagrammu valodā LD PLC
  • Kravas lifta elektriskās ķēdes modernizācijas piemērs, izmantojot ...
  • Video kurss par darbu ar kontroliera PLC110 Auns CODESYS2.3 vidē

  •