Sunteți pe pagina 1din 323

Informatica industriala

Sebestyen Gheorghe

Bibliografie
Sebestyen G., Informatica industriala, editura albastra, 2006
Gorgan D. Sebestyen G. Proiectarea calculatoarelor, Ed. Albastra,

2005
Calin. S. Dumitrache I, Regulatoare numerice, Ed. Didactica, 1985
Papadache, Automatizari industriale, Ed. Tehnica, 1978
Sangeorzan D., Regulatoare adaptive, ed. Militara, 1992
***, Control Engineering, http://www.controleng.com/
***, www.microchip.com
***, www.ti.com

http://users.utcluj.ro/~sebestyen/sebestyen.html
2

Continutul cursului:
Calculatorul n conducerea proceselor industriale;

notiuni introductive
Componente utilizate n sistemele digitale de control

Procesoare de semnal, microcontroloare


Memorii
Interfete de intrare/iesire

Mijloace moderne de comunicaie utilizate n

sistemele de control
Sisteme de reglare automat
Prelucrarea digital a semnalelor
Sisteme de timp-real
Sisteme distribuite de control

Aspecte preliminare
Istoria tehnicii - extinderea continua a capacitatilor umane prin
unelte, dispozitive, utilaje, echipamente, roboti

Obiective:

reducerea efortului fizic,


creterea productivitii muncii,
creterea preciziei i
mbuntirea condiiilor de munc

Sistemele automate salt calitativ prin aportul de inteligenta

Scopul utilizarii sistemelor automate


creterea performanelor,
ridicarea eficienei n utilizarea resurselor (umane, materiale,

energetice, etc.),
mbuntirea calitii produselor,
eliminarea muncii fizice,
Eliminarea muncii in medii periculoase (toxice, cu pericol de
explozie sau de producere a unor accidente)
evitarea unor activiti monotone i obositoare pentru om.
eliminarea erorii umane
complexitatea procesului controlat impune utilizarea unor
sisteme automate
timp de reacie mai scurt
putere de calcul mai mare

Evolutia sistemelor automate

Sisteme mecanice de reglaj (ex: control nivel lichid)


Sisteme hidraulice si pneumatice
Sisteme electrice (relee, transformatoare, aparate de masura)
Sisteme electronice (regulatoare analogice, filtre, circuite de
amplificare/atenuare)
Sisteme automate standardizate prin semnale unificate (010V, 4-20mA)
Sisteme digitale utilizate in controlul proceselor (automate
programabile, secventiatoare digitale, etc.)
Sisteme de calcul utilizate in urmarirea si conducerea
proceselor (sisteme de calcul dedicate, procesoare de semnal,
microcontroloare)
Sisteme distribuite de control
6

Sisteme digitale de control


Sisteme simple de secventiere, numarare, avertizare
Sisteme automate bazate pe calculatoare:
Pentru urmarire si vizualizare procese
Pentru suport decizie si gestiune economicoadministrativa
Pentru controlul direct al proceselor (DCC Direct
Computer Control)
Sisteme dedicate bazate pe microprocesoare
Pret mai mic
Dimensiuni mai mici
Consum mai mic
Fiabilitate mai mare
Sisteme multiprocesor
Sisteme distribuite (calculatoare + retea)
7

Evolutia sistemelor automate


Ponderea

Control
analogic

Control direct
prin calculator

Control
ierarhic

Control
distribuit

Control
mecanic

1900

1960

1975

1990

Figura 1.1 Evoluia tehnologiilor utilizate n sistemele de control

2008
8

Utilizarea componentelor digitale si a sistemelor


de calcul in automatica
Avantaje
precizie mai ridicat n calculul funciei de reglaj
posibilitatea implementrii unor procedee complexe
de reglaj, cu un comportament adaptiv
o mai mare imunitate la zgomote, n special datorit
caracteristicilor semnalelor digitale
posibilitatea stocrii i transmiterii la distan a
informaiilor
modificarea funciei de reglaj se poate face prin
program, fr s implice modificri ale schemei fizice
(hardware)
9

Utilizarea componentelor digitale si a sistemelor


de calcul in automatica
Avantaje:

schemele locale de automatizare pot fi integrate uor


ntr-un sistem ierarhizat de control
precizia este influenat ntr-o mai mica msur de
precizia componentelor, de variaiile condiiilor de
mediu (temperatura, umiditate) sau de variaiile
tensiunii de alimentare
repetabilitatea n timp a procedeelor de prelucrare
(mbtrnirea componentelor are o influen minor)
prin program pot fi implementate scheme de
autocalibrare i de detectare automata a defectelor
posibilitatea realizrii unor interfee utilizator
prietenoase, sugestive i specializate pentru diferite
tipuri de utilizator
10

Dezavantaje:
erori introduse prin digitizarea semnalelor de intrare

i ieire;

semnalele sunt eantionate n timp i


Semnalele sunt cuantizate ca domeniu de valuri,

un cost mai ridicat pentru schemele simple de reglaj


schema de reglaj este "ascuns" n program i este

mai puin vizibil pentru utilizator


limitri de vitez, n special n prelucrarea unor
semnale de frecven mare:

Teorema lui Shannon

11

Concepte de baza
Procesul = o transformare a unui sistem, indicat prin

modificarea unor mrimi de proces (ex.: modificarea


temperaturii, a presiunii, a poziiei, etc.).
Proces industrial = ansamblul transformrilor realizate ntro instalaie tehnologic, ce au ca scop producerea unor
materiale, echipamente sau servicii.
Parametrii de proces = mrimi fizice care caracterizeaz
un proces.

Parametrii de intrare: mrimi fizice msurabile, exterioare

procesului, care influeneaz evoluia acestuia.


Parametri de stare: nglobeaz informaia referitoare la
evoluia anterioar a procesului
Parametri de ieire: mrimi a cror evoluie dorim s o
controlm

12

Concepte
Perturbaiile sau zgomotele = mrimi fizice care

influeneaz evoluia unui proces, dar a cror mrime


i evoluie n timp este necunoscut i/sau
necontrolat.

zgomote electromagnetice,
variaii ale parametrilor de mediu (temperatur,
presiune, umiditate, etc.),
variaii ale surselor de alimentare,

variaii ale calitii materiilor prime

13

Concepte
Funcia de transformare sau de transfer a unui

proces = expresia dependenei dintre parametrii de ieire

(vectorul de ieire), parametrii de stare (vectorul de stare) i


parametrii de intrare (vectorul de intrare) ai unui proces.

rezultat al unei ecuatii integro-diferentiale


modeleaza analitic comportamentul unui proces
Functie liniara
Functie neliniara

14

Concepte
Reglaj automat = un ansamblu de operaii efectuate n

bucl nchis sau deschis, cu scopul de a stabili o dependen,


pe baza unei legi prestabilite, ntre parametrii de proces

Funcia de reglaj = definete modul de generare a

comenzilor (parametri de intrare pentru proces) pe baza


mrimilor msurate (parametri de ieire pentru proces) i a
valorilor prescrise
Obiective:
meninerea unei mrimi de proces la o valoare
prestabilit,
minimizarea abaterilor,
imprimarea unei anumite evoluii n timp pentru un
parametru de proces
15

Concepte
Semnal = mrime purttoare a unei informaii

Prin semnale se asigura conexiunea intre sistemul


controlat si cel de control
Clasificare dupa natura semnalelor:

semnale analogice care au un domeniu continuu de


valori
semnale digitale care au un numr finit de valori
discrete; de cele mai multe ori se folosesc semnale care au
dou valori distincte (codificate cu 0 i 1) i care reprezint
dou stri diferite ale unui element de proces (ex.:
nchis/deschis, valid/invalid, pornit/oprit, etc.)

Clasificare dupa comportamentul in timp:

semnale continue au variaie continu n timp


semnale discrete (eantionate) au variaie discret n
timp, adic funciile ce le reprezint au valori definite doar la
anumite momente de timp
16

Concepte
Sistem de control = ansamblu construit cu scopul de a

permite urmrirea i modificarea evoluiei unui proces pe baza


unei legi prestabilite
Sistem de control
Parametrii

Comenzi

Materii prime i msurai


energie

Proces tehnologic

Produse i energie

Perturbaii
Mediu
Figura 2.1 Schema de principiu a unui sistem automat de
control

17

Concepte
Sistem digital de control (eng. DCS- Digital
Control System) = un sistem de control care
utilizeaz tehnici i componente digitale pentru
control (ex.: circuite logice, automate de stare,
memorii, programe, etc.).
Functiile unui calculator:

urmrire i vizualizare a parametrilor de proces,


de stocare a datelor culese,
transmitere la distan a informaiilor sau
Controlul direct al procesului.
18

Concepte
Sistem de
S - senzor
calcul
Interfee de proces EE - element de
execuie

....

....

EE

EE

Proces controlat
Figura 2.2 Exemplu de sistem de control prin
calculator

19

Concepte
Sistemele cu control digital direct (eng.

DDC Direct Digital Control) = sisteme de


control la care evoluia procesului este
controlat nemijlocit de un sistem digital, fr
intervenia direct a operatorului uman

20

Calculator central
LAN

Calculator de

Calculator de

Calculator de

proces

proces

proces

AP

EE

EE

Reele
industriale
S

EE

EE

Proces controlat
Figura 2.3 Schema unui sistem ierarhic de control

21

Clasificarea aplicaiilor de control


funcie de modul de operare:

control pe baz de logic binar


control secvenial
control n bucl nchis
funcie de numrul de procesoare implicate i modul de
organizare a acestora:
control uniprocesor
control centralizat multiprocesor
control ierarhic
control distribuit
funcie de obiectivul urmrit:
urmrire i nregistrare evenimente sau parametri de proces
reglaj local
controlul i coordonarea micrii
22
control optimal

Tipuri de control
Controlul binar = semnalul de comand generat de sistemul de

control se exprim sub forma unei expresii logice n care


termenii sunt parametrii procesului.
Controlul secvenial = generarea unei secvene de comenzi
care determin o anumit evoluie n timp a procesului controlat
Control n bucl nchis =urmareste meninerea unui
parametru de proces la o valoare predefinit (reactie inversa
feed-back)
VP

+
VM

Regulator

EE

Proces
controlat

S
Figura 2.4 Schema de principiu a unei bucle de reglaj

23

Tipuri de control
Urmrire, vizualizare i stocare datelor - aplicaii

de tip SCADA (Supervisory Control and Data


Aquisition)
Reglajul local are ca obiectiv meninerea unui
parametru de proces la o valoare prestabilit
Controlul i coordonarea micrii pentru masini
cu comanda numerica si roboti industriali
Controlul optimal se aplic pe un nivel superior al
unei scheme ierarhice de control i are ca obiectiv
sincronizarea celulelor autonome de fabricaie n
vederea optimizrii unor parametri de performan ai
procesului de fabricaie (cost minim, producie
maxim, productivitate maxim, pierderi tehnologice
minime
24

Probleme specifice de utilizare a


sistemelor de calcul in automatica

timpul
fiabilitatea ridicat i tolerana la defecte
comportament reactiv
lucreaz n medii cu puternice zgomote
electromagnetice i cu variaii mari ale parametrilor
de mediu
funcionare continu, 24 de ore din 24
execuie concurent
sisteme dedicate
performane de calcul i posibiliti de stocare limitate
calitatea personalului de deservire i ntreinere
25

Informatica industriala
Prelucrarea digitala a semnalelor
Notiuni introductive,
Transforata Fourier si Laplace

Procesarea semnalelor
Obiective:
extragerea din semnal a unor componente considerate relevante
pentru problema studiat (ex.: filtrare),
transformarea semnalului pe baza unei anumite reguli
(amplificare/atenuare, ntrziere, etc.).
Domenii:
Analiza semnalelor - domeniul care se ocup de descompunerea
semnalelor complexe n semnale elementare

Un semnal complex se descrie ca o suma (ponderata) de semnale


simple; (ponderea=amplitudinea semnalului simplu)

Sinteza semnalelor - generarea unor semnale complexe, cu


anumite proprieti date, care se obin prin combinarea unor
semnale elementare.

Ex: modulatoare, multiplexare, generatoare de semnal, etc.

Semnale
Def.: semnal - o mrime fizic purttoare a unei informaii
Clasificare:

Din punct de vedere al predictibilitii, semnalele pot fi:

Din punct de vedere al evoluiei n timp semnalele pot fi:

deterministe, dac evoluia lor este previzibil i se pot descrie


prin funcii de timp (ex.: x(t) = A sin(t+))
aleatoare, dac au o evoluie imprevizibil sau mult prea
complex pentru a putea fi exprimat printr-o expresie
matematic (ex.: zgomot)
continue, dac sunt descrise prin funcii continue de timp
discrete, dac au valori definite doar la anumite momente de
timp

Din punct de vedere al amplitudinii semnalele pot fi :

continue, dac domeniul de variaie al amplitudinii este un


interval continuu
cuantizate, dac amplitudinea poate lua un numr finit de
valori

Semnale
Semnale analogice - semnalele continue n timp i ca domeniu de

valori
Se studiaza in teoria clasica a semnalelor (integrale/derivate
continue, transformata Fourier, Laplace, etc.)
Semnale digitale semnale discrete din punct de vedere al evoluiei n
timp i cuantizate ca domeniu de valori sunt denumite
Se studiaza prin teoria semnalelor digitale sau discrete (sume
integrale, transformata in Z, etc.)
timp
amplitudine
Continuu

Continuu

Discret
x(nT)

x(t)
t

t
x(nT)

x(t)
Cuantizat
t

Sisteme liniare
Sisteme descrise prin ecuatii integro-diferentiale liniare
Sisteme la care este valabil principiul suprapunerii efectelor:
Efectul unui semnal complex asupra unui sistem este egal cu suma
efectelor produse de semnalele simple ce compun semnalul
complex
Efectul produs de un sistem liniar asupra unui semnal complex de
intrare este egal cu suma efectelor produse asupra componentelor
semnalului
Sisteme reale:

Neliniare in ansamblu
Linearizabile pe portiuni
Cauze de neliniaritate:

Efect de saturatie (la valori prea mari)


Legea de variatie a sistemului este neliniara prin natura
fenomenelor incorporate
Transformari de stare (ex: fierbere, rupere, etc.)

Exemple de semnale
(in domeniul continuu)
Semnal sinusoidal

x(t) = A sin(t+) = A sin (2f*t + ) = A sin (2/T * t + )


unde: A amplitudinea semnalului
pulsaia
faza iniial a semnalului
f frecvena semnalului
x(t)
T perioada
A
t timpul

Exemple de semnale
Semnal de tip treapt unitar
0 pentru t < 0
(t) =

(t)

1 pentru t > 0

Semnal ramp
0, pentru t <0
x(t) =
a*t,

pentru t 0

Vsat
tg = a

Exemple de semnale

Semnal de tip impuls aperiodic


0 pentru t < 0

(t) =

1 pentru 0 < t < t


0 pentru t > t

t
t

x(t) = ak (t-kT)

a1

k=0

t = T

a0

a2
a3
t

Exemple de semnale
Impulsuri periodice
1, pentru t (kT, kT+ t), k = 0,
x(t) =
0, n rest

Semnal de tip Dirac

0
pentru t < 0
(t) = lim 1/ t pentru 0 t t
t0
0
pentru t > t

t
t

1/ t

Un semnal discret se exprim ca o sum ponderat de impulsuri


Dirac.:
N

x(t) = ak (t-kT)
k=0

Semnale in domeniul discret


Semnal discretizat in timp: secventa de valori ale semnalului la

momente kT (T- perioada de esantionare a semnalului)


Exemple:
a. Semnal sinusoidal discret
x(kT) = A sin(*kT+)
b. Semnal treapt unitar n domeniul discret
(kT) =

0, pentru k < 0
1, pentru k 0

c. Impuls Dirac discret


(kT) =

1, pentru k = 0
0, pentru k 0

Analiza semnalelor
Aproximarea semnalelor
Un anumit semnal x(t) se poate descompune ntr-un
numr finit sau infinit de funcii elementare

x(t) = an* fn(t)


n=0

unde:

an ponderea funciei fn (valoare constant)


fn(t) set predefinit de funcii elementare
N numrul maxim de funcii elementare necesare pentru
exprimarea funciei x(t)

Set ortogonal de semnale elementare


(simple)
Relatia de ortogonalitate intre functii (semnale)

elementare
t0+T

fm(t)*fn(t) dt=
t0
unde:

C2 dac m = n
0 dac n m

fm i fn - dou funcii elementare


C norma (mrimea) funciei elementare
T intervalul de ortogonalitate
t0 momentul considerat pentru calcul

Un set de funcii elementare este ortogonal dac se


respect proprietatea de ortogonalitate pentru oricare
dou perechi de funcii

Aproximarea unui semnal x(t) prin functii


elementare ortogonale
Un set de funcii elementare este ortogonal

dac se respect proprietatea de


ortogonalitate pentru oricare dou perechi de
funcii
t0+T
t0+T N

x(t)*fm(t) dt =
( an* fn(t))*fm(t) dt =
n=0
t0
t0
t0+T
= an ( fn(t)*fm(t)dt) = am* C2 ,
n=0
t0
N

am = 1/C2

t0+T

x(t)*fm(t) dt

t0

de unde rezult

Componenta spectrala a unui semnal


complex
a0, a1, an amplitudinile componentelor

spectrale ale semnalului


a1
a0
a2
a3
a4

a5
n

Transformata Fourier discret


Set ortogonal de semnale trigonometrice:

1/2 , cos(n t), sin(n t),

Se verific relaiile de ortogonalitate:

t0+T
cos (m t)*cos (n t) dt =
t0
t0+T
cos (m t)*sin (n t) dt = 0
t0

n = 0 .. N, =2/T

T/2, pentru n = m
0, pentru n m

Analiza Fourier a unui semnal


exprimarea semnalului ca o sum ponderat de semnale

sinusoidale de forma:

n=1

n=1

x(t) = C0 + Cn cos(n t) + Sn sin(n t)


t0+T
Cn = 2/T x(t)*cos (n t) dt
t0
t0+T
Sn = 2/T x(t)*sin (n t) dt
t0
t0+T
C0 =2/T x(t) dt
t0

Transformata Fourier discret a unui semnal


periodic x(t), de perioad T
forma trigonometric a transformatei Fourier discrete

F(t) = C0 + Cn cos(n t) + Sn sin(n t)


n=1

n=1

F(t)=x(t)

x(t)

F(t)

x(t) - semnal periodic

x(t) semnal aperiodic

Forma armonic a transformatei


Fourier discrete
Perechile de termeni Sn sin(n t) i Cn cos (n t) se pot exprima

printr-o singur funcie de forma


An cos (n t + n) unde:
An2 = Cn2 +Sn2 - reprezint ptratul amplitudinii armonicii de
rang n, iar
n = - arctg Sn/Cn - reprezint defazajul armonicii de rang n

F(t) = A0 + An cos(n t + n)
n=1

unde:

cos(t + 1) este componenta fundamental de


frecven f
cos(nt + n) este armonica de rang n i frecven n*f
n este faza (unghiul de defazaj) al armonicii n
An amplitudinea armonicii de rang n

Forma complex a transformatei Fourier


discrete

n expresia de mai sus, cos(n t + n) se poate considera ca parte real a


numrului complex e j(n t + n) (de reamintit forma trigonometric a unui numr
complex e j = cos +jsin). Astfel termenul n din sum devine:
An cos(n t + n) = Re [An e j(n t + n)] = Re [Anc e j(n t) ]
unde: Anc = An * e j(n) este amplitudinea complex a armonicii n

F(t) = A0 + Re Anc e

j(n t)

n=1

F(t) = 1/2 Anc ej(n t)


-

Exemple de transformate Fourier


pentru semnale simple
pentru semnal constant:

x(t) = A
t
- transformata Fourier are numai componenta constant
C0 = A, Cn=0, Sn=0, pt, n=1..
pentru semnal sinusoidal:

x(t) = A sin (0t)


t
- transformata Fourier are numai componenta
fundamental de pulsaie 0t
C0 = 0, Cn=0, S1=A, Sn=0, pt, n=2 ..
0

Exemple de transformate Fourier


pentru semnale simple
semnal dreptunghiular:
A pentru t [2kT, (2k+1)T)
x(t) =
-A pentru t [ (2k+1)T, (2k+2)T)
+

x(t) = 2A/ 1/(2k+1) * sin((2k+1) t)


k=0

- transformata Fourier conine un numr infinit de


funcii sinus; amplitudinea sinusurilor scade
asimptotic la 0, n raport cu pulsaia

Sn
S2k+1 =2A/(2k+1)

C0 = 0, Cn=0, S2k=0, S2k+1=2A/(2k+1)


- O aproximare buna a semnalului dreptunghiular se
poate face cu primele 3 componente spectrale

2 3 4 5

Transformata Fourier pentru semnale


aperiodice (de tip impuls)
Impuls semnal aperiodic de durata limitata

Exemple de semnale de tip impuls:


semnal dreptunghiular singular
impuls Dirac singular
o semiperioad a unui semnal sinusoidal
Perioada semnalului T tinde la infinit
Pulsatia tinde la 0 => distanta dintre componentele spectrale este
infinitezimal de mica
In transformata Fourier coeficientii Anc devin o funcie continu de
variabil j
Integrala care calculeaza coeficientii=>transformata Fourier continua:

X(j) = x(t) * e- jt dt
-

Transformata Fourier invers permite generarea (reconstruirea) unui semnal pe


baza distribuiei sale spectrale

x(t) = 1/2 X(j) * e- jt d


-

Proprietatile Transformatei Fourier


Teorema ntrzierii

F(x(t-t0)) = e-jto X(j)


Teorema derivrii
F( dx(t)/dt) ) = j X(j)
Teorema integrrii
F( x(t)dt) ) = 1/j * X(j)
Teorema convoluiei
Convoluia a dou funcii x(t) i y(t) se definete n felul urmtor:

