Sensor de temperatura de Arduino DIY (3 / 7 paso)

Paso 3: El código

Ahora es el momento de escribir el código. He tratado de mantenerlo corto y simple como sea posible. Porque uso GLCD, decidí basar la implantación en las bibliotecas u8glib . Si desea utilizar LCD de caracteres, deben utilizar las bibliotecas de Arduino LCD estándar, y el código debe ajustarse los según.

Aquí está el código:

/*

Termómetro basado en máximas DS600u + chip

*/

#include "U8glib.h"
#include < math.h >

U8GLIB_ST7920_128X64_4X u8g (8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16);   Com de 8 bits: D0... D7: 8,9,10,11,4,5,6,7 at = 18, di = 17, rw = 16

void u8g_prepare(void) {}
u8g.SetFont(u8g_font_6x10);
u8g.setFontRefHeightExtendedText();
u8g.setDefaultForegroundColor();
u8g.setFontPosTop();
}

void setup(void) {}
voltear la pantalla, si es necesario
u8g.setRot180();
asignar valor de color por defecto
Si (u8g.getMode() == U8G_MODE_R3G3B2)
u8g.setColorIndex(255);     Blanco
else if (u8g.getMode() == U8G_MODE_GRAY2BIT)
u8g.setColorIndex(3);         intensidad máxima
else if (u8g.getMode() == U8G_MODE_BW)
u8g.setColorIndex(1);         píxel de
u8g.setContrast(0x30);
pinMode (13, salida);
digitalWrite (13, HIGH);
u8g_prepare();
}

void draw(void) {}
suministro de flotador = 4,91; Aquí debe ser entrado en la tensión de alimentación medida de la placa arduino
Lea el voltaje de salida del sensor
lectura de int = analogRead(0);
Float v_out = (lectura * fuente) /1.024;
Mostrar en la pantalla LCD la temperatura
Float temperatura = (v_out - 509) / 6.45;
temp de Char [5];
dtostrf(temperature,5,1,Temp);
u8g.drawStr(4,24,"Temperature:");
u8g.drawStr(76,24,Temp);
u8g.drawStr (108,24,"\260C");
}

void loop(void) {}

lazo de la foto
u8g.firstPage();
{}
Draw();
} y (u8g.nextPage());

reconstruir la imagen después de cierto tiempo
Delay(1000);
}

Hay algunos puntos difíciles en el código.
He puesto en negrita.

1) porque el ADC interno del Atmega utiliza como referencia la tensión de alimentación para medir potencial de tensión analógica, que no es medida de proporción a la tensión de alimentación, pero fijo por la viruta del sensor, si la tensión de alimentación varía, puede ocurrir un error. Cálculo aproximado dice que 50mV fuente de variación puede causar error de la temperatura de 1 grado. Es la solución para mejorar la precisión para medir el voltaje exacto de la placa de Arduino de la forma que debe usarse - si desea utilizar el termómetro de Arduino por el USB, tienes que medir la tensión de alimentación de la Junta para este caso; y respectivamente, si se va a utilizar el termómetro como dispositivo independiente suministrado por adaptador AC/DC - entonces, la tensión de alimentación del tablero + escudo se medirán en esta condición. En mi caso el dispositivo se suministra por el USB, y he medido 4.91V en los pines de Arduino "5V". Así que puse este valor en el bosquejo.
2) es bueno que en la pantalla LCD se puede ver el símbolo de grados «°». El problema aquí es que las pantallas diferentes tienen diferentes tablas de ASCII, y qué es exactamente el número octal correspondiente al símbolo es difícil de decir. Hay dos soluciones posibles:
A) para leer la hoja de datos del módulo LCD / driver si se dan las tablas de ASCII
B) escribir un boceto para mostrar la tabla ASCII todo escrita en la ROM del LCD, para ver donde aparece el símbolo y calcular/véase el número decimal correspondiente a él. Para convertir este valor al número octal y en el bosquejo.
He utilizado el segundo enfoque... y de la manera más fácil :-) - hay "Ejemplos" en la biblioteca u8glib. El programa "GraphicsTest" imprime ambas tablas ASCII almacenadas en el chip controlador ROM. Allí encontré que el símbolo necesario tiene el número equivalente octal 260.

Los chicos, que desean implementar este proyecto en el Arduino debido, quisiera consejos para insertar en el código también la siguiente línea:
analogReadResolution(12) de ;
en el proceso de configuración y luego en su lugar a dividir en 1.024 dividir en 4.096. Esto mejorará la resolución del ADC y de alguna manera también la precisión del termómetro.

Artículos Relacionados

Sensor de Color de Arduino DIY

Sensor de Color de Arduino DIY

Como hacer un Sensor de Color de Arduino DIYPaso 1: partes 4 Leds (verde, azul, rojo, amarillo)resistencia de 4 220 ohmios1 LDRresistencia de 10 1 kPasadores hembraPCBPaso 2: Cortar el PCB Su diseño de la PCB de la forma. Entonces cortó él. Usé 3,5 c
Cómo utilizar el Sensor de temperatura DS18B20 - Arduino Tutorial

Cómo utilizar el Sensor de temperatura DS18B20 - Arduino Tutorial

