0
\$\begingroup\$

I am interested in developing a generic 8-channel 4-wire PT100 interface for RaspberryPi. Needed accuracy must be better than 1degC and range from 0-200 degC. Additionally i need lead wire compensation. Here is the plan: 1) Use constant current source using TL431 and a 2N2222 transistor. I am guessing this should work: TL431 based 1mA constant source

2) Then route this 1mA current through a CD4051 multiplexer to the power wire of each of 8 PT100s. Additionally, get the return signals through another two CD4051 multiplexers into an ADC as follows: : enter image description here

3) Finally use ADS1115 ADC to A) find potential drop across the lead wires 1-2 of the 4-wire pt100. Then B) measure voltage drop across PT100.

Now my problems are: 1) I can at best procure 1% resistors for the constant current source. So the current may not be that constant. I will hand pick the resistors but what about temperature compensation? In general how much current variation can i expect?

2) Is the scheme of interfacing 8 PT100s OK or can there be better ways to do the same? As i have read in distributed posts here as well as in some papers(eg. here or here), this is a common method. But i could never find how they practically implemented this or if its performance suffered and so on.

3) How can i measure leads wire resistance without getting the Rds(on) of CD4051 in the effect? This is so because 1mA is passing through the 1st MUX.

Kindly let me know if there are any mistakes or improvements in the above scheme. I am a novice (mechanical eng.) but i am OK to learn, so kindly pardon me if i am off somewhere. Thanks!

------------------------------ EDIT ---------------------------------------

I am only now interested in 3-wire PT100 sensors as these are what available locally at affordable prices. All the rest of the requirements remain the same. So the problem is clearer now: How do i measure the sensor lead resistance while avoiding the Rds(on) of CD/HC4051*? A possible solution: enter image description here In this figure, the first wire of pt100 is supplied by 1mA current through a HC4051(see footnote). Since i need to make a differential measurement between the first two leads of the pt100 while avoiding rds(on) of HC4051, i attached A0 of the ADC directly to the first wire through a schottky diode. The diode prevents the activation of other PT100 channels not activated by HC4051. The 0.3v drop due to this diode can be incorporated into calculations to get lead resistance. Am i wrong or OK in this regard? Is leakage current going to be a problem?

I have also included a resistance (2.5k) between the third wire set of PT100 and ground. This i presume will help make a better differential measurement at the ADC (A2 and A3) while avoiding any current passage through HC4051. Does this make sense?

Thanks a lot for responding so far.

