I'm back with a follow-up to my initial posting where I introduced myself and my proposed tests. Thanks to the efforts of danzima, the Experimenting with Thermal Switches kit has arrived this week which means time to get moving on the challenge. As I intend to do a torture test, getting an early start is absolutely mandatory especially if I'm to have enough time to get in a lot of switching cycles and attend to any issues that may crop-up during the experiment. By having the switches in-hand, I was able to better understand them and refine my experimental protocol, do some initial characterisation as well which gives us a baseline for comparison.
Table of Contents
Unboxing the Kit - Thermal Switches Up Close
The promised thermal switches were shipped to me arranged thoughtfully inside a plastic sorter box, with the exception of the two leaded parts which were contained separately in a plastic bag. By numbering the compartments, it makes identifying the parts much easier than trying to decode the etched abbreviated part numbers on each part. I did find that with careful folding and removal of inter-compartment dividers, it was possible to "squeeze" the leaded parts into the box as well, which is a win for keeping things neat. On the downside is the fact the components are free to rattle about in the sorter and clash with themselves. While no damage seems to have occurred, the body of most of the thermal switches seem to be made of a ferrite or very smooth and hard plastic resin, the former of which may be liable to chipping on harsh shock impacts.
The variety of Kemet thermal switches are available in various temperature ratings, make/break type and packages. I will take a closer look at the various types of packages in this assortment.
The first type is this round unit which looks a bit like a large medicine pill. The ends are terminated in through-hole style tinned leads with a noticeable seam down the middle of the unit making me think that it is manufactured in two halves, along with some recessed portions which I assume is for some apparatus to ensure alignment of the internal parts. Such a package could be used in open air, or in battery packs between other cylindrical elements where it may fit best. Because of its size, it seems to have a larger reed, capable of 550mA switching current.
The second type is a rather hefty, threaded, sealed screw-type probe. It seems the front is sealed with a solder connection to the threaded body, while the rear is covered with an epoxy resin seal and a quick-connect tab. The other contact is to the body of the unit, making this very likely to be targeted at automotive or industrial uses where the chassis may form a ground connection. Such a sealed device also makes it easy to install and replace and also features a robust 500mA switching capability.
The third type looks a little bit more like a TO-220 package that's a bit narrower than normal. Despite this, the body is made of the same material as the round unit. Such a design is quite advantageous for heatsink monitoring of similar devices (e.g. TO-220 MOSFETs) as it can be mounted in an identical fashion and has a nice and flat planar surface on the rear for heat conduction. Unfortunately, this particular case design seems to have a smaller reed as the maximum current capacity is a much more restrictive 100mA.
Round packages may offer higher current but could be difficult to mount. As a result, the fourth type is a middle-ground, offering a square package that may make it easier to clamp the unit to a heatsink or a planar surface. This could be achieved with a drilled aluminium bar or a springy retention clip. This package offers a middle-ground of 300mA switching, so can be used to switch some decent loads (e.g. a small brushless DC fan perhaps).
If you'd rather have the square type mounted to a planar heatsink with more convenience, the fifth type is for you. This package has the same 300mA switching capability with a mounting ear. Unlike the other packages, this one is terminated with both sides to flat blade contacts which can accommodate crimped connections. This may be appropriate where direct connection into a PCB is not desired and a wiring harness is used for situating the sensor in a remote location (e.g. on a particular part of the chassis or a particular component like a motor).
.
The final type included in the kit is this one which has the same current rating as the cylindrical type, but is a tiny bit smaller in diameter. It comes pre-terminated with sleeved flying leads that are designed to withstand the expected temperatures and has an aluminium tab for easy direct connection to a planar surface.
Looking at them individually doesn't give a good sense of scale, so here are all the different package types shown side-by-side.
Experimental Refinement
Having been acquainted with the physical manifestation of the thermal switches, I went back to the drawing board with regards to the intended thermal torture test to make sure things would hopefully work out.
Handling the Load?
At the end of the last post, I had settled on the use of a relay to allow me to test both make and break type switches and have the ability to set independent thermal switch load and heater currents. Such an arrangement would provide flexibility, but there was a catch - I could not have a current lower than the relay coil current pass through the thermal switch. I raided my spare parts box and came up plenty of these two types of relays - a Tianbo TRA2 D-09VDC-S-Z of 9V coil rating and a Omron G5LA-1 of 5V coil rating. The use of 12V was practically ruled out by this, unless I started to add series resistance into the mix with the coil, but doing some math seemed to reveal that 5V may actually be preferable!
Calculating the loads required to reach the target currents, I can see that at 9V, the power dissipation was quite high, reaching almost 5W at 550mA. A key issue is that high-power resistors are not something I keep on hand and they rarely come in very accommodating shapes. As a result, the venerable 0.25W through-hole resistor would be the weapon of choice, but getting the right resistance/power value in a reasonable number of resistors would favour 5V operation heavily. For example, a 100-ohm resistor would dissipate exactly 0.25W at 5V - a very common and nice value. If I were to use a relay, the approximate required resistances could be made up from a 180 ohm for 100mA, 110 ohm x 5 for 300mA, 120 ohm x 10 for 500mA and 130 ohm x 12 for 550mA which are all E24 values but with a small level of error.
But this also led to a pair of revelations - the 100 ohm resistor on its own would draw a nice round 50mA at 5V. This would easily make up all the current values we need, without the relay, by using 2, 6, 10 or 11 resistors in parallel. Another key revelation revealed by the datasheets was that the relays only have 100,000 electrical cycle rating which may be less than the rating of the thermal switch itself. While I have no doubt the relay could probably run for longer, I decided that it would be better to eschew the make type switches and only test the break type switches while reducing complexity by eliminating the relay and associated back-EMF diode altogether. This is not as big of a deal as it seems, as there were a total of eight types of break switches to just three types of make switches in the set. The use of a common 5V voltage and limited power means that I could theoretically use something as simple as a multi-outlet USB charger as a power source for the experiment, freeing up expensive test gear for other experiments.
How Much Heat is Enough?
This brings me to the next consideration I had, which is how much power do I actually need to get to the temperatures I need for the switches. For this, I decided to do a quick experiment with the proposed 100-ohm resistors, a 5V power supply and a K-type thermocouple.
I had six resistors powered for 300mA of current, but I was concentrated on the temperature of one of the middle resistors. The temperature reached a nice reading of 69 degrees Celsius which implies that the batch of resistors dissipating 1.5W into open air had a thermal resistance of about 46 degrees C per watt of energy. This is a little lower than expected and was very much influenced by the flow of air from a nearby window. From prior experience with heatsink-less TO-220 operation, a value of about 58 degrees C per watt is probably more typical.
The implications for relay-less operation is quite significant - for parts with just a 100mA rating, it's quite probable that the 0.5W of heat generated is going to be lost to the environment so quickly that it won't reach the higher temperatures needed to actuate the switch. Even for the other switches with 300-550mA rating, temperatures above 80 degrees C could be a bit of a challenge. Because of this, I would say that switches with a 50 or 60 degree C rating may be the easiest to test. However, the situation can easily be improved if one shields the test from the influence of ambient air - this could involve encapsulating the device, heat source and thermocouple inside a heatshrink tube and placing this into a box or jar.
How About Safety?
This brings about a few more questions - what about safety? What happens if a switch is welded shut during testing due to a failure? Thankfully, the above suggests that the temperature is not going to get too high to a point that a fire would start, but I did think of the possibility of using a higher-temperature thermal switch to act as a safety to cut the power. The downside is that it would add more parts to the test set-up that need to be thermally bonded together which is tricky. I propose that instead I will use a software-based solution which will cut power to the experimental rig (through first commanding the power supply and if not successful, by commanding a mains power switch) as soon as any of the temperatures exceeds a critical low or high threshold - this should protect against both a runaway situation and a case of an open thermocouple.
The second safety consideration that came to mind was the issue of wire insulation. Most ordinary wire is PVC insulated which is good for about 80 to 90 degrees Celsius on a more-or-less continuous basis. Some of the thermal switches have 90+ degree Celsius ratings which would require better insulators to ensure long-term safety. If I choose to test those switches, I would have to use something like silicone cable with a 200 degree Celsius rating to ensure long-term safety - thankfully I do have a limited quantity on hand. But another consideration is the other insulation that I propose to use - thankfully I found that the heatshrink I have is rated to 220 degrees Celsius, although my vinyl electrical tape is a bit borderline at about 105 degrees Celsius.
Thermal Coupling and Distribution
The next issue that came to mind is how do we get the heat in and out of the experiment. While cooling will rely on natural convection, the rate of heating and the way the heat is coupled into the thermal switch will have a big impact on the accuracy and repeatability of the results.
Imagine that you have the thermocouple and heat source mounted on the same side of the switch. In this instance, the heat may travel directly or via the surface of the switch to the thermocouple resulting in a higher reading than the actual temperature at the core of the switch. This way, it would seem the switch is too slow to respond and the temperature would overshoot. Similarly, if you place the heat source at the rear of the switch, it would have to propagate through the full switch which may result in a lower reading at the thermocouple. Perhaps the right answer is to place the heat source and thermocouples at approximately right angles to reduce the biases, or to immerse everything in a well-mixed liquid immersion bath to ensure the temperature is even across the whole device. Unfortunately, such a set-up is out of reach for me, and the most common liquid of water is slow to heat and cool, with a boiling point of 100 degrees C which would preclude working with any switch with a higher temperature rating.
My initial compromise was to use a tinned copper wire as both a way to "bind" the thermocouple (with a sheet of electrical tape for insulation) along with the heat source to the tested thermal switch. Unfortunately, it also dawned on me that such an arrangement may essentially provide both a heat-spreading effect to warm up the switch more evenly while also providing a "short circuit" for thermal energy flow through to the thermocouple (through the electrical tape). However, I still think this is perhaps not too bad - perhaps I can improve on this in the final test by flooding the area with non-conductive thermal compound inside of the heatshrink to act a bit like a liquid to carry the heat into the device more evenly.
How Fast Can We Measure?
Depending on the heat generation, the measurement speed may need to be quite high to ensure that the switching point is accurately captured especially when using a set-up that is free-running (i.e. not triggered by the switch event itself). While I initially proposed using a controllable power supply (such as the R&S HMC8043) and a digital multimeter (such as the Keithley 2110), it quickly became apparent that if I am to effectively torture multiple thermal switches, I would need to resort to a setup that can measure things in parallel.
As a result, i have settled on using the B&K Precision DAS240-BAT Multi-Channel Recorder from a previous RoadTest as the acquisition platform. For each tested thermal switch, one channel will measure the voltage across the switch to be able to understand the switch state and get a glimpse of the contact resistance (assuming it is sensitive enough). A second channel will be dedicated to a K-type thermocouple (I have twelve on order, due in two days) to measure the temperature at the switch. As the DAS240-BAT has 20 channels in the provided module, I can theoretically test 10 switches at the same time.
However, as the system runs "free-running", we would have to make sure we can sample quickly enough to ensure we don't miss the switching event. Having the temperature only change slowly (e.g. 1 degree every 5 seconds) helps quite a bit, but also setting the DAS240-BAT's integration time can also help. The measurement integration can be set from 1ms to 100ms and each channel is read in sequence - if we set at 1ms, in theory, all 20 channels can be measured in 20ms. In reality, it is preferable to set this to 20ms (or more) as the local mains is at 50Hz and this ensures mains noise has less of an influence in the readings, thus improving accuracy. Then, at 20ms x 20 channels = 400ms for all channels which is starting to get a little slow. As a result, while it may be possible to test 10 switches at once, perhaps testing a more limited number makes more sense.
While the unit can sample at such speeds, can it actually send those values to a connected computer in time? To test the speed of the DAS240-BAT's communication, I wrote a simple Modbus-TCP benchmark program in Python:
# Modbus-TCP Benchmark for B&K DAS240-BAT using PyModbus # by Gough Lui - January 2022 from pymodbus.client.sync import ModbusTcpClient as ModbusClient import struct import time import math def readAnalog(chan) : rb = client.read_input_registers(6+2*chan,2) assert(not rb.isError()) value = struct.unpack('!f',struct.pack('!I',(rb.registers[0]<<16)|rb.registers[1]))[0] return value # Set number of readings to take SAMPLE_COUNT = 4096 print("Gough's Simple Modbus-TCP Benchmark for DAS240-BAT") print("Performance over Ethernet:") # Connect to ETHERNET Client Address - Change to match your settings! client = ModbusClient('192.168.0.2', port=502) client.connect() for maxc in range(1,21) : itime=time.time() smaxt=0 smint=9999 for repeats in range (1,SAMPLE_COUNT) : sitime=time.time() for x in range (1,maxc+1) : readAnalog(x) setime=time.time() stime=setime-sitime if stime < smint : smint = stime if stime > smaxt : smaxt = stime etime=time.time() atime = etime - itime atime = atime / SAMPLE_COUNT print(str(maxc)+","+str(atime)+","+str(smint)+","+str(smaxt)) # Close Modbus Client when Done client.close() print("Performance over Wi-Fi:") # Connect to Wi-Fi Client Address - Change to match your settings! client = ModbusClient('192.168.0.3', port=502) client.connect() for maxc in range(1,21) : itime=time.time() smaxt=0 smint=9999 for repeats in range (1,SAMPLE_COUNT) : sitime=time.time() for x in range (1,maxc+1) : readAnalog(x) setime=time.time() stime=setime-sitime if stime < smint : smint = stime if stime > smaxt : smaxt = stime etime=time.time() atime = etime - itime atime = atime / SAMPLE_COUNT print(str(maxc)+","+str(atime)+","+str(smint)+","+str(smaxt)) # Close Modbus Client when Done client.close()
The program will sequentially read the data from 1 to 20 channels for 4096 times, returning the average, minimum and maximum times. This gives me an understanding of how quick the instrument can respond and whether it is fast enough to meet expectations. The code repeats the test for the Ethernet and Wi-Fi connections by having two different IP addresses, assuming your DAS240-BAT is doubly-connected to your network as mine is. I decided to run the benchmark on my desktop PC which is quite powerful to see the best-case result, but also to run it on my Harting MICA Industrial Linux Computer (also from a previous RoadTest) as that is used for long-term experiment automation. In fact, the MICA was running two other pyvisa experiments in parallel with the benchmark.
The results from the PC show that the average reading time increases linearly as a function of the number of channels read, which is not surprising. The worst case read times are quite a bit higher than the average case, which is probably due to limitations in the DAS240-BAT's internal processing, but when connected by Ethernet, never exceeded 300ms, which seems fairly agreeable even though not ideal (e.g. in the case of four tested units, that would correspond to eight channels at 20ms = 160ms between fresh results, so a loss of a single reading may occur). When connected by Wi-Fi however, the latency adds another 3-4ms per channel but also introduces potentially long worst-case reading times - in the case of 20 channels, a reading of >1s was registered. As a result, for such high-time-resolution logging, Ethernet is highly preferable which is not surprising.
Can this performance be maintained on the much less powerful Harting MICA, especially while it is busy with other experiments as well?
Unsurprisingly, the Harting MICA does take a little bit longer to query the values - the average times are even longer than for the Desktop PC Ethernet to DAS240-BAT Wi-Fi scenario. This is in part because of the fact the MICA is busy, but also because the MICA's Ethernet is hosted on a USB to Ethernet chipset, thus the USB latency comes into play as well. This is behaviour which was observed in my earlier experiments benchmarking pyvisa versus NI-VISA. The Ethernet to Ethernet MICA baseline still suggests for the target 8-channel configuration, that the average read interval of 73.3ms is still less than the 160ms measurement interval, although in the worst case, one reading may be missed. This is acceptable, as the worst case delay is still less than 400ms, meaning that we'd still easily have >1Hz time resolution. I didn't bother with the Wi-Fi results as I intend to stick to Ethernet for reliability and speed.
Initial Characterisation - Temperature Thresholds
Perhaps the most important characteristic of a thermal switch is the temperature threshold at which it switches on and off, and the hysteresis between these switching points. I decided to test the initial condition of my switches as this would help me prepare for the future torture test.
Getting the Switches to Switch!
The first issue was to get the switches to "switch". This means bringing them up past their rated temperature.
For switches of moderate temperature rating (50, 60 degrees C), I used the resistor arrangement pictured earlier - the above result shows the data from the DAS240-BAT which shows the switching events clearly.
For a higher temperature, however, without having a very bulky arrangement with a high-power resistor, it would not be possible to maintain the same approach. As a result, I decided to "abuse" my Tenma Hot-Air Rework Station set to a "non-threatening" temperature of about 130 degrees C to avoid setting things around the room on fire.
But what about the 30 degrees Celsius switches? At first glance, they might seem to be the ideal switch for testing - you could possibly even actuate it with body heat. But alas, being in Australia in summer, things get a bit complicated. The temperature rating of the switch is the temperature at which it "turns on", but that has a tolerance (+/- 2.5 degrees C or +/- 5 degrees C depending on the series). Once it is activated, then it needs to "fall" by at least the temperature differential (rated for 10 degrees Celsius) before it will "turn off". This means that the 30 degree switch could actually turn on at 27.5 degrees C and not turn back off until 17.5 degrees C. This is pretty hard to test when my ambient right now is 27.29 degrees C.
But thankfully, this is not a problem I am new to - I had previously modified a Peltier-based car fridge to hold stable temperatures for battery testing, so I employed the older (first unit) to run the tests on the 30 degrees C switches, using the Peltier to bring the temperature below ambient. The slow temperature ramp and constantly circulating air (fluid) helps provide the most accurate results of all.
Results
The results are rather interesting as they were obtained through different methods of heating and thus the accuracy for each type of measurement will be different. Keep in mind that the thermocouple error would be about 1.5 degrees Celsius absolute, but the relative error should be very low as all the units were measured using the same thermocouple. The rate of heating and cooling would have an impact on the accuracy of the figures and as such, the models with a 90 degrees Celsius rating or higher may probably have measurements that have somewhat greater levels of error.
With regards to the switching temperature tolerance, the datasheet value is plotted in black (either 2.5 degrees Celsius or 5 degrees Celsius). The measured error in switching temperature as actual minus rated temperature is plotted in blue. In all cases except one, the measured switching temperature was higher than the rated temperature. However, in most instances, the measured switching temperatures were within specifications or fairly close to specifications. In the cases the measurements exceeded them, this was usually not too far, mostly within two or three degrees with one reaching almost four degrees. I suspect this may be because of thermal propagation within the sensor and the rate of heating affecting the results - the thermocouple may have read a higher temperature than the core of the sensor would have reached as it was measuring the surface temperature of the sensor. Concentrating on the lower temperature (e.g. 30 degree C type) where it was run inside a makeshift temperature control chamber and with a very slow temperature gradient, the results were universally excellent with temperature errors of a similar amount to the thermocouple error.
With the hysteresis of the thermal sensors, all of them were rated with a maximum 10 degree Celsius thermal difference. Again, many of the measurements were within the rated 10 degree mark, with a few of the higher temperature units exceeding by up to four degrees. This spread is confirmatory that perhaps the use of the hot air gun causes temperature rises on the surface of the sensor that are faster than the core of the sensor, thus resulting in a falsely high measured sensor temperature. If I concentrate on the lower temperature types, especially the 30 degree Celsius types that were measured inside a makeshift temperature control chamber, those demonstrated a very tight 1-5 degrees Celsius hysteresis figure.
Despite the variation in the reported data, in all cases, I would say the measured results are supportive of the manufacturer's datasheet claims. It seems very likely the variations are due to the complexities of accurately characterising these sensors - it's a challenge to make this kind of measurement in a reliable and repeatable way due to the issues of thermal flow within the thermal switch, the thermal coupling from heat source to sensor to measurement thermocouple and potential measurement error from airflow-induced temperature swings especially when a hot-air gun is being used to actuate the higher-temperature units. It was, however, still a good exercise to see that all thermal switches were demonstrated to be functional and within a small range of the claimed specifications.
Initial Characterisation - Contact Resistance
The contact resistance measurement was made with a B&K Precision BA6010 Battery Analyzer from a previous RoadTest - don't be fooled by the name, it is essentially a precision isolated 1kHz AC LCR meter. For this experiment, I used the included gold-plated TKB1 Kelvin Clip Probes, with the measurement set into slow mode, 50Hz line frequency, average of 32-readings with shorted-leads zero compensation. In the case of make-type switches, I used the Tenma Hot-Air Rework Station to gently heat up the thermal switch until it actuated (without melting my Kelvin clips).
This provided a highly-accurate measuerment of initial contact resistance which will be important as a baseline to compare to for the switches that will be tortured. It is expected that as the contacts undergo increasing switching cycles, that the contact resistance will increase over time.
It should be noted that in all cases, the measured contact resistance was below the specification limit, indicating all the switches were happy. Some types seemed to have higher resistance out-of-the-box, which may be related to the geometry of the reed switch internally.
Conclusion
The thermal switches have arrived safe and sound, prompting a critical rethink about the finer points of the proposed experiment. I have eschewed the relay arrangement, opting for the simpler direct connection arrangement, thus eliminating make-type switches from the test roster. Consideration of safety and temperature developed by the intended resistor heating realistically makes continuous testing of higher-temperature switches unlikely, while the Australian summer causes the 30 degrees Celsius switches to spontaneously activate due to the high ambient temperature. This leaves me with the conclusion that 50/60 degrees Celsius switches will be most suitable for the torture test, along with a few physical arrangement considerations regarding the heat source and thermocouple measurement device. Characterising the initial performance of the thermal switches was made, with some caveats, while the performance of the test equipment was also explored to ensure suitability.
Hopefully, in the next post, I would have built the thermal switch torture set-up and the experiment will be running in earnest. In the intervening time, I may also be looking at breaking apart one of these units to see the insides for myself and perhaps building some other interesting things with them. Lots of exciting things to look forward to - I've even spent some money on a few gadgets to help me out, so hopefully you will join me in the future posts to see how the system is going.
[The Torturing Thermal Switches Blog Series Index]
- Blog #1: Torturing Thermal Switches – Cycle Testing Cut-in, Cut-out, Hysteresis & Contact Resistance
- Blog #2: Torturing Thermal Switches – Unboxing, Initial Characterisation & Experimental Refinements (this post)
- Blog #3: Torturing Thermal Switches – Magnetic Characteristics, Teardown, Overload Behaviour & Commencing the Cycle Experiment!
- Blog #4: Torturing Thermal Switches – Contact Bounce, Overvoltage & Building a Component/Filament Dryer
- Blog #5: Torturing Thermal Switches –Temperature Measurement Complexities, Switching Deviations, Data Analysis & Interim Results
- Blog #6: Torturing Thermal Switches – Latching Fault Circuit Design, Weighing In, and Checking Contact Resistance
- Blog #7: Torturing Thermal Switches – A Minor Glitch, *Final* Results & Conclusion
Top Comments