Thermistor connection

I have 2 thermistors, these cable into a controller unit with some sort of logic programmed into it to switch on and off a pump.

The problem for me is I want that data wirelessly, but I can't figure where I'd get the data out from the circuit design they have.

I'm not sure if I could just piggy back on the same cabling, I think this would cause feedback back into the controller unit (or vice versa), so I would prefer to have the ability to switch between them.

Any ideas on how I can have a digital switch between the thermistor and the arduino?

How would you connect to the thermistors?

Start with this - find a spot where you can put a voltmeter on one or both thermistor pins and see what kind of voltages are coming out. I'd be surprised if its anything but a DC value
You may be able to just read that voltage into an arduino analog input pin, then send the value out via RF Transmitter module with virtual wire to wherever your receiver is:

Sparkfun RF modules that work well:
MO-RX3400, WRL-08950 RX

Worst case, you scale it down to the 5V range with a couple of high value resistors, or buffer it with an op-amp and then go into the arduinio.

Good idea, it works - now I just need to figure out how the value is determined?

I read them both, 1.36V and 1.63V for them both.

I know 1.36V = 52oC
I know 1.63V = 48oC

The voltages go up with the temperature drop, I'll have to figure out how that is calculated and work from there!

Yes, you'll have to do some controlled temperature experiments.
There is a standard equation for how thermistors change resistance with temperature, but you do not have access to use that resistance, only the outcome of its change - and in this case even that cannot be assured as you don't know if the design keeps the source voltage constant across the part.
So, take some measurements, make yourself a graph.

The easy solution for me is to just record the voltage outcomes, build a table and make conclusions of temperature based on the voltage outcome.

However, is there anyway of making the connection to the thermistor a switched one?

