Hi all,
I'm trying to adapt the ANC example from MathWorks (https://www.mathworks.com/videos/active-noise-control-from-modeling-to-real-time-prototyping-1561451814853.html) but using National Instrument DAQs instead of the speedgoat one. here is my modified model:
i keep getting an error at the path estimation boxes:
saying that there's a mistmatch. I see that there's a mismatch, but the "51200x1" error mic signal is coming directly from the NI DAQmx input from a microphone, and I cannot make the block sizes less than 83.... is there a way I can fix this?
thank you!

댓글 수: 2

Jay
Jay 2024년 6월 26일
Does anyone have the sample file of "Speedgoat_FXLMS_ANC_model.slx"?
Jimmy Lapierre
Jimmy Lapierre 2024년 6월 26일
I'm not sure if you mean the SLX:
openExample('audio/ActiveNoiseControlWithSimulinkExample')
Or the optional "noise" file (washing machine), which you could generate using one of the washing machine recordings in toolbox\audio\samples

댓글을 달려면 로그인하십시오.

답변 (1개)

Jimmy Lapierre
Jimmy Lapierre 2020년 3월 2일

0 개 추천

Hi Olivia, it sounds like your device is incapable of ultra-low latency operation. Unless the noise to cancel is steady-state and exclusively tonal, the total latency time of the system has to be faster than the speed of sound between the error microphone and the loudspeaker.
The example here uses the Speedgoat since its latency can be as low as approximately 2 samples. If you intend to develop ANC for something physically small like headphones, you will need that ultra-low latency (and probably increase the sample rate of the model to further reduce latency).
So you could add buffering to the error microphone in the model to make it execute, but the ANC performance will be severly limited if the latency is too long.

댓글 수: 4

Olivia Park
Olivia Park 2020년 3월 2일
My sample rate is currently set to 51200, and I’m not trying to implement ANC as a headset but more for a rook using an array of microphones, but I will try the buffer and see what happens
Olivia Park
Olivia Park 2020년 3월 2일
I tried to buffer just the error mic, but one of the LMS filters still gave an error, so I tried to buffer both mics but i get this error "The block 'FxLMS_ANC_test/Buffer' of type 'Buffer' is a multi-rate block. Currently Simulink supports only single-rate blocks of this type when the model is configured for concurrent execution."
Jimmy Lapierre
Jimmy Lapierre 2020년 3월 3일
Have you tried to uncheck "allow tasks to execute concurrently on target" in Configuration, Solver, down in the Tasking section?
Olivia Park
Olivia Park 2020년 3월 3일
yes, and now it gives me this error:

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Audio Processing Algorithm Design에 대해 자세히 알아보기

질문:

2020년 3월 2일

댓글:

2024년 6월 26일

Community Treasure Hunt

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

Start Hunting!

Translated by