*(I accept the suggestions given that CD4051 is not the best for this case. I will take @Sephro's suggestion of HC4051.)

\$\endgroup\$
3
  • \$\begingroup\$ The tolerance of the resistors won't affect the stability of the current from your current source. It may affect the actual current. \$\endgroup\$ May 27, 2018 at 15:50
  • \$\begingroup\$ You mean once the resistor if soldered fixed, the current from a particular circuit will be stable over time and temperatures? Then its just a matter of measuring the stable but inaccurate "1mA+something" and using it in calculations throughout the life of the circuit board, right? \$\endgroup\$ May 27, 2018 at 19:30
  • \$\begingroup\$ In my edit, i made a mistake. The last HC4051 has no use because all the inputs are shorted common to the exit resistor! stupid me... I dont know if i should change the edit figure and text or keep it like this. \$\endgroup\$ May 28, 2018 at 10:45

3 Answers 3

2
\$\begingroup\$

The Texas Instruments datasheet of the CD4051 isn't very clear about the maximum current. My conclusion about violating the "Maximum Input Current of 1 µA" was wrong, that's the maximum leakage current.

The HEF4051 is a similar chip from Nexperia (former NXP/Philips) there the datasheet is more clear: the maximum current is 10 mA so that 1 mA is OK.

However the high on resistance will still prevent you from reaching the required accuracy. The on resistance will vary over almost anything like supply voltage and temperature.

What is possible is to use a current source for each sensor and then only multiplexing the resulting voltage to the ADC input.

\$\endgroup\$
6
  • 1
    \$\begingroup\$ There is no such limit on switch current- 1uA is leakage. HC4051 is limited to +/-25mA. There is a 10mA figure on the TI CD4051 datasheet but it's not 100% clear what that refers to. In any case, CD4051 voltage drop is excessive at much over 1mA. \$\endgroup\$ May 27, 2018 at 15:12
  • \$\begingroup\$ @Bimpelrekkie One current source for each pt100 is a good idea, thanks. But this increases components and board size. If some other idea could be evolved, it would be great! \$\endgroup\$ May 27, 2018 at 19:16
  • \$\begingroup\$ @Bimpelrekkie thanks for clarifying. I understand that Rds(on) will affect constant current accuracy, so i will go with one source / sensor. Now could i multiplex the input voltages to constant current circuit? that way i would still be switching currents to pt100 and avoid self-heating errors. \$\endgroup\$ May 28, 2018 at 9:21
  • \$\begingroup\$ Since it appears that the 4051 can support the 1mA what you could do to avoid Ron influencing the measurement is using separate multiplexers, one to multiplex the current (feed it to a sensor) the other to sense the voltage. The multiplexers would then be switched to the same input at the same time. \$\endgroup\$ May 28, 2018 at 19:14
  • 1
    \$\begingroup\$ No, that is not a problem as long as the current source is working properly. As long as there is enough voltage headroom across the current source circuit (so that it is able to actually make that current flow) then any extra series resistance doesn't matter. If you have an ideal current source of 1 mA in series with a resistor, what will the current be? The current will always be 1 mA whatever value the resistor has. \$\endgroup\$ May 29, 2018 at 6:26
1
\$\begingroup\$

Yes, you can do that (perhaps not with the CD4051 and perhaps not with that particular 1mA current source, because of voltage compliance), however the only point of ADC input A0 is to check that the current source is not outside compliance voltage. Rds(on) is huge (as much as 1300 ohms), and varies with supply voltage, input voltage and temperature. An HC4051 would be better at 5V.

If you really want to measure 'top' lead resistance for some reason other than break protection (for which A0 suffices) you can add another analog multiplexer and pick off the voltage at the 'top' of the RTD. You can measure the 'bottom' lead resistance by measuring relative to ground. Of course, there is no way to measure the resistance of the other two leads because no significant current passes through them.

Realistic problems are going to crop up when you attempt to protect the inputs against the things that can happen off board.

You may be better off expending the scratch for genuine analog switches that have a degree of built in protection and adding some external protection around that. It would also be nicer to use +/-10V to +/-15V supplies, if they are available.

\$\endgroup\$
4
  • \$\begingroup\$ Thanks @Sephro. I did not think about voltage compliance with A0. Instead i though i could make a differential measurement of voltage drop across the first two leads of the PT100 (using A0 and A1) to get lead resistance. Also i did not yet think about protections to the inputs of the board, a very valid point. If i simplify the requirement to 3-wire PT100, will it help? \$\endgroup\$ May 27, 2018 at 19:24
  • \$\begingroup\$ Can i use transistors as switchs to route the 1ma instead of CD4051? these transistors will be actuated by a mux. Or reed relays could be another way? \$\endgroup\$ May 28, 2018 at 3:16
  • \$\begingroup\$ Consider parts such as this \$\endgroup\$ May 28, 2018 at 6:31
  • \$\begingroup\$ thanks. I checked with local supplier and they dont have this available. I could order online but it would take weeks and cost a lot (import duties) to india. I guess i will have to go with the better versions of 4051 for now. \$\endgroup\$ May 28, 2018 at 9:14
0
\$\begingroup\$

I worked on @Bimpelrekkie 's as well as @Spehro Pefhany's answers. Since it expands i cant post it as a comment. Neither can i post as an edit, i guess because it is an answer of sort, a comprehensive one.

For current source, i have added 8 of these, each giving 1mA as per @Bimpelrekkie. But they are now activated through a HC4051 IC as below. Will it work? 1mA source for each PT100 Basic scheme

The remaining circuit consists of routing each of this 1mA to each pt100. The entries of this 1mA currents are sensed through another mux and the ADC pin A0 as per @Spehro Pefhany. Since no current is flowing, the resistance of mux is not an issue here. Using mux on middle wire of PT100 and differential measurement of A0 and A1 gives lead wire resistance.

Differential measurement between A2 (PT100 middle wire) and A3 (PT100 sink wire) gives me PT100 resistance. The sink of all currents is through a resistor, which i suppose will help in making a noise free measurement. Please correct me if i'm wrong in this.

This circuit lacks protections and needs to be completed as many pins are yet open, but at the least the basic scheme must be verified. If any errors or possible limitations please do let me know.

I already thank @Bimpelrekkie and @Spehro Pefhany for helping in such short period.

\$\endgroup\$
2
  • \$\begingroup\$ See comment above with idea to replace 8 current sources by one current source and one 4051. \$\endgroup\$ May 28, 2018 at 19:15
  • \$\begingroup\$ Finally i didnt go with the above but a modification using @Bimpelrekkie 's suggesstions. The circuit works!!! One can look at the schematic and explanations here. \$\endgroup\$ Jun 22, 2018 at 5:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.