You are on page 1of 5

AUTO KORELASI DUA BUAH SINYAL

I.

DASAR TEORI Korelasi silang mirip dengan konvolusi dari dua fungsi. Dalam autokorelasi, yaitu korelasi silang dari sinyal dengan dirinya sendiri, akan selalu ada puncak pada lag nol kecuali sinyal adalah sinyal nol.Autokorelasi adalah korelasi silang dari sinyal dengan dirinya sendiri. Secara informal, itu adalah kesamaan antara pengamatan sebagai fungsi jeda waktu antara mereka. Ini adalah alat matematika untuk menemukan pola berulang, seperti adanya sinyal periodik dikaburkan oleh kebisingan, atau identifikasi frekuensi dasar hilang dalam sinyal tersirat oleh frekuensi harmonik. Hal ini sering digunakan dalam pemrosesan sinyal untuk menganalisis fungsi atau serangkaian nilai-nilai, seperti sinyal domain waktu. Diskrit autokorelasi R pada lag j untuk xn sinyal diskrit adalah sebagai berikut. ()

1. Tentukan dan plot respon impulse dan respon step dari sistem waktu diskrit di bawah ini: a. y[n] = x[n] - y[n-1] - 0.9y[n-2] b. y[n] = x[n] - 0.5y[n-1] + 0.2y[n-2] 2. Tentukan auto correlation dari y[n] pada soal nomor 1 di atas. II. Program A. Source Code #define Fs 100 double xa[Fs]; double ya[Fs]; double xb[Fs]; double yb[Fs]; double ato[Fs]; bool impulse=true,step=true,atoc=true; int n,k,j; double i,temp;

void satua(){ //clear for(n=0;n<Fs;n++){ xa[n]=0; ya[n]=0; xb[n]=0; yb[n]=0;

ato[n]=0; } //step for(n=0;n<Fs;n++){ xa[n]=1; ya[n]=xa[n]-ya[n-1]-(0.9*ya[n-2]); } //impulse for(n=0;n<Fs;n++){ if(n==0){ xb[n]=1; yb[n]=xb[n]-yb[n-1]-(0.9*yb[n-2]); } else{ xb[n]=0; yb[n]=xb[n]-yb[n-1]-(0.9*yb[n-2]); } } //auto corelasi for(n=0;n<Fs;n++){ temp=0; for(k=0;k<Fs-n;k++){ temp=temp+ya[k]*ya[k+n]; } ato[n]=temp; } } void satub(){ //clear for(n=0;n<Fs;n++){ xa[n]=0; ya[n]=0; xb[n]=0; yb[n]=0; ato[n]=0; } for(n=0;n<Fs;n++){ xa[n]=1; ya[n]=xa[n]-(0.5*ya[n-1])+(0.2*ya[n-2]); } //impulse for(n=0;n<Fs;n++){ if(n==0){ xb[n]=1; yb[n]=xb[n]-(0.5*yb[n-1])+(0.2*yb[n-2]); }

else{ xb[n]=0; yb[n]=xb[n]-(0.5*yb[n-1])+(0.2*yb[n-2]); } } //auto korelasi for(n=0;n<Fs;n++){ temp=0; for(k=0;k<Fs-n;k++){ temp=temp+ya[k]*ya[k+n]; } ato[n]=temp; } } void CAutoCorrelationDlg::OnStart() { // TODO: Add your control notification handler code here m_grafikstep.GetSeries(0).Clear(); m_grafikimpulse.GetSeries(0).Clear(); m_grafikauto.GetSeries(0).Clear(); if(impulse == true || step == true || atoc == true){ for(n=0;n<Fs;n++){ if(impulse == true){ m_grafikimpulse.GetSeries(0).AddXY(0.01*n,yb[n],"" ,RGB(255,0,0)); } if(step == true){ m_grafikstep.GetSeries(0).AddXY(0.01*n,ya[n],"",RG B(255,0,0)); } if(atoc == true){ m_grafikauto.GetSeries(0).AddXY(0.01*n,ato[n],"",R GB(255,0,0)); } } } } void CAutoCorrelationDlg::Onsoal1() {

// TODO: Add your control notification handler code here satua(); } void CAutoCorrelationDlg::Onsoal2() { // TODO: Add your control notification handler code here satub(); } void CAutoCorrelationDlg::Onimpulsecheck() { // TODO: Add your control notification handler code here UpdateData(1); if(impulse==true){ impulse=false; } else{ impulse=true; } UpdateData(0); } void CAutoCorrelationDlg::Onstepcheck() { // TODO: Add your control notification handler code here UpdateData(1); if(step==true){ step=false; } else{ step=true; } UpdateData(0); } void CAutoCorrelationDlg::OnAuto() { // TODO: Add your control notification handler code here UpdateData(1);

if(atoc==true){ atoc=false; } else{ atoc=true; } UpdateData(0); } B. Tampilan Program

Tampilan Awal Program

Auto Korelasi Persamaan (a)

Auto Korelasi Persamaan (b) III. Analisa Dan Kesimpulan Program di atas merupakan korelasi antara dua buah sinyal yang memiliki bentuk sama dan bentuk tidak sama. Dari hasil yang didapat, auto korelasi berbentuk seperti eksponensial. Hal ini dikarenakan setiap titik dari step response memiliki bentuk sinus dan semakin mengecil amplitudonya. Sinyal ini tetap menunjukkan adanya parameter amplitudo yang tinggi di nilai step tertentu. pada titik lag 0 terdapat amplitudo yang sangat tinggi.

You might also like