Top Banner
1 การออกแบบและทดสอบ การออกแบบและทดสอบ วงจรกรองความถี่แบบดิจิตอล วงจรกรองความถี่แบบดิจิตอล ( ( H H P P F F ) ) ที่มีผลตอบสนองอิมพัลส์จํานวนจํากัด ที่มีผลตอบสนองอิมพัลส์จํานวนจํากัด F F i i n n i i t t e e I I m m p p u u l l s s e e R R e e s s p p o o n n s s e e : : F F I I R R ด้วย ด้วย โปรแกรม โปรแกรม M M A A T T L L A A B B มาเติมเต็มความรู้กันต่อนะครับ กับระบบสื่อสารในเรื่องของวงจรที่จะลืมไปไม่ได้นั ้นก็คง จะเป็นวงจรกรองความถี่นั ้นเองนะครับ เพราะถือว่าเป็นวงจรทางอิเล็กทรอนิกส์ที่มีความสําคัญ อย่างหนึ ่งเลยนะครับ ด้วยคุณสมบัติในการทํางาน หรือผลตอบสนองในการทํางานทางด้านความถีด้วยคุณสมบัติหรือผลตอบสนองนี จึงได้มีการนําไปประยุกต์ใช้งานในด้านต่างๆ เช่นทางด้าน ระบบอิเล็กทรอนิกส์ , ระบบสื่อสาร , ระบบควบคุม และทางด้านเครื่องมือแพทย์ โดยในทุกวันนี
14

Finite Impulse Response : FIR “

Apr 07, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Finite Impulse Response : FIR “

1

การออกแบบและทดสอบการออกแบบและทดสอบ

วงจรกรองความถแบบดจตอลวงจรกรองความถแบบดจตอล ((HHPPFF))

ทมผลตอบสนองอมพลสจานวนจากดทมผลตอบสนองอมพลสจานวนจากด

““ FFiinniittee IImmppuullssee RReessppoonnssee :: FFIIRR ““

ดวยดวยโปรแกรม โปรแกรม MMAATTLLAABB

มาเตมเตมความรกนตอนะครบ กบระบบสอสารในเรองของวงจรทจะลมไปไมไดนนกคงจะเปนวงจรกรองความถนนเองนะครบ เพราะถอวาเปนวงจรทางอเลกทรอนกสทมความสาคญอยางหนงเลยนะครบ ดวยคณสมบตในการทางาน หรอผลตอบสนองในการทางานทางดานความถ ดวยคณสมบตหรอผลตอบสนองน จงไดมการนาไปประยกตใชงานในดานตางๆ เชนทางดานระบบอเลกทรอนกส , ระบบสอสาร , ระบบควบคม และทางดานเครองมอแพทย โดยในทกวนน

Page 2: Finite Impulse Response : FIR “

2

วงจรกรองความถนนถาพจารณาแลว สามารถทจะแบงออกไดเปนสองรปแบบดวยกนครบ นนกคอวงจรกรองความถแบบแอนาลอก(analog filter) กบวงจรกรองความถแบบดจตอล(digital filter) สวนหนาทในการทางานของวงจรกรองความถนนกสามารถทจะทาการจาแนกตามความตองการของผใชไดครบ โดยจะแบงตามคณลกษณะของผลตอบสนองทางความถ(frequency response) ดงรปท 1 ได 4 ชนดดวยกนคอ วงจรกรองความถตาผาน(low-pass filter ; LPF) , วงจรกรองความถสงผาน(high-pass filter ; HPF) , วงจรกรองแถบความถผาน(band-pass filter ; BPF) และวงจรกรองแถบความถหยดผาน(band-stop filter ; BSF)

H

0 f

H

0 f

H

0 1Cff

H

0 f2Cf 1Cf 2Cf

Cf Cf

รปท 1 ผลตอบสนองความถของวงจรกรองความถในอดมคต

