Lekcije PLC programiranja. PLC - što je to? Programabilni logički kontroler PLC

💖 Sviđa li vam se? Podijelite vezu sa svojim prijateljima

Gdje je započela industrijska automatizacija? Sve je počelo s kontaktno-relejnim sklopovima za upravljanje industrijskim procesima. Osim užasnog "šuštanja", krugovi kontaktnih releja imali su fiksnu logiku rada, a ako se algoritam promijeni, potrebno je temeljito ponoviti dijagram ožičenja

Nagli razvoj mikroprocesorske tehnologije doveo je do stvaranja sustava upravljanja procesima baziranih na industrijskim kontrolerima. Ali to ne znači da su releji zastarjeli, oni jednostavno imaju svoju nišu za korištenje.

PLC – programabilni logički kontroler, su mikroprocesorski uređaj dizajniran za prikupljanje, pretvorbu, obradu, pohranjivanje informacija i generiranje upravljačkih naredbi, koji ima konačan broj ulaza i izlaza, povezanih senzora, tipki, aktuatora s objektom upravljanja i dizajniran za rad u stvarnom vremenu.

Princip rada PLC-a donekle se razlikuje od "konvencionalnih" mikroprocesorskih uređaja. Softver za univerzalne kontrolere sastoji se od dva dijela. Prvi dio je sistemski softver. Povlačeći analogiju s računalom, možemo reći da je to operativni sustav, tj. kontrolira rad upravljačkih jedinica, međusobno povezivanje sastavnih dijelova i internu dijagnostiku. Softver PLC sustava nalazi se u trajnoj memoriji središnjeg procesora i uvijek je spreman za korištenje. Nakon uključivanja, PLC je spreman preuzeti kontrolu nad sustavom u roku od nekoliko milisekundi. PLC-ovi rade ciklički koristeći metodu periodičkog prozivanja ulaznih podataka.
Radni ciklus PLC-a uključuje 4 faze:
1. Ulazi za prozivanje
2. Izvršite korisnički program
3. Postavljanje izlaznih vrijednosti
4. Neke pomoćne operacije (dijagnostika, priprema podataka za debugger, vizualizacija, itd.).

Izvršenje faze 1 osigurava sistemski softver. Nakon čega se kontrola prenosi na aplikativni program, program koji ste sami zapisali u memoriju, po tom programu kontroler radi što želite, a po njegovom završetku kontrola se ponovno prenosi na razinu sustava. Ovo osigurava maksimalnu jednostavnost u izradi aplikacijskog programa - njegov tvorac ne mora znati kako upravljati hardverskim resursima. Morate znati s kojeg ulaza dolazi signal i kako na njega reagirati na izlazima

Očito je da će vrijeme odgovora na događaj ovisiti o vremenu izvođenja jednog ciklusa aplikacijskog programa. Definicija vremena reakcije - vrijeme od trenutka događaja do trenutka izdavanja odgovarajućeg upravljačkog signala - ilustrirana je na slici:

Posjedujući memoriju, PLC, ovisno o povijesti događaja, može različito reagirati na trenutne događaje. Mogućnosti reprogramiranja, kontrola vremena, napredne računalne mogućnosti, uključujući digitalnu obradu signala, podižu PLC-ove na višu razinu u odnosu na jednostavne kombinacijske strojeve.

Razmotrite ulaz i izlaz PLC-a. Postoje tri vrste ulaza: diskretni, analogni i specijalni
Jedan diskretni ulaz PLC-a može primiti jedan binarni električni signal, opisan s dva stanja - uključeno ili isključeno. Svi diskretni ulazi (opća verzija) regulatora obično su dizajnirani za prihvaćanje standardnih signala s razinom od 24 V DC. Tipična vrijednost struje za jedan digitalni ulaz (pri ulaznom naponu od 24 V) je približno 10 mA.

Analogni električni signal predstavlja razinu napona ili struje koja odgovara nekoj fizičkoj veličini u bilo kojem trenutku. To može biti temperatura, tlak, težina, položaj, brzina, frekvencija itd.

Budući da je PLC digitalno računalo, analogni ulazni signali nužno prolaze kroz analogno-digitalnu pretvorbu (ADC). Kao rezultat toga nastaje diskretna varijabla određenog kapaciteta. PLC-ovi u pravilu koriste 8-12 bitne pretvarače, što je u većini slučajeva, na temelju suvremenih zahtjeva za točnost upravljanja tehnološkim procesima, dovoljno. Osim toga, ADC većeg bitnog kapaciteta ne opravdavaju svoju vrijednost, prvenstveno zbog visoke razine industrijske buke karakteristične za uvjete rada regulatora.

Gotovo svi analogni ulazni moduli su višekanalni. Ulazni prekidač povezuje ADC ulaz s potrebnim ulazom modula.

Standardni PLC digitalni i analogni ulazi mogu zadovoljiti većinu potreba sustava industrijske automatizacije. Potreba za korištenjem specijaliziranih ulaza javlja se u slučajevima kada je izravna obrada određenog signala u softveru teška, na primjer, zahtijeva puno vremena.

Najčešće su PLC-ovi opremljeni specijaliziranim ulazima za brojanje za mjerenje trajanja, hvatanje rubova i brojanje impulsa.

Primjerice, kod mjerenja položaja i brzine vrtnje osovine vrlo su česti uređaji koji generiraju određeni broj impulsa po okretaju - rotacijski enkoderi. Brzina ponavljanja pulsa može doseći nekoliko megaherca. Čak i ako je PLC procesor dovoljno brz, izravno brojanje impulsa u korisničkom programu bit će vrlo rasitno u vremenu. Ovdje je poželjno imati specijaliziranu hardversku ulaznu jedinicu koja je sposobna izvršiti primarnu obradu i generirati količine potrebne za primijenjeni zadatak.
Druga uobičajena vrsta specijaliziranih ulaza su ulazi koji mogu vrlo brzo pokrenuti određene korisničke zadatke uz prekid izvršenja glavnog programa - ulazi prekida.

