hola estoy creando un termometro con registro de datos la parte de arduino creo que es la facil
hasta aqui todo bien pero necesito poder guardar estos datos en un excel para poder cambiar de sitio el sensor de sitio cada 24h he pensado en juntarlo con una raspberry pi3 para que esta reciba los datos y valla almacenandolos de forma ordenada pero por lo que he leido esto seria muy dificil ya que necesitaria programar en java u otro lenguaje mas y hay herramientas que lo hacen pero con un costo y mi presupuesto no esque sea alto para este proyecto. tambien he leido de escribir en la efrom pero no se como se realizaria no termino de comprenderlo os pongo en una tabla cual era mi idea inicial de materiales
arduino mega
raspberry pi 3 (opcional)
pantalla lcd 2x16
lm36
resistencias
cables
protoboard
aqui va mi codigo
//librerias y caracteristicas
#include<LiquidCrystal.h>
LiquidCrystal lcd(12,11,5,4,3,2);
//constantes y variables
const int pin_sensor=A0;
float valor_sensor;
float tension;
float celsius;
float fahrenheit;
float kelvin;
void setup() {
Serial.begin(9600); //iniciacion del puerto serie 0 a 9600 bautios
lcd.begin(16,2); //iniciacion del lcd 16 columnas y 2 filas
}
void loop() {
valor_sensor=analogRead(pin_sensor); //lectura del sensor
tension=(valor_sensor/1023)*5.0; //Tension en el pin de lectura
celsius=(tension-0.5)*100; //Obtencion de los grados celsius
fahrenheit=(9/5*celsius+32); //Obtencion de los grados farenheit
kelvin=(celsius+273.15); //Obtencion de los grados kelvin
//provisional falta de saber como escribir para su lectura
Serial.print(valor_sensor); //impresion en puerto serie 0 el valor del sensor
Serial.print(tension); //impresion en puerto serie 0 la tension del pin de lectura
Serial.print(celsius); //impresion en puerto serie 0 los grados centigrados
Serial.print(fahrenheit); //impresion en puerto serie 0 los grados farenheit
Serial.print(kelvin); //impresion en puerto serie 0 los grados kelvin
//final del provisional
lcd.setCursor(0,2);
lcd.print("Temperatura");
lcd.setCursor(1,1);
lcd.print(celsius);
lcd.setCursor(1,3);
lcd.print("ºC");
lcd.setCursor(1,6);
lcd.print(fahrenheit);
lcd.setCursor(1,8);
lcd.print("ºF");
lcd.setCursor(1,11);
lcd.print(kelvin);
lcd.setCursor(1,14);
lcd.print("ºK");
delay(60000); //extracion de datos 1por minuto
}
El Sketch usa 5426 bytes (2%) del espacio de almacenamiento de programa. El máximo es 253952 bytes.
Las variables Globales usan 270 bytes (3%) de la memoria dinámica, dejando 7922 bytes para las variables locales. El máximo es 8192 bytes.
termometro_valores.ino (1.5 KB)