Tulisan ini mencoba untuk memberikan contoh bagaimana membuat sebuah gelombang menggunakan script Matlab. Gelombang dapat digunakan untuk melakukan simulasi analisis sinyal pada proses selanjutnya.

Gelombang yang dibuat dapat dipilih antara gelombang periodik atau gelombang aperiodik.

Gelombang Periodik

Gelombang periodik dapat berupa gelombang sinus, cosinus, gigi gergaji ataupun gelombang kotak. Periode gelombang juga dapat diatur sesuai kebutuhan sehingga dapat dibuat gelombang dengan banyak variasi gelombang .

Berikut adalah sebuah contoh script untuk membangkitkan gelombang gigi gergaji dan gelombang kotak.

fs = 10000;
t = 0:1/fs:1.5;
x1 = sawtooth(2*pi*50*t);
x2 = square(2*pi*50*t);
subplot(2,1,1)
plot(t,x1)
axis([0 0.2 -1.2 1.2])
xlabel('Time (sec)')
ylabel('Amplitude') 
title('Sawtooth Periodic Wave')
subplot(2,1,2)
plot(t,x2)
axis([0 0.2 -1.2 1.2])
xlabel('Time (sec)')
ylabel('Amplitude')
title('Square Periodic Wave')

Gelombang Gigi Gergaji dan Kotak

Gelombang Aperiodik

Sedangkan untuk membuat sebuah gelombang Aperiodik bisa menggunakan contoh berikut:

fs = 10000;
t = -1:1/fs:1;
x1 = tripuls(t,20e-3);
x2 = rectpuls(t,20e-3);
subplot(2,1,1)
plot(t,x1)
axis([-0.1 0.1 -0.2 1.2])
xlabel('Time (sec)')
ylabel('Amplitude')
title('Triangular Aperiodic Pulse')
subplot(2,1,2)
plot(t,x2)
axis([-0.1 0.1 -0.2 1.2])
xlabel('Time (sec)')
ylabel('Amplitude')
title('Rectangular Aperiodic Pulse')

Sinyal Aperiodik

Untuk membuat gelombang pulsa misalnya pulsa Gauss atau  gelombang fungsi sinus adalah sebagai berikut:

tc = gauspuls(‘cutoff’,50e3,0.6,[],-40);
t1 = -tc : 1e-6 : tc;
y1 = gauspuls(t1,50e3,0.6);
t2 = linspace(-5,5);
y2 = sinc(t2);
subplot(2,1,1)
plot(t1*1e3,y1)
xlabel(‘Time (ms)’)
ylabel(‘Amplitude’)
title(‘Gaussian Pulse’)
subplot(2,1,2)
plot(t2,y2)
xlabel(‘Time (sec)’)
ylabel(‘Amplitude’)
title(‘Sinc Function’)

 

Referensi:

Signal Generation and Visualization