En este tutorial usted aprenderá cómo usar el sensor de temperatura DS18B20 con Arduino.La temperatura se imprimirá en el serial monitor de Codebender o el IDE de Arduino.Video de presentación:Antes de empezar vamos a ver más información de este sens
¿Sensor de temperatura de Arduino

¿Sensor de temperatura de Arduino

Ever quería leer la temperatura con el arduino? Heres una gran manera de cómo utilizando sólo 4 cables! Con el TC74!!!!La temperatura es exacta acerca de ±2 ° CPaso 1: Necesitarás... Las cosas que necesitas son:-Un Arduino (Im usando Duemilanove)-El
Cómo utilizar el sensor de temperatura TMP36 - Arduino Tutorial

Cómo utilizar el sensor de temperatura TMP36 - Arduino Tutorial

El TMP35/TMP36/TMP37 son de bajo voltaje, sensores de temperatura centígrada de precisión. Proporcionan una salida de voltaje que es linealmente proporcional a la Celsius (centígrados) temperatura. El TMP35 TMP36/TMP37 requiere ninguna calibración ex
Sensor de temperatura de Arduino de entretela (LM35). LA forma más fácil de

Sensor de temperatura de Arduino de entretela (LM35). LA forma más fácil de

Un sensor de temperatura simple usando un LM35 Sensor de temperatura de precisión y Arduino. El circuito le enviará información serial sobre la temperatura que se puede utilizar en su computadora.Paso 1: materialesSe necesita:Arduino Uno (usé la Uno
Sensor de temperatura/humedad + Arduino + adquisición de datos LabVIEW

Sensor de temperatura/humedad + Arduino + adquisición de datos LabVIEW

Este tutorial explicare paso a paso sobre cómo configurar su SHT15 sensor (temperatura y humedad) para adquisición de datos utilizando Arduino. El tutorial más explica cómo LabVIEW utilizará para recopilar los datos detectados para proporcionar la re
Código de Sensor de temperatura de Arduino

Código de Sensor de temperatura de Arduino

Todos los derechos reservados :) Kiduinoconst int sensorPin = A0; const float baselineTemp = 28.0;void setup() {Serial.begin(9600); para (int pinNumber = 2 pinNumber < 12; pinNumber ++) {pinMode (pinNumber, salida); digitalWrite (pinNumber, LOW);}}vo
Sensor de pulso de Arduino DIY

Sensor de pulso de Arduino DIY

Así que mencionado en un Instructable anterior que soy una ayudante de enseñanza (TA) para un curso introductorio de ingeniería por especialidad de la ingeniería biomédica en la Universidad de Vanderbilt. Mi tarea principal como un TA es re-escribir
Arduino Powered Sensor de temperatura con pantalla LCD salida primera vez autor entrada

Arduino Powered Sensor de temperatura con pantalla LCD salida primera vez autor entrada

Nunca había sido un chico un poco de concurso pero siguió adelante y entró en el primer concurso de autor de tiempo, si te gusta mi intructable o simplemente aprender algo nuevo y creo que he ganado tu voto por favor! =]Hola a todos! Por favor pelado
Prueba de humedad: Construir un horno de temperatura baja Arduino controlado

Prueba de humedad: Construir un horno de temperatura baja Arduino controlado

Un horno barato con un rango de temperatura programable.  Esto podría ser útil para hacer una zona de temperatura controlada para tempeh, yogur o secado húmedo electrónica, disparar, no sé de tu vida.Nuestro problema: Necesitamos saber el % de humeda
Cómo medir la temperatura con gran exactitud con un Arduino y un tablero de Sensor de temperatura de TSYS01.

Cómo medir la temperatura con gran exactitud con un Arduino y un tablero de Sensor de temperatura de TSYS01.

Mientras estudiaba en la Universidad fuimos desafiados como parte de un trabajo de curso en diseño de una caja con control de temperatura muy preciso. Si el proyecto fuera a tener éxito, múltiples cajas debían ser construido y utilizado en un proyect
Sensor de temperatura DS18B20 ESP8266 IDE de Arduino, nube EasyIoT

Sensor de temperatura DS18B20 ESP8266 IDE de Arduino, nube EasyIoT

En este tutorial mostramos cómo crear el logger de temperatura DS18B20 de ESP8266 WiFi conectado a la nube de EasyIoT. Todo el material cuesta menos de 5$ en ebay.Nube de EasyIoT trabaja también en el teléfono móvil o tablet. También está disponible
DH11 Temperatura y Sensor de humedad con Arduino

DH11 Temperatura y Sensor de humedad con Arduino

Este es un Tutorial sobre cómo usar el DH11 temperatura y Sensor de humedad con Arduino.Paso 1: Ver este Video (este es un Tutorial completo)Este video muestra el procedimiento completo de cómo usar este Sensor.Paso 2: Instalar la biblioteca DH11.1)
Arduino - dos 7 segmentos de LED + sensor de temperatura y humedad DHT11

Arduino - dos 7 segmentos de LED + sensor de temperatura y humedad DHT11

Quiero mostrar en este "Instructable" cómo leer el sensor de temperatura y humedad DHT11 y mostrar en dos 7 segmentos LED.Paso 1: Piezas necesarias1.-Arduino UNO2. - 2 - pantalla de 7 segmentos3. - 5 resistencia del ohmio de k4.-temperatura DHT1