ด้วยโปรแกรม MATLABmsn/samplingmatlabwara.pdf6 ร ปท 7...
Transcript of ด้วยโปรแกรม MATLABmsn/samplingmatlabwara.pdf6 ร ปท 7...
1
การการทดสอบทดสอบเทคนคการแซมปลงสญญาณเทคนคการแซมปลงสญญาณ
““ SSaammpplliinngg SSiiggnnaall ““
ดวยดวยโปรแกรม โปรแกรม MMAATTLLAABB
แบบ แบบ ((SSiimmuulliinnkk MMooddeell))
กลบมาอกครงนะครบกบความรในเรองของระบบสอสาร โดยระบบสอสารทเราใชกนอยในปจจบนนน กจะพบวามการนาหลกการหรอทฤษฎตางๆ มาใชในการออกแบบระบบหรอวงจรกนมากมายหลายหลกการหลายทฤษฎมากเลยครบ ดงเชนในบทความนนะครบทจะขอกลาวถงทฤษฎการแซมปลงสญญาณ (Sampling Signal) และมากไปกวานนกจะแนะนาการใชโปรแกรม MATLAB เพอนามาใชในการทดสอบทฤษฎการแซมปลงสญญาณในอกรปแบบหนงครบ เพอใหสามารถมองเหนภาพและเกดความเขาใจมากขนสาหรบผทกาลงศกษาอยนะครบ
กอนอนกคงจะตองขอกลาวถงทฤษฎการแซมปลงสญญาณ (Sampling Signal) กนอกครงกอนนะครบ ถาเราพดถงสญญาณทเกดขนและเกดขนอยางตอเนองและตลอดเวลานน เรากจะเรยก
2
สญญาณนนวาเปนสญญาณอนาลอก (Analog Signal) โดยทสญญาณดงกลาวนจะมลกษณะของความหนาแนนสเปกตรมอยในคาแบนดวดททจากด ซงถาเปนอยางนแลวนน ถาเรามาพจารณาในโดเมนเวลา เรากจะพบวาสญญาณอนาลอกนจะมขอมลทมความซ าซอนเปนอยางมากเลยครบ และถาพจารณาดแลวกจะพบวาขอมลทมความซ าซอนนมนมมากเกนไปเมอเทยบกบเวลาทสงสญญาณ ซงจากสาเหตนเองครบ ถาเราใชทฤษฎการแซมปลงสญญาณมาใชในการชกตวอยางของสญญาณนนทขณะเวลาตางๆ ทอยหางกนอยางเหมาะสมแลว เรากสามารถทจะเกบขอมลของสญญาณทงหมดนไดครบ ดงนนจากการทเราใชทฤษฎการแซมปลงสญญาณแลว กจะทาใหเราลดความซ าซอน หรอความฟ มเฟอยของการใชคาสญญาณลงไดครบ ซงสญญาณทไดจากการแซมปลงสญญาณน กจะเรยกวา สญญาณไมตอเนองทางเวลา นนเองครบ ทนมาดในสวนของการแยกแยะสญญาณเพอทจะวเคราะหสญญาณ เพราะวามความสาคญ เนองจากวาวธการในการวเคราะหนนจะเปลยนแปลงตามลกษณะของแบบจาลองของสญญาณ โดยสญญาณนนเราสามารถแยกไดเปน 2 ประเภท ถาเราพจารณาลกษณะของตวแปรทางเวลา คอ
1.) สญญาณไมตอเนองทางเวลา ( Discrete-Time Signals:DT ) สญญาณดงกลาวนจะถกนยามเฉพาะกลมของเวลาซงสญญาณชนดนจะเกดจากการเลอกเฉพาะคาขนาดของสญญาณ ณ. เวลาทตองการ ดงแสดงในรปท 1
รปท 1 ตวอยางสญญาณไมตอเนองทางเวลา
2.) สญญาณตอเนองทางเวลา ( Continuous-Time Signals:CT ) เปนสญญาณทปรากฏตาม
ธรรมชาต มลกษณะของสญญาณทมความตอเนองตลอดไดแกสญญาณเสยงพด สญญาณเสยงดนตรเปนตน ดงแสดงในรปท 2
3
รปท 2 ตวอยางสญญาณตอเนองทางเวลา
ทนมาดในสวนของการแปลงระหวางสญญาณตอเนองทางเวลาและสญญาณไมตอเนองทางเวลา จากลกษณะของสญญาณไมตอเนองทางเวลาและสญญาณตอเนองทางเวลา เราสามารถทจะสรางสญญาณไมตอเนองทางเวลาจากสญญาณตอเนองทางเวลาไดครบ ดงตวอยางเชนในระบบ ( Pulse Amplitude Modulation : PAM ) ซงไดใชทฤษฏทแปลงสญญาณตอเนองทางเวลาไปเปนสญญาณไมตอเนองทางเวลา โดยการใชทฤษฏแซมปลงสญญาณนนเองครบ
ทฤษฏแซมปลงสญญาณ สามารถกลาวไดดงน เซตขนาดของสญญาณททกๆชวงเวลา 1/(2B)วนาท สามารถแทนสญญาณจากดแถบ( Bandwidth ) ใดๆ B เฮรตซได กลาวขยายความกคอ ในการสรางสญญาณไมตอเนองทางเวลา จากสญญาณตอเนองทางเวลานน สญญาณไมตอเนองทางเวลา ทสรางตองสรางจากสญญาณตอเนองทางเวลา ทถกสมเลอกเฉพาะคาขนาดของสญญาณททกๆ เวลาอยางนอยทสดคอ 1/(2B)วนาท
รปท 3 ลกษณะการสรางสญญาณไมตอเนองทางเวลาจากสญญาณตอเนองทางเวลา
โดยใชทฤษฏแซมปลงสญญาณ
จากรปท 3 เปนลกษณะการสรางสญญาณไมตอเนองทางเวลาจากสญญาณตอเนองทางเวลาโดยใชทฤษฏแซมปลงสญญาณ สามารถอธบายไดดวยสวทซในทางอดมคต ๑ ตวทมความเรวในการปด-เปด 2B ครงตอวนาท ณ. จดปอนเขาของระบบมสญญาณตอเนองทางเวลาใดๆ ทมแบนดวทธ B เฮรตซ ผลตอบสนองของระบบทไดจะเปนสญญาณไมตอเนองทางเวลา ทมการเปลยนแปลงของสญญาณทเกดขนทกๆ ชวงเวลา 1/2B วนาท ซงสามารถแสดงดวยโครงสรางดงรปท 4
4
รปท 4 ลกษณะการสรางสญญาณไมตอเนองทางเวลาจากสญญาณตอเนองทางเวลา
โดยใชทฤษฏแซมปลงสญญาณ
รปท 5 สญญาณและสเปกตรมของสญญาณ
(รปบน) สญญาณตอเนองทางเวลา (รปกลาง) ทเกดจากสวทซในอดมคต (รปลาง) สญญาณไมตอเนองทางเวลา ซงไดจากการสมสญญาณตอเนองทางเวลาของรปบน
จากรปสญญาณตอเนองทางเวลา มแถบความถ ( Bandwidth ) เทากบ B เฮรตซ ผานสญญาณดงกลาวดวยสวทซทมการทางานแบบอดมคต ลกษณะการทางานขอสวทซคอมการเปดและปดดวยความเรว 2B ครงตอวนาทดงแสดงในรปท 5 (รปกลาง) สเปกตรมของสญญาณจะมลกษณะทเปนสญญาณอมพลสเกดขนทกๆ 2B เฮรตซ สญญาณหลงจากผานสวทซแลวจะมลกษณะทไมตอเนองทางเวลา ดงรปท 5 (รปลาง) และสเปกตรมของสญญาณจะมลกษณะเปนคาบซ ากนทกๆชวงความถ 2B เฮรตซ โดยรปรางของสเปกตรมสญญาณใน ๑ คาบมลกษณะทเหมอนกบสเปกตรมของสญญาณกอนทจะถกแซมปลงนนเองครบ
ในการทจะสรางสญญาณตอเนองทางเวลา จากสญญาณไมตอเนองทางเวลา ใหสงเกตสเปกตรมของสญญาณไมตอเนองทางเวลาทมลกษณะเปนคาบ ดงนนวธงายทสดทจะทาไดคอใชวงจรกรองความถตาผาน (LPF) เลอกเฉพาะสเปกตรมชวงความถตงแต –B จนถง B ปญหาของการสรางสญญาณไมตอเนองทางเวลา จากสญญาณตอเนองทางเวลา กคอเงอนไขความถทใชในการ
5
แซมปลงหรอความเรวของสวทซทเปด-ปด จะตองมากกวาหรอเทากบ 2B มฉะนนแลวจะทาใหสเปกตรมของสญญาณไมตอเนองทางเวลา ในหนงคาบความถมลกษณะทแตกตางจากสญญาณตอเนองทางเวลา ผลทเกดขนดงกลาวนเกดขนจากการเหลอมทบกน ( Aliasing Effect ) นนเองครบ
รปท 6 สเปคตรมของการแซมปลงสญญาณในแตละลกษณะ
จากรปท 6 (บน) เปนกรณทใชความถในการแซมปลงนอยกวา 2 เทาของแบนดวทธ
สญญาณ ในรปท 6 (กลาง) เปนกรณทใชความถในการแซมปลงเทากบ 2 เทาของแบนดวทธสญญาณ และในรปท 6 (ลาง) เปนกรณทใชความถในการแซมปลงมากกวา2 เทาของแบนดวทธสญญาณ ซงจะเปนลกษณะทใชกนในทางปฏบตเพราะวาสามารถออกแบบวงจรกรองความถไดงายกวานนเองครบ ทนเราจะมาดกนนะครบวาเราจะใชโปรแกรม MATLAB มาใชในการทดสอบการแซมปลงสญญาณในอกรปแบบหนงไดอยางไร เพอทจะทาใหเกดความเขาใจในการแซมปลงสญญาณมากยงขนครบ มาดกนเลยนะครบ เมอเปดโปรแกรม MATLAB ขนมาแลวจะเปนดงในรปท 7 นะครบ
6
รปท 7 โปรแกรม MATLAB ใชในการทดสอบการแซมปลงสญญาณ
รปท 8 การเรยกใชงานในสวนของการเขยนแบบ Simulink Model ของโปรแกรม MATLAB
จากรปท 8 เปนการเรยกใชงานในสวนของการเขยนแบบ Simulink Model ของโปรแกรม
MATLAB โดยการเขาท New Simulink Model จากนนเมอเราทาการคลกกจะเปนดงในรปท 9 ครบ
7
Library ของ Simulink
สวนทใชเขยน Simulink Model
รปท 9 สวนของการเขยนโปรแกรมแบบ Simulink Model ของโปรแกรม MATLAB
มาดกนตอนะครบกบการเขยนโปรแกรมแบบ Simulink Model ทเราจะนามาใชในการทดสอบการแซมปลงสญญาณอกรปแบบหนง ซงกขอยกตวอยางการใชงานดงตอไปนนะครบ
*** ตวอยางการทดลองการแซมปลงสญญาณ (แบบ Simulink Model)
การทดลองโดยการเขยนเปนแบบ Simulink Model ตวอยางเชนเมอเรากาหนดใหสญญาณ มคา bandwidth = 10 Hz เพราะฉะนนในทนเราจะทาการทดสอบโดยใชความถแซมปลงสญญาณ ( )Sf ใหครบทง 3 กรณ ดงนคอ 20Sf Hz> , 20Sf Hz= และ 20Sf Hz< โดยสามารถเขยนเปน Simulink Model ไดดงน
กรณท 1 คอ 20Sf Hz> โดยในทนจะกาหนดใหความถ 100Sf Hz= โดยการเขยน Simulink Model ดงแสดงในรปท 10
8
รปท 10 การทดสอบโดยใชความถแซมปลงสญญาณความถ 100Sf Hz=
ซงจากรปท 10 น นจะเปนการทดสอบโดยใชความถแซมปลงสญญาณความถ
100Sf Hz= โดยสามารถทจะเลอกใช Simulink Model ออกมาจาก Library : Simulink และการกาหนดคาตางๆ ดงแสดงไวในตารางท 1 ตารางท 1 แสดงการเลอกใช Simulink Model จาก Library : Simulink และการกาหนดคาตางๆ
ชอ Simulink Model อยใน Library : Simulink คาททาการกาหนด
Sine Wave Sources
Amplitude = 1 Frequency (rad/sec) = 2*pi*10 Phase (rad) = 0 Sample time = 0
Pulse Generator Sources
Period (sec)=1/100 Duty cycle (% of period) = 50 Amplitude = 1 Start time = 0
Dot Product Linear - Scope(1,2,3) Sinks -
จากรปท 10 เมอทาการเขยนโปรแกรมแบบ Simulink Model แลว ใหทาการ SAVE โดยใน
ทนจะ SAVE โดยตงชอวา Sampling100 นะครบ จากนนใหทาการเรมทดสอบ โดยการเลอกท
9
Simulation และคลกเลอกท Start กจะทาใหโปรแกรมเรมทดสอบแลวครบ ดงแสดงในรปท 11 จากนนใหทาการดบเบลคลกท Scope 1 , Scope 2 และ Scope 3 กจะปรากฏดงในรปท 12 รปท 13 และรปท 14
คลก Simulation (Start)
รปท 11 การเรยกดไฟลทไดทาการสรางไวในโปรแกรม MATLAB
รปท 12 ผลการทดสอบโดยใชความถแซมปลงสญญาณความถ 100Sf Hz=
ทวดสญญาณจาก Scope 1 (Sine Wave)
10
รปท 13 ผลการทดสอบโดยใชความถแซมปลงสญญาณความถ 100Sf Hz=
ทวดสญญาณจาก Scope 3 (Pulse Generator)
รปท 14 ผลการทดสอบโดยใชความถแซมปลงสญญาณความถ 100Sf Hz=
ทวดสญญาณจาก Scope 2 (Sampling Signal) จากรปท 12 , รปท 13 และรปท 14 กจะเหนถงผลการทดสอบโดยใชความถแซมปลง
สญญาณความถ 100Sf Hz= ซงจะเหนวารปสญญาณทไดในรปท 14 นนมลกษณะทเหมอนกบสญญาณ Sine Wave มากครบ แตจะมสญญาณบางสวนทขาดหายไปครบ นนกมาจากการแซมปลงสญญาณนนเองครบ โดยเราไดกาหนดใหเปนการทดสอบทเปนใน กรณท 1 คอ 20Sf Hz> นนเองครบ ซงในสวนของการทดสอบในกรณท 2 และกรณท 3 กมขนเหมอนกนทกอยางครบ
11
กรณท 2 คอ 20Sf Hz= โดยในทนจะกาหนดใหความถ 20Sf Hz= โดยการเขยน Simulink Model จะเหมอนกบในรปท 10 แตในกรณนจะเปนการทดสอบโดยใชความถแซมปลงสญญาณความถ 20Sf Hz= โดยสามารถทจะเลอกใช Simulink Model ออกมาจาก Library : Simulink และการกาหนดคาตางๆ ดงแสดงไวในตารางท 2 ตารางท 2 แสดงการเลอกใช Simulink Model จาก Library : Simulink และการกาหนดคาตางๆ
ชอ Simulink Model อยใน Library : Simulink คาททาการกาหนด
Sine Wave Sources
Amplitude = 1 Frequency (rad/sec) = 2*pi*10 Phase (rad) = 0 Sample time = 0
Pulse Generator Sources
Period (sec)=1/20 Duty cycle (% of period) = 50 Amplitude = 1 Start time = 0
Dot Product Linear - Scope(1,2,3) Sinks -
และเมอทาการเขยนโปรแกรมแบบ Simulink Model แลว ใหทาการ SAVE โดยในทนจะ
SAVE โดยตงชอวา Sampling20 นะครบ จากนนใหทาการเรมทดสอบ โดยการเลอกท Simulation และคลกเลอกท Start กจะทาใหโปรแกรมเรมทดสอบแลวครบ โดยผลการทดสอบนนกสามารถดไดโดยดบเบลคลกท Scope 1 , Scope 2 และ Scope 3 กจะปรากฏดงในรปท 15 รปท 16 และรปท 17
12
รปท 15 ผลการทดสอบโดยใชความถแซมปลงสญญาณความถ 20Sf Hz=
ทวดสญญาณจาก Scope 1 (Sine Wave)
รปท 16 ผลการทดสอบโดยใชความถแซมปลงสญญาณความถ 20Sf Hz=
ทวดสญญาณจาก Scope 3 (Pulse Generator)
รปท 17 ผลการทดสอบโดยใชความถแซมปลงสญญาณความถ 20Sf Hz=
ทวดสญญาณจาก Scope 2 (Sampling Signal)
13
กรณท 3 คอ 20Sf Hz< โดยในทนจะกาหนดใหความถ 15Sf Hz= โดยการเขยน
Simulink Model จะเหมอนกบในรปท 10 แตในกรณนจะเปนการทดสอบโดยใชความถแซมปลงสญญาณความถ 15Sf Hz= โดยสามารถทจะเลอกใช Simulink Model ออกมาจาก Library : Simulink และการกาหนดคาตางๆ ดงแสดงไวในตารางท 3 ตารางท 3 แสดงการเลอกใช Simulink Model จาก Library : Simulink และการกาหนดคาตางๆ
ชอ Simulink Model อยใน Library : Simulink คาททาการกาหนด
Sine Wave Sources
Amplitude = 1 Frequency (rad/sec) = 2*pi*10 Phase (rad) = 0 Sample time = 0
Pulse Generator Sources
Period (sec)=1/15 Duty cycle (% of period) = 50 Amplitude = 1 Start time = 0
Dot Product Linear - Scope(1,2,3) Sinks -
เมอทาการเขยนโปรแกรมแบบ Simulink Model แลว ใหทาการ SAVE โดยในทนจะ
SAVE โดยตงชอวา Sampling15 นะครบ จากนนใหทาการเรมทดสอบ โดยการเลอกท Simulation และคลกเลอกท Start กจะทาใหโปรแกรมเรมทดสอบแลวครบ โดยผลการทดสอบนนกสามารถดไดโดยการดบเบลคลกท Scope 1 , Scope 2 และ Scope 3 กจะปรากฏดงในรปท 18 รปท 19 และรปท 20
14
รปท 18 ผลการทดสอบโดยใชความถแซมปลงสญญาณความถ 15Sf Hz=
ทวดสญญาณจาก Scope 1 (Sine Wave)
รปท 19 ผลการทดสอบโดยใชความถแซมปลงสญญาณความถ 15Sf Hz=
ทวดสญญาณจาก Scope 3 (Pulse Generator)
รปท 20 ผลการทดสอบโดยใชความถแซมปลงสญญาณความถ 15Sf Hz=
15
ทวดสญญาณจาก Scope 2 (Sampling Signal)
จากการทดสอบในกรณท 1 คอ 20Sf Hz> โดยในทนจะกาหนดใหความถ 100Sf Hz=
นนจะเหนวาสญญาณทไดจากแซมปลงสญญาณนนจะมลกษณะทเหมอนกบสญญาณตอเนองทางเวลาทไดกาหนดขนนนเอง ดงแสดงในรปท 14
จากการทดสอบในกรณท 2 คอ 20Sf Hz= โดยในทนจะกาหนดใหความถ 20Sf Hz= นนจะเหนวาสญญาณทไดจากแซมปลงสญญาณนนจะมลกษณะทเปลยนแปลงไปจาก
เดมบางจากสญญาณตอเนองทางเวลาทไดกาหนดขน ดงแสดงในรปท 17 และสดทายจากการทดสอบในกรณท 3 คอ 20Sf Hz< โดยในทนจะกาหนดใหความถ
15Sf Hz= นนจะเหนวาสญญาณทไดจากแซมปลงสญญาณนนจะมลกษณะทเปลยนแปลงไปจากเดมมาก กลาวคอมความผดเพยนไปจากสญญาณตอเนองทางเวลาทไดกาหนดขน ดงแสดงไวใน รปท 20 ดงนนในการทจะนาไปใชงานจรงนนควรทจะนากรณท 1 ไปใชงานนนเองครบ จะเหนวาจากทเราไดทาการทดสอบมาทงหมดนไดเปนไปตามทฤษฏแซมปลงสญญาณ ทกประการครบ
เปนอยางไรบางครบพอทจะรจกทฤษฏแซมปลงสญญาณกนบางแลวใชไหมครบ ทางคณะผเขยนหวงวาบทความทไดเขยนขนมานคงเปนประโยชนแกทานทสนใจไมมากกนอย เพราะเนอหาในบทความกไดกลาวถงหลกการและทฤษฏในทฤษฏแซมปลงสญญาณ เพอใชเปนแนวทางในการศกษาตอไป และทสาคญยงไดเหนถงการนาโปรแกรม MATLAB มาใชในการทดสอบทฤษฏแซมปลงสญญาณในอกรปแบบหนง โดยเปนการเขยนโปรแกรมแบบ Simulink Model ซงกคงจะทาใหผอานไดเกดความเขาใจมากยงขนนะครบ
*****************************