Introducere în sisteme
automate de comandă
1
Generalităţi
z 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.
z Exemple:
– Întrerupătoare
– Întrerupătoare automate
– Comutatoare tobă
Sisteme de comandă manuale
Clasificare
z 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.
Sisteme de comandă semiautomate
Clasificare
z 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)
z Tensiunea de comandă
z Elemente de siguranţă
z Elemente de comandă
z Elemente intermediare (relee)
z Elemente de conectare cu acţionare
electromagnetică
z Elemente de acţionare
z Elemente de protecţie
z Elemente de semnalizare
z Surse de alimentare
z Senzori si traductoare
Elemente componente ale SCC
z 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.
z 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.
z 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).
z 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
z 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.
z Elemente de semnalizare (optice sau acustice)
z Elemente auxiliare cum ar fi transformatoare, redresoare,
rezistenţe, etc.
Funcţiile unui sistem de comandă şi
control.
z Pornirea
z Oprirea
z Inversarea sensului de rotaţie
z Menţinerea regimului de lucru
z Controlul vitezei
z Protecţia operatorului
Pornirea
z Simplitate
z Siguranţa în funcţionare
z Repetabilitatea regimurilor de funcţionare
z Flexibilitate
z Posibilitate de evoluţie
z Coordonare
z Dialog
z Calitate
z Gestiune
Simplitate
Algebra booleană
Funcţii booleene (FB)
Reprezentarea FB
1
Definiţie
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
z Idempotenţa
∀a ∈ B
(i) a + a = a
(ii) a.a = a
z Proprietăţile lui 0 şi 1
∀a ∈ B
(i) a+1=1
(ii) a.0 = 0
Proprietăţile algebrei booleene
z Unicitatea lui 0 şi 1
Elementele 0 şi 1 sunt unice
z Unicitatea elementului opus
Pentru ∀a∈B , a’ este unic
z Distincţia dintre 0 şi 1
Elementele 0 şi 1 sunt distincte
z Involuţia
∀a∈B, (a')'=a
Proprietăţile algebrei booleene
z Absorbţia
∀a,b∈B
(i) a + a.b = a
(ii) a.(a+b) = a
z Asociativitatea
∀a,b,c∈B
(i) a + (b + c) = (a + b) + c
(ii) a . (b . c) = (a . b) . c
Proprietăţile algebrei booleene
z De Morgan
∀a,b∈B
(i) (a + b)’ = a’ . b’
(ii) (a . b)’ = a’ + b’
Exemple de algebre booleene
z Algebra binară
B={0,1} împreună cu operaţiile
z Simboluri
– Contact normal deschis (cnd)
– Contact normal închis (cni)
– Legare în paralel
a b b a
≡
a b
b ≡
a
Element neutru
a 1 a
≡
a
a
0 ≡
Distributivitate
a a a
b c ≡
b c
b a b
a
c ≡
a c
Element opus
a a 0
≡
a
1
a ≡
Idempotenţa
a a a
≡
a
a
a ≡
Proprietăţile lui 0 si 1
a 0 0
≡
a
1
1 ≡
Absorbţia
a
a
a b ≡
a
a a
b ≡
De Morgan
a
d a b F
b ≡
d F
a b d a
F
d F ≡
b
24
Definiţii
z F0 = 0 Funcţia constantă 0
z F1 = A.B (SI) AND
z F2 = AB' Inhibiţie (A dar nu B)
z F3 = A Identitate
z F4 = A B Inhibiţie (B dar nu A)
z F5 = B Identitate
z F6 = AB' + A'B SAU-Exclusiv (XOR), se notează
şi A⊕B
z F7=A+B SAU
Funcţiile booleene de două variabile
36
Reprezentările FB pot fi:
z Grafice
z Analitice
Reprezentări grafice
z Tabele de adevăr
z Scheme de operatori (porţi logice)
z Arbori de decizie binară
z Diagrame Veitch-Karnaugh
z Scheme cu contacte
z Hipercub
z Diagrame de semnale
Reprezentări analitice
z Simbolice
– forme normale necanonice disjunctive şi
conjunctive
– forme normale canonice disjunctive şi conjunctive
– simbol de marcare
z Coduri
– vectori booleeni
– numere convenţionale
– notaţia cubică poziţională
Tabele de adevăr
z Funcţie de 2 variabile
a b f
0 0 0
0 1 1
1 0 1
1 1 0
Tabele de adevăr
z 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
z 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
z Funcţie de 2 variabile
a b f Mintermi Notaţie
0 0 0 a’.b’ m0
0 1 1 a’.b m1
1 0 1 a.b’ m2
1 1 0 a.b m3
Tabele de adevăr
z Funcţie de 3 variabile
a b c f Mintermi Notaţie
0 0 0 0 a’.b’.c’ m0
0 0 1 0 a’.b’.c m1
0 1 0 1 a’.b.c’ m2
0 1 1 1 a’.b.c m3
1 0 0 1 a.b’.c’ m4
1 0 1 0 a.b’.c m5
1 1 0 0 a.b.c’ m6
1 1 1 0 a.b.c m7
Tabela de adevăr şi maxtermi
z 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
z Funcţie de 2 variabile
a b f Maxtermi Notaţie
0 0 0 a+b M0
0 1 1 a+b’ M1
1 0 1 a’+b M2
1 1 0 a’+b’ M3
Tabele de adevăr
z Funcţie de 3 variabile
a b c f Maxtermi Notaţie
0 0 0 0 a+b+c M0
0 0 1 0 a+b+c’ M1
0 1 0 1 a+b’+c M2
0 1 1 1 a+b’+c’ M3
1 0 0 1 a’+b+c M4
1 0 1 0 a’+b+c’ M5
1 1 0 0 a’+b’+c M6
1 1 1 0 a’+b’+c’ M7
Forma canonică normal disjunctivă
z f(x1,x2,...,xn)=Σ αK.mK
K=0
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 0 0 a’.b’ m0
0 1 1 a’.b m1
1 0 1 a.b’ m2
1 1 0 a.b m3
Forma canonică normal disjunctivă
z Funcţie de 3 variabile
a b c f Min- Notaţie
z f(a,b,c)=m2+m3+m4= termi
z f(x1,x2,...,xn)=Π (βK+MK)
K=0
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 0 0 a+b M0
0 1 1 a+b’ M1
1 0 1 a’+b M2
1 1 0 a’+b’ M3
Forma canonică normal conjunctivă
z Funcţie de 3 variabile
z f(a,b,c)=M0.M1.M5.M6.M7
=(a+b+c). a b c f Maxtermi Notaţie
0 0 0 0 a+b+c M0
.(a+b+c’).
0 0 1 0 a+b+c’ M1
.(a’+b+c’). 0 1 0 1 a+b’+c M2
.(a’+b’+c). 0 1 1 1 a+b’+c’ M3
.(a’+b’+c’) 1 0 0 1 a’+b+c M4
1 0 1 0 a’+b+c’ M5
1 1 0 0 a’+b’+c M6
1 1 1 0 a’+b’+c’ M7
Forma canonică normal conjunctivă
0 0 0 m0 f
0 1 1 m1 x
0 1 x
1 0 1 m2
0 m0 m1
0 1
1 1 1 m3 1 y
m2 m3
1 1
y
Diagrama V-K pentru n=3
y
0 0 0 0 m0
0 0 1 1 m1
00 01 11 10 yz
0 1 0 1 m2
0 1 1 0 m3 0 m0 m1 m3 m2
0 1 0 1
1 0 0 0 m4
1 m4 m5 m7 m6 x
1 0 1 1 m5 0 1 1 0
1 1 0 0 m6 x
1 1 1 1 m7 z
Liniile indică zonele pentru
care variabila ia valoarea 1
Diagrama V-K pentru n=4
(a se observa schimbarea poziţiei combinaţiilor 10 cu 11
x y z w h pentru a obţine adiacenţa între căsuţele alăturate)
0 0 0 0 0 m0
h
0 0 0 1 1 m1
0 0 1 0 1 m2 z
0 0 1 1 1 m3
0 1 0 0 0 m4 00 01 11 10 zw
0 1 0 1 0 m5
0 1 1 0 1 m6 00 m0 m1 m3 m2
0 1 1 1 1 m7
0 1 1 1
1 0 0 0 0 m8 01 m4 m5 m7 m6 y
0 0 1 1
1 0 0 1 1 m9
1 0 1 0 0 m10
x 11 m12 m13 m15 m14
0 1 0 1
1 0 1 1 1 m11
10 m8 m9 m11 m10
1 1 0 0 0 m12
0 1 1 0
1 1 0 1 1 m13
xy
1 1 1 0 1 m14
1 1 1 1 0 m15
w
Reprezentarea FB pe hipercub
z 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
x
0 1
z Exemplu f(x)=x
x
0 1
Reprezentarea FB pe hipercub
(2 variabile)
a
(0,0) (0,1)
b
(1,1)
(1,0)
– Exemplu: f(a,b)=a.b
a
(0,0) (0,1)
Reprezentarea FB pe hipercub
(3 variabile)
z Funcţii de 3 variabile
z se utilizează un sistem cu 3 axe de coordonate (câte una
pentru fiecare variabilă)
z Hipercubul corespunde unui cub
z Cele 8 combinaţii posibile ale valorilor funcţiei corespund celor
8 vârfuri ale cubului
(1,1,0) (1,1,1)
y
(0,1,0) (0,1,1)
z
(1,0,0)
(1,0,1)
(0,0,0) (0,0,1) x
Reprezentarea FB pe hipercub
(3 variabile)
z Funcţii de 3 variabile
– Exemplu: f(a,b,c)=a.b+a.c
(1,1,0) (1,1,1)
b
(0,1,0) (0,1,1)
c
(1,0,0)
(1,0,1)
(0,0,0) (0,0,1) a
Reprezentarea FB prin diagrame de
semnale
Minimizarea funcţiilor
booleene
1
Introducere
z 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.
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
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
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
z 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’
Teorema implicanţilor primi
t 1=x’yz f
zw z
t 2=yzw xy 00 01 11 10
00 0 0 0 0
t 3=xyw 01 0 0 1 1 y
x 11 0 1 1 0
t 4=xz’w 10 1 1 0 0
t 5=xy’z’ w
Metoda 2. Exemplul 2
f(x,y,z)=t1+t2+t3+t4+t5
z Se consideră funcţia
Algoritmul Q-M. Exemplu. Tabelul 1
Algoritmul Q-M. Exemplu. Tabelul 2
Automate programabile
Circuite logice
combinaţionale (CLC)
1
Definiţie
y1=F1(x1,x2,...,xn)
z Se dă structura circuitului
z Se 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
z Se dă structura circuitului
z Se 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
Circuite logice
combinaţionale (CLC)
1
Circuite de validare
S1 S0 Q0 Q1 Q2 Q3
0 0 1 0 0 0
0 1 0 1 0 0
1 0 0 0 1 0
1 1 0 0 0 1
Decodoare
z Pe baza tabelului de
adevăr se pot
determina ecuaţiile care
descriu funcţionarea
decodorului şi schema
care realizează această
funcţionare:
z Q0 = S1’ S0’
z Q1 = S1’ S0
z Q2 = S1 S0’
z Q3 = S1 S0
Decodoare cu intrări de validare
EN S1 S0 Q0 Q1 Q2 Q3
0 0 0 0 0 0 0
0 0 1 0 0 0 0
0 1 0 0 0 0 0
0 1 1 0 0 0 0
1 0 0 1 0 0 0
1 0 1 0 1 0 0
1 1 0 0 0 1 0
1 1 1 0 0 0 1
Decodoare cu intrări de validare
EN S1 S0 Q0 Q1 Q2 Q3
z Se observă că pentru 0 0 0 0 0 0 0
EN=0 toate ieşirile sunt 0 0 1 0 0 0 0
0 1 0 0 0 0 0
0 indiferent de valorile 0 1 1 0 0 0 0
intrărilor S0 şi S1 1 0 0 1 0 0 0
1 0 1 0 1 0 0
1 1 0 0 0 1 0
1 1 1 0 0 0 1
Cu 2 decodoare Cu 1 decodor
Multiplexoare
x y z f
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 1
Implementarea FB folosind
multiplexoarele
x y z f
z Metoda 2 – se înlocuieşte un multiplexor 0 0 0 0
8->1 cu unul 4->1 0 0 1 1
0 1 0 1
– Se grupează rândurile din tabelul de adevăr
0 1 1 0
z când xy=00, f=z 1 0 0 0
1 0 1 0
z când xy=01, f=z’
1 1 0 1
z când xy=10, f=0 1 1 1 1
z câ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.
Automate programabile
Circuite logice
secvenţiale (CLS)
1
Circuite secvenţiale
z Intrarea S se va folosi
pentru a înscrie
informaţia în circuit,
z Intrarea R pentru a
şterge informaţia din
circuit.
CBB de tip RS. Simboluri
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
Rn.Sn=0
Qn+1=Rn’.(Sn+Qn)= Rn↓(Sn↓Qn)
Qn+1’=Sn’.(Rn+Qn’)= Sn↓ (Rn↓Qn’)
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. Tabela de excitaţie
CBB de tip JK
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 1 0 Qn+1= Qn’
CBB de tip JK. Funcţionare
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=l
1 0 0 0
1 0 1 0 Qn+1=0
1 1 0 1
1 1 1 0 Qn+1= Qn’
CBB de tip JK. Ecuaţiile caracteristice
tn tn+1
Dn Qn Qn+1
0 0 0
0 1 0
1 0 1
1 1 1
CBB de tip D. Funcţionare
Qn+1=Dn
CBB de tip D. Tabelă de adevăr redusă
tn tn+1
Dn Qn Qn+1
0 0 0
0 1 0
1 0 1
1 1 1
CBB de tip D. Simbol grafic
CBB de tip D. Tabela de excitaţie
CBB de tip T
Tn Qn Qn+1
0 0 0
0 1 1
1 0 1
1 1 0
CBB de tip T. Funcţionare
tn tn+1
Tn Qn Qn+1
0 0 0
0 1 1
1 0 1
1 1 0
CBB de tip T. Ecuaţii caracteristice
Qn+1=Tn’. Qn +Tn.Qn’=Tn⊕Qn
Qn+1’= Tn. Qn +Tn’.Qn’=(Tn⊕Qn)’
CBB de tip T. Tabelă de excitaţie
CBB de tip T. Simbol grafic
Automate programabile
1
Generalităţi
z au apărut la sfârşitul anilor 60 în industria de automobile
z a dus la diminuarea timpilor necesari schimbării schemelor de
comandă, de la aproape 1 lună la câteva zile
z Apariţia microprocesoarelor şi utilizarea acestora în construcţia
AP a dus la dezvoltarea funcţionalităţii acestora odată cu
reducerea preţului de cost
z cu îmbunătăţirea performanţelor componentelor
microelectronice, s-au îmbunătăţit şi performanţele AP
– gabaritul,
– preţul de cost
– consumul de energie
Linie de asamblare automata
Avantajele AP
z Flexibilitatea
z Uşurinţă în modificarea programului şi
corectare a erorilor
z Număr mare de resurse
z Cost redus
z Costuri reduse de punere în funcţiune
Avantajele AP
z Siguranţa în funcţionare
z Documentaţia
z Simplitatea achiziţiei sistemului de
comandă
z Modificarea funcţionalităţii schemei de
comandă
z Achiziţionarea rapidă a elementelor
schemei de comandă
Flexibilitatea
Schemele clasice
z modificarea unei scheme de comandă prin adăugarea, de exemplu, a
unor contacte,necesita adăugarea unor relee sau blocuri de contacte
suplimentare.
z Consecinţe
– costuri suplimentare şi
– modificarea schemei de amplasare care să includă şi componentele noi.
AP
z 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.
z dacă nu se depăşeşte capacitatea AP, nu se modifică nici necesarul de
elemente componente ale schemei
z Consecinţă
– nu avem creştere a costului implementării obţinute.
Cost redus
Schemele clasice
z Buna funcţionare putea fi verificată doar după ce era
realizată fizic schema cu relee pentru a fi apoi
testată şi verificată.
AP
z 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
Schemele clasice
z Posibilitatea de intervenţie şi de modificare în timpul
funcţionării nu este întotdeauna asigurată
AP
z Modificarea 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 clasice
z Erau alcătuite de cele mai multe ori din multe elemente diferite
achiziţionate de la producători diferiţi.
z Obţinerea acestor produse atât pentru realizarea schemei dar şi
pentru înlocuirea unor elemente defecte în decursul funcţionării
acesteia este costisitoare
z Necesită timp şi alocare de resurse umane.
AP
z Automatele conţin de la început toate elementele necesare, deci
acestea sunt disponibile toate odată la momentul achiziţiei.
z Î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ă
z Noutatea tehnologiei
z Aplicaţiile specifice
z Influenţa mediului
z Funcţionarea nesigură la apariţia unor defecte
Noutatea tehnologiei
Schemele clasice
z În cazul unei scheme de comandă clasice butonul de oprire
deconectează schema de comandă de la sursa de alimentare
oprind funcţionarea acesteia.
z 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
z Î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
Structura automatelor
programabile
1
Introducere
z 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ă).
z În acest caz, fiecare bloc poate fi realizat fizic sub forma unui
modul specific.
z 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ă.
z 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
Tipurile de AP
Modulare
Conţine
z Procesorul
z Memoria
z Sursa de alimentare
Procesorul
z 12 V cc
z 24 V cc
z 48 V cc
z 12 V ca
z 24 V ca
z 120 V ca
z 240 V ca
Modulele de intrare digitale
z Permite unităţii centrale a AP să efectueze o
citire a stării logice a traductoarelor sau
senzorilor care îi sunt asociaţi.
z Modulele au în general 4, 8, 16 sau 32 de
intrări.
Structură
Structură NPN
NPN
cu
cu 33 fire
fire
AP
AP
Maro Vcc
Vcc senzor +24 V
intern
AP
Negru
In NPN
Albastru
0V AP
Masa Masa
senzor internă
Structura şi conectarea senzorilor (cu
2 fire) la intrările digitale tip NPN
Structură
Structură NPN
NPN 22
fire
fire AP
AP
Vcc intern
+24 V AP
Negru
In NPN
Albastru
0V AP
Masă Masă
senzor internă
Structura şi conectarea senzorilor (cu
3 fire) la intrările digitale tip PNP
Structură
Structură PNP
PNP
cu
cu 33 fire
fire AP
AP
Maron
Vcc senzor +24 V
AP
Negru In
PNP
Albastru
0V AP
Masă Masă
senzor internă
Structura şi conectarea senzorilor (cu
2 fire) la intrările digitale tip PNP
Structură
Structură PNP
PNP 22 fire
fire AP
AP
Maron
Vcc senzor +24 V
AP
Negru
In
PNP
0V AP Masă
internă
Module de numărare de mare viteză
Electromecanică cu releu
AP Yx
R
C
Cx
250V – 2A minim
Ieşiri digitale de tip static
AP AP
Yx Yx
µC Cx µC Cx
Opto-Triac/tiristor Opto-Tranzistor Bipolair NPN / PNP
Modulele de intrare/ieşire analogice
z Funcţii:
– (principală) cea de programare a AP.
– monitorizarea funcţionării AP,
– verificarea programului înscris în memoria AP
– depanarea circuitului
z 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.
z Prin cuplarea terminalului, comportarea AP poate fi examinată în
timpul funcţionării.
z 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ă
z Criteriu
z Numărul de intrări şi ieşiri logice
z Memoria
z Numărul de module speciale de I/O
z Posibilităţile de extindere
z Timpul de scanare
z Posibilităţi de comunicaţie
z Pachetele de programe software
z Suport tehnic
z Preţul
Exemplu de foaie de catalog`
Standardizarea
dezvoltării programelor
de aplicaţie pentru
automatele programabile
dupa E.v.d.Wal / PLCopen
(www.plcopen.org)
Ficţiune?
Imaginează-ţi
Elemente comune
Limbaje de programare
IEC 61131-3 : Elemente comune
Elemente comune
a.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 COMUNE
Tipuri de date & Variabile
cum ar fi:
BOOL
BYTE
INTEGER
REAL
DATE
TIME_OF_DAY
STRING
IEC 61131-3 : Elemente comune
ELEMENTE COMUNE
Configuraţii
Resurse
Taskuri
IEC 61131-3: Model Software
Configuratie
Functii de comunicatie
IEC 61131-3: Model Software
Configuratie
Resursa Resursa
Functie de comunicatie
IEC 61131-3: Model Software
Configuratie
Resursa Resursa
Functie de comunicatie
IEC 61131-3: Model Software
Configuratie
Resursa Resursa
Calea de
executie a
comenzii
Functie de comunicatie
IEC 61131-3: Model Software
Configuratie
Resursa Resursa
Calea de
executie a
comenzii
Cale de acces
Functie de comunicatie
IEC 61131-3: Model Software
Configuratie
Resursa Resursa Cale de
acces
variabila
Task Task Task Task
BF
Bloc
Functional
Program Program Program Program
BF BF BF BF Variabila
Variabile globale si directe
Cale de
executie a
Cale de acces comenzii
Functie de comunicatie
IEC 61131-3 : Elemente comune
ELEMENTE COMUNE
* Funcţii standard
ADD, SQRT, SIN, COS, GT, MIN, MAX, AND, OR, etc.
* Funcţii definite de utilizatori:
FUNCTION SIMPLE_FUN : REAL
VAR_INPUT
A, B : REAL;
C : REAL := 1.0;
END_VAR
SIMPLE_FUN := A*B/C;
END FUNCTION
…. & Blocuri funcţionale (BF)
z BF adiţionale FUNCTION_BLOCK
Type Local
z BF definite de
utilizator
Toate BF sunt Histerezis
utilizabile în alte REAL XIN1 Q BOOL
module sau REAL XIN2
REAL EPS
programe
Exemplu de Bloc Funcţional
Histerezis
REAL XIN1 Q BOOL
REAL XIN2
REAL EPS
Q
1
0
EPS EPS
XIN2
Exemplu de BF
FUNCTION_BLOCK HISTEREZIS
Histerezis VAR_INPUT
REAL XIN1 Q BOOL XIN1, XIN2 : REAL;
EPS : REAL; (* Zona de histerezis *)
REAL XIN2 END_VAR
REAL EPS VAR_OUTPUT
Q : BOOL := 0
END_VAR
IF Q THEN
Q IF XIN1 < (XIN2-EPS) THEN
1 Q := 0 (* XIN1 la descrestere *)
END_IF;
0 ELSIF XIN1 > (XIN2 + EPS ) THEN
Q := 1; (* XIN1 la crestere *)
EPS EPS END_IF;
END_FUNCTION_BLOCK
XIN2
Programe : proiectare ierarhizată
Start : BOOL;
Emergency : BOOL;
Limit : INT;
Automation
application
INPUT OUTPUT IN_OUT EXTERNAL
FUNCTION_BLOCK
PROGRAM
Type Local
Type Local
GLOBAL
INPUT
FUNCTION
Type Local
Diagrame funcţionale secvenţiale
(DFS)
z Metodă grafică puternică pentru
descrierea comportării secvenţiale
a programului de comandă Etapa 1 N Umple
z Folosit pentru partitionarea unei
probleme de comandă
Tranzitia 1
z Permite o viziune de ansamblu
ceea ce ajută la depanarea rapidă
z Elementele de bază sunt Etapele Etapa 2 S Goleste
care au blocuri de acţiuni şi Tranziţii
z Permite ramificarea şi execuţia în
Tranzitia 2
paralel a secvenţelor
Etapa 3
DFS secvenţe paralele
Etapa 1 N Umple
Tranzitia 1a Tranzitia 1b
Etapa 2 a S Goleste
Etapa 2 b S Goleste
Tranzitia 2a Tranzitia 2b
Etapa 3
Standardul IEC 61131-3
Elemente comune
Limbaje de programare
Limbajele de programare din IEC
61131-3
AND A B C
A C -| |--|/|----------------( )
B
Diagrame bazate pe scheme cu
contacte (DL)
Sus -Jos
Elemente comune
Limbaje de programare
Jos -Sus
Medii de programare IEC
Sisteme de Producători
comandă
Integrator de sistem
Dvs ??
Educaţie
Programare
Mentenanţă Instalare
Utilizatori? Care utilizatori?
Limbajul de programare
de tip “Listă de
instrucţiuni” (IL)
1
Generalităţi
z Funcţionarea AP se bazează pe executarea de către procesorul unităţii
centrale a unui set de instrucţiuni.
z Instrucţiunea este cea mai mică unitate independentă de program fiind
formată din simbolul sau denumirea operaţiei şi operandul sau operanzii.
z Î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ă
z 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.
z Varianta 2:
– identificatorul modulului şi numărul de ordine sunt separate de
punct.
Exemple de identificatori
z 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
SUCOS (Klockner-Moeller A, O, N, =
MELSEC (Mitsubishi) LD, LDI, AND, ANI, OR, ORI, MC, OUT, PLS, S, R,
RST, ANB, ORB, NOP, END
L1
K1
K2
S2 K3
S3
K3 K4
N
Exemplu. Program IL General Electric
Program Observaţii
Program Observaţii
Program Observaţii
Program Observaţii
Program Observaţii
AND SI logic
& SI logic
OR SAU logic
XOR SAU-EXCLUSIV logic
Operatori şi semnificaţia lor
ADD Adunare
SUB Scădere
MUL Înmulţire
DIV Împărţire
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
Limbajul de programare
de tip “Scheme cu
contacte” (LD)
1
Originile limbajului LD
z 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
z 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
z Scrierea unui program în limbajul LD presupune desenarea unei
diagrame (diagramă LD) similare unei scheme electrice cu contacte.
z Elementele componente ale diagramei LD modelează funcţionarea
elementelor unei scheme cu contacte.
z Interpretarea funcţionării diagramei LD este similară interpretării
schemelor electrice cu contacte.
z 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
a) b)
Contactele
a) b)
Bobinele
z 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.
z Ca şi în cazul bobinelor din schemele electrice, bobinele din
programele LD pot avea două stări: alimentate sau
nealimentate.
z Ele pot fi asociate ieşirilor automatului dar şi unor variabile
interne modelând astfel releele auxiliare din cadrul schemelor
electrice cu contacte.
Bobinele
z Fiecare ieşire este de identificată în mod unic, modul de
identificare diferind de la un producător la altul.
z 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.
z La aceste ieşiri pot fi conectate dispozitive care au două stări
de 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
Baza de timp
Iniţializare Valoarea
prestabilită
Temporizatoarele
Ieşire negată
Iniţializare Valoare
prestabilită
Numărătoarele
z 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.
z 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.
z 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
Linie a programului
z 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-reconectare
la sursa de alimentare
z 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
z Valorile timpului
– Baza de timp este de 1ms (1/1000 s)
– Valorile sunt introduse folosind formatul literal
Temporizatoare in limbajul LD
Pump_Tmr
z Două variante de TON
vizualizare în funcţie de IN Q
utilizarea ieşirilor
IN ENO
EN/ENO R Q
Load_Cnt_DN
200 PV CV 178
Funcţionarea numărătoarelor
Numărător crescător (CTU)
IN
... ...
z Parametri Q
– CU/CD = Numărare PV
CV|
crescătoare/descrescătoare 0
R
– Q/QU/QD = Ieşirea
comparatorului
– R = Aducere în Zero
– LD = Încărcarea CV cu PV Numărător descrescător (CTD)
IN
... ...
– PV = Valoarea prestabilită
Q
– CV = Valoarea numărată de PV
CV|
la momentul activării 0
LD
Funcţionarea numărătoarelor
z Parametri
– CU/CD = Numărare
crescătoare/descrescătoare Numărător bidirecţional (CTUD)
– Q/QU/QD = Ieşirea ...
comparatorului CU
QU
– R = Aducere în Zero ...
CD
– LD = Încărcarea CV cu PV
QD
– PV = Valoarea prestabilită
PV
– CV = Valoarea numărată de CV|
la momentul activării 0
R
LD
Setul de instrucţiuni IEC1131-3
z 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
Limbajul de programare
de tip “Text structurat”
(ST)
1
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
Operatori în ST
& SI logic
AND SI logic
XOR SAU-EXCLUSIV
OR SAU logic
Instrucţiunea de atribuire
A := B;
Instrucţiunea de atribuire
A := B;
z IF .. THEN .. ELSE
z CASE
z FOR
z WHILE …
z REPEAT UNTIL
Instrucţiunile IF .. THEN .. ELSE
IF conditie= true
THEN actiune1
ELSE actiune2 (condiţia nu e adevarată)
D := B*B - 4*A*C ;
IF D < 0.0 THEN NROOTS := 0 ;
ELSIF D = 0.0 THEN
NROOTS := 1 ;
X1 := - B/(2.0*A) ;
ELSE
NROOTS := 2 ;
X1 := (- B + SQRT(D))/(2.0*A) ;
X2 := (- B - SQRT(D))/(2.0*A) ;
END_IF ;
Instrucţiunea CASE : IF repetitiv
CASE selector OF
valoare_selector : actiune
ELSE …..
END_CASE;
Instrucţiunea CASE : IF repetitiv
TW := BCD_TO_INT(THUMBWHEEL);
TW_ERROR := 0;
CASE TW OF
1,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 ;
END_FOR ;
Instrucţiunea FOR
SUM := 0 ;
FOR I := 1 TO 3 DO
FOR 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 DO
IF WORDS[I] = 'KEY' THEN
J := I ;
EXIT ;
END_IF ;
END_FOR ;
Instrucţiunea WHILE
J := 1;
J := -1 ;
REPEAT
J := J+2 ;
UNTIL J = 101 OR WORDS[J] = 'KEY'
END_REPEAT ;
Instrucţiunile EXIT şi RETURN
SUM := 0 ;
FOR I := 1 TO 3 DO
FOR J := 1 TO 2 DO
IF FLAG THEN EXIT ; END_IF
SUM := SUM + J ;
END_FOR ;
SUM := SUM + I ;
END_FOR ;
Bibliografie
1
Introducere
z 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ă).
z În acest caz, fiecare bloc poate fi realizat fizic sub forma unui
modul specific.
z 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ă.
z 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
Tipurile de AP
Modulare
Conţine
z Procesorul
z Memoria
z Sursa de alimentare
Procesorul
z 12 V cc
z 24 V cc
z 48 V cc
z 12 V ca
z 24 V ca
z 120 V ca
z 240 V ca
Modulele de intrare digitale
z Permite unităţii centrale a AP să efectueze o
citire a stării logice a traductoarelor sau
senzorilor care îi sunt asociaţi.
z Modulele au în general 4, 8, 16 sau 32 de
intrări.
Structură
Structură NPN
NPN
cu
cu 33 fire
fire
AP
AP
Maro Vcc
Vcc senzor +24 V
intern
AP
Negru
In NPN
Albastru
0V AP
Masa Masa
senzor internă
Structura şi conectarea senzorilor (cu
2 fire) la intrările digitale tip NPN
Structură
Structură NPN
NPN 22
fire
fire AP
AP
Vcc intern
+24 V AP
Negru
In NPN
Albastru
0V AP
Masă Masă
senzor internă
Structura şi conectarea senzorilor (cu
3 fire) la intrările digitale tip PNP
Structură
Structură PNP
PNP
cu
cu 33 fire
fire AP
AP
Maron
Vcc senzor +24 V
AP
Negru In
PNP
Albastru
0V AP
Masă Masă
senzor internă
Structura şi conectarea senzorilor (cu
2 fire) la intrările digitale tip PNP
Structură
Structură PNP
PNP 22 fire
fire AP
AP
Maron
Vcc senzor +24 V
AP
Negru
In
PNP
0V AP Masă
internă
Module de numărare de mare viteză
Electromecanică cu releu
AP Yx
R
C
Cx
250V – 2A minim
Ieşiri digitale de tip static
AP AP
Yx Yx
µC Cx µC Cx
Opto-Triac/tiristor Opto-Tranzistor Bipolair NPN / PNP
Modulele de intrare/ieşire analogice
z Funcţii:
– (principală) cea de programare a AP.
– monitorizarea funcţionării AP,
– verificarea programului înscris în memoria AP
– depanarea circuitului
z 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.
z Prin cuplarea terminalului, comportarea AP poate fi examinată în
timpul funcţionării.
z 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ă
z Criteriu
z Numărul de intrări şi ieşiri logice
z Memoria
z Numărul de module speciale de I/O
z Posibilităţile de extindere
z Timpul de scanare
z Posibilităţi de comunicaţie
z Pachetele de programe software
z Suport tehnic
z Preţul
Exemplu de foaie de catalog`
Automate programabile
Elemente de programare
1
Utilizarea temporizatoarelor
Varianta 1 Varianta 2
Temporizări la închidere
1
Introducere
2 10
3 11
Regula 4
10
2
*(3) a
3 11
Regula 4
1
* c
* c
4
Regula 5
1
Generalităţi
z Funcţionarea AP se bazează pe executarea de către procesorul unităţii
centrale a unui set de instrucţiuni.
z Instrucţiunea este cea mai mică unitate independentă de program fiind
formată din simbolul sau denumirea operaţiei şi operandul sau operanzii.
z Î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ă
z 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.
z Varianta 2:
– identificatorul modulului şi numărul de ordine sunt separate de
punct.
Exemple de identificatori
z 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
SUCOS (Klockner-Moeller A, O, N, =
MELSEC (Mitsubishi) LD, LDI, AND, ANI, OR, ORI, MC, OUT, PLS, S, R,
RST, ANB, ORB, NOP, END
L1
K1
K2
S2 K3
S3
K3 K4
N
Exemplu. Program IL General Electric
Program Observaţii
Program Observaţii
Program Observaţii
Program Observaţii
Program Observaţii
AND SI logic
& SI logic
OR SAU logic
XOR SAU-EXCLUSIV logic
Operatori şi semnificaţia lor
ADD Adunare
SUB Scădere
MUL Înmulţire
DIV Împărţire
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
1
Originile limbajului LD
z 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
z 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
z Scrierea unui program în limbajul LD presupune desenarea unei
diagrame (diagramă LD) similare unei scheme electrice cu contacte.
z Elementele componente ale diagramei LD modelează funcţionarea
elementelor unei scheme cu contacte.
z Interpretarea funcţionării diagramei LD este similară interpretării
schemelor electrice cu contacte.
z 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
a) b)
Contactele
a) b)
Bobinele
z 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.
z Ca şi în cazul bobinelor din schemele electrice, bobinele din
programele LD pot avea două stări: alimentate sau
nealimentate.
z Ele pot fi asociate ieşirilor automatului dar şi unor variabile
interne modelând astfel releele auxiliare din cadrul schemelor
electrice cu contacte.
Bobinele
z Fiecare ieşire este de identificată în mod unic, modul de
identificare diferind de la un producător la altul.
z 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.
z La aceste ieşiri pot fi conectate dispozitive care au două stări
de 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
Baza de timp
Iniţializare Valoarea
prestabilită
Temporizatoarele
Ieşire negată
Iniţializare Valoare
prestabilită
Numărătoarele
z 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.
z 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.
z 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
Linie a programului
z 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-reconectare
la sursa de alimentare
z 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
z Valorile timpului
– Baza de timp este de 1ms (1/1000 s)
– Valorile sunt introduse folosind formatul literal
Temporizatoare in limbajul LD
Pump_Tmr
z Două variante de TON
vizualizare în funcţie de IN Q
utilizarea ieşirilor
IN ENO
EN/ENO R Q
Load_Cnt_DN
200 PV CV 178
Funcţionarea numărătoarelor
Numărător crescător (CTU)
IN
... ...
z Parametri Q
– CU/CD = Numărare PV
CV|
crescătoare/descrescătoare 0
R
– Q/QU/QD = Ieşirea
comparatorului
– R = Aducere în Zero
– LD = Încărcarea CV cu PV Numărător descrescător (CTD)
IN
... ...
– PV = Valoarea prestabilită
Q
– CV = Valoarea numărată de PV
CV|
la momentul activării 0
LD
Funcţionarea numărătoarelor
z Parametri
– CU/CD = Numărare
crescătoare/descrescătoare Numărător bidirecţional (CTUD)
– Q/QU/QD = Ieşirea ...
comparatorului CU
QU
– R = Aducere în Zero ...
CD
– LD = Încărcarea CV cu PV
QD
– PV = Valoarea prestabilită
PV
– CV = Valoarea numărată de CV|
la momentul activării 0
R
LD
Setul de instrucţiuni IEC1131-3
z 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
1
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
Operatori în ST
& SI logic
AND SI logic
XOR SAU-EXCLUSIV
OR SAU logic
Instrucţiunea de atribuire
A := B;
Instrucţiunea de atribuire
A := B;
z IF .. THEN .. ELSE
z CASE
z FOR
z WHILE …
z REPEAT UNTIL
Instrucţiunile IF .. THEN .. ELSE
IF conditie= true
THEN actiune1
ELSE actiune2 (condiţia nu e adevarată)
D := B*B - 4*A*C ;
IF D < 0.0 THEN NROOTS := 0 ;
ELSIF D = 0.0 THEN
NROOTS := 1 ;
X1 := - B/(2.0*A) ;
ELSE
NROOTS := 2 ;
X1 := (- B + SQRT(D))/(2.0*A) ;
X2 := (- B - SQRT(D))/(2.0*A) ;
END_IF ;
Instrucţiunea CASE : IF repetitiv
CASE selector OF
valoare_selector : actiune
ELSE …..
END_CASE;
Instrucţiunea CASE : IF repetitiv
TW := BCD_TO_INT(THUMBWHEEL);
TW_ERROR := 0;
CASE TW OF
1,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 ;
END_FOR ;
Instrucţiunea FOR
SUM := 0 ;
FOR I := 1 TO 3 DO
FOR 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 DO
IF WORDS[I] = 'KEY' THEN
J := I ;
EXIT ;
END_IF ;
END_FOR ;
Instrucţiunea WHILE
J := 1;
J := -1 ;
REPEAT
J := J+2 ;
UNTIL J = 101 OR WORDS[J] = 'KEY'
END_REPEAT ;
Instrucţiunile EXIT şi RETURN
SUM := 0 ;
FOR I := 1 TO 3 DO
FOR J := 1 TO 2 DO
IF FLAG THEN EXIT ; END_IF
SUM := SUM + J ;
END_FOR ;
SUM := SUM + I ;
END_FOR ;
Bibliografie
Reţele industriale
1
Terminologie
File
Nivel SCADA Operare 23 12
Edit
Gestionare
4 2 2
33
Magistrală fabrică
Automate
Nivelul fabrică
Magistrală secţie
Nivel secţie
Magistrală
senzor/el.
acţionare
sensori direct I/O
Criterii de selecţie
z Tradiţional
– Câmpul Sursă identifică nodul care transmite
– Câmpul Destinaţie identifică nodul care
recepţionează
– Foarte limitat
z Producător/Consumator
– Bazat pe conexiune
– Operare multicast
– Foarte eficient
MODEL OSI
Data Data
Nivel aplicaţie
Nivel prezentare
Nivel sesiune
Nivel transport
Nivel reţea
Nivel legătură
de date
Nivel fizic
OSI – Nivel aplicaţie
z Datele consumate şi
generate
Aplicaţie
Exemple:
z Ethernet: e-mail, ftp
z DeviceNet: procesarea
dispozitivelor I/O
OSI – Nivel prezentare & Nivel sesiune
z Formatarea datelor
z Conexiuni aplicaţie
Aplicaţie
Prezentare
Exemple:
Sesiune
z Ethernet/IP
OSI – Nivel transport
z Gestionează
conexiunile
Aplicaţie
z Corectare erori
Prezentare z Controlul transferului
Sesiune
Exemple:
Transport
z TCP
OSI – Nivel reţea
z Rutarea mesajelor
z Controlul congestiei
Aplicaţie
z Transmisie nod-nod
Prezentare
Exemple:
Sesiune
z IP
Transport
Reţea
OSI – Nivel legătură de date
z Media Access Control
– Acces multiplu prin sesizarea
purtătoarei (CSMA - Carrier
Aplicaţie Sense Multiple Access )
– Transfer jeton
Prezentare z Control logic al legăturii
– Transmisie/Recepţie bit
Sesiune – Verificare erori
– Controlul transmisiei
Transport
Reţea
Exemple:
z Toate
Legătură
OSI – Nivel fizic
Sesiune
Transport
Exemple:
z Toate
Reţea
Legătură
Fizic
Reţele industriale. Comparaţie
ETHERNET
Reglaj de viteză
Aplicaţii video
CONTROLNET
MODBUS
Scanare
BACNET
LONWORKS
SERIPLEX Acţionări
Coduri de bare
PROFIBUS DP
Cotrol
INTERBUS-S
automat DEVICENET Afişoare
Senzori Valve
ASI
de Instrumente
curgere Contactoare
Relee
Limitatoare de cursă
Întreruptoare
PE
PROX SW
Reţele multibit Reţele multioctet
Reţele bazate pe mesaje Reţele I/O seriale
Reţele multibit
MASTER Alimentare
Slave Slave
S lave S lave
S lave
S lave S lave Slave
S la ve
S la ve
S lave
S lave S lave S la ve S lave
S lave
z înregistratoare
z instrumente
z acţionări
z cititoare de coduri de bare
z cititoare de radiofrecvenţă
z rezervoare de combustibil
z staţii de tratare a apei reziduale
MODBUS
z Avantaje
– Standard deschis şi larg răspândit
– set de comenzi clar şi concis
– număr mare de instalări
– materializare cu cost redus
z Dezavantaje
– Model de reţea sursă/destinaţie
– greu de depanat
MODBUS pe scurt
z Date analogice
z Volum mic de mesaje simple
z În general nu are posibilităţi pentru
comunicaţii de la egal la egal
z Model Sursă/Destinaţie sau
Producător/Consumator îmbunătăţit
INTERBUS-S
z Trunchi
z 64 Noduri
z Pot exista mai mulţi Masteri
z Înlocuirea sau introducerea unui nod nou se
poate face sub tensiune
z Cablul include alimentare şi linii de date
z Rate de transfer de 125K, 250K şi 500K
Baud
DeviceNet & CAN
z Semnalizare fizică
Nivel aplicaţie
z Controlul accesului la
Control legătură logică mediu
z Controlul coliziunilor
Control acces media prin arbitrare la nivel de
bit
Semnalizare fizică
Ataşare la mediu
Mediul de transmisie
Structura de comunicaţie DeviceNet
z Bazat pe conexiune
z În principal Master/Slave
z Suportă conexiuni I/O Connection de tip:
– cu interogare (polling)
– schimbarea stării
– pulsuri
z Capacitate redusă de comunicare cu egali
(peer)
z Nu permite multicasting
Modelul obiect al DeviceNet
z Conductoare lungi/extinse
z Dimensiuni fizice mici
z 64 dispozitive
z I/O mici şi nu foarte rapide
z Tipuri diferite de dispozitive
z Determinist nu foarte critic
z Aplicaţie tipică: Transportor cu bandă
Profil acţionare c.c./c.a.
z Testarea conformităţii
z Îmbunătăţiri/revizuiri ale specificaţiilor
z Promovarea ca standard internaţional
z Presiunea impusă datorită cerinţelor pentru
performanţă
z Redundanţă
z Operare de tip egal la egal
Alte protocoale CAN
z J1939
– standard sponsorizat de SAE
– Comunicare între componentele vehiculului
– Mesaje între egali (peer to peer)
z 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
z Avantaje
– Viteză mare
– Grad mare de determinism
– circuitele ASIC implementează o stivă de comunicare
– acceptat universal în Europa
z Dezavantaje
– Cost ridicat
– Magistrala nu are alimentare
– Model tradiţional Master/Slave
Reţele bazate pe mesaje-
ControlNet
z Deterministe & repetabile
z Capacitate mare de I/O & mesaje
z 99 Noduri per subreţea
z Comunicaţie Multicast & Peer
z Adaptabilă de către utilizator
z Poziţia pe piaţă e nesigură
z Scumpă
Aplicaţii ControlNet
z 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
z 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ă)
z Pasive vs. Reglate
Nivelurile de aplicaţie Ethernet
z Modbus/TCP (www.modbus.org)
z Ethernet/IP (www.odva.org)
z ProfiNet (www.profibus.com)
Modbus/TCP
z Avantaje
– Nivel de aplicaţie folosind TCP/IP
– Materializat cu uşurinţă
– Mesaje concise
– Foloseşte Modbus care este larg utilizat şi înţeles
z Dezavantaje
– Posibilitate de interschimbare redusă sau 0
– Tipuri de date limitate
– Limitare a dimensiunii datelor transferate
PROFInet
Proiectarea sistemelor de
comandă
1
Etapele proiectării sistemului
automatizat
Etapele proiectării sistemului
automatizat
Anteproiectul
z Anteproiectul defineşte:
– O structură a părţii operative
– Funcţionalitatea realizată
– Constrângerile externe ce trebuiesc respectate
Anteproiectul
z 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
z Produsele de obţinut
– Gama de produse este obţinută din amestecul a 3
componente
z Constituent A – pasta de viscozitate mică
z 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:
z Volumul producţie de fabricat
z Compoziţia specifică fiecărui produs din gamă
z Calitatea constituenţilor
A. Exemplu: Instalaţie de dozare
z 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)
z Ciclul de funcţionare
– Ciclul de bază a unui lot de produs necesită 3 sarcini
z Dozarea constituenţilor
z Umplerea malaxorului
z Amestecare 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
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
z 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
z 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
z 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
z 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
z Condiţii de mediu
– Mediul normal
z Punere în funcţiune
– 8 luni
z 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
A. Exemplu: Instalaţie de dozare
Programe
dintr‐o bibliotecă
Traductor
El.
acționare
Module
inteligente
ale AP Traductor
El.
acționare
Traductori
inteligenți Traductor
El.
acționare
Ante studiul părţii de comandă
z Funcţiile digitale
– Detecţia
z Tipul detectorului (mecanic, inductiv, fotoelectric) şi
caracteristicile acestuia
z Componentele asociate (relee, amplificatoare, surse de
alimentare etc)
z Prelucrarea integrată a semnalului
– Comanda de putere. Pentru fiecare element de
acţionare (contactor, distribuitor) se precizează:
z Tipul şi caracteristicile (dimesiune, alimentare, semnale
de comandă)
z Eventuale semnale de reacţie (semnale de stare,
semnalizare defecte etc)
Ante studiul părţii de comandă
z Funcţiile digitale
– Prelucrarea informaţiei
z I/O standard sau specifice ale AP
z Diagrame SFC mai mult sau mai puţin detaliate ce
descriu aceste funcţii
z Funcţiile standard şi specifice cerute (temporizatoare,
numărătoare)
z Necesarul de memorie (în kocteţi)
Ante studiul părţii de comandă
z 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.
B. Exemplu: Instalaţie de dozare.
Descrierea tehnică
B. Exemplu: Instalaţie de dozare.
Descrierea tehnică
B. Exemplu: Instalaţie de dozare.
Descrierea tehnică
B. Exemplu: Instalaţie de dozare.
Descrierea tehnică
B. Exemplu: Instalaţie de dozare.
Descrierea tehnică