Sensor PT1000 e Sensor NTC10

Boas,

Coloquei um topico para o meu controlador solar: Controlador Diferencial para o meu sistema solar Térmico - Português - Arduino Forum e de momento tou a deparar com outra dificuldade pois o meu sensor 0 é uma PT1000 e outro é uma NTC10.

Quando fiz tudo isto e pesquisei usei somente sensores NTC10 10K mas para utilizar o que ja tenho necessito de fazer esta alteração nos codigos como posso fazer essa mudança?

Cumprimentos
JM

Boas,

Consultei o segundo link:

E da criei o seguinte codigo:

int fTemp=0;

void setup() {

{

Serial.begin(9600);
pinMode (fTemp, INPUT);
}

}

float GetPt100Temperature(float r)
{
float const Pt100[] = {80.31, 82.29, 84.27, 86.25, 88.22, 90.19, 92.16, 94.12, 96.09, 98.04,
100.0, 101.95, 103.9, 105.85, 107.79, 109.73, 111.67, 113.61, 115.54, 117.47,
119.4, 121.32, 123.24, 125.16, 127.07, 128.98, 130.89, 132.8, 134.7, 136.6,
138.5, 140.39, 142.29, 157.31, 175.84, 195.84};

int t = -50, i = 0, dt = 0;

if (r > Pt100[0])
while (250 > t)
{
dt = (t < 110) ? 5 : (t > 110) ? 50 : 40;

if (r < Pt100 [++i])
return t + ( r - Pt100[i-1])dt/(Pt100-Pt100[i-1]);*

  • t += dt;*

  • };*

  • return t;*

}
void loop() {

  • delay(1000);*
    Serial.print("Temperatura no Sensor 0: ");
    *Serial.println(int(GetPt100Temperature(analogRead(0)))); *

}
Mas n ta a dar leitura...

Olhando ao teu código... isso compila?? Eu vejo ai chavetas que não estão ligadas.

Depois reparo que a tua função Pt1000 recebe um float, mas tu estás a dar-lhe um int.

Também reparei que definiste o valor de retorno da função como float, mas mesmo assim estás a dar-lhe um int... esperas milagres??

A função analogRead não te dá o valor de resistência... dá-te um valor entre 0 e 1023 equivalente à tensão no pino referente ao espaço 0-5V. A função que colocaste aqui basicamente calcula-te a temperatura duma sonda Pt100 ou 1000 com base na resistência medida... mas para isso tens de medir resistência. Como ligaste a sonda ao Arduino?

Nota que pegar em código da internet, sem ser especificado que funciona num Arduino ou AVR não é só copy/paste. Tens de perceber algo do que estás a fazer.

Realmente foi um copy paste tenho feito algumas pesquisas acerca do assunto e ainda n descobri como resolver :frowning:

A resistência da sonda é de 1 k 0ºC

Como ligaste a sonda ao Arduino?

Usas-te alguma ponte de wheatstone?

Estou a pensar ligar assim File:Twowire.gif - Wikipedia

NOTA: eu sou muito verdinho por isso gostava de saber as melhores alternativas o que tenho foi meramente o que descobri

As resistências que tou a pensar usar sao todas iguais 1k cada

Hugo esse é outro problema q ainda n resolvi ou ainda n tenho a certeza do que fazer

Cumprimentos

Estou a pensar ligar assim File:Twowire.gif - Wikipedia

Isso é uma ponte wheatstone :grin:
Então agora só tens de montar o teu circuito e ver que gama de tensão a ponte cria na gama de temperatura que queres.Caso o desequilíbrio gerado na ponte seja muito pequeno tens de usar um amplificar de instrumentação para assim aproveitares o máximo da escala do ADC do arduino. Lendo esses valores tens a temperatura ...

Hugo,

Quais os valores das resistencias que devia utilizar na ponte wheatstone?

R1, R2 e R3?

Quais os valores das resistencias que devia utilizar na ponte wheatstone?

Visto ser uma PT1000 as outras resitencias devem ser todas de 1K

Foi o que tinha referido anteriormente :slight_smile: vou ter de adquirir umas q de momento n tenho depois irei verificar obrigado

Penso q não tou a ligar bem a sonda no arduino utilizando a ponte onde logo a entrada analogica? no GND? e por sua vez a ponte e a sonda? recorrendo ao seguinte esquema: File:Twowire.gif - Wikipedia

Sera como o seguinte desenho que fiz?

Será que é assim que fica?

Eu se calhar não iria por aí...

Qual a precisão que pretendes?

Já viste esta possibilidade?
http://openenergymonitor.org/emon/node/75

Isso tem aí um multiplexer que só necessitarias se tivesses mais de uma sonda. Logo pode ser tirado.

O andar de amplificação tem de ser calibrado para fazer um offset da tensão para a gama que pretendes.

Mas, já montaste o esquema que tinhas aqui?

boas bubulindo,

De facto se existir um erro de 1 a 2 graus n será significativo ate porque o que uso actualmente noto um diferença de leitura de 1ºC da PT 1000 para a NTC 10 penso q a soluçao que apresentaste sera melhor opção a anterior n experimentei ate porque n tenho o amplificador.

Não precisa de ser aquele.... mas o INA é um bocado bom demais para isso.

Tens outro amplificador por casa? Sem ser de instrumentação?

TAmbém tens o INA125?

Não tenho nada de amplificadores mas posso adquirir qual me aconselhas?

Cumprimentos
JM

Sendo assim, seguir a montagem que meti sem uma ponte de wheatstone com um amplificador normal.

Se uma precisão extrema não é necessária é melhor seguir pelo caminho mais simples.

Então referes que adquira 3 LM 324 certo? o CD4052 não sera necessario ou tb necessito de adquirir? visto ser somente uma PT 1000

Sim, não precisas do CD4052 já que só tens um sensor.