Programmeeritav kontroller
Programmeeritavate kontrollerite rakendamine
Automatiseeritud töömasina juhtimissüsteemi kõige olulisemad osad on programmeeritav kontroller (PLC) ja selle juhtimisprogramm (kasutaja programm).
Iga automatiseeritud süsteem või masin omab kontrollerit. Sõltuvalt kasutatavast tehnoloogiast saab kontrollerid jagada pneumaatilisteks, hüdraulilisteks, elektrilisteks ja elektroonilisteks kontrolleriteks. Tihti kasutatakse nende kombinatsioone. Tehakse vahet riistvaraliselt (nt elektro-mehaaniline) ja tarkvaraliselt programmeeritavatel kontrolleritel. Esimest kasutatakse juhtudel, kus töömasina mistahes ümber-programmeerimine ei tule kõne allagi ja töö nõuab spetsiaalse kontrolleri väljatöötamist.
Kui aga teostatav töö ei nõua spetsiaalse kontrolleri väljatöötamist või kui kasutaja peab tegema programmis muudatusi, siis eelistatakse kasutada universaalset kontrollerit, mille programm salvestatakse elektroonilisse mällu. PLC on selline universaalne kontroller, millega saab süsteemi (protsesse) või töömasina funktsioone automaatselt juhtida aktiveerides neid loogilises järjekorras.
PLC algne ülesanne oli sisendsignaalide ühendamine vastavate väljunditega kindlaksmääratud programmi järgi. Binaaralgebra moodustab matemaatilise baasi selle operatsiooni (tehte) jaoks, mis tunnistab täpselt muutuja kahest määratletud olekust 0 ja 1 ainult ühte. Seega saab PLC väljund omada ainult neid kahte olekut.
Tänapäeva PLC ülesannete hulk on märgatavalt suurenenud: kontrollerid on võimelised teostama taimerite ja loendurite funktsioone, mälu väärtuste seadmist ja lähtestamist (nullimine), kõiki matemaatilised arvutusi.
Standard IEC 61131 defineerib PLC kui:
Digitaalselt toimiv elektrooniline süsteem, mis on mõeldud kasutamiseks tööstuslikus keskkonnas,
mis kasutab kasutaja juhiste ja funktsioonide nagu loogika, järjestus, ajastus, loendus ja aritmeetika
salvestamiseks programmeeritavat mälu ning kontrollib läbi digitaal- või analoogsisendite ja -väljundite
mitmesuguseid masinaid või protsesse. Nii PLC kui ka sellega seotud välisseadmed on projekteeritud nii,
et neid saab hõlpsasti integreerida tööstusliku juhtimissüsteemi ning neid saab kargelt kasutada
kavandatud funktsioonide teostamiseks. [3]
PLCle esitatavad juhtimise, visualiseerimise ja üksiksüsteemide sidumise nõudmised üha kasvavad. Mitmed PLCd ühendatakse ühte võrku spetsiaalse andmeside liideste abil.
70. aastate lõpus täiendati PLCd. Olemasolevate binaarsete sisendite ja väljundite kõrvale lisati analoogsed sisendid ja väljundid. Paljud tänapäeva tehnilised rakendused vajavad analoogsignaalide töötlemist, mis võimaldab võrrelda suuruste etteantud analoogväärtusi tegelike mõõdetud analoogväärtustega.
Praegu turul pakutavad PLCd on kohandatud kliendi kasvanud nõudmistele ja on kasutatavad peaaegu igas rakenduses. Paljusid PLCd saab laiendada näiteks digitaal/analoog sisend/väljundmoodulitega, positsioneerimis- ja andmesidemoodulitega. Erilised PLCd on saadaval ohutustehnoloogia, laevandus- ja kaevandusülesannete jaoks. Peale selle on PLCd võimelised töötlema mitut programmi korraga ja on ühendatavad teiste automaatika komponentidega, kattes laia osa tootmise automatiseerimise rakendusest.
Programmeeritava kontrolleri riistvara
PLC on lühend kontrollerile, millega tähistatakse arvutit, mis on seotud töömasina andurite ja täituritega ning mis on kohandatud teatud tüüpi juhtimisülesannete jaoks. Lihtne PLC koosneb toite-, keskjuhtimis- ja signaalimooduli(te)st.
Toitemoodul (PS) varustab PLCd toitepingega, mis saadakse 120/230 V vahelduvvooluvõrgust (AC) või 24 V alalisvooluvõrgust (DC). Mõned PLCd ei vaja oma koosseisu toitemoodulit kui keskjuhtimismoodul saab 24 V DC toitepinge välisest toiteallikast (PLC saab elektrit eraldi toiteklemmide kaudu).
Keskjuhtimismoodul (CPU) on PLC aju mis töötleb automatiseeritud protsessi või masina juhtimisprogrammi, mis on salvestatud sisseehitatud programmimälusse. Peale juhtimisprogrammi töötlemist määrab CPU teiste PLCs olevate moodulite parameetreid, haldab andmesidet programmeerimisseadmega, PLC laiendusmoodulitega, teiste PLC(de)ga ja/või teiste seadmetega nagu näiteks operaatoripaneel. Keskjuhtimismoodul võib omada eraldi toitesisendit, mälulaienduspesa (SD kaardi jaoks) ja andmesideliidest.
Keskjuhtimismoodulil on spetsiaalne lüliti PLC töörežiimi valikuks. Praegused Siemensi PLCd omavad kaht töörežiimi: TÖÖ (RUN) režiim kasutaja programmi täitmiseks, ja STOPP (STOP) režiim, mil kasutaja programmi täitmine on peatatud. Mõlema töörežiimi ajal saab PLCst laadida üles programmeerimisseadmesse (personaalarvuti) või sealt alla PLCsse masina juhtimisprogrammi. Vanad Siemensi PLCd omasid ka kolmandat töörežiimi, mida kutsuti TÖÖ-P (RUN-P) režiimiks. Selliste PLCde puhul sai kasutaja laadida programme üles ainult STOPP või TÖÖ-P režiimis. TÖÖ režiimis täideti ainult kasutaja programmi ja samas ei saanud kasutaja programmi muuta (TÖÖ-P režiimis sai seda teha).
Signaalimoodulid (SM) on sisend-väljundmoodulid (I/O) digitaal- (DI, DO) ja analoogsignaalide (AI, AO) jaoks, mis tulevad anduritest kontrollerisse või lähevad sealt lülititesse, täituritesse ja teistesse seadmetesse. Signaalimoodul teisendab saabuvad signaalid niisugusesse vormi, mida PLC suudab töödelda ning toimetab vastupidiselt väljuvate signaalidega. Enamasti kasutavad digitaal-signaalimoodulid oma töös 24 V DC ja 120/230 V AC pinget. Analoog-signaalimoodulite juures on kasutusel alalispinge väärtusega kas ±10 V, 0 – 10 V või 1 – 5 V ja alalisvool väärtusega kas 4-20 mA või 0- 20 mA. Digitaal-väljundmoodulitest väljuvate signaalide muutmiseks on kasutusel optronid, transistorid ja releed, mis peavad kaitsma signaalmoodulit lühise, ülepinge ja ülekoormuse eest. Releedega saab lülitada erinevaid pingeid (DC ja AC) ja suuremaid voole kui transistoridega, kuid relee lubatud lülituste arv on tunduvalt väiksem kui transistoril. Üks digitaal-signaalimoodul võib omada 8, 16 või 32 sama tüüpi sisendit ja/või väljundit ning analoog-signaalimoodul kuni 2, 4, 6 või 8 sama tüüpi sisendit ja/või väljundit.
Peale eespool loetletud moodulite võib PLC omada veel kassetti/siin (millesse ehitatud andmeside siiniga ühendatakse PLC moodulid); liidesmoodulit (IM), mis ühendab mitmed eraldiseisvad kassetid üheks PLCks; funktsioonimoodulit (FM), mis tegeleb keeruliste või aeg-kriitiliste protsessidega CPUst sõltumatult (nt kiire loendamine, PID- ja positsioonjuhtimine), andmeside moodulit (CP), mis ühendab PLC tööväljasiiniga (nt Industrial Ethernet, PROFIBUS, ASi liides), jadaühendusmooduleid, kasutajaliidese 16 moodulit (nt operaatoripaneel); hajutatud sisend-väljund mooduleid; kiiretoimelisi signaalimooduleid.
Iga PLC moodul omab lihtsat kasutajaliidest andmeside, patarei, I/O, PLC operatsiooni jne olekute ning vigade näitamiseks. Kasutatakse ka väikseid vedelkristallekraane (LCD) või valgusdioode (LED).
Joonisel 2.1 on kujutatud Siemens S7-300 kontrolleri koosseis [4]. PLC esimeses pesas peab olema PS, teises pesas CPU ja kolmandas pesas IM. Antud moodulite järjekorda Siemensi PLCs ei saa muuta. Nendele järgnevad (alates neljandast pesast) SM, FM ja CP moodulid (neid võib ühel siinil olla kokku 8 tükki). Nende moodulite omavaheline järjestus pole oluline. Üks Siemensi S7-300 PLC võib koosneda neljast eraldi seisvast siinist ja igal siinil võib olla kuni 11 moodulit.
Mõned Siemens PLCd ei vaja vahetult protsessorimooduli kõrvale toitemoodulit, kui automatiseeritud süsteem omab eraldi 24 V DC toiteseadet, mille väljund on ühendatud CPUga. Samuti võib loobuda IM moodulist, kui PLC kasutab ainult ühte siini.
Mõne firma PLCde juures pole CPU ja toitemoodulite omavaheline asetus oluline. Näiteks Allen-Bradley CompactLogix PLCs võib PS paikneda siinil erinevas pesas (enne PS võib paikneda kuni 4 moodulit), kuid CPU peab paiknema esimeses pesas.
PLC tüübid
Sõltuvalt sellest, missugune on CPU mooduli ehitus ja kuidas see on ühendatud teiste moodulitega, saab PLC jagada järgmisteks tüüpideks: kompaktne PLC, moodul-PLC, kassett-PLC, operaatorpaneeliga PLC, tööstusarvuti, kaart-PLC ja tarkvaraline PLC.
Kompaktses PLCs on CPU, PS ja SM paigutatud ühte väikesesse korpusesse. Sellisel PLC-l on kindel arv digitaal I/Osid (mitte üle 30), üks või kaks andmesideliidest (üks PLC programmeerimiseks ja teine tööstusandmesideks) ning HMI liides. Kompaktse PLCga saab ühendada lisamooduleid sisendite-väljundite arvu suurendamiseks. Lisamoodulid paiknevad samasuguses korpuses nagu kompaktne PLC [5].
Kompaktseid PLCsid kasutatakse automatiseerimisel releede asendusena. Üks PLC ei maksa rohkem kui käputäis releesid. Selle programmeerimine on sama paindlik kui juhtmetega releeskeemi koostamine. Sellist tüüpi PLC nõrgaks küljeks on vähene mälu programmi ja andmete jaoks, nõrk protsessori jõudlus, taimerite ja loendurite väike arv ning mõned puuduvad andmetüübid (nt komakohaga arv, string). Kallimad kompakt- PLCd omavad samu funktsioone nagu teised PLCd. Nende ainsaks puuduseks on kindel arv I/Osid.
Moodul-PLC on võimsam ja omab rohkem funktsioone kui kompakne PLC. Tema osad nagu näiteks CPU, SP, SM, servo-mootori juhtimismoodul, positsioneerimismoodul, CP moodul paiknevad eraldi korpustes. Moodul-PLC osad paigutatakse DIN-liistule või spetsiaalse kujuga kinnitusliistule ning need suhtlevad CPUga läbi sisese siinisüsteemi. Siinisüsteem võib olla üks osa CPUst, omada eraldi korpust või olla lamekaabel. Siinisüsteemi pesade arv on piiratud, kuid seda saab laiendada kasutades spetsiaalseid siinisüsteemi mooduleid (nt IM). Seega saab moodul- PLC koostada erinevatest moodulitest nii nagu automatiseeritav masin või protsess seda nõuab.
Võrreldes kompakt-PLCga on moodul-PLC võimeline kasutama suuremal arvul sisendeid ja väljundeid, toetab suuri tööprogramme, suurte andmemahtude salvestamist ning on võimeline lahendama mitut erinevat ülesannet (tööprogrammi) korraga.
Moodul-PLC kasutatakse tänapäeval järgmiste ülesannete jaoks: masina automaatjuhtimine, -reguleerimine, positsioonjuhtimine, arvutamine, andmete töötlemine ja haldus, andmeside, jälgimine, veebi-server jne [5]. Moodul-PLC alla kuuluvada Siemensi S7-300 ja Allen-Bradley CompactLogix PLC (joonis 2.3).
Kassett-PLC omab peaaegu samu funktsioone ja võimalusi kui moodul-PLC. Ainuke erinevus seisneb kassetis või siinis, kuhu PLC moodulid paigutatakse. Kassett-PLCs kasutatav kassett omab pesasid PLC moodulite jaoks ja sisest siinisüsteemi, mis on integreeritud tagaseina ning mis võimaldab vahetada informatsiooni eri moodulite vahel. PLC moodulid omavad esipaneeli koos HMIga, nende korpuse tagumises osas on pistikud. Kassett-PLC eelisteks on kiirem andmeside PLC moodulite vahel ja moodulite kiirem toimimine [5].
Nagu operaatorpaneeliga PLC (OPLC) nimi juba ütleb, omab antud seade lisaks kontrollerile ka HMI liidest automatiseeritud protsesside või masinate juhtimiseks ja nende töö jälgimiseks. HMI osa koosneb enamasti ekraanist ja klaviatuurist või puuteekraanist. HMI ekraan võib olla tekstipõhine või graafiline. Sellise süsteemi eeliseks võrreldes tavalise PLCga, mis kasutab eraldiseisvat operaatorpaneeli, on see, et operaatorpaneeli ei pea eraldi programmeerima. Süsteemi juhtimisprogramm ja HMI liides koostatakse ühes tarkvarakeskkonnas. See aitab kokku hoida süsteemi arendamise aega. OPLC alla kuuluvad Unitronics M-90 ja Vision (joonis 2.5).
Tööstusarvuti on tavaline personaalarvuti, millesse on integreeritud PLC funktsionaalsus. PLC osa antud süsteemis võib põhineda riistvaral (kaart-PLC) või tarkvaral (virtuaalne PLC). Tööstusarvuteid kasutatakse keskmistes või suurtes automatiseerimisrakendustes, kus on oluline kiire protsessijuhtimine, kiire andmete kogumine ja vahetus koos OPC ja/või SQL serveritega (paigaldatud tööstusarvutisse), süsteemi hea jälgitavus ning selle pikk eluiga. Enamikel juhtudel kasutab tööstusarvuti andmesidet automatiseeritud protsesside ja/või masinate juhtimiseks. Samas võib omada sisseehitatud I/Osid ja teisi PLC mooduleid.
Tööstusarvuti oluliseks puuduseks on see, et teatud aja möödudes pole võimalik saada varuosi (nt mälu, protsessor, videokaart jne). See tähendab, et tootmises on uued paremad komponendid ja vanu komponente enam ei toodeta.
Kaart-PLC on spetsiaalne arvutisse paigaldatav kaart, mis omab kõiki tavalise PLC CPU funktsioone. Enamasti paigutatakse see arvuti emaplaadil olevale PCI pessa, mis võimaldab otsest andmevahetust arvutis oleva HMI ja/või teiste tarkvaraliste rakendustega. Kaart-PLCl on vähemalt üks andmesideliides tema ühendamiseks otse tööstuslikku andmesidevõrku (vahetada andmeid hajutatud I/O-dega või muude PLC seadmetega).
Tarkvaraline PLC on virtuaalne PLC, mis töötab tavalises personaalarvutis ja emuleerib riistvaralist kontrolleri CPUd. Automatiseeritud protsesside või masinate juhtimiseks kasutab see arvutis olevaid andmesideliideseid (Ethernet kaart, COM pesa) või arvutisse asetatavaid spetsiaalseid andmesidekaarte suhtlemaks hajutatud I/Odega ja teiste automaatseadmetega. Tarkvaralise PLC puuduseks on lisamälu puudumine andmete salvestamiseks. Toitepinge katkemisel (kadumisel) kaotatakse kõik protsessi juhtimisandmed, kuid sellest saab üle energiasalvestiga. Lisaks on arvuti operatsioonisüsteemi vahetumisel oht, et tarkvaraline PLC ei tööta uues süsteemis. Peale selle puudub garantii, et tarkvaralise PLCga samal ajal töötavad teised tarkvaralised rakendused (HMI või OPC server) ei mõjuta PLC tööd (nt protsessi juhtimise kiiruse vähenedamine, andmeside katkestused jne).
Tööstusarvutite alla kuuluvad Siemens kassett-tööstusarvuti (paigutatav 19 tollise kasseti sisse), tavaline tööstusarvuti ja tööstusarvuti operaatorpaneeliga (joonis 2.6). Tarkvaralise PLCna pakub Siemens SIMATIC WinAC RTX, mis vajab arvuti jaoks spetsiaalset andmeside võrgukaarti.
PLC poolt töödeldavad signaalid
Automatiseeritud protsessis mõõdetakse füüsikalisi suurusi nagu temperatuur, rõhk ja elektripinge. Samas PLC mõistab ja annab välja ainult elektrilisi signaale. Seetõttu vajavad signaalimoodulid füüsikaliste suuruste väärtuste vastuvõtmiseks ja väljasaatmiseks signaali muundureid. PLC puhul eristatakse kolme tüüpi signaale, millega ta on võimeline töötama: binaar-, digitaal- ja analoogsignaalid [6].
Binaarsignaal on 1 bitt signaal, mis omab ainult kahte väärtust (signaali olek 0 – madal, vale, ja signaali olek 1 – kõrge, õige). Binaarsignaali väljastavad näiteks surunupp ja lüliti, kui need ühendada pingestatud vooluahelasse. Normaalselt avatud kontakt (välist jõudu rakendamata püsib selline kontakt avatuna) edastab vooluahelas (loogika) signaali väärtusega 1 siis kui kontakt jõuga sulgeda ja (loogika) signaali väärtusega 0 kui kontakt jälle avada. Elektriseadmetes tuleb siiski arvestada teatud hälvetega. Seetõttu on standardis IEC 61131 määratud pinge väärtuse vahemikud loogika signaalile 0 ja loogika signaalile 1. IEC 61131 määratleb 24 V DC toitepingega kontaktivabade andurite väljundis pingevahemikku -3 - +5 V kui loogika signaali 0 ja pingevahemikku väärusega 11 – 30 V kui loogika signaali 1 (joonis 2.7). 230 V AC puhul annab pingevahemik 0 – 40 V loogilise väärtuse 0 ja pingevahemik 164 – 253 V loogilise väärtuse 1 [7].
Digitaalsignaal on binaarsignaalide jada, mis moodustab ühe terviku. Igat kohta digitaalsignaalis kutsutakse bitiks. Tüüpilised digitaalsignaali vormid on: terta – 4 bitti (ei ole laialdaselt kasutusel), bait – 8 bitti, sõna (word) – 16 bitti, topeltsõna – 32 bitti, topelt pikk sõna – 64 bitti (ei ole laialdaselt kasutusel). Tüüpiline digitaalsignaali kodeerimisseade on digitaalne numbrinäitaja.
Analoogsignaal esitab mingi suuruse (näiteks võimsuse) kohta mõne teise füüsikalise suuruse väärtuse, näiteks pinge 0 - 10 V. Nüüdisaegsed PLCd pole veel võimelised töötlema reaalseid analoogsignaale, seetõttu muundatakse kontrollerisse sissetulev analoogsignaal digitaalsignaaliks ja väljuv digitaalsignaal muundatakse analoogsignaaliks. Signaalimuundamine toimub analoog SMs. Kui digitaalsignaalis kasutatakse rohkem bitte (nt 8 biti asemel 13 bitti), saavutatakse suurem eraldusvõime ja analoogsignaali suurem täpsus. Tüüpilise 0 – 10 V väärtusega analoogsignaali viga võib digitaalsignaaliks muundamise järel olla 0,1 V, 0,01 V või 0,001 V (vastavalt digitaalsignaalis kasutatavate bittide arvule) [8].
Kuidas PLC töötab?
PLC toimib tsükliliselt (joonis 2.8). Iga PLC sisene tsükkel algab PLC sisese hooldustööga nagu mälu haldamine, diagnostika jne [9]. See osa tsüklist tehakse operatsioonisüsteemi abil nii kiiresti, et kasutaja ei märka seda.
Järgmine samm on PLC sisendite pildi ehk protsessikuva uuendamine. SM moodulites mõõdetakse sisendite väärtused ja muudetakse binaar- või digitaalsignaalideks. Need signaalid saadetakse sisese siinisüsteemi kaudu CPUsse ja salvestatakse sisendite andmemälus (sisendite protsessikuva). Peale seda hakkab CPU täitma programmimälus olevat kasutaja programmi (korraga täidetakse üht korralduserida), mis on MC7 masinkoodis (sarnaneb Siemens PLC programmeerimiskeelega käsulist) [10]. See tähendab, et kõik teistes PLC programmeerimis keeltes kirjutatud programmid tõlgitakse MC7 keelde enne nende salvestamist PLCsse. Programmi (korralduserea) täitmise käigus määratakse väljundsignaalidele uued väärtused ja need salvestatakse väljundite andmemällu (väljundite protsessikuva).
Viimane samm on väljundite väärtuste uuendamine. Pärast programmi viimase korralduserea täitmist saadetakse väljundite andmemälus olevad binaar- või digitaalsed signaalid SM moodulitesse, kus need muundatakse täituritele arusaadavasse vormi (nt analoogsignaalideks) ja saadetakse sealt edasi täituritele. Kui PLC töötsükkel on läbi saanud, siis PLC alustab uue tsükliga. Nii töötab Siemens S7-300 PLC.
Siemens PLC S7-300 PLC täidab kohe käivituse järel (esimese tsükli kestel) spetsiaalset käivitusprogrammi ,mida nimetatakse külmkäivituseks "cold start" või soekäivituseks "warm start". Peale esimest tsüklit hakkab Siemens PLC täitma (kasutaja) põhiprogrammi. Mõnikord katkestatakse põhiprogrammi täitmine mingi sündmuse toimumise tõttu (nt vajutati hädaavarii nuppu, SM riistvara läks katki või mingi ajavahemiku järel tuleb täita teatud kindlat programmilõiku). Peale katkestuste poolt käivitatud programmi täitmist jätkab PLC jälle põhiprogrammi täitmisega.
Teiste ettevõtete PLC töötsüklid võivad olla teistsuguse ülesehitusega. Nt Allen-Bradley CompactLogic PLCs toimub I/O signaalide väärtuste uuendamine programmi täitmise ajal, mitte enne või pärast seda.
Multitegumtöö
Tänapäeva PLCd on võimelised täitma automatiseeritud protsessi juhtimisel korraga mitut ülesannet. Iga ülesanne võib koosneda mitmest eraldi programmist. Tegelikult täidab PLC iga protsessor korraga ainult üht ülesannet (selle mingit programmi). Kuna protsessorid töötavad väga kiiresti, või kasutajale näida, et PLC täidab mitut ülesannet korraga.
Standard IEC 61131 määratleb ülesannet kui hierarhiliselt kõrgemat juhtimistasandit PLC programmide täitmisel. PLC on võimeline aktiveerima ülesande kas ajaperioodi (kutsutakse perioodiliseks ülesandeks) või sündmuse baasil (kutsutakse mitteperioodiliseks ülesandeks) ning selles mingi kirjutatud programmi (korralduste kogumiku) täitmist [11]. Perioodilisi ülesandeid täidetakse tsükliliselt programmeerija poolt määratud aja möödudes. Mitteperioodilisi ülesandeid täidetakse käimasoleva ülesande koosseisus oleva programmi töös konkreetse sündmuse ilmnemisel (nt mingi andmeelemendi või signaali väärtus muutub 0 → 1).
Tootmisprotsessis multitegumtöö organiseerimisel määrab ülesannete tähtsuse ehk prioriteedi programmeerija. Prioriteedinumbri väärtus algab nullist ja see tähistab kõrgeimat prioriteeti. Suurem prioriteedinumber tähendab täitmisel väiksemat prioriteeti. Kui PLC töös püüavad mitu ülesannet kasutada CPU protsessorit samal ajal, siis määrab ülesande prioriteedinumber esimesena täidetava ülesande. Alustatakse kõige kõrgema prioriteediga ülesande täitmisest ja teised jäävad ootama. Kui mitmel täitmist ootaval ülesandel on sama prioriteet, siis peale eelmise ülesande täitmise lõpetamist (CPU protsessor saab vabaks) alustatakse pikima ooteajaga ülesande täitmist.
Kui mingi programm PLCs ei ole seotud ühegi ülesandega, siis omab see programm kõige madalamat prioriteeti ja seda täidetakse ainult siis, kui protsessor pole hõivatud [5].
Multitegumtöö jagatakse vastavalt ülesande täitmise katkestusele kaheks: eesõiguseta ja eesõigusega multitegumtöö. Eesõiguseta multitegumtöös täidetakse ülesanne lõpuni isegi siis, kui kõrgema prioriteediga ülesanne nõuab täitmist. Järgmisena jätkatakse kõige kõrgema prioriteedi ja pikima ooteajaga ülesande täitmisega. Eesõigusega multitegumtöös täidetakse mingit ülesannet seni, kuni kõrgema prioriteediga ülesanne muutub aktiivseks ja katkestab eelmise ülesande tegevuse. Seega väiksema prioriteediga ülesande täitmine on ooterežiimis seni, kuni kõrgema prioriteediga ülesande tegevus on täidetud. Eesõigusega multitegumtöös sama või väiksema prioriteediga ülesanded ei saa katkestada täidetavat ülesannet. Need peavad ootama kuni käesolev ülesanne on täidetud/lõpetatud. Peale katkestatud ülesande täitmise lõpetamist jätkatakse kõige kõrgema prioriteedi ja pikima ooteajaga ülesande täitmist.
Standard IEC 61131 määrab kindlaks ülesannete täitmise reeglid. Programmeerija peaks neid reegleid teadma [5,11].
- Ülesannet täidetakse, kui see on välja kutsutud (perioodiliselt või mingi sündmuse aktiveerumisel), ja teised allpool esitatud tingimused ei ole aktiivsed. See tähendab, et PLCl on vaba aega ülesande täitmiseks.
- Kui ootel on rohkem kui üks ülesanne, võetakse täitmisele neist kõrgema prioriteediga ülesanne. Eesõigusega multitegumtöös katkestatakse ülesande täitmine, kui uus aktiveeritud ülesanne omab täidetavast ülesandest kõrgemat prioriteeti. Eesõiguseta multitegumtöös peab uus aktiivne ja kõrgema prioriteediga ülesanne ootama täidetava ülesande tegevuse lõpetamist. Kui väljakutsutud ülesanne (kehtib mõlema multitegumtöö puhul) omab võrreldes täidetava ülesandega sama või väiksemat prioriteeti, siis antud ülesanne peab ootama täidetava ülesande tegevuse lõpetamist. Kui täidetav ülesanne ja täitmist ootav ülesanne jagavad mõningaid programmilõike (programm, funktsiooni plokk, funktsioon), siis täidetakse neid programmilõike. Teisi täitmist ootava ülesande programmilõike ei täideta.
- Kui PLCs on ootel mitu sama prioriteediga ülesannet, siis vaba CPU protsessori korral hakatakse täitma pikima ooteajaga ülesannet.
- Programmid (-osad/lõigud), mis pole seotud ühegi ülesandega, omavad kõige madalamat prioriteeti. Neid täidetakse, kui muude ülesannete tegevus või nende endi tegevus on lõpetatud.
Mõned PLCd võivad omada kahte või enamat protsessorit CPUs. Sellised PLCd saavad täita mitut ülesannet üheaegselt (multitegumtöö reaalajas) ilma ajalise viivituseta. See võimaldab kiirelt reageerida protsessi või masina mitte regulaarsele käitumistele.