12-08-2015 03:11 PM
I am trying to build an adaptive noise canceller (LMS type 11) as shown in an NI document. I'm having trouble with the dot product vi. One input vector is an empty array and of course the output is NaN. Its in a feedback loop, so I think the vi should initialized with zero's .
My questions are:
How do I convert a 1D array to a 1D vector?
How do I initialize the VI?
The top part of the vi is a noisy singenerator and the bottom part is the adaptive noise canceller.
Solved! Go to Solution.
12-08-2015 03:24 PM - edited 12-08-2015 03:27 PM
12-09-2015 02:58 PM
Hi GerdW,
Thanks for your input. I appreciate your effort. I will review what you have done. The question I have now is; how do the filter coefficients get updated without feedback? You show the output of the adder at the edge of the while loop not connected, or are you just showing the initialization part?
Regards,
penguin11
12-10-2015 01:17 AM
Hi penguin,
how do the filter coefficients get updated without feedback?
There is a feedback: It's called shift register.
You show the output of the adder at the edge of the while loop not connected
The output of the add function has a wire attached. And it is connected to a shift register. Did I mention shift registers before?
or are you just showing the initialization part?
I just cleaned up your VI. I did not change any functionality (by intention)!
When you have problems to work with shift registers you should take the free online courses offered by NI to LabVIEW beginners!
12-10-2015 04:04 PM
GerdW,
Thanks for your help. I read Hands on Labview (Essick's) chapter on shift registers after I asked the follow up questions, of course. I see what you are talking about. The shift registers seem much simpler than feedback nodes. Your help when beyond the initial questions and is much appreciated.
regards,
Penguin11