- Notch Filtering: If the crosstalk noise has a distinct frequency component, you can apply a "Notch Filter" to suppress that specific frequency. This approach can help remove the interference without affecting the signals of interest. You can design a "Notch Filter" using MATLAB's signal processing toolbox or other similar tools. https://www.mathworks.com/discovery/notch-filter.html
- Adaptive Filtering: Another approach is to use adaptive filtering techniques like the "Least Mean Squares" (LMS) algorithm or "Recursive Least Squares" (RLS) algorithm. These algorithms can estimate and cancel out the crosstalk noise adaptively based on the characteristics of the interference. Adaptive filtering can be effective when the crosstalk is time-varying or has complex patterns. https://www.mathworks.com/help/dsp/ug/adaptive-noise-cancellation-using-rls-adaptive-filtering.html
- Independent Component Analysis (ICA): ICA is a blind source separation technique that can separate mixed signals into their original sources. By applying ICA to your recorded signals, you may be able to separate the crosstalk noise from the desired signals. ICA assumes that the sources are statistically independent, so it can be effective if the crosstalk noise and the signals of interest have different statistical properties. https://www.mathworks.com/matlabcentral/answers/196281-how-to-denosie-the-background-noise?s_tid=srchtitle
- Time-Domain Analysis: If the crosstalk noise has a consistent time delay relative to the desired signals, you can try to exploit this information. By carefully analyzing the time-domain characteristics of the signals, you might be able to design a filter or a thresholding technique that selectively removes the crosstalk while preserving the signals of interest.
How to remove the crosstalk noise due to DAQ by forcing the signals to zero?
9 views (last 30 days)
Show older comments
Hello,
I collected time domain signals through my 4 channel DAQ, but unfortunately my channels suffer from crosstalk noise when the input excitation is given in channel A, i.e channels B, C and D also shows signals during the same time as the input which is not possible due the presence of delay between the signal propagation. My original signals are shown in fig 1 (original signals). I applied the envelope function from MATLAB to visualise the external envelope of the signal to select to point before which i wanna force the signal to zero which is shown in fig 2. (Signal with envelope). On the left image the cross talk (before 0.8 milli sec) can be seen separated from other signals, but this was obtained after denoising. Before that there was no clear separation. However, on the right image, you can see the cross talk and signal of interest are merged together. I would like to know how i can set the cross talk to be zero. I cannot specify threshold as it may affect my signals of interest as well. I attached the matlab files as well. The left plot corresponds to chopped_data.D6.B and the right to chopped_data.D6.D.
Note: My excitation is 70 kHz centre frequency with 10 cycle hann modulated signal. and my cross talks appears to be the same as the excitation signal.
0 Comments
Answers (1)
Yatharth
on 9 Oct 2023
Hi Yaser,
To address the crosstalk issue in your time domain signals, you can consider employing signal processing techniques to mitigate the unwanted interference. Here are a few suggestions:
It is important to note that the effectiveness of these techniques depends on the characteristics of your specific crosstalk noise and signals. Experimentation and fine-tuning may be necessary to achieve the desired results.
I hope this helps.
0 Comments
See Also
Categories
Find more on Simulation, Tuning, and Visualization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!