Main Site Documentation

Analog sensor used by two boards with different voltage levels


#1

I want to use a Domino board to read temperature from a solar water heating system. The problem is that the solar PLC controller needs to use the temperature sensors as well. The PLC operates on different voltage levels (5V) and Domino analog inputs expect 3.3 V. Question to electronic gurus: how to connect Domino to the sensors so that it doesn’t interrupt PLC work and makes reading the sensors available on Domino? Domino will be supplied from power output available in PLC.


#2

Hello !

The problem for me is that none of the 2 sensors you have on your schematics are providing a voltage.
"the PT1000 is a temperature-dependent resistance. It has 1000 ohms with zero °C, with 1°C 1003.85 ohms with 10°C 1038.5 ohms and so on."
The NTC25K has a similar behavior with different values (thermisistor).
To be able to read a voltage through a resistor, you need to apply some current on it, and maybe then to have some circuitry amplify what your are getting. But it will not possible to apply it from 2 different systems : you will read nothing valuable.

So you can never connect such sensor directly to an analog input pin ; You need “some electronics” to produce a readable voltage out of a resistance. It can be a dedicated IC. So, 2 cases:

  • The electronics is actualy “built-in” with the sensors (easy to see : you need to power them, so at least 3 wires), and the probe actualy returns a voltage value. Then you should be able to “tap in” with your FEZ. It may just add a little noise into the circuit, which you will check by experimenting if it’s a problem or not. You will just have to use a voltage divider on the Fez, since it is only able to accept voltage from 0 to 3,3v. You will get some clues here : http://www.tinyclr.com/forum/2/2991/

  • The electronics is actualy built inside your “PLC”. Then you will have to look at the schematics of your PLC, and tap just where the electronics already did the voltage conversion, just before the ADC. It’s easier if you have the schematics of the “PLC” (whatever it is :wink: ).

Cheers,
Nicolas


#3

Both of those sensors have two wires so they are pasive. The PLC (Programmable Logic Controller) is doing the reading and based on that it controlles water pumps. In fact this is not a regular PLC but it looks and behaves like one. Here is the manual:

http://www.solar-water.co.za/downloads/SR868C8%20Manual.pdf

Therefore this is the second case you described Nicolas. I will try to investigate the board layout of the controller when my friend sends me its pictures. No chance for any schematics files as this is a commercial product. The idea of connecting to the board directly is interesting but my colleagues at work claim that it can be done the way i presented it in the picture. The said something about using an operational amplifier for each sensor to lower the voltage for Domino and still allow the PLC to use the sensor… Does that ring a bell ??


#4

@ Gralin,

The Operational Amplifier might work, or might not, depending on how the PLC is sending current into the sensors.

  • Is it sending current 100% of the time, so you if it’s constant, you may be able to read some results ?
  • Is it sending current only when it is actualy reading the sensors, every few minutes ? It can happend : in some precision sensors, it is advised not to send current all the time because it is slighty making the sensor warm and then changing the results.

Your best chance is definitly to really look at what is happening with a high impedance probe (oscilloscope or digital multimeter)…


#5

I didn’t check it yet with an osciloscope but i disconnected the probes and measured the voltage on the connectors. The reading was contant 5 V on the electronic meter. May this prove that the controller is constantly sending current to sensors? Unless it behaves differently when it can’t read value from a sensor… Ok so i will take a look with an osciloscope what is going on there when the sensors are connected and get back to you.

Meanwhile could you show me the schematics of the IC that uses an operational amplifier ? This is something that is over my electronics skills :\


#6

This is very tricky, but you should definitively find an electronician out there that can make tests and offer a solution. This is difficult to do trhough internet.

The difficult point, even with amp-ops is to make a measurement without changing the impedance of the whole circuit, which would badly affect the PLC.

According to how the sensors are powered (one side to GND and the other floatting, one side solid +5 and the other floating, or both floating) will need to use an amp-ops configured respectively as

  • non inverting amplifier
  • inverting amplifier
  • differential amplifier (with at least 100k input resistors)

The problem with amp-ops is that you will most likely need a symetric power (+5 and -5V) with them…

You should still try to tap inside the PLC electronics, a little reverse engineering should help :wink:

A good handbook about amp-ops: http://focus.ti.com/lit/an/sboa092a/sboa092a.pdf
The wikipedia article is good enough I think : http://en.wikipedia.org/wiki/Operational_amplifier_applications

Good luck ! :stuck_out_tongue:


#7

Friend send me the photos of the controller board:

