si(t) MODUL PEMBANGKITAN SINYAL I. Tujua. Peserta megerti cara membagkitka siyal megguaka Matlab 2. Peserta dapat membagkitka ada dasar megguaka Matlab II. Peragkat Yag Diperluka set PC yag dilegkapi dega software Matlab III. Lagkah-Lagkah Percobaa 3. Pembagkita Siyal Waktu Kotiu a) Pembagkita siyal sius (siyal periodic) Siyal sius memiliki betuk umum: dimaa A= Amplitudo, = perode, f=frekuesi, da adalah sudut phase. Utuk membagkitka siyal sius, buat program berikut fs=; % frekuesi samplig khz t=:/fs:; % utuk detik A=; % amplitudo f=; % frekuesi Hz phase=; % sudut fase x=a*si(2*pi*f*t + phase); plot(t,x) xlabel('t') ylabel('si(t)') title('siyal Sius') simpa da jalaka, maka aka tampil grafik berikut: Siyal Sius.8.6.4.2 -.2 -.4 -.6 -.8 -..2.3.4.5.6.7.8.9 t Siyal yag terbagkit adalah sebuah sius dega amplitudo A=, frekuesi f = Hz da fase awal θ =. Diharapka ada sudah memahami tiga parameter dasar pada siyal sius ii. Modul Praktikum Pegolaha Siyal Digital
x[] Utuk lebih memahami pegaruh perubaha tiga parameter tersebut, coba lajutka program Saudara dega megubah-ubah ketiga parameter tersebut utuk beberapa ilai (miimal 3 ilai). Kemudia perhatika apa yag terjadi da beri kometar Ada terhadap perubaha yag terjadi. (Note: utuk melihat pegaruh perubaha suatu parameter, misal parameter Amplitudo, ada dapat megubah-ubah iali Amplitudo tersebut pada beberapa ilai, sedagaka parameter yag lai tetap/tidak diubah) Aka lebih efektif jika program dibuat dalam betuk fuctio (pada modul ii aka diberi cotoh membuat fuctio utuk membagkitka fugsi sius, selajutya diharapka Saudara bisa membuat fuctio sediri). fuctio []=sius(a, f, phase) fs=; % frekuesi samplig khz t=:/fs:; % utuk detik x=a*si(2*pi*f*t + phase); plot(t,x); xlabel('t') ylabel('si(t)') title('siyal Sius') utuk memaggil/megguaka fugsi tersebut, cukup ketikka: >> sius(2, 2, ) %membagkitka fugsi sius dega A=2, f=2, da sudut phase= 3.2 Pembagkita Siyal Waktu Diskrit a) Pembagkita siyal/barisa cuplik satua atau sample uit Barisa cuplik satua memiliki betuk umum: atau utuk membagkitka barisa cuplik satua, ketikka program berikut: k=; =-5; 2=5; =[:2]; x =[(-k) == ]; % aka berilai saat(-k)=, selai itu beriali stem(,x); title('siyal Cuplik Satua') xlabel('') ylabel('x[]') hasil plotya adalah Siyal Cuplik Satua.9.8.7.6.5.4.3.2. -5-4 -3-2 - 2 3 4 5 Coba ada ulagi lagkah-lagkah program di atas, masukka 3 ilai k yag berbeda-beda. Ada juga bisa megubah batas-batas da 2. Catat apa yag terjadi. Modul Praktikum Pegolaha Siyal Digital 2
x[] b) Pembagkita siyal Lagkah Satua (Uit Step) Barisa lagkah satua memiliki betuk umum: atau utuk membagkitka barisa lagkah satua, ketikka program berikut: k=; =-5; 2=5; =[:2]; x =[(-k) >= ]; stem(,x); title('siyal Lagkah Satua') xlabel('') ylabel('x[]') hasil ruig program diatas adalah: Siyal Lagkah Satua.9.8.7.6.5.4.3.2. -5-4 -3-2 - 2 3 4 5 Coba ada ulagi lagkah-lagkah program di atas, masukka tiga ilai k yag berbeda-beda. Ada juga bisa megubah batas-batas da 2. Catat apa yag terjadi. c) Pembagkita siyal ekspoesial Siyal ekspoesial didefiisika sebagai berikut: utuk membagkitka barisa ekspoesial, ketikka program berikut: a=.5 =-5; 2=5; =[:2] x=a.^ stem(,x); title('siyal Ekspoesial') xlabel('') ylabel('x[]') hasil ruig program diatas adalah: Modul Praktikum Pegolaha Siyal Digital 3
x[] x[] 35 Siyal Ekspoesial 3 25 2 5 5-5 -4-3 -2-2 3 4 5 Coba ada ulagi lagkah-lagkah program di atas, masukka ilai a yag berbeda-beda, yaitu tiga ilai a utuk a>, a< da diataraya. Ada juga bisa megubah batas-batas da 2. Catat apa yag terjadi. d) Pembagkita siyal acak Utuk membagkitka siyal acak, ketikka program berikut: =-; 2=; =[:2]; p=legth(); x=rad(,p); stem(,x); title('siyal radom') xlabel('') ylabel('x[]') hasil ruig program diatas adalah:.9 Siyal radom.8.7.6.5.4.3.2. - -8-6 -4-2 2 4 6 8 Coba ada ulagi lagkah-lagkah program di atas, Lakuka perubaha pada ilai Fs, sehigga berilai 5, 2,, 6, 7, da 8. Catat apa yag terjadi? Modul Praktikum Pegolaha Siyal Digital 4
x[] e) Pembagkita siyal sius waktu diskrit Siyal sius merupaka siyal periodic. Secara umum sifat dasar dari siyal waktu diskrit memiliki kemiripa dega sius waktu kotiyu. Utuk membagkitka siyal sius waktu diskrit. Fs=2;%frekuesi samplig t=:/fs:;%proses ormalisasi f=; A=; x=a*si(2*pi*f*t); stem(t,x) title('siyal sius waktu diskrit') xlabel('') ylabel('x[]') hasil ruig program diatas adalah: Siyal sius waktu diskrit.8.6.4.2 -.2 -.4 -.6 -.8 -..2.3.4.5.6.7.8.9 Coba ada ulagi lagkah-lagkah program di atas, gatilah ilai Fs, f, da A utuk beberapa ilai. Beri kometar Ada! 3.3 Pembagkita Siyal Suara Sebelum memulai membuat suara(music), mari kita tijau kembali sedikit dasar dari siyal AC. Aggaplah siyal sius seperti ditujukka oleh gambar. Modul Praktikum Pegolaha Siyal Digital 5
Siyal sius tersebut mempuyai persamaa matematis berikut: v(t) = A * si (2*pi*f*t) Dimaa: A = amplitudo f = frekuesi (Hertz) t = waktu (detik) T merupaka periode siyal (dalam detik) da T=/f. Suara (soud) terbetuk ketika gelombag diatas diguaka utuk meggetarka molekul baha peratara pada frekuesi yag dapat didegar mausia (frekuesi audio) yaitu dalam rage 3Hz sampai 3kHz. Bila igi membuat gelombag / siyal seperti pada gambar 4, perlu megevaluasi persamaa v(t)=a.si (2*pi*f*t), pada waktu diskrit (t pada gambar 4 ditujukka sebagai waktu sesaat dega titik merah), biasaya pada selag waktu tertetu (jarak atar t). Selag waktu atar t tersebut, utuk selajutya disebut iterval waktu, haruslah cukup (seberapa cukup? Igat kriteria Nyquist) utuk medapatka siyal yag halus. Iterval waktu ii disebut sebagai iterval samplig atau samplig-rate, da merupaka proses pecuplika siyal kotiyu mejadi siyal diskrit pada titik-titik yag disebut samplig. Samplig rate, pada gambar diatas adalah Ts, yag merupaka frekuesi samplig, dega fs =/Ts. Sebagai cotoh, peritah pada Matlab utuk meghasilka siyal sius dega amplitudo, pada frekuesi 466,6Hz (adalah ada A pada tabel oktaf) adalah >>fs=8; >>t=:/fs:; >>v=si(2*pi*466.6*t); sekarag vektor v berisi sampel dari siyal sius pada t= sampai t=, dega jarak atar sampel adalah /8 detik, merupaka kualitas stadar suara audio. Sekarag siyal sius tersebut dapat digambarka ataupu didegarka. Utuk meggambarka siyal tersebut diguaka peritah: >>plot(v); Utuk medegarka vektor v tersebut pada frekuesi samplig 8KHz (default), tetu saja komputer ada harus dilegkapi dega Soud Card da Speaker, diguaka peritah: >>soud(v); Utuk meyimpa vektor v dalam format wav kedalam harddisk komputer diguaka peritah: >>wavwrite(v, amafile ); Tabel. Stadar frekuesi ada-ada pada oktaf dasar Nada C D E F G A B C Frek(Hz) 262 294 33 349 392 44 494 523 Modul Praktikum Pegolaha Siyal Digital 6
v(t) v(t) Lakukaka lagkah-lagkah percobaa sebagai berikut:. Buatlah file baru pada Matlab Editor. 2. Membuat ada A pada frekuesi 44Hz. Ketikka peritah berikut. fs = 8; t = :/fs:; v =.5*cos(2*pi*44*t); subplot(2,,); plot(t,v); axis([. - ]) soud(v,fs); title('.5cos((2pi)44*t)') xlabel('time (sec)') ylabel('v(t)') % frekuesi samplig pada 8KHz % pajag tiap ada detik % ada A % gambarka siyal v % atur skala % buyika pada fs 8kHz! 3. Tambahka offset DC pada siyal ada A sebelumya. Ketiklah peritah tambaha berikut dibawah listig omor 2. Da jalaka kembali. pause v =.5+v; % apa yag terjadi bila ditambah kompoe DC subplot(2,,2); plot(t,v); axis([. - ]) soud(v,fs); title('.5 +.5cos((2pi)44*t)') xlabel('time (sec)') ylabel('v(t)').5cos((2pi)44*t).5 -.5 -..2.3.4.5.6.7.8.9. Time (sec).5 +.5cos((2pi)44*t).5 -.5 -..2.3.4.5.6.7.8.9. Time (sec) Maka seharusya aka terdegar ada yag sama karea teliga mausia tidak merespo bias DC. Bila tidak terdegar sama kemugkia speaker telah saturasi yag meyebabka siyal terpotog. Modul Praktikum Pegolaha Siyal Digital 7
x(t) v2(t) 4. Bagaimaa bila dua buah ada digabug. Buatlah file baru. Ketikka peritah baru berikut. fs = 8; t = :/fs:; v =.5*cos(2*pi*44*t); v2 = v+.5*cos(2*pi*88*t); soud(v2,fs); plot(t,v2); title('2 ada') axis([. - ]) xlabel('time (sec)') ylabel('v2(t)') % frekuesi samplig pada 8KHz % pajag tiap ada % ada A % ditambahka ada lai % buyika pada fs 8kHz 2 ada.8.6.4.2 -.2 -.4 -.6 -.8 -..2.3.4.5.6.7.8.9. Time (sec) 5. Membuat suara dega frekuesi yag semaki aik. Ketikka peritah baru berikut. fs=8; % frekuesi samplig pada 8KHz t=:/fs:2; % selama 2 detik f = 5*t; % frekuesi maksimum 5*2 = Hz x=cos(2*pi*(f.*t)); % siyal cos dega frekuesi maki aik plot(t,x) title('chirp Sigal') xlabel('time (Sec)') ylabel('x(t)') axis([.3 - ]) soud(x,fs) % buyika pada fs 8kHz Chirp Sigal.8.6.4.2 -.2 -.4 -.6 -.8 -.5..5.2.25.3 Time (Sec) Modul Praktikum Pegolaha Siyal Digital 8
6. Buatlah tagga ada dasar dega megetikka peritah baru berikut. Jalaka da perhatika hasilya. fs=8; % frekuesi samplig 8kHz t=:/fs:.25; % pajag ot ¼ detik c=si(2*pi*262*t); % ada c d=si(2*pi*294*t); % ada d e=si(2*pi*33*t); % ada e f=si(2*pi*349*t); % ada f g=si(2*pi*392*t); % ada g a=si(2*pi*44*t); % ada a b=si(2*pi*494*t); % ada b c=si(2*pi*523*t); % ada C ol=zeros(size(t)); % spasi kosog uyil=[b,ol,a,ol,g,ol,a,ol,b,ol,a,ol,a,ol,... ol,b,ol,a,ol,g,ol,e,ol,g,ol,e,ol,e]; soud(uyil,fs); % maika pada fs 8kHz wavwrite(uyil,'d:\uyil.wav'); % simpa ke file WAV Selamat meikmati ^_^ Buatlah rigtoe sederhaa seperti pada bagia 3.3 omor 6. Referesi: [] Tri Budi, Miftahul Huda, Modul Praktikum DSP, PENS-ITS, 2 [2] Hary Oktaviato, Modul Praktikum DSP, PENS-ITS, 2 Modul Praktikum Pegolaha Siyal Digital 9