Diskretni izlaz također ima dva stanja - uključeno i isključeno. Potrebni su za upravljanje: elektromagnetskim ventilima, zavojnicama, starterima, svjetlima upozorenja itd. Općenito, opseg njihove primjene je ogroman i pokriva gotovo svu industrijsku automatizaciju.

Strukturno se PLC-ovi dijele na monoblok, modularne i distribuirane. Monoblok ima fiksni skup ulaza i izlaza

U modularne kontrolere, ulazno-izlazni moduli se ugrađuju u različitim sastavima i količinama ovisno o zadatku koji slijedi

U distribuiranim sustavima, moduli ili čak pojedinačni ulazi i izlazi koji tvore jedan sustav upravljanja mogu biti odvojeni na značajnim udaljenostima

PLC programski jezici

Prilikom izrade sustava upravljanja tehnološkim procesima uvijek postoji problem međusobnog razumijevanja između programera i tehnologa. Tehnolog će reći “treba dodati malo, malo promiješati, dodati još malo i malo zagrijati”. I malo je vremena za očekivati ​​formalizirani opis algoritma od tehnologa. I pokazalo se da je programer u to trebao dulje vrijeme kopati. Obradite, a zatim napišite program. Često, s ovakvim pristupom, programer ostaje jedina osoba sposobna razumjeti svoju kreaciju, sa svim posljedicama koje iz toga proizlaze. Ova situacija potaknula je želju za stvaranjem tehnoloških programskih jezika koji su pristupačni inženjerima i tehnolozima i koji maksimalno pojednostavljuju proces programiranja.

Tijekom proteklog desetljeća pojavilo se nekoliko tehnoloških jezika. Štoviše, Međunarodna elektrotehnička komisija razvila je standard IEC-61131-3, koji koncentrira sve napredne na polju programskih jezika za sustave automatizacije procesa. Ovaj standard zahtijeva od različitih proizvođača PLC-a da ponude naredbe koje su identične u izgledu i radu.

Standard navodi 5 programskih jezika:

  • Sequential Function Chart (SFC) – jezik sekvencijalnih funkcijskih blokova;
  • Function Block Diagram (FBD) – jezik funkcionalnog blok dijagrama;
  • Ladder Diagrams (LAD) – jezik ljestvičastih dijagrama;
  • Popis izjava (STL) je jezik strukturiranog teksta, jezik visoke razine. Podsjeća me na Pascala
  • Popis instrukcija (IL) je jezik instrukcija. To je tipični asembler s akumulatorom i skokovima po oznakama.

Jezik LAD ili KOP (od njemačkog Kontaktplan) slični su električnim krugovima relejne logike. Stoga inženjerima koji ne poznaju sofisticirane programske jezike neće biti teško napisati program. FBD jezik podsjeća na stvaranje sklopova pomoću logičkih elemenata. Svaki od ovih jezika ima svoje prednosti i nedostatke. Stoga se pri odabiru stručnjaci uglavnom temelje na osobnom iskustvu. Iako većina softverskih paketa omogućuje pretvaranje već napisanog programa s jednog jezika na drugi. Budući da se neki problemi mogu riješiti elegantno i jednostavno na jednom jeziku, dok ćete se na drugom morati suočiti s određenim poteškoćama

Trenutno najviše korišteni jezici su LAD, STL i FBD.

Većina proizvođača PLC-ova tradicionalno ima vlastiti vlastiti razvoj u području softvera alata. Na primjer, kao što je "Concept" Schneider Electric, "Step 7" Siemens.

Programski paket CoDeSys

Otvorenost IEC standarda dovela je do stvaranja tvrtki posvećenih isključivo alatima za programiranje PLC-a.

Najpopularniji su u svijetu. CoDeSys je razvio 3S. Ovo je univerzalni alat za programiranje kontrolera na IEC jezicima, koji nije vezan ni za jednu hardversku platformu i zadovoljava sve moderne zahtjeve.

Glavne značajke:
- puna implementacija IEC jezika
- ugrađeni emulator kontrolera omogućuje vam uklanjanje pogrešaka u projektu bez hardvera. Štoviše, ne emulira se neki apstraktni kontroler, već specifični PLC uzimajući u obzir hardversku platformu
- ugrađeni elementi vizualizacije omogućuju izradu modela upravljačkog objekta i provođenje otklanjanja pogrešaka, tj. omogućuje stvaranje sučelja čovjek-stroj (HMI)
- vrlo širok raspon servisnih funkcija, ubrzavajući rad programera
- postoji ruska verzija programa i ruska dokumentacija

Književnost:
Suvremene tehnologije industrijske automatizacije: udžbenik / O. V. Shishov. Saransk: Izdavačka kuća Mordov. sveuč., 2007. – 273 str. ISBN 5-7103-1123-5

PLC-ovi imaju nekoliko osnovnih programskih jezika. Prvo, to je nešto slično programskim jezicima visoke razine. Naziva se jezikom strukturiranog teksta (u buržoaskom ST). Izuzetno zgodna stvar ako imate vještine programiranja. Zapravo, izmišljeno je za programere. Međutim, kada je PLC razvijen i implementiran, zanimanje programera (u smislu inteligentnog programera s dobrom tehničkom obukom) bilo je još oskudnije nego u našim teškim vremenima. Stoga su praktični Jenkiji i cijeli svijet kasnije razvili nekoliko vrsta grafičkih jezika. Za električare su stvorili jezik relejnih dijagrama (u buržoaskom LD). Općenito ništa komplicirano - ulazna sabirnica, izlazna sabirnica, između njih - krug releja, normalno zatvoren ili otvoren, i mjerači vremena, naravno, sve vrste okidača. Prednost je jednostavnost - samo da postoji dijagram, program bi bio napisan. Loša strana je poteškoća u radu s analognim signalima.

