38
Obradi digitalnih signala i DSP Primena mikroprocesora u energetici

Obradi digitalnih signala i DSP - Katedra za Energetsku ... DSP... · Mikrokontroleri su optimizirani za manipulisanje podacima, čitanje, logičke operacije, postavljanje izlaza,

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Obradi digitalnih signala i DSP

Primena mikroprocesora u energetici

Kako i zašto je nastao digitalni signali procesor (DSP)

� Mikrokontroleri su optimizirani zamanipulisanje podacima, čitanje, logičke operacije, postavljanje izlaza, rad sa bitovima� Kontrola raznih industrijski procesa

Razlika izmeñu mikroprocesora i DSP

DSP i procesiranje digitalnih signala 3/30

� DSP su optimizirani za matematički račun potreban u procesiranju digitalnih signala. � Telekomunikacije ���� račun digitalnih filtera � Kontrola motora ���� račun digitalnih zakona upravljanja

)(...)2()(

)(...)(.)()(

21

21

mTkTybTkTybTkTyb

nTkTxaTkTxakTxakTy

m

n

−++−+−+−++−+=

Tipična jednačina procesiranja dig. signala

x(kT) – odbirak ulaza u k-toj periodiy(kT) – odbirak izlaza u k-toj periodi

Svaka jednačina koju treba rešiti se u digitalnoj tehnologiji svodi na množenje i akumulaciju

Digitalni

filter

T T x(t) x(kT) y(kT)

DSP i procesiranje digitalnih signala 4/30

Da bi se ovo brzo rešilo neophodno je• u isto vreme čitati program i konstante sa jedne

strane, i promenjive sa druge strane • brzo množiti, akumulisati (sabirati sa predhodnim

odbirkom) i pomerati podatke

b1..bm – koeficijenti imenioca dig. filtra a1..an – koeficijenti brojioca dig. filtra

filter

DSP novost br1. Razlika arhitektura uP i DSP

DSP i procesiranje digitalnih signala 5/30

U jednom ciklusu clocka pročitaj programsku const ili sledeću instrukciju ali i promenjive

Koliko magistrala/memorija podataka? 1/2

Jedinica zagenerisanje

adresa

MEMORIJAPODATAKA

Von Neumann -JEDNA MAGISTRALA

Tipična operacija koja se realizuje u DSP-ovima:

....]2[]1[][][ 210 +−+−+= nxanxanxany

Organizacija podataka:

a0

DSP i procesiranje digitalnih signala 6/30

Obrada podataka

magistrala podataka

a0x(n)a1

x(n-1)a2

x(n-2)

.

.

.PROBLEM: Jedna magistrala usko grlo u propusnoj moći uC

Koliko magistrala/memorija podataka? 2/2

Jedinica zagenerisanje

adresa

MEMORIJAPODATAKA

MEMORIJAPODATAKA

Jedinica zagenerisanje

adresa

REŠENJE!!

DVE MAGISTRALE

Organizacija podataka:

DSP i procesiranje digitalnih signala 7/30

Obrada podataka

magistrala podataka

magistrala podataka

a0 x(n)a1 x(n-1)a2 x(n-2)

.

.

.

.

T

vreme

( ) nBAACCACC <<⋅+=

DSP novost br2. MAC operacija

MAC unit- multiply and accumulate unit

ACC – akumulatorA, B – operandi (ulazi) << – pomeranje ulevo za n (udesno za n negativno)

DSP i procesiranje digitalnih signala 8/30

Operacija koja se izvršava u jednom ciklusu clocka• Pročitaj A i B paralelno• pomnoži ih• Ako treba, pomeri bitove rezultata (shift) • Akumuliši (saberi sa prethodnim ACC).

DSP novost br3 i br4.

Pipeline operacija

Hardware loop counters

DSP i procesiranje digitalnih signala 9/30

Hardware loop counters

Ovo ne znači da samo DSP može da procesira signale i računa digitalne zakone upravljanja.

Ovo samo znači da je DSP u tome brži!

Digitalnu kontrolu može da radi bilo koja programabilna komponenta (i uC i uP ili PC),

Pažnja !

DSP i procesiranje digitalnih signala 10/30

programabilna komponenta (i uC i uP ili PC), samo što je DSP načinjen tako da to radi brže.

Ako vam treba nešto da procesira signale brže i od DSP, onda koristite FPGA komponentu.

Ali, princip procesiranja signala je uvek isti !

Pre digitalne, jednom davno beše analogna obrada signala …

)()()()( sXsWsXs

KsKsY ip =

+=

Za kontinualne signale imamo funkciju prenosa u s-domenu (Laplasova transformacija) ili jωωωω-domenu (Furieova transformacija), svodi se na isto:

Kako se procesira kontinualni signal?

S=jωωωω

DSP i procesiranje digitalnih signala 12/30

s

W(s) x(t) y(t)

Prenos determinističkih signala kroz liniju

Linearna mreža x(t) y(t)

Za linearnu mrežu važi: Ako ulazni signal x(t) daje izlazni signal y(t), onda važi

∑∑ =⇒=nn

DSP i procesiranje digitalnih signala 13/30

∑∑==

=⇒=i

iii

ii tyatytxatx11

)()()()(

Ovo u suštini znači da neće biti interferencije izmeñu pojedinih signalnih harmonika i da se uticaj mreže na prenos svakog pojedinačnog harmonica može posmatrati nezavisno.

Prenos determinističkih signala kroz liniju

Linearna mreža H(jω)

x(t)=ejωt y(t)=H(jω)ejωt

Za opis uticaja mreže na pojedine harmonike, uvodimo kompleksnu funkciju prenosa mreže H(jωωωω).

Za signal x(t) važi FT ∫∞

∞−

= ωωπ

ω dejXtx tj)(2

1)(

ωω ω dejX tj)(1Na jedna usku komp. signala x(t),

DSP i procesiranje digitalnih signala 14/30

ωωπ

ω dejX tj)(2

1

ωωωπ

ω dejXjHdy tj)()(2

1=

)()()( ωωω jXjHjY =

Na jedna usku komp. signala x(t), t.j. njegov harmonik na ωωωω

deluje mreža sa H(jωωωω)

Za lin. mrežu važi izlaz je jednak sumi ovih komponenti

∫∞

∞−= ωωω

πω dejXjHty tj)()(

2

1)(

Prenos determinističkih signala kroz liniju

Sada imamo alat za opis uticaja linije

H(jω) X(jω) Y(jω)

Primer za RC kolo

x(t) y(t)

HRC(jω)

R C

ZRZ

ZZ

ZjH RC ω

1,

,)(

21

21

2

==

+=

DSP i procesiranje digitalnih signala 15/30

R C

CjZRZ

ω1

, 21 ==

01

1)(

ωωω

jjH RC

+=

Funkcija prenosa kola

Daje vezu spektra ulaznog i izlaznog signala

)(1

1)()()(

0

ω

ωωωωω jX

jjXjHjY RC

+==

Prenos determinističkih signala kroz liniju

Uticaj RC kola na HF i LF

0)(

1)(

0

0

≈⇒>>≈⇒<<

ωωωωωω

jH

jH

RC

RC

01

1)(

ωωω

jjH RC

+=

ubija HF

pušta LF

20log |H (jω)}

)()()( ωωω jXjHjY RC=

DSP i procesiranje digitalnih signala 16/30

20log |HRC(jω)} ω0

