HW 13b: Difference between revisions
Jump to navigation
Jump to search
Line 25: | Line 25: | ||
===Adaptive Filter=== |
===Adaptive Filter=== |
||
<code> |
|||
% LMS algorithm for adaptive noise cancellation |
% LMS algorithm for adaptive noise cancellation |
||
h = zeros(N,1); |
h = zeros(N,1); |
||
mu = 1/(10*N*var(n)); |
mu = 1/(10*N*var(n)); |
||
Line 38: | Line 38: | ||
%/(xk'*xk); % For the previous line. |
%/(xk'*xk); % For the previous line. |
||
end |
end |
||
</code> |
|||
====Questions==== |
====Questions==== |
Revision as of 21:47, 11 December 2008
Installing Ubuntu
- VMWare Player
- Pre-compiled Ubuntu 8.10
- U:vmplanet
- P:vmplanet.net
GNU Radio + GNU Radio Companion
- GNU Radio Companion is installed with GNU Radio 3.2 and above. Install from the trunk. Synaptic Package Manager will only install 3.0.4
- GNU Radio Companion is the GUI for GNU Radio
Installing GNU Radio + GNU Radio Companion
- Grab the following files from mu/shared/class/engr/455/Adaptive Filter SDR Project/
- grc.tar.gz
- http://gnuradio.org/trac/wiki/UbuntuInstall
SSB Demodulation
- Convert the *.auf files (and not the *.au files) using Audacity, note the sampling rate
- Wave source allows you to play the converted *.wav files
- Bandpass filter to single out the 3kHz (and get rid of the 1/f noise at the same time)
- Shift down to baseband with a cosine wave
- Low pass filter to single out the signal at the baseband (and to throw out the signal at +/- 2f)
- Use your favorite sink to hear/see the results
Octave Help
Adaptive Filter
% LMS algorithm for adaptive noise cancellation
h = zeros(N,1);
mu = 1/(10*N*var(n));
%mu = 1.0;
for k=N:Ls
xk = n(k:-1:(k-N+1));
nhat(k) = h'*xk';
e(k) = - y(k) + nhat(k);
h = h - mu*e(k)*xk';
%/(xk'*xk); % For the previous line.
end
Questions
- Is h the adaptive filter coefficients? Yes!
- When you save the voice, is it an Nx1 or 1xN matrix?
- Whos (octave) will show all variables and their dimensions