Post on 29-Aug-2019
Generalităţi
Comanda unui sistem de acţionare electrică = realizarea unui ansamblu de operaţii care fac ca valoarea unei mărimi, de care depinde procesul tehnologic al unei maşini de lucru, să se modifice după o lege prestabilită sau după anumite impulsuri externe date de modificarea procesului de lucru.
Într-o instalaţie de comandă şi control fenomenele se succed într-o ordine dinainte stabilită. Unei anumite mărimi aplicate la intrarea în sistem (mărime de intrare) îi corespunde în sistemul de comandă o mărime bine definită obţinută la ieşirea sistemului comandat (mărime de ieşire).
Clasificarea sistemelor de comandă şi control (SCC)
După modul de transmitere a impulsului de comandă– SCC manuale– SCC semiautomate– SCC automate
Clasificare
SCC manuale– Efortul necesar pentru acţionarea
mecanismului de comandă este asigurat aproape în întregime de operatorul uman.
– funcţionarea este asigurată prin mijloace mecanice.
Exemple: – Întrerupătoare– Întrerupătoare automate– Comutatoare tobă
Clasificare
SCC semiautomate– un număr de faze succesive ale unui ciclu de
lucru se execută automat, iar între acestea , pentru realizarea unor operaţii este necesară intervenţia operatorului uman.
– sunt utilizate în sisteme de complexitate redusă care nu necesită reglaje de viteză sau schimburi de regimuri de funcţionare frecvente.
Clasificare
SCC automate– toate comenzile pentru realizarea întregului ciclu
de lucru sunt executate automat prin intervenţia unor elemente ale dispozitivului de comandă.
– operatorului uman îi revine sarcina de a da doar impulsul iniţial de pornire şi eventual de oprire
– creşte precizia de execuţie a comenzilor odată cu scurtarea ciclului de lucru al sistemului.
Sisteme de comandă automate
Sisteme de comandă automate (roboţi de sudare)
Clasificarea sistemelor de comandă şi control (SCC)
După modul de execuţie a dispozitivului de comandă– SCC în circuit deschis– SCC în circuit închis
Clasificarea sistemelor de comandă şi control (SCC)
După modul de acţionare asupra elementelor dispozitivului de comandă– SCC discrete
directesecvenţialedupă program
– SCC analogice
SCC discrete
Sunt acele sisteme în care mărimile fizice din sistem sunt determinate de starea elementelor componente ale dispozitivului de comandă. Realizarea unui sistem de comandă discret se bazează pe o succesiune de semnale date de elementele dispozitivului de comandă.
SCC directe
– starea elementelor de execuţie ale dispozitivului de comandă depinde de starea elementelor de comandă în acel moment.
– mărimea de intrare are diferite valori, rezultând corespunzător diferite valori ale mărimii de ieşire.
Sisteme de comandă secvenţiale
– starea elementelor de execuţie este dependentă nu numai de starea momentană a elementelor de comandă ci şi de stările anterioare ale unor elemente din sistem.
– o singură variaţie a mărimii de intrare (ex. impuls de pornire) declanşează sistemul de comandă, urmând o succesiune de faze după un program fixat înainte.
– Terminarea programului are loc în momentul când mărimea de ieşire a ajuns la o valoare dinainte stabilită
Sisteme de comandă după program
la care dispozitivul de comandă este prevăzut cu un dispozitiv de programare. Esenţial - dispozitivul de comandă primeşte semnale de la dispozitivul de programare şi pe baza acestor semnale realizează comanda impusă.
Clasificarea sistemelor de comandă şi control (SCC)
După modul de implementare a sistemului de comandă– SCC ce folosesc tehnologia cablată– SCC ce folosesc tehnologia programată
SCC în tehnologie cablată
Într-o tehnologie cablată, SCC este realizat din module legate între ele. Funcţionarea obţinută rezultă din alegerea acestor module şi de legăturile care le unesc. În toate cazurile, SCC este în întregime particularizat prin realizarea sa materială.
SCC în tehnologie programată
SCC este realizată prin programarea elementelor componente prevăzute în acest scop. Funcţionarea obţinută rezultă din programarea făcută. În acest caz, personalizarea este făcută prin alegerea componentelor dar şi prin programare.
Structura unui SCC
parte operativă: operează asupra materiei de lucru – utilaje şi mijloace diverse care realizează procesul de
elaborare: mori, maşini de tăiat şi găurit, pompe, capete de sudură, etc.
– elemente de acţionare destinate mişcării sau funcţionării acestor mijloace, ex: motoare electrice, valve hidraulice sau pneumatice
parte de comandă: emite ordinele către partea operativă şi primeşte de la aceasta semnalele de răspuns necesare coordonării acţiunilor acestuia
Elementele unui SCC
Tensiunea de comandăElemente de siguranţăElemente de comandăElemente intermediare (relee)Elemente de conectare cu acţionare electromagnetică Elemente de acţionareElemente de protecţieElemente de semnalizareSurse de alimentareSenzori si traductoare
Elemente componente ale SCC
Elemente de acţionare: motoare de diferite tipuri şi principii de funcţionare, ele acţionează propriu-zis mecanismele maşinilor. Dintre cele mai cunoscute elemente de acţionare amintim motoarele
– electrice, – pneumatice şi – hidraulice.
Elemente de comandă: cele mai uzuale sunt întrerupătoarele, butoanele şi limitatoarele de cursă. Comandă semnale
– puternice (curenţi de câţiva amperi) – semnale slabe (de ordinul mA) cum sunt microcontactele unor aparate de
măsură şi control, traductoarele inductive şi capacitive, etc.Elementele de protecţie sunt destinate pe de-o parte protecţiei maşinilor electrice contra deteriorărilor, iar pe de altă parte protecţiei conductoarelor instalaţiei în caz de scurtcircuit (siguranţe).Elementele de conectare: realizează legătura propriu zisă a elementelor de acţionare (motoare) cu sursele de energie (electrică, pneumatică sau hidraulică).
Elemente componente ale SCC
Elemente intermediare: sunt intercalate între elementele de comandă şi elementele de conectare. Aceste elemente (relee) îndeplinesc rolul de transformatoare ale semnalelor de comandă transmise către elementele de conectare. Transformări :
– amplificări de semnal, – multiplicare semnalului, – întârzierea semnalului, – memorarea semnalului, – negarea (inversarea) semnalului, etc.
Elemente de semnalizare (optice sau acustice)Elemente auxiliare cum ar fi transformatoare, redresoare, rezistenţe, etc.
Funcţiile unui sistem de comandă şi control.
PornireaOprireaInversarea sensului de rotaţieMenţinerea regimului de lucruControlul vitezeiProtecţia operatorului
Pornirea
Motorul poate fi pornit prin cuplare direct la reţea. Poate fi de asemeni necesară o pornire lentă şi graduală nu numai pentru proteja maşina dar şi pentru a asigura că valoarea curentului nu este prea mare pentru reţeaua la care este cuplat motorul. Unele motoare pot fi distruse dacă sunt pornite cu un cuplu de pornire ce creşte brusc. Un alt factor de luat în seamă este şi frecvenţa cu care va fi pornit motorul respectiv.
Oprirea
Unele controlere permit motorului să se oprească într-o poziţie precizată. Altele impun întreruperea funcţionării motorului când acesta trebuie să se oprească repede. Oprirea rapidă este o funcţie vitală pentru un controler atunci când sunt situaţii de urgenţă. Controlerele asistă oprirea motorului prin întârzierea mişcării centrifugale
Inversarea sensului de rotaţie
Controlerele sunt utilizate pentru schimbarea automată a sensului de rotaţie a motoarelor la comanda operatorului de la staţia de comandă. Schimbarea sensului de rotaţie poate fi un regim permanent pentru unele aplicaţii industriale.
Menţinerea regimului de lucru
Menţinerea regimului de lucru dorit poate fi una din principalele destinaţii ale controlerului. El protejează motoarele, operatorii, maşinile şi materialele în timpul lucrului. Există o mare diversitate de tipuri de circuite de protecţie pentru a proteja oamenii, echipamentul şi procesul de producţie împotriva posibilelor defectări ce pot apare atunci când maşinile sunt în funcţiune.
Controlul vitezei
Unele controlere pot menţine foarte precis viteza proceselor industriale. Unele controlere pot modifica viteza motoarelor fie în trepte fie gradual printr-un domeniu continuu de valori ale vitezei.
Protecţia operatorului
O parte din elementele de protecţie mecanice au fost înlocuite sau îmbunătăţite prin folosirea sistemelor electrice de protecţie. Mai nou, o serie din funcţiile de protecţie au fost preluate de sistemul de comandă şi control care oferă o mai mare siguranţă pentru operatori.
Pornirea şi oprirea maşinilor electrice
În regimurile de pornire şi de oprire a maşinilor electrice trebuie ţinut seama de o serie de condiţii care afectează motorul. Dintre acestea amintim:
– Frecvenţa de pornire şi oprire– Tipul pornirii în funcţie de tipul sarcinii
uşoară: pornire în golgrea: porniri în sarcini
– Tipul pornirii în funcţie de durata acesteiarapidălentă
– Pornire şi oprire manuală sau automată– Tipul opririi în funcţie de durata acesteia
lentărapidă
– Tipul opririi în funcţie de poziţia de oprireprecisăaproximativăindiferentă
– Frecvenţa de inversare a sensului de rotaţie
Exigenţele impuse sistemelor de comandă şi control
SimplitateSiguranţa în funcţionareRepetabilitatea regimurilor de funcţionareFlexibilitatePosibilitate de evoluţieCoordonareDialogCalitateGestiune
Simplitate
Se consideră că un SCC este simplu atunci când asigură îndeplinirea tuturor condiţiilor ce-i sunt impuse cu minimum de elemente componente. Un număr mare de componente reduce siguranţa în funcţionare deoarece fiecare element al schemei, în parte, poate constitui sursa unor defecţiuni şi ale unei funcţionări defectuoase. O schemă simplă presupune şi costuri mai reduse.
Siguranţa în funcţionare
O parte din funcţionarea unei maşini automate este orientată spre propria protecţie sau spre protejarea materialelor pe care le prelucrează sau le manipulează. La aceasta se adaugă condiţiile necesare protejării operatorului uman. Un alt element legat tot de siguranţa în funcţionare este cel de disponibilitate prin care se înţelege capacitatea sistemului de a-şi îndeplini rolul pentru care a fost conceput.
Repetabilitatea regimurilor de funcţionare
Odată sistemul de comandă şi control instalat şi reglat, el trebuie să asigure repetabilitatea regimurilor de funcţionare şi respectarea normelor de funcţionare existente în vigoare.
Flexibilitate
Flexibilitatea unui sistem de comandă presupune posibilitatea trecerii cu uşurinţă de la un tip de comandă la altul (manual-automat şi invers) şi de la un regim al sistemului la altul, posibilitatea comandării acestuia din punctul în care se află sistemul de comandă sau de la distanţă.
Posibilitate de evoluţie
Aceasta are la bază faptul că sistemul poate evolua în timp atât din punct de vedere funcţional cât şi din punct de vedere structural. În exigenţa posibilităţii de evoluţie se poate considera şi posibilitatea de scalare a sistemului astfel încât cu acelaşi sistem să poată fi comandate mai multe sisteme de acelaşi fel sau diferite.
Coordonare
Această exigenţă se impune în cazul în care sistemul este integrat într-un ansamblu mai larg în cadrul căruia trebuie să se ţină cont şi de evoluţia celorlalte componente ale sistemului.
Dialog
Această exigenţă are drept scop realizarea unui dialog om-maşină mai clar şi mai complet pentru ambele părţi.
Dialogul poate fi realizat şi cu alte sisteme de comandă la acelaşi nivel ierarhic sau la nivele ierarhice diferite.
Gestiune
Presupune posibilitatea SCC de a primi o gamă largă de informaţii din partea sistemului, şi de a le gestiona în vederea realizării comenzii pentru care a fost conceput.
Definiţie
Algebră booleană = o structură algebrică formată din:O mulţime BDouă operaţii binare notate cu (+) şi (.)O operaţie unară notată cu (‘) pentru care sunt valabile 6 axiome:
Axiomele algebrei booleene
1. Mulţimea B conţine cel puţin două elemente diferite
2. Axioma închiderii: operaţiile (+) şi (.) sunt operaţii interne adică:
∀a,b∈B(i) a+b ∈B(ii) a.b ∈B
Axiomele algebrei booleene
3. Existenţa elementelor neutre pentru operaţiile binare
(i) ∃ element neutru faţă de operaţia (+) notat cu 0 a.î.:∀a∈B , a+0=a
(i) ∃ element neutru faţă de operaţia (.) notat cu 1 a.î.∀a∈B , a.1=a
Axiomele algebrei booleene
4. Comutativitate∀a,b∈B(i) a+b=b+a(ii) a.b=b.a
5. Distributivitatea∀a,b ∈B(i) a+(b.c) =(a+b).(a+c)(ii) a.(b+c)=a.b+a.c
Axiomele algebrei booleene
6. Existenţa elementului opus
∀a ∈B, există elementul opus lui a, notat a’ a.î.:(i) a+a'=1(ii) a.a'=0
Denumirea operaţiilor
Operaţia “ + ” se numeşte sumă logică, adunare logică, surjecţie şi o vom numi pe scurt sumăOperaţia “ . ” se numeşte produs logic, înmulţire logică, conjuncţie şi o vom numi pe scurt produsOperaţia “ ‘ ” se numeşte negare sau complementare
Prioritatea operaţiilor
În cadrul unei algebre booleene operaţiile au urmatoarea prioritate( ) – expresiile din paranteză’ – operaţia de complementare. – operaţia de înmulţire logică+ – operaţia de sumare logică
Principiul dualităţii
• Axiomele algebrei booleene sunt prezentate în perechi fiecare axiomă din pereche fiind duala celeilalte
• O axiomă se poate obţine din duala sa modificând operaţia “+” cu operaţia “.” şi elementul 0 cu elementul 1 (şi invers).
• Exemplu: existenţa elementului opus(i) a + a‘ = 1
↕ ↕(ii) a . a‘ = 0
Proprietăţile algebrei booleene
Idempotenţa∀a∈B(i) a + a = a (ii) a.a = a
Proprietăţile lui 0 şi 1∀a∈B(i) a+1=1(ii) a.0 = 0
Proprietăţile algebrei booleene
Unicitatea lui 0 şi 1Elementele 0 şi 1 sunt unice
Unicitatea elementului opusPentru ∀a∈B , a’ este unic
Distincţia dintre 0 şi 1Elementele 0 şi 1 sunt distincte
Involuţia∀a∈B, (a')'=a
Proprietăţile algebrei booleene
Absorbţia∀a,b∈B(i) a + a.b = a (ii) a.(a+b) = aAsociativitatea
∀a,b,c∈B(i) a + (b + c) = (a + b) + c(ii) a . (b . c) = (a . b) . c
Exemple de algebre booleene
Algebra binarăB={0,1} împreună cu operaţiile
Definire alternativă a operaţiilor
Exemple de algebre booleene
Simboluri– Contact normal deschis (cnd)– Contact normal închis (cni)
K= mulţimea contactelor electrice împreună cu operaţiile:– Legare în serie
– Legare în paralel
– Schimbarea stării contactului
Definiţii
O variabilă care poate lua doar valorile 0 şi 1 va fi denumită variabilă binară booleană, variabilă bivalentă booleană sau simplu variabilă binară.O funcţie booleană este o funcţief:{0,1}n→{0,1}m pentru m,n≥0. Fiecărei n-tuple x=(x1,…,xn)∈{0,1}n, funcţia îi pune încorespondenţă o m-tuplă unicăf(x)=y=(y1,…,ym)∈{0,1}m.
Definiţii
Datorită asocierii cu circuitele numerice, componentele x1,…,xn se mai numesc variabile de intrare sau intrări iar componentele vectorului y, y1,…,ym se mai numesc variabile de ieşire sau ieşiri.n>1, m=1 funcţii booleene cu o singură ieşire şi n intrări.n>1,m>1 funcţii booleene cu n intrări şi mieşiri.
Funcţii booleene
Pentru o funcţie care depinde de n de variabile avem:2n combinaţii de valori pentru variabile22n=funcţii de nvariabile
Vari-abile
Combi-naţii
Funcţii
1 2481632
42 163 2564 65.5365 4.294.967.296
Funcţiile booleene de două variabile
n=2 nr. de variabile22=4 combinaţii de valori pentru variabile222=16 funcţii de 2 variabile
Funcţiile booleene de două variabile
F0 = 0 Funcţia constantă 0F1 = A.B (SI) ANDF2 = AB' Inhibiţie (A dar nu B)F3 = A IdentitateF4 = A B Inhibiţie (B dar nu A)F5 = B IdentitateF6 = AB' + A'B SAU-Exclusiv (XOR), se notează
şi A⊕BF7=A+B SAU
Funcţiile booleene de două variabile
F8 = (A + B)' SAU-NU (NOR) (în logica matematică denumită funcţia lui Peirce, se mai notează A ↓B
F9 = A'B' + AB Echivalenţă, se notează şi A≡BF10=B' Complement, NU (NOT)F11 = A + B' Implicaţie (B implică A), se notează şi
B → AF12 = A' Complement, NU (NOT)F13= A' + B Implicaţie (A implică B), se notează şi
A → BF14 = (AB)' SI-NU (NAND) - în logica matematică
denumită funcţia Sheffer, se mai notează A ↑BF15 = 1 Funcţia constantă 1
Sisteme complete de FB
Un set de FB este complet dacă orice FB poate fi exprimată folosind funcţiile din acel set.Ex. {+,.,’} este un set complet de FB (vezi reprezentările canonice ale FB).
Sisteme complete de FB
Ex. {+,’} este un set complet de FB.Arătăm ca setul {+,.,’} poate fi reprezentat de FB din setul Ex. {+,’}a+b=a+ba.b=((a.b)’)’=(a’+b’)’ - s-a folosit DeMorgana’=a’
Sisteme complete de FB
Ex. {.,’} este un set complet de FB.Arătăm ca setul {+,.,’} poate fi reprezentat de FB din setul Ex. {.,’}a.b=a.ba+b=((a+b)’)’=(a’.b’)’ - s-a folosit DeMorgana’=a’
Sisteme complete de FB
Ex. {↓↑,’} este un set complet de FB. S-a notat cu ↓ funcţia SAU-NUArătăm ca setul {+,.,’} poate fi reprezentat de FB din setul Ex. {↓}a’=(a+a)’=a↓aa+b=((a+b)’)’=(a↓b)’=(a↓b) ↓(a↓b)a.b=(a’+b’)=a’ ↓b’=(a↓a) ↓(b↓b)
Sisteme complete de FB
Ex. {↑} este un set complet de FB. S-a notat cu ↑ funcţia SI-NUArătăm ca setul {+,.,’} poate fi reprezentat de FB din setul Ex. {↑}a’=(a.a)’=a ↑ aa.b=((a.b)’)’=(a ↑ b)’=(a ↑ b) ↑(a ↑ b)a+b=(a’.b’)=a’ ↑ b’=(a ↑ a) ↑(b ↑ b)
Reprezentări grafice
Tabele de adevărScheme de operatori (porţi logice)Arbori de decizie binarăDiagrame Veitch-KarnaughScheme cu contacteHipercubDiagrame de semnale
Reprezentări analitice
Simbolice– forme normale necanonice disjunctive şi
conjunctive– forme normale canonice disjunctive şi conjunctive– simbol de marcare
Coduri– vectori booleeni– numere convenţionale– notaţia cubică poziţională
Tabele de adevăr
Unei funcţii de n variabile i se asociază o tabelă cu:– 2n linii – corespund celor 2n combinaţii posibile ale
variabilelor– n+1 coloane – n coloane corespunzătoare celor n
variabile şi o coloană pentru valorile funcţiei
Tabele de adevăr
Funcţie de 3 variabile
a b c f
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1
Definiţii
Un literal este apariţia unei variabile în forma normală sau negată.– Ex. x, x’, a, a’, x1, x1’ etc.
Un termen produs sau termen normal conjunctiv este produsul logic al mai multor literale. Fiecare literal apare o singură dată– Ex. x.z’, a.b’.c, x1’.x2.x3
Definiţii
Un minterm sau constituent al unităţii este un termen produs care include toate variabilele de care depinde funcţia.
– Ex. Pentru f(x,y,z)x.y.z, x’.y.z sunt mintermi, x.y nu este minterm pentru ca lipseşte variabila z– Ex. Pentru f(a,b,c,d)a.b.c.d’, a’.b.c.d’ sunt mintermia.d nu este minterm pentru că lipsesc variabilele b şi c
Definiţii
Un maxterm sau constituent al lui 0 este un termen sumă care include toate variabilele de care depinde funcţia.
– Ex. Pentru f(x,y,z)x+y+z, x’+y+z sunt maxtermi, x+y nu este maxterm pentru ca lipseşte variabila z– Ex. Pentru f(a,b,c,d)a+b+c+d’, a’+b+c+d’ sunt mintermia+d nu este maxterm pentru că lipsesc variabilele b şi c
Definiţii
Un termen sumă sau termen normal disjunctiv este suma logică a mai multor literale. Fiecare literal apare o singură dată– Ex. x+z’, a+b’+c, x1’+x2+x3
Definiţii
O expresie sumă de produse sau formă normală disjunctivă este formată din suma logică a mai multor termeni produs.Ex.
a.b’.c’+a’.b.c+a’.b.c’ObservaţiePentru simplificare, când nu există dubii, operatorul “.”
se poate omiteEx.
ab’c’+a’bc+a’bc’
Definiţii
O expresie produs de sume sau formă normală conjunctivă este formată din produsul logic a mai multor termeni sumă.Ex.
(a+b’+c’).(a’+b+c).(a’+b+c’)ObservaţiePentru simplificare, când nu există dubii, operatorul “.”
se poate omiteEx.
(a+b’+c’)(a’+b+c)(a’+b+c’)
Adiacenţă
Doi termeni sunt adiacenţi dacă ei au acelaşi număr de variabile şi diferă prin forma unei singure variabile.
Ex.a.b.c’ şi a.b.c sunt adiacenţi pentru că diferă prin forma variabilei c care în primul termen apare negat iar in cel de al doilea apare normala’.b.c’.d şi a’.b’.c’.d’ nu sunt adiacenţi pentru că diferă prin forma a două variabile b şi d.a’+b+c şi a+b+c sunt adiacenţi pentru că diferă prin forma variabilei a care în primul termen apare negat iar in cel de al doilea apare normala+b+c’+d’ şi a’+b’+c’+d’ nu sunt adiacenţi pentru că diferă prin forma a două variabile a şi b.
Tabela de adevăr şi mintermi
Regulă:Fiecărei combinaţii de valori îi corespunde un
minterm în care– xi apare normal dacă pentru combinaţia
respectivă xi=1– xi apare negat dacă pentru combinaţia respectivă
xi=0
Tabele de adevăr şi mintermi
Funcţie de 2 variabile
a b f Mintermi Notaţie
0 m0
m1
m2
m3
1
1
0
0 0 a’.b’
0 1 a’.b
1 0 a.b’
1 1 a.b
Tabele de adevăr
Funcţie de 3 variabile
a b c f Mintermi Notaţie
a’.b’.c’ m0
m1
m2
m3
m4
m5
m6
m7
a’.b’.c
a’.b.c’
a’.b.c
a.b’.c’
a.b’.c
a.b.c’
a.b.c
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 0
Tabela de adevăr şi maxtermi
Regulă:Fiecărei combinaţii de valori îi corespunde un
maxterm în care– xi apare negat dacă pentru combinaţia respectivă
xi=1– xi apare normal dacă pentru combinaţia
respectivă xi=0
Tabele de adevăr şi mintermi
Funcţie de 2 variabile
a b f Maxtermi Notaţie
0 M0
M1
M2
M3
1
1
0
0 0 a+b
0 1 a+b’
1 0 a’+b
1 1 a’+b’
Tabele de adevăr
Funcţie de 3 variabile
a b c f Maxtermi Notaţie
a+b+c M0
M1
M2
M3
M4
M5
M6
M7
a+b+c’
a+b’+c
a+b’+c’
a’+b+c
a’+b+c’
a’+b’+c
a’+b’+c’
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 0
Forma canonică normal disjunctivă
O funcţie f(x1,x2,...,xn) poate fi scrisă sub forma canonică normal disjunctivă:
2n-1
f(x1,x2,...,xn)=Σ αK.mKK=0
unde αK=f(kn-1,kn-2,...,k1,k0) este valoarea funcţiei din tabelul de adevăr corespunzător mintermului mk
Forma canonică normal disjunctivă
f(a,b)==f(0,0).a’.b’+ f(0,1).a’.b+ f(1,0).a.b’+ f(1,1).a.b==a’.b+a.b
a b f Mintermi Notaţie
0 m0
m1
m2
m3
1
1
0
0 0 a’.b’0 1 a’.b
1 0 a.b’
1 1 a.b
Forma canonică normal disjunctivă
Funcţie de 3 variabilef(a,b,c)=m2+m3+m4=
= a’.b.c’+ a’.b.c+ a.b’.c’
a b c f Min-termi
Notaţie
a’.b’.c’ m0
m1
m2
m3
m4
m5
m6
m7
a’.b’.c
a’.b.c’
a’.b.c
a.b’.c’
a.b’.c
a.b.c’
a.b.c
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 0
Forma canonică normal disjunctivă
FCND este formată din suma logică a mintermilor pentru care funcţia ia valoarea 1.Observaţie: FCND are atâţia mintermi câte valori de 1 are funcţia
Forma canonică normal conjunctivă
O funcţie f(x1,x2,...,xn) poate fi scrisă sub forma canonică normal conjunctivă:
2n
-1
f(x1,x2,...,xn)=Π (βK+MK)K=0
unde βK=f(kn-1,kn-2,...,k1,k0) este valoarea funcţiei din tabelul de adevăr corespunzător maxtermului Mk
Forma canonică normal conjunctivă
f(a,b)==(f(0,0)+a+b).( f(0,1)+a+b’).( f(1,0)+a’+b).( f(1,1)+a’+b’)==M0.M3==(a+b).(a’+b’) a b f Maxtermi Notaţie
0 M0
M1
M2
M3
1
1
0
0 0 a+b
0 1 a+b’
1 0 a’+b
1 1 a’+b’
Forma canonică normal conjunctivă
Funcţie de 3 variabilef(a,b,c)=M0.M1.M5.M6.M7
=(a+b+c)..(a+b+c’)..(a’+b+c’)..(a’+b’+c)..(a’+b’+c’)
a b c f Maxtermi Notaţiea+b+c M0
M1
M2
M3
M4
M5
M6
M7
a+b+c’
a+b’+c
a+b’+c’
a’+b+c
a’+b+c’
a’+b’+c
a’+b’+c’
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 0
Forma canonică normal conjunctivă
FCNC este formată din produsul logic al maxtermilor pentru care funcţia ia valoarea 0.Observaţie: FCNC are atâţia maxtermi câte valori de 0 are funcţia
Forme normale necanonice
Forma elementară a unei FB conţine termeni care nu sunt canoniciFormele elementare pot fi disjunctive (sume de produse) sau conjunctive (produse de sume)O formă neelementară a unei FB are doi sau mai mulţi termeni care conţin aceeaşi variabilăToate formele prezentate se numesc forme normale pentru că sunt alcătuite din termeni normali (termeni în care nici una din variabile nu apare decât o singură dată
Forme normale necanonice. Exemplu
Funcţia de 3 variabile având forma canonică:f(a,b,c)=a.b’.c’+a’.b’.c’+a.b.c+a.b.c’+a.b’.c
se poate reprezenta în două forme elementare disjunctive:
f(a,b,c)=b’.c’+a.b+a.cf(a,b,c)=b’.c’+a
sau într-o formă elementară conjunctivăf(a,b,c)=(a+b’).(a+c’)
Forme neelementare. Exemplu
Funcţia de 3 variabile având forma canonică:f(a,b,c)=a.b’.c’+a’.b’.c’+a.b.c+a.b.c’+a.b’.c
se poate reprezenta în forma neelementarăf(a,b,c)=b’.c’+a.(b+c)
Diagrama Veitch Karnaugh (V-K)
metodă grafică de a reprezenta într-o formă condensată tabelul de adevăr al unei FBpoate fi folosită pentru reprezentarea FB cu un număr oricât de mare de variabile însă, în mod practic, se utilizează pentru reprezentarea FB cu până la 6 variabile
Structură
Dacă n este numărul de variabile, diagrama V-K va avea 2n căsuţe, una pentru fiecare din cei 2n mintermi (maxtermi) ai FB deci, câte una pentru fiecare linie a tabelului de adevăr al funcţieicăsuţe sunt aranjate în astfel încât mintermii (maxtermii) sunt reprezentaţi într-o dispoziţie geometrică care permite evidenţierea mintermilor adiacenţiLiniile şi coloanele diagramei V-K sunt etichetate astfel încât combinaţia variabilelor de intrare pentru fiecare căsuţă este determinată cu uşurinţă din etichetele ataşate liniei şi coloanei corespunzătoare căsuţei
Diagrama V-K pentru n=2
x y f
0 0 0 m0
0 1 1 m1
1 0 1 m2
1 1 1 m3
Tabela de adevăr a funcţiei f
Diagrama V-K a funcţiei f
f
x
0 1 x
0 m0
0m1
1
1 m2
1m3
1y
y
Diagrama V-K pentru n=3
x y z g
0 0 0 0 m0
0 0 1 1 m1
0 1 0 1 m2
0 1 1 0 m3
1 0 0 0 m4
1 0 1 1 m5
1 1 0 0 m6
1 1 1 1 m7
g
y
00 01 11 10 yz
0 m0
0m1
1m3
0m2
1
1 m4
0m5
1m7
1m6
0x
x
z
Tabela de adevăr a funcţiei gDiagrama V-K a funcţiei g(a se observa schimbarea poziţiei combinaţiilor 10 cu 11 pentru a obţine adiacenţa între căsuţele alăturate)
Liniile indică zonele pentru care variabila ia valoarea 1
Diagrama V-K pentru n=4
x y z w h
0 0 0 0 0 m0
0 0 0 1 1 m1
0 0 1 0 1 m2
0 0 1 1 1 m3
0 1 0 0 0 m4
0 1 0 1 0 m5
0 1 1 0 1 m6
0 1 1 1 1 m7
1 0 0 0 0 m8
1 0 0 1 1 m9
1 0 1 0 0 m10
1 0 1 1 1 m11
1 1 0 0 0 m12
1 1 0 1 1 m13
1 1 1 0 1 m14
1 1 1 1 0 m15
h
z
00 01 11 10 zw
00 m0
0m1
1m3
1m2
1
01 m4
0m5
0m7
1m6
1y
x 11 m12
0m13
1m15
0m14
1
10 m8
0m9
1m11
1m10
0
xy
w
(a se observa schimbarea poziţiei combinaţiilor 10 cu 11
pentru a obţine adiacenţa între căsuţele alăturate)
Reprezentarea FB pe hipercub
Funcţii de o variabilă– Se utilizează un sistem cu o axă de coordonate– Valorile de 0 indicate cu un cerc gol– Valorile de 1 indicate printr-un cerc plin
10
Exemplu f(x)=x
10
x
x
Reprezentarea FB pe hipercub(2 variabile)
Funcţii de două variabile– se utilizează un sistem cu 2
axe de coordonate (câte una pentru fiecare variabilă)
– Hipercubul corespunde unui pătrat
– Cele 4 combinaţii posibile ale valorilor funcţiei corespund celor 4 vârfuri ale pătratului
(0,0) (0,1)
(1,1)(1,0)
x
y
Reprezentarea FB pe hipercub(2 variabile)
Funcţii de două variabile– Exemplu: f(a,b)=a+b
– Exemplu: f(a,b)=a.b
(0,0) (0,1)
(1,1)(1,0)
a
b
(0,0) (0,1)
(1,1)(1,0)
a
b
Reprezentarea FB pe hipercub(3 variabile)
Funcţii de 3 variabilese utilizează un sistem cu 3 axe de coordonate (câte una pentru fiecare variabilă)Hipercubul corespunde unui cubCele 8 combinaţii posibile ale valorilor funcţiei corespund celor 8 vârfuri ale cubului
(0,0,0) (0,0,1)
(0,1,0) (0,1,1)(1,0,0)
(1,0,1)
(1,1,0) (1,1,1)
x
y
z
Reprezentarea FB pe hipercub(3 variabile)
Funcţii de 3 variabile– Exemplu: f(a,b,c)=a.b+a.c
(0,0,0) (0,0,1)
(0,1,0) (0,1,1)(1,0,0)
(1,0,1)
(1,1,0) (1,1,1)
a
b
c
Reprezentarea FB prin diagrame de semnale
Reprezentarea funcţiei f(a,b)=a.b
Reprezentarea funcţiei f(a,b)=a+b
Introducere
Deoarece FB modelează funcţionarea circuitelor logice sau schemelor cu contacte minimizarea poate determina reducerea costurilor de materializare a acestor scheme
Problema minimizării
Fiind dată o FB F (sau mai multe FB, F1,..,Fs), se cere să se obţină o expresie a FB (sau a FB F1,..,Fs) care să îndeplinească o condiţie de minimalitate.
Criterii de minimalitate
apariţia unui număr minim de literaleapariţia unui număr minim de literale într-o expresie normal disjunctivă (sumă de produse)număr minim de termeni produs într-o expresie normal disjunctivădiferenţă minimă între numărul de variabile în formă normală şi numărul de variabile în formă negată (luată în modul)funcţia să poată fi materializată cu număr minim de module dintr-un anumit set (porţi logice, contactoare de un anumit tip,...)timpii de întârziere introduşi de circuitul materializat să fie minimetc
Problema minimizării FB în forma normal disjunctivă
Fiind dată o FB în forma normal disjunctivă să se găsească o expresie tot în forma normal dijunctivă care să aibă un număr minim de literale
Metoda 1. Exemplu
Se dă funcţia
f(x,y,z)=m0+m2+m3+m4+m5+m7=x’.y’.z’+ x’.y.z’+x’.y.z+ x.y’.z’+ x.y’.z+ x.y.z.
Adăugăm m0+m7
f(x,y,z)=m0+m2+m3+m4+m5+m7=x’.y’.z’+ x’.y.z’+x’.y.z+ x.y’.z’+ x.y’.z+ x.y.z+x’.y’.z’ + x.y.z.
Metoda 1. Exemplu
Combinăm m0 şi m2, m0 şi m4, m3 şi m7, m5 şi m7şi obţinem:
f(x,y,z)=x’.z’(y+y’)+y’.z’.(x+x’) +y.z.(x’+x) +x.z.(y’+y)=x’.z’+y’.z’+y.z+x.z
Dacă combinăm m0 şi m2, m4 şi m5, m3 şi m7obţinem:f(x,y,z)=x’.z’(y+y’)+x.y’.(z’+z)+y.z.(x’+x)= x’.z’+x.y’+y.z
Metoda 1. Exemplu
Dacă în mod similar grupăm m2 cu m3, m4 cu m0 şi m5 cu m7, se obţine pentru funcţia f expresia:f(x,y,z)=x’.y+y’.z’+x.z
Observaţii:– pentru aceeaşi funcţie am obţinut mai multe expresii reduse
faţă de expresia iniţială – dintre cele trei expresii însă numai ultimele două sunt
expresii minime – pentru o FB se pot obţine una sau mai multe expresii
minime
Metoda 2. Diagrama Veitch-Karnaugh
este o metodă grafică pentru minimizarea cu uşurinţă a FB cu până la 6 variabilecăsuţele sunt aranjate în astfel încât mintermii (maxtermii) sunt reprezentaţi într-o dispoziţie geometrică care permite evidenţierea mintermilor adiacenţi
Metoda 2. Diagrama Veitch-Karnaugh
fiecare căsuţă care are un 1 corespunde unui minterm a FCND a funcţieidouă celule adiacente în diagramă corespund la doi mintermi care diferă între ei doar prin forma unei singure variabileperechea de valori de 1 se încercuieşte indicând astfel că mintermii corespunzători se combină rezultând un singur termen
Metoda 2. Diagrama Veitch-Karnaugh
Regula prin care se determină cum pot fi grupate căsuţele conţinând valori de 1 este următoarea:
– - o mulţime de 2i celule pot fi grupate dacă există i variabile ale funcţiei booleene care iau toate cele 2i combinaţii posibile în acea mulţime de căsuţe în timp ce celelalte n-i variabile au aceeaşi valoare pentru aceeaşi mulţime de căsuţe.
– Termenul corespunzător grupării va conţine cele n-i variabile în care variabila este în formă normală dacă ea apare ca 1 pentru toate căsuţele grupării şi în forma negată dacă ea apare ca 0 pentru toate căsuţele grupării.
Metoda 2. Diagrama Veitch-Karnaugh
Din punct de vedere grafic, regula de mai sus ne spune că putem încercui mulţimi dreptunghiulare având 2i valori de 1, prin aceasta înţelegând şi mulţimile dreptunghiulare obţinute dacă muchiile opuse diagramei ar fi unite
Metoda 2. Diagrama Veitch-Karnaugh
Se pot determina variabilele şi forma pe care acestea o au în termenul rezultant:
– dacă o încercuire acoperă căsuţe în care variabila este 0 atunci variabila apare în termenul rezultant în forma negată
– dacă o încercuire acoperă căsuţe în care variabila este 1, atunci variabila apare în termenul rezultant în forma normală.
– dacă o încercuire acoperă atât căsuţe în care variabila este 0 cât şi căsuţe în care variabila este 1, atunci acea variabilă nu mai apare în termenul rezultant.
Metoda 2. Exemplul 1
Confrom figurilor putem scrie:g(x,y,z)=xz+y’z+x’yz’h(x,y,z,w)=x’w+xz’w+x’z+yzw’
g h x’yz’ yz y x’w zw z x 00 01 11 10 xy 00 01 11 10 y’z 0 0 1 0 1 xz’w 00 0 1 1 1 1 0 1 1 0 x 01 0 0 1 1 y xz x’z x 11 0 1 0 1 z 10 0 1 1 0 yzw’
w
Teorema implicanţilor primi
pentru o funcţie booleană, o expresie sub forma normală (sumă de produse) minimală este o sumă de implicanţi primi ai funcţiei.Observaţie:– pentru a obţine o expresie minimală a funcţiei nu
va trebui să luăm în considerare termenii care nu sunt implicanţi primi
Diagrame V-K şi implicanţi primi
În cadrul diagramei V-K, un implicant prim este reprezentat printr-o încercuire rectangulară de valori de 1 (conform regulii prezentate anterior) care dacă încercăm să o mărim (acoperind de două ori mai multe căsuţe) va cuprinde şi valori de 0
Obţinerea expresiei minimale
expresie minimală se va obţine astfel prin alegerea încercuirilor cele mai mari şi astfel încât fiecare valoare de 1 să fie cuprinsă în cât mai puţine încercuiri
Metoda 2. Exemplul 2
t1=x’yz f zw z t2=yzw xy 00 01 11 10 00 0 0 0 0 t3=xyw 01 0 0 1 1 y x 11 0 1 1 0 t4=xz’w 10 1 1 0 0 t5=xy’z’ w
Metoda 2. Exemplul 2
Funcţia f se poate scrie ca suma tuturor implicanţilor primi:
f(x,y,z)=t1+t2+t3+t4+t5
forma minimală se obţine însă ca suma:
f(x,y,z)=t1+t3+t5= x’yz+ xyw+ xy’z’
Metoda Quine McCluskey
Permite minimizarea unor funcţii cu număr mare de variabilepermite implementarea uşoară a algoritmului cu ajutorul unui program pe calculator
Pondere a unui număr binar
Ponderea unui număr binar este numărul zecimal egal cu numărul de biţi având valoarea 1 din reprezentarea binară a respectivului numărExemplu– Ponderea numărului binar x=1001 este 2– Ponderea numărului binar x=1101 este 3
Algoritmul Quine-McCluskey
Se porneşte de la forma canonică disjunctivă a funcţiei şi se parcurg etapele:1. se face conversia din zecimal în binar a indicilor
mintermenilor funcţiei binare2. se împart numerele binare care reprezintă indicii
mintermenilor în grupuri, după ponderea fiecărui indice, în sens crescător al ponderilor; grupurile se separă între ele prin linii orizontale şi rezultă primul tabel
Algoritmul Quine-McCluskey(continuare)
3. se compară fiecare număr binar din grupul de pondere i cu fiecare număr binar din grupul de pondere i + 1, pentru toate grupurile. Două numere binare formează o nouă grupare dacă diferă printr-un singur bit de acelaşi rang. Gruparea nouă se trece într-un al doilea tabel
Algoritmul Quine-McCluskey(continuare)
4. De fiecare dată când ponderea i de la punctul 3 creşte cu o unitate, se trage o linie orizontală întabelul 2. După completarea tabelului 2, se repetă comparaţiilede la punctul 3, pentru elementele din tabel şi rezultătabelul 3, şi aşa mai departe5. când se ajunge la un tabel care conţine un singurnumăr binar, atunci termenul corespunzător este un implicant prim al funcţiei. Ceilalţi implicanăţi primi segăsesc căutând în toate tabelele construite termeniicare nu au fost folosiţi în comparaţii.
Definiţie
Sisteme la care semnalele de ieşire depind doar de combinaţia valorilor semnalelor aplicate la intrare.
Descriere
Funcţionarea circuitelor combinaţionale este descrisă de un set de funcţii booleene
y1=F1(x1,x2,...,xn)
Valorile aplicate la intrare şi valorile la ieşire pot fi doar 0 şi 1.
y2=F2(x1,x2,...,xn).........................ym=Fm(x1,x2,...,xn)
Observaţii
Materializarea FB determină structura internă a CLCO FB poate fi reprezentată folosind diverse expresii booleene => un CLC poate avea diverse structuri realizând aceeaşi funcţionalitateUrmătoarele denumiri se pot folosi una în locul celeilalte:
– variabilă = semnal de intrare = intrare– funcţie = semnal de ieşire = ieşire
Specificarea CLC
CLC pot fi specificate în 2 moduri:– funcţional – descrie funcţionarea circuitului
indicând modul în care se modifică ieşirile la modificarea intrărilor (circuitul este tratat ca o cutie neagră)
– structural – descrie structura internă a circuitului prin specificarea elementelor componente şi legăturile dintre acestea
Probleme
Există două tipuri de probleme legate de CLC– analiza CLC – se porneşte de la structura unui
CLC şi se cere să se determine funcţionalitatea acestuia
– sinteza CLC – se porneşte de la descrierea funcţionării CLC şi se cere structura acestuia
Subproblema 1
Se dă structura circuituluiSe cere valoarea ieşirilor circuitului pentru o anumită combinaţie a valorilor intrărilor
Subproblema 1. Procedeu
1. Se porneşte de la intrările circuitului. Pentru fiecare poartă logică care depinde doar de intrările circuitului se determină expresia FB a ieşirii acesteia
2. Pentru fiecare poartă logică care are ca intrări intrările circuitului sau ieşirile altor porţi logice se determină expresia FB a ieşirii
3. Se repetă paşii 1 şi 2 până când ieşirile porţilor sunt de fapt ieşirile circuitului.
4. Aplicând proprietăţile algebrei booleene se simplică FB obţinute (etapă opţională dar utilă pentru reducerea volumului de calcul)
5. În expresiile obţinute se înlocuiesc valorile pentru care se caută valorile la ieşirea CLC
Subproblema 1. Exemplu
Să se determine valorile la ieşirile circuitului din figură pentru x1=0, x2=1, x3=1 şi x4=0.
Subprobelma 1. Exemplu
Funcţiile corespunzătoare celor două ieşiri sunt:– F1(x1,x2,x3,x4)=x1x3’+x2(x3.x4+x1)– F2(x1,x2,x3,x4)= x2(x3.x4+x1)
Înlocuim valorile x1=0, x2=1, x3=1 şi x4=0 – F1(0,1,1,0)=0.1’+1.(1.0+0)=0+0.0=0– F2(0,1,1,0)= 1.(1.0+0)=1.0=0
Subproblema 2
Se dă structura circuituluiSe cere valoarea ieşirilor circuitului pentru toate combinaţiile valorilor intrărilor
Subproblema 2. Procedeu
1. Se porneşte de la intrările circuitului. Pentru fiecare poartă logică care depinde doar de intrările circuitului se determină expresia FB a ieşirii acesteia
2. Pentru fiecare poartă logică care are ca intrări intrările circuitului sau ieşirile altor porţi logice se determină expresia FB a ieşirii
3. Se repetă paşii 1 şi 2 până când ieşirile porţilor sunt de fapt ieşirile circuitului.
4. Se obţine o formă normală (sumă de produse sau produse de sume) prin desfacerea parantezelor
5. Se determină forma canonică normal disjunctivă sau conjunctivă (facem să apară variabilele lipsă folosind proprietatea x+x’=1)
6. Pe baza formei canonice se construieşte tabela de adevăr
Subproblema 2. Exemplu
Să se determine valorile la ieşirile circuitului pentru toate combinaţiile posibile aplicate la intrări.
Subprobelma 1. Exemplu
Funcţiile corespunzătoare celor două ieşiri sunt:– F1(x1,x2,x3,x4)=x1x3’+x2(x3.x4+x1)– F2(x1,x2,x3,x4)= x2(x3.x4+x1)
Determinăm formele normale disjunctive (sume de produse)– F1(x1,x2,x3,x4)=x1x3’+x2.x3.x4+x1. x2
– F2(x1,x2,x3,x4)= x2.x3.x4+x1. x2
Subprobelma 1. Exemplu
Determinăm formele canonice normal disjunctive– F1(x1,x2,x3,x4)=x1x3’.(x2+ x2’).( x4+ x4’)+
+(x1+ x1’).x2.x3.x4+x1. x2.(x3+ x3’) .(x4+ x4’)– F2(x1,x2,x3,x4)= (x1+ x1’).x2.x3.x4+x1. x2.(x3+ x3’). .(x4+ x4’)
Desfacem parantezele– F1=x1.x2.x3’. x4 +x1x2. x3’. x4’+x1.x2’.x3’. x4 +x1x2’. x3’. x4+
+x1.x2.x3.x4+ x1’ .x2.x3.x4 + x1. x2.x3 .x4 +x1. x2. x3’ .x4+x1. x2.x3.x4’+x1. x2. x3’ .x4’
– F2(x1,x2,x3,x4)= x1.x2.x3.x4+ x1’ .x2.x3.x4 + x1. x2.x3 .x4 +x1. x2. x3’ .x4+x1. x2.x3.x4’+x1. x2. x3’ .x4’
Subprobelma 1. Exemplu
Eliminăm termenii care se repetă– F1=x1.x2.x3’. x4 +x1x2. x3’. x4’+x1.x2’.x3’. x4 +
+x1.x2.x3.x4+ x1’ .x2.x3.x4 +x1. x2.x3.x4’ =m1+m2+m3+m6+m8+m15
– F2(x1,x2,x3,x4)= x1.x2.x3.x4+ x1’ .x2.x3.x4 +x1. x2. x3’ .x4+x1. x2.x3.x4’+x1. x2. x3’ .x4’=m2+m3+m8+m15
Subprobelma 1. Exemplu
Construim tabela de adevăr pentru cele două funcţii F1şi F2 trecând valori de 1 în dreptul mintermilor care intră în componenţa FCND . Restul valorilor vor fi 0
x1 x2 x3 x4 F1 F2
0 0 0 0 0 0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
1
m0
0 0 0 1 1 m1
0 0 1 0 1 m2
0 0 1 1 1 m3
0 1 0 0 0 m4
0 1 0 1 0 m5
0 1 1 0 1 m6
0 1 1 1 0 m7
1 0 0 0 1 m8
1 0 0 1 0 m9
1 0 1 0 0 m10
1 0 1 1 0 m11
1 1 0 0 0 m12
1 1 0 1 0 m13
1 1 1 0 0 m14
1 1 1 1 1 m15
Sinteza circuitelor logicecombinaţionale
cunoscând modul de funcţionare a circuitului combinaţional exprimat prin valorile semnalelor de ieşire corespunzătoare diferitelor combinaţii ale variabilelor de intrare, se cere să se stabilească structura circuitului
Etapele sintezei
sinteza abstractă– care constă în stabilirea expresiilor funcţiilor booleene care
corespund condiţiilor impuse între semnalele de ieşire şi de intrare.
– Pentru ca circuitul realizat să fie cât mai simplu şi deci mai economic, se caută expresiile minime ale funcţiilor.
– Din punct de vedere matematic, problemele de sinteză presupun minimizarea funcţiilor booleene în sistemul de funcţii elementare alese din considerente practice;
sinteza structurală, – constă în determinarea structurii fizice a circuitului sintetizat. – se face în funcţie de tipul circuitelor logice elementare (module)
şi de numărul de intrări ale acestora, de semnalele disponibile în diferite puncte ale sistemului etc.
Algoritmul sintezei circuitelor combinaţionale
Din condiţiile problemei se stabilesc corespondenţele între combinaţiile semnalelor de intrare şi ieşire folosind tabelul de adevăr, diagrama V-K etc.Se realizează minimizarea funcţiilor booleene care rezultă din etapa precedentăSe implementează daca este cazul cu funcţiile elementare impuse de realizarea practicăSe stabileşte logigrama plecând de la forma minimă obţinută pentru funcţiile de ieşire în pasul al treileaSe analizează circuitul obţinut pentru a vedea dacă corespunde condiţiilor impuse iniţial (etapă facultativă).
Circuite de validare
Semnalul de validare permite unui semnal să treacă printr-o poartă logicăSemnalul de invalidare blochează un semnal să treacă spre ieşire şi face ca la ieşire să avem un semnal de valoare fixă (0 sau 1).
Decodare
Operaţia de conversie a unei intrări pe n biţi intr-o ieşire de m biţiCircuitele care realizează decodarea se numesc decodoaredenumite decodoare n la m unde m<=2n
Decodoare
Un decodor 2 la 4 are 2 intrări şi 4 ieşiriFuncţionarea acestui decodor este dată de tabela de adevăr
S1 S0 Q0 Q1 Q2 Q30 0 1 0 0 00 1 0 1 0 01 0 0 0 1 01 1 0 0 0 1
Decodoare
Pe baza tabelului de adevăr se pot determina ecuaţiile care descriu funcţionarea decodorului şi schema care realizează această funcţionare:Q0 = S1’ S0’Q1 = S1’ S0Q2 = S1 S0’Q3 = S1 S0
Decodoare cu intrări de validare
Multe circuite au o intrare adiţională numită de validare care permite activarea sau dezactivarea circuituluiPentru decodor– EN=1 activează circuitul (doar o ieşire va fi 1)– EN=0, dezactivează circuitul. Prin convenţie asta
înseamnă că toate ieşirile vor fi 0.
Decodoare cu intrări de validare
Tabela de adevăr a decodorului va fi:
EN S1 S0 Q0 Q1 Q2 Q30 0 0 0 0 0 00 0 1 0 0 0 00 1 0 0 0 0 00 1 1 0 0 0 01 0 0 1 0 0 01 0 1 0 1 0 01 1 0 0 0 1 01 1 1 0 0 0 1
Decodoare cu intrări de validare
Se observă că pentru EN=0 toate ieşirile sunt 0 indiferent de valorile intrărilor S0 şi S1
Tabela poate fi scrisă într-un format mai compact astfel:
EN S1 S0 Q0 Q1 Q2 Q30 0 0 0 0 0 00 0 1 0 0 0 00 1 0 0 0 0 00 1 1 0 0 0 01 0 0 1 0 0 01 0 1 0 1 0 01 1 0 0 0 1 01 1 1 0 0 0 1
EN S1 S0 Q0 Q1 Q2 Q30 x x 0 0 0 01 0 0 1 0 0 01 0 1 0 1 0 01 1 0 0 0 1 01 1 1 0 0 0 1
Decodor 3 la 8
S2 S1 S0 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q70 0 0 1 0 0 0 0 0 0 00 0 1 0 1 0 0 0 0 0 00 1 0 0 0 1 0 0 0 0 00 1 1 0 0 0 1 0 0 0 01 0 0 0 0 0 0 1 0 0 01 0 1 0 0 0 0 0 1 0 01 1 0 0 0 0 0 0 0 1 01 1 1 0 0 0 0 0 0 0 1
Q0 = S2’ S1’ S0’Q1 = S2’ S1’ S0Q2 = S2’ S1 S0’Q3 = S2’ S1 S0Q4 = S2 S1’ S0’Q5 = S2 S1’ S0Q6 = S2 S1 S0’Q7 = S2 S1 S0
Implementarea FB utilizând decodoarele
Decodoarele sunt uneori denumite generatoare de mintermi.
– pentru fiecare combinaţie la intrări doar una dintre ieşiri este 1
– fiecare ecuaţie conţine toate variabilele de intrare
– proprietăţile sunt adevărate pentru decodoare de orice dimensiune
Cu ajutorul decodoarelor se poate implementa orice funcţie
Q0 = S1’ S0’Q1 = S1’ S0Q2 = S1 S0’Q3 = S1 S0
Implementarea FB utilizând decodoarele. Exemplu
Funcţiile având tabelul de adevăr de mai jos pot fi scrise sub forma canonică disjunctivă astfel:
– C(x,y,z)=m3+m5+m6+m7– C(x,y,z)=m1+m2+m4+m7
X Y Z C S0 0 0 0 00 0 1 0 10 1 0 0 10 1 1 1 01 0 0 0 11 0 1 1 01 1 0 1 01 1 1 1 1
Multiplexoare
Un multiplexor 22->1 trimite una dintre cele 2n intrări la ieşirea circuitului.Un multiplexor are 2 seturi de intrări:
– 2n linii de date– n linii de selecţie
Multiplexorul 2->1 are ecuaţia şi blocul funcţional de mai jos:
Q = S’ D0 + S D1
Multiplexoare
Tabelul de adevăr al unui multiplexor este:
El poate fi scris mai compact astfel:
S D1 D0 Q0 0 0 00 0 1 10 1 0 00 1 1 11 0 0 01 0 1 01 1 0 11 1 1 1
S Q0 D01 D1
Implementarea FB folosind multiplexoarele
Multiplexoarele pot fi folosite pentru implementarea oricărei FB.Metoda 1 – folosind un multiplexor n->1:– pentru fiecare minterm mi a funcţiei se
conectează un 1 la intrarea Di (fiecare linie de date corespunde unui rând al tabelului de adevăr)
– celelalte intrări se conectează la 0.– se conectează variabilele de intrare la intrările de
selecţie a multiplexorului
Implementarea FB folosind multiplexoarele. Exemplu
Pentru funcţia f(x,y,z) = Σm(1,2,6,7)
x y z f0 0 0 00 0 1 10 1 0 10 1 1 01 0 0 01 0 1 01 1 0 11 1 1 1
Implementarea FB folosind multiplexoarele
Metoda 2 – se înlocuieşte un multiplexor 8->1 cu unul 4->1
– Se grupează rândurile din tabelul de adevăr
când xy=00, f=zcând xy=01, f=z’când xy=10, f=0când xy=11, f=1
– conectează primele 2 variabile la intrările de selecţie (x şi y) la intrările de selecţie S1 S0 ale multiplexorului 4->1.
– conectează ecuaţiile de mai sus la liniile de date D0-D3.
x y z f0 0 0 00 0 1 10 1 0 10 1 1 01 0 0 01 0 1 01 1 0 11 1 1 1
Circuite secvenţiale
Circuite logice combinaţionale– ieşirile depind doar de combinaţia de valori de la
intrareCircuite logice secvenţiale– ieşirile depind nu numai de combinaţia de valori
de la intrare ci şi de combinaţiile aplicate la intrare anterior
– circuitele necesită o componentă care să memoreze combinaţiile de valori anterioare
Circuit basculant bistabil
Circuitul care are două stări stabile distincte, în care tranziţiile de la o stare la alta au loc rapid prin procese de basculare amorsate cu ajutorul unor semnale de comandă aplicate din exterior.
Circuite basculante bistabile (CBB) de tip RS
Un bistabil RS este prevăzut cu două intrări de comandă (de date) notate S (Set) şi R (Reset) şi două ieşiri Q şi Q’. Notaţia folosită pentru ieşiri indică faptul că ieşirile circuitului sunt complementate.
CBB de tip RS
cu Q sau Q(t) se notează starea prezentă a circuitului, starea la momentul când se aplică semnalele de intrarecu Q+ sau Q(t+1) se notează starea următoare, starea pe care o ia circuitul ca răspuns la aplicare semnalului de intrare
CBB de tip RS
Intrarea S se va folosi pentru a înscrie informaţia în circuit, Intrarea R pentru a şterge informaţia din circuit.
CBB de tip RS. Tabela de adevăr
tn tn+1
Rn Sn Qn Qn+1
0 0 0 0
0 0 1 1 Qn+1=Qn
0 1 0 1
0 1 1 1 Qn+1=l
1 0 0 0
1 0 1 0 Qn+1=0
1 1 0 ?
1 1 1 ?
CBB de tip RS. Funcţionare
Circuitul funcţionează astfel:în lipsa unor comenzi pe intrări (Sn = Rn=0), starea circuitului să nu se schimbe Qn+1= Qn ). Spunem că în acest caz circuitul memorează starea sa anterioară.există posibilitatea de a înscrie informaţia în circuit. Comenzile aplicate vor fi Sn=1, Rn=0 iar la ieşire apare starea Qn+1 = 1.se poate şterge informaţia înmagazinată în circuit cu comenzile Sn = 0, Rn = 1. În acest caz ieşirea trece în starea Qn+1 = 0.
CBB de tip RS. Ecuaţii caracteristice
Rn.Sn=0Qn+1=Rn’.(Sn+Qn)= Rn↓(Sn↓Qn)Qn+1’=Sn’.(Rn+Qn’)= Sn↓ (Rn↓Qn’)
↓ reprezintă operatorul SAU-NU: a↓b=(a+b)’.
CBB de tip RS. Tabela de adevăr redusă
tn tn+1
Rn Sn Qn Qn+1
0 0 0 0
0 0 1 1 Qn+1=Qn
0 1 0 1
0 1 1 1 Qn+1=l
1 0 0 0
1 0 1 0 Qn+1=0
1 1 0 ?
1 1 1 ?
CBB de tip JK
Un circuit basculant bistabil JK este prevăzut cu două intrări de date J, KLa CBB sincrone există şi o intrare de tact, C.
CBB de tip JK. Tabela de adevăr
tn tn+1
Rn Sn Qn Qn+1
0 0 0 0
0 0 1 1 Qn+1=Qn
0 1 0 1
0 1 1 1 Qn+1=l1 0 0 0
1 0 1 0 Qn+1=01 1 0 1
1 1 1 0 Qn+1= Qn’
CBB de tip JK. Funcţionare
La un circuit bistabil JK, pentru combinaţia de semnale (J = K = 1) starea bistabilului la ieşire devine complementară stării precedente (adică J = K = 1 implică Qn+1= Qn’) pentru restul combinaţiilor dintre semnalele J şi K se comportă conform tabelului de adevăr al unui bistabil RS,Intrarea J este echivalentă intrării S iar intrarea K este echivalentă intrării R
CBB de tip JK. Tabela de adevăr redusă
tn tn+1
Kn Jn Qn Qn+1
0 0 0 0
0 0 1 1 Qn+1=Qn
0 1 0 1
0 1 1 1 Qn+1=l1 0 0 0
1 0 1 0 Qn+1=01 1 0 1
1 1 1 0 Qn+1= Qn’
CBB de tip D
Un circuit bistabil de tip D este prevăzut cu o intrare de date şi o intrare de tact C. La circuitele bistabile asincrone, intrarea de tact lipseşte.
CBB de tip D. Funcţionare
Starea ieşirii bistabilului D la momentul tn+1 este identică cu cea de la intrarea sa la momentul tn, cu alte cuvinte, semnalul de intrare este întârziat (de fapt şi denumirea sa D derivă din engleză de la delay = întârziere)
CBB de tip T
Bistabilul T are o singură intrare de date şi o intrare de tact C, care în regim asincron poate lipsi.
CBB de tip T. Funcţionare
Ieşirea bistabilului îşi păstrează starea (Qn+1= Qn) iar dacă intrarea de date este pe nivel "1" logic, starea la ieşirea bistabilului se schimbă (Qn+1 =Qn’)
Generalităţi
au apărut la sfârşitul anilor 60 în industria de automobile a dus la diminuarea timpilor necesari schimbării schemelor de comandă, de la aproape 1 lună la câteva zileApariţia microprocesoarelor şi utilizarea acestora în construcţiaAP a dus la dezvoltarea funcţionalităţii acestora odată cu reducerea preţului de cost cu îmbunătăţirea performanţelor componentelormicroelectronice, s-au îmbunătăţit şi performanţele AP
– gabaritul, – preţul de cost – consumul de energie
Avantajele AP
FlexibilitateaUşurinţă în modificarea programului şi corectare a erorilorNumăr mare de resurseCost redusCosturi reduse de punere în funcţiune
Avantajele AP
Posibilitatea vizualizării funcţionăriiViteza de funcţionareMetode diferite de programare
Avantajele AP
Siguranţa în funcţionareDocumentaţiaSimplitatea achiziţiei sistemului de comandăModificarea funcţionalităţii schemei de comandăAchiziţionarea rapidă a elementelor schemei de comandă
Flexibilitatea
AP elimină necesitatea ca să fie realizată o schemă de comandă pentru fiecare sistem de acţionare specific. cu un singur tip de AP pot fi implementate scheme de comandă diferite pe un singur AP pot fi implementate mai multe scheme de comandă. Acesta pot să comande în acelaşi timp mai multe sisteme de acţionare. ceea ce diferă la două AP care implementează schemele de comandă diferite este programul stocat în memoria fiecăruia.
Uşurinţă în modificarea programului şi corectare a erorilor
Cu ajutorul AP, modificarea schemei de comandă şi corectarea erorilor se poate face foarte simplu prin modificarea programului de aplicaţie din memoria AP cu ajutorul unei console de programare. La schemele de comandă clasice, atunci când sunt necesare modificări ale schemei sau corectarea erorilor
– trebuiesc refăcute legăturile fizice dintre elementele schemei– uneori, este necesară modificarea chiar a structurii schemei de
comandă prin adăugrarea de noi elemente. Modificarea structurii şi refacerea legăturilor fizice necesită
– timp de lucru destul de mare – abilitate din partea tehnicianului în urmărirea acestor legături.
Număr mare de resurse
Schemele clasicemodificarea unei scheme de comandă prin adăugarea, de exemplu, a unor contacte,necesita adăugarea unor relee sau blocuri de contacte suplimentare. Consecinţe
– costuri suplimentare şi – modificarea schemei de amplasare care să includă şi componentele noi.
AP adăugarea de contacte noi sau alte elemente intermediare (numărătoare, temporizatoare etc) se face foarte simplu prin adăugarea unor linii de program. dacă nu se depăşeşte capacitatea AP, nu se modifică nici necesarul de elemente componente ale schemeiConsecinţă
– nu avem creştere a costului implementării obţinute.
Cost redus
Costurile AP, realizate cu ajutorul circuitelor numerice integrate pe scară foarte largă, continuă să scadă datorită evoluţiei tehnologice în domeniul electronicii. Această evoluţie aduce şi alte avantaje cum ar fi: – miniaturizarea, – consum redus de energie, – creşterea vitezei de lucru.
Costuri reduse de punere în funcţiune
Schemele clasiceBuna funcţionare putea fi verificată doar după ce era realizată fizic schema cu relee pentru a fi apoi testată şi verificată.
AP Se reduc costurile necesare punerii în funcţiune a schemei de comandă deoarece este posibilă scrierea programului de aplicaţie, testarea acestuia, simularea şi efectuarea modificărilor în laborator, înainte de a fi realizată fizic schema.
Posibilitatea vizualizării funcţionării
În cazul AP este posibilă urmărirea funcţionării acestuia pe un ecran. Pot fi observate porţiunile din schema de comandă care sunt în funcţiune şi pot fi detectate vizual mai uşor cazurile în care apare o funcţionare defectuoasă. În unele scheme de comandă se poate realiza uşor identificarea unor funcţionări defectuoase prin afişarea unor mesaje de eroare.Elementele schemei de comandă pot fi uşor identificate în cadrul programului AP prin atribuirea acestora a unor nume simbolice, sugestiveSe pot adăuga comentarii pentru a uşura citirea schemei.
Viteza de funcţionare
Sistemele clasiceDatorită inerţiei părţilor mecanice în mişcare a elementelor (contactoare, relee), viteza de funcţionare a acestora este limitată şi pentru anumite aplicaţii inacceptabilă
APPe măsura evoluţiei tehnologiilor electronice, viteza de funcţionare a schemelor creşte tot mai mult ea fiind determinatăîn primul rând de timpul de baleiere a programului. La ora actuală, mărimea timpului de baleiere a programului este de ordinul milisecundelor.
Metode diferite de programare
La ora actuală, majoritatea producătorilor de AP dau utilizatorilor posibilitatea de a scrie programele de aplicaţie pentru AP utilizând diverse modele şi limbaje de programare. Unele limbaje sunt mai apropiate de schemele clasice cu relee, în timp ce, altele sunt mai apropiate de limbajele de programare.
Siguranţa în funcţionare
Prin utilizarea dispozitivelor electronice, siguranţa în funcţionare a schemelor de comandă realizate cu AP este mai ridicată decât a celor clasice ce utilizează relee mecanice. Întreţinerea dispozitivelor electronice este mai uşoară iar cheltuielile de reparaţii sunt şi ele reduse.
Documentaţia
Schemele clasiceModificări ale schemei de comandă, fizic realizate în circuitul electric, nu erau operate şi în schema electrică din documentaţie.După mai mulţi ani documentaţia poate să lipsească sau să fie incompletă
AP Programul de aplicaţie prin care AP urmează să implementeze schema de comandă, poate fi listat cu uşurinţă la o imprimantă.Se poate obţine oricând prin listare schema de comandă care este în acel moment în funcţionare
Securitate
Schemele clasicePosibilitatea de intervenţie şi de modificare în timpul funcţionării nu este întotdeauna asigurată
APModificarea programului după care funcţionează schema de comandă nu poate fi modificat decât dacă AP este oprit şi reprogramat.
Simplitatea achiziţiei sistemului de comandă
Sistemele clasiceErau alcătuite de cele mai multe ori din multe elemente diferite achiziţionate de la producători diferiţi. Obţinerea acestor produse atât pentru realizarea schemei dar şi pentru înlocuirea unor elemente defecte în decursul funcţionării acesteia este costisitoareNecesită timp şi alocare de resurse umane.
APAutomatele conţin de la început toate elementele necesare, deci acestea sunt disponibile toate odată la momentul achiziţiei. În mod normal, schemele de comandă nu folosesc toate resursele unui AP. Astfel, dacă avem nevoie de numărătoare, contacte temporizate sau alte elemente în plus, ele sunt deja acolo, în AP, la dispoziţia noastră.
Modificarea funcţionalităţii schemei de comandă
Funcţionalitatea schemei de comandă poate fi modificată uşor prin reprogramarea APSe pot realiza schimbări uşoare şi rapide în fluxul de producţie în care intră acestea, ceea ce constituie un avantaj. De exemplu, în cazul liniilor de asamblare comandate cu ajutorul AP, modificările necesare în cazul schimbării produsului asamblat necesitând un timp de ordinul minutelor necesar reprogramării AP.
Achiziţionarea rapidă a elementelor schemei de comandă
Prin achiziţionarea AP sunt de fapt achiziţionate simultan releele cu contacte, numărătoarele, temporizatoarele necesare realizării schemei de comandă care poate fi implementată prin program. De obicei, numărul acestora este mai mare decât necesarul real, ele sunt deja disponibile prin program şi nu este necesară comanda lor. AP actuale, permit utilizarea unor blocuri funcţionalecomplexe care oferă o gamă largă de posibilităţi de implementare a schemei de comandă.
Dezavantajele automatelor programabile
Noutatea tehnologieiAplicaţiile specificeInfluenţa mediuluiFuncţionarea nesigură la apariţia unor defecte
Noutatea tehnologiei
AP constituie o noutate tehnologică pentru majoritatea electricienilor şi tehnicienilorImpune un nou mod de gândire diferit de cel necesar schemelor de comandă clasice bazate pe relee cu contacte. Necesită utilizarea calculatorului pentru scrierea şi rescrierea programelor de aplicaţii pentru APUtilizează simboluri diferite faţă de standardele naţionale
Aplicaţii specifice
Există anumite scheme de comandă care sunt specifice unor anumite scheme de acţionare şi nu presupun modificarea acestora. În aceste cazuri nu se justifică utilizarea unor sisteme de comandă bazate pe elemente ce pot fi programate, cum ar fi AP. Pentru rezolvarea acestor situaţii, producătorii recurg de cele mai multe ori la soluţii clasice care se dovedesc a fi şi mai avantajoase din punct de vedere al costului. Exemplu: utilizarea controlerelor mecanice cu came pentru realizarea unor anumite secvenţe de comenzi.
Influenţa mediului
În construcţia AP intră componente electronice care sunt sensibile la anumite condiţii de mediu cum ar fi:– temperaturi, – radiaţii – vibraţii ridicate.
Nefuncţionare în siguranţă la apariţia unor defecte
Schemele clasiceÎn cazul unei scheme de comandă clasice butonul de oprire deconectează schema de comandă de la sursa de alimentare oprind funcţionarea acesteia. Dacă are loc o întrerupere a tensiunii de alimentare, funcţionarea schemei de comandă se întrerupe şi nu este reluată dacă tensiunea de alimentare este restabilită.
APÎn cazul anumitor programe ale AP condiţii de mai sus nu sunt întotdeauna îndeplinite ceea ce determină o funcţionare nesigură în condiţii de defectare.
Funcţiile principale ale AP
În cadrul funcţionării sale, AP trebuie să realizeze cel puţin primele trei funcţii prezentate mai jos: – citirea intrărilor,– rezolvarea ecuaţiilor booleene şi execuţia
secvenţelor de calcul logic,– comanda ieşirilor.
Funcţiile suplimentare ale AP
În funcţie de complexitatea procesului pe care îl comandă, AP poate să realizeze una sau mai multe din funcţiile prezentate mai jos:– stocarea în memorie a rezultatelor parţiale sau a stării
intrărilor şi ieşirilor;– înregistrarea valorilor de consemn şi transferarea acestora
către proces;– implementarea unor funcţii de calcul aritmetic,
incrementare, decrementarea, decalaj de biţi; codificare, registru de deplasare bit cu bit;
Funcţiile suplimentare ale AP
În funcţie de complexitatea procesului pe care îl comandă, AP poate să realizeze în plus una sau mai multe din funcţiile prezentate mai jos:– realizarea dialogului de exploatare;– realizarea dialogului de supervizare;– realizarea dialogului de programare;– realizarea dialogului cu elementele periferice.
Citirea intrărilor
– Funcţionarea AP presupune urmărirea variaţiilor unor semnale provenite de la proces. În acest scop, intrările AP sunt citite la intervale bine stabilite de timp. Fiecare citire se face pe rând dar, având în vedere că timpul dintre citirile a două intrări diferite este foarte mic (de ordinul microsecundelor) pentru o anumită categorie de procese, se poate considera că citirile se fac simultan pentru toate intrările.
Rezolvarea ecuaţiilor booleene şi execuţia secvenţelor de calcul logic
Implementarea schemei de comandă în cadrul AP se realizează prin modelarea acesteia prin intermediul
– unor ecuaţii booleene sau a – unor secvenţe de calcul logic unde variabilele sunt semnalele de
intrare ale AP Rezultatele sunt valorile care trebuie să fie atribuite ieşirilor AP. Această operaţie se execută în fiecare ciclu ţinând seama de valorile actualizate ale intrărilor. Ecuaţiile sunt rezolvate pe rând dar, având în vedere că timpul dintre rezolvarea a două ecuaţii diferite este foarte mic, pentru o anumită categorie de procese, se poate considera că rezultatele se obţin simultan pentru toate ecuaţiile.
Comanda ieşirilor
Funcţionarea AP presupune ca acesta să emită prin intermediul ieşirilor semnale de comandă pe baza
– valorilor intrărilor – programului care implementează funcţia de comandă.
Fiecare ieşire este comandată pe rând dar, având în vedere că timpul dintre comenzile a două ieşiri diferite este foarte mic (de ordinul microsecundelor), pentru o anumită categorie de procese, se poate considera că toate ieşirile sunt comandate simultan.
Stocarea în memorie a rezultatelor parţiale sau a stării intrărilor şi ieşirilor
În cazul unor programe de complexitate ridicată ce presupun o serie de calcule laborioase, este posibil ca registrele procesorului să nu fie suficiente pentru stocarea rezultatelor intermediare. Pentru a evita această problemă AP trebuie să poată stoca temporar aceste rezultate într-o memorie de lucru pentru a le putea utiliza mai târziu. În acelaşi scop, există posibilitatea stocării valorilor intrărilor şi ieşirilor într-un ciclu anterior.
Implementarea unor funcţii de calcul aritmetic
Funcţiile de calcul aritmetic pot fi:– incrementarea, – decrementarea, – decalaj de biţi, – codificare– etc.Complexitatea proceselor comandate prin intermediul AP face ca schema de comandă implementată de acesta să trebuiască să realizeze şi o serie de alte operaţii decât cele logice.
Implementarea unor funcţii de calcul aritmetic
Este uneori necesar ca AP să poată realiza funcţii de calcul aritmetic cum ar fi: – radicalul, – ridicarea la putere – funcţii trigonometrice, – operaţii asupra datelor din memorie
(incrementarea, decrementarea, decalaj de biţi la stânga sau la dreapta, codificare etc).
Dialogul de exploatare
În perioada de exploatare, sunt necesare dialoguri om-maşină având drept scop conducerea maşinii, realizarea de reglaje sau efectuarea depanării.Elementele prevăzute în acest scop sunt:
– butoane, – elemente de semnalizare, – panouri de comandă configurabile, – terminale de exploatare, – terminale de reglare, – terminale de depanare.
Dialogul de supervizare
Sistemele de comandă se integrează într-un proces de producţie care adesea este condus şi supravegheat de la un punct de comandă şi control central. AP trebuie să aibă posibilitatea de a dialoga într-un mod bine determinat cu terminalele periferice ale sistemului central.
Dialogul de programare
Prima punere în funcţiune precum şi eventualele modificări datorită evoluţiei procesului de producţie necesită existenţa unui dialog de programare. Cele mai uzuale căi de a realiza acest dialog este utilizarea unui calculator sau a unei console de programare. Legătura dintre dispozitivele de programare şi AP se realizează în general folosind o linie de comunicaţie serială.
Dialog cu elemente periferice(imprimantele).
– Imprimantele sunt utilizate pentru a lista informaţiile existente în memoria AP sau informaţiile oferite de software-ul utilizat pentru programarea acestuia fiind astfel uşurată vizualizarea programului şi a datelor legate de AP.
– Utilizatorul are posibilitatea de a urmări mult mai uşor programul indiferent dacă acesta este sub forma listei de instrucţiuni sau diagramă de tip schemă cu contacte.
– Se poate verifica mult mai uşor atât corectitudinea schemei implementate cât şi calitatea acesteia.
Dialog cu elemente periferice(imprimantele)
Principalele informaţii care pot fi listate la imprimantă sunt:
– diagrama bazată pe schemă de contacte;– programul sub formă de listă de instrucţiuni;– referinţele încrucişate;– blocurile de comentarii;– starea registrelor procesorului din unitatea centrală;– lista şi starea condiţiilor de forţare;– valorile impuse temporizatoarelor şi numărătoarelor.
Introducere
Automatul programabil se poate prezenta sub formă:– monolitică – un ansamblu de blocuri funcţionale care sunt grupate în jurul unei
căi de comunicaţie (magistrală internă). În acest caz, fiecare bloc poate fi realizat fizic sub forma unui modul specific. Organizarea modulară permite atât o flexibilitate crescută în configurarea AP în funcţie de necesităţile utilizatorului cât şi o depanare şi o întreţinere mai uşoară. Un AP este un calculator industrial care a fost adaptat din punct de vedere al hardware-lui şi al software-lui pentru a fi utilizat în anumite aplicaţii specifice
Dimensiunile AP
AP Micro : < 32 I/OAP Mici: 32-128 I/OAP Medii: 128 -1024 I/OAP Mari: 1024 - 4096 I/OAP Foarte Mari: 4096- 8192 I/O
Elementele componente ale AP
Unitatea centrală de prelucrareProgramatorul/MonitorulModule de intrare/ieşireSertare şi carcase
şi opţionalImprimantăUnităţi de stocare a informaţiei
Procesorul
Unul sau mai multe microprocesoare care realizează:
calcule aritmetice şi logice;Comunicaţia şi interacţiunea dintre celelalte componente.
Memoria
ROM (read only memory) – această memorie este utilizată pentru stocarea sistemului de operare al AP;RAM (random access memory) – este împărţită în mai multe blocuri având fiecare o utilizare specifică.Sunt păstrate:
– imaginile ieşirilor şi intrărilor AP, – valorile prestabilite şi actuale ale temporizatoarelor şi contoarelor, – zona de lucru a procesorului, – zona de stocare a programului, – alte zone de memorie având destinaţie specială.
Memoria RAM îşi pierde conţinutul la întreruperea sursei de alimentare de aceea, pentru menţinerea programului şi a datelor stocate în aceasta, AP trebuie să aibă prevăzută o sursă de alimentare auxiliară (baterie).
Sursa de alimentare
Realizează adaptarea şi conversia tensiunii alternative în tensiune continuă pentru alimentarea diferitelor elemente ale AP.Poate furniza o tensiune pentru alimentarea elementelor conectate la intrări şi ieşiri (senzori, elemente de execuţie etc)
Programatorul/Monitorul
Acesta este un dispozitiv care comunică cu elementele AP şi care permite transferarea programului de aplicaţie în memoria AP, monitorizarea şi vizualizarea funcţionării AP. Programatorul poate fi: – un programator manual, – un terminal industrial – un calculator personal.
Module de intrare/ieşire.
Aceste module sunt dispozitive prin care AP comunică cu sistemul de acţionare sau instalaţia pe care trebuie să le comande şi cu mediul exterior.
Imprimantă
Imprimantele sunt folosite pentru listarea programului de aplicaţie după care funcţionează AP şi a altor mesaje şi informaţii legate de sistemul comandat.
Unităţi de stocare a informaţiei
Sunt folosite ca dispozitive de stocare secundare pentru: – programul de aplicaţie din memoria AP – alte date şi informaţii utile pentru salvarea acestora sau încărcarea
lor pe/de pe suportul magnetic (bandă sau disc magnetic). Programele de aplicaţii pot fi realizate şi înregistrate pe suport magnetic în laboratoare de dezvoltare a aplicaţiilor de bază pentru AP şi apoi încărcate în memoria AP aflate în sistemele de comandă plasate în halele de producţie. Versiunile mai vechi de AP erau dotate cu casetofoane. Versiunile recente utilizează unităţi de disc flexibil sau unităţi de disc dur sau memorii de tip flash.
Modulele de intrare/ieşire totul sau nimic (digitale)
Semnalele sunt de tip logicValorile tipice sunt:
– “0” logic = 0 V– “1” logic =
5 V cc12 V cc
24 V cc
48 V cc
12 V ca
24 V ca
120 V ca
240 V ca
Modulele de intrare digitale
Permite unităţii centrale a AP să efectueze o citire a stării logice a traductoarelor sau senzorilor care îi sunt asociaţi. Modulele au în general 4, 8, 16 sau 32 de intrări.
Fiecărei intrări îi corespunde o cale care prelucrează semnalul electric pentru a elabora o informaţie binară, bitul de intrarecare este memorat.
Modulele de intrare digitaleAnsamblul de biţi de intrare formează cuvântul de intrare. Periodic, procesorul automatului adresează (citeşte modulul), conţinutul cuvântului de intrare este astfel copiat în zona de date ale automatului.
Fiecare cale este filtrată împotriva paraziţilor şi a contactelor imperfecte şi izolate electric pentru a mări fiabilitatea şi securitatea sistemului (izolare galvanică).
Un modul de intrare este definit în principal prin numărul de intrări pe care le are şi caracteristicile electrice acceptate (tensiune, tipul curentului etc.).
Structura şi conectarea senzorilor (cu 3 fire) la intrările digitale tip NPN
Vcc senzor
Masasenzor
Maro
Negru
Albastru
Structură NPN cu 3 fire
Structură NPN cu 3 fire
APAP
+24 V AP
0V APMasa internă
Vcc intern
In NPN
Masă senzor
Negru
Albastru
Structură NPN 2fire
Structură NPN 2fire APAP
+24 V AP
0V APMasă internă
Vcc intern
In NPN
Structura şi conectarea senzorilor (cu 2 fire) la intrările digitale tip NPN
Structura şi conectarea senzorilor (cu 3 fire) la intrările digitale tip PNP
APAP
+24 V AP
In PNP
0V APMasă internă
Vcc senzor
Masă senzor
Maron
Negru
Albastru
Structură PNP cu 3 fire
Structură PNP cu 3 fire
Structura şi conectarea senzorilor (cu 2 fire) la intrările digitale tip PNP
Vcc senzor Maron
Negru
Structură PNP 2 fireStructură PNP 2 fire APAP
+24 V AP
In PNP
0V AP Masă internă
Module de numărare de mare viteză
Sunt module de intrare digitale care au de îndeplinit funcţia de numărare a impulsurilor aplicate la intrarea modulului. Informaţia transmisă către memoria automatului, atunci când AP va adresa acest modul, va fi numărul de impulsuri sosite de la ultima adresare sau numărul total de impulsuri numărate de la iniţializare. Sunt utilizate în general pentru numărarea impulsurilor cu frecvenţă mare provenind de la senzori, encodere, sau contacte. Utilizarea modulelor de numărare de mare viteză uşurează munca programatorului deoarece el poate degreva unitatea centrală a AP de astfel de funcţii care consumă din puterea şi timpul de calcul al acesteia.
Modulele de ieşire digitale
Un modul de ieşire permite automatului programabil să acţioneze asupra elementelor de acţionare. Realizează corespondenţa: stare logică - semnal electric. Periodic, procesorul adresează modulul de ieşire şi realizează înscrierea biţilor unui cuvânt de memorie pe căile de ieşire ale modulului.Elementele de comutaţie ale modulului sunt
– electronice ( tranzistoare şi triacuri )– electromecanice (contacte de relee interne modulului).
Modulele de ieşire digitale
Ieşirile cu tranzistoare sunt utilizate în cazul comenzii dispozitivelor de c.c. Ieşirile cu triacuri sunt folosite pentru comanda dispozitivelor de c.a. Ieşirile cu relee pot fi utilizate atât pentru comanda dispozitivelor de c.c. cât şi a celor de c.a.Modulele care au număr mare de ieşiri
– au avantajul că prin utilizarea lor se ocupă mai puţine locuri pe magistrala automatului.
– au dezavantajul că nu pot furniza un curent mare de comandă pentru ieşiri.
Ieşiri digitale de tip static
Statică de c.a.
AP
µCOpto-Triac/tiristor
Yx
Cx
Statică de c.c.
AP
µC
Yx
CxOpto-Tranzistor Bipolair NPN / PNP
Modulele de intrare/ieşire analogice
Având în vedere că AP sunt dispozitive numerice, modulele analogice trebuie să realizeze o corespondenţă între mărimi analogice (curenţi sau tensiuni) şi valori numerice. Rezoluţia (cea mai mică valoare de curent sau tensiune) este dată de numărul de biţi utilizaţi pentru codificarea numerică. O altă caracteristică a unui astfel de modul este viteza de conversie.
Modulele de intrare analogice
Există două tipuri de module de intrare analogice:– intrări analogice care realizează detectarea
depăşirii unui prag de tensiune sau curent,– intrări analogice de măsură.
Modulele de intrare analogice cu detecţie de prag
Schema bloc a căii de semnal pentru o intrare analogică cu detecţie de prag
Modulele de intrare analogice de măsură
Modulele sunt prevăzute cu circuite de conversie analog numerică (A/N). Modulele de intrare analogice de măsură de tensiune pot fi
– unipolare (primesc la intrare numai tensiuni pozitive în general 0÷10V) – bipolare (primesc la intrare tensiuni negative şi pozitive în general -
10÷+10V). Modulele de curent sunt unipolare şi primesc la intrare curenţi în general în gama 4÷20mA. Există posibilitatea reglării atenuării sau amplificării semnalului de intrare ceea ce permite mărirea domeniului de măsură. Un astfel de modul poate sau nu să efectueze o serie de operaţiuni de liniarizare a semnalului de intrare înainte de a fi scris cuvântul de intrare în memorie.
Modulele de intrare analogice de măsură
Schema bloc a căii de semnal pentru o intrare analogică de măsură
Modulele de ieşire analogice
Fiecare ieşire este imaginea analogică a valorilor numerice codificate pe un grup de biţi (8 sau 12) definit de program. Modulele analogice de ieşire permit conectarea AP la elemente de preacţionare (variatoare de putere, variatoare de viteză,...) pentru a realiza funcţii de comandă şi de reglare. Fiecare ieşire este definită prin natura semnalului furnizat şi prin limitele sale (0-10V, 4-20 mA).
Module de intrare/ieşire la distanţă
Folosite în cazul în care instalaţia comandată prin intermediul AP este formată din mai multe echipamente care sunt amplasate în locuri diferite aflate la o anumită distanţă unul faţă de celălalt şi faţă de AP. Caracteristici:
– calea prin care este transmisă informaţia– distanţa de la care se realizează această transmisie.
Transmisia informaţiei se face prin intermediul unei legături prin:– cablu torsadat (distanţe de sute de metri) – cablu cu fibre optice (distanţe de kilometri)
Utilizate datorită imunităţii crescute la perturbaţii.
Modulele de comunicare
Cea mai utilizată legătură pentru dialog între AP şi elementele periferice (terminale de programare sau exploatare, imprimante, ...), este cea serie. Acest mod de comunicare permite schimbul de caractere compuse din biţi transmişi unul după altul pe linia de comunicare. Viteza de transmisie se exprimă în biţi pe secundă (bauds).
Module de comunicare cu server
Aceste module sunt utilizate pentru a permite AP să realizeze o comunicaţie bidirecţională cu un server care poate fi un PC sau un alt AP. În general, comunicarea de la server la AP prin intermediul acestor module este folosită pentru programarea AP. Pot fi modificaţi anumiţi parametri în program sau chiar întregul program existent în memoria AP. În sens invers, AP poate să transmită serverului o serie de informaţii care pot fi folosite de acesta pentru a determina durata unor procese, încheierea anumitor etape, apariţia unor situaţii de funcţionare necorespunzătoare.De obicei aceste module permit comunicarea AP cu serverul prin intermediul unei legături seriale de tip RS232.
Module de comunicare de la egal la egal (peer-to-peer)
Modulele de la egal la egal sunt utilizate pentru a permite comunicare AP între ele. Informaţiile pe care acestea le schimbă între ele sunt utilizate pentru obţinerea unei funcţionări în care AP să coopereze în vederea îndeplinirii unor sarcini.
Module de comunicare ASCII
Au capacitatea de a recepţiona şi a transmite informaţia codificată folosind fişiere în cod ASCII.Avantajul acestor module este faptul că pot fi folosite pentru a realiza interfaţa dintre AP şi alte echipamente care recunosc informaţia în cod ASCII cum ar fi imprimantele sau terminalele de dialog cu utilizatorul.
Module pentru controlul poziţiei
Aceste module sunt utilizate în cadrul aplicaţiilor care necesită poziţionarea spaţială a unor elemente componente prin intermediul unor elemente de acţionare. Modulele pot fi utilizate pentru controlul poziţiei în sisteme în – buclă deschisă– buclă închisă.
Module de poziţionare în buclă deschisă
În această categorie intră modulele de control a poziţiei bazate pe utilizarea motoarelor pas cu pas (MPP). Asigură o serie de funcţii, în special de accelerare şi încetinire Este mult uşurată comanda MPP cu ajutorul AP în aplicaţii ce implică poziţionarea precisă în două sau trei axe.Alte funcţii:
– poziţionare a sistemului într-o poziţie iniţială – protecţie a sistemului prin limitarea cursei anumitor elemente
mobile.
Module de poziţionare în buclă închisă
Utilizate pentru comanda maşinilor cu comandă numerică, linii de asamblare automate sau robotică.Cele mai întâlnite aplicaţii presupun poziţionarea unei mese mobile care este acţionată de motoare de c.c. sau de c.a. Pentru închiderea buclei, în cazul controlului poziţiei se utilizează un encoder. Pentru reglajul vitezei, închiderea buclei este realizată cu ajutorul unui tahometru.
Module video
Folosite în special în aplicaţiile care necesită realizarea unor operaţii de inspecţie în cadrul procesului de fabricaţie.Se poate face un reglaj automat al procesului pentru eliminarea pieselor fabricate necorespunzător.
Module cititoare pentru codurile de bare
Utilizarea codurilor de bare pentru identificarea automată a devenit o practică curentă în cadrul liniilor de asamblare automată. Folosite pentru a codifica informaţia referitoare la diverse etape ale procesului de producţie/asamblare pentru a urmări traseul şi evoluţia anumitor produse în cadrul fluxului tehnologic. Permite ţinerea evidenţei exacte a stocurilor existente şi a celor care sunt în curs de a fi finalizate.Îmbogăţesc capacitatea unui AP cu funcţii ce permit citirea informaţiilor astfel codificate pentru a fi ulterior folosite în comanda instalaţiei.
Module pentru reglajul automat
AP pot fi utilizate în acest scop în cazul în care nu se urmăreşte aplicarea unor algoritmi de reglare de complexitate ridicată. Variante:
– utilizarea unor module de prelucrare speciale;– utilizarea modulelor de intrare/ieşire obişnuite şi materializarea
prin program a algoritmilor de reglaj.Cele mai utilizate module pentru reglajul automat sunt cele care implementează algoritmii de tip PID. Ajustarea sistemului se realizează prin reglarea potenţiometrelor care stabilesc parametrii buclelor de reacţie proporţională, diferenţială şi integrală.
Reglaj automat materializat prin program
În cazul în care bucla de reglare este materializată prin program, ajustarea sistemului se realizează prin modificarea unor parametri din program. În acest caz pentru intrări se utilizează module de intrare analogice obişnuite în timp ce pentru ieşiri se pot utiliza module de intrare analogice sau digitale.Există module prin care se materializează alţi algoritmi de reglare automată cum ar fi module pentru controlul folosind reacţia pozitivă sau folosind logica fuzzy.Ca şi în cazul reglării PID, ca urmare a creşterii puterii de calcul a unităţii centrale, aceşti algoritmi pot fi materializaţi prin programul automatului programabil.
Dispozitive de intrare/ieşire pentru interfaţa om-maşină
Funcţii:– (principală) cea de programare a AP. – monitorizarea funcţionării AP, – verificarea programului înscris în memoria AP– depanarea circuitului
Prin intermediul acestor terminale, operatorul uman poate introduce sau modifica programul unui AP la locul în care acesta se află, fără a mai fi nevoie de alte dispozitive sau aparate ajutătoare. Prin cuplarea terminalului, comportarea AP poate fi examinată în timpul funcţionării.Informaţiile necesare operatorului sunt afişate prin intermediul unui ecran cu:
– tub catodic– cu cristale lichide.
Dispozitive de intrare/ieşire pentru interfaţa om-maşină
Dimensiunile acestora pot varia de la câteva linii de caractere până la un ecran. În primul caz, dispozitivul de afişare va fi mai ieftin însă nu va permite decât afişarea unei porţiuni mici din programul AP şi un număr restrâns de informaţii legate de starea AP. Informaţiile către AP sunt introduse de către operatorul uman prin intermediul:
– unor butoane, – a tastaturii, – a ecranelor sensibile la atingere,– cititoarelor de coduri de bare.
Terminale simple
Dispozitive simple care au de cele mai multe ori doar un monitor şi o tastatură. Sunt dotate cu inteligenţă, întreaga funcţionalitate privind comunicarea dintre om şi maşină este înglobată în AP. Afişează informaţia transmisă de AP şi permit introducerea şi transmiterea informaţiei de la utilizator la AP. Transmiterea informaţiei prin intermediul acestor terminale se realizează în format ASCII. Avantaj: preţ de cost redus, terminalul poate fi utilizat cu o gamă largă de AP. Dezavantaj: nu permit încărcarea unui program sau modificarea acestuia în memoria AP. Utilizarea lor devine din ce în ce mai redusă.
Terminale industriale dedicate
Au încorporată o anumită inteligenţă care le permite să îndeplinească o parte mai mică sau mai mare din funcţiile amintite mai sus.
O serie de terminale permit scrierea directă a programului în memoria AP. O altă categorie de terminale sunt dotate cu memorie proprie astfel încât programul poate fi scris în această memorie după care el este transferat în memoria AP.
Mare parte din aceste dispozitive permit utilizatorului să depaneze programul scris chiar în timpul funcţionării acestuia. Pot fi introduse valori pentru intrările sau pentru ieşirile automatului astfel încât să se poată urmări funcţionarea acestuia în diverse situaţii.
Programatoare de mână
Sunt utilizate în general pentru programarea AP de dimensiuni mici. Cuplate la AP, ele pot afişa informaţii privind:
– starea AP, – starea intrărilori– starea ieşirilor, – valorile diferitelor variabile interne, – valoarea curentă şi cea prestabilită a numărătoarelor – valoarea curentă şi cea prestabilită a temporizatoarelor.
Programatoarele de mână pot fi folosite pentru depanarea AP prin monitorizarea funcţionării acestuia şi prin modificarea intrărilor, ieşirilor sau alţi parametri ai programului.Avantaje: dimensiunile mici care le fac portabile. Dezavantaje: au înglobată inteligenţă redusă, dimensiunea mică a ecranului de afişare (la un moment dat nu poate fi vizualizată decât o mică parte a programului din memoria calculatorului).
Calculatoare personale
Datorită creşterii numărului de calculatoare personale disponibile, acestea au devenit în ultimul timp unul dintre celemai folosite dispozitive de interfaţă om maşină. Avantajele:
– permit programarea oricărui tip de AP cu condiţia să avem pachetul de programe corespunzător;
– în cazul în care calculatorul personal este de tip portabil, acesta permite programarea şi depanarea AP în locul de funcţionare;
– asigură o suprafaţă de afişare a informaţiei mare atât alb-negru cât şi color;
– permit păstrarea unor copii ale programului şi realizarea de verificări periodice pentru a vedea dacă programul în memoria AP nu s-a modificat datorită unor semnale perturbatoare;
Calculatoare personale (avantaje)
– permit documentarea programelor prin adăugarea de comentarii la liniile de program
– permit imprimarea documentaţiei la o imprimantă;– permit simularea funcţionării AP în vederea depanării
programului ce urmează a fi încărcat în memoria acestuia;
– asigură accesul la o gamă largă de dispozitive şi suporturi de stocare a informaţiei;
– permit utilizarea unor nume simbolice pentru intrări, ieşiri, variabile interne, temporizatoare sau numărătoare uşurând astfel înţelegerea programului AP;
– permit realizarea unor pachete de programe care să ofere informaţii bogate legate de starea de funcţionare a AP utile în procesul de depanare a acestuia.
Alegerea unui AP
CriteriuNumărul de intrări şi ieşiri logiceMemoriaNumărul de module speciale de I/OPosibilităţile de extindereTimpul de scanarePosibilităţi de comunicaţiePachetele de programe softwareSuport tehnicPreţul
Standardizareadezvoltării programelor
de aplicaţie pentruautomatele programabile
dupa E.v.d.Wal / PLCopen(www.plcopen.org)
Ficţiune?
Imaginează-ţi
* lucrezi în domeniul sistemelor de comandă industriale
* lucrezi cu sisteme de comandă de la 4 firme diferite
* foloseşti diferite dialecte ale limbajelor lor de programare
* încerci să aduci la acelaşi nivel tehnicienii şi electricieniişi vezi că cei cu care concurezi se descurcă mai bine
Limbajele de programare IEC 61131-3 /Programarea sistemelor de control
Interfaţa între programator şi sistemul de comandă
Limbajele de programare IEC 61131-3 /Programarea sistemelor de control
…cu suport pentru oameni cu pregătiri diferite
IEC 61131-3 : Elemente comune
Elemente comunea.o.
Tipuri de date & Variabile
• Reprezentări simbolice prin etichete
• Zonă restrânsă pentru harta I/O
• Independent de hardware
IEC 61131-3 : Elemente comune
ELEMENTE COMUNETipuri de date & Variabile
cum ar fi:BOOLBYTEINTEGERREALDATETIME_OF_DAYSTRING
IEC 61131-3 : Elemente comune
ELEMENTE COMUNE
Tipuri de date & Variabile
Configuraţii
Resurse
Taskuri
IEC 61131-3: Model Software
Calea de executie a comenzii
Task
Program Program
Task
Program
Task
Program
Task
Resursa ResursaConfiguratie
Functie de comunicatie
IEC 61131-3: Model Software
Functie de comunicatie
Cale de acces
Calea de executie a comenzii
BFTask
Program ProgramBF BF
Task
Program
Task
ProgramBF BF
Task
Resursa ResursaConfiguratie
BlocFunctional
IEC 61131-3: Model Software
Variabile globale si directe
Cale de acces
Cale de executie a comenzii
Cale de accesvariabila
BFTask
Program ProgramBF BF
Task
Program
Task
ProgramBF BF
Task
Resursa ResursaConfiguratie
Functie de comunicatie
BlocFunctional
Variabila
ELEMENTE COMUNE
Tipuri de date & Variabile
Configuraţie, Resurse, Taskuri
Unitati de organizare a programelor
* Funcţii
* Blocuri funcţionale
* Programe
IEC 61131-3 : Elemente comune
Funcţii …..
* Funcţii standardADD, SQRT, SIN, COS, GT, MIN, MAX, AND, OR, etc.
* Funcţii definite de utilizatori: FUNCTION SIMPLE_FUN : REAL
VAR_INPUTA, B : REAL;C : REAL := 1.0;
END_VARSIMPLE_FUN := A*B/C;END FUNCTION
…. & Blocuri funcţionale (BF)
BF standardBF adiţionaleBF definite de utilizator
Toate BF suntutilizabile în altemodule sauprograme
FUNCTION_BLOCK
INPUT OUTPUT IN_OUT EXTERNAL
LocalType
HisterezisQXIN1
XIN2EPS
BOOLREALREALREAL
Exemplu de BF
FUNCTION_BLOCK HISTEREZISVAR_INPUT
XIN1, XIN2 : REAL;EPS : REAL; (* Zona de histerezis *)
END_VARVAR_OUTPUT
Q : BOOL := 0END_VARIF Q THEN
IF XIN1 < (XIN2-EPS) THENQ := 0 (* XIN1 la descrestere *)
END_IF;ELSIF XIN1 > (XIN2 + EPS ) THEN
Q := 1; (* XIN1 la crestere *)END_IF;
END_FUNCTION_BLOCK
HisterezisQXIN1
XIN2EPS
BOOLREALREALREAL
1
EPSEPS
0
XIN2
Q
Programe : proiectare ierarhizată
Automation
application
Start : BOOL;Emergency : BOOL;Limit : INT;
PROGRAM
GLOBAL
LocalType
FUNCTION
INPUT
LocalType
FUNCTION_BLOCK
INPUT OUTPUT IN_OUT EXTERNAL
LocalType
Diagrame funcţionale secvenţiale(DFS)
Metodă grafică puternică pentrudescrierea comportării secvenţialea programului de comandăFolosit pentru partitionarea uneiprobleme de comandăPermite o viziune de ansambluceea ce ajută la depanarea rapidăElementele de bază sunt Etapelecare au blocuri de acţiuni şi TranziţiiPermite ramificarea şi execuţia în paralel a secvenţelor
Etapa 1 N Umple
Etapa 3
Etapa 2 S Goleste
Tranzitia 1
Tranzitia 2
DFS secvenţe paralele
Etapa 2 a S Goleste
Tranzitia 1a
Tranzitia 2a
Etapa 1 N Umple
Etapa 3
Etapa 2 b S Goleste
Tranzitia 1b
Tranzitia 2b
Limbajele de programare din IEC 61131-3
Lista de instrucţiuni Text structurat
Diagrama de blocuri funcţionale Diagrame scheme cu contacte
C:= A AND NOT B
A B C
-| |--|/|----------------( )
LD A
ANDN B
ST C
ANDA C
B
Diagrame bazate pe scheme cu contacte (DL)
Set de simboluri de programarebazate pe schemele cucontacte (în limba engleză –ladder), standardizat şiperfecţionatBazat pe stilul american de programare care seamănă cu schemele electrice americanestandard
A B C
-| |--|/|----------------( )
Lista de instrucţiuni (IL)
Model de execuţie bazat pe structuracu acumulator unicBazat pe modelul german‘Anweisungsliste’, AWLPe fiecare linie de program estepermisă o singură instrucţiune
LD A
ANDN B
ST C
Text structurat (ST)
Bazat pe limbajele evoluate structurate pe blocuriSintaxa asemănătoare limbajului PASCAL Sunt permise instrucţiuni complexe şi bucleSuport pentru
– Bucle iterative (REPEAT-UNTIL; WHILE-DO)– Instrucţiuni condiţionale (IF-THEN-ELSE; CASE) – Funcţii (SQRT(), SIN())
C:= A AND NOT B
Diagrame de BF (DFB)
Limbaj grafic mult utilizat în EuropaPermite utilizarea elementelor de program care apar sub formă de blocuri care trebuieconectate împreună obţinându-se o formăanalogă cu o schemă electronicăFolosite în multe aplicaţii care implicătransferul de informaţii între elementele de comandă
ANDA C
B
Chimie
Medii de programare IEC
Multe dintre ele oferă:ecrane grafice de programaresuport pentru ferestremultipleoperare cu mousemeniuri pull-downfuncţii de help încorporateverificare software în timpulproiectării
Utilizatori? Care utilizatori?
Educaţie
InstalareMentenanţă
Programare
Sisteme de comandă
Producători
Integrator de sistemDvs ??
Utilizatori? Care utilizatori?
• Linii de producţie din industria auto
• Staţii de tratare a apei
• Echipamente de prelucrare şi împachetare în industriaalimentară
• Industria cablurilor
• Sisteme automatizate din industria semiconductorilor
• Parcuri de distracţie
• Etc
Această arie largă presupune existenţa unor pregătiri diferite
Care este beneficiul standardizării
Reduce consumul inutil de resurseumane (în pregatire, depanare, service şi consultanţă)Permite concentrarea pe rezolvareaproblemelor prin reutilizarea modulelor existente (reduce investiţiile în dezvoltarea aplicaţiilor)Reduce neînţelegerile şi erorileTehnicile de programare utilizabileîn mai multe domenii (sisteme de comandă industriale)Combină armonios diferitecomponente din proiecte, locuri, companii sau ţări diferite
Function "LIMIT"
Function "TEST"
Function Block"Turning"
Function Block"Feeding"
Function Block"Heating"
SoftwareLibrary
Generalităţi
Funcţionarea AP se bazează pe executarea de către procesorul unităţii centrale a unui set de instrucţiuni. Instrucţiunea este cea mai mică unitate independentă de program fiind formată din simbolul sau denumirea operaţiei şi operandul sau operanzii.
În cazul AP, operaţiile cele mai des utilizate sunt cele ale algebrei booleene: – ŞI (AND, *), – SAU (OR, +), – NU (NOT, N), – ŞI-NU (NAND, ANDC), – SAU-NU (NOR, ORC), – SAU-EXCLUSIV (XOR) la care se adaugă – operaţiile de temporizare, numărare şi memorare.
Extensii ale operaţiilor de bază
În ultimul timp, datorită creşterii capacităţii de prelucrare şi a vitezei de execuţie, la operaţiile de bază au fost adăugate: operaţii aritmetice cum sunt adunarea, înmulţirea, împărţirea, operaţii logice pe mai mulţi biţi cum sunt deplasări la stânga şi la dreapta,operaţii de conversie a informaţiei dintr-un cod într-altul,funcţii de memorare de tip bistabil,alte funcţii speciale specifice AP.
Tipuri de operanzi
Operanzii acestor instrucţiuni sunt:– intrări (notate cu I, X sau IN), – ieşiri (notate cu E, Y sau OUT), – elemente de memorare (notate cu M) - modelează releele intermediare din
schemele electrice cu contacte, – elemente de temporizare (notate cu T)– elemente de numărare/contorizare (notate cu C).
operanzii sunt în corespondenţă directă cu resursele fizice pe care AP le are la dispoziţie: intrări, ieşiri, variabile intermediare (în strânsă legătură cu dimensiunea memoriei de lucru a AP), temporizatoare şi numărătoare implementate prin program sau prin circuite şi module specializate.corespondenţă indicată prin alăturarea la notaţiile prezentate anterior a unui identificator numeric care arată numărul resursei respective
Exemple de identificatori
Varianta 1:– primele două cifre ale părţii numerice =modulul pe care se află
resursa corespunzătoare variabilei respective (intrare, ieşire etc). – a treia cifră = resursa (numărul de ordine) în cadrul modului
precizat de primele două cifre.
Varianta 2:– identificatorul modulului şi numărul de ordine sunt separate de
punct.
Exemple de identificatori
Varianta 3:– variabilele de intrare, de ieşire şi de memorie nu sunt identificate
prin nici un simbol. – Faptul că o variabilă este de intrare, de ieşire sau de memorie
este identificat prin prima cifră a numărului de identificare. Aceasta corespunde modului de alocare a locaţiilor din memoria de lucru a AP.
– Adresele începând de la 000 sunt alocate intrărilor, adresele de la 200 sunt alocate ieşirilor şi adresele de la 400 sunt alocate variabilelor de memorie (relee interne).
Exemple de identificatori
Variabila Semnificaţia
Varianta 1 Varianta 2 Varianta 3
IN001 I 0.1 001 prima intrare a AP
OUT013 Q 0.3 203 a treia ieşire a AP
M010 M 0.10 410 a zecea variabilă intermediară
T002 T 0.2 T02 al doilea temporizator al AP
C001 C 0.1 C01 primul numărător al AP
Nume de instrucţiuni
De la apariţia AP, fiecare producător şi-a dezvoltat limbajul propriu de tip listă de instrucţiuni, alegerea numelor instrucţiunilor depinzând mult şi de limba vorbită de respectivii producători. Deşi se aseamănă între ele din punct de vedere funcţional, aceste limbaje au nume diferite şi folosesc pentru aceeaşi instrucţiune denumiri şi formate diferite.
Nume de instrucţiuni
Limbajul (Producătorul) Denumirea instrucţiunilor
AP-micro (IPA-Automatica)
AND, OR, ANDC, ORC,LD, LDC,STO, STOC, XOR, CMA, ZA, S, R, J, JC
PSE (AEG) *,+,-,=,E,A,S,R,Z,T,D,L
STEP (Siemens) U, UN, O, ON,=, S,R,ZV, ZR, L,T,M
SUCOS (Klockner-Moeller A, O, N, =
MELSEC (Mitsubishi) LD, LDI, AND, ANI, OR, ORI, MC, OUT, PLS, S, R, RST, ANB, ORB, NOP, END
Actsip-E (Hitachi) ORG, AND, OR, NOT, OUT, T/C, FUN
Exemplu. Program IL General Electric
Program
STR 000 AND NOT 001 OR 002AND 003OUT 200STR 200OUT 010
Observaţii
start sau memorare (primele două cifre ale identificatorului indică numărul modulului: 00 - modul de intrare,
01 - modul de ieşire)activare releu internvaloarea obţinută e trimisă la ieşirea 0 a
modulului 01
Exemplu. Program IL Kloeckner-Moeller
Program
L I 0.0AN I 0.1O I 0.2A I 0.3= M 0.0L M 0.0= Q 0.0
Observaţii
încarcă intrarea 0, modulul 0.SI-NUSAUSImarker, releu intern
Ieşire
Exemplu. Program IL Siemens
Program
U E 0.0UN E 0.1O E 0.2U E 0.3= M 0.0O M 0.0= A 0.0
Observaţii
E:Eingang, intrareUN: Und Nein, ŞI-NUO: Oder, SAUUndM: merker, releu intern
A: Ausgang, ieşire
Exemplu. Program IL Telemecanique
Program
L I 0.0AN I 0.1O I 0.2A I 0.3= B 10L B 10= O 0.0
Observaţii
Instrucţiunile sunt abrevieri ale denumirilor engleze
B: Bit, releu intern
O: Ieşire
Exemplu. Program IL Hitachi
Program
ORG 000AND NOT 001OR 002AND 003OUT 400ORG 400OUT 200
Observaţii
start (variabilele de intrare încep de la adresa 000, variabilele de ieşire de la adresa 200 iar variabilele de tip marker - releu intermediar - de la adresa 400).
ieşirea se face pe releu internIeşire
Exemplu. Program IL Mitsubishi
LD X000ANDI X001OR X002AND X003OUT M000LD M000OUT Y000
Încărcare intrare X000SI-NU cu intrarea X001SAU cu intrarea X002SI cu intrarea X003releu internÎncărcare releu internIeşire
Limbajul IL în standardul IEC 61131-3
Lista de instrucţiuni este compusă dintr-o secvenţă de instrucţiuniFiecare instrucţiune începe pe o linie nouă şi conţine operatorul (opţional cu modificatori) şi dacă este necesar, unul sau mai mulţi operanziInstrucţiunea poate fi precedată de o etichetă urmată de caracterul “:”
Example de câmpuri ale instrucţiunilor
START: LD %IX1 (* BUTON START*)
ANDN %MX5 (* NEBLOCAT *)
ST %QX2 (* VENTILATOR PORNIT*)
Etichetă Operator Operand Comentariu
result := result OP operand
Operatori şi semnificaţia lor
LD Atribuie operandului rezultatul curentST Memorează rezultatul curent la locaţia
operanduluiS Atribuie operandului de tip Boolean
valoarea 1R Atribuie operandului de tip Boolean
valoarea 0
Operatori şi semnificaţia lor
GT Comparaţie : >
GE Comparaţie : >=
EQ Comparaţie : =
NE Comparaţie : <>
LE Comparaţie : <=
LT Comparaţie : <
Operatori şi semnificaţia lor
JMP Salt la etichetă
CAL Apelul unui bloc funcţional
RET Întoarcere dintr-o funcţie sau bloc funcţional)
Exemplu de apel a unui bloc funcţional
1. CAL cu lista de intrări: CAL C10(CU:=%IX10, PV:=15)
2. CAL cu încărcarea/stocare intrărilor: LD 15ST C10.PVLD %IX10ST C10.CUCAL C10
3. Folosirea operatorilor de intrare:
LD 15PV C10LD %IX10CU C10
Tip de BF Operatori SemnificaţieSR S1,R Bistabil SRRS S,R1 Bistabil RSR_TRIG CLK Sesizare front crescătorF_TRIG CLK Sesizare front descrescătorCTU CU,R,PV Numărător crescătorCTD CD,LD,PV Numărător descrescătorCTUD CU,CD,R,LD,PV Numărător bidirecţionalTP IN,PT TemporizatorTON IN,PT Temporizator la închidereTOF IN,PT Temporizator la deschidere
Tipuri de blocuri funcţionale
Bibliografie
E. van der Wal Instruction List - an assembler type of
language, www.plcopen.org
SR EN 61131-3, Automate programabile. Partea 3.
Limbaje de programare
C.G.Haba, Sisteme de comandă a maşinilor electrice, Ed.
Gh.Asachi, Iaşi
Originile limbajului LD
Limbajul bazat pe scheme cu contacte - Ladder Diagram (LD) – provine de la reprezentarea grafică folosită pentru schemele electrice de comandă
– Comenzile erau realizate cu ajutorul releelor
Limbajul LD a fost dezvoltat pentru a uşura crearea programelor şi menţinerea facilă a acestora
– reprezentări realizate cu calculatorul bazate pe reprezentarea grafică a schemelor cu contacte care erau uşor de înţeles
– se reduc costurile de învăţare a limbajului şi de suport tehnic
Scrierea programului în LD
Scrierea unui program în limbajul LD presupune desenarea unei diagrame (diagramă LD) similare unei scheme electrice cu contacte. Elementele componente ale diagramei LD modelează funcţionarea elementelor unei scheme cu contacte. Interpretarea funcţionării diagramei LD este similară interpretării schemelor electrice cu contacte.Elementele de bază utilizate pentru scrierea unui program în limbaj LD sunt:
– contactele, – bobinele, – temporizatoarele, – numărătoarele şi – blocurile funcţionale (funcţiile).
Contactele
Contactele sunt elemente de programare care modelează contactele aparatelor electrice de comutaţie. Ca şi în cazul acestora din urmă, contactele pot fi de tip n.d. (a) şi n.i. (b).
a) b)
IN001 IN002 IN003
Contactele
În cadrul unui program LD, contactele pot fi asociate intrărilor AP, ieşirilor AP sau unor variabile interne. La intrări pot fi conectate dispozitive care au două stări de funcţionare cum ar fi:
– contactele auxiliare ale contactoarelor şi releelor, – contactele n.î. sau n.d. ale butoanelor de comandă, – contactele n.î. sau n.d. ale limitatoarelor de cursă, – contactele n.î. sau n.d. ale detectoarelor de mărimi fizice, – contactele n.î. sau n.d. ale elementelor de protecţie, – ieşirile digitale ale unor aparate de măsură, protecţie sau
comandă, – ieşirile digitale ale altor AP sau sisteme de comandă etc.
Contactele
Pe lângă contactele obişnuite, unii producători pun la dispoziţia programatorilor şi alte elemente de programare corespunzătoare intrărilor AP, întâlnite, îndeosebi, în cazul circuitele numerice, cum ar fi: intrări cu memorie (latch), intrări active pe frontul crescător intrări active pe frontul descrescător.
Bobinele
Bobinele sunt elemente de programare care modelează funcţionarea bobinele contactoarelor şi releelor electromagnetice. Ca şi în cazul bobinelor din schemele electrice, bobinele din programele LD pot avea două stări: alimentate sau nealimentate.
a) b)
OUT 001 OUT 002 OUT 003
Bobinele
Ele pot fi asociate ieşirilor automatului dar şi unor variabile interne modelând astfel releele auxiliare din cadrul schemelor electrice cu contacte. Bobinele sunt elemente de programare care modelează funcţionarea bobinele contactoarelor şi releelor electromagnetice. Ca şi în cazul bobinelor din schemele electrice, bobinele din programele LD pot avea două stări: alimentate sau nealimentate. Ele pot fi asociate ieşirilor automatului dar şi unor variabile interne modelând astfel releele auxiliare din cadrul schemelor electrice cu contacte.
Bobinele
Fiecare ieşire este de identificată în mod unic, modul de identificare diferind de la un producător la altul. Fiecărei ieşiri i se asociază o singură bobină şi unul sau mai multe contacte ce pot fi utilizate în schemă în mod asemănător contactelor auxiliare ale contactoarelor şi releelor.La aceste ieşiri pot fi conectate dispozitive care au două stăride funcţionare cum ar fi:
– bobinele contactoarelor sau releelor, – elemente de semnalizare acustică sau luminoasă, – sarcini de putere mică, – intrările digitale ale unor aparate de măsură, protecţie sau
comandă, – intrările digitale ale altor AP sau sisteme de comandă etc.
Temporizatoarele
Temporizatoarele sunt elemente de programare care modelează funcţionarea releelor de timp şi a contactelor temporizate. Sunt utilizate pentru a realiza acţiuni întârziate sau ce durează un anumit interval de timp.
Validare
Iniţializare
IeşireNr. temporizator
Baza de timp
Valoareaprestabilită
Temporizatoarele
Producătorii de AP furnizează atât funcţii elementare de temporizare cât şi funcţii mai complexe. Temporizatoarele utilizate în programele LD au o flexibilitate şi o funcţionalitate mult mai mare decât temporizatoarele utilizate în schemele electrice.Temporizatoarele simple permit realizarea unei acţiuni întârziate cu un anumit interval de timp ce poate fi programat. Temporizatoarele complexe au în vedere obţinerea unor temporizări variabile, funcţie de anumite condiţii care apar la un moment dat.
Temporizatoarele
Fiecare temporizator din schemă este identificat în mod unic, modul de identificare fiind diferit de la un producător la altul. În cazul în care baza de timp este aceeaşi pentru toate temporizatoarele, precizată în manualul de programare a AP, aceasta este omisă. Valoarea prestabilită poate fi exprimată în unităţi de timp (s).Temporizatoarele au cel puţin o intrare de iniţializare, la activarea căreia începe temporizarea şi o ieşire. În unele variante, temporizatoarele sunt prevăzute şi cu o intrare de validare şi încă o ieşire care reprezintă negata primei ieşiri.
Numărătoarele
Numărătoarele sunt elemente de programare care poate primi o serie de impulsuri care sunt analizate în cadrul programului LD pentru a detecta numărul de apariţii ale unor evenimente cum ar fi:
– numărul de paşi efectuaţi de un motor pas cu pas, – numărul de conectări-deconectări ale unui aparat.– numărul de sticle care au fost umplute într-o staţie de
îmbuteliere, etc.Numărare Ieşire
Ieşire negată
Nr. numărător
Valoareprestabilită
Iniţializare
Numărătoarele
Numărul de evenimente poate fi comparat cu anumite valori prestabilite şi în funcţie de rezultatul acestor comparaţii pot fi luate anumite decizii şi date comenzile corespunzătoare.Există mai multe tipuri de numărătoare, printre cele mai uzuale fiind:
– numărătoarele unidirecţionale crescătoare– numărătoarele unidirecţionale descrescătoare şi – numărătoarele bidirecţionale care pot număra atât descrescător
cât şi crescător. Fiecare numărător din schemă este identificat în mod unic, modul de identificare fiind diferit de la un producător la altul.
Numărătoarele
Pentru fiecare numărător se precizează valoarea prestabilită, aceasta reprezentând valoarea maximă pe care o va număra numărătorul după care va activa ieşirea. Numărătorul are cel puţin două intrări, una de numărare şi una de iniţializare (la activarea acesteia numărătorul începe să numere impulsurile sosite la intrarea de numărare) şi o ieşire. Alte variante de numărătoare sunt prevăzute şi cu o intrare de validare şi o ieşire care reprezintă negata primei ieşiri.
Blocurile funcţionale
Pentru materializarea unor funcţii mai complexe menite să uşureze scrierea programelor în limbaj LD sunt utilizate blocurile funcţionale (BF). BF modelează diverse categorii de funcţii cele mai utilizate fiind:
– funcţii de încărcare a unor constante numerice,– funcţii aritmetice,– funcţii logice pe 8 sau 16 biţi,– funcţii de conversie a informaţiei din diferite formate (binar,
BCD, Gray etc),– funcţii de tratare a întreruperilor,
Blocurile funcţionale
– funcţii pentru detectarea fronturilor crescătoare sau descrescătoare a semnalelor,
– funcţii pentru realizarea controlerelor şi secvenţiatoarelor,– funcţii pentru actualizarea rapidă a intrărilor şi ieşirilor,– funcţii pentru comanda numărătoarelor de mare viteză.
Formatul şi modul de funcţionare a blocurilor funcţionale diferă de la un automat la altul, fiind specific fiecărui producător în parte.
Restricţii în scrierea programelor orientate pe scheme de contacte
Atunci când se realizează scrierea unui program LD pentru un automat programabil concret, trebuie să se ţină seama de limitările pe care pachetul de programe le poate avea:– limitări privitoare la formatul diagramei LD– limitări legate de modul de execuţie a programului
Limitări privitoare la formatul diagramei LD
Limitările ţin de:– proprietăţile intrinseci ale limbajului;– implementările specifice ale diferitelor pachete de
programe comerciale Sunt datorate soluţiilor tehnice adoptate de firmele producătoare pentru implementarea diverselor elemente ale limbajului.
Limitări privitoare la formatul diagramei LD
O parte a acestor limitări sunt prezentate în continuare:
– o bobină trebuie să fie alimentată întotdeauna prin intermediul unui contact;
– bobina trebuie să fie introdusă întotdeauna la capătul din dreapta al liniei;
– toate contactele trebuie să fie pe direcţie orizontală;– numărul contactelor pe o linie de alimentare a unei bobine
este limitat prin program;
Limitări privitoare la formatul diagramei LD
– un grup de contacte poate alimenta o singură bobină;– realizarea buclelor poate fi realizată într-un singur mod sau
poate să nu fie permisă;– sensul curentului prin circuit este de la stânga la dreapta
diagramei.
De obicei manualele de utilizare ale programelor conţin toate informaţiile necesare pentru ca utilizatorul să poată scrie programul în formatul acceptat de AP.
Limitări legate de modul de execuţie a programului
Funcţionarea AP se bazează pe execuţia repetată a programului pe care îl are înscris în memorie. Fiecare ciclu de execuţie a programului cuprinde 3 etape separate:
– citirea intrărilor– execuţia instrucţiunilor din program– actualizarea ieşirilor
Durata unui astfel de ciclu depinde atât de viteza procesorului cu care este dotat AP, cât şi de lungimea programului utilizatorului.
Limitări legate de modul de execuţie a programului
Etapa de citire a intrărilor, se citesc stările terminalelor de intrare în AP şi conform acestora se înscrie informaţia în tabelul intrărilor.Etapa de execuţie a instrucţiunilor din program, valorile intrărilor sunt folosite pentru execuţia instrucţiunilor, rezultatul acestora fiind înscrise în tabela ieşirilor.Etapa de actualizare a ieşirilor constă în transferarea informaţiei din tabela ieşirilor către terminalele de ieşire a automatului.Cele trei etape amintite mai sus se execută separat, modificarea semnalelor de la intrările AP în etapa a doua nu are efect asupra valorilor intrărilor folosite pentru execuţia instrucţiunilor. Ele vor fi folosite doar după ce vor fi citite în următoarea etapă de citire a intrărilor.
Limitări legate de modul de execuţie a programului
Dacă în etapa a doua, în urma execuţiei uneia sau mai multor instrucţiuni se modifică valoarea unei ieşiri în tabela de ieşiri, această modificare nu va apare efectiv la terminalul de ieşire corespunzător, decât în etapa a treia. Atunci se realizează actualizarea ieşirilor pe baza tabelei ieşirilor calculată în etapa de execuţie a instrucţiunilor care a precedat-o.În scrierea unui program în limbajul LD trebuie avute în vedere şi modul în care este interpretat programul scris.
Interpretarea programelor LD
Există două moduri de interpretare a unui program LD:– citirea se face pe linie - se citesc contactele pe
linie, de la stânga la dreapta, linie cu linie, începând cu prima linie şi terminând cu ultima;
– citirea se face pe coloană - se citesc contactele pe coloană, câte unul, de sus până jos, coloană cu coloană, începând cu prima coloană din stânga şi terminând cu ultima din dreapta.
Interpretarea programelor LD
În ambele situaţii trebuie să se aibă în vedere diferenţa faţă de schemele de comandă cu relee:
– Relee: O modificare în starea unui contact din circuitul de alimentare a bobinei unui contactor poate duce la modificarea imediată a stării acesteia indiferent dacă mai există sau nu alte elemente legate în serie sau paralel cu acel contact.
– Program LD: starea bobinei nu va fi modificată decât după ce se va citi starea tuturor elementelor prin care aceasta este alimentată.
Datorită vitezei mari de execuţie a procesorului, acest lucru nu pune în general nici o problemă. Ea trebuie considerată în cazurilor unor aplicaţii critice unde ar putea să apară o funcţionare diferită de cea dorită.
Limbajul LD în standardul IEC 61131-3
Prin introducerea acestui limbaj în standardul IEC 61131-3 s-a căutat uniformizarea unui întreg set de limbaje care se proclamau a fi de tip scheme cu contacte.
Execuţia programului
Liniile programului sunt evaluate de la stânga la dreapta şi de sus în josRamificaţiile din cadrul unei linii sunt evaluate de la stânga sus la dreapta jos
P S
R
A
B
D E
F G H
I J K
Fază
Ramificaţie
Nul
Linie a programului
Bobine fără memorie
Bitul corespunzător elementului este pus în 0 când tensiunea de alimentare este oprită– Bobină -( )-
Pune bitul în 1 când linia este evaluată la 1 logic şi pus în 0 când linia este evaluată la 0 logic
– Bobină negată -( / )-Pune bitul în 0 când linia este evaluată la 1 logic şi pus în 1 când linia este evaluată la 0 logicÎn general nu e folosită datorită confuziei pe care o poate introduce
Bobine fără memorie
– Bobină Set (Latch) -(S)-Pune bitul în 1 când linia este evaluată la 1 logic şi nimic când linia este evaluată la 0 logic
– Bobină Reset (Unlatch) -(R)-Pune bitul în 0 când linia este evaluată la 1 logic şi nimic când linia este evaluată la 0 logic
Contacte
Contact normal deschis -| |-– Validează linia de program la dreapta elementului
dacă linia este validată în stânga acestuia şi bitul corespunzător e în 1 logic.
Contact normal închis -|/|-– Validează linia de program la dreapta elementului
dacă linia este validată în stânga acestuia şi bitul corespunzător este în 0 logic
Contacte
Contact activ pe frontul crescător -|P|-– Validează partea dreaptă a liniei de program
pentru un ciclu când partea stângă este validatăContact activ pe frontul descrescător -|N|-– Validează partea dreaptă a liniei de program
pentru un ciclu când partea stângă este invalidată
Operaţii cu memorare sau fără memorare
Definiţie– Valorile cu memorare îşi menţin valoarea şi după
un ciclu deconectare-reconectare la sursa de alimentare
– Valorile fără memorare iau valoarea iniţială (de obicei 0) după un ciclu deconectare-reconectarela sursa de alimentare
IEC 61131-3 permite valorilor să fie definite ca fiind cu memorare– În majoritatea AP-urilor doar temporizatoarele şi
bobinele sunt elemente cu memorare.
Bobine cu memorare
Bitul din memorie corespunzător rămâne nemodificat după întreruperea şi reconectarea alimentării– Bobină cu memorie -(M)-
Pune bitul în 1 când linia este validă şi o pune în 0 când este invalidă.
– Bobină Set cu memorare (Latch) -(SM)-Pune bitul în 1 când linia este validă şi nu face nimic când este falsă
– Bobină Reset cu memorare (Unlatch) -(RM)-Pune bitul în 0 când linia este validă şi nu face nimic când este falsă
Bobine activate pe front
Bobină activată pe frontul pozitiv -(P)-– Pune bitul în 1 logic când linia din stânga trece
din starea invalidă în starea validă– Bitul rămâne în această stare
Bobină activată pe frontul negativ -(N)-– Pune bitul în 0 logic când linia din stânga trece
din starea validă în starea invalidă – Bitul rămâne în această stare
Temporizatoare in LD
Există 3 instrucţiuni ce realizează funcţiile de temporizare în cadrul standardului IEC 61131-3
– TP – Temporizator tip impuls– TON – Temporizator la conectare– TOF – Temporizator la deconectare
Valorile timpului– Baza de timp este de 1ms (1/1000 s)– Valorile sunt introduse folosind formatul literal
Temporizatoare in limbajul LD
Două variante de vizualizare în funcţie de folosirea ieşirilor EN/ENO
– prima metodă necesită elemente suplimentare de programare dacă este necesară utilizarea stării temporizatorului în alte linii de program
– a doua metodă asociază un bit lui Q ce poate fi apoi folosit de alte linii de program, ENO=EN
TONIN
T#200ms
Pump_Tmr
PT ET 178
Q
TON
T#200ms
Pump_Tmr
PT ET 178
Q
IN ENO
Pump_Tmr_DN
Funcţionarea temporizatoarelor
INQ
ETPT|0
Temporizare tip impuls (TP)
INQ
ETPT|0
Temporizare la conectare (TON)
INQ
ETPT|0
Temporizare la deconectare (TOF)
IN = condiţia de intrare a linieiQ = ieşirea comparatorului
– diferă în funcţie de tipul de temporizator
PT = valoarea prestabilităET = timpul scurs de la activarea temporizatorului
Numărătoare în LD
Trei instrucţiuni cu funcţii de numărător în IEC 61131
– CTU – Numărător crescător– CTD – Numărător descrescător– CTUD – Numărător bidirecţional
Toate trei contorizează tranziţiile liniei
Numărătoare în LD
Două vizualizări posibile în funcţie de utilizarea ieşirilor EN/ENO
– prima metodă necesită elemente de programare suplimentare dacă starea temporizatorului este necesară în alte linii de program
– a doua metodă asociază ieşirii Q un bit care poate fi folosit în alte linii de program, ENO=EN
CTU
200
Load_Cnt
PV CV 178
Q
IN ENO
Load_Cnt_DNR
CTU
200
Load_Cnt
PV CV 178
QIN
R
Funcţionarea numărătoarelor
Parametri– CU/CD = Numărare
crescătoare/descrescătoare– Q/QU/QD = Ieşirea
comparatorului– R = Aducere în Zero– LD = Încărcarea CV cu PV– PV = Valoarea prestabilită– CV = Valoarea numărată de
la momentul activării
...INQ
CVPV|0
LD
...Numărător descrescător (CTD)
...INQ
CVPV|0
R
Numărător crescător (CTU) ...
Funcţionarea numărătoarelor
Parametri– CU/CD = Numărare
crescătoare/descrescătoare– Q/QU/QD = Ieşirea
comparatorului– R = Aducere în Zero– LD = Încărcarea CV cu PV– PV = Valoarea prestabilită– CV = Valoarea numărată de
la momentul activării
...
...
CVPV|0
CUQUCDQD
LDR
Numărător bidirecţional (CTUD)
Setul de instrucţiuni IEC1131-3
IEC 61131-3 furnizează un set de bază de instrucţiuni care să realizeze operaţiile de bază (81 instrucţiuni LD)
– Conversii ale tipurilor de date - Trunc, Int_to_Sint, Dint_to_Real, Bcd_To_Int …– Operaţii Booleene - Bit Test, Bit Set, One Shot, Semaphores …– Temporizatoare / Numărătoare - Ton, Tp, Ctu, Ctd, Ctud– Operaţii aritmetice simple - Add, Sub, Mul, Div, Mod, Move, Expt– Diferite operaţii matematice - Abs, Sqrt, Ln, Log, Exp, Sin, Cos, Tan, Asin, Acos, Atan– Deplasări de biţi - Shl, Shr, Ror, Rol– Operaţii logice - And, Or, Xor, Not– Selecţie - Sel, Max, Min, Limit, Mux– Comparaţie - GT, GE, EQ, LE, LT, NE– Şiruri de caractere - Len, Left, Right, Mid, Concat, Insert, Delete, Replace, Find– Control - JMP, LBL, JSR, RET
Extinderea setului de instrucţiuni IEC1131-3
Toate operaţiile complexe sunt lăsate pentru a fi definite de producător sau utilizator– Operaţiile cu fişiere, PID, diagnostic, bucle
For/Next, căutările, sortările nu sunt în IEC1131-3– Sunt permise extensii astfel încât producătorii să
vină în întâmpinarea cerinţelor clienţilor– Toţi producătorii au definite propriile lor extensii
Bibliografie
Ron Bliss, Introduction to IEC1131-3 LadderDiagram, Allen-BradleySR EN 61131-3, Automate programabile. Partea 3. Limbaje de programareC.G.Haba, Sisteme de comandă a maşinilor electrice, Ed. Gh.Asachi, Iaşi
Operatori în ST
Simbol Operaţie
(expresie) Evaluarea parantezei
identificator(listă de parametri) Evaluarea funcţiei
Exemple:
LN(A), MAX(X,Y), etc.
** Ridicare la putereExponentiation
- Negare
NOT Complement
Operatori în ST
* Înmulţire
/ Împărţire
MOD Modulo
+ Adunare
- Scădere
< , > , <= , >= Comparare
= Egalitate
<> Inegalitate
Instrucţiunea de atribuire
A := B;
Tip dată la tip datăINT la INT
sauConfiguratie_Canal_Analogic la
Configuratie_Canal_Analogic
Instrucţiunile IF .. THEN .. ELSE
IF conditie= true THEN actiune1ELSE actiune2 (condiţia nu e adevarată)
IF ploua THEN Stai_acasa ELSE Mergi_La_Plimbare
Instrucţiunile IF .. THEN .. ELSE
D := B*B - 4*A*C ;IF D < 0.0 THEN NROOTS := 0 ;ELSIF D = 0.0 THENNROOTS := 1 ;X1 := - B/(2.0*A) ;
ELSENROOTS := 2 ;X1 := (- B + SQRT(D))/(2.0*A) ;X2 := (- B - SQRT(D))/(2.0*A) ;
END_IF ;
Instrucţiunea CASE : IF repetitiv
TW := BCD_TO_INT(THUMBWHEEL);TW_ERROR := 0;
CASE TW OF1,5: DISPLAY := OVEN_TEMP;2: DISPLAY := MOTOR_SPEED;3: DISPLAY := GROSS - TARE;4,6..10: DISPLAY := STATUS(TW - 4);
ELSE DISPLAY := 0 ;TW_ERROR := 1;
END_CASE;QW100 := INT_TO_BCD(DISPLAY);
Instrucţiunea FOR
SUM := 0 ;
FOR I := 1 TO 3 DOFOR J := 1 TO 2 DO
SUM := SUM + J ;END_FOR ;SUM := SUM + I ;
END_FOR ;
Instrucţiunea FOR
J := 101 ;
FOR I := 1 TO 100 BY 2 DOIF WORDS[I] = 'KEY' THENJ := I ;EXIT ;END_IF ;
END_FOR ;
Instrucţiunile REPEAT … UNTIL
J := -1 ;
REPEATJ := J+2 ;
UNTIL J = 101 OR WORDS[J] = 'KEY'END_REPEAT ;
Instrucţiunile EXIT şi RETURN
Instrucţiunea EXIT va fi folosită pentru a termina interaţiile înainte să fie satisfăcută condiţia de încheiere a iteraţiilor.
SUM := 0 ;FOR I := 1 TO 3 DO
FOR J := 1 TO 2 DOIF FLAG THEN EXIT ; END_IF
SUM := SUM + J ;END_FOR ;
SUM := SUM + I ;END_FOR ;
Bibliografie
E. van der Wal, Structured Text - a high level language,
www.plcopen.org
SR EN 61131-3, Automate programabile. Partea 3.
Limbaje de programare
C.G.Haba, Sisteme de comandă a maşinilor electrice, Ed.
Gh.Asachi, Iaşi
Introducere
Automatul programabil se poate prezenta sub formă:– monolitică – un ansamblu de blocuri funcţionale care sunt grupate în jurul unei
căi de comunicaţie (magistrală internă). În acest caz, fiecare bloc poate fi realizat fizic sub forma unui modul specific. Organizarea modulară permite atât o flexibilitate crescută în configurarea AP în funcţie de necesităţile utilizatorului cât şi o depanare şi o întreţinere mai uşoară. Un AP este un calculator industrial care a fost adaptat din punct de vedere al hardware-lui şi al software-lui pentru a fi utilizat în anumite aplicaţii specifice
Dimensiunile AP
AP Micro : < 32 I/OAP Mici: 32-128 I/OAP Medii: 128 -1024 I/OAP Mari: 1024 - 4096 I/OAP Foarte Mari: 4096- 8192 I/O
Elementele componente ale AP
Unitatea centrală de prelucrareProgramatorul/MonitorulModule de intrare/ieşireSertare şi carcase
şi opţionalImprimantăUnităţi de stocare a informaţiei
Procesorul
Unul sau mai multe microprocesoare care realizează:
calcule aritmetice şi logice;Comunicaţia şi interacţiunea dintre celelalte componente.
Memoria
ROM (read only memory) – această memorie este utilizată pentru stocarea sistemului de operare al AP;RAM (random access memory) – este împărţită în mai multe blocuri având fiecare o utilizare specifică.Sunt păstrate:
– imaginile ieşirilor şi intrărilor AP, – valorile prestabilite şi actuale ale temporizatoarelor şi contoarelor, – zona de lucru a procesorului, – zona de stocare a programului, – alte zone de memorie având destinaţie specială.
Memoria RAM îşi pierde conţinutul la întreruperea sursei de alimentare de aceea, pentru menţinerea programului şi a datelor stocate în aceasta, AP trebuie să aibă prevăzută o sursă de alimentare auxiliară (baterie).
Sursa de alimentare
Realizează adaptarea şi conversia tensiunii alternative în tensiune continuă pentru alimentarea diferitelor elemente ale AP.Poate furniza o tensiune pentru alimentarea elementelor conectate la intrări şi ieşiri (senzori, elemente de execuţie etc)
Programatorul/Monitorul
Acesta este un dispozitiv care comunică cu elementele AP şi care permite transferarea programului de aplicaţie în memoria AP, monitorizarea şi vizualizarea funcţionării AP. Programatorul poate fi: – un programator manual, – un terminal industrial – un calculator personal.
Module de intrare/ieşire.
Aceste module sunt dispozitive prin care AP comunică cu sistemul de acţionare sau instalaţia pe care trebuie să le comande şi cu mediul exterior.
Imprimantă
Imprimantele sunt folosite pentru listarea programului de aplicaţie după care funcţionează AP şi a altor mesaje şi informaţii legate de sistemul comandat.
Unităţi de stocare a informaţiei
Sunt folosite ca dispozitive de stocare secundare pentru: – programul de aplicaţie din memoria AP – alte date şi informaţii utile pentru salvarea acestora sau încărcarea
lor pe/de pe suportul magnetic (bandă sau disc magnetic). Programele de aplicaţii pot fi realizate şi înregistrate pe suport magnetic în laboratoare de dezvoltare a aplicaţiilor de bază pentru AP şi apoi încărcate în memoria AP aflate în sistemele de comandă plasate în halele de producţie. Versiunile mai vechi de AP erau dotate cu casetofoane. Versiunile recente utilizează unităţi de disc flexibil sau unităţi de disc dur sau memorii de tip flash.
Modulele de intrare/ieşire totul sau nimic (digitale)
Semnalele sunt de tip logicValorile tipice sunt:
– “0” logic = 0 V– “1” logic =
5 V cc12 V cc
24 V cc
48 V cc
12 V ca
24 V ca
120 V ca
240 V ca
Modulele de intrare digitale
Permite unităţii centrale a AP să efectueze o citire a stării logice a traductoarelor sau senzorilor care îi sunt asociaţi. Modulele au în general 4, 8, 16 sau 32 de intrări.
Fiecărei intrări îi corespunde o cale care prelucrează semnalul electric pentru a elabora o informaţie binară, bitul de intrarecare este memorat.
Modulele de intrare digitaleAnsamblul de biţi de intrare formează cuvântul de intrare. Periodic, procesorul automatului adresează (citeşte modulul), conţinutul cuvântului de intrare este astfel copiat în zona de date ale automatului.
Fiecare cale este filtrată împotriva paraziţilor şi a contactelor imperfecte şi izolate electric pentru a mări fiabilitatea şi securitatea sistemului (izolare galvanică).
Un modul de intrare este definit în principal prin numărul de intrări pe care le are şi caracteristicile electrice acceptate (tensiune, tipul curentului etc.).
Structura şi conectarea senzorilor (cu 3 fire) la intrările digitale tip NPN
Vcc senzor
Masasenzor
Maro
Negru
Albastru
Structură NPN cu 3 fire
Structură NPN cu 3 fire
APAP
+24 V AP
0V APMasa internă
Vcc intern
In NPN
Masă senzor
Negru
Albastru
Structură NPN 2fire
Structură NPN 2fire APAP
+24 V AP
0V APMasă internă
Vcc intern
In NPN
Structura şi conectarea senzorilor (cu 2 fire) la intrările digitale tip NPN
Structura şi conectarea senzorilor (cu 3 fire) la intrările digitale tip PNP
APAP
+24 V AP
In PNP
0V APMasă internă
Vcc senzor
Masă senzor
Maron
Negru
Albastru
Structură PNP cu 3 fire
Structură PNP cu 3 fire
Structura şi conectarea senzorilor (cu 2 fire) la intrările digitale tip PNP
Vcc senzor Maron
Negru
Structură PNP 2 fireStructură PNP 2 fire APAP
+24 V AP
In PNP
0V AP Masă internă
Module de numărare de mare viteză
Sunt module de intrare digitale care au de îndeplinit funcţia de numărare a impulsurilor aplicate la intrarea modulului. Informaţia transmisă către memoria automatului, atunci când AP va adresa acest modul, va fi numărul de impulsuri sosite de la ultima adresare sau numărul total de impulsuri numărate de la iniţializare. Sunt utilizate în general pentru numărarea impulsurilor cu frecvenţă mare provenind de la senzori, encodere, sau contacte. Utilizarea modulelor de numărare de mare viteză uşurează munca programatorului deoarece el poate degreva unitatea centrală a AP de astfel de funcţii care consumă din puterea şi timpul de calcul al acesteia.
Modulele de ieşire digitale
Un modul de ieşire permite automatului programabil să acţioneze asupra elementelor de acţionare. Realizează corespondenţa: stare logică - semnal electric. Periodic, procesorul adresează modulul de ieşire şi realizează înscrierea biţilor unui cuvânt de memorie pe căile de ieşire ale modulului.Elementele de comutaţie ale modulului sunt
– electronice ( tranzistoare şi triacuri )– electromecanice (contacte de relee interne modulului).
Modulele de ieşire digitale
Ieşirile cu tranzistoare sunt utilizate în cazul comenzii dispozitivelor de c.c. Ieşirile cu triacuri sunt folosite pentru comanda dispozitivelor de c.a. Ieşirile cu relee pot fi utilizate atât pentru comanda dispozitivelor de c.c. cât şi a celor de c.a.Modulele care au număr mare de ieşiri
– au avantajul că prin utilizarea lor se ocupă mai puţine locuri pe magistrala automatului.
– au dezavantajul că nu pot furniza un curent mare de comandă pentru ieşiri.
Ieşiri digitale de tip static
Statică de c.a.
AP
µCOpto-Triac/tiristor
Yx
Cx
Statică de c.c.
AP
µC
Yx
CxOpto-Tranzistor Bipolair NPN / PNP
Modulele de intrare/ieşire analogice
Având în vedere că AP sunt dispozitive numerice, modulele analogice trebuie să realizeze o corespondenţă între mărimi analogice (curenţi sau tensiuni) şi valori numerice. Rezoluţia (cea mai mică valoare de curent sau tensiune) este dată de numărul de biţi utilizaţi pentru codificarea numerică. O altă caracteristică a unui astfel de modul este viteza de conversie.
Modulele de intrare analogice
Există două tipuri de module de intrare analogice:– intrări analogice care realizează detectarea
depăşirii unui prag de tensiune sau curent,– intrări analogice de măsură.
Modulele de intrare analogice cu detecţie de prag
Schema bloc a căii de semnal pentru o intrare analogică cu detecţie de prag
Modulele de intrare analogice de măsură
Modulele sunt prevăzute cu circuite de conversie analog numerică (A/N). Modulele de intrare analogice de măsură de tensiune pot fi
– unipolare (primesc la intrare numai tensiuni pozitive în general 0÷10V) – bipolare (primesc la intrare tensiuni negative şi pozitive în general -
10÷+10V). Modulele de curent sunt unipolare şi primesc la intrare curenţi în general în gama 4÷20mA. Există posibilitatea reglării atenuării sau amplificării semnalului de intrare ceea ce permite mărirea domeniului de măsură. Un astfel de modul poate sau nu să efectueze o serie de operaţiuni de liniarizare a semnalului de intrare înainte de a fi scris cuvântul de intrare în memorie.
Modulele de intrare analogice de măsură
Schema bloc a căii de semnal pentru o intrare analogică de măsură
Modulele de ieşire analogice
Fiecare ieşire este imaginea analogică a valorilor numerice codificate pe un grup de biţi (8 sau 12) definit de program. Modulele analogice de ieşire permit conectarea AP la elemente de preacţionare (variatoare de putere, variatoare de viteză,...) pentru a realiza funcţii de comandă şi de reglare. Fiecare ieşire este definită prin natura semnalului furnizat şi prin limitele sale (0-10V, 4-20 mA).
Module de intrare/ieşire la distanţă
Folosite în cazul în care instalaţia comandată prin intermediul AP este formată din mai multe echipamente care sunt amplasate în locuri diferite aflate la o anumită distanţă unul faţă de celălalt şi faţă de AP. Caracteristici:
– calea prin care este transmisă informaţia– distanţa de la care se realizează această transmisie.
Transmisia informaţiei se face prin intermediul unei legături prin:– cablu torsadat (distanţe de sute de metri) – cablu cu fibre optice (distanţe de kilometri)
Utilizate datorită imunităţii crescute la perturbaţii.
Modulele de comunicare
Cea mai utilizată legătură pentru dialog între AP şi elementele periferice (terminale de programare sau exploatare, imprimante, ...), este cea serie. Acest mod de comunicare permite schimbul de caractere compuse din biţi transmişi unul după altul pe linia de comunicare. Viteza de transmisie se exprimă în biţi pe secundă (bauds).
Module de comunicare cu server
Aceste module sunt utilizate pentru a permite AP să realizeze o comunicaţie bidirecţională cu un server care poate fi un PC sau un alt AP. În general, comunicarea de la server la AP prin intermediul acestor module este folosită pentru programarea AP. Pot fi modificaţi anumiţi parametri în program sau chiar întregul program existent în memoria AP. În sens invers, AP poate să transmită serverului o serie de informaţii care pot fi folosite de acesta pentru a determina durata unor procese, încheierea anumitor etape, apariţia unor situaţii de funcţionare necorespunzătoare.De obicei aceste module permit comunicarea AP cu serverul prin intermediul unei legături seriale de tip RS232.
Module de comunicare de la egal la egal (peer-to-peer)
Modulele de la egal la egal sunt utilizate pentru a permite comunicare AP între ele. Informaţiile pe care acestea le schimbă între ele sunt utilizate pentru obţinerea unei funcţionări în care AP să coopereze în vederea îndeplinirii unor sarcini.
Module de comunicare ASCII
Au capacitatea de a recepţiona şi a transmite informaţia codificată folosind fişiere în cod ASCII.Avantajul acestor module este faptul că pot fi folosite pentru a realiza interfaţa dintre AP şi alte echipamente care recunosc informaţia în cod ASCII cum ar fi imprimantele sau terminalele de dialog cu utilizatorul.
Module pentru controlul poziţiei
Aceste module sunt utilizate în cadrul aplicaţiilor care necesită poziţionarea spaţială a unor elemente componente prin intermediul unor elemente de acţionare. Modulele pot fi utilizate pentru controlul poziţiei în sisteme în – buclă deschisă– buclă închisă.
Module de poziţionare în buclă deschisă
În această categorie intră modulele de control a poziţiei bazate pe utilizarea motoarelor pas cu pas (MPP). Asigură o serie de funcţii, în special de accelerare şi încetinire Este mult uşurată comanda MPP cu ajutorul AP în aplicaţii ce implică poziţionarea precisă în două sau trei axe.Alte funcţii:
– poziţionare a sistemului într-o poziţie iniţială – protecţie a sistemului prin limitarea cursei anumitor elemente
mobile.
Module de poziţionare în buclă închisă
Utilizate pentru comanda maşinilor cu comandă numerică, linii de asamblare automate sau robotică.Cele mai întâlnite aplicaţii presupun poziţionarea unei mese mobile care este acţionată de motoare de c.c. sau de c.a. Pentru închiderea buclei, în cazul controlului poziţiei se utilizează un encoder. Pentru reglajul vitezei, închiderea buclei este realizată cu ajutorul unui tahometru.
Module video
Folosite în special în aplicaţiile care necesită realizarea unor operaţii de inspecţie în cadrul procesului de fabricaţie.Se poate face un reglaj automat al procesului pentru eliminarea pieselor fabricate necorespunzător.
Module cititoare pentru codurile de bare
Utilizarea codurilor de bare pentru identificarea automată a devenit o practică curentă în cadrul liniilor de asamblare automată. Folosite pentru a codifica informaţia referitoare la diverse etape ale procesului de producţie/asamblare pentru a urmări traseul şi evoluţia anumitor produse în cadrul fluxului tehnologic. Permite ţinerea evidenţei exacte a stocurilor existente şi a celor care sunt în curs de a fi finalizate.Îmbogăţesc capacitatea unui AP cu funcţii ce permit citirea informaţiilor astfel codificate pentru a fi ulterior folosite în comanda instalaţiei.
Module pentru reglajul automat
AP pot fi utilizate în acest scop în cazul în care nu se urmăreşte aplicarea unor algoritmi de reglare de complexitate ridicată. Variante:
– utilizarea unor module de prelucrare speciale;– utilizarea modulelor de intrare/ieşire obişnuite şi materializarea
prin program a algoritmilor de reglaj.Cele mai utilizate module pentru reglajul automat sunt cele care implementează algoritmii de tip PID. Ajustarea sistemului se realizează prin reglarea potenţiometrelor care stabilesc parametrii buclelor de reacţie proporţională, diferenţială şi integrală.
Reglaj automat materializat prin program
În cazul în care bucla de reglare este materializată prin program, ajustarea sistemului se realizează prin modificarea unor parametri din program. În acest caz pentru intrări se utilizează module de intrare analogice obişnuite în timp ce pentru ieşiri se pot utiliza module de intrare analogice sau digitale.Există module prin care se materializează alţi algoritmi de reglare automată cum ar fi module pentru controlul folosind reacţia pozitivă sau folosind logica fuzzy.Ca şi în cazul reglării PID, ca urmare a creşterii puterii de calcul a unităţii centrale, aceşti algoritmi pot fi materializaţi prin programul automatului programabil.
Dispozitive de intrare/ieşire pentru interfaţa om-maşină
Funcţii:– (principală) cea de programare a AP. – monitorizarea funcţionării AP, – verificarea programului înscris în memoria AP– depanarea circuitului
Prin intermediul acestor terminale, operatorul uman poate introduce sau modifica programul unui AP la locul în care acesta se află, fără a mai fi nevoie de alte dispozitive sau aparate ajutătoare. Prin cuplarea terminalului, comportarea AP poate fi examinată în timpul funcţionării.Informaţiile necesare operatorului sunt afişate prin intermediul unui ecran cu:
– tub catodic– cu cristale lichide.
Dispozitive de intrare/ieşire pentru interfaţa om-maşină
Dimensiunile acestora pot varia de la câteva linii de caractere până la un ecran. În primul caz, dispozitivul de afişare va fi mai ieftin însă nu va permite decât afişarea unei porţiuni mici din programul AP şi un număr restrâns de informaţii legate de starea AP. Informaţiile către AP sunt introduse de către operatorul uman prin intermediul:
– unor butoane, – a tastaturii, – a ecranelor sensibile la atingere,– cititoarelor de coduri de bare.
Terminale simple
Dispozitive simple care au de cele mai multe ori doar un monitor şi o tastatură. Sunt dotate cu inteligenţă, întreaga funcţionalitate privind comunicarea dintre om şi maşină este înglobată în AP. Afişează informaţia transmisă de AP şi permit introducerea şi transmiterea informaţiei de la utilizator la AP. Transmiterea informaţiei prin intermediul acestor terminale se realizează în format ASCII. Avantaj: preţ de cost redus, terminalul poate fi utilizat cu o gamă largă de AP. Dezavantaj: nu permit încărcarea unui program sau modificarea acestuia în memoria AP. Utilizarea lor devine din ce în ce mai redusă.
Terminale industriale dedicate
Au încorporată o anumită inteligenţă care le permite să îndeplinească o parte mai mică sau mai mare din funcţiile amintite mai sus.
O serie de terminale permit scrierea directă a programului în memoria AP. O altă categorie de terminale sunt dotate cu memorie proprie astfel încât programul poate fi scris în această memorie după care el este transferat în memoria AP.
Mare parte din aceste dispozitive permit utilizatorului să depaneze programul scris chiar în timpul funcţionării acestuia. Pot fi introduse valori pentru intrările sau pentru ieşirile automatului astfel încât să se poată urmări funcţionarea acestuia în diverse situaţii.
Programatoare de mână
Sunt utilizate în general pentru programarea AP de dimensiuni mici. Cuplate la AP, ele pot afişa informaţii privind:
– starea AP, – starea intrărilori– starea ieşirilor, – valorile diferitelor variabile interne, – valoarea curentă şi cea prestabilită a numărătoarelor – valoarea curentă şi cea prestabilită a temporizatoarelor.
Programatoarele de mână pot fi folosite pentru depanarea AP prin monitorizarea funcţionării acestuia şi prin modificarea intrărilor, ieşirilor sau alţi parametri ai programului.Avantaje: dimensiunile mici care le fac portabile. Dezavantaje: au înglobată inteligenţă redusă, dimensiunea mică a ecranului de afişare (la un moment dat nu poate fi vizualizată decât o mică parte a programului din memoria calculatorului).
Calculatoare personale
Datorită creşterii numărului de calculatoare personale disponibile, acestea au devenit în ultimul timp unul dintre celemai folosite dispozitive de interfaţă om maşină. Avantajele:
– permit programarea oricărui tip de AP cu condiţia să avem pachetul de programe corespunzător;
– în cazul în care calculatorul personal este de tip portabil, acesta permite programarea şi depanarea AP în locul de funcţionare;
– asigură o suprafaţă de afişare a informaţiei mare atât alb-negru cât şi color;
– permit păstrarea unor copii ale programului şi realizarea de verificări periodice pentru a vedea dacă programul în memoria AP nu s-a modificat datorită unor semnale perturbatoare;
Calculatoare personale (avantaje)
– permit documentarea programelor prin adăugarea de comentarii la liniile de program
– permit imprimarea documentaţiei la o imprimantă;– permit simularea funcţionării AP în vederea depanării
programului ce urmează a fi încărcat în memoria acestuia;
– asigură accesul la o gamă largă de dispozitive şi suporturi de stocare a informaţiei;
– permit utilizarea unor nume simbolice pentru intrări, ieşiri, variabile interne, temporizatoare sau numărătoare uşurând astfel înţelegerea programului AP;
– permit realizarea unor pachete de programe care să ofere informaţii bogate legate de starea de funcţionare a AP utile în procesul de depanare a acestuia.
Alegerea unui AP
CriteriuNumărul de intrări şi ieşiri logiceMemoriaNumărul de module speciale de I/OPosibilităţile de extindereTimpul de scanarePosibilităţi de comunicaţiePachetele de programe softwareSuport tehnicPreţul
Utilizarea temporizatoarelor
Întârziere la închidere (on-delay)Motorul 1 va funcţiona atunci când întrerupătorul Start este acţionat.Motorul 2 va porni după o întârziere egală cu 10s realizată cu ajutorul temporizatorului de tip cu temporizare la închidere T01.
Întârziere la deschidereMotorul M1 funcţionează în funcţie de starea întrerupătorului StartDupă ce motorul M1 a fost oprit, motorul pompei de lubrefiere mai funcţionează încă 20 de secunde
Acţiune cu durată limitată
Motoarele M1 şi M2 pornesc în acelaşi timp la închiderea întrerupătorului Start.Motorul M2 va funcţiona numai pe durata a 20,5s stabilită de temporizatorul T01 după care se va opri.
Acţiuni cu durată limitată
Motoarele M1, M2 şi M3 vor porni la închiderea întrerupătorului Start.Motorul M2 va funcţiona pe o durată limitată (20,5s) dată de temporizatorul T01Motorul M3 va funcţiona pe o durată limitată (41,5s) dată de temporizatorul T02
Semnalizare alternantă
Sistemul are 2 lămpi, L1 şi L2Când întrerupătorul Start este închis, cele două lămpi se vor aprinde alternativ pe o durată de 0,5s.Funcţionarea alternantă este obţinută utilizând temporizatoarele T01 şi T02 care se activează/dezactivează reciproc
Întârzieri multiple
Sistemul comandă două motoare M1 şi M2Motorul M1 porneşte după închiderea întrerupătorului Start cu o întârziere de 10s realizată de temporizatorul T01Motorul M2 porneşte după închiderea întrerupătorului Start cu o întârziere de 15sÎn prima variantă temporizarea realizată de T02 pentru motorul M2 este independentă de T01În varianta a doua T02 este activat de T01 realizând doar o diferenţă de 5 secunde
Temporizări la închidere
Sistemul este folosit pentru asigurarea iluminării limitate după oprirea iluminării într-o clădire cu parcareDupă oprirea iluminării în clădire (LCladire), se asigură iluminarea pe holuri (LUsa) încă 40s (cu ajutorul lui T01)pentru a permite ajungerea în parcarea de la subsolDin momentul opririi iluminatul în clădire, se asigură încă 3 min de iluminare a parcării după stingerea luminii pe holuri (LParcare) cu ajutorul temporizatorului T02
Numărarea evenimentelor
Intrarea Detect este corespunde unui detector de prezenţă a unor obiecte. Fiecare obiect detectat determină apariţia unui impuls la intrarea numărătoruluiButonul Zero poate fi utilizat pentru resetarea numărătoruluiManipulatorul M1 este activat după detectarea a 10 obiecte
Numărare descrescătoare
Parte a unei linii de ambalare sistemul de comandă urmăreşte ambalarea a 100 de obiecte pe o bandă rulantăNumărarea este descrescătoare. Când numărătorul ND2 ajunge la 0 (au fost detectate 100 obiecte) se dă comanda de ambalare.Încheierea operaţiei de ambalare (amb_ok) determină reîncărcarea numărătorului cu valoarea 100, corespunzătoare numărului de obiecte ce urmează a fi detectate şi ambalate
Două numărătoare
Parte a unei linii de ambalare care presupune ambalarea a 40 obiecte de tip A cu 60 obiecte de tip B. Obiectele vin pe benzi rulante diferite, sunt detectate de detectoarele Detect1 şi Detect2 şi numărate de numărătoarele crescătoare N1 şi N2Când este îndeplinită condiţia (40 A şi 60 B) se activează procesul de ambalare. Sfârşitul acestuia (amb_ok) resetează numărătoarele N1 şi N2 pentru următoare operaţie de ambalare
Numărare bidirecţională
Parte a unui sistem de comandă a barierelor unei parcări cu plată cu maxim 30 de locuri.Evidenţa locurilor libere este ţinută de numărătorul bidirecţional NCD1. Intrarea în parcare (ridicarea barierei de intrare BIntrare activă) este posibilă dacă sunt locuri libere (Plina’) şi dacă a fost făcută o cerere de intrare (CIntrare). Fiecare intrare descreşte valoarea numărătorului.Ieşirea din parcare (ridicarea barierei BIesire activă) este posibilă dacă s-a făcut cererea de ieşire CIesire (s-a plătit suma corespunzătoare).Prin modificarea valorii numărătorului se pot asigura un număr de locuri de parcare rezervate.
Numărare şi temporizare
Parte a unui sistem de comandă cu poziţionarea unui profil semifabricat în funcţie de repere echidistante. Un senzor sesizează trecerea prin dreptul reperelor. Numărătorul N1 sesizează trecerea prin dreptul a 20 de repere stabilind astfel poziţia la care trebuie sudată o piesă. Operaţia de sudare nu trebuie să dureze mai mult de 20s.
Introducere
SFC – sequential functional chart (diagrame funcţionale secvenţiale)Metodă grafică puternică pentru descrierea comportării secvenţiale a programului de comandăFolosit pentru partiţionarea unei probleme de comandăPermite o viziune de ansamblu ceea ce ajută la depanarea rapidăElementele de bază sunt Etapele care au blocuri de acţiuni şi TranziţiiPermite ramificarea şi execuţia în paralel a secvenţelor
Avantajele SFC
Partiţionarea grafică a procesului în elemente structurale EtapeExecuţie repetată mai rapidă a elementelor logice individualeReprezentare grafică simplăTimp redus de scriere şi depanare a programuluiDetectarea mai rapidă a erorilorPosibilitate de actualizare şi îmbunătăţire uşoară
Etapele
Corespunde unei situaţii în care comportamentul sistemului este invariabil în raport cu intrările şi ieşirile saleO etapă este activă sau inactivăStarea internă a unui sistem, o situaţie, este dată de mulţimea etapelor active la momentul respectiv.O diagramă SFC reprezintă sub o formă statică mulţimea situaţiilor posibile. În funcţionarea dinamică a sistemului doar o situaţie este obţinută la un moment dat.
Tranziţii
Indică posibilitatea evoluţiei de la o situaţie la alta. Trecerea de la o situaţie la alta se face prin depăşirea tranziţiei
Acţiuni
Acţiunea/acţiunile asociate unei etape nu este efectuată decât dacă etapa respectivă este activăReceptivitatea unei tranziţii este o funcţie logică ce depinde de intrări, variabile auxiliare şi activitatea sau inactivitatea uneia sau mai multe etape.Conexiunile se execută între etape şi tranziţii şi între tranziţii şi etape
Atribute ale acţiunilor
Atribute ale acţiunilorN non-stored(fără memorie) – acţiunea este activată atât timp cât etape este activăR reset – acţiunea este dezactivată indiferent de orice altă activareS set/stored – acţiunea este activată şi rămâne activată şi după ce etapa este dezactivată. De obicei necesită dezactivarea folosind atributul R (reset) L time limited (limitare în timp) acţiunea este activată pentru un interval de timp specificat sau până etapa este dezactivatăD time delayed (întârziere) – acţiunea este activată după perioada de timp specificatăP pulse – acţiunea este activată pentru a fi executată o singură dată când etapa este activată şi posibil încă o dată când etapa este dezactivată
Atribute ale acţiunilor
P0 (falling edge pulse) - acţiunea este activată atunci când etapa este dezactivatăP1 (raising edge pulse) – acţiunea este activată când etapa devine activăSD (stored, time delayed) – acţiunea este activată după un timp indiferent dacă între timp etapa este dezactivată şi poate fi dezactivată de o acţiune având atributul RDS (time delayed, stored) – acţiunea este activată după un timp dacă etapa este încă activă şi poate fi dezactivată de o acţiune având atributul RSL (stored, time limited) – acţiunea este activată pentru un interval de timp indiferent dacă între timp etapa a fost dezactivată
Reguli de evoluţie
Interpretarea diagramei pentru a reflecta comportamentul dinamic al unui sistem este realizată cu ajutorul a 5 reguli de evoluţie: Regula 1: Situaţia iniţială
– Situaţia iniţială caracterizează comportamentul părţii de comandă în raport cu partea de acţionare şi corespunde etapei de început a funcţionării părţii de comandă
Regula 2
Regula 2: Efectuarea unei tranziţii – O tranziţie este efectuată atunci când:
Tranziţia este validăCondiţia asociată tranziţiei este adevărată
Regula 3: Evoluţia etapelor active– Efectuarea tranziţiei produce simultan:
Dezactivarea tuturor etapelor anterioare legate la tranziţia respectivăActivarea tuturor etapelor următoare legate de tranziţia respectivă
Regula 4
Regula 4: Evoluţii simultane– Mai multe tranziţii care pot fi efectuate simultan sunt
efectuate simultan
Regula 5
Regula 5: Activarea şi dezactivarea simultană
– Dacă în cursul funcţionării o etapă trebuie să fie activată şi dezactivată, ea rămâne activă
Regula alternanţei
Trebuie întotdeauna respectată alternanţa etapă-tranziţie şi tranziţie-etapă indiferent de secvenţa parcursă
Erorile de sintaxă pot să ducă la diagrame care sunt ambigue (pot fi interpretate în moduri diferite)
Configuraţii elementare
Reprezentări complexe pot fi descompuse în reprezentări elementareReprezentările elementare corespund unor funcţionalităţi elementare
Selecţie de secvenţă
O selecţie de secvenţă reprezintă o alegere între o cale (o etapă sau un grup de etape) şi altă cale ceea ce corespunde unei structuri de tip SAU)Doar o singură cale va fi executată
Secvenţe paralele
Secvenţele paralele reprezintă căi de execuţie care se execută în acelaşi timp ele reprezentând o structură de tip SIÎn cazul acestei secvenţetoate căile se executătoate căile trebuie să se încheie înainte de a se trece mai departe în cadrul diagramei
Generalităţi
Funcţionarea AP se bazează pe executarea de către procesorul unităţii centrale a unui set de instrucţiuni. Instrucţiunea este cea mai mică unitate independentă de program fiind formată din simbolul sau denumirea operaţiei şi operandul sau operanzii.
În cazul AP, operaţiile cele mai des utilizate sunt cele ale algebrei booleene: – ŞI (AND, *), – SAU (OR, +), – NU (NOT, N), – ŞI-NU (NAND, ANDC), – SAU-NU (NOR, ORC), – SAU-EXCLUSIV (XOR) la care se adaugă – operaţiile de temporizare, numărare şi memorare.
Extensii ale operaţiilor de bază
În ultimul timp, datorită creşterii capacităţii de prelucrare şi a vitezei de execuţie, la operaţiile de bază au fost adăugate: operaţii aritmetice cum sunt adunarea, înmulţirea, împărţirea, operaţii logice pe mai mulţi biţi cum sunt deplasări la stânga şi la dreapta,operaţii de conversie a informaţiei dintr-un cod într-altul,funcţii de memorare de tip bistabil,alte funcţii speciale specifice AP.
Tipuri de operanzi
Operanzii acestor instrucţiuni sunt:– intrări (notate cu I, X sau IN), – ieşiri (notate cu E, Y sau OUT), – elemente de memorare (notate cu M) - modelează releele intermediare din
schemele electrice cu contacte, – elemente de temporizare (notate cu T)– elemente de numărare/contorizare (notate cu C).
operanzii sunt în corespondenţă directă cu resursele fizice pe care AP le are la dispoziţie: intrări, ieşiri, variabile intermediare (în strânsă legătură cu dimensiunea memoriei de lucru a AP), temporizatoare şi numărătoare implementate prin program sau prin circuite şi module specializate.corespondenţă indicată prin alăturarea la notaţiile prezentate anterior a unui identificator numeric care arată numărul resursei respective
Exemple de identificatori
Varianta 1:– primele două cifre ale părţii numerice =modulul pe care se află
resursa corespunzătoare variabilei respective (intrare, ieşire etc). – a treia cifră = resursa (numărul de ordine) în cadrul modului
precizat de primele două cifre.
Varianta 2:– identificatorul modulului şi numărul de ordine sunt separate de
punct.
Exemple de identificatori
Varianta 3:– variabilele de intrare, de ieşire şi de memorie nu sunt identificate
prin nici un simbol. – Faptul că o variabilă este de intrare, de ieşire sau de memorie
este identificat prin prima cifră a numărului de identificare. Aceasta corespunde modului de alocare a locaţiilor din memoria de lucru a AP.
– Adresele începând de la 000 sunt alocate intrărilor, adresele de la 200 sunt alocate ieşirilor şi adresele de la 400 sunt alocate variabilelor de memorie (relee interne).
Exemple de identificatori
Variabila Semnificaţia
Varianta 1 Varianta 2 Varianta 3
IN001 I 0.1 001 prima intrare a AP
OUT013 Q 0.3 203 a treia ieşire a AP
M010 M 0.10 410 a zecea variabilă intermediară
T002 T 0.2 T02 al doilea temporizator al AP
C001 C 0.1 C01 primul numărător al AP
Nume de instrucţiuni
De la apariţia AP, fiecare producător şi-a dezvoltat limbajul propriu de tip listă de instrucţiuni, alegerea numelor instrucţiunilor depinzând mult şi de limba vorbită de respectivii producători. Deşi se aseamănă între ele din punct de vedere funcţional, aceste limbaje au nume diferite şi folosesc pentru aceeaşi instrucţiune denumiri şi formate diferite.
Nume de instrucţiuni
Limbajul (Producătorul) Denumirea instrucţiunilor
AP-micro (IPA-Automatica)
AND, OR, ANDC, ORC,LD, LDC,STO, STOC, XOR, CMA, ZA, S, R, J, JC
PSE (AEG) *,+,-,=,E,A,S,R,Z,T,D,L
STEP (Siemens) U, UN, O, ON,=, S,R,ZV, ZR, L,T,M
SUCOS (Klockner-Moeller A, O, N, =
MELSEC (Mitsubishi) LD, LDI, AND, ANI, OR, ORI, MC, OUT, PLS, S, R, RST, ANB, ORB, NOP, END
Actsip-E (Hitachi) ORG, AND, OR, NOT, OUT, T/C, FUN
Exemplu. Program IL General Electric
Program
STR 000 AND NOT 001 OR 002AND 003OUT 200STR 200OUT 010
Observaţii
start sau memorare (primele două cifre ale identificatorului indică numărul modulului: 00 - modul de intrare,
01 - modul de ieşire)activare releu internvaloarea obţinută e trimisă la ieşirea 0 a
modulului 01
Exemplu. Program IL Kloeckner-Moeller
Program
L I 0.0AN I 0.1O I 0.2A I 0.3= M 0.0L M 0.0= Q 0.0
Observaţii
încarcă intrarea 0, modulul 0.SI-NUSAUSImarker, releu intern
Ieşire
Exemplu. Program IL Siemens
Program
U E 0.0UN E 0.1O E 0.2U E 0.3= M 0.0O M 0.0= A 0.0
Observaţii
E:Eingang, intrareUN: Und Nein, ŞI-NUO: Oder, SAUUndM: merker, releu intern
A: Ausgang, ieşire
Exemplu. Program IL Telemecanique
Program
L I 0.0AN I 0.1O I 0.2A I 0.3= B 10L B 10= O 0.0
Observaţii
Instrucţiunile sunt abrevieri ale denumirilor engleze
B: Bit, releu intern
O: Ieşire
Exemplu. Program IL Hitachi
Program
ORG 000AND NOT 001OR 002AND 003OUT 400ORG 400OUT 200
Observaţii
start (variabilele de intrare încep de la adresa 000, variabilele de ieşire de la adresa 200 iar variabilele de tip marker - releu intermediar - de la adresa 400).
ieşirea se face pe releu internIeşire
Exemplu. Program IL Mitsubishi
LD X000ANDI X001OR X002AND X003OUT M000LD M000OUT Y000
Încărcare intrare X000SI-NU cu intrarea X001SAU cu intrarea X002SI cu intrarea X003releu internÎncărcare releu internIeşire
Limbajul IL în standardul IEC 61131-3
Lista de instrucţiuni este compusă dintr-o secvenţă de instrucţiuniFiecare instrucţiune începe pe o linie nouă şi conţine operatorul (opţional cu modificatori) şi dacă este necesar, unul sau mai mulţi operanziInstrucţiunea poate fi precedată de o etichetă urmată de caracterul “:”
Example de câmpuri ale instrucţiunilor
START: LD %IX1 (* BUTON START*)
ANDN %MX5 (* NEBLOCAT *)
ST %QX2 (* VENTILATOR PORNIT*)
Etichetă Operator Operand Comentariu
result := result OP operand
Operatori şi semnificaţia lor
LD Atribuie operandului rezultatul curentST Memorează rezultatul curent la locaţia
operanduluiS Atribuie operandului de tip Boolean
valoarea 1R Atribuie operandului de tip Boolean
valoarea 0
Operatori şi semnificaţia lor
GT Comparaţie : >
GE Comparaţie : >=
EQ Comparaţie : =
NE Comparaţie : <>
LE Comparaţie : <=
LT Comparaţie : <
Operatori şi semnificaţia lor
JMP Salt la etichetă
CAL Apelul unui bloc funcţional
RET Întoarcere dintr-o funcţie sau bloc funcţional)
Exemplu de apel a unui bloc funcţional
1. CAL cu lista de intrări: CAL C10(CU:=%IX10, PV:=15)
2. CAL cu încărcarea/stocare intrărilor: LD 15ST C10.PVLD %IX10ST C10.CUCAL C10
3. Folosirea operatorilor de intrare:
LD 15PV C10LD %IX10CU C10
Tip de BF Operatori SemnificaţieSR S1,R Bistabil SRRS S,R1 Bistabil RSR_TRIG CLK Sesizare front crescătorF_TRIG CLK Sesizare front descrescătorCTU CU,R,PV Numărător crescătorCTD CD,LD,PV Numărător descrescătorCTUD CU,CD,R,LD,PV Numărător bidirecţionalTP IN,PT TemporizatorTON IN,PT Temporizator la închidereTOF IN,PT Temporizator la deschidere
Tipuri de blocuri funcţionale
Bibliografie
E. van der Wal Instruction List - an assembler type of
language, www.plcopen.org
SR EN 61131-3, Automate programabile. Partea 3.
Limbaje de programare
C.G.Haba, Sisteme de comandă a maşinilor electrice, Ed.
Gh.Asachi, Iaşi
Originile limbajului LD
Limbajul bazat pe scheme cu contacte - Ladder Diagram (LD) – provine de la reprezentarea grafică folosită pentru schemele electrice de comandă
– Comenzile erau realizate cu ajutorul releelor
Limbajul LD a fost dezvoltat pentru a uşura crearea programelor şi menţinerea facilă a acestora
– reprezentări realizate cu calculatorul bazate pe reprezentarea grafică a schemelor cu contacte care erau uşor de înţeles
– se reduc costurile de învăţare a limbajului şi de suport tehnic
Scrierea programului în LD
Scrierea unui program în limbajul LD presupune desenarea unei diagrame (diagramă LD) similare unei scheme electrice cu contacte. Elementele componente ale diagramei LD modelează funcţionarea elementelor unei scheme cu contacte. Interpretarea funcţionării diagramei LD este similară interpretării schemelor electrice cu contacte.Elementele de bază utilizate pentru scrierea unui program în limbaj LD sunt:
– contactele, – bobinele, – temporizatoarele, – numărătoarele şi – blocurile funcţionale (funcţiile).
Contactele
Contactele sunt elemente de programare care modelează contactele aparatelor electrice de comutaţie. Ca şi în cazul acestora din urmă, contactele pot fi de tip n.d. (a) şi n.i. (b).
a) b)
IN001 IN002 IN003
Contactele
În cadrul unui program LD, contactele pot fi asociate intrărilor AP, ieşirilor AP sau unor variabile interne. La intrări pot fi conectate dispozitive care au două stări de funcţionare cum ar fi:
– contactele auxiliare ale contactoarelor şi releelor, – contactele n.î. sau n.d. ale butoanelor de comandă, – contactele n.î. sau n.d. ale limitatoarelor de cursă, – contactele n.î. sau n.d. ale detectoarelor de mărimi fizice, – contactele n.î. sau n.d. ale elementelor de protecţie, – ieşirile digitale ale unor aparate de măsură, protecţie sau
comandă, – ieşirile digitale ale altor AP sau sisteme de comandă etc.
Contactele
Pe lângă contactele obişnuite, unii producători pun la dispoziţia programatorilor şi alte elemente de programare corespunzătoare intrărilor AP, întâlnite, îndeosebi, în cazul circuitele numerice, cum ar fi: intrări cu memorie (latch), intrări active pe frontul crescător intrări active pe frontul descrescător.
Bobinele
Bobinele sunt elemente de programare care modelează funcţionarea bobinele contactoarelor şi releelor electromagnetice. Ca şi în cazul bobinelor din schemele electrice, bobinele din programele LD pot avea două stări: alimentate sau nealimentate.
a) b)
OUT 001 OUT 002 OUT 003
Bobinele
Ele pot fi asociate ieşirilor automatului dar şi unor variabile interne modelând astfel releele auxiliare din cadrul schemelor electrice cu contacte. Bobinele sunt elemente de programare care modelează funcţionarea bobinele contactoarelor şi releelor electromagnetice. Ca şi în cazul bobinelor din schemele electrice, bobinele din programele LD pot avea două stări: alimentate sau nealimentate. Ele pot fi asociate ieşirilor automatului dar şi unor variabile interne modelând astfel releele auxiliare din cadrul schemelor electrice cu contacte.
Bobinele
Fiecare ieşire este de identificată în mod unic, modul de identificare diferind de la un producător la altul. Fiecărei ieşiri i se asociază o singură bobină şi unul sau mai multe contacte ce pot fi utilizate în schemă în mod asemănător contactelor auxiliare ale contactoarelor şi releelor.La aceste ieşiri pot fi conectate dispozitive care au două stăride funcţionare cum ar fi:
– bobinele contactoarelor sau releelor, – elemente de semnalizare acustică sau luminoasă, – sarcini de putere mică, – intrările digitale ale unor aparate de măsură, protecţie sau
comandă, – intrările digitale ale altor AP sau sisteme de comandă etc.
Temporizatoarele
Temporizatoarele sunt elemente de programare care modelează funcţionarea releelor de timp şi a contactelor temporizate. Sunt utilizate pentru a realiza acţiuni întârziate sau ce durează un anumit interval de timp.
Validare
Iniţializare
IeşireNr. temporizator
Baza de timp
Valoareaprestabilită
Temporizatoarele
Producătorii de AP furnizează atât funcţii elementare de temporizare cât şi funcţii mai complexe. Temporizatoarele utilizate în programele LD au o flexibilitate şi o funcţionalitate mult mai mare decât temporizatoarele utilizate în schemele electrice.Temporizatoarele simple permit realizarea unei acţiuni întârziate cu un anumit interval de timp ce poate fi programat. Temporizatoarele complexe au în vedere obţinerea unor temporizări variabile, funcţie de anumite condiţii care apar la un moment dat.
Temporizatoarele
Fiecare temporizator din schemă este identificat în mod unic, modul de identificare fiind diferit de la un producător la altul. În cazul în care baza de timp este aceeaşi pentru toate temporizatoarele, precizată în manualul de programare a AP, aceasta este omisă. Valoarea prestabilită poate fi exprimată în unităţi de timp (s).Temporizatoarele au cel puţin o intrare de iniţializare, la activarea căreia începe temporizarea şi o ieşire. În unele variante, temporizatoarele sunt prevăzute şi cu o intrare de validare şi încă o ieşire care reprezintă negata primei ieşiri.
Numărătoarele
Numărătoarele sunt elemente de programare care poate primi o serie de impulsuri care sunt analizate în cadrul programului LD pentru a detecta numărul de apariţii ale unor evenimente cum ar fi:
– numărul de paşi efectuaţi de un motor pas cu pas, – numărul de conectări-deconectări ale unui aparat.– numărul de sticle care au fost umplute într-o staţie de
îmbuteliere, etc.Numărare Ieşire
Ieşire negată
Nr. numărător
Valoareprestabilită
Iniţializare
Numărătoarele
Numărul de evenimente poate fi comparat cu anumite valori prestabilite şi în funcţie de rezultatul acestor comparaţii pot fi luate anumite decizii şi date comenzile corespunzătoare.Există mai multe tipuri de numărătoare, printre cele mai uzuale fiind:
– numărătoarele unidirecţionale crescătoare– numărătoarele unidirecţionale descrescătoare şi – numărătoarele bidirecţionale care pot număra atât descrescător
cât şi crescător. Fiecare numărător din schemă este identificat în mod unic, modul de identificare fiind diferit de la un producător la altul.
Numărătoarele
Pentru fiecare numărător se precizează valoarea prestabilită, aceasta reprezentând valoarea maximă pe care o va număra numărătorul după care va activa ieşirea. Numărătorul are cel puţin două intrări, una de numărare şi una de iniţializare (la activarea acesteia numărătorul începe să numere impulsurile sosite la intrarea de numărare) şi o ieşire. Alte variante de numărătoare sunt prevăzute şi cu o intrare de validare şi o ieşire care reprezintă negata primei ieşiri.
Blocurile funcţionale
Pentru materializarea unor funcţii mai complexe menite să uşureze scrierea programelor în limbaj LD sunt utilizate blocurile funcţionale (BF). BF modelează diverse categorii de funcţii cele mai utilizate fiind:
– funcţii de încărcare a unor constante numerice,– funcţii aritmetice,– funcţii logice pe 8 sau 16 biţi,– funcţii de conversie a informaţiei din diferite formate (binar,
BCD, Gray etc),– funcţii de tratare a întreruperilor,
Blocurile funcţionale
– funcţii pentru detectarea fronturilor crescătoare sau descrescătoare a semnalelor,
– funcţii pentru realizarea controlerelor şi secvenţiatoarelor,– funcţii pentru actualizarea rapidă a intrărilor şi ieşirilor,– funcţii pentru comanda numărătoarelor de mare viteză.
Formatul şi modul de funcţionare a blocurilor funcţionale diferă de la un automat la altul, fiind specific fiecărui producător în parte.
Restricţii în scrierea programelor orientate pe scheme de contacte
Atunci când se realizează scrierea unui program LD pentru un automat programabil concret, trebuie să se ţină seama de limitările pe care pachetul de programe le poate avea:– limitări privitoare la formatul diagramei LD– limitări legate de modul de execuţie a programului
Limitări privitoare la formatul diagramei LD
Limitările ţin de:– proprietăţile intrinseci ale limbajului;– implementările specifice ale diferitelor pachete de
programe comerciale Sunt datorate soluţiilor tehnice adoptate de firmele producătoare pentru implementarea diverselor elemente ale limbajului.
Limitări privitoare la formatul diagramei LD
O parte a acestor limitări sunt prezentate în continuare:
– o bobină trebuie să fie alimentată întotdeauna prin intermediul unui contact;
– bobina trebuie să fie introdusă întotdeauna la capătul din dreapta al liniei;
– toate contactele trebuie să fie pe direcţie orizontală;– numărul contactelor pe o linie de alimentare a unei bobine
este limitat prin program;
Limitări privitoare la formatul diagramei LD
– un grup de contacte poate alimenta o singură bobină;– realizarea buclelor poate fi realizată într-un singur mod sau
poate să nu fie permisă;– sensul curentului prin circuit este de la stânga la dreapta
diagramei.
De obicei manualele de utilizare ale programelor conţin toate informaţiile necesare pentru ca utilizatorul să poată scrie programul în formatul acceptat de AP.
Limitări legate de modul de execuţie a programului
Funcţionarea AP se bazează pe execuţia repetată a programului pe care îl are înscris în memorie. Fiecare ciclu de execuţie a programului cuprinde 3 etape separate:
– citirea intrărilor– execuţia instrucţiunilor din program– actualizarea ieşirilor
Durata unui astfel de ciclu depinde atât de viteza procesorului cu care este dotat AP, cât şi de lungimea programului utilizatorului.
Limitări legate de modul de execuţie a programului
Etapa de citire a intrărilor, se citesc stările terminalelor de intrare în AP şi conform acestora se înscrie informaţia în tabelul intrărilor.Etapa de execuţie a instrucţiunilor din program, valorile intrărilor sunt folosite pentru execuţia instrucţiunilor, rezultatul acestora fiind înscrise în tabela ieşirilor.Etapa de actualizare a ieşirilor constă în transferarea informaţiei din tabela ieşirilor către terminalele de ieşire a automatului.Cele trei etape amintite mai sus se execută separat, modificarea semnalelor de la intrările AP în etapa a doua nu are efect asupra valorilor intrărilor folosite pentru execuţia instrucţiunilor. Ele vor fi folosite doar după ce vor fi citite în următoarea etapă de citire a intrărilor.
Limitări legate de modul de execuţie a programului
Dacă în etapa a doua, în urma execuţiei uneia sau mai multor instrucţiuni se modifică valoarea unei ieşiri în tabela de ieşiri, această modificare nu va apare efectiv la terminalul de ieşire corespunzător, decât în etapa a treia. Atunci se realizează actualizarea ieşirilor pe baza tabelei ieşirilor calculată în etapa de execuţie a instrucţiunilor care a precedat-o.În scrierea unui program în limbajul LD trebuie avute în vedere şi modul în care este interpretat programul scris.
Interpretarea programelor LD
Există două moduri de interpretare a unui program LD:– citirea se face pe linie - se citesc contactele pe
linie, de la stânga la dreapta, linie cu linie, începând cu prima linie şi terminând cu ultima;
– citirea se face pe coloană - se citesc contactele pe coloană, câte unul, de sus până jos, coloană cu coloană, începând cu prima coloană din stânga şi terminând cu ultima din dreapta.
Interpretarea programelor LD
În ambele situaţii trebuie să se aibă în vedere diferenţa faţă de schemele de comandă cu relee:
– Relee: O modificare în starea unui contact din circuitul de alimentare a bobinei unui contactor poate duce la modificarea imediată a stării acesteia indiferent dacă mai există sau nu alte elemente legate în serie sau paralel cu acel contact.
– Program LD: starea bobinei nu va fi modificată decât după ce se va citi starea tuturor elementelor prin care aceasta este alimentată.
Datorită vitezei mari de execuţie a procesorului, acest lucru nu pune în general nici o problemă. Ea trebuie considerată în cazurilor unor aplicaţii critice unde ar putea să apară o funcţionare diferită de cea dorită.
Limbajul LD în standardul IEC 61131-3
Prin introducerea acestui limbaj în standardul IEC 61131-3 s-a căutat uniformizarea unui întreg set de limbaje care se proclamau a fi de tip scheme cu contacte.
Execuţia programului
Liniile programului sunt evaluate de la stânga la dreapta şi de sus în josRamificaţiile din cadrul unei linii sunt evaluate de la stânga sus la dreapta jos
P S
R
A
B
D E
F G H
I J K
Fază
Ramificaţie
Nul
Linie a programului
Bobine fără memorie
Bitul corespunzător elementului este pus în 0 când tensiunea de alimentare este oprită– Bobină -( )-
Pune bitul în 1 când linia este evaluată la 1 logic şi pus în 0 când linia este evaluată la 0 logic
– Bobină negată -( / )-Pune bitul în 0 când linia este evaluată la 1 logic şi pus în 1 când linia este evaluată la 0 logicÎn general nu e folosită datorită confuziei pe care o poate introduce
Bobine fără memorie
– Bobină Set (Latch) -(S)-Pune bitul în 1 când linia este evaluată la 1 logic şi nimic când linia este evaluată la 0 logic
– Bobină Reset (Unlatch) -(R)-Pune bitul în 0 când linia este evaluată la 1 logic şi nimic când linia este evaluată la 0 logic
Contacte
Contact normal deschis -| |-– Validează linia de program la dreapta elementului
dacă linia este validată în stânga acestuia şi bitul corespunzător e în 1 logic.
Contact normal închis -|/|-– Validează linia de program la dreapta elementului
dacă linia este validată în stânga acestuia şi bitul corespunzător este în 0 logic
Contacte
Contact activ pe frontul crescător -|P|-– Validează partea dreaptă a liniei de program
pentru un ciclu când partea stângă este validatăContact activ pe frontul descrescător -|N|-– Validează partea dreaptă a liniei de program
pentru un ciclu când partea stângă este invalidată
Operaţii cu memorare sau fără memorare
Definiţie– Valorile cu memorare îşi menţin valoarea şi după
un ciclu deconectare-reconectare la sursa de alimentare
– Valorile fără memorare iau valoarea iniţială (de obicei 0) după un ciclu deconectare-reconectarela sursa de alimentare
IEC 61131-3 permite valorilor să fie definite ca fiind cu memorare– În majoritatea AP-urilor doar temporizatoarele şi
bobinele sunt elemente cu memorare.
Bobine cu memorare
Bitul din memorie corespunzător rămâne nemodificat după întreruperea şi reconectarea alimentării– Bobină cu memorie -(M)-
Pune bitul în 1 când linia este validă şi o pune în 0 când este invalidă.
– Bobină Set cu memorare (Latch) -(SM)-Pune bitul în 1 când linia este validă şi nu face nimic când este falsă
– Bobină Reset cu memorare (Unlatch) -(RM)-Pune bitul în 0 când linia este validă şi nu face nimic când este falsă
Bobine activate pe front
Bobină activată pe frontul pozitiv -(P)-– Pune bitul în 1 logic când linia din stânga trece
din starea invalidă în starea validă– Bitul rămâne în această stare
Bobină activată pe frontul negativ -(N)-– Pune bitul în 0 logic când linia din stânga trece
din starea validă în starea invalidă – Bitul rămâne în această stare
Temporizatoare in LD
Există 3 instrucţiuni ce realizează funcţiile de temporizare în cadrul standardului IEC 61131-3
– TP – Temporizator tip impuls– TON – Temporizator la conectare– TOF – Temporizator la deconectare
Valorile timpului– Baza de timp este de 1ms (1/1000 s)– Valorile sunt introduse folosind formatul literal
Temporizatoare in limbajul LD
Două variante de vizualizare în funcţie de folosirea ieşirilor EN/ENO
– prima metodă necesită elemente suplimentare de programare dacă este necesară utilizarea stării temporizatorului în alte linii de program
– a doua metodă asociază un bit lui Q ce poate fi apoi folosit de alte linii de program, ENO=EN
TONIN
T#200ms
Pump_Tmr
PT ET 178
Q
TON
T#200ms
Pump_Tmr
PT ET 178
Q
IN ENO
Pump_Tmr_DN
Funcţionarea temporizatoarelor
INQ
ETPT|0
Temporizare tip impuls (TP)
INQ
ETPT|0
Temporizare la conectare (TON)
INQ
ETPT|0
Temporizare la deconectare (TOF)
IN = condiţia de intrare a linieiQ = ieşirea comparatorului
– diferă în funcţie de tipul de temporizator
PT = valoarea prestabilităET = timpul scurs de la activarea temporizatorului
Numărătoare în LD
Trei instrucţiuni cu funcţii de numărător în IEC 61131
– CTU – Numărător crescător– CTD – Numărător descrescător– CTUD – Numărător bidirecţional
Toate trei contorizează tranziţiile liniei
Numărătoare în LD
Două vizualizări posibile în funcţie de utilizarea ieşirilor EN/ENO
– prima metodă necesită elemente de programare suplimentare dacă starea temporizatorului este necesară în alte linii de program
– a doua metodă asociază ieşirii Q un bit care poate fi folosit în alte linii de program, ENO=EN
CTU
200
Load_Cnt
PV CV 178
Q
IN ENO
Load_Cnt_DNR
CTU
200
Load_Cnt
PV CV 178
QIN
R
Funcţionarea numărătoarelor
Parametri– CU/CD = Numărare
crescătoare/descrescătoare– Q/QU/QD = Ieşirea
comparatorului– R = Aducere în Zero– LD = Încărcarea CV cu PV– PV = Valoarea prestabilită– CV = Valoarea numărată de
la momentul activării
...INQ
CVPV|0
LD
...Numărător descrescător (CTD)
...INQ
CVPV|0
R
Numărător crescător (CTU) ...
Funcţionarea numărătoarelor
Parametri– CU/CD = Numărare
crescătoare/descrescătoare– Q/QU/QD = Ieşirea
comparatorului– R = Aducere în Zero– LD = Încărcarea CV cu PV– PV = Valoarea prestabilită– CV = Valoarea numărată de
la momentul activării
...
...
CVPV|0
CUQUCDQD
LDR
Numărător bidirecţional (CTUD)
Setul de instrucţiuni IEC1131-3
IEC 61131-3 furnizează un set de bază de instrucţiuni care să realizeze operaţiile de bază (81 instrucţiuni LD)
– Conversii ale tipurilor de date - Trunc, Int_to_Sint, Dint_to_Real, Bcd_To_Int …– Operaţii Booleene - Bit Test, Bit Set, One Shot, Semaphores …– Temporizatoare / Numărătoare - Ton, Tp, Ctu, Ctd, Ctud– Operaţii aritmetice simple - Add, Sub, Mul, Div, Mod, Move, Expt– Diferite operaţii matematice - Abs, Sqrt, Ln, Log, Exp, Sin, Cos, Tan, Asin, Acos, Atan– Deplasări de biţi - Shl, Shr, Ror, Rol– Operaţii logice - And, Or, Xor, Not– Selecţie - Sel, Max, Min, Limit, Mux– Comparaţie - GT, GE, EQ, LE, LT, NE– Şiruri de caractere - Len, Left, Right, Mid, Concat, Insert, Delete, Replace, Find– Control - JMP, LBL, JSR, RET
Extinderea setului de instrucţiuni IEC1131-3
Toate operaţiile complexe sunt lăsate pentru a fi definite de producător sau utilizator– Operaţiile cu fişiere, PID, diagnostic, bucle
For/Next, căutările, sortările nu sunt în IEC1131-3– Sunt permise extensii astfel încât producătorii să
vină în întâmpinarea cerinţelor clienţilor– Toţi producătorii au definite propriile lor extensii
Bibliografie
Ron Bliss, Introduction to IEC1131-3 LadderDiagram, Allen-BradleySR EN 61131-3, Automate programabile. Partea 3. Limbaje de programareC.G.Haba, Sisteme de comandă a maşinilor electrice, Ed. Gh.Asachi, Iaşi
Operatori în ST
Simbol Operaţie
(expresie) Evaluarea parantezei
identificator(listă de parametri) Evaluarea funcţiei
Exemple:
LN(A), MAX(X,Y), etc.
** Ridicare la putereExponentiation
- Negare
NOT Complement
Operatori în ST
* Înmulţire
/ Împărţire
MOD Modulo
+ Adunare
- Scădere
< , > , <= , >= Comparare
= Egalitate
<> Inegalitate
Instrucţiunea de atribuire
A := B;
Tip dată la tip datăINT la INT
sauConfiguratie_Canal_Analogic la
Configuratie_Canal_Analogic
Instrucţiunile IF .. THEN .. ELSE
IF conditie= true THEN actiune1ELSE actiune2 (condiţia nu e adevarată)
IF ploua THEN Stai_acasa ELSE Mergi_La_Plimbare
Instrucţiunile IF .. THEN .. ELSE
D := B*B - 4*A*C ;IF D < 0.0 THEN NROOTS := 0 ;ELSIF D = 0.0 THENNROOTS := 1 ;X1 := - B/(2.0*A) ;
ELSENROOTS := 2 ;X1 := (- B + SQRT(D))/(2.0*A) ;X2 := (- B - SQRT(D))/(2.0*A) ;
END_IF ;
Instrucţiunea CASE : IF repetitiv
TW := BCD_TO_INT(THUMBWHEEL);TW_ERROR := 0;
CASE TW OF1,5: DISPLAY := OVEN_TEMP;2: DISPLAY := MOTOR_SPEED;3: DISPLAY := GROSS - TARE;4,6..10: DISPLAY := STATUS(TW - 4);
ELSE DISPLAY := 0 ;TW_ERROR := 1;
END_CASE;QW100 := INT_TO_BCD(DISPLAY);
Instrucţiunea FOR
SUM := 0 ;
FOR I := 1 TO 3 DOFOR J := 1 TO 2 DO
SUM := SUM + J ;END_FOR ;SUM := SUM + I ;
END_FOR ;
Instrucţiunea FOR
J := 101 ;
FOR I := 1 TO 100 BY 2 DOIF WORDS[I] = 'KEY' THENJ := I ;EXIT ;END_IF ;
END_FOR ;
Instrucţiunile REPEAT … UNTIL
J := -1 ;
REPEATJ := J+2 ;
UNTIL J = 101 OR WORDS[J] = 'KEY'END_REPEAT ;
Instrucţiunile EXIT şi RETURN
Instrucţiunea EXIT va fi folosită pentru a termina interaţiile înainte să fie satisfăcută condiţia de încheiere a iteraţiilor.
SUM := 0 ;FOR I := 1 TO 3 DO
FOR J := 1 TO 2 DOIF FLAG THEN EXIT ; END_IF
SUM := SUM + J ;END_FOR ;
SUM := SUM + I ;END_FOR ;
Bibliografie
E. van der Wal, Structured Text - a high level language,
www.plcopen.org
SR EN 61131-3, Automate programabile. Partea 3.
Limbaje de programare
C.G.Haba, Sisteme de comandă a maşinilor electrice, Ed.
Gh.Asachi, Iaşi
Terminologie
TOPOLOGIE – Forma reţelei
CAN – Controler pentru accesul la reţea
PHY – Nivel fizic
MAC – Media Access Control
MULTICAST – Date trimise la mai multe destinaţii
ÎNCAPSULARE – Nivelul de date
Terminologie
DETERMINISM – Întârzierea maximă a datelor poate fi determinatăREPEATABILITATE – Sosirea datelor este repetabilă
INTEROPERABILE – Dispozitivele pot să lucreze împreună
INTERSCHIMBABILE – Dispozitive similare pot fi schimbate între ele
Reţele industriale
Magistralăsenzor/el. acţionare
MagistralMagistrală ă secţiesecţie
Automate
Magistrală fabrică
Nivel SCADA
Nivelul fabrică
Nivel secţie
File Edit GestionareOperare
2122
33
234
direct I/Osensori
Criterii de selecţie
De firmă vs. deschiseDimensiunea datelor & vitezaDeterminismTopologii disponibileCorectarea erorilorOrganizaţiile de standardizareModelul de reţea
Modele de reţele
Tradiţional– Câmpul Sursă identifică nodul care transmite– Câmpul Destinaţie identifică nodul care
recepţionează– Foarte limitat
Producător/Consumator– Bazat pe conexiune– Operare multicast– Foarte eficient
MODEL OSI
Nivel fizic
Nivel legătură de date
Nivel reţea
Nivel transport
Nivel sesiune
Nivel prezentare
Nivel aplicaţie
DataData
OSI – Nivel aplicaţie
Datele consumate şi generate
Exemple:Ethernet: e-mail, ftpDeviceNet: procesarea dispozitivelor I/O
Aplicaţie
OSI – Nivel prezentare & Nivel sesiune
Formatarea datelorConexiuni aplicaţie
Exemple:Ethernet/IPSesiune
Prezentare
Aplicaţie
OSI – Nivel transport
Gestionează conexiunileCorectare eroriControlul transferului
Exemple:TCPTransport
Sesiune
Prezentare
Aplicaţie
OSI – Nivel reţea
Rutarea mesajelorControlul congestieiTransmisie nod-nod
Exemple:IP
Reţea
Transport
Sesiune
Prezentare
Aplicaţie
OSI – Nivel legătură de date
Media Access Control– Acces multiplu prin sesizarea
purtătoarei (CSMA - CarrierSense Multiple Access )
– Transfer jetonControl logic al legăturii
– Transmisie/Recepţie bit– Verificare erori– Controlul transmisiei
Exemple:Toate
Legătură
Reţea
Transport
Sesiune
Prezentare
Aplicaţie
OSI – Nivel fizic
Transferă şirul de biţiComponente electro-mecanice
Exemple:Toate
Legătură
Fizic
Reţea
Transport
Sesiune
Prezentare
Aplicaţie
Reţele industriale. Comparaţie
ETH
ERN
ET
Aplicaţii videoScanare
Coduri de bare
Senzori de
curgereLimitatoare de cursă
PEPROX SW
Reglaj de viteză
Acţionări
AfişoareValveInstrumente
ContactoareReleeÎntreruptoare
Reţele multibit Reţele multioctet
Reţele bazate pe mesaje
DEVI
CENE
T
PROF
IBUS
DPCotrol
automat
ASI
SERIPLEX
INTE
RBUS
-S
CONT
ROLN
ET
LONW
ORKS
BA
CN
ET
MODB
US
Reţele I/O seriale
Reţele multibit
înlocuire imediată a conexiunilor electrice clasiceviteză mare mărime redusă a datelordigitalenu conţin date pentru diagnosticare
AS-I Topologii
stea linie linie ramificată arborescentăcontroler
M aster
controler
Master Master Master
S lave
Slave
Slave
Slave
Slave
Slave
Slave
Slave
Slave
Slave
Slave
Slave
Slave
Slave
Slave
Slave
Slave
Slave
SlaveSlave
controler controler
Reţeaua AS-I
cea mai bună pentru dispozitive “binare” cum ar fi limitatoare de cursă, fotodetectoare şi detectoare de prezenţăreducerea costurilor cu 15-40% circuite AS-I permit accesul la reţea1 Master, 31 Slave (62 în V2.1)4 ni, 4 nd per nod (maxim 248)100m lungime totală (cablu galben)
Reţeaua AS-I
topologii: arborescentă, în linie, stea şi altelealimentarea şi datele integrate în aceeaşi reţeadurata unui ciclu e de 5ms cu toate cele 31 slaveprioritatea nodurilor stabilită în sistem de Master sau în afara sistemuluicablu plat sau rotund
Reţele seriale
orientate UART (Universal Asynchronous Receiver-Transmitter) – RS-232/422/485Materializare cu costuri scăzuteEficientă pentru transmitere de mesajeViteză mică (nu satisface condiţiile de timp real)Model de reţea Sursă/DestinaţieStandarde de firmă sau deschise (open standard)
Aplicaţii ale reţelelor seriale
înregistratoareinstrumenteacţionăricititoare de coduri de barecititoare de radiofrecvenţărezervoare de combustibilstaţii de tratare a apei reziduale
MODBUS
tehnologie a anilor 1960şiruri de date de comunicaţie simple, concise suport fizic RS232/422/485dispozitive modelate ca registre şi bobineset de instrucţiuni bine definit1 Master, 254 SlavesMaterializare cu cost redus
MODBUS (Continuare)
reprezentare a reţelei bobină/registruviteză redusă – (nu satisface condiţiile de timp real)247 noduri maximum nu are certificare formalăpromovat de grupul Schneider
MODBUS
Avantaje– Standard deschis şi larg răspândit– set de comenzi clar şi concis– număr mare de instalări– materializare cu cost redus
Dezavantaje– Model de reţea sursă/destinaţie– greu de depanat
MODBUS pe scurt
toate dispozitivele ar trebui să suporte Modbusunelte de configurare la îndemânăpoate fi utilizat de majoritatea utilizatoriloracces uşor la dispozitive de adaptare cu alte reţeleunelte gratuite pe webcreşte penetraţia pe piaţă
Limitările reţelelor seriale
Standarde electrice insuficienteCele mai multe sunt protocoale de firmăSusceptibile la zgomotProbleme cu masa
Probleme cu punctele de capătProbleme la configurarePerformanţe limitateGreu de depanatSuport pe viitor incert
Reţele multi-octet
Orientate în principal pe octetPrezintă un anumit determinismOperare pseudo timp realDepanare îmbunătăţităCost redus – suport pentru senzori mici
Reţele multi-octet
Date analogiceVolum mic de mesaje simpleÎn general nu are posibilităţi pentru comunicaţii de la egal la egalModel Sursă/Destinaţie sau Producător/Consumator îmbunătăţit
INTERBUS-S
Standardizat în EN 50254 şi IEC 61158De tip inel, Reţea cu registru de deplasareSuportă subreţele multipleAuto-configurareCerinţe ale aplicaţiilor– Număr mare de I/O– Redundanţă
DeviceNet
CAN Nivel aplicaţieDeviceNet transportă – date I/O– alte date decât cele de control
Folosind– Comunicaţii Master/Slave
Între– Dispozitive reprezentate de obiecte
Istoric DeviceNet
~1985 CAN dezvoltat de BOSCH~1993 AB dezvoltă DeviceNet~1995 Dreptul de proprietate tranferatorganizaţiei ODVA (Open DeviceNet VendorAssociation)~1996 Masă critică de producători/Utilizatori
Caracteristicile DeviceNet
Trunchi64 NoduriPot exista mai mulţi MasteriÎnlocuirea sau introducerea unui nod nou se poate face sub tensiuneCablul include alimentare şi linii de dateRate de transfer de 125K, 250K şi 500K Baud
DeviceNet & CAN
Semnalizare fizicăControlul accesului la mediuControlul coliziunilor prin arbitrare la nivel de bit
Mediul de transmisie
Ataşare la mediu
Semnalizare fizică
Control acces media
Control legătură logică
Nivel aplicaţie
Structura de comunicaţie DeviceNet
Bazat pe conexiuneÎn principal Master/Slave Suportă conexiuni I/O Connection de tip:– cu interogare (polling)– schimbarea stării– pulsuri
Capacitate redusă de comunicare cu egali (peer)Nu permite multicasting
Modelul obiect al DeviceNet
Dispozitivele descrise ca o serie de obiecteObiectele descriu comportamentul exteriorObiecte cerute:– Obiectul Identitate (Identity Object)– Obiectul DeviceNet– Obiectul Router– Obiectul conexiune (Connection Object)
CIP – Control & Information Protocol
Profile DeviceNet
“Standardizează” operaţiile dispozitivelor asemănătoareUn profil DeviceNet specifică– Modelul Obiect– Datele I/O– Datele de configurare
Producătorii pot adăuga extensii
Aplicaţii perfecte DeviceNet
Conductoare lungi/extinseDimensiuni fizice mici64 dispozitiveI/O mici şi nu foarte rapide Tipuri diferite de dispozitiveDeterminist nu foarte criticAplicaţie tipică: Transportor cu bandă
Profil acţionare c.c./c.a.
Include scalari, c.a., vectori c.a. & c.c.Obiecte specifice acţionărilor– Supervizor de control– Sistem de acţionare c.a./c.c.– Datele motorului
Inter-operabile nu interschimbabile
Preocupări & provocări privind DeviceNet
Testarea conformităţiiÎmbunătăţiri/revizuiri ale specificaţiilorPromovarea ca standard internaţionalPresiunea impusă datorită cerinţelor pentru performanţăRedundanţăOperare de tip egal la egal
Alte protocoale CAN
J1939– standard sponsorizat de SAE– Comunicare între componentele vehiculului– Mesaje între egali (peer to peer)
CANOpen– Standard al Comunităţii Europene– specificaţia CAN în Automatică (CiA)– largă răspândire în domenii de la cel al bunurilor de larg
consum la cel medical şi al aplicaţiilor industriale
ProfiBus
Iniţiativă germană din 1989bazată pe RS485circuitul Profibus conţine o stivă, MAC (Media Access Control)Versiuni multiple DP, FMS, PA127 noduri, 1000m244 Octeţi/Mesaj, 12MbaudReţea de tip Master/Slave cu interogare (Polling) Sprijinit de Profibus Trade Organization
ProfiBus
Avantaje– Viteză mare– Grad mare de determinism– circuitele ASIC implementează o stivă de comunicare– acceptat universal în Europa
Dezavantaje– Cost ridicat – Magistrala nu are alimentare– Model tradiţional Master/Slave
Reţele bazate pe mesaje-ControlNet
Deterministe & repetabileCapacitate mare de I/O & mesaje99 Noduri per subreţeaComunicaţie Multicast & PeerAdaptabilă de către utilizatorPoziţia pe piaţă e nesigurăScumpă
Aplicaţii ControlNet
Cerinţe ale aplicaţiei: – Număr mare de I/O– Număr mare de noduri– Secvenţiere şi poziţionare precisă– Control cu sincronizare precisă
Reţele cu care intră în competiţie: – ProfiBus FMS– MODBUS Plus– Ethernet/IP
Ethernet
Cea mai populară reţea din istorie ( peste 200 000 000 noduri şi creşterea continuă)introdusă de Xerox din 1970standard IEEE 802.3– Nivel fizic (caracteristici electrice)– Nivel legătură de date (MAC, corectare a erorilor şi formare de cadre - frame format)
Variante ale Ethernet
10BASE-5 10BASE-2 10BASE-T 10BASE-FL
Descriere Thicknet Thinnet 10Base-T 10Base-FL
MAC CSMA/CD CSMA/CD CSMA/CD CSMA/CD
Topologie Magistrală Magistrală Stea Stea
Cablare RG-8 Coaxial RG-58 Coaxial
UTP Fibră sticlă
Dimensiunea segmentului
5000 m 185m 100m 2000 m
Alimentare prin Ethernet (PoE - PowerOver Ethernet)
IEEE 802.3AF - Power-over-EthernetPerechile nefolosite (7-8, 4-5) asigură alimentareaInclude validarea dispozitivuluiAcceptat în iunie 2003Injectoare & valve (taps)
Tipuri de dispozitive PoE
"PoE-Compatible" or "Active EthernetDispozitive necompatibile PoEValvă pasivă – fără conversieValve reglate – se reglează conform cerinţelor dispozitivelorDispozitive injectoare – furnizează alimentare pentru reţele Cat5
PoE
Dezavantaje– Necesarul de curent trebuie calculat cu atenţie– Trebuie atenţie cu dispozitivele apărute înaintea
standardizării– Unele dispozitive utilizează firele PoE– Probleme cu emisiile EM şi încălzirea
Avantaje– Puncte de acces la distanţă fără fir cu cost redus– Aduce punctele de acces mai aproape de antenă (cablu mai
mic pentru antenă)Pasive vs. Reglate
Nivelurile de aplicaţie Ethernet
Modbus/TCP (www.modbus.org)
Ethernet/IP (www.odva.org)
ProfiNet (www.profibus.com)
Modbus/TCP
Structura de bază a mesajelor este ModbusArhitectura reţelei de tip Registru/Bobină identicăSimplu de materializatUnelte disponibile imediatÎntâlnită la multe automate programabile şi interfeţe om-maşinăSimplitatea este marea slăbiciune şi forţă
Modbus/TCP
Avantaje– Nivel de aplicaţie folosind TCP/IP– Materializat cu uşurinţă– Mesaje concise– Foloseşte Modbus care este larg utilizat şi înţeles
Dezavantaje– Posibilitate de interschimbare redusă sau 0– Tipuri de date limitate– Limitare a dimensiunii datelor transferate
PROFInet
NU are legătură cu ProfibusBazat pe MS DCOM – DistributedComponent Object Module Modularitate a procesului cu inteligenţă distribuităSuport redusComunicaţie tip TCP/IP
Ethernet/IP
CIP – Common Industrial Protocol (Model obiect de tip DeviceNet) folosind EthernetSuport de la producători semnificativArhitectură specifică producătoruluiSprijinit de ODVA Compatibilă cu DeviceNet & ControlNet
Bibliografie
John S. Rinaldi, Industrial Automation Networking 2004 & Beyond, Real Time Automation, www.rtaautomation.com
Anteproiectul
Pornind de obiectivele stabilite pentru sistemul de automatizat se realizează anteproiectulAnteproiectul se realizează de o singură echipăObiectivele anteproiectului este realizarea caietului de sarcini pentru sistemul de automatizat
Anteproiectul
Anteproiectul defineşte:– O structură a părţii operative– Funcţionalitatea realizată– Constrângerile externe ce trebuiesc respectate
Anteproiectul
Punctul de plecare:– Natura produselor sau gama de produse cărora li
se aplică automatizarea– Operaţiile ce trebuie efectuate asupra produselor– Procedeele de pus în practică– Dimensiunea producţie şi cadenţa dorită– Nivelul de automatizare– Flexibilitatea şi evoluţia preconizată– Estimarea iniţială a investiţiei şi a beneficiilor
Anteproiectul
Se stabileşte structura părţii operative– Se defineşte tipul de structură
Maşini autonomeMaşini asociateCelule de producţieCelule descentralizate şi coordonateCelule flexibile distribuite şi ierarhizate
A. Exemplu: Instalaţie de dozare
Produsele de obţinut– Gama de produse este obţinută din amestecul a 3
componenteConstituent A – pasta de viscozitate micăConstituent B şi C – lichide
– Produsele sunt fabricate în loturi de dimensiuni conform necesităţilor unei unităţi de condiţionare din aval
– Definirea amestecului trebuie parametrizat în funcţie de:Volumul producţie de fabricatCompoziţia specifică fiecărui produs din gamăCalitatea constituenţilor
A. Exemplu: Instalaţie de dozare
Funcţii şi constrângeri– Trebuie prevăzută funcţia de stocare– Pentru obţinerea preciziei amestecului se va utiliza o
dozare ponderală (pe bază de cântărire)Ciclul de funcţionare– Ciclul de bază a unui lot de produs necesită 3 sarcini
Dozarea constituenţilorUmplerea malaxoruluiAmestecare urmată de evacuarea produsului finit
– Pentru îndeplinirea condiţiei de productivitate, dozarea şi amestecarea se poate face în paralel
A. Exemplu: Instalaţie de dozare
Produs 1 Produs 2 …Produs nA 50-120 kg funcţie
de B şi C100-150 kg funcţie de B şi C
B 300 ±2 kg 200 ± 2kg
C 500±2kg 650±2kg
Capacitatea actuală a instalației din aval este limitată la o cantitate de produs în care loturile au maxim 1100 kg
A. Exemplu: Instalaţie de dozare
Operaţii de efectuat– Formarea unui preamestec din constituenţii B şi C
la temperatura specificată în funcţie de compoziţie
– Formarea amestecului final prin amestecarea cu o viteză dată pe o anumită durată a preamestecului BC cu constituentul A.
Viteza de amestecare este funcţie de amestec şi variază într-un raport de 1:4. Creşterea vitezei trebuie să fie progresivă
A. Exemplu: Instalaţie de dozare
Producţia– Funcţionare în 3 schimburi– Schimburile de zi necesită un operator şi un
tehnician– Schimbul de noapte necesită 1 tehnician– Cadenţa estimată este de 3000 kg/h
Exemplu: Instalaţie de dozare
Exploatare– Fabricare pre programată pentru schimbul de
noapte– Ţinerea unui jurnal de lucru salvat zilnic– Oprire săptămânală pentru inspecţie şi curăţare– Mod de funcţionare degradată: comandă manuală
autorizată de la pupitru dacă reglajul de temperatură şi cântărirea încă funcţionează
Exemplu: Instalaţie de dozare
Siguranţa în funcţionare– Disponibilitate: 10 ore de oprire a producţiei pe an– Siguranţă: ne se acceptă pierderi, scurgeri sau
revărsare a produsului (produs periculos, costisitor şi greu de eliminat) chiar în cazul întreruperii energiei
– Mentenabilitate: 20 min maxim pentru primul nivel, 1 oră maxim pentru schimbarea constituentului şi 1 zi maxim pentru reparaţii.
Exemplu: Instalaţie de dozare
Condiţii de mediu– Mediul normal
Punere în funcţiune– 8 luni
Flexibilitate şi evoluţie– Memorarea compoziţiei produselor din gamă– Posibilitatea de programare a produselor noi sau
fabricate în serie mică– Evoluţia capacităţii lotului sau a volumului maxim– Gestionare informatizată în cel mult 2 ani
A. Exemplu: Instalaţie de dozare
Funcţii Constrângeri Funcţii Constrângeri
Stocare - Autonomie de aprovizionare 24h- Detecția nivelului minim – de definit
Ciclul de funcţionare
-Durată pentru 1100 kg –20 min- parametrizabil, produse preprogramate- funcţionare cu 1 operator noaptea
Pregătire/dozare
- Precizia cântăririi - ±2kg- Debit 100kg/min- Deversare - 0
Dialog de exploatare
Diagnosticare a tuturor defecţiunilor PO şi PC
Amestecare - Capacitate – max 1100 kg- Gama de viteze – de definit
Siguranţă în funcţionare
MTBF – 1000hMTTR – 1hMTTR(1) – 8h săptămânal
Reglaj temperatură
- Domeniu – 15 la 65°C- Precizia reglajului - ±2°C
Ante studiul părţii de comandă
Porneşte de la caietul de sarcini funcţionalAre ca rezultat o descriere tehnică şi un calcul previzional al costuluiAntestudiile părţii de comandă şi a celei operative pot fi realizate de echipe specializate diferiteÎn această etapă sunt analizate funcţiile de realizat şi constrângerile impuse pentru a se identifica soluţiile tehnice posibile
Ante studiul părţii de comandă
Descrierea tehnică va aborda ansamblul de soluţii tehnice şi alegerile reţinuteCalculul costului estimativ este necesar pentru a se stabili dacă proiectul răspunde aşteptărilor celor care l-au iniţiat
Ante studiul părţii de comandă
Analiza funcţională = un demers prin care se recenzează, se ordonează, se ierarhizează şi se tratează funcţiile de automatizare de realizatFuncţiile care sunt conforme cu restricţiile impuse sunt analizate în vederea găsirii unor soluţii tehnice
Ante studiul părţii de comandă
Principalele funcţii întâlnite în sistemele de automatizare– Funcţii de comandă digitale
DetectareComandă de puterePrelucrarea informaţiei
– Funcţii specifice de comandăPoziţionareVariaţia de vitezăReglareCântărireNumărare etc
– Funcţii de dialog om-maşină– Funcţii de dialog între dispozitivele sistemului
Alegere tehnică/alegere tehnologică
Alegere tehnică – procesul de trecere de la enunţarea obiectivelor la enunţarea procedeelor ce răspund obiectivelorAlegere tehnologică – procesul ce permite trecerea de la procedeele alese la mijloacele ce pun în practică procedeele (constituenţi, echipamente etc)
Exemplu de alegere tehnică(localizarea funcţiilor)
Traductor
El. acționare
Programe specifice
Traductor
El. acționare
Programe dintr‐o bibliotecă
Traductor
El. acționare
Module inteligente ale AP
Traductor
El. acționare
Traductoriinteligenți
Ante studiul părţii de comandă
Descrierea tehnică conţine:– O descriere detaliată a fiecărei funcţii, precizând:
Alegerea traductoarelor şi interfeţelor acestoraAlegerea elementelor componente ale comenzii de putere (contactoare, distributoare, ..) şi elementelor auxiliare (protecţie, semnalizare etc)Repartizarea inteligenţei între componenteCaracteristicile hardware şi software prelucrărilor necesare (caracteristicile I/O, module inteligente, legături de comunicaţie, programe de aplicaţii etc)
Ante studiul părţii de comandă
– O descriere detaliată a părţii de comandă, precizând:
Structura părţii de comandă (numărul şi tipul de AP, căi de comunicare etc)Configuraţia fiecărui AP (module, căi de comunicaţie, dimensiunea memoriei, limbajele folosite etc)
– Definirea programului de aplicaţieO SFC pentru a pune în evidenţă interacţiunea dintre funcţiiLista sarcinilor ce trebuie analizate
Ante studiul părţii de comandă
Funcţiile digitale– Detecţia
Tipul detectorului (mecanic, inductiv, fotoelectric) şi caracteristicile acestuiaComponentele asociate (relee, amplificatoare, surse de alimentare etc)Prelucrarea integrată a semnalului
– Comanda de putere. Pentru fiecare element de acţionare (contactor, distribuitor) se precizează:
Tipul şi caracteristicile (dimesiune, alimentare, semnale de comandă)Eventuale semnale de reacţie (semnale de stare, semnalizare defecte etc)
Ante studiul părţii de comandă
Funcţiile digitale– Prelucrarea informaţiei
I/O standard sau specifice ale APDiagrame SFC mai mult sau mai puţin detaliate ce descriu aceste funcţiiFuncţiile standard şi specifice cerute (temporizatoare, numărătoare)Necesarul de memorie (în kocteţi)
Ante studiul părţii de comandă
Funcţiile specifice de comandă– Pentru fiecare funcţie specifică trebuie precizat
Tipul şi caracteristicile elementelor componente de comandă şi de măsurareModulele şi programele de aplicaţie specifice
Ante studiul părţii de comandă
Funcţiile de dialog şi comunicare. Pentru fiecare componentă din sistem se precizează:
– Lista elementelor integrate în pupitru/consolă (butoane, lămpi, comutatoare, tastatură etc)
– Lista terminalelor de exploatare fixe sau mobilePentru fieare sistem de producţie se specifică:
– Informaţiile vehiculate (natura, originea, destinaţia, frecvenţa etc)
– Componentele comunicaţiei: porturi de comunicaţie sau module de comunicaţie specializate
– Perifericele complementare necesare (imprimantă, dispozitive de afişare, module de stocare a informaţiei etc)
B. Exemplu: Instalaţie de dozare
Ante studiul cuprinde:– Analiza ciclului de funcţionare– Analiza funcţiei de dozare– Analiza funcţiei de amestecare cu viteză variabilă– Descrierea părţii operative– Descrierea tehnică şi costul estimativ al părţii de
comandă
B. Exemplu: Instalaţie de dozare
Analiza funcţiei de dozareTraductoarele de greutate sunt realizate cu mărci tensometrice care trimit un semnal la un indicator de greutateSe pot alege 2 variante:
– Indicatorul de greutate amplifică semnalul de la mărcile tensometrice şi le trimite la AP (codat BCD). Automatul citeşte valorile şi determină terminarea cântăririi
– AP trimite comanda de măsurare la indicatorul de greutate. Acesta realizează măsurătoarea şi trimite semnalul de sfârşit de măsurare către AP. Transmisia se face serial.
Varianta selectată este cea de a doua: fiabilitate, precizie, reducerea programului de aplicaţie
B. Exemplu: Instalaţie de dozare
Analiza funcţiei de amestecare cu viteză variabilă– Ante studiul a dus la rezultatul următor:
Antrenare cu motoreductor asincron cu un singur sens, Pn=3kW.Variaţia electronică a vitezei de la 5 la 20 rot/min (raport 1:4)Frânare naturală prin sarcină
B. Exemplu: Instalaţie de dozare
Analiza funcţiei de amestecare cu viteză variabilă– Caietul de sarcini impune restricţiile:
O pornire progresivă pentru evitarea împroşcării cu lichideO MTBF de peste 1000 oreProtecţia motorului conform normelorO supraveghere a motorului cu semnalizarea defectelor pentru diagnosticare (suprasarcină, scurtcircuit)
– Funcţia de amestecare cuprinde 3 funcţii elementareVariaţia vitezeiComanda şi protecţia motoruluiDiagnosticare şi dialog
B. Exemplu: Instalaţie de dozare
Funcţia de variaţie a vitezei– Tipul de variator
Se alege un invertor cu v/f constantEste suficient un invertor simplul (1 cadran)Puterea de 3kW implică alimentarea la o reţea de 380V.
– Pornirea progresivăPornire manuală cu potenţiometruComandă analogică externă
– Afişarea vitezeiSoluţie 1: comutare de indicatoare pre reglateSoluţie 2: se utilizează un modul de ieşire analogică a AP
B. Exemplu: Instalaţie de dozare
Funcţia de protecţie a instalaţiei– Standardele conduc la următoarea alegere:
Un separator 25 AProtecţie de linie prin siguranţe fuzibileProtecţie a motorului prin relee electrotermice tripolare diferenţialeÎntrerupere cu contactor de 9 A
B. Exemplu: Instalaţie de dozare
Funcţia de dialog– Utilizarea unui contactor cu funcţii integrate– Modul de dialog asociat invertorului pentru
detectarea şi semnalizarea defectelor– Contacte de semnalizare a stării diferitelor
componente.