1 / 43

Kauno Technologijos Universitetas

Kauno Technologijos Universitetas. VALDIKLI Ų PROGRAMAVIMAS IEC 61131 STANDARTO KALBOMIS Laura Osta ševičiūtė. IEC 61131-3 “ Geriausia, kas gal ėjo nutikti pramonės valdyme ” Sugar Lantic. IEC 61131 Standar to dalys. Bendroji informacija Įrangos reikalavimai ir testai

mikko
Download Presentation

Kauno Technologijos Universitetas

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Kauno Technologijos Universitetas VALDIKLIŲ PROGRAMAVIMAS IEC 61131 STANDARTO KALBOMIS Laura Ostaševičiūtė

  2. IEC 61131-3 “Geriausia, kas galėjo nutikti pramonės valdyme” Sugar Lantic

  3. IEC 61131 Standarto dalys • Bendroji informacija • Įrangos reikalavimai ir testai • Programavimo kalbos • Rekomendacijos vartotojams • Pranešimų mainų specifikacijos 7.„Miglotoji logika“ • Techninė ataskaita 2 • Papildymai • Klaidų sąrašas • Techninė ataskaita 3

  4. IEC 61131-3 programavimo kalbos /Pramonės valdymo automatizavimas ... sąvokų ir kalbų standartizavimas, ... pagalba skirtingus įgūdžius turintiems specialistams

  5. Bendrieji elementai Programavimo kalbos IEC 61131-3 Standartas

  6. IEC 61131-3 : Bendrieji elementaiKintamieji & Duomenų tipai • Bendriesiems elementams turi būti nustatomi duomenų tipai • Boolean, Integer, Real, Byte, Word, Date, Time_of_Day ir String • Kintamieji priskiriami tik aiškiems techninės įrangos adresams • Suteikiant kintamiesiems vardus • Padidina programos lankstumą • Absoliučiai nurodant jų vietą valdiklio atmintyje • Tinka ne visiems duomenų tipams

  7. IEC 61131-3 : Bendrieji elementai Programinis modelis • Konfigūracija • Šaltiniai • Uždaviniai

  8. IEC 61131-3 Programinis Modelis Konfigūracija Komunikacijos funkcija

  9. IEC 61131-3 Programinis Modelis Konfigūracija Šaltinis Šaltinis Komunikacijos funkcija

  10. Konfigūracija Šaltinis Šaltinis Uždavinys Uždavinys Uždavinys Uždavinys IEC 61131-3 Programinis Modelis Komunikacijos funkcija

  11. Konfigūracija Šaltinis Šaltinis Uždavinys Uždavinys Uždavinys Uždavinys Programa Programa Programa Programa Komunikacijos funkcija IEC 61131-3 Programinis Modelis Vykdymo kontrolės kelias

  12. Konfigūracija Kintamojo prisijungimo kelias Šaltinis Šaltinis Uždavinys Uždavinys Uždavinys Uždavinys FB Funkcinis Blokas Programa Programa Programa Programa Kintamasis FB FB FB FB Globalūs ir tiesioginiai kintamieji Vykdymo kontrolės kelias Prisijungimo kelias Komunikacijos funkcija IEC 61131-3 Programinis Modelis

  13. Konfigūracija Kintamojo prisijungimo kelias Šaltinis Šaltinis Uždavinys Uždavinys Uždavinys Uždavinys FB Funkcinis Blokas Programa Programa Programa Programa Kintamasis FB FB FB FB Globalūs ir tiesioginiai kintamieji Vykdymo kontrolės kelias Prisijungimo kelias Komunikacijos funkcija IEC 61131-3 vs tradicinius PLC

  14. Begalinisciklas: Šaltinis Uždavinys Skaityti iėjimus Atlikti skaičiavimus Pateikti išėjimus Programa Tradiciniai PLC vs IEC 61131-3 Uždavinys 1 Laikas Uždavinys 2 Įvykiai Uždavinys 3 Įvykiai Uždavinys 4 Laikas

  15. Bendrieji elementai • Duomenų tipai & Kintamieji • Konfigūracija, šaltiniai, uždaviniai • Programos organizaciniai elementai • Funkcijos • Funkciniai Blokai • Programos IEC 61131-3 : Bendrieji Elementai

  16. Funkcijos ….. * Standartinės funkcijos ADD, SQRT, SIN, COS, GT, MIN, MAX, AND, OR, ir tt. • Vartotojo sukuriamos funkcijos: FUNCTION SIMPLE_FUN : REAL VAR_INPUT A, B : REAL; C: REAL := 1.0; END_VAR SIMPLE_FUN := A*B/C; END FUNCTION

  17. Hysterisis REAL XIN1 BOOL Q XIN2 REAL EPS REAL …. & Funkciniai Blokai • Standartiniai Funkciniai Blokai

  18. Hysterisis REAL XIN1 BOOL Q XIN2 REAL EPS REAL …. & Funkciniai blokai • Standartiniai Funkciniai Blokai • Papildomi funkciniai blokai

  19. Hysterisis REAL XIN1 BOOL Q XIN2 REAL EPS REAL …. & Funkciniai blokai • Standartiniai Funkciniai Blokai • Papildomi funkciniai blokai • Vartotojo sukuriami funkciniai blokai

  20. Hysterisis REAL XIN1 BOOL Q XIN2 REAL EPS REAL …. &Funkciniai blokai • Standartiniai Funkciniai Blokai • Papildomi funkciniai blokai • Vartotojo sukuriami funkciniai blokai • Visi FB gali būti pakartotinai naudojamitoje pačioje ar skirtingose programose bei projektuose

  21. Start : BOOL; Emergency : BOOL; Limit : INT; Automation application INPUT EXTERNAL OUTPUT IN_OUT FUNCTION_BLOCK PROGRAM Type Local Type Local GLOBAL INPUT FUNCTION Type Local Programos : hierarchinis dizainas

  22. Bendrieji elementai Programavimokalbos IEC 61131-3 Standartas

  23. IEC 61131: Programavimo kalbos • Tekstinės standarto kalbos: • Komandų sąrašo kalba (angl. „Instruction list IL“) • Struktūrizuoto teksto kalba (angl. „Structured text ST“) • Nuoseklių veiksmų programavimo kalba (angl. „Sequential function chart SFC“) • Grafinės standarto kalbos: • Pakopinė diagrama (angl. „Ladder Diagram LD“) • Funkcinių blokų diagrama (angl. „Function block diagram FBD“) • Nuoseklių veiksmų programavimo kalbos grafinė versija (angl. „Sequential function chart SFC“).

  24. Komandų sąrašo kalba (IL) • Apibūdinimas: • Panaši į mašininio asemblerio kalbą; • Žemo lygio programoms kurti; • Nepriklauso nuo valdiklio procesoriaus, todėl programas lengviau naudoti skirtingų gamintojų valdikliuose.

  25. Komandų sąrašo kalba • Pagrindiniai elementai: • IL programą sudaro nesudėtingos komados; • Komandos rašomos eilutėmis: Žymė: Operatorius/Funkcija OperandasKomentaras • Operatoriai

  26. IL kalbos operatoriai

  27. IL kalbos pavyzdžiai • Neigimas VAR Var1:BOOL:=FALSE; END_VAR LDN FALSE (*TRUE*) ANDN Var1 (*TRUE*) • Skliausteliai LD Var1 (*Var1 reiksmė užkraunama į akumuliatorių *) AND( Var2(* apskaičiuojamas rezultatas skliausteliuose *) OR Var3(* rezultatas skliausteliuose susiejamas su Var1 reikšme*) ) ST Var4(* saugomas rezultatas *) • Sąlyginis operatoriaus vykdymas LD Var1 (* Var1 reiksmė užkraunama į akumuliatorių *) GT 20 (*rezultatas:= TRUE jei jis > 20, kitu atveju - FALSE*) JMPC B2 (*sąlyginis šuolis į B2, jei rezultatas TRUE, kitu atveju – I kitą eilutę*) JMP Tolyn(* besąlyginis šuolis, nepriklausantis nuo akumuliatoriaus rezultato *)

  28. Funkcijos Funkcijos apibrėžimas: FUNCTION UserFun : INT VAR_INPUT FunPar1, FunPar2, FunPar3: INT; END_VAR LD FunPar1 ADD FunPar2 ADD FunPar3 ST UserFun (*Grąžinama reikšmė*) RET END_FUNCTION Funkcijos iškvietimas: VAR FirstFunPar: INT := 10; Part2: INT := 20; Part3: INT := 30; Sum: INT; END_VAR LD FirstFunPar UserFun Part2, Part3 (*Antras iškvietimas: *) UserFun Part2, Part3 ST Sum

  29. Funkciniai blokai VAR Rel, Out: BOOL := 0; (* Įvesties pateikimas; Išvestis *) Time1: TON; (* Std – FB TON turi formalius parametrus *) (* IN, PT (įvestis) ir Q, ET (išvestis) *) Value : TIME ; (*Nustatyti – įvestis *) END_VAR

  30. Struktūrizuoto teksto kalba (ST) • Apibūdinimas • Skirta modeliuoti standartinius informacijos apdorojimo uždavinius • Labai glaustas programuojamo uždavinio formulavimas, • Aiški programos konstrukcija, kuri remiasi komandų blokais, • Galingi konstruktai komandų srauto kontrolei.

  31. Struktūrizuoto teksto kalba • Pagrindiniai elementai • ST programą sudaro daug komandų • Komandą aprašo išraiška • Išraišką sudaro operatoriai ir operandai • Pagrindiniai ST operatoriai: • ( ), <Funkcijos vardas>, (parametrų sąrašas), **, NOT, *,/, MOD, +, -, < , >, <=, >=, =, <>, AND, XOR, OR • Galimi išraiškos operandai: • Konstantės ir kintamieji • Funkcijų arba FB kvietimai • Kitos išraiškos

  32. ST kalbos komandos ir pavyzdžiai

  33. ST kalbos komandos ir pavyzdžiai

  34. Funkcinių blokų diagramų kalba (FBD) • Apibūdinimas • Kilusi iš signalų apdorojimo srities; • Vaizduoja valdymo algoritmą loginių funkcijų schemomis; • skirta kurti tuo pat metu veikiančių elektroninių elementų, tokių kaip sudėtuvai, daugintuvai, stumiamieji registrai ir kt. grandines.

  35. Funkcinių blokų diagramų kalba • Pagrindiniai elementai • Horizontalios linijos • Vertikalios linijos • Kintamieji • Funkcijos ir funkciniai blokai • Grafiniai elementai vykdymo kontrolei: grįžimai ir šuoliai. • Grandinės apskaičiavimas • Apskaičiuoti grandinės elementų įėjimus prieš vykdant elementą. • Grandinės elemento apskaičiavimas nebaigtas, kol apskaičiuojami visi šio elemento išėjimai. • Grandinės apskaičiavimas nebaigtas, kol apskaičiuojami visi visų grandinės elementų išėjimai.

  36. FBD kalbos pavyzdžiai - Loginės ir aritmetinės operacijos pavaizduotos FBD elementais - Grįžtamojo ryšio kintamieji- išvesties parametrų reikšmė gali grįžti į įvesties parametrus toje pačioje grandinėje

  37. Kontaktų plano kalba (LD) • Apibūdinimas • Kilusi iš elektromagnetinių relių sistemų, • Pagrindinis tikslas – panašaus stiliaus valdiklio programa vaizduoti kontaktų ir elektromagnetinių relių grandines.

  38. Kontaktų plano kalba (LD) • Pagrindiniai elementai • Sujungimai • Kontaktai ( -||- ) • Relės ( -( )- ) • Grafiniai elementai vykdymo sekai kontroliuoti • Grafiniai elementai funkcijų ir funkcinių blokų iškvietimui

  39. LD kalbos pavyzdžiai • Loginių operacijų vaizdavimas VarOut := Var1 AND Var2 AND (Var3 ORVar4) • Grįžtamasis ryšys kontaktų plane • Realizuojami per papildomus relių kontaktus • Šuolis kontaktų plane • keicia vykdymo eiga tame paciame POE

  40. Nuoseklių veiksmų programavimo kalba (SFC) • Apibūdinimas • Padeda sudėtingas programas išskaidyti į mažesnius elementus • Skirta vaizduoti programų arba funkcinių blokų vidinei struktūrai • Grafinis ir tekstinis kalbos variantas • Pagrindiniai elementai • Žingsniai • Perėjimai • Ryšiai

  41. Nuoseklių veiksmų grafinis ir tekstinis vaizdavimas INITIAL_STEP Startas: a.raudona(N); END_STEP TRANSITION FROM Startas TO Raud_fazė := TRUE; END_TRANSITION STEP Raud_fazė: a.raudona(N); END_STEP TRANSITION FROM Raud_fazė TO Raudgelt_fazė := Raud_fazė.T>= Raud_laikas END_TRANSITION STEP raudgelt_fazė: . . . END_STEP

  42. Apibendrinimai • Standarto IEC 61131 reikšmė yra didelė bei palieka pakankamai erdvės augimui ir diferenciacijai. • IEC 61131 daro žymų poveikį visai pramoniniovaldymo industrijai. • Tokio plataus taikymo standartas teikia nemažai privalumų vartotojams ir sistemų kūrėjams.

  43. AČIŪ UŽ DĖMESĮ

More Related