Prenos determinističkih signala kroz liniju

Uticaj RC kola na pravougaoni signal

0

1

t(s)

T=1/50Hz

f0=500Hz

0.6

0.8

1

1.2

1.4

0

1

t(s)

T=1/50Hz

f0=50Hz

0.6

0.8

1

1.2

1.4

0

1

t(s)

T=1/50Hz

f0=5 Hz

0.6

0.8

1

1.2

1.4

DSP i procesiranje digitalnih signala 17/30

50Hz signal i 500 Hz filter prvog reda

0 0.01 0.02 0.03 0.04

-1

1 3 5 7 9 11 13 15 17

0.2

0.4

50 150 250 350 450 550 650 750 850 Hz

No

50Hz signal i 50Hz filter prvog reda

0 0.01 0.02 0.03 0.04

-1

1 3 5 7 9 11 13 15 17

0.2

0.4

50 150 250 350 450 550 650 750 850 Hz

No

50Hz signal i 5Hz filter prvog reda

0 0.01 0.02 0.03 0.04

-1

1 3 5 7 9 11 13 15 17

0.2

0.4

50 150 250 350 450 550 650 750 850 Hz

No

DSP je namenjen procesiranju diskretnih signala, kako se prenos tihsignala analizira ?

Kontinualni signal treba prvo odabrati i pretvoriti u povorku impulsa diskretnu u vremenu:

Diskretni signal? Šta je to ?

x(t)

x(kT)= x(t)δ(kTs)

kTs-Ts kTs kTs+Ts

x(kTs)

kTs-Ts kTs kTs+Ts

δ(kTs)

kTs-2Ts kTs-2Ts t

t

DSP i procesiranje digitalnih signala 19/30

Povorka impulsa ili još bolje povorka pravougaonikapošto pamtimo istu vrednost do sledećeg odabiranja

s s

x(t)

x(kT)

t, kT

T 2T 3T

x(t) → x (kT) , k=0, 1, 2…

Koristan kontinualni x(t)uvek ima ograničeni spektar

+fmax -fmax

X(f)

f (Hz)

∑∑∞

−∞

=−= fnTi π2

A šta je sa spektrom diskretnog signala x(kT)? Odmah nam je sumnjiv, ima beskonačno oštre ivice!!!!! Stvarno, nakon mnogo matematike:

Kakav je spektra diskretnog signala?

DSP i procesiranje digitalnih signala 20/30

∑∑−∞=

−∞==−=

n

fnTis

kss

senTxTkffXfX π2)()()(

+fmax -fmax

X(f)

f (Hz) fs+fmax fs-fmax -fs+fmax -fs-fmax -fs +fs

Dobijamo da se spektar dig. signala beskonačno ponavlja na frek. Nfs , samim tim i on je beskonačan!

Suštinsko pitanje: Ako signal x(t) uvek ima ograničeni spektar,

∫+∞

∞−−= dtetxfX fti π2)()(

+fmax -fmax

X(f)

f (Hz)

Izbor vremenske periode odabiranja

kada će njegovi odbirci x(kT) dovoljno verno da ga predstavljaju ?

DSP i procesiranje digitalnih signala 21/30

Nyquist- Shannon teorema odabiranjaSignal x(t) sa ograničenim spektrom (za f>fmax,X(f)=0) potrebno je odabirati frekvencijomodabiranja fs za koju važi

max2 ffs ≥max2

1

fTs ≤

predstavljaju ?

+fmax -fmax

X(f)

f (Hz) fs+fmax fs-fmax -fs+fmax -fs-fmax -fs +fs

Produkt dobrog (sa dovoljno malom Ts) odabiranja x(t) jexs(kTs) čiji spektar se ne preklapa !

Objašnjenje teoreme odabiranja preko spektra

DSP i procesiranje digitalnih signala 22/30

x(t)

kTs-Ts kTs kTs+Ts

x(kTs)

kTs-Ts kTs kTs+Ts kTs-2Ts kTs-2Ts t

t

Nisko-propusni filter

Ako je Ts bilo dovoljno malo (fs > 2fmax), moguća jerekonstukcija x(t) iz xs(kTs)

Komponente spektra izboličenog signala xs(kTs) sepreklapaju i deo informacija je nepovratno izgubljen !

+fmax -fmax

X(f)

f (Hz)

fs+fmax fs-fmax -fs+fmax

-fs-fmax -fs +fs 2fs-fmax -2fs+fmax

-2fs 2fs

Objašnjenje teoreme odabiranja preko spektra

DSP i procesiranje digitalnih signala 23/30

x(t)

kTs-Ts kTs kTs+Ts

x(kTs)

kTs-Ts kTs kTs+Ts

δ(kTs)

kTs-2Ts kTs-2Ts t

t

xr(t) Nisko-propusni filter

Ako je Ts bilo nedovoljno malo (fs < 2fmax), nemoguća jerekonstukcija x(t) iz xs(kTs)

Diskretizacija funkcije prenosa, prelazak u z-domen

Kako se procesira diskretni signal?

Za analizu prenosa diskretnih signala se koristi Z transformacija. Ovom transformacijom se signali i funkcije prenosa prebacuju u z-domen u kome se dalje analiziraju kao diskretni.

Diskretizovali smo kontinualni signal sa dovoljno malom periodom odabiranja tako da informacija nije izgubljena. Njega treba dalje obraditi.

DSP i procesiranje digitalnih signala 25/30

W(z) y

T T

x(kT) y(kT)

Funkcija prenosa sistema je sada u z-domenu :W (s) ���� W (z)

dalje analiziraju kao diskretni.

)(1

)( sXs

sY =

∫−

+−=kT

TkT

dttxTkTykTy )()()(

x(t) y = ∫ x(t)dt

Diskretni integrator u z-domenu: Imamo x(kT) treba nam y(kT) kao površina?

Integrator u s-domenu:

Diskretizacija fun. prenosa, prelaz u z-domen

Primer rešavanja integrala (površina ispod krive)

dttxyty )()( 0 ∫+=

DSP i procesiranje digitalnih signala 26/30

x(t)

x(kT)

T 2T 3T 4T

y = ∫ x(t)dt

T x(T)

TTkTxdttxkT

TkT

)()( −=∫−

TkTxdttxkT

TkT

)()( =∫−

Glavna ideja x(t) ≈≈≈≈const tokom T !!!!

Površinu ispod x(t), na intervalu T, aproksimiramopravougaonikom, smatrajući x(t) konstantnim u tomintervalu. Ovo je dovoljno tačno uz pretpostavku da sesignal x(t) ne menja značajno unutar intervala T. Ili, daspektra signal x(t) nema značajne spektralnekomponente iznad 1/2T učestanosti (Nyquistovkriterijum).

Diskretizacija fun. prenosa, prelaz u z-domen

DSP i procesiranje digitalnih signala 27/30

TTkTxdttxT

TkT

⋅−≈∫−

)()(

TkTxdttxT

TkT

⋅≈∫−

)()(

Poznajemo vreme, tj perioduodabiranja, T. Imamo i levi idesni odbirak signala. Dodatakna površinu (integral)možemoaproksimirati i sa jednim i sadrugim.

TTkTxTkTykTy ⋅−+−= )()()(

Postoji prost prelaz iz diskretne jednačine udiskretnu funkciju prenosa u z domenu.

Operator z -N predstavlja kašnjenje od N perioda.

zkT →

Diskretna jednačina integratora – levi odbirak

DSP i procesiranje digitalnih signala 28/30

TzxzzyzzyzkT

⋅+=→ −−→

)()()( 11

( ) TxzzyTxzyzy 1111 1 −−−− =−→⋅+=

xz

Tx

z

Tzy

11 1

1

−=

−= −

T

zs

xs

y

xz

Ty 1

11 −≈→

=−

= Pri aproksimaciji korišćen levi odbirak, znači to je levi Euler.

zs

1−≈

Metoda Aproksimacija

Euler (levi)

Diskretna jednačina integratora – levi odbirak

DSP i procesiranje digitalnih signala 29/30

T

zs

1−≈

zT

zs

1−≈

1

12

+−≈

z

z

Ts

Euler (desni)

Tustinova (bilinearna transformacija)

Diskretizacija kontinualnih funkcija prenosa, s ���� z

)()( sxs

KsKsy

ip +=

( ) ( )( ) )(1)(1 111 zxTKzKzzyz ip−−− +−=−

)(1

1

)( zx

T

z

KKT

z

zyipzs

+−

=→→Gde god vidiš s, ti

(z-1)/T posadi

Primer PI regulatora, kome znamo f. prenosa

DSP i procesiranje digitalnih signala 31/30

( ) )()()()()( TkTxTKTkTxkTxKTkTykTy ip −+−−+−=

( )( ) )(1)()( 111 zxTKzKzzyzzy ip−−− +−+=

Prenosna funkcija digitalnog PI reg. se realizuje diskretnom jednačinom koja je slična i za bilo koji dig. zakon upravljanja

( ) )()()()()( TkTxTKTkTxkTxKTkTykTy ip −+−−+−=

Primer PI regulatora, kome znamo f. prenosa

DSP i procesiranje digitalnih signala 32/30

)()()()( 21 TkTxakTxaTkTykTy −++−=

pip KTKaKa −== 21 ,

Integrator

)()()( TkTTxTkTykTy −+−=

xz

Tzx

z

Tyx

sy

1

1

11

1−

−=

−=→=

Prvi izvod sxydt

dxy =→=

Primer integratora (sume) i prvog izvoda

DSP i procesiranje digitalnih signala 33/30

T

TkTxkTxkTy

)()()(

−−=xT

zx

Tz

zy

111 −−=−=

xTz

zx

T

zy

1

111−

−−=−=T

TkTxkTxTkTy

)()()(

−−=−

dt

10

1

)1(11 −

−−=

+−=→

+=

zT

xTz

Tz

Txy

s

xy o

o

o

o

o

ωω

ωω

ωω

Primer niskopropusnog filtra prvog reda

20log |HRC(jω)} ω0