Druga vrsta grafičkog jezika je jezik funkcijskih blokova (u buržoaskom FBD). Jako me podsjeća na rad, na primjer, sa Simulink paketom Matlab softverskog paketa, za prijatelja nasuprot, podsjeća me na Vissim. Da, općenito, teško je steći tehničko obrazovanje a da se nikada ne susrećete s ovom vrstom softvera. Osnova svega su blokovi povezani u traženom nizu komunikacijskim linijama. Ako ste tehničar, možda je najlakši za naučiti i aktivno se koristiti. Plus – jasnoća, intuitivna jasnoća implementiranih algoritama. Nedostaci: rad s ciklusima. Moguće je, naravno, ali na ST-u se ovakav program piše lakše i kraće.
Najnovija verzija grafičkog jezika je algoritamski (SFC). Ovo je grafički jezik najviše razine. Svaki korak je mali (ili veliki) program. Vrlo lijep jezik, s pravom obožavan od strane tehnologa svih pruga. Omogućuje vam stvaranje čvrsto strukturiranih projekata koji se lako otklanjaju. Postoji samo jedan minus - trebali biste ga proučavati tek nakon što dovoljno savladate ST, LD ili FBD jezik. Na njima još treba napisati programe za poseban korak.

O da. Skoro sam zaboravio. Postoji i nešto slično asembleru. Zove se popis uputa (u buržoaskom IL). Ako ste ljubitelj beskonačnog trajanja baterije, ovo je za vas. Nedostaci: dugačak programski kod koji izgleda dobro samo u prilozima disertacije, problemi s otklanjanjem pogrešaka. Ukratko, prema mom razumijevanju, to je peti kotač u kolicima za programiranje PLC-a. Možda griješim.

Program ili projekt?

Odmah odvojimo kotlete od muha. Kod koji herojski pišemo je, naravno, program. Odnosno, točnije, program je kod koji definira radni ciklus PLC-a. Kontrolor može imati ne jedan, ne dva, već više. Mogu se mijenjati zbog vremena, vanjskih ili programskih događaja. Odnosno, program je prilično privatna stvar. Sveukupnost onoga što se “ulijeva” u kontroler obično se naziva projektom. Osim skupa programa, projekt uključuje povezane biblioteke, tipove podataka, vizualizacije, konfiguracije, postavke za određeni PLC i još mnogo toga.

Kao što je opisano u prvom članku, PLC ciklički čita ulaze, izvršava aplikacijski program i zapisuje izlaze. Stoga se pisanje programa za PLC razlikuje od tradicionalnog pisanja programa za mikrokontrolere i osobna računala. Programi za PLC-ove podliježu strogim zahtjevima pouzdanosti; jedno je zamrznuti uređivač teksta, a drugo je program koji upravlja nuklearnim reaktorom. Drugi jednako važan zahtjev je pravovremena reakcija na događaj. Što znači ne reagirati na vrijeme na događaj u industriji? To znači gubitak kontrole nad tehnološkim procesom. Što će u nekim slučajevima, poput primjera reaktora, dovesti do nepopravljivih posljedica.

Pogledajmo razlike između pisanja programa za PLC i mikrokontroler. Na primjer, uzmimo najjednostavniji zadatak za MK - trepćući LED. Pretpostavljam da su svi započeli svoje upoznavanje s MK ovim zadatkom. Algoritam će biti sljedeći

  1. Pisanje dnevnika u port. 1.
  2. Privremeno kašnjenje
  3. Zapišite log.0 u port.
  4. Privremeno kašnjenje
  5. Skok na početak programa po oznaci.

Prema ovom algoritmu, program na PLC-u neće raditi; sadrži beskonačnu petlju. Ali u PLC-u se cijeli aplikacijski program izvršava od početka do kraja u svakom radnom ciklusu, a svaki program mora dati kontrolu sistemskom programu. Dakle, s takvom organizacijom algoritma naš PLC će se smrznuti. Čak i ako maknemo prijelaz oznakom na početak, program neće raditi kako želimo. Port će uvijek biti u stanju log.0, jer se fizička instalacija izlaza provodi tek nakon što se izvrši cijeli aplikacijski program. Stoga su međustanja samo programske varijable u memoriji, a na hardveru se ni na koji način ne prikazuju.

Osim toga, bilo bi dobro organizirati vremensko kašnjenje pomoću mjerača vremena, povremeno provjeravajući njegovu vrijednost, a ne čekati uzalud dok to vrijeme ne prođe; sigurno ima još važnijih poslova za regulator.

Uzimajući u obzir gore navedeno, ispravan algoritam bi izgledao ovako:
1. Provjerite mjerač vremena, ako je vrijeme pauze isteklo
a) invertirati izlaz
b) započeti novo odbrojavanje
2. Kraj programa

U nastavku ćemo implementirati ovaj algoritam u praksi, a sada razmotrimo glavne značajke jezika LAD (Ladder Diagram).

Relejni krug sastoji se od dvije vertikalne sabirnice, između njih postoje horizontalni krugovi koje čine kontakti i namotaji releja. Primjer na slici:

Normalno otvoreni kontakt

Normalno zatvoreni (inverzni) kontakt

Zavojnica releja

Broj kontakata u krugu može biti različit, ali namot je isti.

Svaki kontakt povezan je s logičkom varijablom koja određuje njegovo stanje. Ako je normalno zatvoreni kontakt zatvoren, onda je TRUE; ako je otvoren, to je FALSE; naprotiv, zatvoren je kada je varijabla FALSE. Ime varijable ispisano je iznad kontakta i služi kao njegovo ime.

Serijski spojeni kontakti ekvivalentni su logičkoj operaciji I, a paralelno povezani ILI. Inverzni kontakt je ekvivalentan NOT operaciji. Paralelni spoj namota je dopušten, ali serijski nije. Namotaj releja može biti i inverzan, tada on kopira inverzno stanje sklopa na odgovarajuću logičku varijablu.

