MATLAB, basit, özellikten yoksun ama kullanımı oldukça kolay grafik arayüz fonksiyonlarına sahip. Bol bol kopyala yapıştır yaparak (kendi yazdıklarımı tabi 🙂 sade bir arayüz ile darbant frekans modülasyonunu gerçekleştiren bir programcık yazdım. Programın hesaplama ve çizimleri yapan ana fonksiyonu şöyle:
function updateplot () fs = 50*f0max;%örnekleme frekansı Ts = 1/fs;%örnekleme periyodu T = 10*(1/fb);%örnekleme süresi wb = 2*pi*fb;%açısal hız w0 = 2*pi*f0; Be = Ab*fk/fb;%Modülasyon indisi t = 0:Ts:T;%zaman ekseni fb_t = Ab*cos(wb*t);%bildiri işareti fm_t = A0*cos(w0*t+Be*sin(wb*t));%modüle edilmiş taşıyıcı %zaman ekseninin çizimi plot(axes_t,t,fm_t); hold(axes_t,'on'); plot(axes_t,t,fb_t,'r'); hold(axes_t,'off'); climitst = axis(axes_t); axis(axes_t,[0 2*1/fb climitst(3:4)]); xlabel(axes_t,'Zaman (s)'); Fm_f = fft(fm_t)/length(fm_t);%modülasyonlu işaretin FFT'si Nfft = length(Fm_f);%fft uzunluğu f = fs/Nfft*(-(Nfft-1)/2:(Nfft-1)/2);%frekans ekseni %frekans ekseninin çizimi plot(axes_f,f,real(fftshift(Fm_f))); climitsf = axis(axes_f); axis(axes_f,[-1.5*f0max 1.5*f0max climitsf(3:4)]); grid(axes_f); grid(axes_f,'minor'); xlabel(axes_f,'Frekans (Hz)');
Frekans modülasyonunun nasıl oluştuğunu ve darbant frekans modülasyonunun frekans domeninde neler oluşturduğunu görmek isteyenler için güzel bir araç oldu. Arayüz fonksiyonlarını da içeren tam programı görmek/indirmek için tıklayın. Kodu incelerseniz hemen programın başında frekans aralıklarını seçebileceğiniz sabitleri göreceksiniz. Bunları değiştirerek istediğiniz frekanslara ulaşabilirsiniz. Yalnız f0 (taşıyıcı frekansı) ile fb (bildiri işareti frekansı) arasını fazla açmayın. Zira program örnekleme frekansını taşıyıcıya göre belirliyor, fakat örnekleme süresini ise bildiri işaretinin 2 periyodunu kapsayacak şekilde seçiyor. Eğer taşıyıcı frekansını yüksek, bildiri işaretininin periyodunu da uzun olacak şekilde ayarlarsanız işlenmesi gereken örnek sayısı artacaktır. Bu durumda MATLAB’a ekranı güncellemesi için yeterli süreyi tanıdığınızdan emin olun, sonra işler sarpa sarıyor!
“MATLAB darbant frekans modülasyonu inceleme aracı” için bir cevap
Merhaba;
Matlab kullanarak 200nm 400nm arası UV ışınlarının frekansını ölçmek istiyoruz, nasıl bir sensör kullanmalıyız. İlk kez matlab kullanacağız
Ne önerirsiniz, şimdiden teşekkürler