Tabla de contenido:
- Paso 1: haga que el SIM800l funcione
- Paso 2: haga funcionar el RTC DS1307 con sensor DS18B20
- Paso 3: hacer que el termistor NTC MF52AT funcione
- Paso 4: Consiga que todos trabajen juntos
- Paso 5: funcionó
Video: Envía un SMS con la temperatura a tiempo: 5 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:44
La idea es conseguir un sms de temperatura de la casa de mi padre.
Nada sofisticado, solo unir piezas rápidamente.
Las partes son:
- Placa controladora Geekcreit® ATmega328P Nano V3 compatible con Arduino
- Placa de expansión DIY NANO IO Shield V1. O para Arduino
- Módulo de reloj en tiempo real RTC IIC / I2C basado en DS1307 y DS18b20
- SIM800L GSM / GPRS de cuatro bandas
- Módulo de fuente de alimentación reductor ajustable LM2596 Mini DC-DC Converter
- Temperatura del termistor NTC MF52AT
En primer lugar, leer y buscar mucho.
Antes de finalmente usar el Geekcreit® Nano, pruebo todas las partes con un Arduino Uno.
Paso 1: haga que el SIM800l funcione
Un punto principal es la potencia del Sim800L.
Utilizo un convertidor Mini DC-DC LM2596, ajustado a 3,7 voltios y una fuente de alimentación independiente.
Para probar la conexión con los comandos AT +, este lado es muy útil:
Inicio rápido SIM800 (SIM800L) con Arduino
Con Deshabilitar el código pin usando el módem gsm en los comandos, obtuve el código pin de la SIM.
La siguiente consideración es qué biblioteca. Internet ofrece una solución diferente.
Mi solución es la biblioteca de Mattias Aabmets: AspenSIM800
Su ejemplo: Send_SMS.ino usé I como programa básico y, una por una, conecté todas las demás partes.
El pin Tx y el pin Rx están codificados para:
RX_PIN 10 de Arduino. Debe estar conectado al pin TX del módulo SIM800. TX_PIN 11 de Arduino. Debe estar conectado al pin RX del módulo SIM800
Siempre es una buena idea leer los archivos *.ccp y *.h en las bibliotecas.
Contienen muchos consejos y conocimientos interesantes.
Paso 2: haga funcionar el RTC DS1307 con sensor DS18B20
Usé este lado: simtronyx, el blog para DS1307 y DS18B20.
El reloj tiene una conexión de bus I2C y eso es para Arduino Uno: A4 (SDA) - A5 (SCL)
El DS18B20 lo conecté al D3.
Leí que en un SMS no puedes enviar Floats solo String, así que tuve que traducir floats a string.
Eso hago con este fragmento de código que encontré:
norte
MyString1 = String (currentTemp, 2); // Convertir float en String
MyString1 = (MyString1 + "C - RoomTemperatur:)");
// convertir cadena a char comienza aquí
// Longitud (con un carácter adicional para el terminador nulo)
int str_len1 = MyString1.length () + 1; // Preparar la matriz de caracteres (el búfer)
char char_array1 [str_len1]; // Copiarlo
MyString1.toCharArray (char_array1, str_len1); // convertir cadena a char termina con ella
Seré honesto, no sé cómo funciona, pero funciona.
Paso 3: hacer que el termistor NTC MF52AT funcione
Trabajé antes con un termistor, así que fue la parte fácil.
Pero también aquí puedes encontrar una solución diferente.
En el código final puedes encontrar el mío.
Ella también puede encontrar la traducción Floats to String.
Soldado un poco de cable y la resistencia de 10 k ohmios al termistor.
Paso 4: Consiga que todos trabajen juntos
Así que escribí todas las partes del programa juntas.
Ahora tenía que averiguar cómo enviar un SMS todos los días, a la misma hora.
Leí sobre diferentes ideas, algunas con un TimerAlarm y otras con un enfoque.
Pero encontré una solución simple en algún lugar del foro arduino:
if (ahora.hora () == 8 && ahora.minuto () == 00 && ahora.segundo () == 59)
{
SIM.smsSend (addr, char_array); // termistor
retraso (500); SIM.smsSend (addr, char_array1); // DS18B20}
Pero ¿por qué ahora.segundo = 59 porque envía un SMS de minuto completo? Lo hace para mí, pero pruébelo usted mismo.
Después de algunas pruebas, cargué el programa en Geekcreit® Nano.
Puede que este no sea el mejor programa para escribir:) pero hace lo que se desea.
Debido a que el Geekcreit® ATmega328P Nano tiene algunos problemas con el IDE de Arduino, subo por terminal (Linux Mint) y lanzo el USBtinyisp con esto: avrdude -c usbtiny -p atmega328p -U flash: w: SomeHexFile.hex
Paso 5: funcionó
Sí funcionó y se coloca en la casa.
Todos los días a las 6:00 am recibo un SMS con la temperatura.
Recomendado:
Un medidor de temperatura, conductividad y nivel de agua de pozo en tiempo real: 6 pasos (con imágenes)
Un medidor de temperatura, conductividad y nivel de agua de pozo en tiempo real: estas instrucciones describen cómo construir un medidor de agua de bajo costo en tiempo real para monitorear la temperatura, la conductividad eléctrica (CE) y los niveles de agua en pozos excavados. El medidor está diseñado para colgar dentro de un pozo excavado, medir la temperatura del agua, CE y
Nodemcu envía datos de temperatura y humedad a Thingspeak: 7 pasos
Nodemcu está enviando datos de temperatura y humedad a Thingspeak: aquí, en este tutorial, hemos conectado nodemcu con el sensor dht11 y enviamos datos de temperatura y humedad al servidor de Thingspeak. Aquí también hemos trazado el gráfico de temperatura y humedad en el servidor de Thingspeak
Arduino envía datos de temperatura y humedad al servidor MySQL (PHPMYADMIN): 5 pasos
Arduino está enviando datos de temperatura y humedad a MySQL Server (PHPMYADMIN): En este proyecto, he interconectado DHT11 con arduino y luego envío datos de dht11, que son humedad y temperatura, a la base de datos phpmyadmin. Aquí estamos usando un script PHP para enviar datos a la base de datos phpmyadmin
Convierta una cámara de video de la década de 1980 en un generador de imágenes polarimétrico en tiempo real: 14 pasos (con imágenes)
Convierta una cámara de video de la década de 1980 en un generador de imágenes polarimétrico en tiempo real: el procesamiento de imágenes polarimétricas ofrece un camino para desarrollar aplicaciones revolucionarias en una amplia gama de campos - abarcando desde el monitoreo ambiental y el diagnóstico médico hasta las aplicaciones de seguridad y antiterrorismo. Sin embargo, el muy
Cámara para imágenes de lapso de tiempo más fácil: 22 pasos (con imágenes)
Cámara para imágenes de lapso de tiempo fácil: estaba revisando uno de los otros Instructables sobre cómo hacer películas de lapso de tiempo. Cubrió bastante bien la parte de la película. Me habló del software gratuito que se podía descargar para hacer películas. Me dije a mí mismo, creo que veré si puedo