จากผลตอบสนองความถของวงจรกรองความถในทางอดมคต ในรปท 1 เมอให H คอขนาดของแรงดนทางดานเอาตพต วงจรกรองความถตาผาน จะยอมใหความถตงแต 0 Hz ถงความถ Cf ผานไปยงขวเอาตพตของวงจรได สวนความถทสงกวา Cf ความถจะไมผานไปยงขวเอาตพตของวงจร สาหรบวงจรกรองความถสงผานจะยอมใหความถสงกวาความถ Cf ผานไปยงขวเอาตพตของวงจรได สวนความถตงแต 0Hz ถงความถ Cf จะไมผานไปยงขวเอาตพตของวงจร สาหรบวงจรกรองแถบความถผาน จะยอมใหความถตงแต 1Cf ถงความถ 2Cf ผานไปยงขวเอาตพตของวงจร สวนความถตงแต 0Hz ถงความถ 1Cf กบความถทสงกวา 2Cf จะไมผานไปยงขวเอาตพตของวงจร และวงจรกรองแถบความถหยดผาน จะไมยอมใหชวงความถ 1Cf ถงความถ 2Cf ผานไปยงขวเอาตพตของวงจร สวนความถอนๆ วงจรยอมใหผานไปยงขวเอาตพตได วงจรกรองความถทใชงานกนอยท วไป มกนยมใชวงจรกรองความถแบบแอนาลอก ซงประกอบไปดวย ตวความตานทาน , ตวเกบประจ , ตวเหนยวนา และอปกรณกงตวนา เชน

Page 3: Finite Impulse Response : FIR “

3

ออปแอมป ขอดคอออกแบบไดงาย ราคาถก แตมขอเสยทวงจรขาดเสถยรภาพ(stability) ความถทตองการมความคลาดเคลอนสง แตในปจจบนไดหนมานยมใชวงจรกรองความถแบบดจตอลกนมาก เพราะมเสถยรภาพทดกวา ความถทตองการมความคลาดเคลอนนอยกวา แตมขอเสยคอ การออกแบบทาไดยากกวา และมราคาสงกวา สาหรบบทความนกจะขอกลาวถงการออกแบบและทดสอบวงจรกรองความถแบบดจตอล (HPF) โดยใชโปรแกรมMATLB การแบงประเภทของวงจรกรองความถแบบดจตอล การแบงประเภทของวงจรกรองความถแบบดจตอล จะแบงตามผลตอบสนองอมพลสของระบบดงแสดงในรปท 2 คอผลตอบสนองอมพลสจานวนจากด(Finite Impulse Response : FIR) กบผลตอบสนองอมพลสจานวนไมจากด(Infinite Impulse Response : IIR) แตในทนขอยกตวอยางการออกแบบวงจรกรองความถแบบดจตอลทมผลตอบสนองอมพลสจานวนจากด หรอ FIR เพราะมลกษณะเดนคอ มผลตอบสนองทางเฟสแบบเชงเสน (linear phase) เหมาะสาหรบการพฒนาเครองมอวดทางดานการแพทย และในงานทเกยวของ

( )h n

nระบบ FIR

( )h n

nระบบ IIR

รปท 2 ผลตอบสนองตอสญญาณอมพลสของวงจรกรอง FIR และ IIR การออกแบบวงจรกรองความถโดยวธหนาตาง(window method)

ในการออกแบบวงจรกรองความถโดยใชวธหนาตางนน ซงเปนวธพนฐาน โดยมสงทสาคญคอการหาผลตอบสนองอมพลสของตวกรองความถตนแบบ จากผลตอบสนองของความถของตวกรองความถในอดมคต ดงแสดงในรปท 3

Page 4: Finite Impulse Response : FIR “

4

'Cω

0'Cω−π− π

'( )jD e ω

1

ก.) LPF

'ω− 'Cω

0'Cω−π− π

'( )jD e ω

1

ข.) HPF

'ω−

'aω

0'aω−π− π

'( )jD e ω

1

ค.) BPF

'ω−'bω−

'bω

'aω

0'aω−π− π

'( )jD e ω

1

'ω−'bω−

'bω

ง.) BSF

รปท 3 ผลตอบสนองความถของตวกรองอดมคต

จากรปท 3 จะสมมตให ( )d n แทนเปนผลตอบสนองตออมพลส และกาหนดให '( )jD e ω

แทนผลตอบสนองเชงความถ สาหรบตวกรองความถในอดมคตของวงจรกรองความถตาผาน ดงทไดแสดงในรปท 3(ก) เราจะหาผลตอบสนองตออมพลสของตวกรองความถในอดมคตได โดยใชเทคนคของการแปลงฟรเยรแบบเวลาไมตอเนองชนดผกผน (Inverse Discrete Fourier Transform : IDTFT) ตวอยางเชน วงจรกรองความถตาผาน ดงน

{ }

( ) ( )

( )' '1 1' ' 1 '

2 2'

' ' '

2 2'

'sin( ); .....(1)

d n IDTFT D

j jj n nD e e d e d

Cj j jn n ne e ejn jn

C

nC nn

π πω ωω ω ωπ ππ π

ωω ω ω

π πω

ω

π

=

= =∫ ∫− −

⎡ ⎤ −−⎢ ⎥= =⎢ ⎥⎢ ⎥⎣ ⎦−

= −∞ < < ∞

ในสมการท 1 จะพบปญหาท 0n = เพราะผลตอบสนองตออมพลส ( )d n มคาเปนเศษ

ศนยสวนดวยศนย วธแกไขปญหา เราสามารถหาคา (0)d ไดโดยใชทฤษฎของโลปตล จะไดวา

Page 5: Finite Impulse Response : FIR “

5

'(sin( )lim '

0 ( )(0) .....(2)( )lim0

d nCn d n Cd d n

n dn

ωω

π π→= =

สาหรบวงจรกรองความถแบบอนๆ เราสามารถหาผลตอบสนองตออมพลส ( )d n ไดโดย

การแปลง IDTFT เพอหาผลตอบสนองเชงความถของตวกรองนนๆ ไดดงตารางท 1 เพอใชในการออกแบบตอไป ตารางท 1 ผลตอบสนองอมพลสของตวกรองอดมคตแบบตางๆ

ชนดของตวกรอง ( ),D n n−∞ < < ∞ ( ), 0D n n =

วงจรกรองความถตาผาน 'sin( )Cn

nωπ

'Cωπ

วงจรกรองความถสงผาน 'sin( )( ) Cnn

nωδπ

− '

1 Cωπ

วงจรกรองแถบความถผาน ' 'sin( ) sin( )b an n

nω ω

π−

' 'b aω ωπ π

วงจรแถบความถหยดผาน ' 'sin( ) sin( )( ) b an nn

nω ωδ

π−

− ' '

1 b aω ωπ π

⎛ ⎞− +⎜ ⎟⎝ ⎠

จากทไดแสดงในตารางขางตน เปนผลตอบสนองตออมพลส ( )d n ของวงจรกรองความถ

แบบตางๆ โดยวธการแปลง IDTFT ผทตองการออกแบบวงจรกรองความถแบบดจตอลในทน ไมจาเปนตองมความรทางคณตศาสตรมากนก เพราะการออกแบบวงจรกรองความถแบบตางๆ เราจะใชผลตอบสนองอมพลสในตารางท 1 ไดโดยตรง ทไดแสดงในสมการท 1 กบ 2 เปนเพยงตวอยางการหาผลตอบสนองอมพลส ( )d n ของวงจรกรองความถตาผาน โดยวธการแปลงจาก IDTFT ท n มคา n−∞ < < ∞ กบท 0n = ตามลาดบ

กอนทจะทาการออกแบบนนจะตองทาความเขาใจเพมเตมเกยวกบพารามเตอรทสาคญๆตามลกษณะเฉพาะของวธหนาตาง ตอการออกแบบวงจรกรองความถ เชน ความถตด , อตราการลดทอน , ความพรวหรอรบเปลของแถบผาน และความกวางของแถบเปลยน โดยพจารณาตามรปท 4 ดงน

