You are on page 1of 15

Un sensor piezoeléctrico, dispositivo que responde a las vibraciones,

produce una tensión en respuesta a una acción física. El piezo se


polariza y el lado positivo se conecta a una entrada analógica, el lado
negativo se conecta a tierra. La tensión es detectada por Arduino usando
analogRead para encender un LED. El valor de umbral del nivel sensor
determina que tanto se enciende el LED. Esto sensores se pueden
comprar o se pueden hacer usando dos disco de metal unidos cada uno
a un cable. 10MΩ
Conexión: (usamos una resistencia de 10MΩ )

Codigo:

const int sensorPin = 0; // entrada piezo

const int ledPin = 13; //indicador led

const int THRESHOLD = 100;

void setup ( ) {

pinMode(ledPin, OUTPUT);

}
void loop ( ) {

int val = analogRead(sensorPin);

if (val >= THRESHOLD) {

digitalWrite(ledPin, HIGH);

delay(100);

else

digitalWrite(ledPin, LOW);

Termopar con Arduino y MAX6675


medición de temperatura
by Admin | Jul 14, 2018 | Tutoriales Arduino | 1 comment
En este tutorial te enseñaremos a conectar un termopar con Arduino a través
de un circuito integrado MAX6675 que esta diseñado para termopares tipo K.
Los termopares son excelentes cuando se desean medir temperaturas
elevadas, donde los sensores de silicio como el LM35DZ no pueden ser
aplicados debido a que serían destruidos o dañados por temperaturas
extremas.
Desafortunadamente un termopar no puede conectarse fácilmente al ADC de
un microcontrolador, ya que la señal que genera es muy pequeña, pero existen
circuitos como el MAX6675 que facilitan la tarea enormemente y en esta
entrada abordaremos el procedimiento para conectar este tipo de sensores a
nuestra tarjeta arduino favorita.
Dentro del pequeño encapsulado SOIC 8 del MAX6675 se encuentra la
electrónica necesaria para amplificar, compensar y convertir a digital el voltaje
generado por el termopar, lo que hace muy sencilla la tarea de conectar un
sensor de este tipo a un microcontrolador como el Arduino Uno.
Materiales necesarios para las prácticas del
termopar con Arduino
Para esta experiencia requerimos los materiales listados más abajo. Como
siempre te recomendamos revisar nuestra tienda virtual para que nos apoyes a
generar más contenido a través de tu compra.
 Módulo MAX6675 con termopar
 Arduino UNO R3 o Similar
 Pantalla LCD 16×2
 Potenciómetro de 10K
 Cables para conexión

Teoría de funcionamiento del termopar


Un termopar es un dispositivo formado por la unión de dos metales distintos
que produce un voltaje (efecto Seebeck), que es función de la diferencia de
temperatura entre uno de los extremos denominado “punto caliente” o unión
caliente o de medida y el otro denominado “punto frío” o unión fría o de
referencia.
Este tipo de sensores son ampliamente utilizados en aplicaciones de
instrumentación industrial debido principalmente a su bajo costo y su amplio
rango de temperaturas. La principal desventaja de los termopar es su exactitud,
ya que rara vez se consiguen errores menores que 1 grado centígrado.
En la siguiente imagen podemos ver un típico termopar tipo K.
Para conocer los tipos de termopares que existen, dependiendo del material
con el que están elaborados, te recomendamos revisar este enlace, donde se
explica más a detalle el funcionamiento del termopar y los tipos que existen en
el mercado así como su composición.

Cómo conectar un termopar con Arduino usando


el módulo MAX6675.
El siguiente diagrama muestra como llevar a cabo la conexión de un módulo de
MAX6675 con el Arduino.
Cabe recordar que existen varios tipos de módulos en el mercado y
debemos prestar atención para no equivocarnos en la posición de las
señales.
Si no usaremos la pantalla LCD, podemos omitir el armado de esta parte del
circuito.
Librería para conectar un termopar con Arduino
y MAX6675
Antes de continuar con el desarrollo de los ejemplos siguientes, es necesario
descargar e instalar la librería para el MAX6675. El enlace de descarga de la
librería se muestra a continuación:
Librería para MAX6675 con Arduino
Puedes consultar el tutorial para instalar librerías si tienes dudas sobre la
instalación de librerías en arduino.

Termopar con Arduino y monitor serial


El siguiente programa ilustra el funcionamiento de un termopar con Arduino, el
resultado de las mediciones se envía a la PC para mostrarse en el monitor
serial del Arduino.
En un ejemplo posterior, mostraremos como visualizar el resultado de la
medición en una pantalla LCD de 16×2. Cabe destacar que podemos cambiar a
nuestra voluntad los pines donde se conecta el módulo MAX6675 cambiando
las definiciones correspondientes. Esto permitirá administrar los pines de
acuerdo al proyecto que estemos realizando.

#include "max6675.h"

// CONFIGURACION DE LOS PINES UTILIZADOS PARA LA COMUNICACIÓN CON EL MAX6675

#define CONFIG_TCGND_PIN 8

#define CONFIG_TCVCC_PIN 9

#define CONFIG_TCSCK_PIN 10

#define CONFIG_TCCS_PIN 11

#define CONFIG_TCDO_PIN 12

// OBJETO UTILIZADO PARA LA COMUNICACION CON EL MAX6675

MAX6675 thermocouple(CONFIG_TCSCK_PIN, CONFIG_TCCS_PIN, CONFIG_TCDO_PIN);

void setup() {

// PREPARAR LA INTERFAZ SERIAL

Serial.begin(9600);

// USAR PINES DE ARDUINO PARA ALIMENTAR EL MODULO MAX6675

pinMode(CONFIG_TCVCC_PIN, OUTPUT); digitalWrite(CONFIG_TCVCC_PIN, HIGH);

pinMode(CONFIG_TCGND_PIN, OUTPUT); digitalWrite(CONFIG_TCGND_PIN, LOW);

// IMPRIMR MENSAJE INICIAL A LA TERMINAL

Serial.println(F("----------------------------------------------------"));

Serial.println(F(" TUTORIAL TERMOPAR CON ARDUINO Y MAX6675 "));

Serial.println(F(" http://www.geekfactory.mx "));


Serial.println(F("----------------------------------------------------"));

// ESPERAR A QUE SE ESTABILICE LA ENERGIA

delay(500);

void loop() {

// IMPRIMIR LA TEMPERATURA EN LA TERMINAL SERIAL

Serial.print("C = ");

Serial.println(thermocouple.readCelsius());

// ESPERAR UN SEGUNDO ENTRE LAS LECTURAS

delay(1000);

Termopar con Arduino y pantalla LCD.


El código a continuación permite realizar un termómetro con pantalla LCD
utilizando un termopar como sensor. Por si mismo este programa puede ser
muy útil para visualizar la temperatura de algún proceso comercial o industrial.
#include "LiquidCrystal.h"

#include "max6675.h"

// CONFIGURACION DE LOS PINES UTILIZADOS PARA LA COMUNICACIÓN CON EL MAX6675

#define CONFIG_TCGND_PIN 8 // ALIMENTACION GND

#define CONFIG_TCVCC_PIN 9 // ALIMENTACION VCC

#define CONFIG_TCSCK_PIN 10 // SPI SCK

#define CONFIG_TCCS_PIN 11 // SPI CS

#define CONFIG_TCDO_PIN 12 // SPI MISO

// CONSTRUCTOR PARA LA PANTALLA LCD 16X2

// AQUI SE CONFIGURAN LOS PINES PARA LA COMUNICACION CON LA PANTALLA

LiquidCrystal lcd(7, 6, 5, 4, 3, 2);

// OBJETO UTILIZADO PARA LA COMUNICACION CON EL MAX6675


MAX6675 thermocouple(CONFIG_TCSCK_PIN, CONFIG_TCCS_PIN, CONFIG_TCDO_PIN);

void setup() {

// PREPARAR LA INTERFAZ SERIAL

Serial.begin(9600);

// IMPRIMR MENSAJE INICIAL A LA TERMINAL

Serial.println(F("----------------------------------------------------"));

Serial.println(F(" TUTORIAL TERMOPAR CON ARDUINO Y MAX6675 "));

Serial.println(F(" http://www.geekfactory.mx "));

Serial.println(F("----------------------------------------------------"));

// USAR PINES DE ARDUINO PARA ALIMENTAR EL MODULO MAX6675

pinMode(CONFIG_TCVCC_PIN, OUTPUT); digitalWrite(CONFIG_TCVCC_PIN, HIGH);

pinMode(CONFIG_TCGND_PIN, OUTPUT); digitalWrite(CONFIG_TCGND_PIN, LOW);

// INDICAMOS QUE TENEMOS CONECTADA UNA PANTALLA DE 16X2

// IMPRIMIR MENSAJE INICIAL EN PANTALLA

lcd.begin(16, 2);

lcd.clear();

lcd.print(F("TERMOPAR ARDUINO"));

lcd.setCursor( 0, 1 );

lcd.print(F(" CON MAX6675 "));

// ESPERAR UN SEGUNDO

delay(1000);

void loop() {

// LEER EL TERMOPAR Y ALMACENAR EL VALOR EN UNA VARIABLE

double t = thermocouple.readCelsius();
// PRIMERO LIMPIAMOS LA PANTALLA Y LUEGO IMPRIMIMOS LA TEMPERATURA

lcd.clear();

lcd.print(F("->TEMPERATURA<-"));

lcd.setCursor( 3, 1 );

lcd.print(t);

// IMPRIMIR LA TEMPERATURA EN LA TERMINAL SERIAL

Serial.print("C = ");

Serial.println(t);

// ESPERAR UN SEGUNDO ENTRE LAS LECTURAS

delay(1000);

Termómetro arduino con termopar y alarma de


temperatura
Finalmente en este ultimo programa agregamos la funcionalidad de alarma por
sobre temperatura o baja temperatura.

Conclusión y resumen
 Aprendimos a conectar un termopar con Arduino utilizando un módulo con el
MAX6675.
 En este tutorial aprendimos las aplicaciones de los termopares y sus ventajas
sobre otras tecnologías de sensado de temperatura.
 Instalamos la librería adecuada para usar el convertidor de termopar digital
MAX6675.
 Aprendimos a enviar la lectura del tremolar al monitor serial.
 Mostramos la lectura del termopar en una pantalla LCD de 16×2.
 Aprendimos a realizar una alarma por alta o baja temperatura usando un
termopar.
 Con lo estudiado en esta página podemos realizar otros proyectos más
ambiciosos como controles de temperatura y registradores de datos.
Módulo Solar para Arduino
Contenido
 Introducción
 Paso 1: Módulo solar para Arduino.
 Paso 2: Conectando el módulo Solar para Arduino
 Paso 3: Video-Tutorial
 Bibliotecas de Fritzing
 Enlaces y Documentación
IntroducciónIr al índice
Ingredientes:
 1 x módulo solar para arduino
 1 x batería de ion litio
 2 x cables (rojo y negro)
 1 x panel solar
 1 x fuente de alimentación USB
 1 x cable mini USB
Tiempo de preparación: 15 minutos.

Paso 1: El módulo Solar para ArduinoIr al índice


La placa se basa en un cargador para baterías de ión de litio y un convertidor de CC a CC
para suministrar 5V. El mote SquidBee necesita, e incluye tres entradas diferentes: un par
de conectores pin (VCC y GND) para más de 6V celdas, otro par de conectores pin para
hasta 6V celdas y un mini conector USB. Las dos últimas conexiones van directamente al
cargador de batería, pero la primera pasa por un regulador de voltaje cuya salida está
limitada para evitar que el cargador sufra daños causados por un voltaje demasiado alto. El
conector mini USB se ha agregado para permitir que la batería se cargue cuando no es
posible conectar una célula solar o conectarla a la alimentación principal.
Hemos seleccionado un cargador MAX1555 de Maxim para energizar la
batería. Este módulo puede manejar dos entradas diferentes, una que muestra voltajes de
3.7V. a 7.0V. que se utilizará para cargar la batería desde una fuente de CC y otra que
muestre voltajes de 3.7V. a 6.0V., utilizado para realizar la carga desde el USB. La salida
MAX1555 a la batería proporciona una corriente de carga típica de 280mA y un voltaje de
aproximadamente 4.2V, aunque puede cambiar dependiendo de la batería y su estado.
Un MAX1674 convierte los 3.7V. Que tenemos aproximadamente en la salida de la batería
a los 5V. El motito de SquidBee necesita trabajar. Este dispositivo tiene una corriente de
salida de hasta 300 mA, que debería ser más que suficiente para suministrar el motor
independientemente de los sensores que haya agregado.
También hemos colocado algunos condensadores de 100nF y 47uF en las entradas y en la
salida del SquidBee para evitar que el ruido ingrese al circuito a través de la fuente de
alimentación.
Paso 2: Conectando el módulo Solar para ArduinoIr al
índice
Para conectar el módulo Solar a Arduino, usaremos dos cables, uno de ellos para 5 V y el
otro para tierra (GND). En el módulo solar para Arduino, conectaremos estos cables al
conector de salida, en Arduino usaremos pines de 5V y GND.
Paso 3: Video-TutorialIr al índice
Aquí hay un video explicativo, que muestra todo el proceso desarrollado en este tutorial:
Fritzing LibrariesIr al índice
El módulo solar para Arduino es una pequeña placa que puede alimentar su placa Arduino
para obtener una placa para exteriores totalmente autónoma. Incluye un panel solar de 3W
que proporciona 5V a su placa Arduino y una batería de ion-litio de 1100 mAh.
El módulo regulador de 5V para Arduino proporciona 5V a su placa Arduino con una batería
de ion-litio de 1100 mAh.
Puede descargar nuestras bibliotecas Fritzing desde esta área .
Enlaces y DocumentaciónIr al índice
 Esquemático
 Módulo Solar para Arduino Video-Tutorial

You might also like