x(t)y(t) = x()*y(t - ) d
-
Convoluia se utilizeaz frecvent pentru evaluarea efectului produs
de un sistem liniar asupra unui semnal complex.

F [ ( x()*y(t - ) d ] = X(j) *Y(j)


-

Transformata Laplace
s-a introdus pentru acele funcii x(t) pentru care transformata

Fourier continu este infinit, adic nedefinit


Solutie:
La funcia x(t) se ataeaz expresia e -ct (c constant)
funcia obinut, n mod uzual, tinde asimptotic la 0 ceea ce
nseamn c este integrabil.

F[ x(t)* e-ct ] = x(t) e-ct e-jt dt = x(t) e(-c-j)t dt

Cu notatia s= c+j se obtine Transformata Laplace

L[ x(t) ] = x(t) e-st dt = X(s)

Daca x(t)=0 pentru t<=0 se poate scrie transformata Laplace


unilaterala

L[ x(t) ] = x(t) e-st dt = X(s)


0

Transformata Laplace
util pentru exprimarea ntr-o form relativ

simpl a funciei de transformare a unui


sistem liniar
ecuatii integro-diferentiale (din domeniul timp)
sunt transformate in cat de polinoame in s
(in domeniul frecventelor complexe)
Transformata Laplace inversa:
c+j

L-1[ X(s) ] = 1/2j X(s) est ds


c-j

Proprietati ale transformatei Laplace


Teorema ntrzierii:
L[x(t-t0)] = e-st0 (X(s)
Teorema derivatei
L[ dnx(t)/dnt] = snX(s) sn-1 x(0-) - sn-2 x(0-) - sn-3 x(0-) ...
unde: x(0-) valoarea semnalului nainte de momentul t=0
x(0-) valoarea derivatei semnalului nainte de momentul t=0
Dac se consider c semnalul x(t) este 0 nainte de momentul t=0 atunci din
expresia de mai sus rmne doar primul termen. n consecin efectul de
derivare din domeniul timp se traduce prin multiplicarea cu s n domeniul
Laplace.

Teorema integrrii
t
L[ x(t) dt ] = 1/s *X(s)
0

Efectul de integrare din domeniul timp se traduce prin divizarea cu s n domeniul


Laplace.

Proprietati ale transformatei Laplace


Teorema convoluiei

Transformata convoluiei este egal cu produsul transformatelor celor


dou funcii.

L[ x()*y(t- ) dt ] = X(s)*Y(s)
-

Teorema valorii iniiale

Valoarea la momentul t=0 a semnalului x(t) se poate calcula dac se


cunoate expresia transformatei sale Laplace.
x(0+) = lim s X(s)
s->

Teorema valorii finale


x() = lim s X(s)
s->0

Exemplu de analiz n domeniul Laplace


Filtru trece jos - Analiza in domeniul timp
I

ue = ui R*i
q = ue*C
i = dq/dt

ui

ue = ui RC due/dt

R
C ue

- ecuaia diferenial a circuitului

Pentru un semnal de intrare de tip treapt soluia ecuaiei este de

forma:

ue(t) = ui0 (1- e-t/RC) ,

unde ui0 este valoarea constant a semnalului de intrare

funcia de transfer a circuitului se obine prin derivarea rspunsului la

un semnal de tip treapt unitar (ui0 = 1).

f(t) = due(t)/dt = (1/RC) e-t/RC

Rspunsul circuitului la un semnal de intrare oarecare se obine prin

convoluia dintre funcia de transfer a circuitului i semnalul de intrare.


Dac semnalul de intrare este diferit de zero doar din momentul t=0
atunci integrala de convoluie se calculeaz din momentul 0 i pn la
momentul t.

t
ue(t) = (1/RC) e -/RC *ui(t-) d
0

Exemplu de analiz n domeniul Laplace


Filtru trece jos - Analiza in domeniul Laplace
din ecuatia diferentiala a sistemului:

ue = ui RC due/dt

- ecuaia diferenial a circuitului

Prin aplicarea transformatei Laplace asupra ecuaiei difereniale

se obine:
Ue(s) = Ui(s) - RC sUe(s)

Ue(s) = Ui(s)/(1+RCs)
Dac semnalul de intrare ui este de tip treapt unitar atunci
transformata Laplace a acestuia este Ui(s) = 1/s. Astfel
semnalul de ieire va avea expresia:
Ue(s) = 1/s * 1/(1+RCs) = 1/[s(1+RCs)]
n formula de mai sus 1/(1+RCs) reprezint funcia de
transformare a circuitului, exprimat n domeniul Laplace. Prin
aplicarea transformatei Laplace inverse se obine rspunsul
circuitului la un semnal treapt unitar.

Informatica industriala

Prelucrarea digitala a semnalelor


Transformata in Z, filtre numerice

Transformata in Z
Scopul:

exprimarea analitica a semnalelor discrete


construirea unui semnal discret care sa aproximeze cat mai
bine un semnal continuu data
efectul semnalului esantionat xe(t) sa fie acelasi cu semnalul
original; ex: integrala celor 2 semnale sa fie aceeasi
se foloseste o suma ponderata de functii Dirac

xe(t) = x(t) *(t-kT)


k=-

x(t) dt xe(t) dt

x(t)

xe(t)

t
2

Definirea transformatei in Z
Transformata Laplace a semnalului eantionat este:

L[xe(t)] = x(t) *(t-kT) e-st dt = x(kT) e-skT


- k=-

k=-

Din teorema ntrzierii ( L(x(t-t0)) = X(s)* e-st0) rezult c e-skT

are efect de ntrziere asupra valorilor x(kT) cu k perioade.


Se face schimbarea de variabil z = esT i se obine formula
transformatei n Z:

Z[x(t)] = x(kT) z -k = X(z)

- transformata n Z bilateral

k=-

Z[x(t)] = x(kT) z -k = X(z)


k=0

- transformata n Z unilateral
(pentru sisteme cauzale)
3

Definirea transformatei in Z
Termenul z-1 are un efect de ntrziere cu o perioad de

eantionare
z-k efect de intarziere de kT perioade
Transformata n Z se obine prin nsumarea eantioanelor
semnalului x(t) ntrziate cu un numr de perioade egal cu
rangul fiecrui eantion
Transformata n Z a unui semnal indic evoluia n timp a
semnalului la momente discrete de timp.
Transformata n Z invers
permite refacerea semnalului eantionat din transformata n
Z a semnalului.
x(nT) = L-1[Z(z)] = 1/(2j) * X(z) zn-1 dz
unde este un contur inchis in jurul originii (in spatiul
numerelor complexe)
4

Exprimarea functiei de transfer a unui


sistem prin transformata in Z
Exemplu: filtru de rang 3

y(kT) = a0x(kT) + a1x((k-1)T) + a2x((k-2)T)


Aplicnd transformata n Z se obine:
Y(z) = X(Z)( a0 + a1z 1 + a2z 2)
Funcia de transfer a filtrului exprimat n domeniul Z i notat
cu H(z) se obine ca un raport ntre transformata semnalului de
ieire i transformata semnalului de intrare.
H(z) = Y(z)/X(z) = a0 + a1z 1 + a2z 2
x(k)
a0

z-1
*

a1

x(k-1)
*
+

x(k-2)

z-1
a2

*
+

y(k)

Proprietati ale transformatei in Z


Teorema de linearitate

Z(a*x(t) +b*y(t)) = a*Z(x(t)) +b*Z(y(t))


b. Teorema translaiei

Z( x(t+kT) = zk Z(x(t))
Z( x(t-kT) = z-k Z(x(t))
c. Teorema derivatei

Z(dx(t)/dt) = (1- z-1) Z(x(t)

Functia de transfer a unui sistem


expresia analitic a modului n care un sistem transform un

semnal de intrare ntr-un semnal de ieire (efectul produs de un


sistem asupra unui semnal de intrare)
x(t)

Sistem

y(t)

Determinarea functiei de transfer:

pe cale analitica prin solutionarea unor ecuatii diferentiale


ce decurg din legile fizico-chimice ce guverneaza sistemul

metoda dificila in cazul sistemelor complexe

pe cale experimentala determinarea raspunsului sistemului


la un semnal cunoscut

metoda aproximativa, dar mai practica

Functia de transfer pentru un sistem liniar


sistem liniar este valabil principiul superpozitiei efectelor:

iesirea y la momentul t0 este suma efectelor produse de


valorile intrarii x la momentul t0 si la toate momentele
anterioare acestui moment
Se definete o funcie h(t) care indic ponderea cu care o
intrare x(t0 - t) influeneaz ieirea y(t0)
iesirea y(t) se calculeaza ca o integrala de convolutie intre
semnalul de intrare x(t) si functia h(t)

y(t) = x() * h(t - ) d


-

h(t) functia de transformare a sistemului


8

Functia de transfer pentru un sistem liniar


Observatii:
Pentru sistemele cauzale:
h(t) are valoarea zero pentru t0, adic semnalul
de ieire depinde numai de valorile intrrii la momente
anterioare momentului considerat; integrala se
calculeaza in intervalul (- , t);
daca intrarea este 0 inainte de momentul t=0 atunci
integrala se calculeaza pe intervalul (0, t)
n prelucrrile de semnale efectuate n regim off-line,
funcia h(t) poate avea valori diferite de zero i pentru
t >0.
De exemplu la un filtru de mediere valoarea
semnalului de ieire pentru momentul t se calculeaz
pe baza valorilor de intrare din vecintatea
momentului t, adic pentru t (t- t, t+ t).
9

Calculul semnalului de iesire pentru


sisteme discrete
integrala de convolutie devine suma de

convolutie:

y(kT) = x(jT)*h(kT-jT)
j=-
uzual h(kT) are valori diferite de zero pentru un numar finit de
termeni in jurul originii (k=0)
explicatia intuitiva: iesirea y(kT) depinde doar de valori ale
intrarii in jurul momentului kT considerat
rezulta un timp de calcul finit al sumei de convolutie

10

Exprimarea iesirii unui sistem liniar cu


ajutorul transformatelor
Cu ajutorul transformatei Fourier

Y(j) = X(j) * H(j)


- n domeniul frecvenelor reale
Cu ajutorul transformatei Laplace
Y(s) = X(s) * H(s)
- n domeniul frecvenelor complexe

Cu ajutorul transformatei in Z

Y(z-1) = X(z-1) * H(z-1)


- n domeniul discret

h(t), H(j), H(s) si H(z-1) functia de transformare a sistemului in

diferite exprimari
Compunerea functiilor de transfer:
prin produsul dintre functiile de transformare ale
componentelor
X(s)

H(s)

G(s)

Y(s)=X(s)*H(s)*G(s)
11

Determinarea functiei de transfer a


sistemului pe cale experimentala
sistemul se considera o cutie neagra
se determina functia de transfer a sistemului pe baza

raspunsului la un semnal de intrare cunoscut semnalul Dirac


(t)

y(t) = () * h(t - ) d = h(t)


-

iesirea este tocmai functia de transfer a sistemului


implementare practica dificila nu exista impuls Dirac
(amplitudine infinita pe o durata ce tinde la 0)
metoda practica: se foloseste integrala semnalului dirac
semnalul treapta unitara

t
y(t) = ()h(t-) d = h(u) du
-
0

unde u=t-

iesirea este integrala functiei de transfer; prin derivare se


obtine functia dorita

12

Determinarea functiei de transfer pentru


sisteme discrete
se foloseste transformata in Z

se aplica transformata in z pe integrala de convolutie


Z(y(t)) = Z( () * h(t - ) d)
Z(y(t)) = Z((t))*Z(h(t))

y(kT)*z-k

k=0

z-k

k=0

h(kT)* z-k
k=0

Se egaleaz coeficienii termenilor z-k i se obine:


y(0) = h(0)
y(T) = h(0) +h(T)
...........
y(kT) = h(0) + h(T) + ......+ h(kT)

de unde rezult:

h(kT) = y(kT) y((k-1)T)

dac la intrare s-a aplicat un semnal treapt unitar, atunci


valoarea funciei de transfer la momentul kT se obine ca o
diferen ntre ieirea sistemului la momentul kT i ieirea la
13
momentul (k-1)T ... EXTREM DE IMPORTANT

Utilizarea functiei de transfer


calcularea iesirii unui sistem pentru un

semnal de intrare oarecare

prin convolutie:
k

y(kT) = x(jT) *h(jT-kT)


j=0

Concluzie: dac se cunosc valorile eantionate ale

semnalului de intrare i rspunsul sistemului la


treapt unitar, atunci se poate estima valoarea
semnalului de ieire, la anumite momente discrete de
timp
14

Filtre numerice
Un filtru este un dispozitiv care transform un semnal de

intrare ntr-un semnal de ieire pe baza anumitor condiii


sau restricii
exemple de conditii:

semnalul de iesire sa contina numai frecvente joase, numai


frecvente inalte sau care se incadreaza intr-o plaja de valori
conditii impuse fazei de iesire a semnalului
conditii impuse asupra amplitudinii (atenuare, amplificare)

problema: determinarea functiei de transfer a filtrului


care satisface anumite conditii impuse
tipuri de filtre:

dupa modul de implementare:

analogice
digitale (numerice)
filtre cu raspuns finit (FIR finite response filter)
filtre cu raspuns infinit (IIR infinite response filter)

15

Tipuri de filtre
dupa plaja de filtrare:

filtre trece jos


filtre trece sus
filtre trece banda
filtru cu banda de rejectie

Ampl.

frecventa
Filtru trece jos
Ampl.

frecventa
Filtru trece sus
Ampl.

Ampl.

frecventa
Filtru rejectie banda

frecventa
Filtru trece banda

16

Filtre trece jos si trece sus


functia de transfer si raspunsul in frecventa
Graficul filtrului trece jos si
raspunsul generat in frecventa

filtrul trece sus se obtine din


functia de transfer in Z a filtrului
trece jos prin negarea tuturor
termenilor si adaugarea unei
unitati
ysus(kT)= x(kT) - yjos(kT)
ysus(kT)= x(kT) x(iT)h(iT-kT)
Hsus(z-1) = 1-Hjos(z-1)

Graficul filtrului trece sus si


raspunsul generat in frecventa

17

Filtre cu raspuns finit (FIR)


efectul produs de un impuls singular aplicat la intrarea filtrului,

dispare dup un numr finit de perioade de eantionare


iesirea depinde numai de un set de esantioane ale semnalului
de intrare
expresia semnalului filtrat:

y(kT) = x(iT) * h(kT-iT)


i=-

uzual funcia de transfer h(jT) are valori diferite de zero


numai pentru un numr finit de puncte aflate n jurul valorii 0

pentru sistemele cauzale ieirea de la un anumit moment


depinde numai de intrarea de la momentele anterioare,
inclusiv momentul considerat
18

Filtre cu raspuns finit (FIR)


daca sistemul este cauzal si semnalul de intrare

x(kT) = 0 pentru k<0, atunci formula filtrului devine:


k

y(kT) = x(iT) * h(kT-iT)


i=0

Exemplu de filtru trece jos de tip FIR


filtru de mediere:

y(kT) = (1/3)*x(kT) +(1/3)*x((k-1)T)+ (1/3)*x((k-2)T)


transformata in Z a iesirii:
1/3
Y(z-1) = X(z-1)[1/3(1+z-1+z-2)

se observa ca h(0)=h(1)=h(2)=1/3

transformata in Z a functiei de transfer a filtrului:


H(z) = Y(z)/X(z) = (1/3)*( 1+ z-1 + z-2)

H(z-1)

012345

19

Filtre cu raspuns finit (FIR)


Formula generala a functiei de transfer pentru un

filtru FIR:
n

H(z) = ai * z-i
i=0

implementarea unui filtru fir cu circuite de intarziere si de

sumare
x(k)
a0

z-1

a1

x(k-1)

*
+

z-1
a2

x(k-2)

*
+

z-1
..... an

x(k-n)

*
+

y(k)

20

Referinte
http://www.dspguide.com/pdfbook.htm

21

Informatica industriala

Prelucrarea digitala a semnalelor


Filtre numerice (cont)

Filtre cu raspuns infinit (IIR)


ieirea la un anumit moment depinde nu numai de semnalul de

intrare ci i de valorile anterioare ale semnalului de ieire


un anumit impuls (inclusiv zgomot) in anumite conditii se poate
propaga la infinit (de unde si numele filtrului)
formula iesirii pentru un filtru IIR:
k-1

i=0

i=0

y(kT) = bk-i*y(iT) + ak-i*x(iT)


Aplicnd transformata n Z asupra expresiei de mai sus se

obine:

Y(z) =

n
-i
bi*Y(z)*z + ai*X(z)*z-i
i=0
i=0

unde: m - indexul maxim al coeficienilor bi diferii de zero


n - indexul maxim al coeficienilor ai diferii de zero
2

Filtre cu raspuns infinit (IIR)


transformata in Z a unui filtru IIR:
n

H(z) = Y(z)/X(z) = ( ai*z-i)/( 1- bi*z-i)


i=0

i=0

Proprietati ale filtrelor IIR

pentru acelasi numar de termeni (rang) un filtru IIR are un


efect mai pregnant (calitativ mai bun) decat un filtru FIR
filtrele IIR sunt reactive sau cu reactie inversa (feed-back),
datorita termenilor ce contin esantioane ale iesirii
pentru anumite valori ale coeficienilor ai i bi filtrul IIR devine
instabil i are tendina de a oscila

Implementarea filtrelor IIR


forma canonica de implementare a filtrelor IIR
x(kT)

*b1

z-1
z-1

*bm

*a1
*a2

*b2
.......

y(kT)

z-1
*an

Sinteza filtrelor numerice


Problema: determinarea coeficienilor
funciei de transfer a unui filtru numeric,
astfel nct efectul produs de filtru s
corespund unor condiii prestabilite.

|H|

Parametri unui filtru:

banda de trecere intervalul de frecvene


panta
pentru care filtrul are efect de amplificare Atrecere
banda de blocare intervalul de frecvene
pentru care filtrul are efect de atenuare
frecvena de tiere frecvena care
desparte banda de trecere de banda de
banda de
banda de
atenuare
blocare
trecere
raportul de atenuare logaritmul
frecvena de
raportului dintre amplificarea n banda de
blocaj i amplificarea n banda de trecere

raport de atenuare = 20 lg (Ablocaj/Atrecere)


[decibeli]

Ablocaj

tiere
5

Sinteza filtrelor numerice


exista mai multe tehnici de sinteza, relativ complexe
Metoda 1

se bazeaza pe functia de transfer a filtrului analogic


echivalent, (exprimat in domeniul Laplace)
m

Ha(s) = Ak/(s+sk)
k=1

unde: sk sunt polii functiei de transfer

Din aceast expresie se deduce transformata n Z a filtrului


numeric:
m

H(z) = Ak/(1 eskT*z-1)


k=1

Sinteza filtrelor numerice


Metoda 2.

Se consider cunoscut rspunsul unui filtru analogic


echivalent la un semnal de tip impuls. Prin eantionarea
funciei rspuns se obin coeficienii transformatei n Z a
funciei de transfer.

y(t)
ai

H(z) = ai*z-i
t

Clasificarea filtrelor in functie de


implementare
filtre in domeniul timp
folosite pentru modelarea
formei semnalului: netezire,
eliminare valoare constanta,
formatare semnal
filtre in domeniul frecventa
folosite atunci cand informatia
este continuta in distributia
spectrala (amplitudine,
frecventa si faza);
scopul este separarea benzilor
de frecventa
filtre particulare/speciale
folosite atunci cand filtrele
obisnuite (trece sus, jos,
banda) nu ajuta

FIR

IIR

Domeniul
timp

Mediere

Un singur
pol

Domeniul
frecventa

Windowed
sinc

Cebyshev

Special

FIR
special

Proiectare
iterativa
8

Filtru de mediere
filtru care actioneaza bine in domeniul timp

elimina zgomotele
are comportament bun la un impuls treapta
filtrul are efect negativ in domeniul frecventelor: nu filtreaza o
banda de frecvente bine definita
filtre derivate (putin) mai bune in domeniul frecventelor:
Gaussian, Blackman sau mediere multipla
Implementare: prin convolutie

unde M numarul de puncte (termeni) din filtru


Filtrul poate fi si simetric in jurul punctului considerat (j=-M/2,
J=+M/2)
9

Filtru de mediere
Caracteristicile filtrului:

are un efect foarte bun de


filtrare a zgomotului alb, cu
pastrarea in limite
acceptabile a raspunsului la
treapta unitara;
paradoxal mult mai bun
decat alte filtre mai complexe
factorul de reducere a
zgomotului: radacina patrata
din numarul de puncte din
filtru (ex: 100 puncte reduce
zgomotul de 10 ori)
cu cat filtrul este mai mare
(mai multe puncte) panta
raspunsului la un semnal de
tip impuls devine mai oblica

Efectul unor filtre de


mediere asupra unui
impuls cu zgomot alb:
a semnal initial
b filtru cu 11 puncte
c filtru cu 51 de puncte
10

Raspunsul in frecventa al filtrului de mediere


Functia de transfer exprimata cu transformata Fourier:

Raspunsul in frecventa al
filtrului pentru numar
diferit de puncte de
mediere

11

Efectul aplicarii multiple a filtrului de mediere


Se aplica succesiv de mai multe ori un filtru de mediere de 7

puncte

a. forma filtrului la
numar variabil de
treceri
b. raspunsul in
frecventa
c. raspunsul la semnal
treapta
d. efectul de atenuare
in dB

12

Implementarea filtrului de mediere prin recurenta


exemplu de calculare a 2 iteratii ale unui filtru de 7 puncte

y [50] =x [47] + x [48] + x [49] + x [50] + x [51] + x [52] + x [53]


y [51] = x [48] + x [49] + x [50] + x [51] + x [52] + x [53] + x [54]

rezulta ca y [51] se poate calcula mai repede pe baza valorii anterior

calculate y [50]

y [51] = y [50] + x [54] - x [47]

rezulta formula de recurenta in care fiecare nou esantion se calculeaza

printr-o suma si o diferenta:

y [i ] = y [i -1] + x [i + p] - x [i - q]
unde: p=(M-1)/2 si q=p+1
formula arata ca iesirea curenta este egala cu iesirea anterioara
plus o diferenta (panta) calculata simetric fata de punctul
considerat
13

Filtru Windowed-sinc
pentru separarea benzilor

de frecventa
foarte stabile si cu
performante ridicate dar
necesita timp mai mare de
calcul
se cauta un filtru perfect:

amplificare 1 in banda
de trecere
amplificare 0 in banda
interzisa
cu trecere verticala la
frecventa de taiere

filtrul ideal este de forma

sin(x)/x functia sinc


14

Filtru Windowed-sinc
functia de transfer a filtrului sinc:

h(i) = sin(2fci)/i
unde fc este frecventa de taiere (cutoff frequency) si se exprima ca si o fractie
din frecventa de esantionare; fc (0 - 0,5), conform principiului de esantionare:
fmax<1/2fesantionare

functia tinde asimptotic la 0


din considerente practice (de calcul in timp finit)

se limiteaza filtrul printr-o fereastra (window):


dreptunghiulara
functie Hamming sau Blackman

15

Filtru Windowed-sinc
formula completa a filtrului cu fereastra Hamming:

partea sinc

Fereastra Hamming

unde M este dimensiunea ferestrei, iar K un factor de normalizare

M se determina cu relatia aproximativa:

M=4/(latimea benzii de tranzitie)

Calitatea filtrului in functie


de dimensiunea ferestrei

16

Filtru Windowed-sinc
filtrul nu are un comportament prea bun in domeniul timp, raspunsul la

un impuls treapta genereaza ripluri la tranzitia intre stari;


este insa recomandat pentru lucrul in domeniul frecventelor, cand se
stie ce frecvente trebuie eliminate
pentru a creste factorul de atenuare a benzii de blocare filtrul se poate
aplica de 2 sau mai multe ori,
se obtine o atenuare dubla (in decibeli), de exemplu de la -74dB
(cat are un filtru cu fereastra Blackman) la -148dB ceea ce
inseamna un raport atenuare/amplificare de 1 la 30 milioane
pentru a obtine un filtru trece sus se scade din semnalul initial semnalul
filtrat cu filtru trece jos avand aceeasi frecventa de taiere
un filtru trece banda este o combinatie intre filtru trece sus si filtru trece
jos
un filtru de rejectie banda se obtine prin scaderea din semnalul initial a
semnalului filtrat cu un filtru banda
Dezavantajul filtrului Windowed-sinc: necesita timp de calcul mare
(numar mare de termeni de calculat)
17

Referinte
http://www.dspguide.com/pdfbook.htm

18

Informatica industriala

Transformata fourier discreta (DFT) si


Transformata Fourier rapida (FFT)

Transformate Fourier
Obiectiv: descompunerea unui semnal

complex intr-o suma de semnale simple

semnale simple: set de semnale sinusoidale


pentru ca sunt ortogonale
nu isi schimba forma la trecerea printr-un sistem
liniar (se schimba amplitudinea si faza, dar
semnalul ramane sinusoidal si de aceeasi
frecventa)
Mai multe tipuri de transformate Fourier pentru diferite
tipuri de semnale:

Transformate Fourier
Mai multe tipuri de transformate Fourier pentru diferite

tipuri de semnale

Tip semnal

Forma senalului

Tip de transformata
Fourier

Semnal aperiodic
continuu

Transformata Fourier

Semnal periodic
continuu

Serii Fourier

Semnal aperiodic
discret

Transformata Fourier
de timp discreta

Semnal periodic
discret

Transformata Fourier
discreta (DFT)

Transformata Fourier Discreta


se aplica numai semnalelor discrete periodice

pentru ca are un numar finit de termeni


se poate calcula printr-un numar finit de pasi
semnalele digitale aperiodice pot fi transformate artificial in
semnale periodice
transformata Fourier discreta (DFT) transforma un set de N
esantioane de intrare (din domeniul timp) in 2 seturi de N/2+1
esantioane de iesire din domeniul frecventa

un set de amplitudini pentru functii cosinus partea reala


ReX[k], pentru functii ck[i] = cos (2ki/N) cos() esantionat

un set de amplitudin pentru functii sinus partea imaginara


ImX[k], pentru functii Sk[i] = sin (2ki/N) sin() esantionat
unde k=0 - N/2, iar i=0 (N-1)

Sinteza unui semnal pe baza coeficientilor


transformatei Fourier discrete:

unde

sunt valorile normalizate ale coeficientilor din


transformata Fourier discreta

Calcularea DFT
trei metode:

didactica, dar foarte lenta


prin convolutie (clasica)
transformata Fourier rapida FFT
Didactica:
folosind formula anterioara de sinteza, scriem N ecuatii cu N
necunoscute pentru cele N valori discrete ale lui x[i]

teoretic ar fi (N/2+1) + (N/2+1) = N+2 coeficienti de determinat,


dar se poate arata ca ImX[0]=0 si ImX[N/2]=0, asa ca raman N
necunoscute ReX[k] si ImX[k]

se rezolva setul de N ecuatii cu N necunoscute (ex. cu


metoda eliminarii a lui Gauss)
metoda prea lenta, nu se foloseste practic, dar arata teoretic
de ce se pot determina coeficientii Fourier din N esantioane
ale intrarii

Calcularea DFT prin convolutie


se bazeaza pe ortogonalitatea functiilor elementare sinusoidale

daca un semnal de intrare x[i] contine o sinusoida de o


anumita frecventa atunci corelatia lui x[i] cu acea functie este
diferita de zero (este amplitudinea acelei componente in x);
daca semnalul nu contine acea componenta convolutia lui
x[i] cu acea sinusoida este 0

formula de calcul a coeficientilor:

Reprezentarea polara a transformatei


Fourier discrete
reprezentarea grafica a ReX[k] si ImX[k] nu este relevanta

pentru ochiul uman


perechile sin si cos de aceeasi frecventa se transforma intr-o
functie cos dupa formula:
A cos(x+)= C cos(x) + S sin (x)
pentru fiecare frecventa rezulta o magnitudine A
(amplitudine) si o faza , care se calculeaza cu:
A[k] = ReX[k]2 + ImX[k]2
[k] = arctan(ImX[k]/ReX[k]))
A[k]
ImX[k]
[k]
ReX[k]

Reprezentarea polara a transformatei


Fourier discrete

Reprezentarea frecventei in diagramele DFT


(reprezentarea axei x)
patru posibilitati de reprezentare a frecventei:

ca esantioane ale transformatei, de la 0 la N/2

ca o fractie din frecventa de esantionare, cu interval de variatie (00,5)

teorema lui Shannon limiteaza frecventa semnalului de intrare la


jumatate din frecventa de esantionare
trecerea din prima reprezentare in a doua se face prin divizare cu N

similar cu cazul 2 dar multiplicat cu 2

N este numarul de esantioane ale intrarii


de exemplu pentru N=128, se obtin 64 de esantioane ale transformatei
programatorii prefera aceasta metoda, desi nu este prea sugestiva
privind frecventele reale prezente in semnal

se obtine o variatie in radiani, intre 0 si

ca o secventa de frecvente reale

valorile din cazul 2 de reprezentare se inmultesc cu frecventa de


esantionare
de exemplu daca frecventa de esantionare este 1000Hz atunci axa Ox
variaza intre 0 si 500 Hz

Reprezentarea unui semnal


in Domeniul timp si in Domeniul frecventa
Domeniul timp

Domeniul frecventa
Reprezentare
prin N/2
esantionane

a. semnalul esantionat in timp


b. partea reala a transformatei
(functii cos())
c. partea imaginara a
transformatei (functii sin())

Reprezentare
prin fractii ale
frecventei de
esantionare

Transformata Fourier Rapida (FFT)


observatii preliminarii:

o metoda de a calcula mult mai eficient DFT


timpul de calcul scade cu 2, 3 ordine de marime;
permite utilizarea transformatei Fourier ca metoda de analiza in
aplicatii de procesare a semnalelor on-line (in timp real)
complexitatea algoritmului de calcul al DFT prin convolutie este n2
;complexitatea FFT este n*lg n
explicarea bazelor matematice ale metodei FFT este mult mai
complexa decat forma algoritmului care rezulta
FFT este pentru Procesarea digitala a semnalelor ca si un
tranzistor pentru circuitele electronice: o componenta de baza;

dar nu trebuie sa intelegi structura complexa a tranzistorului ca sa-l


folosesti cu succes;
doar un mic numar de specialisti inteleg cu adevarat cum
functioneaza tranzistorul (ca si FFT-ul) dar foarte multi il folosesc

Metoda de calcul a FFT


Secventa de calcul:

pasul 1: un semnal de N puncte din domeniul


timp se descompune in N semnale de cate
un singur punct
pasul 2: se calculeaza distributiile spectrale
pentru cele N semnale de un punct
pasul 3: cele N spectre obtinute se
sintetizeaza intr-un singur spectru

Detalii privind calculul FFT


Pasul 1: Decompozitia semnalului avand N puncte in domeniul

timp
exemplu de descompunere pentru un semnal avand 16
puncte

Semnalul initial cu 16 puncte

2 semnale a cate 8 puncte

log2n
pasi

16 semnale a cate 1 punct

Detalii privind calculul FFT


Pasul 2: descompunerea spectrala a semnalului de

un punct

banal: spectrul este egal cu valoarea punctului


(demonstrat in teoria semnalelor)
deci nu se calculeaza nimic, valorile spectrale sunt
valorile punctelor din domeniul timp

Pasul 3: sinteza spectrelor fiecarui punct pentru a

obtine spectrul semnalului initial

sinteza se face in ordine inversa celei de


descompunere:
se combina cate 2 spectre de punct pentru a obtine
spectrul pentru 2 puncte, apoi spectrele de 2 puncte
cate 2 pentru a obtine spectre de cate 4 puncte
s.a.m.d. pana la obtinerea spectrului pentru semnalul
initial cu N puncte

Detalii privind calculul FFT


Pasul 3(continuare):

exemplu de combinare a 2
spectre de 4 puncte pentru
a obtine un spectru pentru
8 puncte
operatia de baza:
compozitia a 2 puncte in
alte 2 puncte

Spectrul pentru 4
puncte impare

Spectrul pentru 4
puncte pare

2 puncte de intrare

Spectrul de frecventa pentru 8 puncte


Unitate elementara de calcul de tip fluture (butterfly)
2 puncte de iesire

xS reprezinta multiplicarea cu o sinusoida

Detalii privind calculul FFT


Diagrama de executie a

programului

Semnal in domeniul timp


Decompozitia semnalului
de intrare

log2n ori
pentru fiecare sub-DFT

pentru fiecare butterfly

Antet
Antet

Calculul unei unitati


butterfly

Distributia spectrala
(semnal in domeniul frecventa)

Programul FFT scris in Fortran

Informatica industriala

Cursul 6 Controlul automat al


proceselor

Notiuni introductive
Sistemele de reglare automat (sistem

automat)

Definire: sistem ce realizeaz controlul unor parametri


fizici ai unui sistem pe baza unei legi sau funcii
predefinite, fr intervenia direct a omului
Obiective posibile:

meninerea unui parametru la o valoare constant sau ntrun interval dat (reglaj automat),
modificarea valorii unui parametru dup o lege de variaie
predefinit sau stabilit n timpul evoluiei procesului
(control secvenial)
corelarea unor parametri de proces n vederea minimizrii
unei funcii de cost (optimizare)

Clasificarea sistemelor de reglaj automat


dup modul de realizare a controlului
sisteme automate n bucl deschis
sisteme automate n bucl nchis
dup modul de variaie a valorii prescrise:
sisteme automate de stabilizare
sisteme automate de urmrire
dup viteza de evoluie a parametrilor (gradul de inerie al sistemului):
sisteme automate pentru procese lente
sisteme automate pentru procese rapide
dup numrul de parametri urmrii i reglai:
sisteme automate monovariabile (bucle simple de reglaj)
sisteme automate multivariabile
dup legea de variaie a parametrilor:
sisteme automate liniare
sisteme automate neliniare
dup natura semnalelor implicate
sisteme automate continue sau analogice semnalele sunt continue n timp
sisteme automate discrete sau discontinue semnalele sunt discretizate n timp
(semnale eantionate, impulsuri, semnale modulate sau codificate, etc.)

Schema unui sistem automat


monovariabil simplu in bucla inchisa
Elementele unei bucle de reglaj sunt:
procesul controlat instalaia tehnologic sau echipamentul a crui parametru se
controleaz
regulator dispozitiv de automatizare care genereaz o comand (c) pe baza
abaterii () dintre valoarea prescris (VP) i valoarea msurat (VM) a unui
parametru de proces (VE - valoare de ieire)
traductor dispozitiv care transform o mrime de proces ntr-un semnal electric
element de execuie dispozitiv care transform un semnal de comand ntr-o
aciune (m) de obicei de natur mecanic prin care se influeneaz evoluia
procesului

VP
+

Regulator

Elem. de
execuie

VM
Traductor

Proces controlat

VE

Componentele unui sistem de


reglare automat

Traductoare
dispozitive de automatizare utilizate pentru msurarea
parametrilor ai unui proces
componente:
element sensibil senzor
transforma o marime fizica intr-o marime masurabila (de obicei
de natura electrica)

adaptor de semnal:

amplificarea i filtrarea semnalului de intrare


eliminarea tensiunii continue reziduale (eng. offset)
compensarea comportamentului neliniar al senzorului
modularea i codificarea informaiei, etc.

Mrime fizic

Senzor

Adaptor de
semnal

Semnal
transmis

Traductoare
semnalul transmis de traductor:
semnal analogic:

semnale unificate (standard):

de tensiune: [0-5V]; [0-10V],[ -5 - +5V]


de curent: [2-10mA], [4-20mA]

semnal digital:

de stare: 0/1
in impulsuri:

cu frecventa variabila
cu latime de impuls variabila

mesaj digital (vezi retele industriale)

Traductoare inteligente
traductor clasic + microcontrolor
functii suplimentare:

afiarea local a valorii msurate


autocalibrarea dispozitivului de msurare
codificarea informaiei transmise
stocarea temporar a datelor
sintetizarea i filtrarea logic a datelor
msurate, etc.

Principalele caracteristici ale unui traductor


natura mrimii fizice msurate
foarte diversa: temperatura, presiune, nivel, deplasare,
forta/cuplu, umiditate, concentratie de gaz, etc.
funcia de transformare
relatia dintre mrimea fizica masurata si semnalul de
ieire:
liniara cazul ideal
neliniara cazul real (linearizabila pe portiuni):
in jurul valorii de nul
histerezis la urcare si coborare

gama de variaie admis a mrimii de intrare

valoare minima/maxima de masura


valoare minima/maxima absoluta (la care rezista)

Principalele caracteristici ale unui traductor


(cont.)
sensibilitatea de msurare
raportul dintre variatia semnalului de iesire si variatia
marimii de intrare
ex: la senzor de temperatura:
jonctiune semiconductoare: 2mV/grad Celsius
termocuplu: 200V/C

precizia de msurare i eroarea


eroare absoluta
eroare relativa: eroarea/valoarea nominala sau
eroarea/domeniul de masura
caracteristica dinamic:
comportamentul in timp al traductorului:
ex: timpul mort al traductorului
natura semnalului de ieire

Traductoare de temperatura
temperatura: cel mai important parametru de

proces
tipuri de traductoare de temperatura:

termocupluri
termorezistene
termometre manometrice
pirometre

Termocupluri
se obin prin alipirea ntr-un punct a dou metale diferite
in punctul de contact apare o jonctiune ce dirijeaza purtatorii de sarcina

intr-un singur sens


apare o tensiune electro-motoare ce depinde de natura metalelor si de
TEMPERATURA punctului de contact
unde:

e = e0 + k * T

e tensiunea electromotoare generat la o anumit temperatur


e0 tensiunea generat de jonciune la temperatura de 0C
T temperatura n C la care se afl jonciunea
k constanta termocuplului, indic variaia tensiunii electromotoare la o variaie de un grad a jonciunii

Tipuri de termocupluri
Simbolul
termocuplului

Perechea de metale
sau aliaje

Domeniul de msur

Platin 30% Rodiu (+)


Platin 6% Rodiu (-)

1370-1700 C

Tungsten 5% Reniu(+)
Tungsten 26% Reniu (-)

1650-2315 C

Crom (+)
Constantan (-)

95-900 C

Fier (+)
Constantan (-)

95-760 C

Crom (+)
Aluminiu (-)

95-1260 C

Platin 13% Rodiu (+)


Platin (-)

870-1450 C

Platin 10% Rodiu (+)


Platin (-)

980-1450 C

Cupru (+) Constantan (-)

-200-350 C

Termocupluri - caracteristici
Avantaje:

precizie foarte mare, liniaritate buna


repetabilitate in timp a masuratorilor
valorile masurate sunt universale, la nlocuire nu necesit
reglaje suplimentare
plaj foarte mare de temperatur (- 200 - +1600C)
Dezavantaj:
problema punctului rece
valori mici ale tensiunii generate/grad Celsius
necesita contact fizic cu obiectul masurat

Termocuplu

Cablu de transmisie

Cutie termostatat

Termorezistenele
variatia rezistentei cu temperatura
legea de variatie:
unde:

R = R0(1+ t)

R rezistena senzorului la temperatura t


R0 rezistena senzorului la 0C
coeficientul de variaie al rezistenei cu temperatura
t temperatura msurat n C
valorile nomonale sunt standardizate: R0 = 100, 200

Caracteristici:

linearitate relativ bun a funciei de transformare


plaj mare de temperatur (-200 - 600C)
pre relativ sczut
precizie moderat
nclzirea termorezistenei la trecerea unui curent de msur
afecteaz precizia de msurare

Termistorii
variatie negativa si exponentiala a rezistentei

cu temperatura
R = R0 * e(1/T-1/To)

unde:

R rezistena la temperatura T
R0 valoarea de referin a senzorului
T temperatura msurat n grade kelvin
T0 temperatura de referin ( 298Kelvin = 20C)
constanta de temperatur

Termometrele manometrice
se bazeaza pe legea gazului ideal:

unde:

pV = RT
p = p0 (1+ T)

T- temperatura absolut msurat n grade Kelvin


p - presiunea gazului ideal
p0 presiunea la temperatura de 0C
constanta de variaie a presiunii cu temperatura
numrul de moli de gaz
R- constanta universal a gazelor
Caracteristici:
precizie foarte mare
dificil de integrat in sisteme de automatizare
se folosesc pentru calibrarea celorlalte traductoare de temperatura

Pirometrele de radiaie
masoara temperatura pe baza energiei

(optice) radiante
doua tipuri:

pirometre de radiaie total


pirometre de radiaie cromatic

Caracteristici:

masurarea de la distanta a temperaturii


plaja mare de variatie a temperaturii
pret relativ ridicat

Traductoare de presiune
presiunea un alt parametru important
se masoara fie pentru presiunea propriu-zisa fie pentru a

determina indirect alte marimi (ex: nivelul de lichid intr-un recipient)


Variante constructive:
balana inelar (a)
presostate cu burduf (b)
presostate cu membran (c)
p2

p1
p

a.

b.

c.

Traductoare de debit
Exist mai multe metode de msurare a debitului unui fluid:

prin msurarea unei diferene de presiune


prin msurarea unui cuplu mecanic sau a vitezei de rotaie
prin msurarea unui efect de inducie electromagnetic

p1

a.

p2

b.

c.

Msurarea debitului: a. prin presiune diferenial, b.


prin cuplu mecanic, c. prin efect de rotaie

S
e

Debitmetru
electromagnetic

Traductoare de nivel
prin msurarea presiunii lichidului la fundul rezervorului

h = p/(*g)
unde: h - nlimea coloanei de lichid
p presiunea static la fundul rezervorului
densitatea lichidului
g acceleraia gravitaional
prin msurarea cu ultrasunete sau optic a distanei la care se
afl suprafaa liber a lichidului (ex.: pentru baraje de
acumulare)
cu plutitor i senzor de deplasare
cu senzor capacitiv; se msoar variaia capacitii unui
condensator alctuit din dou armturi verticale introduse n
bazin; capacitatea depinde de permitivitatea electric a lichidului
i de nivelul acestuia; lichidul trebuie s fie izolator

Traductoare de deplasare i de vitez


Tipuri:

cu inductan variabil
cu capacitate variabil
cu rezisten variabil (poteniometru)
cu senzor optic
LED

S1 S2
S1

Deplasare reglet spre stnga

S2
S1
S2

Deplasare reglet spre


dreapta

Senzori optici cu valoare absoluta

Senzori
optici

10110
Rigl liniar

01110

00110

Figura 5.8 Senzori optici cu ieire digital

Rigl circular

Traductoare pentru mrimi electrice


tensiune
curent
putere
factor de putere
rezistenta, capacitate, inductanta

Transformator de curent

Traductor Hall

I
Cmp
magnetic
e
Conductor
Element culisant

Traductoare pentru mrimi fizice i


chimice speciale
analizoare de gaze pentru oxigen, monoxid

de carbon i bioxid de carbon


traductoare de umiditate relativ i absolut
traductoare de vscozitate
traductoare de pH

Informatica industriala

Cursul 7 Controlul automat al


proceselor (cont.)

Elemente de executie
Elementele de acionare sau de execuie sunt dispozitive de

automatizare care transmit procesului controlat comanda


generat de sistemul de control
Exemple: robinet, element de incalzire, motor electric, etc.
Constructiv au 2 parti:
o parte motoare (de acionare) i

o parte de execuie

VP
+

Regulator

Elem. de
execuie

Proces controlat

VE

VM
Traductor

Clasificarea elementelor de acionare

dup natura modulului de acionare:

electrice:

motoarele electrice rotative i liniare (solenoid cu miez),


motoarele pas-cu-pas

motoarele de curent continuu,

control relativ simplu prin nivel de tensiune sau in impulsuri (PWM)


necesita senzor de deplasare, turatie sau viteza
putere dezvoltata medie

motoare de curent alternativ

usor de controlat digital


nu necesita senzor de pozitie
dezvolta putere/forta foarte mica

greu de controlat, necesita schema complexa de actionare


dezvolta putere mare

pneumatice si hidraulice

dezvolta putere mare


folosite in medii explozive
necesita instalatii speciale pentru transmiterea agentului de actionare (aer
comprimat, ulei)

Clasificarea elementelor de acionare


dup natura modulului de execuie:

electrice:

rezistente de incalzire:

230V

control prin comutare


in impulsuri (PWM)

comutatoare:

230V

electro-mecanice relee
semiconductoare - tiristoare

230V
Alimentare n stea
P= 3*U2/R = 3* 2302/R

mecanice
230V*3

230V*3

UR
C1
C2

C1
C2

Alimentare n triunghi
P= 3*U2/R = 3*
3*2302/R
4

Clasificarea elementelor de acionare


dup natura modulului de execuie

(continuare)

dispozitivelor de execuie mecanice:

tipuri constructive:
ventile,
valve
robinetele

obiectivul urmarit:
controlul liniar al gradului de
deschidere al robinetului (a)
controlul uniform al debitului de fluid (b)
deschiderea sau nchiderea ct mai
rapid a fluxului de fluid (c)
reducerea cderii de presiune i
eliminarea vrtejurilor
creterea anduranei, etc.

Q
d

a. liniar

Q
d

b. logaritmic

c. rapid
5

Clasificarea elementelor de acionare


dup natura modulului de execuie

(continuare)

dispozitivelor de execuie mecanice:

Dispozitive de reglare a debitului:


cu clapet (a),
cu registru (b)

a.

b.

Controlul elementelor de acionare


precizia elementelor de executie este limitata:

erori de neliniaritate
erori la capete de scala
Solutia: sisteme cu reactie inversa pentru ajustarea erorilor
Exemplu: sistem de pozitionare, cu controlul cuplului, a vitezei si
a pozitiei

Poziie
prescris

poziie

Control
poziie

Control
vitez
cuplu

vitez

Control
cuplu

T.C

Motor

Sarcin

T.V.
T.P.
Schema unui sistem de poziionare

Regulatoare
componenta inteligent al unui sistem de reglare
Funcia de reglaj, (funcia de transfer a regulatorului) indic

dependena dintre semnalul de comand generat i abatere


reglaj:

liniar - ideal
neliniar - real

VP
+

Regulator

Elem. de
execuie

Proces controlat

VE

VM
Traductor

Clasificarea regulatoarelor

dup natura semnalului de comand generat:

regulatoare continue semnalul de comand este


o funcie continu n raport cu abaterea i cu timpul
(ex.: regulatoare P, PI, PID, etc.)
regulatoare discontinue semnalul de comand
este o funcie care are discontinuiti n raport cu
abaterea (ex.: regulatoare bipoziionale, tripoziionale
i n mai multe trepte)
discrete semnalul de comand este o funcie
discret n timp, adic se genereaz impulsuri
modulate n amplitudine, frecven, factor de umplere
sau se genereaz informaii codificate binar
9

Clasificarea regulatoarelor

dup tehnologia folosit pentru implementarea funciei de


reglaj

regulatoare mecanice, hidraulice, pneumatice se


folosesc componente mecanice, hidraulice sau pneumatice
mai mult sau mai puin standardizate; este dificil de
implementat o funcie de reglaj, optim din punct de vedere
teoretic,
regulatoare electronice sau analogice se folosesc
componente electronice active (tranzistor, amplificator
operaional) i pasive (rezisten, condensator, bobin);
precizia de implementare a funciei de reglaj depinde de
precizia componentelor
regulatoare digitale sau numerice utilizeaz componente
digitale (pori logice, bistabile, etc.), inclusiv microprocesor;
funcia de reglaj se implementeaz printr-o schem logic
sau prin program; n ultimul caz pot fi implementate funcii
complexe de reglaj, iar precizia de reglaj nu depinde de
precizia componentelor

10

Clasificarea regulatoarelor

dup mrimea constantelor de timp implicate

dup legea de reglare

regulatoare pentru procese lente constantele de timp ale


procesului sunt foarte mari (peste zeci de secunde); exemple:
reglare temperatur, nivel, concentraii de gaze
regulatoare pentru procese rapide constantele de timp sunt
relativ mici (sub cteva secunde); exemplu: reglarea turaiei
motoarelor, poziionare, reglare presiune
regulatoare de prag bipoziionale sau tripoziionale
regulatoare continue, proporionale (P), proporional-derivative
(PD), proporional-integrative (PI) i proporional-integrativ-derivative
(PID)

dup gradul de adaptabilitate

regulatoare clasice (neadaptive) coeficienii de reglaj se


acordeaz manual
regulatoare autoadaptive coeficienii de reglaj se acordeaz
automat

11

Rspunsul unui sistem la un semnal de tip


treapt unitar
necesar pentru a stabili comportamentul sistemului, in

vederea realizarii unui reglaj adecvat


metode de determinare:

pe cale analitica: pe baza unor legi fizico-chimice


mai exacta dar greu de surprins in formule un proces
real
pe cale experimentala: prim masurare

se presepune ca sistemul are o constanta de timp principala


sistem liniar descris printr-o ecuatie diferentiala de gradul
intai
raspunsul sistemului la un impuls Dirac ar permite
identificarea completa a sistemului
varianta practica -> raspunsul sistemului la semnal de tip de
tip treapta unitara (cuplarea comenzii la valoarea nominala) 12

Raspunsul sistemului la un semnal de


tip treapta unitara
u(t) semnalul de comanda (treapta unitara)
y(t) raspunsul sistemului ; yst iesirea stationara
max- abaterea maxima
tm timpul mort

; st abaterea stationara

t0 constanta de timp

ttranz perioada de tranzitie


y(t)

st

max

yst

t
tm

t0

ttranz

u(t)
13

Algoritmi de reglare
alegerea schemei/algoritmului de reglaj se face pe

baza urmatorilor parametrii ai procesului controlat:

timpul mort i constanta de timp a sistemului


precizia solicitat (eroarea staionar admis)
abaterea maxim admis
timpul maxim de atingere a valorii prescrise
timpul maxim de tranziie
costul maxim admis
gradul de stabilitate al sistemului
14

Reglaj bipoziional
cuplarea si decuplarea comenzii, in jurul valorii

prescrise,

este in functie de marimea abaterii


se alege un domeniu de histerezis: [-p, + p]
VM

VP+p

VP-p

VP

-p

+p

t
C

15

Reglaj bipozitional
Avantaje:
simplu, usor de implementat
multe elemente de actionare/executie au 2 stari
Dezavantaje:
precizie scazuta
semnalul de iesire variaza in plaja de histerezis
apare o abatere stationara nenula
Varianta inbunatatita: reglaj tri-pozitional
3 valori pt. comanda: nul, maxim si mediu
reglaj mai fin, precizie mai buna decat reglajul
bipozitional
16

Reglaj liniar continuu


regulatoare PID

valoarea comenzii depinde de valoarea momentata


a abaterii si de evolutia acesteia
Reglaj proporional regulator de tip P

comanda este proportionala cu abaterea

c(t) = Kp * (t) = Kp*(VP-VM(t))


unde: c(t) comanda la momentul t
(t) abaterea (eroarea) la momentul t
Kp factorul de proportionalitate
VP valoarea prescrisa
VM(t) valoarea masurata la momentul t

Bp = 1/ Kp*100 [%] - banda de proportionalitate


17

Reglaj liniar continuu


regulatoare PID
Regulator P (cont.)

caracteristici:

precizie mai buna decat in cazul reglajului bi- sau tri-pozitional


nu se tine cont de evolutia anterioara a abaterii
nu se recomanda pentru sisteme cu timp mort mare
daca abaterea este mare comanda nu mai este proportionala cu
eroarea; proportionalitatea se mentine numai in banda de
proportionalitate
VM

Bp

VP

st

t
(t)
c(t)
18

Reglajul proporional-integral
regulator de tip PI
comanda depinde de abaterea momentana si

de integrala abaterii efect de filtrare


c(t) = Kp( (t) + 1/Ti (t)dt )
unde Ti constanta integrativa
caracteristici:

reglaj mai bun decat cel de tip P


elimina zgomotele care apar pe valoarea
masurata
daca Ti este prea mic sistemul intra in oscilatie

19

Reglajul proporional-derivativ
regulator PD
comanda depinde de abaterea momentata si de derivata

abaterii

c(t) = Kp( (t) + Td d(t)/dt )


unde: Td factorul derivativ

caracteristici:
folosit pentru procese lente in vederea detectarii
directiei si vitezei de variatie a abaterii
daca Td este mare sistemul intra in oscilatie, mai usor
decat in cazul precedent
d(t)/dt = dVM(t)/dt

20

Reglajul proporional-integralderivativ regulator de tip PID


comanda depinde de valoarea momentana,

integrala si derivata abaterii


c(t) = Kp( (t) + 1/Ti (t)dt +Td d(t)/dt)

cu factor de corelatie:
c(t) = Kp( (1+q*Td/Ti)*(t) + 1/Ti (t)dt - Td dVM(t)/dt)
unde:
(1+q*Td/Ti) factor de corelaie
q constanta de corelaie (dependent de construcia
regulatorului)
21

Regulator PID
caracteristici:

performantele cele mai bune in categoria de regulatoare


continue
coeficientii regulatorului PID, Kp, Ti, Td trebuie acordati in
conformitate cu comportamentul sistemului controlat (pe
baza raspunsului la treapta unitara)
daca reglajul nu este adecvat sistemul poate sa intre in
oscilatie
acordarea se face pe baza unor criterii de optimalitate:

abaterea minima
integrala patratului abaterii sa fie minima
timp minim de atingere a valorii prezcrise
abaterea maxima sa nu depaseasca o valoare prestabilita

22

Regulatoare digitale
proceseaza si genereaza semnale digitale
formula de reglaj:
c(kT) = Kp [(kT) + 1/Ti* (jT)*T + Td*((kT) - ((k-1)T)/T]
unde: T perioada de esantionare
c(kT) comanda la momentul kT
(kT) abaterea la momentul kT
formule practice:
c(kT) c((k-1)T)= Kp [(kT) ((k-1)T) + 1/Ti*(kT)*T + Td*((kT) ((k-2)T)/T]
dupa regruparea termenilor:

c(kT) = c((k-1)T) + A*(kT) + B*(kT) + C*(kT)


23

Rspunsul unui sistem automat de reglaj


Tipuri de raspuns

rspuns aperiodic, care tinde asimptotic ctre o valoare sub valoarea


prescris (a)
rspuns aperiodic, care tinde asimptotic ctre valoarea prescris (b)
rspuns periodic amortizat (c)
rspuns periodic neamortizat (d)
d

Y
VP

a
24

Acordarea regulatoarelor
determinarea constantelor Kp, Ti, Td pentru o functionare

optimala
nu exista solutie unica, depinde de obiectivul urmarit
Metodele de acordare a regulatoarelor se bazeaz pe anumite
criterii de performan, cum ar fi:

criteriul suprafeei minime pentru graficul abaterii


criteriul suprafeei minime pentru graficul abaterii ptratice
criteriul suprafeei minime pentru graficul modulului funciei abatere
criteriul minimizrii abaterii maxime
criteriul timpului minim de stabilizare
max

VM

VP
(t)

25

Acordarea regulatoarelor
Varianta 1. (Metoda Ziegler-Nichols)

Se anuleaz efectul integrativ (Ti = ) i derivativ (Td = 0),


iar constanta de proporionalitate (Kp) se fixeaz la valoarea
minim.
Se mrete treptat valoarea lui Kp pn cnd sistemul intr
n oscilaie.
Se msoar perioada oscilaiei ( T0) i se noteaz valoarea
constantei de proporionalitate pentru care sistemul a intrat
n oscilaie (Kp0).
Conform criteriului suprafeei minime se aleg urmtoarele
valori pentru constantele regulatorului:
pentru regulator P :
Kp = 0,5 Kp0
pentru regulator PI:
Kp = 0,45 Kp0 ; Ti = 0,8 T0
pentru regulator PID:
Kp = 0,6 Kp0 ; Ti = 0,5 T0 ; Td= 0,125 T0

26

Acordarea regulatoarelor

Varianta 2. Pentru aceast variant trebuie s se determine n


prealabil rspunsul sistemului controlat la un semnal de tip treapt
unitar. Din graficul funciei rspuns se determin:
constanta de amplificare a sistemului - K - raportul dintre
variaia ieirii i variaia semnalului de intrare
constanta de timp a sistemului - T timpul estimat de atingere a
valorii de saturaie dac creterea ar fi numai liniar (poriunea
dreapt a graficului)
timpul mort al sistemului Tm ntrzierea cu care sistemul
reacioneaz la o variaie a semnalului de comand

pentru regulator P:
pentru regulator PI:
pentru regulator PD:

Kp = (1/K)*(T/Tm)
Kp = 0,8*(1/K)*(T/Tm); Ti = 3 Tm
Kp = 1,2*(1/K)*(T/Tm); Td = 0,25 Tm

pentru regulator PID: Kp = 1,2*(1/K)*(T/Tm); Ti = 2 Tm;


Td =0,45Tm

VM
Vs
at

V0
c
c0

K = (Vsat-V0)/c0
Tm

27

Regulatoare adaptive
care isi determina automat coeficientii de reglaj
se face periodic o estimare a comportamentului

sistemului si se reacordeaza coeficientii de reglaj


se secomanda pentru sistemele care isi modifica
comportamentul in timp
Calcul parametri

Estimator

Kp,Ti,Td
VP

Regulator

Proces

28

Criterii de alegere a tipului optim de


regulator
Alegerea soluiei optime de reglaj se face pe baza mai multor criterii:

dup valoarea raportului dintre timpul mort i constanta de timp a


procesului:

Tm/T =

( 0 .. 0,3) - regulator bipoziional


(0,3 .. 1) regulator PID
> 1 regulatoare speciale (ex.: regulatoare adaptive)

dup caracteristicile procesului i ale perturbaiilor:

cu o constant de timp dominant regulator P


cu dou constante de timp dominante regulator PI, PID
cu zgomot mare regulator PI
cu zgomot redus i constant de amplificare mic regulator PD

pe baza experienei acumulate:

reglaj de nivel regulator P, PI


reglaj de debit - PI
reglaj de temperatur, presiune: P, PI, PID
29

Informatica Industriala
Cursul 7
Componente utilizate in sistemele digitale de
control: Microcontroloare si procesoare digitale
de semnal

Microcontroloare
procesoare specializate pentru aplicatii de control
circuite VLSI care incorporeaza aproape toate

componentele unui micro-sistem de calcul:

UCP
memorie de program
memorie de date
sistem de intreruperi
porturi de intrare/iesire digitale
convertoare analog-numerice si numeric analogice
interfete de comunicatie si de retea

55% din procesoarele vandute in lume au fost

microcontroloare de 8 biti (wikipedia) 4 miliarde

Microcontroloare (C) - caracteristici:

dimensiuni reduse (numr redus de pini)


consum mic
timp predefinit de execuie a instruciunilor
arhitectur tip Harvard: separarea memoriei de program de
memoria de date
sistem de ntreruperi simplu, adaptat componentelor periferice
(contoare, interfee, etc.) coninute n circuit
cost redus
frecvene de lucru relativ mici (10-30 MHz)
performane de calcul modeste
set limitat de instruciuni n limbaj main
limitri n ceea ce privete capacitatea de memorare
restricii privind posibilitile de extindere a sistemului

Familii de C
Exemple:

PIC12Fxx, PIC16Fxx, PIC18FXX, PIC 32Fxx


ARM
AVR
MIPS
Intel 8051/31, Intel 8748
O familie este caracterizata prin:
aceeasi arhitectura de baza
acelasi set de instructiuni
Aceleasi instrumente de dezvoltare a programelor
Diferente intre variante ale aceleiasi familii:
Capacitate de memorie (pentru date si pentru program)
Tipuri de interfete incluse
Numar de porturi, contoare,

Schema bloc a familiei de


microcontroloare I 80C31
ntreruperi
Sistem de ntreruperi

Timer 2
ROM

RAM

4k-32 ko

128-512 o

Timer 1
WD

Timer 0

UCP

Canal serial
Generator de ceas

CNA

CAN

PWM

Port I/E *4

Reset

32 linii de I/E

RS 232

Ieire analogic

Intrri
analogice

Ieire PWM

Principalele componente ale


microcontrolorului

UCP unitatea central de prelucrare asigur execuia instruciunilor


unui program
ROM memoria nevolatil conine programul de aplicaie i eventualele
constante de program; memoria poate fi de tip PROM (se nscrie o singur
dat), EPROM (cu posibilitate de nscriere multipl, off-line) sau EEPROM
(cu posibilitate de scriere n timpul funcionrii programului); dimensiunea
memoriei variaz funcie de varianta constructiv de la 0 la 32ko; ea se
poate extinde prin adugarea unei memorii externe
RAM memoria de date pstreaz variabilele programului i stiva; n
prima parte a memoriei locaiile pot fi adresate ca registre interne (4 seturi
a cte 8 registre); o anumit zon de memorie poate fi adresat la nivel de
bit; capacitatea memoriei depinde de varianta constructiv (128-512 octei);
memoria RAM intern poate fi extins cu o memorie RAM extern
sistemul de ntreruperi gestioneaz cererile interne i externe de
ntrerupere; sursele de ntrerupere sunt: 2 linii externe de ntrerupere, canal
serial (recepie sau transmisie de caractere) i contoare (timer 0,1,2)
generatorul de ceas genereaz semnalul de ceas necesar pentru
funcionarea UCP i furnizeaz o frecven de referin pentru contoarele
interne i canalul serial
porturile de intrare/ieire permit achiziia sau generarea de semnale
digitale; sunt 4 sau 6 porturi a cte 8 semnale; un semnal se configureaz
ca intrare, ieire sau semnal bidirecional

Principalele componente ale


microcontrolorului

canalul serial implementeaz protocolul de comunicaie RS 232 (canal


serial asincron, bidirecional pe caracter); la unele variante exist un canal
serial suplimentar care implementeaz protocolul I2C; acest protocol
permite construirea unei magistrale seriale n locul celei paralele clasice
timer 0, 1, 2 set de 2 sau 3 contoare utilizabile pentru generarea
periodic a unor ntreruperi (ex.: pentru ceas de timp-real), pentru
numrarea unor evenimente externe sau pentru generarea frecvenei de
transmisie serial
CNA convertor numeric/analogic folosit pentru generarea unui
semnal analogic; aceast component este prezent numai la variantele
mai complexe
CAN convertor analog/numeric folosit pentru achiziia unor semnale
analogice; pot fi citite prin multiplexare pn la 8 intrri analogice
WD contor Watch-Dog utilizat pentru detectarea funcionrii anormale
a UCP; dac contorul nu este reiniializat periodic, se consider o anomalie
i ieirea contorului va provoca o reiniializare a procesorului
PWM ieire cu modulaie n lime de impuls (Puls Width Modulation)
permite generarea unei comenzi asemntoare unui semnal analogic,
folosindu-se o ieire digital; prin aplicarea unui filtru trece jos se obine un
semnal analogic proporional cu factorul de umplere al impulsului generat

Accesarea memoriei si a porturilor


Registrele interne fac parte din spatiul de memorie destinat datelor
Porturile de intrare/iesire, inclusiv cele de control si stare ocupa un loc

predefinit din spatiul de memorie (SFR Special Function Register)


FFFFh extern

intern
FFh
7Fh

SFR

128o

R0 R1

...

R7
Blocul 3
Blocul 2
Blocul 1
Blocul 0

0 128o

Memoria date (RAM)


FFFFh
extern

(max 64ko)

intern
0

(0-8ko)

Memoria de program PROM, EPROM, EEPROM

Harta memoriei interne i externe

64ko
0

Moduri de functionare
funcionare normal (eng. normal mode) toate

componentele sunt funcionale, consumul este


maxim
ateptare (eng. idle mode) generatorul de ceas,
contoarele i memoria RAM sunt alimentate, restul
componentelor sunt decuplate; consumul este mediu;
procesorul este scos din aceast stare printr-un
semnal de reset sau un semnal de ntrerupere
deconectare (eng. power-down mode) memoria
RAM este singura component alimentat, restul fiind
decuplate; tensiunea minim admisibil este de 3V,
iar consumul este extrem de mic (comparabil cu
curentul de descrcare natural a unei baterii)

Setul de instructiuni structura UCP


UCP are arhitectura pe 8 biti de tip Harvard (memorie

de date si de program separate)


Set simplu de instructiuni
Instructiuni relativ simple
Instructiunile nu fac distinctie intre locatii de memorie
si porturi spatiu comun de adresare
Adresarea memoriei RAM externe si a memoriei de
program se face indirect prin registru poantor DPTR
(Data Pointer)
La 12MHz o instructiune se executa in 1 sau 2 s
Timpul de executie a unui program se poate calcula
prin numararea instructiunilor

Microcontroloare Microchip:

PIC12xx, PIC16xx, PIC18xx, PIC32Fxx


www.microchip.com
Alegerea unei variante de microcontrolor
http://www.microchip.com/ParamChartSearch/chart
.aspx?branchID=1002&mid=10&lang=en&pageId
=74

Exemplu: PIC16F87x (876,877, 873)


Caracteristici:

Structura pe 8 biti (date de 8 biti)


Instructiuni de 14 biti
Arhitectura Harvard, de tip RISC
Are numai 35 de instructiuni
Capacitate de stocare:

8k x 14 Flash EPROM (memorie de program)


256x8 EEPROM
368x8 SRAM (memorie de date)

Interfata seriala UART si SPI

Convertor analog-digital de 10 biti cu 8 canale multiplexate


3 timere din care 2 de 8 biti si unul de 16 biti
PSP parallel Slave Port
WDT watch-dog Timer
CCM (Capture Compare Module) si PWM
Programabil si depanabil prin doua fire (serial); ICD in circuit debuger
Incapsulare: 28,40 sau 44 pini

Controlul unui port de intrare/iesire

Porturi digitale:

PORTA
PORTB
PORTC
PORTD
PORTE

PORTA port de date


TRISA registrul de validare a iesirii

TRISAi =1 => PORTAi intrare

Tranzistoarele de iesire sunt in inalta


impedanta

TRISAi =0 => PORTAi iesire

Pinul de iesire va avea starea


bistabilului de iesire al portului A

Caracteristici comune pentru diferitele


variante de microcontroloare:
integrarea ntr-un singur circuit a componentelor necesare pentru o

aplicaie simpl de control


arhitectur Harvard, care presupune separarea memoriei de program
de memoria de date; scopul urmrit este protejarea zonei de program
i creterea vitezei de transfer
mai multe variante constructive, care se adapteaz mai bine la
necesitile unei aplicaii concrete
set de instruciuni simplu, cu instruciuni executate ntr-un timp bine
definit; scopul urmrit este creterea gradului de determinism i
posibilitatea evalurii timpului de procesare a datelor, nc din faza de
proiectare
seturi multiple de registre interne, utile pentru transferul rapid de date i
pentru comutarea rapid de context
adresarea porturilor de intrare/ieire ca locaii de memorie pentru a
permite un acces direct i rapid la semnalele de intrare i de ieire
mai multe moduri speciale de lucru pentru un consum minim
conin componente tipice pentru aplicaiile de control: convertoare de
semnal, generator PWM, numrtoare de impulsuri, detector de
funcionare anormal (watch-dog), etc.

Procesoare digitale de semnal

(DSP Digital Signal Processors)

Procesoare specializate pentru aplicatii in care domina operatiile de


prelucrare a semnalelor
Necesitatea:

procesoarele uzuale nu satisfac cerintele de viteza pentru semnale de


frecventa mai mare
schemele analogice au limitari de performanta, de complexitate

Avantaje ale procesarii digitale a semnalelor:


imunitate mai mare la zgomot (datorit diferenei relativ mari ntre cele
dou stri logice, zero i unu)
precizie mai mare
rezultatul prelucrrii nu depinde de variaiile de mediu (temperatur,
umiditate) sau de variaii ale tensiunilor de alimentare
pot fi implementate procedee complexe de prelucrare (exemplu: filtre cu
un numr mare de poli), a cror implementare analogic este dificil sau
chiar imposibil datorit preciziei limitate a componentelor
repetabilitatea n timp a procedeelor de prelucrare
modificarea procedeului de prelucrare nu implic modificarea schemei
hardware (modificarea se face prin rescrierea programului de prelucrare)

Operatii specifice de prelucrare a semnalelor


Tipuri de operatii:

filtrare, amplificare, atenuare


convolutie
transformate: Fourier, Laplaze, Z
Din punct de vedere matematic:
integrala de convolutie intre semnalul de prelucrat si functia de
prelucrare

y(t)= f()x(t-)d
-

Unde:
-x(t) functia de intrare
-y(t) functia de iesire
-f(t) functia de transformare (prelucrare)

In domeniul digital
+

y(nT)= f(kT) * x(nT-kT)


k=-

unde:
- y(nT) semnalul discret de ieire (eantionul n)
- x(nT) semnalul discret de intrare
- f(kT) funcia discret de transformare
- T perioada de esantionare
-

interpretare: iesirea y la momentul nT este o suma ponderata a intrarii x la


momente in jurul momentului nT
functia de transformare f are valori diferite de 0 in jurul originii (k=0)
practic, suma de convolutie are un numar finit de termeni
daca T se considera unitatea de timp atunci se poate omite

Exemple:
Filtru trece jos mediere, eliminare zgomote
y(n) =(1/3)*[x(n-1)+x(n) +x(n+1)]
media aritmetica a intrarilor din jurul momentului n
1/3 pt. k=-1, 0, 1
f(k) =
0 in rest

Filtru trece sus gradient


y(n) =x(n)-x(n-1)
diferenta intre doua valori consecutive ale intrarii
1 pt. k=0
f(k) =
-1 pt. k=-1
0 in rest

Caracteristici arhitecturale
ale procesoarelor de semnal
asigura executia in timpul cel mai scurt a sumei de convolutie

Caracteristici arhitecturale:

existenta unei Unitatea de multiplicare i acumulare repetitiv (eng.


MAC Multiply and Accumulate)
Magistrala de program

Magistrala de date
16 bii

Deplasare

Multiplicator paralel
32 bii

Deplasare

MUX

UAL
Acumulator

Deplasare

MUX

Caracteristici arhitecturale:
Instruciuni complexe de multiplicare i acumulare

mai multe variante posibile

Magistrale interne multiple

magistrala de date
magistrala de cod
Memorie intern pentru date i pentru program
arhitectura Harvard
Seturi multiple de registre interne

timp de acces mai bun


instructiuni mai scurte

Moduri de adresare orientate pe iruri

adresare indexata (cu incremetarea automata a indecsilor)


adresare circulara buffer circular

Structura interna a unui procesor de


semnal (exemplu TMS320C25)
Magistrala de program
Comenzi

Controlor de
magistral

PC
Mem. de
program ROM

Adrese

Stiva

Date

Magistrala de date

Reg. spec

AR0-7

DP

ARP

B1
B2

RAM
RAM

B0

RAM

MAC

Componentele procesorului TMS320C25


RAM blocuri de memorie RAM:

B0 - 256x16 bii memorie pentru date i program;


B1 - 256x16 bii memorie pentru date
B2 - 32x16 bii memorie pentru date
ROM memoria intern pentru program (memorie nevolatil)
MAC modul de multiplicare i adunare
AR0-7- registre auxiliare (registre generale)
ARP indicator ctre registru auxiliar
DP indicator de domeniu
PC numrtor de instruciuni (Program Counter)

Familii de procesoare de semnal:


procesoare pe 16 bii n virgul fix:

TMS320C10, TMS320C20 i TMS320C50


procesoare pe 32 de bii n virgul flotant:
TMS320C30 i TMS320C40
arhitectur multiprocesor orientat ctre
aplicaii multimedia: TMS320C80

Aplicatii ale procesoarelor de semnal


in domeniul industrial:

acionri electrice i controlul motoarelor


instrumente de msur i analiz

spectrometre
analizoare de vibratii
aparate de masura complexe

Telecomunicatii

centrale telefonice
filtrare, codare/decodare on-line
telefonie mobila
modemuri

Divertisment

instrumente muzicale,
jucrii electronice
sintetizatoare de sunet, efecte speciale

Aplicatii grafice

acceleratoare grafice 3D,


prelucrarea primar i recunoaterea imaginilor,

Calculatoare de proces
sisteme de calcul cu caracteristici adecvate mediului industrial:

dimensiuni si forme specifice


fiabilitate ridicata, toleranta la defecte
rezistente la socuri mecanice, vibratii
tolerante la variatii de temperatura, umiditate

tolerant la personal necalificat


tolerant la influente electromagnetice
Touch-screen, butoane functionale

Caracteristici calculatoare de proces

structur compact, modularizat, de dimensiuni minime


robustee i fiabilitate ridicat obinute prin componente mecanice solide,
conectori rezisteni la vibraii, praf i coroziune, componente electronice testate
n condiii de mediu extreme
interfa utilizator adaptat funciei pe care o ndeplinete i care rezist n
mediile industriale (taste funcionale, tastatur protejat la praf i umiditate,
touch-screen, afiaj LCD, dispozitive de navigare fr componente mecanice,
ecran protector rezistent la ocuri, etc.)
memorii externe pe suport semiconductor (EEPROM, FLASH, CMOS) n
locul celor magnetice i optice care au anduran mic n prezena prafului
industrial i a vibraiilor
prezena unor interfee pentru adaptarea semnalelor digitale i analogice
provenite de la procesul controlat; n multe cazuri se impune izolarea galvanic
a acestor semnale de partea de calculator propriu-zis
se nlocuiete structura plac de baz i plci de extensie tipic pentru
calculatoarele de birou, cu o structur alctuit dintr-un set de conectori (fund
de sertar) i plci funcionale, inclusiv plac procesor; o astfel de structur
permite nlocuirea i reactualizarea (up-grade-ul) diferitelor componente, chiar i
a plcii de procesor

Alte sisteme de calcul industriale


sisteme modulare

PC/104

PLC (Programable Logic


Controller) Programatoare logice
programabile

regulatoare PID

PLC
control secvential
logica binara inlocuitor pentru schemele de

interconditionare cu relee
programare (standard IEC 61131 ):

Ladder diagram (LD), graphical


Function block diagram (FBD), graphical
Structured text (ST), textual limbaj de nivel inalt
Instruction list (IL), textual tip asamblare
Sequential function chart (SFC ) programare
concurenta

Lader Diagram (LD)

Function Block Diagram (FBD)

S = X AND ( Y OR Z )

----[ ]---------|--[ ]--|------( )


X
| Y |
S
|
|
|--[ ]--|
Z

Logica Start/Stop

--+----[ ]--+----[\]----( )
| start | stop run
|
|
+----[ ]-- +
run
-------[ ]--------------( )
run
motor

FTJ
Amp.

FTS

Sisteme de stocare a datelor (memorii)


Obiective:
stocarea programului de aplicatie
stocarea datelor de proces:
parametri de proces
starea procesului
Limitari si restrictii:
dimensiuni reduse:
pentru program 1k-64k
pentru date: 128-512 octeti
se evita folosirea memoriilor externe pe suport
magnetic sau optic (cele care au componete mecanice
in miscare)
se evita utilizarea memoriilor cache sau a memoriilor
virtuale deoarece introduc nedeterminism

Memorii limitari si restrictii (cont.)


utilizarea memoriilor nevolatile pentru evitarea pierderii datelor si a

programelor
PROM, EPROM pentru program
EEPROM, Flash pentru date nevolatile (scrieri repetate)
memorii CMOS cu baterie - pastrarea datelor la tensiuni mici (1,5V)
si consum infim
utilizarea memoriilor RAM statice pt. simplitate si pt. viteza
circuite specializate pentru detectarea caderii de tensiune si
comutarea memoriei in regim de stocare (ex: MAX 6340, MAX 6381 )
pentru microcontroloare, extensii de memorie pe canal serial (I2C)
memorii seriale
memorii externe pe suport semiconductor (ex. memory stick)

Retele induatriale de
comunicatii

Curs Informatica industriala

Cuprins

Evolutia mijloacelor de comunicatie utilizate in


sistemele de control
Principii de functionare a retelelor industriale de
comunicatii caracteristici de performanta
Clasificarea retelelor industriale de comunicatii
Protocoale si standarde de retea
Modele de comunicatie
Modelul unui sistem distribuit de control bazat pe
retele industriale
2

Controlul proceselor prin calculator


Operator

Vizualizare i
configurare

Nivel superior de
control
Coordonare i
configurare

Sistem de control
Date de intrare

Comenzi

Energie i mat. prime

Energie i produse

Proces controlat
Perturbaii

Condiii de mediu

Schema de principiu a unui sistem de control

Mijloace de comunicaie n
sistemele de control
ce a fost si ce se vrea

Mijloace de comunicaie n
sistemele de control

Mijloace de comunicaie n
sistemele de control

Transmisia informatiilor (semnalelor)


in sisteme de control
Mijloace de comunicatie:
-

mecanice
Hidraulice si pneumatice
Electrice (curent, tensiune ,...)
Semnale (analogice) unificate semnale
standardizate
- tensiune (0-10V, -5 - +5V)
- curent (4-20 mA)

Semnale digitale semnale de stare, impulsuri,


etc.
Magistrale si retele de comunicatie
7

Modele de comunicatie
- Din punct de vedere fizic:
- Conexiuni unu-la-unu (pearto-pear)
- Legaturi si interfete
dedicate
- Ierarhizate
- Organizate pe nivele de
control
- Sisteme de tip magistrala
-

Mai multe conexiuni pe acelasi


mediu de comunicatie

Modele de comunicaie
Din punct de vedere logic:

modelul consumator/productor
modelul master/slave
modelul bazat pe timp (time-driven)
modelul interogrii circulare (pooling)

Ce se transmite ?
Informatii de stare (inchis/deschis,

pornit/oprit, validat/invalidat, etc..)

informatii binare/logice

Valori de marimi fizice de proces

Informatie analogica

Informatii de configurare si reglare

Informatie mixta

10

Cum trebuie sa se transmita


informatiile ?
- Sigur
- Fara pierdere de informatie
- Fara erori
- Fara interventia persoanelor neautorizate
- Exact
- In concordanta cu marimile de proces masurate
- Fara zgomote
- La timp
- intarzieri:
-

Datorita masurarii
Datorita transmisiei

11

Comunicatia in retea
-

Un mediu, mai multe conexiuni


Transmiterea de date complexe in directii multiple
Infrastructura de comunicatie mai ieftina
Transmisie sigura/fiabila:
-

Prin folosirea tehnicilor digitale de codare si transmisie


Mijloace specifice de protectie a datelor (metode de
detectie si corectie a erorilor incluse in protocolul de
comunicatie)

- Mediu de comunicatie scalabil si reconfigurabil


Standardizare si interoperabilitate

12

Retele de comunicatie in industrie


- Un proces lent de asimilare, implementare
- Comunicatia in retea este (strict) necesara intr-un

sistem modern de control:


-

Cablare si instalare mai ieftina


Mai multe servicii implementate pe acelasi mediu
Se pot conecta foarte multe dispozitive de automatizare
Modificare, reconfigure si dezvoltare simpla
Tratarea uniforma a diferitelor dispozitive de automatizare
(adresare, numire, configurare, etc.)
Tehnici mai bune de detectie a erorilor si de asigurare a
tolerantei la defecte
13

Cerinte specifice de comunicatie:


Timp determinat/predefinit pentru transmisia mesajelor

comunicatie de timp-real
- Nivel predefinit de siguranta/fiabilitate:
-

Nivelul de fiabilitate trebuie demonstrat


Toleranta la defecte, detectia, mascarea si corectia erorilor

Caracter determinist, predictiv al transmisiei


Transmiterea unor structuri specifice de date
Achizitia si transmisia periodica a datelor
Mai multe nivele de prioritati
!!! Retelele de calculatoare nu au fost proiectate pentru astfel
de cerinte !!!
-

14

Cerinte specifice de comunicatie in


sistemele de control
Garanii de
timp-real

Vitez de
reacie

Fiabilitate&
Toleran la
defecte
Determinism&
Predictibilitate

Fluxuri de
date specifice

Interoperabilitate
si scalabilitate
Simplitate

Protocol de comunicaie

15

Solutii:
- Retele dedicate de comunicatie => retele

industriale
- Adaptarea retelelor de calculatoare pentru
mediu industrial

16

Retele industriale de comunicatie


(def) sisteme de comunicatie dezvoltate cu scopul

satisfacerii cerintelor de comunicatie din mediul


induatrial (?)
- Evolutia retelelor industriale:
-

Prima realizare - MAP General Motors pentru


modernizarea liniilor de asamblare
1990-1996 marele bum dezvoltarea unui numar
foarte mare de protocoale industriale de comunicatie
1996- 2000 proces de unificare si standardizare
- Cercetari teoretice analiza caracteristicilor
critice (timp, siguranta) prin metode analitice si
experimentale
2000-2006 utilizarea tehnologiilor Internet pentru
urmarire si control (inclusiv Ethernet)

17

Situatia actuala
- Probleme:
- (Prea) Multe protocoale si standarde
- Probleme de incompatibilitate
- Probleme de integrabilitate, interoperabilitate
- Tendinte pozitive:
- Promovarea protocolului Ethernet (industrial) ca mediu
comun de comunicatie pentru partea de control-proces
si partea de gestiune economica
- Tehnici wireless de comunicatie pentru mediu indistrial
- Controlul calitatii serviciilor in Internet (QoS) mijloc
de garantare a cerintelor specifice din sistemele de
control
18

Modele de comunicatie
ISO-OSI

Aplicatie
Sesiune
Prezentare
Transport
Retea
Legatura de date
Fizic

TCP/IP
(Internet)

Aplicatie

RIC
Utilizator

Aplicatie

Transport(TCP)
Retea (IP)
Nivele inferioare

Retea
Legatura de date
Fizic
19

Clasificarea retelelor industriale de


comunicatie:
- 3 clase mai importante:
Retele pentru senzori si elemente de actionare (Instrumentation
bus, Actuator/Sensor network)
- Retele/magistrale de teren (fieldbuses)
- Retele celulare (cell networks)
Prin ce difera:
-

numrul de noduri conectate n reea


dimensiunea i distribuia geografic a reelei
timpul de reacie maxim impus al reelei
complexitatea dispozitivelor conectate n reea (gradul de inteligen,
resurse disponibile)
costurile de instalare i ntreinere admise (un procent din costurile ntregii
instalaii)
fiabilitatea impus i gradul de toleran la defecte
20
cerine speciale (medii explozive, zgomote electromagnetice intense, variaii
mari ale parametrilor de mediu, etc.)

Retele industriale de comunicatii

21

Caracteristici
Timp de reactie

Dim. mesaj
1-10 koct.

10-20

100ms-1s

10-256 oct.

10-100

10-100 ms

biti

100-1000

1-10ms

Retele celulare
Magistrale de teren
Retele pentru
senzori si elem. de act.

Numar de
noduri
22

Retele pentru senzori si elemente de


actionare
Utilizate pentru controlul la nivelul procesului de fabricatie:

Bucle de reglaj
- Control secvential (PLC)
Interconectarea unor elemente simple de automatizare (senzori,
actuatori) cu elemente de complexitate medie (PLC,
regulataore, etc.)
caracteristici:
- Viteza (foarte) mare; timp de reactie scazut( 1-10 ms)
- Mesaje foarte scurte (8-16 biti); antet scurt/mesaj (overhead)
- Metode deterministe de acces la mediul de comunicatie
- Modele de comunicatie: master-slave, pooling
- Protocol simplu la nodurile slave, complex la nodul master
- Nivel ridicat de fiabilitate si siguranta
-

23

Exemple (implementari practice):


CAN Contol Area Network

Dezvoltat pentru industria automobilistica masini de curse,


camioane, autovehicole
- Retea de tip magistrala seriala, dimensiuni mici (50m, 200m)
- Protocol de acces la mediu de transmisie CSMA/BA,
- Fiecare tip de mesaj are un nivel propriu de prioritate
- se poate evalua analitic timpul maxim de intarziere a
mesajelor
Interbus-S
- Arhitectura de tip inel,
- Controlal de la un nod central
ASi - Actuator Sensor Interface
- Retea de tip magistrala
- Acces prin metoda master-slave
24
- Mesaje foarte scurte (4 biti utili)
- Reconfigurarea automata in caz de defect
-

Retele de teren (fieldbus)


- Utilizate pentru controlul unor procese de

complexitate medie
- Protocol relativ complex care implica prezenta unei
anumite inteligente la nivelul fiecarui nod de retea
(calculatoare de proces, PLCuri, regulatoare, etc.)
- caracteristici:
-

Timp de raspuns mediu, predefinit (10-100ms)


Mesaje scurte si medii (100-250 octeti)
Protocol complex care asigura mecanisme bune de
detectie si mascare a erorilor
Mecanisme de acces la retea de tip multimaster

25

Exemple:
- Profibus
- Protocol nemtesc (Siemens principalul promotor)
- Magistrala de tip token-passing inel logic intre
nodurile master
- Mai multe variante: FMS, DP, PA
- Folosit in multe tipuri de aplicatii
- WorldFIP
- Protocol francez
- Retea de tip inel, control centralizat
- Mesajele periodice sunt transmise cu prioritate
- Pentru garantarea timpului de transmisie se foloseste
un planificator de mesaje
26

Exemple:
-

P-Net
- Protocol danez
- Mecanism de acces la retea - TDMA Time Division
Multiple Access
- Token virtual
- Foarte stabil, cu bune caracteristici de transmisie
DeviceNet, CANOpen
- Retele de teren dezvoltate pe infrastructura CAN
- Mecanisme foarte bune de acces la dispozitive si parametri
de proces (acces simbolic)
Fieldbus Foundation (FF)
- Protocol american
- Retea de tip magistrala

27

Retele celulare
- Retele pentru interconecatrea celulelor flexibile de

fabricatie
- Seamana cu retelele locale de calculatoare
- Caracteristici:
-

Timp garantat de transmisie


Comportament determinist
Mesajele au structura complexa (similar cu Ethernet)
Nodurile retelei sunt calculatoare de proces

Exemple:
MAP Manufacturing Automation Protocol
(GM)
TOP - (Boeing)

28

Protocolul Ethernet in controlul


industrial
De ce Ethernet in industrie:

Cel mai raspindit protocol pentru retele locale de


calculatoare
Interfete foarte ieftine
Compatibilitate cu sistemul informatic al unei intreprinderi
Probleme:
Nu este un protocol determinist (CSMA)
Nu se poate garanta timpul de transmisie
Nu se poate garanta transmisia sigura a unui mesaj
Solutii:
Transmisia la frecvente de 100HHz/1GHz evita aparitia
coliziunilor
Determinismul se asigura prin suprapunerea unui mecanism
determinist de acces la mediul de transmisie peste
protocolul clasic Ethernet (ex: Modbus peste Ethernet, acces
master-slave, etc.)

29

Sisteme distribuite bazate pe servicii


Scopul:
Reducerea complexitati sistemelor distribuite de
control
Metoda propusa (in cadrul proiectului NetControl):
Dezvoltarea unui set de servicii de nivel intermediar
(middleware) care sa satisfaca necesitatile de
comunicatie si sincronizare ale unui sistem de control
Serviciul de comunicatie mai mult decat un mijloc de
comunicatie
Un serviciu este implementat prin mai multe servere
distribuite

30

Concluzii
Proiectarea Sistemelor distribuite de control
moderne implica utilizarea unor modele,
tehnici si instrumente adecvate de
comunicatie, adatpate cerintelor specifice
din mediul industrial

31

Concluzii:
Trebuie acordata o mai mare atentie mijloacelor de comunicatie

utilizate in sistemele de control


Retelele industriale de comunicatii sunt o componenta necesara
intr-un sistem modern de control
Sunt necesare metode si tehnici speciale de garantare a
caracteristicilor critice de comunicatie (ex: timp de transmisie,
timp de reactie, fiabilitate, toleranta la defecte, etc.)
Este necesara unificarea standardelor de comunicatie pentru a
asigura interoperabilitatea unei game largi de echipamente de
control
Utilizarea tehnologiilor WEB in controlul industrial o provocare
interesanta

32

Anexa:

Realizari in domeniul retelelor industriale


Proiectarea si implementarea unei interfete Master

pentru o retea ASi (hard-soft)


Instrument de modelare si simulare a
comportamentului retelelor industriale prin Retele
Petri Temporale
Model de sistem distribuit de control bazat pe servicii
Planificarea comunicatiei in sistemele distribuite de
control
Utilizarea retelelor industriale pentru asigurarea
trasabilitatii in industria alimentara (faza incipienta)

33

Proiectarea unei interfete pentru o retea de


tip ASi
Caracteristicile retelei ASi :
Retea pentru senzori si elemente de executie
Restrictii de timp foarte stricte (10-20 s)
Mecanisme complexe de identificare si configurare
automata a nodurilor de retea
Mai multe servicii de comunicatie se desfasoara in
paralel

Achizitie si transmisie periodaica de date


Identificarea si configurarea automata a nodurilor
de retea
Detectie si corectia erorilor

34

Modelul arhitectural al interfetei


Aplicatia de control
Interfata utilizator
Functii de acces

Nivelul 3
Interfata utilizator

Calculator gazda

Memorie partajata

Bucla principala

Nivelul 2
Controlul
accesului la
retea

Nivelul 1
Transmisie mesaj

Procesare
comenzi
Controlor de
acces

Rutine de intrerupere
Rutina de timp

Controlor de
comunicatie

Transmisie/receptie

Driver de comunicatie
Circuit de adaptare

Controlorul de
retea
Reteaua industriala

35

Implementarea interfetei ASi


Aspecte de implementare:
Tehnici speciale de executie a programului, pentru
garantarea cerintelor de timp-real
Executie paralela (sistem multiprocesor: 2
microcontroloare si un procesor )
Executie foreground-background
Prioritati dinamice
Programare in limbaj de asamblare
Interfata s-a realizat pentru Univ. din Munchen
Experimentele au demonstrat respectarea restrictiilor de
timp

36

Informatica industriala

Retele senzoriale fara fir

Retele senzoriale
Scopul: achizitia de informatii dintr-o anumita arie geografica cu

ajutorul unor senzori inteligenti, ieftini si de consum redus


domenii de interes:
masurarea parametrilor de mediu (presiune, umiditate,
temperatura), in aer, apa si sol
monitorizarea unor ecosisteme (paduri, ape, vegetatie)
monitorizarea cladirilor, incinetlor, halelor industriale
aplicatii militare de recunostere, detectia si urmarirea tintelor
monitorizarea traficului terestru, aerian si naval
monitorizarea pacientilor
2 aspecte esentiale:
ce se masoara tipuri de senzori
cum se transmite informatia tipuri de retele cu si fara fir

Atribute ale retelelor senzoriale


legate de senzor:

tipul marimii masurate, precizie


mod de masura: activ, pasiv (ex: frecventa de masurare)
aranjare: fixa (prestabilita), ad-hoc (se autoorganizeaza)
amplasare dinamica: fixa, mobila
mediu de operare: cooperant, advers (ex. teritoriu inamic)
legat de comunicare
comunicatie in retea: cu si fara fir
control: centralizat sau distribuit
latime de banda: mare, mica, mai multe canale de
comunicatie
legat de consumul de energie:
constrangeri de consum: cu si fara constrangeri

Evolutia retelelor senzoriale

primele realizari (in timpul razboiului rece, anii 60, 70):

retele senzoriale distribuite (anii 80)

SOSUS sistem acustic de urmarire a submarinelor


AWACS sistem radar de urmarire aeriana

DARPA sistemul DSN distributed sensor network


folosea minicalculatoare din clasa PDP 11
s-au dezvoltat algoritmi de urmarirea tintelor (ex: elicoptere, pe
baza acustica, vehicole, etc.)

retele ad-hoc

functii de auto-organizare si configurare


routare dinamica
functionare intr-un mediu dinamic
consum redus de putere
exemple militare:

MEMS

SensIT, - Sensor Information technology


TASS Tactical Automated Security System

realizari actuale:

solutii comerciale: Ember Crossbow, sensoria, TinyOS, Smart


Dust
solutii pentru aplicatii de zi cu zi (non-militare)
standarde wireless:

802.11,
802.15 (PAN personal area network)
ZigBee

Smart Dust

Retele senzoriale in controlul


industrial
avantaje:

nu necesita retea fizica de comunicatie (cablu)


nu necesita retea de alimentare
instalare rapida, si flexibila
mentenanta usoara
posibilitatea detectarii unor anomalii in zone greu accesibile
pentru om detectarea unor posibile defecte, vibratii
toleranta la defecte
cost redus
dezavantaje:
interferenta cu alte transmisii fara fir; se folosesc benzi de
frecventa publice
influentat de zgomote electromagnetice

Probleme specifice
Descoperirea retelei ad-hoc

identificarea in timp-real a nodurilor si stabilirea unor trasee de


routare
testarea si reconfigurarea periodica a retelei
nodurile trebuie sa stabileasca conexiuni cu nodurile invecinate

Controlul retelei si routarea

resurse limitate la nivelul unui nod:

energie
putere de calcul
latime de banda

se cauta un optim intre puterea de transmisie radio, distanta


acoperita si redondanta retelei
algoritmul de routare este adaptat unei anumite cerinte de
optimalitate (ex: energie minima consumata, acoperire maxima,
toleranta la defecte, timp minim de transmisie, sau de refacere
a retelei in caz de defect)

Probleme specifice
Procesarea colaborativa a semnalelor si a informatiilor

culegerea unui set relevant de informatii de teren


fuziunea informatiilor generate de diversi senzori
proceduri de filtrare, mediere a semnalelor
aplicatii colaborative de urmarire (tracking) (ex: tinte, autovehicole,
avioane)

asocierea de informatii la anumote obiecte in miscare

Accesul la date distribuite

tehnici de interogare si de achizitie a datelor:

achizitii periodice
achizitii la cerere

accesul transparent la parametri de proces indiferent de adresa fizica a


nodurilor

Securitatea comunicatiei

lucreaza in mediu ostil


zgomote diverse, retea nesigura

Rezultate recente
Difuzie directionata
Urmarire distribuita(tracking)
Clasificare distribuita

Routarea in retelele senzoriale


caracteristici specifice ale retelelor senzoriale (care
afecteaza politica de routare)

numarul mare de senzori nu permite utilizarea unei scheme statice de


adresare

nodurile sunt amplasate aleatoriu (fara o regula anume)

este nevoie de tehnici de auto-organizare a retelelor formate ad-hoc

conteaza mai mult datele achizitionate si mai putin originea (adresa) lor
de cele mai multe ori achizitia de date se face printr-un punct de
acces sau statie de baza

utilizarea adresei Ip pentru routare nu este fezabila

aceasta statie face legatura dintre reteaua senzoriala si un calculator


sau o alta retea clasica (LAN, WAN)
schimbul de informatii utile intre noduri este de mai mica importanta
sau chiar lipseste
nu se stabilesc rute intre noduri ci intre statia de baza si noduri

exista restrictii severe privind:

consumul de energie (si implicit puterea si frecventa de transmisie)


capacitatea de stocare a nodurilor
capacitatea de procesare a nodurilor (o stiva de protocoale mai
complexa ar fi greu de implementat)

Routarea in retelele senzoriale


caracteristici specifice ale retelelor senzoriale (care
afecteaza politica de routare)

in cele mai multe cazuri nodurile sunt fixe ca pozitie

retelele sunt destinate pentru o anumita aplicatie

diferit de alte retele fara fir precum telefonia celulara


nu au un caracter general

locatia nodurilor este importanta pentru a stabili de unde


provine o anumita informatie

nu conteaza adresa (ID-ul) nodului dar conteaza pozitia


se poate stabili:

prin configurare initiala


cu ajutorul unui receptor GPS
prin triangulare, masurand puterea semnalului receptionat de la
vecini

datele culese au o anumita redondanta (exploatabila la routare)

utila in reducerea energiei consumate si pentru asigurarea


tolerantei la defecte

nodurile isi pot inceta activitatea in mod subit

de exemplu datorita terminarii bateriei

Routarea in retelele senzoriale


Politici de routare:

dupa modele clasice de routare folosite in alte retele


avand ca scop agregarea datelor
care urmaresc procesarea si clasificarea in retea (ex: urmarirea unei
tinte, calculul unui gradient de temperatura)
metode centrate pe date

in functie de structura retelei:

plat toate nodurile au acelasi rol


ierarhic nodurile superioare realizeaza agregarea datelor
bazat pe pozitia fizica- directionarea mesajelor catre o locatie fizica

in functie de modul de operare

cu mai multe cai


bazat de interogari
bazat pe negociere
bazat pe QoS
bazat de coerenta

in functie de tactica adoptata pentru gasirea caii:

proactiv caile se determina inainte de efectuarea transmisiilor de date


reactiv caile se determina doar la nevoie
hibrid combinatie a primelor doua

Protocoale bazate pe structura retelei


Routare plata

toate nodurile au acelasi rol


transmisie multi-hop
interogarea se face in functie de locatia/regiunea de interes

exemple:

Sensor Protocols for Information via Negotiation (SPIN)


este o imbunatatire a tehnicii flooding
informatiile sunt transmise la toate nodurile, ca si cum toate ar fi
stabii de baza; rezulta acces rapid la date
se dau nume simbolice pentru date (meta-date) si se negociaza
transmisia neredondanta a datelor
se tine cont de nivelul de energie disponibil pentru fiecare nod
3 tipuri de mesaje: ADV (advertise a data), REQ (cerere data),
DATA (data propriu-zisa):
secventa de operatii: publicarea unei noi date (ADV), cererea
datei de un nod invecinat (daca este interesat) (REQ),
trimiterea datei la nodul solicitant (DATA)
se evita transmisia datelor care nu intereseaza/redondante

Protocoale bazate pe structura retelei


Routare plata (cont.)
Directed Diffusion:

este data-centric si application-aware


statia de baza transmite (difuzeaza) in retea un anumit interes; se stabilesc
niste gradienti care marcheaza nodul invecinat de unde a venit interesul
interesul se exprima printr-o interogare; vor fi transmise doar datele care
satisfac conditia din interes
datele sunt agregate pe
parcurs (pe calea de
transmisie)

Protocoale bazate pe structura retelei


Routare plata (cont.)
Rumor routing:
varianta de Direct diffusion
interogarile se transmit numai nodurilor care au
detectat un anumit tip de eveniment; interogarea nu se
trimite prin flooding ca si in cazul anterior; nodurile
care detecteaza un eveniment formeaza un mesaj de
tip agent, care este transmis in retea; nodurile isi
noteaza evenimentele si nodurile care le-au detectat;
la interogare se contacteaza numai nodurile care au
indicat evenimentul in cauza
lucreaza bine pentru un numar mic de evenimente

Protocoale bazate pe structura retelei


Routare plata (cont.)

Minimum Cost Forwarding Algorithm (MCFA)

fiecare nod isi noteaza numarul minim de hopuri pana la statia de


baza
un nou mesaj se trimite prin broadcast la toti vecinii
la receptie se verifica daca nodul se afla pe calea minima; daca da
atunci transmite mai departe, daca nu atunci renunta

Gradient-Based Routing

varianta a Direct diffusion; la transmiterea interesului se noteaza


numarul de hopuri;
inaltimea nodului numarul minim de hopuri pana la statia de baza;
diferenta dintre inaltimile a doua noduri invecinate va da gradientul
conexiunii/legaturii dintre ele
informatia se va transmite pe legatura cu gradientul cel mai mare
se mai folosesc tehnici suplimentare de agregare a datelor si de
balansare a traficului (in cazul unor cai multiple)

Protocoale bazate pe structura retelei


Routare plata (cont.)

COUGAR

considera reteaua ca fiind o baza de date asupra careia se


formuleaza interogari
promoveaza procesarea datelor in retea
se construireste un nivel intermediar intre nivelul aplicatie si
nivelul retea, care solutioneaza interogarea
statia de baza genereaza un plan si un flux de date care
asigura solutionarea interogarii

Energy Aware Routing

o varianta de Direct diffusion, in care se mentin mai multe


canale posibile si se aleg probabilistic astfel incat sa se
mentina cat mai mult reteaua in viata; se tine cont de nivelul
de energie pe fiecare nod
reduce consumul cu 21,5% si creste durata de viata a
retelei cu 44%

Protocoale bazate pe structura retelei


Routare ierarhica
routare bazata pe clustere
util din punct de vedere al:
scalabilitatii,
eficientei energetice,
duratei de viata mai mare
principiu:

noduri cu energie mai mare (capete de cluster) preiau


traficul de la noduri cu energie mai mica

routarea vizeaza 2 probleme:


alegerea capetelor de cluster
routarea mesajelor

Protocoale bazate pe structura retelei


routarea ierarhica:

protocolul LEACH Low energy Adaptive Clustering Hierarchy

se aleg aleatoriu capete de cluster si apoi rolul este distribuit prin rotatie
celorlalte noduri, pentru a asigura consum uniform pe toate nodurile
nodul capat are rol de compactare si agregare a datelor culese din cluster
pentru evitarea coliziunilor in interiorul si exteriorul clusterului se foloseste
protocolul MAC de tip TDMA/CDMA
aproximativ 5% din noduri trebuie sa fie desemnate catete de cluster
se preteaza pentru achizitia periodica a datelor de la senzori
2 faze de lucru:

faza de configurare (setup) se stabilesc clusterele si nodurile capat aferente


faza de functionare stabila cand se transmit datele achizitionate

stabilirea clusterelor si a capetelor:

aleatoriu se desemneaza un numar de capete, la care adera celelalte noduri


pe baza puterii semnalului radio transmis/receptionat; capatul stabileste o
ordine de tip TDMA pentru interogarea fiecarui nod din cluster
mesajele agregate din cluster sunt transmise de capete la statia de baza
folosind cate un alt cod din CDMA
dupa un anumit timp se aleg alte noduri capat

Protocoale bazate pe structura retelei


routarea ierarhica:

protocolul PEGASIS - Power-Effcient Gathering in Sensor


Information Systems

varianta optimizata a protocolului LEACH


ideea de baza: dialogul se face doar cu nodurile invecinate,
transmiterea datelor la statia de baza se face alternativ de fiecare
nod, pentru a echilibra consumul de energie
obiectivul: extinderea duratei de viata a retelei si reducerea latimii
de banda necesare (prin dialog doar intre vecini)
nu se formeaza clustere
un nod isi regleaza puterea de transmisie astfel incat sa dialogeze
doar cu cel mai apropiat vecin; se formeaza un lant pana la statia
de baza
PEGASIS creste de 2 ori durata de viata a unei retele in
comparatie cu LEACH

Protocoale bazate pe locatie


nodurile sunt adresate in functie de locatie
distanta dintre vecini se poate estima pe baza puterii semnalului

emis/receptionat
coordonatele unui nod:
relative fata de vecini
absolute, pe baza unui sistem de pozitionare (ex: GPS)
Protocolul GAF - Geographic Adaptive Fidelity

protocol bazat pe locatia nodurilor si pe cunoasterea energiei


folosit si in retele ad-hoc
functionare:

reteaua se divide in zone


nodurile colaboreaza in interiorul zonelor si isi schiba rolurile
pentru reducerea consumului de energie nodurile dintr-o zona sunt
puse in starea sleep mai putin un nod care este activ;
nodul se alege prin consens;
nodul activ este responsabil pentru transmiterea datelor din zona sa

Protocoale bazate pe locatie


Protocolul GEAR - Geographic and Energy Aware Routing

utilizarea informatiei geografice in transmiterea unor


interogari ce au atribute de localitate
ideea: reducerea numarului de interese din directed
diffusion prin directionarea catre zona de interes
fiecare nod tine evidenta costului transmiterii unui mesaj prin
vecini
costul se compune din distanta pana la destinatie si energia
reziduala
exista un cost invatat care se stabileste pas cu pas in urma
transmiterii de pachete la destinatie

Protocoale bazate pe locatie


protocolul SPAN

se selecteaza noduri coordonator pe baza de locatie


nodurile coordonator formeaza un Backbone pentru
transmisia informatiilor culese
un nod devine coordonator daca:

doua noduri vecine nu se pot vedea direct, prin 1 sau 2


coordonatori

Informatica industriala

Sisteme de timp real

Consideratii generale
sistemele de control sunt in majoritatea cazurilor si sisteme de

timp-real
sisteme de timp-real = sisteme la care timpul este un parametru
important
sisteme de timp-real = sisteme care au restrictii de timp (ex.
periodicitatea executiei, timp limita de executie, intarzieri
maxime admisibile, etc.)
respectarea restrictiilor de timp prin tehnici de planificare a
taskurilor/firelor de executie
planificarea in sistemele uniprocesor solutionata din punct
de vedere teoretic solutii optime de planificare
planificarea in sistemele multiprocesor (ex. sist. distribuite)
o problema deschisa
in sistemele distribuite:
planificarea taskurilor
planificarea comunicatiei

Planificarea in sistemele de timp-real


sistemele de calcul uzuale

sisteme de tip best-effort,


nu garanteaza timpul de generare a unui rezultat corect
metodele de demonstrare a corectitudinii programului nu au in vedere
timpul
tehnicile uzuale de crestere a performantelor (cache, pipelining,
multicore, memorie virtuala) cresc gradul de nedeterminism in ceea ce
priveste timpul

sistemele de control sisteme la care timpul conteaza

nu este suficient sa se obtina un timp de raspuns cat mai bun ci sunt


necesare GARANTII de timp
nu conteaza timpul mediu de executie ci timpul maxim de executie
in cazul cel mai defavorabil:

WCET worst case execution time


WCET poate fi cu un ordin de marime mai mare decat timpul mediu de
executie

sistemele de operare de tip Windows nu ofera garantii de timp si nici


mecanisme de planificare
procesoarele Intel actuale au un comportament total inprevizibil din
punct de vedere al timpului (o instructiune se poate executa sub 1ns
sau in mai mult de 10ms => 1:10.000.000)

Concepte de baza
Definirea sistemelor de timp-real

Def.1 Un sistem de timp-real este un sistem a crui funcionare


corect este direct influenat de timp, sau mai exact de
satisfacerea condiiilor i a restriciilor de timp.
Def. 2 Un sistem de timp-real este un sistem care trebuie s
produc un rspuns ntr-un timp limitat; depirea acestui timp
duce la degradarea calitii serviciului sau la rezultate catastrofale.

In functie de caracterul critic/necritic al restrictiilor de timp:


Sistem de timp-real de tip soft - nerespectarea restriciilor de
timp produce pagube a cror valoare este comparabil cu
valoarea serviciului furnizat
Sistem de timp-real de tip hard - nerespectarea restriciilor de
timp produce pagube cu cel puin un ordin de mrime mai mare
dect valoarea serviciului furnizat
Sisteme de timp-real mixt combina caracteristicile primelor
doua sisteme

Tipuri de sisteme de timp-real


Cost

Cost

t
a

Cost

t
b

Graficul funciei de cost pentru:


-un sistem de timp-real hard (a),
-un sistem de timp-real soft (b)
-un sistem de timp-real mixt (c)

t
c

Concepte
Planificator de timp-real este o unitate de program care controleaz

lansarea n execuie, ntreruperea temporar i ncheierea unor moduleprogram pe baza unui algoritm prestabilit cu scopul de a satisface
restriciile de timp impuse

planificare off-line sau statica planul (de executie) se realizeaza


inainte de lansarea aplicatiei

planificare sigura, dar rigida, nu ia in considerare evenimentele


(scenariile) neprevazute
se foloseste in cazul unor sisteme a caror functionare este a-priori
cunoscuta
planificarea taskurilor se face pe baza de timp time driven system

planificareon-line sau dinamica planul se genereaza in timpul


executie programului

mai putin sigura dar mai flexibila, se poate adapta unor situatii
neprevazute
se foloseste pentru sisteme a caror comportament se schimba in timp sau
nu este pe deplin cunoscut
planificarea se face in functie de evenimentele aparute - event driven
system

Plan fezabil un plan generat pentru un set dat de taskuri care asigura

respectarea restrictiilor de timp

Concepte
Plan fezabil un plan generat pentru un set dat de

taskuri care asigura respectarea restrictiilor de timp


Algoritm de planificare optim - genereaz un plan
fezabil pentru un set oarecare de module-program,
ori de cte ori un astfel de plan exist

exemple:
planificator static optim: Rate-Monotonic (RM)
planificator dinamic optim: Earliest Deadline First
(EDF)

Caracteristicile de timp ale taskurilor


Taskuri periodice

executia lor se repeta in timp cu o perioada de repetitie cunoscuta


caracteristici de timp:

T perioada de repetiie
D timpul limit maxim (deadline) - timpul pn la care execuia
taskului trebuie s se ncheie
ta timp de apariie determin momentul n care taskul este disponibil
pentru execuie
C timp de execuie / calcul durata maxim a taskului
r timp de rspuns timpul n care execuia taskului se ncheie
T
C

t
ta
D

Caracteristicile de timp ale taskurilor


Taskurile aperiodice

aparitia lor este aleatorie


caracteristici de timp:

T perioada minim de repetiie (opional)


D timpul limit maxim (deadline) - timpul pn la care
execuia taskului trebuie s se ncheie
ta timp de apariie determin momentul n care taskul este
disponibil pentru execuie
C timp de execuie/calcul durata maxim a taskului
r timp de rspuns timpul n care execuia taskului se ncheie
T
r

ta

C
t

Modele de planificare

metode de simplificare a problemei de planificare

problema planificarii in cazul unor sisteme reale, fara restrictii

simplificatoare este (extrem de ) dificila (complexitate non-polinomiala)


sunt necesare restrictii sau prezumtii simplificatoare:
timp discret deciziile de planificare se iau numai la momente discrete

de timp; se foloseste o cuanta minima de timp (cmmdc)


taskuri preemptibile/non-preemtibile taskurile pot fi sau nu intrerupte
de alte taskuri mai prioritare (unii algoritmi sunt optimali numai daca
taskurile sunt total preemptibile)
timp neglijabil sau cunoscut pentru executia planificarii
timp neglijabil pentru comutarile de context
reducerea parametrilor de timp ai taskurilor- ex: D=Tp
convertirea taskurilor aperiodice in taskuri periodice creste gradul de
determinism
neglijarea altor restrictii in afara celor de timp (ex: restrictii de ordonare,
lock-uri, zone critice)

Clasificarea algoritmilor de planificare


dup momentul planificrii:
planificare static, off-line
planificarea se realizeaz nainte de
execuia efectiv a aplicaiei
planificare dinamic, off-line
planificarea se realizeaz n timpul
execuiei aplicaiei
dup natura restriciilor de timp
restricii hard
restricii soft
restricii mixte
dup numrul de procesoare:
planificare uniprocesor
planificare multiprocesor
planificare distribuit

dup preemptibilitatea taskurilor

planificare non-preemtiv
planificare preemptiv
cu preemptibilitate limitat (nu
permite ntreruperi n zona critic)
dup euristica folosit
fr prioriti
cu prioriti
dup modul de atribuire a
prioritilor
dup importana taskurilor
pe baza constrngerilor de timp
dup restriciile utilizate
numai restricii de timp
restricii de timp i de ordonare
restricii de timp i de sincronizare

Strategii de planificare
Strategii de
planificare

Sisteme uniprocesor

Alocare global i
planificare local

Sisteme
multiprocesor
Sisteme
multiprocesor

Euristici de cutare n Calcul probabilistic


arbore

Alg. bazai pe cozi de


atepatre

Strategii de planificare
Sisteme uniprocesor
Fr prioriti
Nonpreemptive

FCFS

Cu prioriti

Preemptive

RR

TD

Nonpreemptive

Prioriti pe baz de
importan

Prioriti
statice

Prioriti
dinamice

Algoritmi
euristici

Calcul
imperfect

Preemptive

Prioriti pe baz de
timp
Prioriti
statice
SIF RM

Prioriti
dinamice
EDF

HRRF
SLF

Alg. cu rezervare

Server
sporadic

Prioritate
limitat

Planificarea n sistemele uniprocesor


Planificarea fr prioriti
FCFS First Come First Served primul sosit primul
servit presupune organizarea unei cozi de ateptare
pentru taskurile ce urmeaz a fi executate; taskurile
vor fi executate n ordinea sosirii, fr s se permit
ntreruperea taskului n execuie.
RR Round Robin fiecrui task aflat n ateptare i
se aloc cte o felie de timp, ntr-o ordine circular
TD Time Division - cu divizarea timpului fiecrui
task aflat n ateptare i se aloc unul sau mai multe
uniti de timp; alocarea se face de obicei off-line.

Planificarea n sistemele uniprocesor

Planificare pe baz de prioriti

Prioriti pe baz de importan: se aloc prioriti statice


taskurilor, funcie de importana (caracterul critic) al acestora;
alocarea este subiectiv, pe baza experienei proiectantului; nu se
ofer garanii de timp
algoritmi euristici: se specific o anumit regul de alocare a
prioritilor care ine cont de importana taskurilor (ex.: algoritmi
bazai pe cost)
calcul imprecis:
algoritmi bazai pe cutare (inteligen artificial) care pot s
genereze n orice moment un rezultat parial; rezultatul este cu att
mai bun (precis) cu ct timpul avut la dispoziie este mai mare; timpul
alocat pentru cutare se determin pe baza distanei pn la timpul
limit (deadline)
exist algoritmi de prelucrare (ex.: prelucrri de imagini) care pot s
genereze n orice moment un rezultat a crui calitate depinde de
timpul utilizat; se calculeaz o funcie cost n care se include
msura calitii rezultatului i costurile datorit creterii timpului de
rspuns; se caut un optim (un minim de cost)

Planificarea n sistemele uniprocesor


Planificare pe baz de prioriti (cont.)
Prioriti pe baz de caracteristici de timp: prioritatea taskului este dat de cerinele
de rspuns n timp-real
Algoritmi statici: alocarea prioritilor este fix, nu se modific pe timpul execuiei
aplicaiei
Algoritmul Shortest Job First (SJF) - Se aloc prioritate mai mare taskurilor mai scurte,
pentru a asigura un timp de reacie proporional cu complexitatea taskului; poate duce la
"nfometarea" taskurilor lungi

Algoritmul Rate Monotonic (RM)


cel mai celebru algoritm de planificare.
Se folosete pentru planificarea taskurilor periodice;
prioritile se aloc n raport cu perioada de repetiie a taskurilor: taskul cu
perioada cea mai mic are prioritatea maxim;
este un algoritm preemptiv, adic un task mai puin prioritar poate fi ntrerupt n
orice moment de un task mai prioritar;
se consider un algoritm optimal deoarece pentru un set de taskuri gsete o
planificare fezabil dac aceasta exist;
s-a determinat limita superioar de utilizare a procesorului pentru care algoritmul
gsete un plan indiferent de caracteristicile de timp ale taskurilor

Umax = n*(2(1/n) -1)

unde:n = numrul de taskuri din set


Umax gradul maxim de utilizare a procesorului
Variante RM: Priority ceiling , Sporadic Server/ Defered Server, Algoritm cu rezervare

Planificarea n sistemele uniprocesor


Planificare pe baz de prioriti (cont.)

Prioriti pe baz de caracteristici de timp (cont.)

Prioriti dinamice: alocarea prioritilor se face n mod dinamic, n timpul


execuiei programului, pe baza restriciilor de timp care se modific n timpul
execuiei programului (ex.: timpul rmas pn la deadline)
Algoritmul Earliest Deadline First (EDF) - Prioritile se acord funcie
de timpul rmas pn la timpul limit (deadline) al fiecrui task; taskul aflat
cel mai aproape de deadline are prioritatea maxim. Acest algoritm
mbuntete gradul de utilizare a procesorului n comparaie cu metoda
RM ; de asemenea poate trata att taskuri periodice ct i taskuri aperiodice
(sporadice); taskurile se consider preemptibile (cu aceleai neajunsuri ca i
pentru RM)
Algoritmul Highest Responsive Ratio First (HRRF) Prioritatea se
calculeaz pe baza timpului de execuie i a timpului ct taskul s-a aflat n
ateptare
Prioritate = (Tateptare+Texecutie)/Texecutie
Algoritmul elimin fenomenul de nfometare
Algoritmul Shortest Laxity-time First (SLF) - Algoritmul acord
prioritate maxim taskului care are timpul disponibil (laxity time) minim; acest
timp se calculeaz ca diferena ntre timpul limit (deadline) i timpul de
execuie al taskului; este o msur a duratei pe care un task o poate petrece
n ateptare. Acest algoritm mbuntete probabilitatea de succes n
comparaie cu algoritmul EDF

Planificarea n sistemele distribuite


Dificultatea planificarii in sistemele multiprocesor:

exist constrngeri multiple, n afara constrngerilor de timp


(ex.: acces concurent la resurse, sincronizare, comunicare,
ncrcare uniform, consistena datelor i a timpului, etc.);
execuia paralel a taskurilor pe mai multe procesoare
nu se cunoate exact starea global momentan a
sistemului, datorit vitezei limitate de comunicaie n reea
(efectul de relativitate)
sincronizarea ceasurilor locale se realizeaz cu o precizie
limitat
planificarea taskurilor trebuie s se fac n corelaie cu
planificarea comunicaiei
erorile de comunicaie (pierderea conectivitii, pierderea
sau deteriorarea unor mesaje) i mecanismele de
recuperare sau de mascare nu trebuie s afecteze timpul de
rspuns garantat al sistemului
complexitate non-polinomial (NP)

Planificarea n sistemele distribuite


n principiu exist 3 strategii de planificare:
soluionarea global a problemei de planificare,

printr-un algoritm off-line; n acest caz se presupun


cunoscute toate situaiile posibile i toi parametrii de timp ai
taskurilor

alocarea static (off-line) a taskurilor pe fiecare


procesor (nod de reea) i planificare local static sau
dinamic la nivelul fiecrui nod
planificarea local cu rejecia taskurilor care duc la
suprancrcare i realocarea dinamic a taskurilor
rejectate

Sisteme distribuite de timp-real experimentale


MARS [Kopetz, 1998] - sistem time-triggered (controlat de timp), cu planificare off-line (static)

prin divizarea timpului

principiu: pentru garantarea satisfacerii restriciilor de timp toate caracteristicile de timp ale
taskurilor precum i comportamentul mediului trebuie cunoscut a-priori; planificarea se face nc
din faza de proiectare (off-line)
sistem predictibil dar rigid, cu comportare slab la modificri ale mediului exterior sau la
eventuale situaii de avarie neprevzute n faza de proiectare
are faciliti hardware i software care asigura tolerana la defecte a sistemului; un defect
singular nu afecteaz restriciile de timp

Spring - sistem event-triggered (controlat de evenimente), cu planificare on-line (dinamic)

[Stankovik, 1991]

principiu: sistemele de timp-real sunt complexe fapt pentru care nu se pot prevedea toate
situaiile posibile; de aceea sistemul este proiectat astfel nct s se adapteze uor la diferite
comportamente ale mediului
sistem flexibil, adaptiv, cu garantarea restriciilor de timp pentru situaii normale de ncrcare i
cu degradare lent a funciilor/serviciilor n caz de suprancrcare
pentru asigurarea consistenei datelor distribuite i pentru a asigura o comunicaie rapid ntre
noduri se folosete o memorie distribuit reflexiv (un set de module de memorie interconectate
printr-o reea cu fibr optic, care asigur consistena datelor la nivel hardware)

CHAOS - sistem distribuit de timp-real bazat pe programare obiectual [Gheith, 1993]


principiu: descompunerea aplicaiei n obiecte cu scopul de a controla mai bine complexitatea
sistemului
paradigma de proiectare a aplicaiei: fire de execuie ce acioneaz asupra obiectelor
funciile implementate n obiecte au timp limitat de execuie; exist un control strict al timpului la
nivelul firelor de execuie
utilizarea firelor n locul taskurilor reduce timpul necesar pentru comutarea de context

Planificarea comunicatiei
Procesul de planificare a comunicaiei este ngreunat de mai muli

factori:

planificarea transmiterii mesajelor trebuie s se fac n corelaie cu


planificarea taskurilor emitente i receptoare
decizia de planificare se ia de cele mai multe ori la nivelul fiecrui nod
n parte fr s se cunoasc gradul de ncrcare al reelei, indus de
celelalte noduri
strategiile de planificare:
controlul centralizat al accesului la reea
alocarea periodic a unei cuante fixe de timp de comunicare pentru
fiecare nod conectat n reea
limitarea gradului de ncrcare a reelei, pentru a asigura o rezerv de
timp pentru soluionarea erorilor de transmisie
limitarea dimensiunii pachetelor
alocarea de prioriti pentru mesaje, funcie de importana sau n
raport cu cerinele de timp

Planificarea comunicatiei
Retelele industriale de comunicatie:
ofera solutii proprii de planificare si de garantare a
timpului de transmisie a mesajelor:

protocolul Profibus utilizeaz un mecanism de acces la reea de tip token-bus


care permite alocarea unei cuante de timp pentru fiecare nod master din reea i o
perioad fix de repetiie a acestei alocri
protocolul WorldFIP propune utilizarea unui controlor central de reea care
asigur transferul mesajelor pe baza restriciilor de timp; pentru mesajele
periodice se utilizeaz un plan off-line, iar pentru mesajele sporadice transferul se
face pe baz de prioriti
protocolul P-Net folosete un mecanism de acces la reea pe baz de cuante de
timp; fiecare nod poate s comunice ntr-o fereastr de timp prestabilit; la acest
protocol sunt eliminate fenomenele de pierdere a tokenului, care ar putea s
afecteze timpul de livrare al mesajelor
protocolul CAN folosete un mecanism de acces la reea de tip CSMA/BA
(Carrier Sense Multiple Access with Bitwise Arbitration), care n aparen permite
un acces liber (necontrolat) la reea; n realitate prin alocarea de prioriti fiecrui
tip de mesaj i prin mecanismul de detecie a coliziunilor la nivel de bit se ofer
instrumentele necesare pentru o evaluare suficient de corect a timpului de livrare
al unui mesaj; n [Tindell, 1995] s-a propus o metod de evaluare a timpului de
livrare pentru acest protocol.

Conditii necesare si suficiente pentru asigurarea


planificabilitatii unui set de taskuri
Condiie necesar dar nu i suficient:
- bazat pe gradul de utilizare al procesorului (U)
U = Ci/Ti unde:

conditia necesara:
U<1
adic

Ci timpul de execuie al taskului ti


Ti perioada taskului ti
n - numrul de taskuri din setul dat
Ci/Ti < 1

Conditie mai restrictiva (suficienta dar nu necesara):


Ti >= Cj * Ti/Tj + Ci
unde: Ti/Tj - reprezint numrul maxim de apariii ale taskului tj ntr-o
perioada Ti ( x reprezint partea ntreag a lui x, rotunjit n sus)

Conditii necesare si suficiente pentru asigurarea


planificabilitatii unui set de taskuri
Timpul de raspuns al unui task i
ri = Ci + (ri/Tj * Cj)
ri/Tj determin numrul de lansri ale taskului j (de
prioritate mai mare dect i) pe durata timpului de
rspuns al taskului i.
Condiia de fezabilitate a planificrii cere ca pentru

fiecare task i timpul de rspuns maxim s fie mai


mic sau egal cu timpul limit:
ri < Di, pentru i=1..n

Timpul de rspuns se poate determina printr-un

calcul iterativ de forma:

ri(k+1) = Ci + (ri(k)/Tj * Cj)

Informatica industriala

Sisteme distribuite de control

Solutii distribuite in aplicatii de control


In viziune clasica:

sistem de control = sistem centralizat


argumente:

cooordonare si control unitar


determinism si predictibilitate
lant ierarhizat al responsabilitatilor

Intr-o viziune mai noua:

sistem de control = sistem complex, cu multe functionalitati


indeplinite in regim autonom, prea complexe pentru o solutie
monolit
argumente:

natura distribuita a procesului controlat si implicit a elementelor


de automatizare
fiabilitate sporita si toleranta la defecte (prin solutii redondante)
posibilitati de comunicare si control de la distanta, inclusiv prin
internet

Caracteristicile unui
sistem distribuit de control
Tipuri de distributie:

distributia echipamentelor
distributia datelor
distributia controlului (a programelor)
Sistem distribuit v.s. Sistem paralel (multiprocesor)
sistem paralel = corelatie stransa intre componente atat la nivel
fizic cat si la nivel logic

fizic: magistrala, memorie, resurse comune pentru procesoare; timp de


comunicatie neglijabil
logic: solutioneaza in paralel o anumita problema
sistem distribuit = corelare stransa la nivel logic dar relaxata la nivel fizic

fizic: conexiune prin retea (timp de comunicatie comparabil cu timpul de


procesare a datelor)
logic: sistemul rezolva a problema comuna (legatura stransa intre componentele
logice ale aplicatiei)

Sisteme distribuite v.s. Retele de calculatoare


la retele lipseste obiectivul/celul comun
la sisteme distribuite: un obiectiv comun (ex: controlul unei fabrici)

Functii specifice ale


unui sistem distribuit de control

Mecanism uniform, unitar i transparent de acces la resursele sistemului

identificarea univoca (fara ambiguitati a elementelor sistemului) prin


identificator unic (ex: adresa MAC, IP, URL, URI, etc.)
accesul (logic) la resurse prin nume simbolice

utilizarea unor standarde/protocoale de comunicatie specifice pentru


anumite dispozitive:

nivelul 8 (utilizator) la retelele industriale, cu profile definite pentru


fiecare categorie de echipamente (ex: motoare, senzori, etc.)

accesul trebuie sa mascheze redondanta datelor sau intarzierile si


erorile de comunicatie
reconfigurarea automata a sistemului in cazul inlocuirii unor
componente defecte

ex: temperatura cuptor 1 in loc de adresa fizica not+adresa registru in


cadrul nodului
asigura transferul transparent al unor functii de la un nod defect la unul
nou
mai usor de inteles pentru operatorul uman

a se vedea mecanismul de inlocuire a nodurilor la protocolul ASi

Solutie posibila: implementarea conceptului de Dispozitiv virtual de


control

modalitate uniforma de acces la resurse indiferent de natura


acestora sau de pozitia lor in sistem

Functii specifice ale unui


sistem distribuit de control
Mecanisme de sincronizare

necesar pentru cooperarea intre componentele sistemului:

controlul accesului la resurse partajate


imprimarea unor dependene ntre taskuri (inclusiv de ordonare
intre taskuri)
armonizarea unor actiuni concurente

mecanisme clasice de sincronizare:

clasice: cutii potale, indicatoare de condiie, zone critice,


monitor, etc
referinta la un ceas de timp global: prin sincronizarea ceasurilor
locale
necesar pentru ordonarea evenimentelor
stabilirea relatiilor de cauzalitate intre evenimente (care a fost
cauza si care a fost efectul)
stabilirea ordinii de accesare a unor resurse partajate (ex: FCFS
primul sosit primul servit)

Functii specifice ale unui


sistem distribuit de control
Mecanisme de replicare

necesar pentru:

cresterea fiabilitatii prin replicarea componentelor critice


cresterea vitezei de acces la date prin replicarea acestora in
mai multe puncte

Administrarea evenimentelor
sistemele de control sunt prin excelenta sisteme reactive care
raspund la diverse evenimente (ex: avertizari, avarii, etc.)

administrarea globala a evenimentelor este mult mai


complexa in cazul sistemelor distribuite (fenomenul de
relativitate, datorat vitezei limitate de transmisie a mesajelor)
solutie posibila: server de evenimente
modelarea conceptului de eveniment:

atribute: nume, conditia de generare, conditia de stergere, lista


taskurilor care trebuie atentionate, lista taskurilor care trebuie
activate, etc.

Functii specifice ale unui


sistem distribuit de control
Achiziia periodic a unor parametri de proces si

generarea de comenzi

majoritatea functiilor de control au un caracter ciclic


trebuie sa se respecte perioada de achizitie si de
generare, altfel erori de calcul

Reprezentare grafica a sistemului


vizualizarea parametrilor de proces: numeric si grafic
vizualizarea schemei logice a procesului
posibilitatea de a transmite comenzi specifice de catre
operatorul uman
vizualizarea evolutiei in timp a unor parametri de
proces si a evenimentelor

Structurarea datelor de proces


moduri de structurare:

pe baza poziiei fizice ocupate n sistem (ex.: aparin de un


anumit dispozitiv sau echipament),
pe baza unor criterii de funcionalitate (ex.: parametrii unei
bucle de reglaj s constituie o structur unic),
pe baz de importan sau prioriti
pe baza nivelului ierarhic de control de care aparin (ex.:
nivelul buclei de reglaj, nivelul coordonrii procesului sau
nivelul administrativ)
tipuri de date din punct de vedere a persistentei datelor:
date privind starea curenta a procesului (imaginea de
moment a procesului): au o valabilitate limitata in timp

se va specifica momentele in care se face achizitia si durata de


valabilitate a datelor

date privind evolutia procesului: date logate

Implementarea unei aplicatii de control


complexe
Solutia monolitica

fiecare componenta are o functie bine definita si ocupa o anumita


pozitie ierarhica
avantaje: asigura o vedere generala si unitara asupra sistemului
dezavantaje:

fiabilitate redusa, defectarea unei componente duce la oprirea


sistemului
proiectare dificila: trebuie sa se tina cont de toate aspectele pe care le
implica sistemul

Solutia distribuita:

aplicatia = set de componente autonome care indeplinesc diferite


functionalitati ale sistemului;
avantaje:

fiabilitate marita: oprirea/defectarea unei componente nu implica


oprirea celorlalte componente; pot fi construite simplu scheme
redondante si tolerante la defecte
scalabilitate: pot fi adaugate noi componente fara modificarea
componentelor existente

dezavantaje:

aplicatia trebuie descompusa in componente autonome care lucreaza


in regim concurent/paralel

Model conceptual al unui sistem distribuit


de control bazat pe servicii
Specificatii:

tipurile de servicii necesare ntr-un sistem de control


modul de interaciune a serviciilor
facilitile oferite de fiecare serviciu (interfaa serviciului)
modul de implementare a serviciilor

Principii constructive:

gruparea funciilor de control n entiti - astfel nct fiecare


entitate s poat s fie dezvoltat ca o aplicaie autonom;
reducerea fluxului de informaii ntre entiti - cu scopul de a
reduce timpul consumat pentru schimbul de date i pentru a
simplifica interfaa dintre entiti
reducerea traficului n reea - prin structurarea i amplasarea
corespunztoare a datele
replicarea datelor - pentru creterea eficienei i reducerea
timpului de reacie
reducerea numrului de nivele ierarhice, pentru a minimiza
timpul de reacie al sistemului

Model conceptual al unui sistem distribuit


de control bazat pe servicii
Principii constructive:

evitarea implementrii unor funcii de control echivalente


n mai mult de o entitate pentru evitarea inconsistenei i a
situaiilor ambigue
fiecare serviciu (entitate de control) va include mecanisme
de identificare a componentelor distribuite ale serviciului
respectiv i de reconfigurare dinamic a serviciului
se va asigura un mecanism special (simplificat) de acces la
dispozitivele cu resurse limitate
fiecare serviciu va asigura un nivel de fiabilitate, impus de
natura funciilor implementate
serviciile trebuie s includ mecanisme explicite de
administrare a informaiilor de timp
se va utiliza un mecanism unitar de acces la diferitele tipuri
de servicii

Modelul arhitectural al unui serviciu distribuit de control


Nod de reea

Nod de reea

Nod de reea

Aplicaie

Aplicaie

Aplicaie

Serviciul x

Serviciul x

Alte servicii

Alte servicii

Interfaa de
reea

Interfaa de
reea

Serviciul x
Alte servicii

........

Interfaa de
reea

Interfaa de
reea

Interfaa de
reea

Executiv

Executiv

Aplicaie

Aplicaie

....

Noduri cu resurse limitate

Interfaa de
reea
Executiv
Aplicaie

Modelul arhitectural al unui serviciu


distribuit de control
Principii de functionare:

Un serviciu este suma serviciilor locale de acelai tip implementate la nivelul


fiecrui nod de reea.
Un serviciu local interacioneaz cu celelalte servicii n vederea ndeplinirii
funciilor specifice de control.
O aplicaie de control dezvoltat deasupra serviciilor de control interacioneaz
direct cu serviciul local n vederea obinerii funciei dorite.
Dac aplicaia solicit accesul la o resurs dintr-un alt nod al reelei atunci
solicitarea este rezolvat de serviciul local, prin dialog cu serviciul echivalent din
nodul unde se afl resursa.
Din considerente de eficien i timp de execuie, n anumite cazuri aplicaia
poate s ia legtura direct cu serviciul local al nodului vizat.
Anumite dispozitive a cror resurse computaionale nu permit implementarea
local a tuturor serviciilor, vor fi integrate n sistem prin intermediul unor noduri
de administrare (noduri proxi).

Aceast soluie este adecvat n multe aplicaii de control, unde un dispozitiv de


complexitate medie (ex.: regulator, controlor logic programabil) poate s
gestioneze un set de elemente mai simple de automatizare (senzori i elemente
de execuie).
ntre nodul proxi i nodurile simple va exista un protocol de comunicaie
simplificat, mai uor de implementat ntr-un microsistem minimal. Nodul proxi va
gestiona toate resursele nodurilor simple care i-au fost ataate.

Modelul arhitectural al unui serviciu


distribuit de control
Definirea serviciilor de control:

serviciul de timp
serviciul de replicare
serviciul de gestiune a resurselor
serviciul de gestiune a evenimentelor
serviciul de planificare a taskurilor
serviciul de configurare i alocare a sarcinilor
set de componente grafice pentru interfaa
utilizator

Modelul arhitectural al unui serviciu


distribuit de control
Aplicaia de control

Componente grafice

Gestiunea
evenimentelor

Serviciul de timp

Serviciul de
configurare
Gestiunea
resurselor

Serviciul de
planificare

Serviciul de replicare

Interfaa de reea (nivelele 1-4)

Structura ierarhic a serviciilor de control la nivelul unui nod de reea

Serviciul de timp

functia principala asigurarea unei referinte unice de timp pentru intregul sistem
necesara pentru:

sincronizarea componentelor
lansarea unor taskuri periodice
stabilirea relatiilor de cauzalitate intre evenimente

mecanisme de sincronizare a ceasurilor locale:

solutie centralizata - algoritmul lui Christian

solutie distribuita se genereaza o referinta de timp ca o medie a


ceasurilor locale

server central de timp care rspunde aplicaiilor client care solicit o


referin de timp
se tine cont de timpul mediu de transmisie a mesajului de sincronizare;
se calculeaza si precizia de sincronizare
periodic se genereaza cereri de resincronizare
mai fiabil decat varianta centralizata

la aplicatiile de control: ajustarea ceasului local se va face treptat (in


cuante de ajustare adaptate preciziei de calcul a agoritmului de reglaj)
si niciodata nu se va da ceasul inapoi; altfel erorile de calcul pot genera
comenzi gresite (ex: la regulator cu factor derivativ)

Serviciul de replicare

functia principala: evidenta resurselor replicate si asigurarea consistentei


acestora
necesitatea:

pentru a asigura toleranta la defecte prin multiplicarea elementelor


critice
pentru a inbunatati timpul de acces la anumite resurse

ce se replica:

resurse fizice: senzori, elemente de calcul, elemente de stocare


servicii de control: serviciu de gestiune a evenimentelor, serviciu de
acces la date, etc.

serviciul este responsabil pentru:

identificarea dispozitivelor conectate n sistem


identificarea resurselor de care dispune fiecare dispozitiv al
sistemului
configurarea i alocarea sarcinilor
detecia defectelor i mascarea acestora prin reconfigurarea
sistemului

Serviciul de gestiune a resurselor

functia de baza: de a asigura un acces uniform, unitar i transparent la resursele


distribuite ale sistemului
serviciul este responsabil pentru:

determinarea componentelor sistemului i a configuraiei acestora (dispozitive fizice,


componente program, etc.)
determinarea parametrilor de proces disponibili
achiziia i stocarea periodic a valorilor parametrilor de proces
transmisia periodic de comenzi ctre elementele de execuie
citirea i scrierea aleatoare a unor parametri, la solicitarea expres a aplicaiei de
control
marcarea datelor achiziionate cu o referin de timp i verificarea perisabilitii
datelor
meninerea unei baze de date cu imaginea curent a procesului controlat
nregistrarea evoluiei unor parametrii de proces, specificai de aplicaia de control

Model conceptual bazat pe ideea de Dispozitiv virtual de control

promovat de standardul MMS (Manufacturing Message Specification)


dispozitiv virtual de control = obiect care grupeaz un set de resurse, organizate sub
forma mai multor liste.
Fiecare list grupeaz resurse de un anumit tip (ex: variabile de proces, proceduri,
evenimente).
un dispozitiv virtual modeleaz un dispozitiv real i grupeaz resursele acestuia.
exist posibilitatea gruprii unor resurse n raport de funcionalitatea pe care o
ndeplinesc n sistem.

Serviciul de gestiune a evenimentelor


functii de baza:

detectarea evenimentelor
notificarea unor componente privind aparitia unor evenimente
inregistrarea evenimentelor
lansarea de taskuri ca reactie la un anumit eveniment

serviciul va gestiona numai evenimentele care au fost definite in

prealabil !!!

definirea unui eveniment:

o expresie logic alctuit din variabile de proces i constante, care,


dac este adevrat determin apariia unui eveniment
un anumit comportament privind marcarea apariiei, pstrarea i
tergerea evenimentului
o list de taskuri care trebuie notificate la apariia evenimentului
o list de taskuri care trebuie activate n urma apariiei unui evenimen

detectia evenimentelor:

pe baza de intreruperi si rutine de tratare a intreruperilor


modul special de verificare periodica a conditiilor de activare
prin receptia unui mesaj care indica un anumit eveniment

Serviciul de planificare a taskurilor


functia de baza: lansarea n execuie a

taskurilor unei aplicatii, cu respectarea


restrictiilor de diferite tipuri (de timp, de
sincronizare, de ordonare, etc.)
strategii de planificare (a se vedea cursul anterior):

fara prioritati: FCFS, RR


cu prioritati:

in functie de importanta
in functie de restrictiile de timp: RM, EDF, SLF

Serviciul de configurare i alocare a sarcinilor


functia de baza: configurarea sistemului de control in regim dinamic
rolul: adaptarea unei configuratii generice la particularitatile unui proces

tehnologic
ce se configureaza:

numarul si tipul dispozitivelor conectate in sistem


functia fiecarei componente
parametrii asociati dispozitivelor fizice
limite admisibile si limite de avertizare/avarie
scheme de inlocuire automata a dispozitivelor defecte
tipurile de evenimente acceptate in sistem
frecventa de achizitie a datelor

alocarea sarcinilor tine cont de:

disponibilitatea componentelor de a indeplini o anumita functie


gradul de incarcare a dispozitivelor
restrictiile de timp impuse

Set de componente grafice pentru


interfaa utilizator

functii de baza:

Tipuri de elemente grafice:

vizualizarea grafica a datelor


transmiterea de comenzi ale operatorului uman
obiect grafic simplu obiect care nu se conecteaz la o variabil de proces, are doar rolul
de a sugera imaginea real a unei componente de proces (ex.: cabluri de legtur, conducte,
rezervoare, etc.)
variabil digital de intrare obiect care reprezint starea unui senzor bipoziional
variabil digital de ieire obiect care reprezint starea unui element de execuie
bipoziional
variabil analogic de intrare obiect care reprezint un senzor analogic
variabil analogic de ieire obiect care reprezint un element de execuie controlat
printr-un semnal analogic
grafic obiect care reprezint evoluia n timp a unei variabile de proces

atributele unui obiect grafic:

o list de imagini care simbolizeaz o component fizic de proces, n mai multe stri
o referin ctre o variabil de proces a crei valoare sau stare se vizualizeaz
o valoare de afiare care pstreaz valoarea afiat
o variabil de stare care indic dac obiectul este vizibil sau nu
o referin ctre o funcie de vizualizare care genereaz imaginea obiectului grafic
o referin ctre o funcie de conversie care transform valoarea variabilei de proces
ntr-o valoare de afiare
o referin ctre o funcie de modificare a valorii variabilei de proces
alte atribute i funcii specifice pentru diferite tipuri de obiecte

Ce se urmareste prin modelul distribuit propus?


fiabilitate ridicat prin caracterul distribuit al serviciilor
scalabilitate prin posibilitatea adugrii de noi servicii pe lng

cele existente, fr modificarea celor existente


reconfigurabilitate dinamic prin identificarea automat i
periodic a configuraiei de sistem i realocarea dinamic a
sarcinilor n cazul unor defeciuni
toleran la defecte prin existena unor componente
redondante i prin reconfigurarea automat a sistemului n caz
de defect
timp de reacie mai scurt prin distribuirea inteligenei i a
responsabilitii decizionale
transparena comunicaiei n reea prin funcii de acces la
resursele distribuite oferite de serverul local

Informatica industriala

Sisteme informatice industriale

Obiective
integrarea diferitelor componente functionale ale unei unitati

productive intr-un sistem informatic unitar


facilitatea schimbului de informatii intre compartimente
functionale
achizitia, stocarea si vizualizarea in timp-real a informatiilor ce
vizeaza activitatile unei intreprinderi
control mai bun al resurselor (materiale, financiare, umane);
informatia in sine devine o resursa de valoare (eng. asset)
suport pentru decizii manageriale
cale de optimizare a proceselor: reducerea costurilor, cresterea
productivitatii, utilizarea mai eficienta a resurselor
eliminarea informatiilor si a activitatilor conexe (achizitie,
stocare, procesare) redondante
flexibilitate si mobilitate in procesele de fabricatie prin
posibilitatea reconfigurarii dinamice a fluxurilor de productie
o mai buna adaptare la piata

Evolutia conceptului de
sistem informatic industrial
firma industriala = retea de activitati ce se interconditioneaza reciproc si

care interactioneaza intre ele

interactiune = schimb de informatii

primele realizari (anii 1960-70) aplicatii specifice pentru fiecare tip de

activitate:

evidenta materialelor (gestiunea materialelor),


evidenta personalului (pontaj si salarizare)
evidenta contabila,
lansarea in productie si evidenta costurilor de fabricatie
controlul proceselor de fabricatie, etc.
evidenta proceselor de intrare/iesire (aprovizionare si desfacere

MRP Material Requirements Planning

planificarea productiei si a necesarului de materiale pe baza


comenzilor existente

MRP II varianta extinsa a MRP

adauga planificarea capacitatilor de productie si a personalului

Evolutia conceptului de
sistem informatic industrial (continuare)

ERP Enterprise Resource Planning

extensie a MRP prin functii suplimentare:

managementul calitatii
vinzare si distribuite
managementul personalului
managementul proiectelor

extensii in afara firmei:

managementul lantului de aprovizionare (supply chain)


comunicatia inter-firme (B2B business to business)
comert electronic
MES - Manufacturing Execution System

se ocupa de urmarirea productiei (ERP se ocupa numai de planificarea


productiei)

Functii de baza:

dispecerizarea si monitorizarea productiei


planificarea detaliata a fazelor/proceselor de productie
achizitia si stocarea datelor de productie (imagine de moment a starii
procesului de fabricatie
analiza calitatii productiei
inregistrarea pe termen lung a datelor de productie

Fluxul de informatii intr-un sistem


informatic de intreprindere
Comenzi

Previziuni
Retete de
fabricatie

Inventarul de
materiale

Planificare

Cereri de
materiale

Necesarul de
materiale si
echipamente

Bonuri de
consum

Urmarire
operativa

Rapoarte
economice

Rapoarte de
productie

Inventarul
capacitatii de
productie

MRP/ERP

Plan de
productie

Pontaje

MES

Structura ierarhica a unui


sistem informatic industrial
Nivelul 5 Distributie
Nivelul 4 Intreprindere
Nivelul 3 Proces de
fabricatie
Nivelul 3 Celula/linie
de fabricatie
Nivelul 3 Echipament
de fabricatie

Transport
Control lant de distributie
Previzionare cereri
Procesare comenzi
Aprovizionare
Planificare generala
Contabilitate
Admin. materialelor
Mentenanta
Planificare locala
Controlul calitatii
Coordonare/secventiere activitati
Monitorizare si control
Managementul evenimentelor
Control digital
Reglaj in bucla
Senzori si elemente de actionare

ERP

MES

DCC,
SCADA

DCS Direct Computer Control


SCADA Supervisory Control and Data Acquisition

Ierarhizarea pe baza nivelelor de comunicatie


Comunicatia
in lantul de
distributie

Baza de date
a
intreprinderii

Comenzi

Achizitii Contabilitate Inginerie Proiectare

Comunicatia
la nivelul de
Business

Aplicatie de Monitorizare si control


Retea locala industriala

Comunicatia
la nivelul
productiei

Componentele unui sistem informatic


industrial (SII)
Managementul relatiei cu clientii
Managementul realizarii comenzilor
Managementul depozitelor
Managementul calitatii
Managementul resursei umane (personal)
Managementul contabil si financiar
Managementul distributiei si a lantului de

aprovizionare

Managementul relatiei cu clientii


contine o BD si o aplicatie care:
tine evidenta clientilor
administreaza vanzarile
face marketing
ajuta clientii in utilizarea produselor (hotline)
gestioneaza garantia si eventualele reparatii
monitorizeaza starea comenzilor
starea de fabricatie (in asteptare, lansat in productie,
produs finit, produs livrat)
starea platiilor (neplatit, partial platit, leasing, etc.)
monitorizeaza frecventa comenzilor in vederea
adoptarii unor strategii de vanzare sau de productie
(ex: previzionare productie, reclama selectiva si
directionata)

Managementul realizarii comenzilor


o functie de baza a SII ce incorporeaza urmatoarele:

primirea comenzilor
controlul fazelor de productie
aprovizionarea
managementul inventarului de materiale
livrarea

Managementul depozitelor
tine evidenta materiilor prime, a semifabricatelor si a produselor

finite
functii:
codarea unica a tipurilor de materiale
evidenta cantitativa si valorica a materialelor
evidenta starii materialelor (ex. termen de valabilitate,
conditii de pastrare)
evidenta miscarii materialelor si a transformarilor suferite
genereaza rapoarte privind materialele disponibile si
necesarul de materiale
probleme de evidenta:
aceleasi produse achizitionate la preturi diferite
deteriorarea unor produse, imbatranirea morala

Managementul calitatii
sistem de verificare, documentare si garantare a calitatii

produselor
implementeaza standarde de evidenta a calitatii produselor (ex:
ISO 9001)
asigura etichetarea unica a produselor, inregistrarea conditiilor
de productie si a parametrilor de functionare
verificarea calitatii:
individual pe fiecare produs
verificare statistica pe loturi de produse
trasabilitatea produselor:
sistem care permite refacerea lantului de productie si livrare
a produselor, in vederea identificarii unor surse de risc
deosebit de important in industria alimentara (vezi
standardul HACCP)

Managementul resursei umane


(personal)
Aceasta componenta se ocupa de:
administrarea datelor privind angajatii:
date de identificare
date demografice
data privind calificarea si nivelul de salarizare
evidenta pontajelor si a salarizarii personalului
in acord cu reglementarile in vigoare (in permanenta
modificare)
calculul contributiilor si a impozitelor (fond de pensii,
CAS, somaj, ajutorare handicapati, impozit pe salar)
evidenta diverselor sporuri (conditii periculoase, stres,
vechime, de conducere, de confidentialitate, etc.)
evidenta concediilor
evidenta programelor de perfectionare a personalului

Managementul contabil si financiar


realizeaza evidenta contabila a intreprinderii

in conformitate cu reglementarile in vigoare:

evidenta dubla: analitic si sintetic


evidenta veniturilor si a cheltuielilor
evidenta fluxurilor de numerar si a lichiditatilor
evidenta incasarii facturilor
plata periodica a impozitelor, accizelor si a
contributiilor
generarea de rapoarte periodice catre
Finantele statului

Managementul distributiei si a lantului


de aprovizionare

tine evidenta produselor pe lantul de achizitie si vanzare


verigile unui lant de achizitie si vanzare:

functii:

furnizor
linia de fabricatie
centru de distributie central
centru de distributie regional
centru de distributie local
firma intermediara de vanzari
consumator

urmarirea comenzilor prin distribuitori


managementul depozitelor pe lantul de aprovizionare
urmarirea produselor in punctele de vanzare
schimbul de informatii in lantul de aprovizionare
optimizarea stocurilor

metode de evidenta automata a produselor:

cod de bare
sistem RFID
sisteme standardizate de identificare unica a produselor

Sistem suport pentru decizii


foloseste informatii din SII in vederea generarii de

prognoze si informatii sintetice necesare in procesul


de luare a deciziilor
se utilizeaza diversi algoritmi de procesare statistica,
analiza si prognozare a evolutiilor viitoare
se folosesc modele de predictie, de simulare,
planificare, etc.
tehnici de inteligenta artificiala pentru:

identificarea unor modele (patternuri)


evaluarea diferitelor scenarii posibile (tehnici de
cautare)
luarea unor decizii pe baza unui set de reguli indicate
empiric sau generate in urma unui proces de invatare
(ex: logica Fuzzy)

Clasificarea proceselor de fabricatie


in functie de modul de realizare a produselor si de posibilitatile

de modelare informatica se disting 3 tipuri de procese de


fabricatie:
procese mecanice de fabricatie

procese fizico-chimice de alta natura decat cele mecanice


(ex: realizarea de produse chimice, alimentare,
farmaceutice, etc.)

produsele se obtin prin transformari mecanice (ex: turnare,


aschiere, deformare, asamblare, etc.)

produsele se obtin prin transformari cu preponderenta chimice

procese generatoare de servicii sunt firme care furnizeaza


unul sau mai multe servicii, ca de exemplu:

servicii financiare,
servicii medicale sau de analiza
servicii de comunicatie, transport
servicii de logistica

Procese mecanice de fabricatie


moduri de organizare a

procesului de fabricatie:
functionala sau job shop
linie de fabricatie
celula de fabricatie
sistem flexibil de productie

Procese fizico-chimice
in functie de modul de realizare in timp a

produselor se clasifica in:

procese continue de fabricatie

flux continuu de materii prime si de produse finite


exemple: productia de energie electrica, termica,

procese de fabricatie in loturi (batch)

productia se desfasoara in sarje, cicluri,


un ciclu necesita o anumita compozitie de materii
prime (reteta) si se genereaza un numar
predefinit de produse finite

Procese generatoare de servicii

S-ar putea să vă placă și