ความถตด(cutoff frequency ; Cf ) หมายถงจดตดของความถทใหสญญาณผานหรอไมผานไปยงขวออกของวงจรกรอง สาหรบวงจรกรองความถของ FIR กาหนดคาความถทขนาดลดลงประมาณ 0.5 นยามนแตกตางกบแบบ IIR ทใชนยามเดยวกนกบวงจรกรองแบบแอนาลอกคอทขนาดลดลงประมาณ 0.707

Page 6: Finite Impulse Response : FIR “

6

การลดทอนของแถบหยด(stop-band attenuation ; stopA ) คอ จานวนเทาทแถบหยดลดทอนลง วดคาเปน dB โดยการลดทอนของแถบหยดมความสมพนธกบความพรวของแถบหยด แสดงดงสมการท 3

20log .....(3)stop stopA δ=

ความพรวหรอรบเปลของแถบผาน(pass-band ripple ; δpass) หมายถง คาสงสดทขนาดแถบผานแกวงออกหางจากคา 1 ตามรปท 4 เขยนเปนสมการไดดงน

1

20log .....(4)1

passpass

pass

Aδδ

+=

ความกวางของแถบเปลยน (transition band width ; fΔ ) คออตราการเปลยนแปลงของขนาดเทยบกบชวงความถ

f

แถบผาน แถบเปลยน แถบไมผาน

passf Cf stopf0 / 2sf

fΔstopA

passA

ผลตอบสนองความถในอดมคต

stopδ

1 passδ−

1 passδ+

0.5

1

V ผลตอบสนองความถในการออกแบบ

รปท 4 คณลกษณะเฉพาะของผลตอบสนองความถของตวกรองแบบ FIR

Page 7: Finite Impulse Response : FIR “

7

ตารางท 2 พารามเตอรทสาคญๆ ของหนาตางแบบตางๆ

หนาตาง passδ 20logstop stopA δ= fΔ ( ), 0,1,... 1W n n N= −

12NM −⎛ ⎞=⎜ ⎟

⎝ ⎠

สเหลยม (rectangular)

8.9% 21 2/N 1

ฮานนง (Hanning)

0.63% 44 4/N 20.5 0.5cos1

nNπ⎛ ⎞− ⎜ ⎟−⎝ ⎠

แฮมมง (Hamming)

0.22% 53 4/N 20.54 0.46cos1

nNπ⎛ ⎞− ⎜ ⎟−⎝ ⎠

แบลกแมน (Blackman)

0.02% 74 6/N 2 40.42 0.5cos 0.08cos1 1

n nN Nπ π⎛ ⎞ ⎛ ⎞− −⎜ ⎟ ⎜ ⎟− −⎝ ⎠ ⎝ ⎠

ไคเซอร (Kaiser)

ปรบได ปรบได 7.9514.36( 1)

AN

−−

( )2 21 ( ) /

( )O

O

I n M M

I

α

α

− −

การออกแบบวงจรกรองความถ (FIR-HPF) ตวอยางการออกแบบ ในทนจะทาการออกแบบวงจรกรองความถสงผานแบบ FIR โดยใชวธหนาตางแบบสเหลยม โดยทตองการความถตดท 1 KHz และมความกวางของแถบเปลยน (ดรปท 4 ) มคาเทากบ 300 Hz โดยใชความถสม(sampling) เทากบ 4 KHz วธการคานวณและการออกแบบ คานวณหาคาความถทตองใชในหนวยของความถดจตอล '( )Cω และทาการหาคาบรรทดฐาน(normalize) หรอคา 'fΔ เพอใชในการหาคาอนดบ (N) ทใช ซงมคาเทากบ

' 2 2 1000 / 2 .4000

CC

S

f radfπ πω π×

= = =

' / 300 / 4000 0.075Sf f fΔ = Δ = =