Ideja relejnih krugova je da svi krugovi rade paralelno, tj. struja se dovodi u sve krugove istovremeno. Ali znamo da procesor izvršava program sekvencijalno, a mi to ne možemo raditi istovremeno. Isto tako, u LAD-u program se izvršava sekvencijalno s lijeva na desno, odozgo prema dolje. Ali ciklus procesora je mali, zbog čega dolazi do efekta paralelizma.

Svaka varijabla unutar istog kruga ima istu vrijednost. Čak i ako relej u krugu promijeni varijablu, nova vrijednost će stići na kontakte tek u sljedećem ciklusu. Krugovi koji se nalaze iznad primaju novu vrijednost varijable odmah, a krugovi koji se nalaze ispod - tek u sljedećem ciklusu. Strogi redoslijed izvođenja vrlo je važan, a zahvaljujući njima LAD dijagram ostaje stabilan u prisutnosti povratnih veza.

Iako je ovo u suprotnosti s analogijom LAD-a s relejnim krugovima, redoslijed izvođenja LAD programa može se poremetiti korištenjem oznaka i prijelaza. To narušava čitljivost programa i može biti teško razumjeti ih, ali kako kažu, ako stvarno želite, možete. Da biste to učinili, preporučljivo je rastaviti program na module i napraviti prijelaze između modula.

Mogućnosti LAD programa mogu se proširiti umetanjem funkcijskih blokova. Mogu se umetnuti svi standardni funkcijski blokovi sadržani u IEC-u. Opisi funkcijskih blokova mogu se pronaći u pomoći.

Kreirajmo naš prvi LAD program u CoDeSys okruženju. , samo koristite tražilicu

Nakon instalacije odaberite stvaranje novog projekta i CoDeSys će od vas tražiti da odaberete ciljnu platformu za PLC. Specificiranje ciljne platforme je neophodno kako bi okruženje znalo za koji se tip kontrolera program piše. Odaberite 3S CodeSyS Sp PLCWinNT V2.4 i kliknite OK.

Ostavite naziv projekta kao zadani, odaberite jezik LD

Sučelje programa je na ruskom jeziku i intuitivno je. Kada prijeđete pokazivačem iznad elementa, ime će iskočiti. Savjetujem vam da razmotrite sve elemente, kao i stavke glavnog izbornika.

Da biste dodali element u program, potrebno je lijevom tipkom miša kliknuti na radno polje programa, a zatim LMB-om kliknuti na element koji želite smjestiti u program. Na primjer, normalno otvoreni kontakt, trebali biste dobiti sljedeće.

Umjesto upitnika napišemo ime naše varijable, npr. SB, i pritisnemo Enter, pojavi se prozor za deklaraciju varijable, izaberemo Bool i pritisnemo OK.

Razmislite između kojih tipova možete birati, kao i koje klase varijabli.

Implementirajmo programe za treptanje LED diode, i općenito govoreći, program za jedan generator impulsa

Za implementaciju programa koristimo funkcionalni blok TP timera. Timer TP – ovo je mjerač vremena s jednim impulsom s trajanjem određenim PT ulazom.

Dok je IN FALSE, izlaz Q = FALSE, izlaz ET = 0. Kada IN prijeđe u TRUE, izlaz Q je postavljen na TRUE i mjerač vremena počinje mjeriti vrijeme na izlazu ET dok se ne postigne trajanje određeno PT. Brojač se dalje ne povećava. Stoga Q izlaz generira impuls trajanja PT na rubu IN ulaza.

Da biste umetnuli TP, na alatnoj traci odaberite:

Iskočit će pomoćnik za odabir funkcijskog bloka.

Preuzmite datoteku projekta i pogledajmo kako radi.

U početnom trenutku X= False, tako da je inverzni kontakt X zatvoren i mjerač vremena T2 je pokrenut, izlaz Q= True, tako da je strujni krug uključen. A budući da je namot u krugu inverzan, to znači da on kopira inverzno stanje kruga u X, a X ostaje False, nakon što mjerač vremena pređe Q = False, a inverzni namot pretvara X u True. Nakon toga, T1 se pokreće, nakon overflowa, resetira X na False i sve se ponavlja. Varijabla X je izlaz generatora. Timer T2 postavlja pauzu, a T1 trajanje pulsa.

Sastavljanje projekta Projekt -> Prevedi

U online odjeljku odabiremo Način emulacije, i onda Veza I Početak. I vidimo da se naš krug počinje preklopiti, krug u kojem "teče struja" označen je plavom bojom. Također u području deklaracije varijabli vidimo trenutnu vrijednost varijabli.

Izlaz generatora možete vidjeti pomoću digitalnog tragača; idite na karticu Resursi u donjem lijevom kutu

Odaberite Digitalni tragač -> Dodatak -> Postavke praćenja, pojavit će se sljedeći prozor

Mi ćemo postaviti cikličnost snimanja Ručno, kliknite na upravitelja i odaberite varijable X(Bool)

Klik U redu . Odabir pera za našu varijablu

Odaberite online veza, pritisnite Početak, Unaprijediti Napredno -> Započni praćenje, također odaberite Automatsko praćenje

Razmotrimo još jedan primjer upravljanja motorom s elektroničkom komutacijom namota statora
Neću predstavljati sam program, preuzmite projekt. I reći ću vam o algoritmu rada.

Svi mjerači vremena pokreću se startnim signalom. Svaki mjerač vremena mjeri trenutak u kojem faza završava. Varijable Y1-Y3 su izlazi odgovarajuće faze upravljanja. Svaki izlaz je uključen ako mjerač vremena još nije prekoračen i prethodni izlaz je isključen. Posljednji krug je krug automatskog ponovnog pokretanja.

Regulator je upravljački uređaj. Postaje istinski funkcionalan tek kada izradite i pokrenete program koji ga koristi.

To podrazumijeva glavnu zadaću programabilnog logičkog kontrolera - izvršavanje programa koji upravlja tehnološkim procesom.

Koji je softverski paket dostupan za PLC? U principu, svaki skup je moguć. Glavna stvar je da vam veličina besplatnih resursa ovog alata ne bude prepreka. Programer dobiva široke mogućnosti pisanja programa.

Što je potrebno za programiranje kontrolera? Prvo, potreban vam je programer koji bi se temeljito razumio u ovu problematiku. Drugo, potrebno vam je samo računalo i, naravno, razvojni paket.

Funkcionalnost razvojnih alata

Obično se razvojni paket dodatno naplaćuje. Iako se, u načelu, često nalazi da je ovaj paket već inicijalno uključen u instalacijski softver.

Koje funkcionalnosti nudi razvojno okruženje?

  1. Veliki skup biblioteka, programskih blokova, specifičnih postupaka i gotovih predložaka.
  2. Alati za provjeru, testiranje i pokretanje programa na računalu zaobilazeći kontroler.
  3. Predložen je i alat za automatizaciju dokumentacije izrađenog programa, unutar prihvaćenih standarda.

I na kraju, potrebno je napomenuti glavnu prednost - podržava oko šest programskih jezika. Jedini nedostatak je što je kompatibilnost programa implementirana na niskoj razini. Proizvođači PLC-a nisu došli do unifikacije i svaki proizvodi ovaj uređaj sa svojim programskim okruženjem.

Vrste programskih jezika za PLC

  • Jezik LD

LD (Ladder) je razvojno okruženje temeljeno na grafici. Na neki način, to je poput relejnog kruga. Programeri ovog standarda vjeruju da korištenje ove vrste softverskog okruženja uvelike olakšava prekvalifikaciju inženjera relejne automatizacije na PLC-ovima.

Glavni nedostaci ovog programskog jezika uključuju neučinkovitost pri obradi procesa s velikim brojem analognih varijabli, budući da je izgrađen za predstavljanje diskretnih procesa.

  • FBD jezik

FBD (Function Block Diagram) – Ovdje se također koristi grafičko programiranje. Slikovito rečeno, FBD definira određeni niz funkcionalnih blokova koji međusobno imaju veze (ulaz i izlaz).

Komunikacijski podaci su promjenjivi i prenose se između blokova. Svaki blok pojedinačno može predstavljati određenu operaciju (okidač, logičko “ili” itd.). Varijable se definiraju pomoću specifičnih blokova, a izlazni krugovi mogu imati veze s određenim izlazima kontrolera ili veze s globalnim varijablama.

  • SFC jezik

SFC (Sequential Function Chart) – može se koristiti sa ST i IL jezicima, također se temelji na grafovima. Princip njegove konstrukcije blizak je slici konačnog stroja; to stanje ga svrstava u jedan od najmoćnijih programskih jezika.

Tehnološki procesi u ovom jeziku izgrađeni su prema vrsti određenih koraka. Struktura stepenica sastoji se od okomite linije koja ide od vrha do dna. Svaki korak je posebna operacija. Operaciju možete opisati ne samo korištenjem SFC-a, već i korištenjem ST i IL.

Nakon što je korak dovršen, događa se radnja prijenosa kontrole na sljedeći korak. Prijelaz između koraka može biti dvije vrste. Ako je neki uvjet zadovoljen na koraku i daljnja radnja je prelazak na sljedeći korak, tada je to uvjetni prijelaz. Ako su svi uvjeti na određenom koraku u potpunosti ispunjeni i tek tada dolazi do prijelaza na sljedeći korak, tada je to bezuvjetni prijelaz.

  • Jezik ST

ST (Structured Text) je jezik visoke razine i ima mnogo sličnosti s Pascalom i Basicom.

ST vam omogućuje tumačenje više od šesnaest vrsta podataka i ima mogućnost rada s logičkim operacijama, cikličkim izračunima itd.

Manji nedostatak je nedostatak grafičkog okruženja. Programi su prikazani u tekstualnom obliku i to stanje otežava razvoj tehnologije.

  • IL jezik

IL (Instruction List) - jezik sličan Assemblyju, obično se koristi za pojedinačno kodiranje blokova. Prednost je što ovi blokovi imaju veliku radnu brzinu i niske zahtjeve za resursima.

  • CFC jezik

CFC (Continuous Flow Chart) – odnosi se na jezike visoke razine. U principu, ovo je jasan nastavak FBD jezika.

Proces dizajna sastoji se od korištenja gotovih blokova i njihovog postavljanja na zaslon. Zatim se konfiguriraju i između njih se postavljaju veze.

Svaki blok je kontrola određenog tehnološkog procesa. Ovdje je glavni fokus na tehnološkom procesu, matematika blijedi u pozadini.

Jedna od ključnih svrha automatizacije je praćenje promjena u stanju objekta i mogućnost kontrole tog procesa. Smanjenje procesa promjena dovodi do povećanja produktivnosti i učinkovitosti. Strojni vid i kontrola kretanja pomažu u smanjenju varijacija i dodaju fleksibilnost modernim sustavima automatizacije. Zauzvrat, povećana fleksibilnost i funkcionalnost kontrolnih sustava može gurnuti neke starije sustave na rub mogućnosti obrade.

Danas su PLC programabilni logički kontroleri norma u sustavima automatizacije. Često se troškovi novih tehnologija dodaju mogućnosti nadogradnje opreme i/ili dodatnim prilikama za implementaciju novih operativnih sustava. Međutim, dodavanje uređaja za kontrolu pokreta ili prilagođenih ulaznih modula PLC programabilnom logičkom kontroleru također može imati značajan utjecaj na cijenu cjelokupne opreme.

Relativni troškovi, proširivost, funkcionalnost, kao i implementacija korisničkih opcija su zahtjevi za moderne industrijske kontrolere. Budući da su zahtjevi za brzinom obrade, memorijom i snagom značajno porasli posljednjih godina, može li PLC i dalje ostati glavni alat za automatizaciju proizvodnih sustava?

Proces upravljanja

U svom najjednostavnijem obliku, proces upravljanja sastoji se od tri glavne komponente - senzora, regulatora i aktuatora. Senzor prikuplja informacije o kontroliranom objektu i prenosi ih do kontrolera, koji obrađuje primljene podatke i izdaje upravljački signal aktuatoru. Ovaj dizajn naziva se zatvorena petlja ili sustav zatvorene petlje.

Na primjer, praćenje plina i temperatura u dušičnoj peći mogu biti važni za toplinsku obradu, ali podaci o vlažnosti ili vibracijama u prostoriji možda nemaju nikakav utjecaj na proces toplinske obrade. Dodavanje najnovijih podataka u sustav automatskog upravljanja neće donijeti apsolutno nikakvu korist, već će ga samo zakomplicirati i povećati troškove. Možemo zaključiti da složenost postaje kritična jer smanjuje troškove dizajna, programiranja, rješavanja problema i izbjegava instaliranje komponenti koje nemaju praktičnu korist.

Nakon što ih prikupe senzori, informacije idu do kontrolera koji ima ulogu "mozga". Obradit će primljene informacije na temelju algoritama i programa koje mu je dodijelio programer. Ako vrijednost ne padne unutar utvrđenih granica, regulator će poslati signal aktuatoru da ispravi grešku, a to će se događati sve dok greška ne uđe u prihvatljive granice. Aktuator je mišić sustava za automatsko upravljanje (ACS). On je taj koji će fizički utjecati na kontrolirani sustav. Mehanizmi za pokretanje samohodnih topova mogu biti različiti električni pogoni, hidraulički pogoni, pneumatski pogoni i drugi mehanizmi.

“Kontroler je svjestan što se događa i može donositi odluke. PLC je neprikosnoveni lider u industrijskoj automatizaciji,” kaže Matteo Dariol, inženjer u Bosch Rexrothu. „Kratica sadrži „programabilnu logiku“, budući da su se početkom elektroničke revolucije 1960-1970-ih godina počeli graditi upravljački uređaji pomoću diskretnih elektroničkih komponenti. Prethodno je promjena specifikacije dizajna rezultirala redizajnom i reinženjeringom cjelokupne upravljačke logike zajedno s promjenama fizičkih elemenata upravljačkih uređaja. S pojavom PLC programabilnog logičkog kontrolera, nastojanje da se promijeni upravljački algoritam gotovo se u potpunosti sastoji od promjene softvera."

Moderni PLC-ovi su prilično pouzdani uređaji, a njihovi programski jezici su standardizirani. Okruženja za razvoj softvera za programibilne logičke kontrolere još nemaju zajedničke unificirane standarde, budući da svi glavni igrači na tržištu elektroničkih komponenti nude vlastita jedinstvena rješenja. Programiranje i rješavanje problema u PLC-u može biti još lakše nego u osobnom računalu, osobnom računalu, koje svatko od nas, čini se, vrlo dobro poznaje. Programabilni logički kontroler PLC-a ima modularnu strukturu i mogućnost povezivanja različitih modula ovisno o zahtjevima projekta: dodatni I/O portovi, sigurnosni moduli, kao i specifični komunikacijski moduli, da navedemo samo nekoliko primjera.

Modularni dizajn daje programabilnim logičkim kontrolerima glavnu prednost skalabilnosti. Postoje i druge prednosti, poput cijene, jednostavnosti dizajna i čvrstoće strukture. ACS elemente kao što su releji potrebno je povremeno pregledavati i mijenjati, a tu se pojavljuje još jedna prednost PLC-a - minimum pokretnih mehaničkih dijelova. Postoje mogućnosti integracije sa složenijim sustavima, kao što je PC kontroler.

Ograničenja PLC-a

PLC ima ograničenu memoriju, softver i periferne mogućnosti u usporedbi s osobnim računalom (PC). Kontrola kretanja (na primjer, robotika ili složeni automatizirani sustav) zahtijeva ogroman broj ulaza/izlaza, zahtijevajući dodatne PLC upravljačke module ili vanjsku elektroniku. No, vrijedi napomenuti da je računalo sposobno obraditi mnogo više informacija, i to brže, što može znatno smanjiti fizičku veličinu i osigurati potrebnu računalnu snagu za implementaciju sustava računalnog vida, kontrolu kretanja i omogućiti brzu obradu velikih tokova podataka . Konstantan rast obrađenih informacija povezan je s postupnim uvođenjem industrijskog Internet of Things IIoT od strane nekih tvrtki u proizvodne linije i industrijske objekte koji zahtijevaju veliku računalnu snagu.

Proizvođači originalne opreme (OEM) mogu povećati produktivnost opreme dopuštajući strojevima da izvode više operacija istovremeno. Maksimalno intenzivni I/ILI izračuni kritičnih procesa koji se izvode istovremeno mogu preopteretiti programabilni logički kontroler. Strojevi mogu koristiti više računalnih platformi za smanjenje vremena obrade za kritične procese. Tipično, oni uključuju jedan ili više kontrolera kretanja i jedan ili više nadzornih procesora koji podržavaju operatersko sučelje za programiranje, informacije o radu stroja, prikupljanje podataka i funkcije tehničke podrške. Međutim, korištenje više procesora je skuplje. Novi softver namijenjen PC platformama mogao bi pomoći u rješavanju ovog problema, iako...

Računalo nije tako pouzdano i teško preživljava u industrijskim okruženjima kao što su prašina i vlaga. Korištenje računala sa složenijim softverom ili velikim brojem softverskih opcija zahtijeva mnogo više vremena za obuku osoblja za održavanje. Napredni softver može zahtijevati programera za održavanje, popravke i ažuriranja. PLC softver može biti osnovni, ali ima svoje standardne jezike testirane vremenom koji mogu osigurati dugovječnost uređaja unatoč njegovoj brzini i linearnoj prirodi.

PLC-ovi obično koriste industrijski standardni skup programskih jezika (IEC 61131-3), uključujući LAD dijagrame. LAD dijagrami konstruirani su po analogiji s električnim krugovima, što uvelike pojednostavljuje obuku osoblja, održavanje i popravak. U većini slučajeva sasvim je moguće bez programera. Drugi jezik iz standarda IEC 61131-3 je strukturirani tekst, koji je sličan jeziku "visoke razine". Međutim, korištenje drugih nestandardnih jezika visoke razine kao što su C++ ili Visual Basic može biti teško s PLC-om. Tek su nedavno novi softverski alati omogućili korisnicima komunikaciju s PLC-om kao s običnim računalom.

PLC sekvencijalni program skenira sve upute u svakom ciklusu. Ciklus skeniranja traje otprilike 10 ms ili malo više. Nakon što su sve upute dovršene, program prelazi na sljedeće skeniranje. Ako se instrukcija ne izvrši unutar navedenog vremena, generira se poruka o pogrešci i izvođenje programa se prekida. Ovaj tvrdi softver može ograničiti trajanje programa i sve ulazne signale manje od 100 Hz.

Na primjer, ako je potrebno obraditi signal sa senzora brzine s nominalnom brzinom od 1200 okretaja u minuti (frekvencija signala 1200/60 = 200 Hz), mikrokontroler temeljen na PLC-u ne može ispravno mjeriti brzinu koristeći takav ulaz. Potrebno je integrirati poseban modul s dekoderom ili brojačem na integriranim krugovima, koji signal sa senzora pretvara u onaj koji normalno obrađuje mikrokontroler. Takvi moduli pretvarača često se koriste u mnogim sustavima. Također je vrijedno napomenuti potrebu za izlaznim modulima koristeći primjer upravljanja solenoidom s PWM radnom frekvencijom od 10 kHz. Za upravljanje takvim uređajem pomoću PLC-a potreban je izlazni modul s PWM generatorom. Dodavanje takvih modula povećava cijenu sustava za 2-3 puta.

Sljedeća generacija PLC-a

Novi sustav nazvan je programabilni automatizirani kontroler (PAC) koji može riješiti neke probleme s PLC-om. Neki stručnjaci tvrde da je programabilni automatizacijski kontroler (PAC) komercijalniji naziv, ali to nije posve točno. Nažalost, postoje neke razlike između njihovih definicija, a s tehnološkog gledišta prilično je teško pronaći temeljne razlike među njima.

PCA obično uključuju PLC funkcionalnost. Oba su digitalni uređaji, ali PDA uređaji pružaju napredne mogućnosti programiranja i često imaju veću funkcionalnost, memoriju i periferne mogućnosti. PKA nudi složenije arhitektonske sustave kada je potrebna veća I/O povezanost. Štoviše, obično ima ugrađene mogućnosti za prijenos podataka iz memorije na USB pogon i često ima mogućnost izravne interakcije s bazama podataka.

Dodatne mogućnosti softvera svakako zvuče dobro, ali vrijedi napomenuti da ne podržavaju svi PDA uređaji standardne IEC 61131-3 jezike, što može dovesti do dodatnih problema s programiranjem i održavanjem.

Postoje različiti modeli ovih uređaja. PKA može ponuditi modele usmjerene na sustave strojnog vida ili druge dizajnirane za istovremeno praćenje nekoliko procesa. Izbor modela ili tehnologije mora uzeti u obzir i zahtjeve budućnosti (modernizacija i proširenje proizvodnje) i standarde (primjerice, sigurnost). Planiranje može produljiti životni vijek kontrolera ispunjavanjem budućih potreba, ali i postaviti temelje za korištenje IIoT-a i decentralizirane kontrole.

PLC-ovi su još uvijek relevantni, međutim, razvoj sustava strojnog vida, dinamičkih robotskih procesa i upravljanja kretanjem, te želja za većom industrijskom automatizacijom korištenjem IIoT-a, zahtijevaju da programibilni logički kontroler ima znatno veću procesorsku snagu ili memoriju, što nije u mogućnosti pružiti. Decentralizirana tehnologija može pomoći u proširenju naslijeđene linije nudeći proizvode kao što su SoC i FPGA koji obrađuju informacije izravno na samom senzoru. To znači da dodavanje složenog procesa postojećoj liniji ne mora nužno zahtijevati instalaciju skupog PCA, ali će zahtijevati grupu pametnih senzora koji mogu neovisno pohranjivati ​​i obrađivati ​​svoje mjerne podatke.

Je li moguće koristiti obje opcije?

Ono što raspravu PLC protiv PCA čini još zbunjujućom je to što je moguće izgraditi sustav upravljanja bez jednog i drugog. Mreža pametnih senzora i softvera može se kombinirati kako bi se uklonila ili povećala decentralizacija programibilnih kontrolera u cijelom pogonu. SoC-ovi su jedna od tehnologija koja može decentralizirati proces. Međutim, imajte na umu da previše protokola na jednom SoC-u može rezultirati povećanjem broja testnih ciklusa potrebnih za testiranje procesa ili dijela procesa, uzrokujući ponašanje slično preopterećenju programabilnog logičkog kontrolera.

Štoviše, postoji niz tehnologija koje omogućuju programabilnim logičkim kontrolerima, tehnologijama decentralizacije i programabilnim automatiziranim kontrolerima da rade zajedno za najučinkovitiji rad poduzeća. Postoji nekoliko osnovnih koraka koje je potrebno poduzeti kako bi se utvrdilo koje tehnologije mogu biti potrebne.

"Prvo, morate razumjeti koji su čimbenici važni za uspješno poslovanje i razinu zastarjelosti koju uređaj ili linija mogu tolerirati", kaže Julie Robinson, voditeljica marketinga, Rockwell Automation. “Nakon što se identificiraju rizici, korisnici moraju razviti strategiju za ublažavanje i konačno uklanjanje tog rizika i planirati prvu nadogradnju rada ćelije. Neki čimbenici koji utječu na te promjene uključuju:

  • Zadovoljavanje budućih proizvodnih potreba ili poboljšanje trenutne produktivnosti;
  • Sukladnost s najnovijim sigurnosnim zahtjevima i propisima;
  • Povećanje fleksibilnosti proizvodnih sustava za učinkovito proširenje proizvodnje ili nadogradnju opreme;
  • Povećanje učinkovitosti korištenja imovine smanjenjem zastoja;
  • Povećanje sigurnosnih mjera proizvodnje i sigurnosti opreme;

Korisnici također moraju razumjeti koje su promjene napravljene na opremi tijekom nekoliko godina rada postrojenja ili tvornice, što bi se trebalo odraziti na dijagramima i crtežima.

Točna dokumentacija stare opreme uvelike će pomoći u integraciji nove opreme. A ako je decentralizirana platforma već integrirana, dokumentacija postaje još važnija. Decentralizirani upravljači pokazali su manje vremena pri instaliranju nove opreme. U tradicionalnom, centraliziranom sustavu, inženjeri ili osoblje za održavanje moraju se povezati s programabilnim logičkim kontrolerom kako bi otkrili probleme i preuzeli upravljački softver ako je potrebno. Dobro dizajniran sustav trebao bi biti jednostavan za rukovanje, jednostavan za održavanje i skalabilan.

Kako bi se spojili na decentralizirani sustav, stručnjaci ne moraju fizički hodati oko uređaja. Kako bi uklonili ovaj problem, tvrtke koje se bave servisiranjem opreme pokušavaju povezati nekoliko sustava koji su tehnološki kompatibilni. To često znači integraciju naslijeđenih sustava s novom tehnologijom i softverom.

Trenutno vrlo mali postotak želi ulagati u nadogradnju postojeće opreme, osim ako nije beznadno zastarjela. Štoviše, odluke o modernizaciji u budućnosti donose se prilikom projektiranja opreme, a često je više od jedne tvrtke uključeno u projektiranje različite opreme, te u budućnosti može doći do sukoba tijekom modernizacije.

Prije nego odaberete najbolju tehnologiju za svoju opremu, važno je razumjeti da tehnologija mora biti kompatibilna s vašim ciljevima ne samo sada, već iu budućnosti, te nuditi funkcionalnost koja vam je potrebna bez nepotrebne složenosti. Mnogim je tvrtkama teško, au nekim slučajevima i besmisleno, održavati stručnjake u svim područjima, zbog čega je industrijski internet stvari (IIoT) nedavno počeo uzimati maha.

Pojmovi i definicije

Razlika između PLC-a i PCA-a može prožimati i druge tehnologije. Na primjer, sustavi na čipu (SoC), od engleskog System-on-a-Chip (SoC), ugrađena računala (embedded PC) i field programmable gate array (FPGA) nude neke tehnologije koje mogu zamijeniti ili proširiti mogućnosti programabilnih logički kontroleri . Međutim, za neke tehnologije još nema utvrđenih definicija, a znanstvenici raspravljaju o njihovom točnijem opisu. Ali pokušat ćemo dati neke osnovne definicije.

Programabilni logički kontroler PLC

To je digitalno računalo dizajnirano za automatizaciju industrijskih sustava. Posebno je dizajniran da izdrži teške radne uvjete kao što su raspon temperature, tlak, električni šum, vibracije i druga teška industrijska okruženja. Ima najvažniju značajku, koja ga je, zapravo, dovela do takve popularnosti - to je kruti sustav u stvarnom vremenu.

Način rada u stvarnom vremenu

Mnogi ljudi realno vrijeme shvaćaju kao dovršavanje zadatka "što je prije moguće". Ali to nije istina. Sustav u stvarnom vremenu jamči da će svi ulazi, izlazi i računalni procesi biti obrađeni u određenom vremenskom razdoblju, koje se u tehničkoj literaturi često naziva rokom. U tvrdim sustavima u stvarnom vremenu, propuštanje rokova je jednako kvaru sustava. S druge strane, meki sustav realnog vremena dopušta neznatno prekoračenje rokova, ali samo kada to dovodi do prihvatljivog pada kvalitete sustava. Na primjer, video konferencija. Malo kašnjenje zvuka ili slike neće dovesti do katastrofalnih posljedica.

Kada se PLC program kompajlira, on izračunava jesu li potrebni resursi dostupni za izvršavanje korisničkih uputa, a zatim nastavlja dovršavati dodijeljeni zadatak u traženom vremenskom okviru.

Programabilni kontroler automatizacije PKA

To je digitalno računalo koje uključuje PLC funkcionalnost. Programabilni automatizirani kontroler je relativno novi koncept, pojavio se u ranim 2000-ima. U većini slučajeva, PCA je evolucija programabilnog logičkog kontrolera. PLC je most između električne automatizacije temeljene na relejima i elektromehaničke programabilne automatizacije, gdje je naglasak na operacijama temeljenim na softveru (definicija dana prije 40 godina).

Meki sustav u stvarnom vremenu (softPLC)

Kao što je gore spomenuto, meki sustav stvarnog vremena ne jamči da će zadatak biti dovršen na vrijeme. Stoga se ne koriste za sustave upravljanja kretanjem. Umjesto toga, softPLC-ovi su poželjniji za povezivanje komunikacija između tvornica i radionica, sučelja čovjek-stroj i sustava nadzorne kontrole i prikupljanja podataka (SCADA). Sasvim je moguće da neki PKA bude SoftPLC.

Ugrađena računala

Ugrađeno industrijsko računalo nije računalo opće namjene. Dizajniran je i optimiziran za aplikaciju jednog korisnika. Sve njegove komponente, u pravilu, smještene su na jednoj ploči, uključujući mikrokontrolere ili mikroprocesore, ulazno/izlazne sabirnice, memoriju i druge korisničke čipove. Uređaj čak uključuje softver ili firmware (firmware se obično nalazi u ROM-u ili memoriji samo za čitanje). Ugrađena računala doista su sjecište između hardvera i softvera jer postoji bliska veza između ta dva dijela - jedan ne može raditi bez drugog. Projekti ugrađenih računala mogu odgovoriti na zahtjeve hard ili soft realnog vremena.

reci prijateljima