Created; 05-04-2018, Update; 05-04-2018, 12-04-2018
Previous page; Electronics - Robust electronics design example - outdoor wireless environmental monitor.
PT100 Temperature sensor.
ToDo's
- Check temperature channels sampling speed interaction with power used (eg TX)
- Change the temperature reference resistors to 3K3 0.1%
------------------------------------------------------------------.
Component selection; Sensors;
PT100 temperature sensors on 4 wire cable + instrumentation amplifier. These will need good screening and/or filtering because of the cabling will act as an aerial.
There is a two channel temperature sensor using a chain comprising two reference resistors and the two PT100 temperature sensors. The analogue circuitry has 1nF capacitors at the boundary of the circuit board the analogue multiplexer will be changed from the circuit below to a dual four channel multiplexer which also provides some ESD protection other channels for calibration 100nF capacitors to the input of an instrumentation amplifier an output resistor in series with the capacitor and an analogue input to of the Xbee module.
Now we can do some more component selection.
Circuit above was created with CADSTAR 16.0 Express. The temperature measurement section of (AL 0016-01B) |
Spread sheet of instrumentation amplifiers (This spreadsheet has been revised and reflects changes below)
AD8293G80 - chosen. This has been included in the above circuit but the gain accuracy does not look good enough to achieve good absolute accuracy but 2'C accuracy might be achieved (some mental arithmetic). Input bias current Ib has not been consider at this stage but that would make the accuracy worse. Decided arbitrarily on a temperature accuracy of say 2'C. in order to proceed with the design. To do this make each sub-fiction's accuracy about 0.5'C.
Consequently alternatively the instrument amplifier type; INA155UA has a better gain accuracy and also has a lower input bias current. In addition the input multiplexer could be changed to a two channels 4:1 selector giving us more A/D channels this is useful and was a desire expressed in design review. A 4:1 Mux with reference resistors as one or two of the channels does a good job of calibration so we do not need to swap the Instrument-Amp.
But first do some more arithmetic with; AD8293G80
Offset = 20uV
Offset due to input resistance (<1K); 4nA * 1K = 4uV
PT100 ohms/'C = 0.4R/'C. with 1mA test current (which is likely to cause an insignificant amount of sensor self heating Check this) requires the offset be < 400uV that it is. The test current could be reduced to 300uA but this inst-amp's gain would be too high.
PT100 raw element self heating 0.5'C/mW in air. RS ceramic types 1.2mm x 1.6mm or larger. Self heating would be 0.07'C in air with 1mA but could be a lot more with a simple covering such as heat-shrink sleeve. The easiest thing for me is to try and see. The self heating will be the difference between the instantaneous temperature and the temperature after say 30 seconds.
The low cost PT100 temperature element was chosen they should be purchased now.
The AD8293 seemed like the best choice after looking at other parameters. Provided that there are enough ports on the Xbee module?
A circuit like this but with less filtering was really developed but it used the Maxim MAX4196 and that turned out to not have the input voltage range that seemed at first though - see the graph in the datasheet. But the circuit board was fairly easily modified. In other words the risk of ordering parts early was low and the INA155UA was reasonably interchangeable with some patching.
After considering the circuit below INA155UA was selected but noted the possible disadvantage that this part does not have bandwidth limiting unlike the AD8293. But we have prior experience that this part worked fine.
This level of input filtering would almost certainly work well with long unscreened cables in a high electromagnetic field. I have not needed to filter to this degree for a short cable run applications and nothing has adverse has arisen from doing that. But if this degree of filtering were required then many more measures would be required such as using a metal enclosure.Offset due to input resistance (<1K); 4nA * 1K = 4uV
PT100 ohms/'C = 0.4R/'C. with 1mA test current (which is likely to cause an insignificant amount of sensor self heating Check this) requires the offset be < 400uV that it is. The test current could be reduced to 300uA but this inst-amp's gain would be too high.
PT100 raw element self heating 0.5'C/mW in air. RS ceramic types 1.2mm x 1.6mm or larger. Self heating would be 0.07'C in air with 1mA but could be a lot more with a simple covering such as heat-shrink sleeve. The easiest thing for me is to try and see. The self heating will be the difference between the instantaneous temperature and the temperature after say 30 seconds.
The low cost PT100 temperature element was chosen they should be purchased now.
The AD8293 seemed like the best choice after looking at other parameters. Provided that there are enough ports on the Xbee module?
A circuit like this but with less filtering was really developed but it used the Maxim MAX4196 and that turned out to not have the input voltage range that seemed at first though - see the graph in the datasheet. But the circuit board was fairly easily modified. In other words the risk of ordering parts early was low and the INA155UA was reasonably interchangeable with some patching.
After considering the circuit below INA155UA was selected but noted the possible disadvantage that this part does not have bandwidth limiting unlike the AD8293. But we have prior experience that this part worked fine.
This filtered input will have to be reduced in components because it is too big for the express free version of CADSTAR 16.
The filter/protection is more than necessary in any case and more than in practice I have tried or used before. (AL-0016-02b)
The filter/protection is more than necessary in any case and more than in practice I have tried or used before. (AL-0016-02b)
There are a number of examples of very good to adequate EMC measures on my website.
Component selection - Analogue Multiplexer
Select for large footprint and high resistance to provide some input filtering.
Follow the link to the spreadsheet; Component selection - Analogue Multiplexer
In conclusion use; ADG609R-16 or use MAX4559CSE.
The multiplexer symbol has been changed for ease of understanding.
The temperature circuit above and the work below was carried out later - there are high priority things to do now.
Change instrument amplifier to INA155;
Resistance fitted; 230R = 133R + 10 (References) + 90R + 0R (one temperature) Revised and returned too
(I have changed some other things above and below but not noted that those things have been revised ).
Minimum resistance of the measuring and calibration network; 380R = 3 x 90R (lowest temperature) + 110 (References).
Therefore the reference resistor should be 6,120R = 6,500 - 380
Reference resistors; 2x 3K3 0.1%
Temperature measurement function software work load;
Final temperature section of (AL 0016-04c). The current source resistors R24 and 14 with R7 are now changed to 0.1% types. |
The temperature circuit above and the work below was carried out later - there are high priority things to do now.
Change instrument amplifier to INA155;
- Gain = 50 (selected)
- Maximum temperature <80'C or about 130R,
Minimum total resistance; 6,500R = 3V / 462uA
(I have changed some other things above and below but not noted that those things have been revised ).
Minimum resistance of the measuring and calibration network; 380R = 3 x 90R (lowest temperature) + 110 (References).
Therefore the reference resistor should be 6,120R = 6,500 - 380
Reference resistors; 2x 3K3 0.1%
----------------------------------------------------------------------
Coming back to temperature function again;
- Use a single temperature reference resistor of 110R (about 22'C) to correct the inst-amp offset only. Thereby putting the calibration point in the middle of the temperature range. We could chose a PT100 sensor's with about 0.5'C accuracy and that would be substantially the total error at this one point.
- Change the high value resistors in the chain to 0.1%.
- The scaling accuracy due to the inst-amp gain is 0.3%.
- It would be possible to fine trim the calibration by using the measured resistance in the calculation of current and putting it back into the equations. The error by just using a fixed assumption of say 110R for all temperature probes may be near enough?
- 6,500R is the minimum total resistance from above.
- Resistance change due to temperature sensing is; 120R = 3x (130R - 90R)
- Resistance scale factor change would therefore be if we did not recalibrate that current; 1.8%
- The Error with out a second calibration step would be; 1'C = 56'C x 0.18 = (78'C-22'C) x 0.018
- With (4) second calibration step is taken then the errors by inspection can be seen would be insignificant. But calculate this if you are not sure.
- The next most significant scale factor component is 0.3% due to the instrumentation amplifier. We can do a rough addition of 0.1% for the resistor chain + 0.3% for the instrument amplifier and is a trivial; 0.25'C error for; 60'C span * 0.4%
I wonder if I should be adding or multiplying these percentages but in the cases like this, where small percentages are used, then either is close enough Eg; 0.0201 = (1.01 * 1.01) - 1. Or about 2% (1% + 1%) it is therefore too trivial to matter and adding is a quick way to get the job done.
---------------------------------------------------------------------------------------------
Temperature measurement function software work load;
We can see from this draft printed circuit board that the instrument amplifier chosen has a very small foot pint. Even though I have hand soldered this package but it would be better to use INA155 with the larger SO-8 footprint. Use two reference resistors was another option evaluated one of those being 10R 1% (as a near zero reference point) and the other 130R 0.1% (span reference point).
- INA155 settles in 15uS
- Time constant of the final RC formed by the analogue mux and 100nF. 100uS = 1K * 100nF and a rule of thumb given a college was that the circuit will settle in 5 time constants 500uS.
- The temperature system could switch MUX channel up to 1mS/channel allowing 500uS settling and 500uS averaging.
- Ultimately the 10R zero reference was not used see below so one temperature channel was not sacrificed.
The wireless module or software of some form will need to drive this and also other functions.
-------------------------------------------------------------------------------------
An engineer can apply worst case design tolerance and by using a statistical approach ensure that most product when assembled will work. That is close to how raw material and measured parameters come from nature and are first processed for use! But supplied components are made and specified, precisely and consistently with all components meeting there tolerance specified this is how electronics has changed since 1980.
Solving complex resistor networks by trying standard value components in your equations and seeing. But first do the maths and solving Maxwell's circulating currents using Superposition can be done but rationalising to simpler Norton's current source or Thevenin's voltage source equivalents is usually quick. Therefore find the easiest way to see and apply maths to an electronic functions in order to work out the desired resistors ratios. But to come back to the first point the a resistor network needs to be solved to use standard value resistors that satisfactorily meet the design tolerances. That tolerance met by summing squares (of the errors) and this is called least squares. I have done this and it is powerful but it is rarely necessary because simple circuits are mostly adequate to get usable data into a microprocessor and then the arithmetic is carried out in that microprocessor precisely.
A complex but known and understood electronic solution may be used because the software will take longer to be developed. This can infuriate a hardware engineer until he understands why and then he may offer a hardware solution if it is apparent that software work will be high. I do write software or software like programs to illustrate a point if the hardware solution is less than ideal. Do use embedded timers and insist on using interrupt routines to ensure that the desired activity is regular and precise with no missed or unduly delayed input or output events. That usually means that firmware must operating underneath the user interface.
Anyway you can do things in software such as precise period of time averaging, mode filtering that are more desirable than a simple exponential (tailing off) filter that hardware averaging will do.
To sum up; By applying a standard deviation test will give you a small failure rate and an occasional super product in a predictable way this is the traditional approach. It is now possible to buy close tolerance components very cheaply and these do not have a traditional normal tolerance distribution so there will be no out of tolerance parts in a batch:- so simply add up the worst tolerance parts errors and put in a small margin for the remainder that you judged is trivial and everything will work out fine and that is a reasonable expectation.
--------------------------------------------------------------------------------------------------
Solving complex resistor networks by trying standard value components in your equations and seeing. But first do the maths and solving Maxwell's circulating currents using Superposition can be done but rationalising to simpler Norton's current source or Thevenin's voltage source equivalents is usually quick. Therefore find the easiest way to see and apply maths to an electronic functions in order to work out the desired resistors ratios. But to come back to the first point the a resistor network needs to be solved to use standard value resistors that satisfactorily meet the design tolerances. That tolerance met by summing squares (of the errors) and this is called least squares. I have done this and it is powerful but it is rarely necessary because simple circuits are mostly adequate to get usable data into a microprocessor and then the arithmetic is carried out in that microprocessor precisely.
A complex but known and understood electronic solution may be used because the software will take longer to be developed. This can infuriate a hardware engineer until he understands why and then he may offer a hardware solution if it is apparent that software work will be high. I do write software or software like programs to illustrate a point if the hardware solution is less than ideal. Do use embedded timers and insist on using interrupt routines to ensure that the desired activity is regular and precise with no missed or unduly delayed input or output events. That usually means that firmware must operating underneath the user interface.
Anyway you can do things in software such as precise period of time averaging, mode filtering that are more desirable than a simple exponential (tailing off) filter that hardware averaging will do.
To sum up; By applying a standard deviation test will give you a small failure rate and an occasional super product in a predictable way this is the traditional approach. It is now possible to buy close tolerance components very cheaply and these do not have a traditional normal tolerance distribution so there will be no out of tolerance parts in a batch:- so simply add up the worst tolerance parts errors and put in a small margin for the remainder that you judged is trivial and everything will work out fine and that is a reasonable expectation.
--------------------------------------------------------------------------------------------------
More consideration on saving components;
The PCB is more developed and some other aspects have come to more clear whilst working on the circuit. so the designer would go back to temperature and change the reference resistor to a single 110R 0.1%.
-----------------------------------------------------------------------------------------------------------------
Conclusion
You can work solve resistor networks by writing a program in BASIC. Keep trying preferred values and solve the worst case using Error^2 to get the smallest sum of errors squared. You can also use superposition. But simply using Norton's or Thevini's current source or voltage source and running through preferred resistor values works well for me. I have used the other methods in the past though.
- Electronics - Peak detector circuits and models
- Electronics - Peak to Peak detector circuits and models
- Vibration monitor Digital solution
- Electronics - Simulation and Judgement LT Spice simulations.
Also see; http://www.andrew-lohmann.me.uk/engineer
Please comment below - Alternatively comment generally on my electronics; Electronics Discussion
Back to; Electronics, Software & Robust Design
No comments:
Post a Comment