Diagramele ladder sunt diagrame speciale folosite de obicei în sistemele logice de control industrial. Denumirea de ladder (din engleză: scară) vine de la asemănarea acestora cu o scară: două linii verticale desemnând sursa de putere, şi linii orizontale reprezentând circuitele de control.
Ca şi exemplu de început, o diagramă ladder simplă reprezentând o lampă controlată de un comutator manual arată precum în figura alăturată. Notaţiile L1 şi L2 desemnează bornele unei surse de alimentare de 120 V c.a. L1 este faza iar L2 este conductorul neutru (legat la masă). Aceste notaţii nu au nicio legătură cu notaţia bobinelor.
Transformatorul sau generatorul ce alimentează acest circuit este omis pentru simplitate. În realitate, circuitul este cel alăturat.
Deşi circuitele logice industriale utilizează o tensiune de 120 V în c.a., există şi sisteme realizate la tensiuni mai mici în c.a. sau chiar şi în c.c.
Atâta timp cât contactele comutatoarelor şi bobinele releelor sunt dimensionate corespunzător, tensiunea de alimentare a sistemului este irelevantă.
Observaţi cifra „1” notată pe conductorul dintre comutator şi lampă. În realitate acel conductor este notat cu cifra „1” folosind etichete adezive sau tuburi termocontractibile, în funcţie de preferinţe. Conductorii ce duc înspre comutator vor fi notaţi cu „L1, respectiv „1”. Conductorii ce duc înspre lampă vor fi notaţi cu „1”, respectiv „L2. Aceste numerotaţii sunt făcute pentru a uşura construirea şi întreţinerea întregului ansamblu. Fiecare conductor are propriul său număr unic. Numerotarea conductorilor nu se schimbă atunci când aceştia intră/ies dintr-un nod, indiferent dacă mărimea, culoarea sau lungimea lor se schimbă. Desigur, este de preferată utilizarea unei singura culori pentru desemnarea aceluiaşi conductor, dar acest lucru nu este tot timpul practic. Ceea ce contează este ca orice punct comun din punct de vedere electric dintr-un circuit de control să fie desemnat prin acelaşi număr de fir (conductor).
Să luăm de exemplu diagrama ladder alăturată. Conductorul notat cu „25” reprezintă de fapt acelaşi fir din punct de vedere electric, chiar dacă acesta este conectat la mai multe dispozitive.
În diagramele ladder, sarcina (lampă, releu, etc.) este aproape tot timpul conectată la dreapta „scării”. Deşi din punct de vedere electric locaţia sarcinii nu are nicio importanţă, contează totuşi care capăt al „scării” este conectat la masă.
Să considerăm exemplul alăturat. În acest caz, lampa (sarcina) este conectată în dreapta circuitului, la fel şi masa sursei de alimentare. Aceasta nu este o simplă conincidenţă.
Să presupunem că la un moment dat există o conexiune accidentală între conductorul 1 şi masă. Această conexiune poate fi dată de uzura izolaţiei şi contactul conductorului cu un mediu conductor conectat la pământ. Cu ambele capete ale lămpii conectate la masă (acelaşi potenţial, prin urmare, cădere de tensiune zero), lampa este practic scurt-circuitată şi nu se poate aprinde. În cazul închiderii comutatorului, acest scurt-circuit va duce la arderea siguranţei fuzibile.
Dar, să vedem ce s-ar întâmpla în cazul unei defecţiuni identice (contactul accidental dintre conductorul 1 si masă) în cazul în care poziţia comutatorului este schimbată cu cea a lămpii. Şi în acest caz, L2 este conectat la masă. Masa accidentală va forţă aprinderea lămpii, iar comutatorul nu va avea niciun efect asupra funcţionării acesteia.
Este mult mai bine şi mai sigur din punct de vedere electric să avem un sistem a cărui siguranţă fuzibilă se arde în cazul unui defect de împământare , decât un sistem a cărui componente (lămpi, relee, etc.) nu pot fi controlate în cazul aceluiaşi defect. Din această cauză, sarcina(le) unei diagrame ladder trebuie tot timpul conectată lângă conductorul legat la masă (comun din punct de vedere electric cu acesta).
Putem construi funcţii logice simple pentru circuitul cu lampă din secţiunea precedentă, folosind contacte multiple. Documentarea acestor circuite se face relativ simplu prin conectarea unor linii adiţionale diagramei iniţiale.
A | B | Ieşire |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
Dacă folosim notaţia binară standard pentru starea comutatoarelor şi a lămpii (0 pentru ne-acţionat sau de-energizat, 1 pentru acţionat sau energizat), putem utiliza un tabel de adevăr pentru reprezentarea logicii circuitului.
După cum se poate observa din diagrama ladder, lampa se va aprinde (energiza) în cazul în care contactul A sau contactul B este acţionat. Electronii nu au nevoie decât de o singură cale (de la L1 spre 1) pentru a ajunge spre lampă. Prin urmare, indiferent care contact se închide, A sau B, lampa se va aprinde.
Ceea ce am implementat de fapt în acest caz nu este altceva decât o poartă logică SAU, utilizând două contacte normal-deschise şi o lampă.
Putem imita funcţia unei porţi logice ŞI prin conectarea celor două contacte normal-deschise în serie şi nu în paralel.
A | B | Ieşire |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Putem verifica cu ajutorul tabelului de adevăr că acest lucru este într-adevăr corect.
În acest caz, lampa se va aprinde doar dacă ambele contacte sunt acţionate simultan. Curentul va putea trece de la L1 la 2 doar dacă ambele contacte sunt închise.
Funcţia logică de inversare poate fi obţinută prin simpla utilizare a unui contact normal-închis, faţă de un contact normal-deschis precum cele folosite mai sus.
A | Ieşire |
---|---|
0 | 1 |
1 | 0 |
Din nou, putem verifica prin intermediul tabelului de adevăr că acest lucru este corect.
Dacă luăm funcţia SAU prezentată mai sus şi inversăm fiecare intrare vom obţine funcţia ŞI-negat. Intrările se inversează prin utilizarea contactelor normal-închise în loc de contacte normal-deschise.
A | B | Ieşire |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Lampa va fi energizată dacă unul dintre contacte nu este acţionat, şi se va stinge doar dacă ambele contacte sunt acţionate simultan.
Asemănător, dacă luăm funcţia ŞI implementată mai sus, şi inversăm intrările, obţinem funcţia logică SAU-negat. Inversarea intrărilor se realizează şi în acest caz prin utilizarea contactelor normal-închise în loc de contacte normal-deschise.
A | B | Ieşire |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
Din cele observate mai sus, putem trage unele concluzii, şi anume: contactele paralele sunt echivalente cu o poartă logică SAU; contactele serie sunt echivalente cu o poartă ŞI; contactele normal-închise sunt echivalente cu o poartă NU (negare).
Putem construi circuite logice combinaţionale prin gruparea contactelor în aranjamente serie-paralel. În exemplul alăturat, funcţia SAU-exclusiv este construită prin combinarea porţilor ŞI, SAU şi NU.
A | B | Ieşire |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Linia de sus (contactul normal-închis A în serie cu, contactul normal-deschis B) este echivalentă cu partea de sus a combinaţiei de porţi logice NU/ŞI. Linia de jos (contactul normal-deschis A în serie cu, contactul normal-închis B) este echivalentă cu partea de jos a combinaţiei de porţi NU/ŞI. Conexiunea în paralel a celor două linii în punctul 2, formează un circuit echivalent SAU. Acest lucru permite energizarea lămpii fie prin linia 1 fir prin linia 2.
Pentru realizarea funcţiei SAU-exclusiv a trebuit să folosim două contacte pe o singură intrare: un contact pentru intrarea directă, iar celălalt contact pentru intrarea inversată. Cele două contacte A din diagrama de mai sus sunt acţionate fizic de acelaşi mecanism. Acelaşi lucru este valabil şi pentru contactele B. Această legătură „fizică” dintre contacte este scoasă în evidentă prin marcarea identică a contactelor. Nu există nicio limită a numărului de contacte ce pot fi reprezentate pe acelaşi releu. Fiecare nou contact adăugat unui releu sau unui comutator, fie că este contact normal-închis sau normal-deschis) este reprezentat prin acelaşi simbol.
În unele situaţii, se foloseşte o marcare compusă de genul „A-1” şi „A-2” în loc de „A” pentru ambele contacte ale aceluiaşi dispozitiv. Acest lucru este folositor mai ales în cazul în care dorim să scoatem în evidenţă care seturi de contacte, din fiecare dispozitiv, este utilizat pentru care parte a circuitului. Pentru simplitate însă, nu vom folosi o asemenea notaţie în cele ce urmează. Dacă vedeţi mai multe contacte marcate identic (A, B, etc.), puteţi să fiţi siguri că acele contacte sunt acţionate de acelaşi mecanism.
Dacă dorim să inversăm ieşirea unei funcţii logice realizate cu ajutorul unui comutator, trebuie să folosim un releu cu un contact normal-închis. De exemplu, dacă vrem să energizăm o sarcină bazându-ne pe negarea (funcţia NU) unui contact normal-deschis, putem realiza diagrama alăturată.
A | CR1 | Ieşire |
---|---|---|
0 | 0 | 1 |
1 | 1 | 0 |
Releul este indicat pe figură prin notaţia CR1 (releu de control 1). Atunci când bobina releului, simbolizată printr-un cerc pe prima linie, este energizată, contactul de pe linia a doua se deschide. Deschiderea acestui contact de-energizează lampa. De la comutatorul la bobina CR1, funcţia logică este ne-inversată. Contactul normal-închis este acţionat de bobina releului CR1, asigurând o funcţie logică de negare (NU) pe lampă, inversă faţă de starea de acţionare a comutatorului (A).
Să aplicăm această strategie de inversare uneia dintre funcţiile cu intrare inversată realizate mai sus. Spre exemplu, funcţia logică ŞI folosind diagrama funcţiei ŞI-negat de mai sus. Putem inversa ieşirea cu ajutorul unui releu pentru realizarea unei funcţii ne-inversate.
A | B | Ieşire |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
De la comutator la bobina CR1, funcţia logică realizată este cea a unei porţi ŞI-negat. Contactele CR1 normal-închise inversează şi transformă ieşirea funcţiei ŞI-negat într-o funcţie ŞI.
O aplicaţie practică a logicii digitale, bazate pe relee şi comutatoare, constă în controlul sistemelor în care există o serie de condiţii ce trebuie îndeplinite, înainte ca un echipament să poate porni în siguranţa. Un exemplu bun este cel al aprinderii furnalelor. Pentru pornirea în siguranţă a acestora, sistemul de control trebuie să ceară „permisiunea” câtorva comutatoare de proces, printre care: comutatoare de presiune joasă şi înaltă, comutatoare pentru verificarea funcţionării ventilatorului, a poziţiei uşii de acces, etc. Fiecare condiţie de proces se numeşte permisivă, iar fiecare contact permisiv este conectat în serie. Prin urmare, dacă oricare dintre contacte detectează o condiţie de nesiguranţă, circuitul va fi deschis.
Dacă toate condiţiile sunt îndeplinite, CR1 se va energiza iar lapa verde se va aprinde. În realitate, nu doar lampa se energizează. De obicei există un releu de control, sau o valvă de fluid, ce este plasată pe acea linie a diagramei. Aceasta se va energiza cât toate contactele permisive sunt „în regulă”: adică, închise. Dacă oricare dintre condiţiile permisive nu este îndeplinită, linia de sus a diagramei va rămâne întreruptă, CR1 se ve de-energiza, iar lampa roşie se va aprinde.
Contactul pentru presiune înaltă a lichidul este un contact normal-închis. Acest lucru se datorează faptului că dorim deschiderea contactului doar în cazul în care presiunie lichidului devine prea mare. Din moment ce condiţia „noarmală” a oricărui comutator de presiune este îndeplinită când presiunea aplicată asupra sa este zero, şi dorim ca acest comutator să se deschidă în cazul unei presiuni excesive, trebuie să alegem un comutator ce este închis în starea sa normală.
O altă aplicaţie practică a releelor constă în controlul sistemelor în care dorim ca două evenimente incompatibile să nu aibă loc în acelaşi timp.
Un exemplu în acest sens constă controlul direcţiei de rotaţie a unui motor electric. Sunt utilizate contactoare pentru schimbarea polarităţii (sau secvenţei fazelor) unui motor electric. Nu dorim însă ca atât contactorul de polarizare directă cât şi cel de polarizare înversă să fie energizate în acelaşi timp.
Când contactorul M1 este energizat, sistemul trifazat de alimentare (A, B şi C) este conectat direct la terminalii 1, 2 şi 3 ai motorului. Totuşi, când contactorul M2 este energizat, fazele A şi B sunt inversate, A fiind conectată la terminalul 2 al motorului, iar B la terminalul 1. Inversarea fazei duce la inversarea direcţiei de rotaţie a motorului.
Să examinăm circuitul de control a acestor două contactoare. În dreapta avem un contact normal-închis (OL). Acesta este contactul termic de supra-încălzire ce este activat de elementele de „încălzire” conectate în serie cu fiecare fază a motorului de c.a. Dacă acestea se încălzesc prea tare, contactul va trece de la starea normală (închisă) la starea deschisă. Acest lucru nu va permite energizarea niciunui contactor.
Acest sistem de control este suficient, atâta timp cât nimeni nu apasă ambele butoane simultan. Dacă acest lucru se întâmplă însă, fazele A şi B vor fi scurt-circuitate prin faptul că fazele A şi B sunt conectate direct la motor prin intermediul contactorului M1, iar contactorul M2 le inversează. Faza A se va afla în scurt-circuit cu faza B şi invers. Evident, acesta nu este un sistem de control bun.
Pentru a preveni acest lucru, putem să proiectăm circuitul astfel încât energizarea unuia dintre contactoare săprevină energizarea celuilalt. Acest lucru se numeşte blocare, şi se poate realiza prin utilizarea de contacte adiţionale pe fiecare contactor.
Acum când M1 este energizat, contactul auxiliar normal-închis de pe linia a două se va deschide, prevenind astfel energizarea lui M2, chiar dacă buton „invers” este apăsat. Asemănător, energizarea lui M1 nu este posibilă atunci când M2 este energizat. Observaţi că au fost adăugate numerotaţii suplimentare ale firelor (4 şi 5) pentru a reflecta modificările.
Trebuie menţionat faptul că aceasta nu este singur metodă de blocare a contactoarelor pentru prevenirea scurt-circuitului. Unele contactoare sunt echipate cu dispozitive de blocare mecanice. Pentru siguranţa adiţională însă, se pot folosi şi metode de blocare electrice.
Circuitele logic, fie că sunt compuse din relee electromecanice sau din porţi logice semiconductoare, pot fi construite sub mai multe variante pentru realizarea aceleiaşi funcţii. Nu există în general o metodă „corectă” de proiectare a circuitelor logice complexe, dar există unele metode ce sunt mai bune decât altele.
În sistemele de control, siguranţa joacă un rol important (sau cel puţin ar trebui să o facă). Dacă exista mai multe metode de realizare a unui circuit digital care să realizeze aceiaşi funcţie, iar una dintre metode este mai bună din punct de vedere al siguranţei la funcţionare, atunci acea metodă este mai bună decât celelelate.
Să luăm ca şi exemplu un sistem simplu şi să vedem cum îl putem implementa folosind relee logice. Să presupunem că un laborator mare sau o clădire industrială urmează să fie echipată cu un sistem de alarmă în caz de incendiu. Acest sistem urmează să fie activat de oricare dintre comutatoarele instalate în întreaga clădire. Sistemul ar trebui să funcţioneze astfel încât sirenă să se energizeze dacă oricare dintre comutatoare este acţionat.
La o primă vedere, ar părea că circuitul logic este extrem de simplu: utilizăm contacte normal-deschise conectate în paralel, precum în figura alăturată. Practic, aceasta este o funcţie logică SAU cu patru intrări. Putem extinde acest circuit pentru a include un număr oricât de mare de comutatoare, fiecare fiind adăugat în serie. Ne vom limita însă la patru în acest exemplu. În orice caz, acesta pare un sistem elementar şi totul pare a fi în regulă.
Dar ce se întâmplă în cazul unui defect de circuit? Natura circuitelor electrice este astfel încât defectele de funcţionare ce constau în deschiderea circuitului sunt mult mai frecvente decât oricare alt tip de defecte. Aceste deschideri ale circuitului se pot datora deschiderii contactelor releelor, întreruperea conductorilor, arderea siguranţelor fuzibile, etc. Luând acest lucru în considerare, pare normal să realizăm un circuit care să fie cât mai tolerant posibil la o astfel de defecţiune.
Să presupunem, de exemplu, ca firul conductor al comutatorului doi se distruge, ducând la deschiderea circuitului în acest punct. În cazul în care această defecţiune ar avea loc, comutatorul 2 nu ar mai putea energia sirena în cazul în care ar fi acţionat (închis). Acest lucru, evident, nu este de dorit în cazul unui incendiu. Dacă sistemul nu este verificat periodic ( o idee bună oricum), nimeni nu ar putea ştii că există o problemă până când cineva nu ar încerca sa utilizeze acel comutator în caz de urgenţă.
Dar dacă am re-proiecta sistemul astfel încât alarma să se declanşeze (şi) în cazul unui astfel de defect? Astfel, defectul conductorului ar duce la o alarmă de incendiu falsă. Totuşi, acest scenariu este de preferat celui în care comutatorul nu funcţionează deloc în cazuri de urgenţă. Pentru atingerea acestui scop, va trebui să refacem circuit, astfel încât alarma să fie declanşată de un comutator deschis şi nu de unul închis. Comutatoarele vor trebui sa fie normal-închise şi în serie, alimentând bobina unui releu care la rândul ei activează un contact normal-închis ce controlează sirena.
Atunci când toate comutatoarele sunt de-energizate (starea normală a sistemului), bobina releului CR1 va fi energizată (prima linie). Contactul CR1 (linia a doua) prin urmare, va fi deschis, iar sirena nu este alimentată. Totuşi, în cazul în care oricare dintre comutatoare este acţionat, bobina CR1 se de-energizează, iar contactul CR1 revine la starea sa normală, şi anume, închis. Alarma este în acest caz alimentată şi se va declanşa. Adiţional, dacă există un defect al conductorilor din prima linie a circuitului, alarma se va declanşa. Dacă se descoperă că alarma este falsă, personalul clădirii va ştii că sistemul de alarmă este defect şi necesită reperaţii.
Cu siguranţa, circuitul este mult mai complex decât era înainte introducerii releului de control CR1, iar sistemul poate şi în acest caz să nu funcţioneze corespunzător. Acest lucru se poate întâmpla dacă apare un defect în linia a doua a circuitului. Dar totuşi, acest circuit este mai sigur şi preferabil din acest punct de vedere.
Înainte de apariţia circuitelor logice cu semiconductori, sistemele logice de control erau proiectate şi realizate exclusiv cu relee electromecanice. Sistemele şi procesele ce necesită un control de tip „pornire/oprire” abundă în industria modernă, dar aceste sisteme sunt foarte rar realizate cu ajutorul releelor electromecanice sau a porţilor logice discrete. În schimb, sunt folosite calculatoare digitale ce pot fi programate şi pot realiza o varietate de funcţii logice.
La sfârşitul anilor 1960, o companie americană pe nume Bedford Associates, a lansat un dispozitiv de calcul denumit MODICON. Ca şi acronim, acesta s-ar traduce prin „controler digital modular”. Acesta mai târziu a deveni şi numele diviziei care se ocupa cu proiectarea, realizarea şi vânzarea acestor calculatoare de control speciale. Desigur, au existat mai apoi şi alte companii care au dezvoltat propriile lor variante ale acestui dispozitiv. Până la urmă, acest dispozitiv a primit denumirea de PLC (Programmable Logic Controller), sau, în traducere, automat programabil. Scopul unui PLC a fost de a înlocui releele electromecanice ca şi elemente de logică, locul lor urmând a fi luat de calculatoare digitale semiconductoare. Un program stocat în memoria calculatorului este capabil să simuleze funcţii logice realizate înainte prin interconectarea unui număr mare de reelee electromecanice.
Un automat programabil (PLC) are mai multe intrări, prin intermediul cărora interpretează stări logice „înalte”, respectiv „joase”, stări transmise de senzori şi comutatoare. De asemenea, există mai mulţi terminali de ieşire, prin intermediul cărora dispozitivul transmite semnale „înalte” sau „joase” către contactoare, motoare, lămpi, sau orice alte dispozitive ce pot fi controlate prin intermediul semnalelor de tip „închis/deschis”. În încercarea de simplificare a modului de programare a PLC-urilor, limbajul de programare a fost proiectat astfel încât să semene cu diagramele ladder. Astfel, un inginer sau electrician obişnuit cu citirea diagramelor ladder, se poate adapta relativ uşor mediului de programare a PLC-urilor pentru realizarea aceloraşi funcţii de control.
PLC-urile sunt „calculatoare industriale”, prin urmare, semnalele de intrare şi de ieşire sunt de 120 V c.a, asemenea releelor electromecanice de control. Deşi unele PLC-uri au intrări şi ieşiri de c.c de amplitudini mai mici, aceasta este excepţia şi nu regula.
Modul de conectare şi de programare diferă puţin în funcţie de modelul de PLC ales, dar aceste caracteristici sunt destul de similar pentru a permite o introducere „generală” a programării PLC-urilor în acest capitol.
Figura alăturată este cea a unui PLC, văzut din faţă. Cei doi terminali L1 şi L2 din partea superioară sunt pentru alimentarea circuitului intern al dispozitivului cu 120 V c.a. Cei şase terminali din partea stângă se folosesc pentru conectarea dispozitivelor de intrare, fiecare terminal reprezentând un „canal” diferit cu propria sa notaţie (X). Terminalul din stânga jos (common), reprezintă masa, ce se conectează la L2.
În interioriul carcasei PLC-ului, între fiecare terminal de intrare şi terminalul de masă, există conectat câte un dispozitiv opto-izolator (LED). Acesta asigură o izolare electrică între semnalul logic „înalt” de la intrare şi circuitul calculatorului, atunci când există o tensiune de 120 V c.a. aplicată între terminalul respectiv şi masă. O intrare energizată poate fi „citită” prin intermediul unui LED aprins pe carcasa dispozitivului.
Semnalele de ieşire sunt generate de circuitul intern al PLC-ului prin activarea unui dispozitiv de comutare (tranzistor, triac, sau chiar releu electromecanic), conectând terminalul „Source” cu oricare dintre terminalii de ieşire „Y”. Terminalul „Source” este la rândul să conectat de obicei la L1. Din nou, o ieşire energizată poate fi citită de pe PLC prin intermediul unui LED.
În acest fel, PLC-urile sunt o interfaţă între dispozitivele reale precum comutatoare, lămpi, motoare, etc.
Logica circuitului este stabilită în interiorul PLC-ului prin intermediul unui program software. Acest program decide care ieşiri sunt energizate şi sub ce condiţii de intrare. Chiar dacă programul însuşi pare a fi o diagramă logică, cu simboluri pentru relee şi comutatoare, în realitate nu există astfel de dispozitive în interiorul PLC-ului. Acestea sunt doar contacte şi bobine imaginare. Programul este introdus şi vizualizat prin intermediul unui PC conectat la portul PLC-ului (programming port).
Să considerăm circuitul şi programul alăturat. Atunci când comutatorul buton nu este apăsat, intrarea X1 a PLC-ului nu este alimentată. Urmărind programul, putem vedea un contact X1 normal-deschis în serie cu o bobină Y1. Puterea de pe bobina Y1 este şi în acest caz zero. Prin urmare, ieşirea Y1 a PLC-ului rămăne de-energizată, iar lampa indicatoare conectată pe această ieşire nu se aprinde.
Apăsarea butonului însă face ca intrarea X1 să fie alimentată. În acest caz, toate contactele X1 ce apar în program vor fi acţionate. Energizarea intrării X1 va duce la închiderea contactului normal-deschis X1 alimentând bobina Y1. Când bobina Y1 a programului este energizată, ieşirea reală Y1 va deveni energizată., iar lampa conectată pe ieşire se va aprinde.
Trebuie înţeles faptul că atât contactul X1 cât şi bobina Y1, conductorii de legătură şi „puterea” ce apar pe afişajul PC-ul, toate sunt elemente pur virtuale. Acestea nu există ca şi componente reale. Ele există doar ca şi comenzi în interiorul programului unui calculator.
PC-ul este utilizat doar pentru vizualizarea şi editarea softului PLC-ului, şi nu este necesară prezenţa acestuia pentru funcţionarea dispozitivului. Odată ce programul a fost încărcat în PLC de pe PC, calculatorul poate fi deconectate de la acest, iar PLC-ul va continua să funcţioneze conform instrucţiunilor programului. Afişajul (monitorul) calculatorului este redat în aceste figurii doar pentru a ajuta la înţelegerea principiilor de bază a funcţionării PLC-urilor.
Adevărata utilitate a PLC-ului o putem vedea atunci când dorim modificarea comportamentului unui sistem de control. Din moment ce PLC-ul este un dispozitiv programabil, comportamentul acestuia poate fi modificat prin schimbarea comenzilor. Nu este nevoie de o reconfigurare a componentelor electrice conectate la intrarea şi ieşirea acestuia.
De exemplu, să presupunem că dorim ca circuitul de mai sus să funcţioneze exact invers: apăsarea butonului duce la închiderea lămpii, iar eliberarea acestuia la aprinderea ei. Soluţia „hardware” ar consta în înlocuirea comutatorului buton normal-deschis cu un comutator buton normal-închis. Soluţia software, aplicabilă cu ajutorul PLC-ului, constă în modificarea programului, astfel încât contactul X1 să fie normal-închis în loc de normal-deschis.
Sistemul modificat, în cazul în care comutatorul nu este acţionat (nu este apăsat), este prezentat în figura alăturată.
Când butonul este acţionat, sistemul arată conform figurii alăturate.
Un alt avantaj al implementării logicii de control în varianta software faţă de hardware, este că semnalele de intrare pot fi refolosite în interiorul programului ori de câte ori este necesar.
De exemplu, circuitul şi programul alăturat sunt proiectate pentru a energiza lampa în cazul în care cel puţin două din cele trei comutatoare sunt acţionate (închise) simultan.
Pentru realizarea unui circuit echivalent folosind relee electromecanice, ar fi trebui să folosim trei relee cu câte două contacte normal-deschise fiecare. În total, am fi avut nevoie de şase contacte, câte două pe fiecare intrare. Folosind un automat programabil în schimb, putem refolosi intrările X ori de câte ori dorim prin intermediul soft-ului. Nu este necesară adăugarea unor noi componente, deoarece fiecare intrare cât şi ieşire a unui PLC nu este nimic mai mult decât un simplu bit (0 sau 1) stocat în memoria digitală a dispozitivului. Nu există o limită teoretică a numărului de reutilizări acestor biţi.
Mai mult, din moment ce fiecare ieşire este, la fel, doar un bit stocat în memoria PLC-ului, putem adăuga contacte (virtuale) în interiorul programului. De exemplu, putem adăuga un contact acţionat de ieşirea Y a PLC-ului.
Să considerăm exemplul alăturat. Acesta este un sistem de control al pornirii şi opririi unui motor.
Comutatorul buton conectat la intrarea X1 este utilizat pentru pornirea motorului, iar comutatorul conectat la intrarea X2 pentru oprirea acestuia. Un contact adiţional (virtual), adăugat în interiorul programului şi denumit Y1, utilizează bobina de ieşire ca şi contact de reţinere. Contactorul motorului continuă să fie energizat chiar şi după ce butonul „start” este eliberat. Contactul X2 normal-închis este colorat, ceea ce înseamnă ca este închis şi conduce energie electrică.
Dacă apăsăm butonul de „start”, intrarea X1 se va energiza, închizând contactul X1 din program. Bobina Y1 va fi energizată şi se va aplica o tensiune de 120 V c.a. pe bobina contactorului motorului. Contactul paralel Y1 se va închide şi el, iar circuitul va rămâne într-o stare energizată.
Acum, dacă eliberăm contactorul „start”, contactul X1 normal-deschis se va reîntoarce la poziţia sa normală (deschis). Motorul va continua însă să funcţioneze, deoarece contactul de reţinere intern Y1, continuă să alimenteze bobina Y1, care menţine la rândul ei energizată ieşirea Y1.
Pentru a opri motorul, trebuie să apăsăm pentru o durată scurtă comutatorul „stop”. Acesta va energiza intrarea X2 şi va deschide contactul (virtual) normal-închis. Continuitatea circuitului înspre bobina Y1 va fi întreruptă.
Când butonul de „stop” este eliberat, intrarea X2 se de-energizează. Contactul X2 se reîntoarce în poziţia sa normală (închis). Motorul nu va reporni însă până când comutatorul de „start” nu este acţionat, datorită „pierderii” contactului de reţinere Y1.
Desigur, proiectarea PLC-urilor astfel încât să conţină elemente de autoprotecţie este la fel de importantă precum în cazul sistemelor cu relee electromecanice. Va trebui tot timpul să luăm în considerare efectele unui circuit deschis (distrugerea firelor conductoare, de exemplu) asupra dispozitivelor controlate. În exemplul de mai sus, avem o problemă: în cazul în care conductorul comutatorului de intrare X2 (butonul de stop) prezintă un defect (circuit deschis), nu vom putea opri motorul!
Soluţia acestei probleme constă în inversarea logicii între contactul X2 din interiorul programului PLC-ului şi comutatorul „stop”. Când butonul „stop” nu este acţionat, intrarea X2 este energizată, închizând contactul X2 din interiorul programului. Acest lucru permite pornirea motorului atunci când intrarea X1 este energizată, şi permitea funcţionarea acestuia chiar si atunci când butonul „start” este eliberat. Când butonul „stop” este acţionat, intrarea X2 se va de-energiza, deschizând contactul X2 din soft-ul PLC-ului şi oprind motorul. Prin urmare, nu există nicio diferenţa din punct de vedere funcţional între această variantă si cea precedentă.
Totuşi, în caz de defect al conductorului pe intrarea X2 (circuit deschis), intrarea X2 va fi de-energizată. Efectul este similar acţionării butonului de „stop”, rezultatul fiind oprirea imediată a motorului în caz de defect. Această variantă este mult mai sigură decât cea precedentă, în care, acelaşi tip de defect ar conduce la imposibilitatea opririi motorului.
Pe lângă elementele de intrare (X) şi de ieşire (Y), PLC-urile conţin bobine şi contacte ce nu a legătură propriu-zisă cu exteriorul. Aceastea sunt folosite asemenea releelor de control (CR1, CR2, etc.) pentru asigurarea unui semnal logic inversor în caz de nevoie.
Pentru demonstrarea funcţionării unui asemenea tip de releu „intern”, să consideram circuitul şi programul alăturat. Acesta este proiectat pentru a simula o poartă ŞI-negat cu trei intrări. Din moment ce elementele unui program PLC sunt desemnate printr-o singură literă, vom nota releul de control intern cu C1 şi nu cu CR1.
În acest circuit, lampa va rămâne aprinsă atâta timp cât oricare dintre butoane rămâne ne-acţionat (eliberat). Pentru a opri lampa, va trebui să acţionăm (apasăm) toate cele trei butoane.
Un mare avantaj al automatelor programabile, avantaj ce nu poate fi duplicat cu ajutorul releelor electromecanice, constă în posibilitatea supravegherii şi controlului la distanţa a dispozitivelor prin intermediul reţelelor de calculatoare.
p>