Pages: [1] 2   Go Down
Author Topic: Problema sensor temperatura y relé  (Read 3413 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola, mi problema es bien sencillo pero hay algo que se me escapa porque no puede ser tan complicado lo que quiero hacer. Estoy haciendo una especie de termostato con Arduino Uno compuesto de un LCD 16x2, un sensor de temperatura TMP36 y un relé de 5V. Los datasheets de los dos últimos son los siguientes:

https://www.sparkfun.com/products/10988
https://www.sparkfun.com/products/100

El TMP36 está conectado a la A0 y las lecturas de la temperatura es correcta, el problema llega cuando activo el relé. Al activarse el relé y volver a solicitar la lectura del sensor las lecturas son erróneas. ¿Alguien tiene alguna idea de por qué puede pasar esto? ¿El relé que utilizo no es el adecuado?

Espero vuestras respuesta, y muchas gracias antes de nada. UN saludo
Logged

0
Offline Offline
Edison Member
*
Karma: 8
Posts: 1040
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sin ver el codigo es dificil ayudarte.
Logged

Trabajando en ...

    * Control Domotico (En montaje ...)
    http://casitadomotica.blogspot.com/
 

[url=https://bitbucket.org/fmalpartida

Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

El código es bastante simple y creo k no es lo que influye. De todas maneras, el programa está basado en una máquina de estados en la que vas pasando de un estado a otro pulsando un botón conectado a la INT0. En el estado 0, se limita a hacer lecturas del sensor de temperatura; en el estado 1, seleccionas mediante un potenciómetro la temperatura a la que quieres que "salte" el termostato; una vez vuelto al estado 0, empieza a comprobar cuando la temperatura leida es mayor que la seleccionada y cuando se cumpla varias veces seguidas pues activa el relé.

De todas maneras voy a probar un programa sencillo aparte sólo midiendo la temperatura y activando el relé, a ver lo que sucede.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Este es un ejemplo que acabo de probar y sigue fallando lo que dije en el primer post.


int rele = 8;
int menuButton = 2;             // Botón "menú" conectado a la INT0
int temperaturaPin = A0;
boolean activo = 0;

 void setup() {
  pinMode(rele, OUTPUT);
  pinMode(temperaturaPin, INPUT);
  Serial.begin(9600);
  attachInterrupt(0, changeMenu, FALLING);  //Configuración de la INT0
  delay(5000);
 }
 
 void loop(){
    float temperatura = getVoltage(temperaturaPin);
    temperatura = (temperatura - 0.5) * 100;
    Serial.println(temperatura);
    delay(1000);
 }
 
 void changeMenu(){
   activo = !activo;
   digitalWrite(rele,activo);
}

 float getVoltage(int pin){
   return (analogRead(pin) * .004882814);     //Para 5V     
 }
Logged

Offline Offline
Edison Member
*
Karma: 23
Posts: 1375
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Prueba a desconectar el relé, ¿funciona? Entonces ya sabes de quién es la culpa
Logged

Mercadillo electrónico. Kit iniciación a Arduino, shield LCD a color y más cosas!

0
Offline Offline
Edison Member
*
Karma: 8
Posts: 1040
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Como dice @Chiva mira el rele, pensaba que usabas un LCD pero veo que no.
Logged

Trabajando en ...

    * Control Domotico (En montaje ...)
    http://casitadomotica.blogspot.com/
 

[url=https://bitbucket.org/fmalpartida

Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Claro, el problema está cuando activo el relé...lo que quiero saber es como soluciono ese problema...porque el relé esta bien configurado...lo que no se es si ese tipo de relé tiene alguna contraindicación...porque cuando se activa todas las patillas del puerto analógico sufren una pequeña variación en la tensión.
Con respecto a lo del LCD, uso uno pero he puesto un ejemplo simple para probar el funcionamiento exclusivamente del relé y el sensor. Si alguien ha utilizado algún relé de 5V en particular o sensor de temperatura que me lo comente por favor.
Logged

Euskadi
Offline Offline
God Member
*****
Karma: 16
Posts: 712
Arduinotarrak
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola,
cualquier cosa que vayas a conectar a un pin de Arduino debe consumir menos de 40mA, Y ese relé en la hoja de datos dice que "Power consumption of 200mW", que a 5V vienen a ser unos 40mA (watios = voltios x amperios). La solución es conectarlo con un transistor, y para eso tienes miles de ejemplos en la red. Por citar uno, http://txapuzas.blogspot.com.es/2010/07/rele-controlado-por-transistor.html
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Curro muchas gracias, perdón por no decir que el relé lo tengo conectado al pin de arduino mediante un transistor (P2N2222A)...no sé que mas probar. Creo k buscaré otro relé a ver si el fallo es algo interno del relé
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 65
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Te doy un consejo  : Lo mejor y que da menos problemas es el usar un Optoacoplador   ya que con ello  se aisla completamente los pines de salida de la carga , el consumo es de unos 4 mA  y en la carga se puede conectar un transistor  Darlintong de  potencia.
Yo he probado con transistores  BC547B  y sin ningun problema, eso si, tienes que conectar entre el pin de salida y la base del BC547 una resistencia de 1K5  para evitar que el consumo sea alto.
Tambien otro consejo util  :  Alimenta la carga con una fuente externa, no la del  Arduino.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

He hecho una prueba quitando el relé y manteniendo el transistor, para ir acotando el fallo...y mi sorpresa ha sido que al activar el transistor, el sensor de temperatura me da la lectura también errónea por lo tanto el relé tiene poco o nada que ver con el fallo.

A lo mejor una buena opción sería utilizar un MosFet ya que tiene la puerta aislada no?? o un diodo en paralelo en el emisor del transistor para el paso de la corriente??
Logged

Offline Offline
Full Member
***
Karma: 1
Posts: 208
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Tengo el mismo problema, y creo que tengo la solucion aunque aun no lo he probado,
tienes conectado un diodo a la patilla de enmedio del transistor? Por lo visto esto evite que al activarse la bobina del rele la corriente vuelva en el otro sentido y provoque lecturas erroneas.

http://www.arduino.cc/es_old/Tutoriales/Rele

Es el 1N4001,  creo, ya me diras algo.
Logged


Offline Offline
Jr. Member
**
Karma: 3
Posts: 88
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

un diodo a la patilla de enmedio del transistor?

Imploro a los moderadores que dividan el foro en secciones para principiantes absolutos en electrónica y usuarios medios avanzados!!

Todos hemos empezado sin saber qué es un diodo, pero muchos de nosotros pasamos esa fase en la era "analógica".
En la era digital la gente cree que por escribir una línea de código pin1=1, el pin1 se va a poner a 1 como si esto fueran matemáticas.

No! La electrónica tiene mucho más y por eso nunca aburre.
Empieza entendiendo como pilotar un relé mediante un interfaz a transistor, qué tipo de transistores hay y cómo se usan (no hace fata conocer los parámetros h, sólo lo básico, emisor, base, colector, corte saturación.......

De otro modo, no se puede hacer una paella sin saber lo que es un sofrito ni cómo se enciende la cocina, por mucho que leas una receta.
Logged

Offline Offline
God Member
*****
Karma: 6
Posts: 634
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Pues yo creo que @Josema106 tal vez sea un principiante pero además de comentar de buena fe cre que no va nada desencaminado. La patilla de en medio a la que se refiere bien puede ser la del BD137 que se usa, que físicamente ese transistor el colector es justo la patilla de en medio.
Logged


Offline Offline
Full Member
***
Karma: 1
Posts: 208
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

un diodo a la patilla de enmedio del transistor?

Imploro a los moderadores que dividan el foro en secciones para principiantes absolutos en electrónica y usuarios medios avanzados!!

Todos hemos empezado sin saber qué es un diodo, pero muchos de nosotros pasamos esa fase en la era "analógica".
En la era digital la gente cree que por escribir una línea de código pin1=1, el pin1 se va a poner a 1 como si esto fueran matemáticas.




No! La electrónica tiene mucho más y por eso nunca aburre.
Empieza entendiendo como pilotar un relé mediante un interfaz a transistor, qué tipo de transistores hay y cómo se usan (no hace fata conocer los parámetros h, sólo lo básico, emisor, base, colector, corte saturación.......

De otro modo, no se puede hacer una paella sin saber lo que es un sofrito ni cómo se enciende la cocina, por mucho que leas una receta.


Tu implora mientras que los demas intentamos ayudar, ok???

Y perdon si he herido tus sentimientos de guru de la electronica, no todos tenemos tan altos conocimientos.

Pido y suplico compasión(reverencia, reverencia, reverencia)
Logged


Pages: [1] 2   Go Up
Jump to: