Kuidas PLC töötab

Aug 06, 2024

Jäta sõnum

Kui programmeeritav loogikakontroller käivitatakse, jaguneb selle tööprotsess üldiselt kolmeks etapiks, nimelt sisendi diskreetimine, kasutajaprogrammi täitmine ja väljundi värskendamine. Ülaltoodud kolme etapi läbimist nimetatakse skannimistsükliks. Kogu tööperioodi jooksul täidab programmeeritava loogikakontrolleri CPU korduvalt ülaltoodud kolme etappi teatud skannimiskiirusega.
Sisendproovide võtmine
Sisend diskreetimisfaasis loeb programmeeritav loogikakontroller skaneerimisel järjestikku kõik sisendolekud ja andmed ning salvestab need vastavatesse ühikutesse I/O kujutise alas. Kui sisendi diskreetimine on lõpetatud, siseneb see kasutajaprogrammi täitmise ja väljundi värskendamise etappi. Nendes kahes etapis, isegi kui sisend olek ja andmed muutuvad, ei muutu I/O kujutise ala vastavate üksuste olek ja andmed. Seega, kui sisendiks on impulsssignaal, peab impulsssignaali laius olema suurem kui üks skaneerimistsükkel, et tagada sisendi lugemine igal juhul.
Kasutajaprogrammi täitmine
Kasutajaprogrammi täitmise etapis skannib programmeeritav loogikakontroller alati kasutajaprogrammi (redeldiagrammi) järjestikku ülalt alla. Iga redelskeemi skaneerimisel skannitakse alati esmalt redelskeemi vasakpoolsetest kontaktidest koosnev juhtahel ja kontaktidest koosnev juhtahel toimib loogiliselt järjekorras vasak esimene, parem teiseks, ülemine esimene, alumine sekund. Seejärel värskendatakse vastavalt loogilise operatsiooni tulemusele süsteemi RAM-i salvestusalal loogikapooli vastava biti olekut; või värskendatakse väljundmähise vastava biti olekut I/O kujutise piirkonnas; või määratakse, kas täita redeldiagrammiga määratud erifunktsiooni käsk.
See tähendab, et kasutajaprogrammi täitmise ajal ei muutu ainult sisendpunkti olek ja andmed I/O kujutise alas, samas kui teiste väljundpunktide ja pehmete seadmete olek ja andmed I/O pildipiirkonnas või süsteemi RAM-i salvestusala võib muutuda ja ülaltoodud redeldiagrammi programmi täitmise tulemused mõjutavad kõiki allpool paigutatud redelskeeme, mis neid mähiseid või andmeid kasutavad; vastupidi, allpool järjestatud redeldiagrammi värskendatud loogikapoolide olek või andmed saavad selle kohale paigutatud programmile mõjuda ainult järgmises skannimistsüklis.
Kui programmi täitmise ajal kasutatakse vahetut I/O-käsku, pääseb I/O-punktile otse juurde. Kui kasutatakse I/O käsku, siis sisendprotsessi kujutise registri väärtust ei uuendata. Programm võtab väärtuse otse I/O moodulist ja kohe uuendatakse väljundprotsessi kujutiste registrit, mis erineb mõnevõrra kohesest sisendist.
Väljundi värskendamine
Pärast kasutajaprogrammi skannimist siseneb programmeeritav loogikakontroller väljundi värskendamise faasi. Sellel perioodil värskendab protsessor kõiki väljundi lukustusahelaid vastavalt sisend-väljundi kujutise ala vastavale olekule ja andmetele ning juhib seejärel vastavad välisseadmed läbi väljundahela. Praegu on see programmeeritava loogikakontrolleri tegelik väljund.