http://img535.imageshack.us/img535/2913/1000134o.jpg
http://img94.imageshack.us/img94/4299/1000135i.jpg
http://img130.imageshack.us/img130/9747/1000136p.jpg

I will try to get better quality… Any hint what should i be looking for? Question is simple: How to connect a FEZ to this board to read the sensors mentioned…


#8

Try to make a diagram, following the signal from the sensor a little bit… It’s seems difficult, but you should b able to do it within an hour with luck ! Once you have don th diagram, the solution will pop up !

As a fall back, couldn’t you just add more sensors near the other ones ?


#9

Ok I have figured out how this controller reads the NTC10K sensors. Any way to connect to it ??

As for adding extra sensors, it would be difficult and we hope to avoid it…


#10

What are the chips names/references on both the big and the daughter board ?
What voltage to you read at the AIN point using a digital multimeter ?
At AIM the voltage should decrease when the temperature is rising. (confirm ?)
Value of the resistor between the sensor and GND ?

You can connect an “inverting amplifier” at the AIM point ; but maybe if you continue a little bit the diagram, after the signal is amplified, you may find a point where you will be able to connect directly your FEZ.


#11

I will get better quality pictures tonight. The doughter board is used only for amplify the signal from PT1000 sensors (in this case only half of the board is soldered so only 1 PT1000 sensor can be used). The doughter board uses a 8551 chip.

I guess it will be something between 0-5 V. I will measure this and post result tonight.

Will measure and post result tonight.

Only PT1000 signal is amplified. The diagram is complete for ntc10k sensors. You can se the sensors characteristics below. PT1000 resistance change is small so i assume the signal needs to be amplified?


#12

Paint analysis result:


#13

The 8551 is an op-amp. So you should tap at the output of the daughter board to get a good high-impedance value to get into your FEZ. If it’s about 5V, so will just need to add a resistor divider to adapt it to 3.3v.


#14

I have the controller and display boards with me so i can anwser all hardware questions :slight_smile: Funny thing is that i can’t find the datasheet of the CPU used on both boards…


#15

Neither do I ???
Just tap between the daughter board and the big ship, and it will be ok :slight_smile:


#16

And why don’t you add a second NTC?


#17

The problem is that there is no space left to insert another sensor probe into the water tank or the collector array. Also the rubbers fit exactly for one probe an it would require some skills to change them.

This could work for the pt1000 sensor but there still are those ntc10k sensors that don’t go via the doughter board, but straight to the unidentified CPU.

I have another idea. I took RS232 cable and connected GND and RX to the display connectors (while the display is connected). The display board and the main board have the same CPU and some kind of communication occurs using three wires (COM,VCC,GND). Terminal shows me the data that is present on the wire. It seems that the display is doing the talking since there is silence without it. I have to figure out the bandwidth, data bits and the format… some reverse engineering !

Question: since there is no datasheet for the processor, how can i be 100% sure that this is a half duplex RS232 ? I have regular data each second on my terminal but that might be some other standard can it?


#18

Usualy the communications to a simple display is uni directional only.
If you look with a scope you will be able to mesure the smalest bit and find the speed.
Or you could just do tries and guess… starting with 9600/8/N/1…
Something useful for you should be to know wether it’s RS232 levels (-10 to +10v) or TTL (0 to 3.3 or 5V). If you don’t have a scope, you can just look with a multimeter the level when it’s doing nothing. If 0 or 3.3 or 5V it’s ttl, if -10 (or -12 or ??) or +10/+12 it’s RS232.
If it’s TTL don’t connect it to your pc directly; but you can connect it to your FEZ.
If RS232, don’t connect it to the FEZ…


#19

The display board has also buttons and enables the user to configure the main board so bidirectional communication is needed. When i connected pc only to the display i received less data than when listeninning to display<->main board connection.

When i measured the voltage on the main board connection i got 2.6 V or something like that. I forgot about that and connected a USB to RS232 converter. Terminal was showing data as i mentioned in previous post. Is it possible that even that it seems to be TTL it worked in a way?


#20

You are playing dangerous games :wink:
Yes, connecting TTL to RS232 you will see “something”, mostly garbage, and reversed information. as far as you are only “receiving”, that shouldn’t damage the TTL side (if it’s TTL at all)
And it really might not be RS232 at all ! maybe some kind of other one-wire protocol enable bi-drectional conversation on one wire.

Man, you really need a scope ! :smiley:

if you see 2.6v, that’s likely because the signals are “moving” therefore you get an “average”.

I have the feeling that you will not go really far doing it on the forum - you should really, really find an electronic specialist in your area that might fix the thing in a couple of hours :wink: Where we are going to spend months here :whistle: