How can I design Adaptive Filter by using LMS algorithm??

9 次查看(过去 30 天)
Leaset MEan Square algorithm

回答(2 个)

Wayne King
Wayne King 2013-4-27

sandeep URITI
sandeep URITI 2014-2-16
clc clear all; close all;
Fc=4000000; %Carrier Frequency =1Mhz f=Fc; Fs=16000000; %sampling frequency fm=700000; Fd=fm; sensors=4; % number of Sensors angle_tx=pi/4; %Transmitter angle = 45 degrees angle_jam=pi/4; %jammer angle = 45 degree sens_wts=[0.2 0.4 0.6 0.8]; %Assigning Sensor weights c=3e08; lembda=c/f; % Transmitted signal wavelength
samps=2*(6*Fs/fm); % Number of samples of Data max=(1/Fs)*(samps-1); t=0:1/Fs:(max);
%Modulating Data modsignal = sin(2*pi*fm*t); % Baseband Signal modsignal(modsignal>0)=1; modsignal(modsignal<0)=-1; CAR=sin(2*pi*Fc*t); %carrier t_sig=modsignal.*CAR; % modulated Data ch_samps=length(t_sig); %Modulated Signal Data Samples g=0:ch_samps-1; % figure(2); % plot(g,t_sig); %plot Transmitted signal % title('Transmitted Modulated signal'); grid on; % axis([0 8e6 0 1]);
d=lembda/2; %Sensor separation meu=15e-6; %Step size
%FFT of Transmitted signal k=ch_samps; fft_samps = 2^nextpow2(k); t_fft = fft(t_sig,fft_samps)/k; fprime = Fs/2*linspace(0,1,fft_samps/2); figure(3); subplot(3,1,1) %plot frequency components of Transmitted Signal plot(fprime,2*abs(t_fft(1:fft_samps/2))); grid on; title('Original Transmitted signal frequency spectrum'); xlabel('frequency Hz'); ylabel('magnitude'); axis([0 8e6 0 1]) %Jammer Signal t=0:1/Fs:max; j_sig=1*sin(2*pi*Fc*t);
%FFT of Jamming Signal fft_samps = 2^nextpow2(k); j_fft = fft(j_sig,fft_samps)/k; fprime = Fs/2*linspace(0,1,fft_samps/2); % figure(4); % plot(fprime,2*abs(j_fft(1:fft_samps/2))); %plot frequency components of Jamming Signal % grid on; % title('Spectrum of Jamming signal'); % xlabel('Frequency (Hz)'); % ylabel('magnitude'); % axis([0 8e6 0 1])
%Array Propogation Vectors for t2=1:sensors; v(t2)=exp(i*(t2-1)*2*pi*d*sin(angle_tx)*1/lembda);%propagation vector
end
for t3=1:sensors; eeta(t3)=exp(i*(t3-1)*2*pi*d*sin(angle_jam)*1/lembda);%Propagation Vector for Jamming Signal end
%Jammer Reception at the Sensor Array j_rcvd=j_sig'*eeta; %Jamming signal Reception @ Sensors
% j_sig+t_sig = data after reception @ anteena x=t_sig'*v+j_rcvd;
%FFT of Recieved Signal @ Sensors fft_samps = 2^nextpow2(k); x_fft = fft(x,fft_samps)/k; fprime = Fs/2*linspace(0,1,fft_samps/2); figure(3); subplot(3,1,2 ) plot(fprime,2*abs(x_fft(1:fft_samps/2))); % Plot frequency components of Rxd signal Grid on; title('Signal After reception at Antenna (Jamming Signal + Desired Signal)'); xlabel('Frequency (Hz)'); ylabel('Magnitude'); axis([0 8e6 0 1])
%LMS Algorithm for n1=1:ch_samps x_est=sens_wts*x'; E=t_sig-x_est; sens_wts=sens_wts+(meu*E*x); end
%FFT of Estimated fft_samps = 2^nextpow2(k); z_fft = fft(x_est,fft_samps)/k; fprime = Fs/2*linspace(0,1,fft_samps/2); figure(3); subplot(3,1,3); plot(fprime,2*abs(z_fft(1:fft_samps/2))); % Plot frequency components of Estimated signal Grid on; title('Estimated signal frequency spectrum'); xlabel('Frequency (Hz)'); ylabel('Magnitude'); axis([0 8e6 0 1]) %************************** %Scatter plot of estimated signal
% y_est = ddemodce(x_est,Fd,Fs*2,'psk',2); % % y_est= circshift(y_ester,3) % figure(1); % subplot(2,1,2); % stem(y_est,'filled'),grid on; % axis([2 101 0 1]);

类别

Help CenterFile Exchange 中查找有关 Adaptive Filters 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by