LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Instability using ANC daqmx

Hello everybody, I have this problem with my VI in Labview. During the simulation, my ErrorMic becomes unstable, like to image: 

Maxim898_0-1649162713108.png

 

Can anyone help me please? In my opinion the problem is to create a shift register in Error signal, but it doesn'work.

BR

Ma

0 Kudos
Message 1 of 25
(1,046 Views)

Hi Maxim,

 


@Maxim898 wrote:

During the simulation, my ErrorMic becomes unstable,


What is an "ErrorMic"? Where does it "become unstable"?

 


@Maxim898 wrote:

Can anyone help me please? In my opinion the problem is to create a shift register in Error signal, but it doesn'work.


As we have no code we cannot debug that code.

Keep in mind: we cannot edit/debug/run images with LabVIEW!

 

Please explain what exactly "doesn't work"…

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 2 of 25
(1,033 Views)

Thank you for your cooperation. In attached my VI. The reference microphone and error microphone are used to
pick up the unwanted noise and to sense the residual noise, respectively. Then, anti-noise is generated
by the noise control filter and radiated from the secondary source.

0 Kudos
Message 3 of 25
(1,030 Views)

Hi Maxim,

 


@Maxim898 wrote:

In attached my VI.


I'm missing subVIs, from an addon and from your project…

 

What means "the ErrorMic becomes unstable"?

Why don't you cleanup the block diagram?

 

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 4 of 25
(1,025 Views)

Hi Knight,

thank you for your request. The subVIs belong to the AFT adaptive filter tollkit and DAQmx write and read channels.

 

What means "the ErrorMic becomes unstable"?: it means that the system active noise control doesn't work. The output of the filter FxLMS is unstable.

 

More questions?

 

BR

 

Max

0 Kudos
Message 5 of 25
(998 Views)

You've got a feedback loop running to try to implement active noise cancellation.  A problem (possibly the *biggest* problem) is the inescapable latency involved with buffered input and buffered output.  A lot of feedback systems can become unstable in the presence of time delays.

 

The default behavior for buffered analog output in particular can add a *lot* of delay.   Data you write to the task has to work its way through the PC-side task buffer until DAQmx delivers it down to the device.   And *then* it has to work its way through the onboard buffer before finally becoming a real-world output signal.

 

Unfortunately, you'll face a whole *other* problem if you run unbuffered tasks.  You'll lose the precision of hardware-clocked timing, and you probably won't be able to sample and loop fast enough to capture and recreate everyday soundwave frequencies.

 

Unless the "noise" source is very regular and predictable, I'm not sure you can get there from here under Windows.  At least not for real-time noise cancellation.   There would be other ways to test out your filters and algorithms in a non-real-time way though.  

 

 

-Kevin P

 

CAUTION! New LabVIEW adopters -- it's too late for me, but you *can* save yourself. The new subscription policy for LabVIEW puts NI's hand in your wallet for the rest of your working life. Are you sure you're *that* dedicated to LabVIEW? (Summary of my reasons in this post, part of a voluminous thread of mostly complaints starting here).
0 Kudos
Message 6 of 25
(990 Views)

Kevin thank you very much. You are very kind.

I created all system under pci-express without using interface with host pc. I implemented in pcie target only.

 

Can you help me?

 

Max

0 Kudos
Message 7 of 25
(985 Views)

Hi Maxim,

 


@Maxim898 wrote:

I created all system under pci-express without using interface with host pc. I implemented in pcie target only.


"PCIexpress"/"PCIe" is a communication bus inside a computer. How do you "create a system" using just a communication bus without any "interface with host pc"???

 

Are you using a Windows computer or do you use a NI RT target supporting DAQmx?

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 8 of 25
(976 Views)

Maxim898_0-1649181289834.png

Yes, I created interface with host. But my problem is not acquisition of the signals from microphne or loudspeaker, but my problem is the instability when I turn on ANC system, I don't see any noise cancellation (from error microphone).

 

I hope, i have made my meaning clear 🙂 🙂

0 Kudos
Message 9 of 25
(973 Views)

Hi Maxim,

 


@Maxim898 wrote:

my problem is the instability when I turn on ANC system, I don't see any noise cancellation (from error microphone).


Kevin already pointed out the problem…

 

How is you rcomputer connected to that PXI system? If there's a LAN cable involved you add even more delays and buffers in the DAQmx AI/AO system!

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 10 of 25
(969 Views)