Po Nyquistu korisnog dig. signala za obradu i nema nakon ωωωω<pi/T.Tako da mora važiti i ωωωω0 <pi/T.

DSP i procesiranje digitalnih signala 34/30

10 )1(11 −−−+−+ zTTzs oo ωωω

)()()1()( 0 TkTTxTkTyTkTy o −+−−= ωω

Uzeti ωωωω0T ≈≈≈≈ 0 - šta se dobija? Uzeti ωωωω0T ≈≈≈≈ 1 - šta se dobija?

Rad DSP u realnom vremenu

Usvojeno je da perioda odabiranja mora biti barem T. DSP radi sa clock signalom Tclk.

vreme clock signal

kT+T kT+2T

DSP radi sa clock signalom Tclk. Šta je rad, t.j. obrada signala, u realnom vremenu?

Slobodno Vreme

Perioda odabiranja

Rad u realnom vremenu

Vreme procesiranja – vreme za 1. čitanje ulaza, 2. obradu signala, 3. ispis izlazaPerioda odabiranja – minimalna moguća perioda koja zadovoljava sve uslove za pravilan rad sistema.

Brži a složeniji signali����manja T/više

DSP i procesiranje digitalnih signala 36/30

kT kT+T

t

Slobodno vreme

Vreme procesiranja

Slobodno vreme ≥≥≥≥ 0.

signali����manja T/više računa ���� Brži DSP

kT kT+T t

Čitanje ulaza upis izlaza

Obrada podataka

Slobodno vreme

Jedan proces

Rad u realnom vremenu – više procesa

DSP i procesiranje digitalnih signala 37/30

kT kT+T t

kT kT+T t

Slobodno vreme

kT+2T

Proces 1

Proces 2

Dva procesa

Proces Perioda (potrebnovreme računa)

Razlog izbora te periode.Ako se izabere duža.....

PWM napon 20kHz - 16kHz50µµµµs - 64µµµµs

ulazimo u čujni opseg

Strujna petlja 50µµµµs - 200µµµµs statorsko kolo ne filtrira dobro referentni napon,

Rad dig. regulisanog pogona u realnom vremenu

Brojke u sledećoj tabeli su samo okvirne, one zavise od motora, tipa opterećanja, područja primene pogona i regulacionih zahteva

DSP i procesiranje digitalnih signala 38/30

dobro referentni napon, talasnost struje (pa i momenta) se uvećava

Brzinska petlja 1 ms – 10 ms mehanički sistem ne filtrira odbirke referentnog momenta i brzina se ne kontroliše dovoljno dobro.

Pozic. petlja 100 ms – 300 ms dolazi do prekoračenja i oscilovanja oko referentne pozicije.