FORO SPAMLOCO


Mostrar temperatura con sensor y displays LED con Arduino


Dudas sobre hardwares en general...
   

Mostrar temperatura con sensor y displays LED con Arduino

Notapor Alejandro » Mar 2016, 06:20

Arduino es una de las mejores formas de comenzar a aprender electrónica y unir lo que es el software con el hardware para realizar alguna tarea.

Los kits de iniciación vienen con una placa Arduino, varios sensores como uno que detecta señales infrarrojas, temperatura, movimiento, también traen resistencias, botones, cables para realizar las conexiones, luces led, entre otros elementos.

Programar para la plaqueta Arduino es muy sencillo, sólo hay que descargar una aplicación desde la página oficial que funciona como compilador. Además, ya viene con varios programas de ejemplo, también se puede programar por medio de una interfáz gráfica e incluso desde Scracth. El lenguaje es muy similar a C, que es bastante sencillo de aprender y divertido.

Sensor de temperatura con dos display de 7 segmentos

Materiales:

- Placa Arduino (la de este ejemplo es modelo UNO)
- 1 sensor de temperatura LM35
- 2 display LED 7 Segment (KYX-5461AS)

La parte complicada es la conexión de los display, pues cada led que permite formar los números debe estar conectado a la placa. En las siguientes fotografías se puede ver el montaje completo, con una luz LED verde extra que es opcional y la programé para que se prendiera según la temperatura ambiente que detectaba el sensor.

Imagen

Imagen

Circuito o esquema de conexiones:

Los LED de cada display van conectados entre sí, a su vez estos se conectan a los pines de la placa Arduino.

Imagen

Los conectores o patas número 5 de cada display se pueden dejar libres o sin conectar, pues son los que prenden los puntitos del display. Los números de cada pata o conector del display son los siguientes:

Imagen

El sensor de temperatura LM35 va conectado a la placa por el pin analógico:

Imagen

Código o programa:

Se necesita la librería SevSeg que se puede descargar desde la página oficial aquí, la versión antigua 2.3 que ahí figura como la old version.

Una vez descargada se descomprime el archivo y la carpeta SevSeg se coloca dentro de la carpeta de libraries de la instalación del programa de Arduino.

El código que yo utilicé para mostrar la temperatura en los display es el siguiente, copiar y pegar, compilarlo para ver si hay errores y subirlo a la placa:

Código: Seleccionar todo
//foro.spamloco.net
#include "SevSeg.h"

SevSeg sevseg;

int actualizarTiempo = 500; // tiempo en milisegundos para refrescar la temperatura

unsigned long timer;
float temperaturaC = 0;
int temperaturaPin = 0;

void setup()
{
  sevseg.Begin(0,2,3,4,5,6,7,8,9,10,11,12,13);
}

void loop()
{
  sevseg.PrintOutput();
 
    temperaturaC = analogRead(temperaturaPin); // captura temperatura del sensor

    temperaturaC = (5.0 * temperaturaC * 100.0)/1024.0; // convierte a grados centígrados
   
  unsigned long milisegundos=millis();
  if (milisegundos-timer>=actualizarTiempo) {
    timer=milisegundos;
 
  sevseg.NewNum(temperaturaC,(byte) 2); // imprime temperatura en los display
  }

}


De esta forma el sensor ya debería de estar midiendo la temperatura y mostrándola en el LED, si quieren agregar un LED extra para que se encienda, por ejemplo, cuando la temperatura supera los 30 grados... sólo hay que agregar lo siguiente.

Dentro de void setup:

Código: Seleccionar todo
pinMode(3, OUTPUT);


Y dentro de void loop antes del cierre de la función:

Código: Seleccionar todo
// enciende el LED cuando la temperatura supera los 30 grados
  if (temperaturaC >= 30)
{
  digitalWrite(3, HIGH);
}


Si no les funciona, comentar :coffe:
Avatar de Usuario
Alejandro
Administrador
 
Mensajes: 4064
Registrado: May 2009, 18:28
Ubicación: Uruguay
Twitter: @spamloco



Re: Mostrar temperatura con sensor y displays LED con Arduin

Notapor elQuique » Mar 2016, 09:45

Muy bueno :) (el hardware el código esta poco optimizado)
Avatar de Usuario
elQuique
Moderador
 
Mensajes: 2227
Registrado: May 2009, 18:43
Ubicación: Florida, Uruguay
Twitter: @elQuique

Re: Mostrar temperatura con sensor y displays LED con Arduin

Notapor Alejandro » Mar 2016, 16:58

Optimízalo :rock:
Avatar de Usuario
Alejandro
Administrador
 
Mensajes: 4064
Registrado: May 2009, 18:28
Ubicación: Uruguay
Twitter: @spamloco

Re: Mostrar temperatura con sensor y displays LED con Arduin

Notapor Alejandro » Abr 2017, 16:25

Un pequeño update.

En una placa soldé algunos cables para que quedaran por detrás, no es la gran cosa pero quedó más funcional.

Con esto y el medidor de distancia ya tengo el sistema de estacionamiento automático listo :lol:

Imagen

Imagen
Avatar de Usuario
Alejandro
Administrador
 
Mensajes: 4064
Registrado: May 2009, 18:28
Ubicación: Uruguay
Twitter: @spamloco

Re: Mostrar temperatura con sensor y displays LED con Arduin

Notapor federico » Abr 2017, 17:37

Alejandro escribió:Un pequeño update.

Con esto y el medidor de distancia ya tengo el sistema de estacionamiento automático listo :lol:


:lol: cada loco con su tema :lol: felicitaciones!
federico
Nivel 10
 
Mensajes: 2245
Registrado: Ene 2011, 17:26
Twitter: @

Re: Mostrar temperatura con sensor y displays LED con Arduin

Notapor sfraguas » Jun 2017, 18:34

Lo intente, pero tan solo se me queda marcando 99 en los displays y nada mas
sfraguas
Nivel 1
 
Mensajes: 1
Registrado: Jun 2017, 18:29
Twitter: @

Re: Mostrar temperatura con sensor y displays LED con Arduin

Notapor Alejandro » Jun 2017, 22:54

La conexión la hiciste manual, led por led, cable por cable?

Porque si los display tienen el modulo que te permite ahorrar cables, el código para que funcione puede ser diferente.
Avatar de Usuario
Alejandro
Administrador
 
Mensajes: 4064
Registrado: May 2009, 18:28
Ubicación: Uruguay
Twitter: @spamloco