How do I filter an isolated differential input? - Page 1
Forum section: electronics / projects

author: v8dave
author_rank: Regular Contributor
timestamp: November 28, 2015, 03:21:27 pm
content: I have a design where the input is measuring a voltage drop across a resistor to detect the current drawn by the device. As the device draws +24V I have used an isolated ADC so that the ADC does not see the common mode voltage. A bit like a multimeter reading the voltage across the resistor. I feed each side of the resistor to the differential input on an MCP3428 ADC so that it measures from 0.4 to 2.0 voltage for the 4-20mA signal. This works fine but I am seeing some noise and I would like to filter this at the PCB level.For my normal single ended ADC inputs I have used a simple low pass RC filter with and this works very well to give me a clean stable input.There is a common ground for the 4-20mA sensor so could I use this and put 2 of the filters on each of the ADC differential inputs? Would this be the correct way to filter the differential input?

author: qwaarjet
author_rank: Regular Contributor
timestamp: November 28, 2015, 09:13:48 pm
content: I used a LT1167, at unity gain, in an application like this to remove the common mode and drive a ADC I had several filtering stages to make a 3rd order low pass but once the the common mode is out you can do whatever filtering you want.

author: DanielS
author_rank: Frequent Contributor
timestamp: November 28, 2015, 09:26:26 pm
content: When you have a differential signal, you gain very little from attempting to use it in your input circuit compared to simply tying it to chassis ground since most of your common-mode noise rejection is done by the differential input stage.If you want to do basic filtering on a differential signal, you can put an RC directly accross S+ and S-.

author: v8dave
author_rank: Regular Contributor
timestamp: November 29, 2015, 02:06:14 am
content: I have very little board space left to add any more devices so I did a Google search and I found some stuff on low pass filtering of differential inputs with a simple RC circuit on each + and - input. Looks like I can get that onto my board so I will hack this up this week and see if this works and if successful, I can respin the PCB.I think this will be similar to what DanielS said below.

author: Marco
author_rank: Super Contributor
timestamp: November 29, 2015, 02:49:16 am
content: Any mismatch will create a high pass filter of the common mode onto your differential signal that way.I think he means that you should put a single RC series circuit in parallel with your shunt, the filtered differential signal is the voltage across the capacitor.

author: v8dave
author_rank: Regular Contributor
timestamp: November 29, 2015, 03:02:29 am
content: Quote from: Marco on November 29, 2015, 02:49:16 amAh yes, I see what you mean and I did dig deeper when I saw your posting and they do talk about the miss match. I'll build a test circuit and see what it does. The sensor itself is just pressure and temperature so they change very slowly and sampling time is only around 10 times per second. The 100Hz low pass filer I use on the single ended inputs has reduced the noise to less than 1 decimal place whereas before I was seeing changes in the least significant digits. If I can get the same response from the isolated differential input, the design will be ideal.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: November 29, 2015, 03:56:57 am
content: It's almost always better to filter individual lines independently, making sure to match component values within tolerance, to minimize phase errors. You get CM and diff filtering in the same step.You can apply CM or diff filtering independently (or at least, to a certain extent), but unless it's well thought out, it usually just makes things worse. Example: common mode choke on USB data pair. Without any termination resistance, the filter just makes more ringing -- a particularly bad situation, because USB packets intentionally begin/end with unbalanced signals, and USB signaling cannot tolerate load termination resistance.Tim

author: v8dave
author_rank: Regular Contributor
timestamp: December 01, 2015, 11:43:57 am
content: Just as a quick feedback.I added a low pass filter on each differential input with a 10K resistor and 1uF cap to ground and I put a 1uF cap across the sense resistor. With that combination I get a perfectly stable input now with the change in reading of around 0.1 or less. With a 2000 PSI sensor and the 16 bit resolution, that is ideal for this system. The previous reading would vary about 1 psi. May not sound a lot, but it needs to be max 0.1 change.Thanks for all your input.