Page 8: Finite Impulse Response : FIR “

8

จากตารางท 2 ของหนาตางแบบสเหลยม fΔ = 2 / N จะได 2 / 0.075 26.666 27N = = ≈

แตการออกแบบควรคานงถงคณสมบตของความสมมาตร ซงม 4 ชนดดวยกน คอ 1.สมมาตรปกต N เปนเลขค ดงนนจะใชไดกบวงจรกรองความถในทกรปแบบ 2.สมมาตรปกต N เปนเลขค ดงนนจะใชไดกบวงจรกรองความถตา(LPF) กบวงจรกรองแถบความถผาน(BPF) 3. สมมาตรตรงขาม N เปนเลขค ดงนนจะใชไดกบวงจรกรองแถบความถผาน(BPF) 4. สมมาตรตรงขาม N เปนเลขค ดงนนจะใชไดกบวงจรกรองความถสง(HPF) กบวงจรกรองแถบความถผาน(BPF)

ดงนน N ในทนเรากาหนดใหมคาเทากบ 27 หรอใชคณสมบตของความสมมาตรชนดท 1 ถากาหนดใหมคาตากวาคาทคานวณได จะทาใหความกวางของแถบเปลยนมความกวางมากขน จากตารางท 1 ใชผลตอบสนองตออมพลส ( )d n ของวงจรกรองความถสงผานคอ

'sin( )( ) Cnnnωδπ

− ใหเลอนคา ( )d n ใหลาหลงไป M ตาแหนง โดย M มคาเทากบ

( 1) / 2 13M N= − = จะไดผลตอบสนองตออมพลส ( )d n M− คอ

' 'sin( ( )) sin( ( ))( ) ( )( ) ( )

C Cn M n Md n M nn M n M

ω ωδπ π

− −− = − = −

− −

ลาดบสดทายเปนการหาคาสมประสทธ ( )h n ของวงจรกรอง ซงมคาเทากบ

( ) ( ) ( ) .....(5)h n d n M w n= − •

Page 9: Finite Impulse Response : FIR “

9

จากตารางท 2 ของหนาตางแบบสเหลยม ( ) 1w n = ดงนน คาสมประสทธของวงจรกรอง หาคาไดดงน

'

'

sin( ( ))( ) , 0,1,..., 1( )

sin( ( 13))( ) , 0,1,...,13( 13)

C

C

n Mh n n Nn M

nh n nn

ωπ

ωπ

−= − = −

−∴ = − =

คานวณหาสมประสทธ ( )h n ของวงจร โดยใชโปรแกรม MATLAB โดยสรางไฟลทม

นามสกลเปน .M โดยสงเมนบาร File | New | M-file แลวพมพตามตวอยาง ดงแสดงในรปท 5

รปท 5 ตวอยางของไฟล FIR_HPF.m

Page 10: Finite Impulse Response : FIR “

10

จากรปท 5 ไดบอกถงสวนตางๆ ของการเขยนโปรแกรมแบบ m-file ไวแลวนะครบ ถาอยางไรกตองทดลองทาดนะครบ ซงในสวนของเครองหมาย % หมายถงสวนทใชอธบายหรอแบงสวนของโปรแกรม สาหรบ Cf คอคาความถตด , Sf คอความถสม และ N คอจานวนของอนดบ ถาตองการปรบคณสมบตของวงจรกรองความถสงผาน สามารถปรบคาดงกลาวไดตามความตองการหรอแลวแตทเราจะออกแบบครบ สวนวงจรกรองความถแบบอนๆ กสามารถออกแบบไดครบ โดยจะตองทาการแกไขบรรทดของผลตอบสนองอมพลส ตามตารางท 1 กบพารามเตอรของวธหนาตาง ตามตารางท 2 ครบ

รปท 6 สมประสทธของวงจรกรองความถตาทออกแบบ