Is there anyway, I can have the thermistor cable go to two locations, even if only one could access it at any one time?
(and if this is the case, couldn't that be electrically switched some how)?

1 thermistor - 2 devices using it..

What would happen if I joined two wires at the device end of the thermistor and tried to get resistance measurements (i.e. the thermistor is still attached to the controller, that's powered on, and I've got some cable from the arduino to the controller's thermistor joint)?

Would that work, or would having the resistors there fry something?

Any ideas on a digital switch?

So you would have it electrically disconnected from the other circuit then?
I would suggest a double pole, double throw relay (for each thermister).
Have the thermister connected to the common leads, the NC leads would go to the existing circuit and the NO leads to your circuit.
You would then need your own circuit for powering the relay and for powering the thermister.
I have to go shovel some snow (northeast blizzard of 2010), can draw a simple schematic later if you need one.

Basically this for switching them back & forth.

He said he had two already and wanted to switch between letting the existing commercial device use them and taking readings with his arduino.

Thank you for your help CrossRoads.

Running a second thermistor crossed my mind, getting up on the roof, trying to fit another one in with the current one, it sounds like a second one isn't easily done.

That sounds like what you are referring to.

The circuit in the controller measures resistance from the thermistor, so has resistors already.

I wonder how adding a relay will change that resistance at all? Would it alter the readings? If not, sounds like the way to go.

Okay, that page won't open for me.

You said the thermister was cabled - so as long is it is electrically seperated from your circuit when the relay is switched you should be able to come up with your own circuit to make readings.

This one is pretty simple - just a buffered voltage divider, read the output with an analog input pin.

Read the discussion here also.

It opened finally. Looks like it will be a few days before you can get it.

"- Extra heavy duty mini relay- Rated voltage - 12V DC- Coil current - 30mA- Coil resistance - 400ohms- Contact rating - 5 Amp- Power consumption - 360mW- Size - 21 x 16 x 15(H)mm- NO/NC contacts."

pinout here

I'll have to try the relay idea when I can.

I tried to use the arduino to read the voltages, but I turned the arduino off to see what happens if the battery is flat, this caused the readings to jump to wrong values and therefore would not serve the purpose I need.

I should add - the purpose of this is to monitor the temperatures of a solar hot water collector and water tank, I mainly need to know if it's been above 60oC at least once every 3 days, but also, would like to have the data logged too.

I've thought of using Dallas sensors on the pipes, but this was inaccurate, measuring the voltage outcome from the sensor circuit isn't going to work.

Adding another thermistor isn't going to work as there's no room to.

So this leaves really, checking to see if the relay will work without causing the pump to kick in and out (I think that will be an issue).

Hack the PIC microcontroller on the controller unit to give the data to the arduino, then go wireless from there. I don't know how PIC is coded or pin outs...

Make my own unit to do exactly what it does (monitors the thermistors, if there's a 12 degree difference, kick the pump in, whilst the tank is under a set value). The problem with this is I'd have to dig up a lot of information to get it done right.

The unit by the way is the "SolaStat-ST" controller, it's not the "Plus" version that has RS485 (which would make this so much easier).

I went thru all they had, I think you are best off using the relays to take your own readings unless you can get inside the controller and add an op-amp buffer there to feed into your own ADC.

Be interesting to see what your controller does when it gets an open circuit where the thermister is supposed to be. You can fake it out with - swap in a resister that is similar in value to when the system would think no action is needed for the time when you are getting your logging readings.

Heh, that was the very first idea I had!

Faking the resistance to the controller, so I could read the thermistors directly.

I couldn't find anyway of doing that.

I could use a digital pot apparently, but the controller has resistors too, and I don't want the risk of it not having it's data.

Speaking of that... will the relay default back to the controller in the event the batteries are flat?

I can get inside the controller (I've been in there to hook up my cabling to get the readings).

I'll look into the op-amp buffer, If I'm not mistaken this sounds like it would replicate the data to the arduino ADC without impacting the resistance to the controller's own MCU.

And that would beat trying to get the data from the MCU in the controller.

default relays - if the NC connections are used, then whenever the relay is not powered the thermister will be connected to the real circuit.

You could power down your system and take some measurements with an ohmmeter, will tell you the range of resister you needed.

On the other hand, if you can get inside the controller,
than the simple thermister circuit such as seen here could be all you need

You said you had 2 you wanted to monitor?
Put your meter on the 2 sides of the thermister, see if one remains fairly constant and if one moves a lot with temperature - buffer that side off to your ADC.

You could power down your system and take some measurements with an ohmmeter, will tell you the range of resister you needed.

I know it's a 10k thermistor - so I assume a 10k resistor is needed.

How would that help out tho? We can hook up a 10k resistor from... to.. ?

I'm looking into the op amp buffer at the moment as I like the concept of it - from what I gather, I attach a wire to the positive side of the thermistor, then send this to the positive of the op amp.

I'm testing this concept with a AA battery and an LM358 at the moment, it takes 1.38V and turns it into 0.15V.

I was just revisiting the relay idea - the resistor that is at 10k - this would affect the readings the controller received right?

i.e. if I put 5V across that 10k resistor, it would think the temperature was the same.

So, if my circuit came live, with the pump running, the controller would get two of the same values for that mini second the resistor was showing, and turn the pump off...

I think I want to try:

  • Pulling the "NEXT" button on the circuit low - using the arduino.
  • Monitor the output from the 7-segment display driver, to read the numbers put out..

This would remove interference to the pump controlling aspects of the circuit as the Next and LEDs aren't used in the monitoring.
What do I need to do make that concept possible?

Is it as easy as removing the 'next' button, applying the 5V from the arduino to the next button, and then monitoring the voltage output to the 7-segment displays - there's 3 of them, and the values can be "SSd", or numbers.

I'm already also looking to monitor pump on / off activity by monitoring the voltage through the pump on LED.

There's 3 segment displays, I guess they are driven by chip - M74HC238 (only one that looks like it isn't controlling 240V relay, and isn't the PIC microcontroller).

Am I off the beaten track or is the above a better idea?

I'm happy to get photos of the circuit if that will help design one (I've got near 0 design abilities when it comes to anything other than connecting voltage to something!)...

Which would you do? Monitor the pump LED to see if it was on, then hold off until it went off?
Pull NEXT button low, read resulting output to segment displays?