Tabla de contenido:
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-23 14:39
Hola chicos
Hoy les presento el proyecto Arduino que funciona con un escudo RTC que puede almacenar datos. La tarea principal de este proyecto es trabajar con varios archivos que se almacenan en la tarjeta sc. Este proyecto contiene código que funciona con tres archivos que se almacenan directamente en la tarjeta SD con arduino y escudo RTC. Debido a que este proyecto funciona con el escudo DataLogger, esos datos también se almacenarán exactamente al mismo tiempo que en su PC.
Este proyecto es una versión mejorada de mi último proyecto. Ese proyecto se puede encontrar en el sitio de instructables con el nombre Arduino Data Logger Shield Small Project. Si tiene algunos problemas para comprender este proyecto, le sugiero que primero vea uno más fácil.
La principal diferencia entre esos dos proyectos es que este proyecto utiliza 3 archivos de texto, también esta vez leemos datos de dos de ellos. Debido a que podemos leer datos, podemos obtener un valor medio de humedad y temperatura, que se almacenan en la tarjeta SD. Esto también se mostrará en la pantalla LCD conectada a Arduino.
Una vez más, si eres nuevo en Arduino y este es tu primer proyecto que usa DataLogger, te sugiero que consultes este enlace https://www.instructables.com/id/Arduino-Data-Logg… y cuando tengas todo en eso, ven aquí y diviértete un poco más. Empecemos.
Paso 1: Partes
Como cada vez que escribo proyectos como este, comenzaré con todas las partes que usé con este proyecto. También sugeriré algunos de los sensores que se pueden usar y que pueden hacer que este proyecto sea un poco diferente.
Partes:
- Arduino uno rev3
- Escudo del registrador de datos Arduino
- Tarjeta de memoria SD
- Pantalla LCD 1602 verde con I2C (puede usar cualquier otra pantalla)
- DHT22 (DHT11 también funciona bien, pero su precisión no es la misma que la del dht22)
- Pocos cables de puente
- Tablero de circuitos
- Batería 9v
Puedes cambiar algunas partes. El lado bueno de este proyecto es que se puede utilizar para almacenar datos de cualquier otro sensor. Intentaría trabajar con un sensor de humo o un sensor de infrarrojos. Funciona con cualquier otro sensor. También puede cambiar su Arduino, pero tenga en cuenta que Arduino es el mejor para adaptarse al registrador de datos.
Paso 2: Conexión de todas las piezas juntas
Éste es fácil de conectar. Incluso el esquema es el mismo que el proyecto más sencillo. Pero yo diría que debes tener cuidado con qué pin vas a usar. Cada vez revise la hoja de datos del registrador de datos para ver qué pines son mejores para usar, porque como recuerdo, algunos pines ya están definidos y cuando intenté usar mi sensor en uno de los pines definidos, no funcionó.
En la parte superior de este paso puede ver el esquema hecho con fritzing. Lo fácil es que necesita conectar su registrador de datos en la parte superior de su arduino. Conecte su tarjeta sd al registrador de datos y lo último que debe hacer es conectar el sensor dht y el lcd. Usamos 5V de arduino para + parte en el tablero, GND para - parte, y siguiendo esas líneas, también conecta la línea + del sensor y lcd a la línea + del tablero. Lo mismo ocurre con las partes, solo van a la línea que sigue. El sensor Dht está conectado al pin 7 esta vez. La pantalla LCD está conectada a A4 y A5. Fácil, ¿no?
LCD:
- VCC a 5V (+ parte en protoboard)
- GND a GND (parte en la placa de pruebas)
- SDA al pin analógico A4
- SCL al pin analógico A5
DHT22:
Usé dht con placa en la que hay tres pines para usar:
- + a 5V
- - a GND
- a la clavija digital 7
Paso 3: codificación
Este código de tiempo es más complejo. Una buena parte está comentada para que puedas entenderla con facilidad.
Explicaré este código en pocas partes.
1. Lo primero que debe tener en cuenta es que este código necesitará pocas bibliotecas instaladas en su PC. Esos son: Time (TimeLib), Wire, LiquidCrystal, DHT, OneWire, SPI, SD, RTClib. Probablemente pueda usar algunas otras bibliotecas, pero estas bibliotecas funcionaron para mí. Después de eso, estamos definiendo todo lo que se necesita para este proyecto. El sensor DHT es fácil de definir, solo necesita decir el pin al que está conectado el sensor y el tipo de sensor. Después de eso, debe definir algunos pines que se utilizarán para la tarjeta SD y el pin RTC. Y después de eso, puede ver las variables utilizadas para este proyecto.
3. El proyecto utiliza pocos métodos y todos ellos son para trabajar con el sensor DHT. Si está trabajando en un proyecto con este tipo de sensor, puede usarlo. Esos métodos son getTemperature (), getMidTemperature (), getHumidity (), getMidHumidity (), readSensorData (), printLcdTemperature (), printHumidity (), printLcdMidTemperature (), printMidHumidity ().
4. En la configuración, hay pocas cosas que se deben realizar. Primero que nada necesitas definir el tiempo. Debido a que estamos usando RTC aquí, queremos tener el tiempo adecuado cuando nuestro Arduino guarde los datos del sensor. Esa parte se comentará en código. Si descomenta //RTC.adjust(DateTime(_DATE_, _TIME_)); línea puede establecer el tiempo en su proyecto. Después de establecer el tiempo adecuado, puede volver a comentar esa parte y puede usar su arduino sin computadora. Esto es genial porque puede usar su sensor de temperatura en otra habitación y realizar un seguimiento de la temperatura sin necesidad de su computadora. La segunda parte que debe hacer es usar su tarjeta SD en la que se almacenarán los datos. Shield intentará ver si hay tarjeta e inicializarla. Si no lo hay, el mensaje de error se mostrará en la pantalla Serie en Arduino IDE.
La configuración es el primer paso en el que trabajamos con la escritura de archivos en la tarjeta de memoria. Lo primero que se escribe en la tarjeta está en el archivo datalog.txt. Esta vez escribimos solo el tiempo de registro de nuestro dispositivo, y también creamos una pequeña fila de nombres (variables que se usan para ahorrar, y también tiempo)
La última parte de la configuración es inicializar la pantalla LCD y el sensor dht.
5. La parte de bucle es la parte principal del proyecto. Trabajar con el sensor esta vez es muy fácil porque usa un solo método que lee los valores que obtiene el sensor. La parte LCD también es muy fácil. La siguiente parte es una que debemos explicar aquí. Este proyecto hace algo cada minuto. Un minuto almacena datos en datalog.txt. Estos datos pueden ser leídos por alguien que ni siquiera sepa programar arduinos. Por otro lado. Un minuto ahorra temperatura en datalogB.txt y un minuto ahorra humedad en datalogC.txt. Necesitamos datalogB.txt y dataLogC.txt para poder leer desde nuestra tarjeta de memoria. Entonces, si continuamos leyendo nuestro código, puede ver también que este código lee valores medios de temperatura y humedad y los almacena en una fila. Quería hacer un dispositivo que solo tomara los últimos diez dígitos en el archivo. Por lo tanto, este proyecto se ejecuta siempre a través de los valores de la tarjeta y guarda los últimos diez dígitos, estos dígitos almacenados en filas se utilizan para obtener el valor promedio de temperatura y el valor promedio de humedad. Que también se muestran en nuestra pantalla LCD después de un tiempo
Paso 4: usar Arduino y la tarjeta SD después
Aquí puede ver lo que se muestra en la pantalla LCD y cómo funciona el proyecto. También pongo aquí imágenes de los registros de datos que guardé. Datalog.txt es el que se puede utilizar para ver cómo el dispositivo almacena cada valor. DatalogB y datalogC están ahí para que pueda ver cómo se ven. Están escritos así para que pueda usar el método de análisis y leer datos sin problemas.
El objetivo de este proyecto es la manipulación de los archivos que están en la tarjeta SD. A veces necesitamos dispositivos que puedan almacenar memoria y la temperatura de lectura también es una vez así. Lo bueno es que el escudo utilizado en este dispositivo también tiene un módulo RTC, que es lo mejor para el tiempo. Cuando podemos leer en tiempo real y almacenar datos con nuestro dispositivo, eso significa que puede ser portátil.
Gracias a todos por leer este proyecto. Espero que te ayude. Gracias.
Saludos cordiales Sebastian
Recomendado:
UK Ring Video Doorbell Pro trabajando con timbre mecánico: 6 pasos (con imágenes)
UK Ring Video Doorbell Pro Trabajando con timbre mecánico: ************************************* *************** Tenga en cuenta que este método solo funciona con alimentación de CA en este momento. Actualizaré si / cuando encuentre una solución para timbres que utilicen alimentación de CC. Mientras tanto, si tiene una fuente de alimentación de CC. suministro, necesitará t
Cómo leer varios valores analógicos usando un pin analógico: 6 pasos (con imágenes)
Cómo leer múltiples valores analógicos usando un pin analógico: En este tutorial, le mostraré cómo leer múltiples valores analógicos usando solo un pin de entrada analógica
Módulo de tarjeta SD con Arduino: cómo leer / escribir datos: 14 pasos
Módulo de tarjeta SD con Arduino: cómo leer / escribir datos: descripción general El almacenamiento de datos es una de las partes más importantes de cada proyecto. Hay varias formas de almacenar datos según el tipo y tamaño de datos. Las tarjetas SD y micro SD son uno de los más prácticos entre los dispositivos de almacenamiento, que se utilizan en
Leer y escribir desde un puerto serie con Raspberry Pi usando Wemos: 5 pasos
Leer y escribir desde el puerto serie con Raspberry Pi usando Wemos: comunicarse con una Raspberry Pi usando un Wemos D1 mini R2
¡Archivos por lotes que abren varios programas !: 5 pasos
¡Archivos por lotes que abren varios programas !: Muy bien, se explica por sí mismo. Esto puede ser especialmente útil si estás en el trabajo y atraviesas un proceso en el que tienes que abrir, por ejemplo; Microsoft Word, Microsoft PowerPoint, Microsoft Outlook, Internet Explorer, etc. Entonces, vamos a