นอกจากการคานวณหาคาสมประสทธแลว ไฟล FIR_HPF.m ยงมคาสงทใชสาหรบวาดผลตอบสนองอมพลส กบผลตอบสนองความถรวมถงผลตอบสนองทางเฟส(phase)ของวงจรทไดออกแบบ คอคาสง stem กบคาสง freqz ตามลาดบ สาหรบคาสง stem กบ freqz มฟงกชนอยในโปรแกรม MATLAB แลว สามารถเรยกใชไดโดย ในรปท 6 เปนตวอยางของการคานวณหาสมประสทธ h(n) โดยพมพชอ FIR_HPF ลงในหนาตาง MATLAB Command Window โปรแกรมกจะทาการคานวณหาสมประสทธ แลววาดกราฟแสดงผลตอบสนองอมพลส กบผลตอบสนองทางความถ ดงรปท 7 กบรปท 8 ตามลาดบ สาหรบคาสมประสทธทไดมาแลวน จะนาไปสรางเปนวงจรกรองความถแบบดจตอล ในทนจะยกตวอยางการสรางวงจรกรองความถทสรางจากชพวงจรรวม FPGA (Field Programmable Gate Array) ซงจะไดกลาวในลาดบตอไป

Page 11: Finite Impulse Response : FIR “

11

รปท 7 ผลตอบสนองอมพลสของวงจรกรองความถสงผาน ท N=27

รปท 8 ผลตอบสนองทางความถและเฟสของวงจรกรองความถสงผาน ท N=27

Page 12: Finite Impulse Response : FIR “

12

ทนมาดกนตอนะครบ ถาเราตองการใหความกวางของแถบเปลยน (ดรปท 4 ) โดยใหมคาเทากบ 40 Hz โดยมคาความถตดและคาความถสมคงเดมเหมอนในตวอยางขางตน ดงนนเรากจะสามารถคานวณหาคา N ไดเทากบ 200 แตการเลอกชนดความสมมาตร ถาเปนสมมาตรชนดท 1 จะกาหนดให N มคาเทากบ 201 (สมมาตรปกต N เปนเลขค) จากนนกจะใชโปรแกรม MATLAB โดยสรางไฟลทมนามสกลเปน .M โดยสงเมนบาร File | New | M-file แลวพมพตามตวอยาง ดงแสดงในรปท 9

รปท 9 การทดสอบการออกแบบวงจรกรองความถสงผาน เมอ N=201 และเมอทาการคานวณจากโปรแกรม MATLAB เรากจะเหนถงผลตอบสนองอมพลสของ

วงจรกรองความถสงผาน เมอ N=201 และลกษณะของผลตอบสนองความถและทางเฟสของวงจรกรองความถตาผาน เมอ N=201 ตามรปท 10(ก) และรปท 10 (ข) นนเองครบ

Page 13: Finite Impulse Response : FIR “

13

(ก)

(ข)

รปท 10 (ก) ผลตอบสนองอมพลสของวงจรกรองความถสงผาน ท N=201

(ข) ลกษณะของผลตอบสนองความถและทางเฟสของวงจรกรองความถสงผาน ท N=201

Page 14: Finite Impulse Response : FIR “

14

เปนอยางไรบางครบพอทจะรจกวงจรกรองความถแบบดจตอลกนบางแลวใชไหมครบ ทางคณะผเขยนหวงวาบทความทไดเขยนขนมานคงเปนประโยชนแกทานทสนใจไมมากกนอย เพราะเนอหาในบทความกไดกลาวถงหลกการและทฤษฏในการออกแบบวงจรกรองความถแบบ HPF เพอใชเปนแนวทางในการศกษาตอไป และทสาคญยงไดเหนถงการนาโปรแกรม MATLAB มาใชในการทดสอบผลตอบสนองของวงจรทไดออกแบบอกดวย ซงกคงจะทาใหผอานไดเกดความเขาใจมากยงขนนะครบ สวนการออกแบบวงจรกรองความถอกแบบหนงนนกจะขอนาเสนอในครงตอไปนะครบ

*****************************