Arduino Forum

International => Español => Software => Topic started by: Adrian7557 on Dec 17, 2017, 07:56 pm

Title: problema lectura de temperatura doble canal
Post by: Adrian7557 on Dec 17, 2017, 07:56 pm
Hola! buenas! estaba retomando un antiguo proyecto con ardruino, y para ponerme al día empecé con los sensores de temperatura que me parecía más facilito, pues bien, son dos distintos, uno logarítmico y el otro lineal, el código de cada uno funciona perfecto independientemente, el problema es cuando los uno para que me muestre los dos valores a la vez, el sensor lineal se vuelve loco y da datos aleatorios, pasando de 15 grados a 40, 12, 22 , de ese estilo, mientras, el logarítmico siempre va bien. he revisado el programa a ver si es que interfiere una ecuación con otra, pero aparentemente no veo nada, saben que puede ser? Gracias!

Code: [Select]


#include <math.h>
 
const int Rc = 10000; //valor de la resistencia
const int Vcc = 5;
const int SensorPIN1 = A2;
const int SensorPIN2 = A6;
 
float A = 1.11492089e-3;
float B = 2.372075385e-4;
float C = 6.954079529e-8;
 
float K = 2.5; //factor de disipacion en mW/C
 
void setup()
{
  Serial.begin(9600);
}
 
void loop()
{
 
 
  float raw1 = analogRead(SensorPIN1);
  float V1 =  raw1 / 1024 * Vcc;
 
  float R = (Rc * V1 ) / (Vcc - V1);
 
 
  float logR  = log(R);
  float R_th = 1.0 / (A + B * logR + C * logR * logR * logR );
 
  float kelvin = R_th - V1*V1/(K * R)*1000;
  float celsius1 = kelvin - 273.15;

  float raw2 = analogRead(SensorPIN2);
  float V2 = (raw2 / 1024) * 5000;
  float celsius2 = V2 / 10;
 
  Serial.print(" / T Ambiente= ");
  Serial.print(celsius1);
  Serial.print("C");
  Serial.print("T Agua = ");
  Serial.print(celsius2);
  Serial.print("C\n");
  delay(2500);
}

Title: Re: problema lectura de temperatura doble canal
Post by: surbyte on Dec 17, 2017, 09:49 pm
No veo fallas en el código.
Cuentame mas de los sensores.
Uno es un LM35, eso esta claro, el 2
El primero es una R logaritmica de que valor nominal a 25 grados?
Title: Re: problema lectura de temperatura doble canal
Post by: Adrian7557 on Dec 17, 2017, 10:12 pm
Si, es un sensor encapsulado en metal para meter en el agua de dos pines, que lo tengo conectado al GND y a 5v con una resistencia de 10k que va desde la pata de 5v al pin A6, de todas formas ese no me falla nunca, ni en solitario ni en el grupo, el que falla es el otro el LM35, de hecho pensé que estaba estropeado, pero si borras la parte logarítmica del otro, éste funciona perfecto, así que no lo entiendo....
Title: Re: problema lectura de temperatura doble canal
Post by: surbyte on Dec 17, 2017, 10:50 pm
Y como lo tienes conectado?

Seguro que esta conectado a A2?

3 pines, uno gnd, uno a A2 y otro a 5V?


(https://ardubasic.files.wordpress.com/2014/03/circuitos_lm35.png?w=604&h=185)
(https://ardubasic.files.wordpress.com/2014/03/encapsulado_lm35.png?w=150&h=148)

Verifica por favor.
Cual de las conexiones usa, izq o derecha. Derecha con R a GND esta mal, debe ser con R a Tension negativa algo que todos pasan por alto pero tampoco sería motivo de una falla como la que comentas.

Title: Re: problema lectura de temperatura doble canal
Post by: Adrian7557 on Dec 17, 2017, 11:39 pm
lo conecte como interprete en el esquema que mandas, y me salian temperaturas de 290 arriba... lo toque y estaba hirviendo, así que volví a ponerlo como antes. En el programa si borro la parte del logaritmo me funciona bien si la pongo, ya no, no tiene mucho sentido pero ese es el fallo... Gracias por la ayuda por cierto!
Title: Re: problema lectura de temperatura doble canal
Post by: surbyte on Dec 18, 2017, 04:37 pm
No hay modo de interpretar las cosas en electrónica.
Existe un solo modo. Seguramente lo pusiste al revés y ya como lo tenías estaba bien, yo solo te puse el esquema para que veas como debe ir.

(https://tallerarduino.files.wordpress.com/2013/10/lm35.png?w=300&h=252)

Acá otro esquema que debe ser el que usas.

Ahora me doy cuenta de algo.
A6 estas usando.
Que Arduino usas? UNO no puede ser.
Minimo NANO o MEGA.
Title: Re: problema lectura de temperatura doble canal
Post by: Adrian7557 on Dec 18, 2017, 05:19 pm
es el Nano, aunque antes lo tenía en el A5 y lo cambie por si era que estaba mal el pin o algo, y nada tampoco funciono...