Tabla de contenido:

Registrador de datos Arduino Pro-mini: 15 pasos
Registrador de datos Arduino Pro-mini: 15 pasos

Video: Registrador de datos Arduino Pro-mini: 15 pasos

Video: Registrador de datos Arduino Pro-mini: 15 pasos
Video: Datalogger Fácil con Arduino y Tarjeta SD | Sensores | Diagrama y Código 😎 #arduino #proyecto 2024, Mes de julio
Anonim
Registrador de datos Arduino Pro-mini
Registrador de datos Arduino Pro-mini

Instrucciones de construcción para el registrador de datos de código abierto pro-mini Arduino

Descargo de responsabilidad: el siguiente diseño y código se puede descargar y usar de forma gratuita, pero no tiene garantía alguna.

Primero debo agradecer y promover a las personas talentosas que inspiraron la idea de este registrador de datos y contribuyeron al código y los sensores utilizados. En primer lugar, la idea del registrador de datos provino del registrador de datos muy bien diseñado y bien explicado (lo siento, nuestro tutorial no es tan bueno) de Edward Mallon: https://thecavepearlproject.org/2017/06/19/ arduin …

En segundo lugar, los sensores de humedad del suelo de código abierto utilizados aquí, así como el código / biblioteca para ejecutarlos, fueron diseñados y construidos por Catnip Electronics. Estos son sensores de alta calidad y muy resistentes. A continuación se proporciona información sobre dónde comprarlos y obtener el código para ejecutarlos (gracias Ingo Fischer).

Paso 1: materiales, herramientas y equipo necesario

Materiales, herramientas y equipos necesarios
Materiales, herramientas y equipos necesarios

Placa Pro-mini Arduino. Para esta aplicación, utilizamos clones pro-mini de código abierto (al igual que todas nuestras partes) fabricados en China (5V, 16MHz, microprocesador ATmega 326) (Fig. 1a). Estas placas se pueden comprar en Aliexpress, Ebay y sitios web similares por menos de 2 dólares estadounidenses. Sin embargo, se podrían utilizar otras placas con la misma facilidad (tenga en cuenta los requisitos de voltaje de los sensores necesarios, así como los requisitos de memoria del programa).

Tarjeta SD y módulo de registro de reloj en tiempo real (RTC) de Deek-Robot (ID: 8122) (Fig 1b). Este módulo incluye un lector de tarjetas DS13072 RTC y micro-sd. Estas placas cuestan menos de $ 2US y son muy robustas.

Adaptador de terminal de tornillo Arduino nano (sí - “nano”), también lanzó Deek-Robot, que se puede comprar por menos de $ 2US en Aliexpress o similar (Fig. 1c). Como puede ver, nos encanta Aliexpress.

Alambre aislado de núcleo sólido de calibre 22 (Fig. 1d).

Caja registradora de datos (Fig. 1e). Usamos cajas de "grado de investigación", pero los artículos de plástico económicos funcionan bien en la mayoría de las situaciones.

Caja de pilas para 4 pilas AA NiMh (Fig. 1f). Estos se pueden comprar en Aliexpress por ca. $ 0.20 cada uno (sí, 20 centavos). No gaste su dinero en carcasas de baterías más caras.

Panel solar de 6V, ca 1W. Se puede comprar en Aliexpress por menos de 2 dólares estadounidenses.

Soldador, soldadura y fundente de tipo pasado.

Pistola de silicona.

Paso 2: Instrucciones de construcción

Instrucciones de construcción
Instrucciones de construcción

Tiempo requerido para la construcción: ca 30 a 60 min.

Prepare el adaptador de nano terminal para soldar.

Para el propósito de esta demostración, prepararemos el adaptador de terminal de nano tornillo para facilitar la conexión de tres sensores de humedad del suelo I2C. Sin embargo, con solo un poco de creatividad, los terminales de tornillo podrían prepararse de diferentes maneras para facilitar otros dispositivos. Si no sabe qué es I2C, consulte los siguientes sitios web:

howtomechatronics.com/tutorials/arduino/ho…

www.arduino.cc/en/Reference/Wire

La idea de usar adaptadores de nano tornillos se tomó del maravilloso diseño de registrador de datos de Edward Mallon:

thecavepearlproject.org/2017/06/19/arduino…

Corte las líneas en la parte posterior del terminal de tornillo entre los pines grandes y pequeños en las posiciones 3, 5, 9, 10 y 11 (contando desde la parte superior del terminal) (Fig. 2). Estos trazos corresponden a las etiquetas “RST”, “A7”, “A3”, “A2” y “A1” en el terminal de tornillo. Cortar los rastros es mucho más fácil si tiene una herramienta tipo 'Dremel', pero si no la tiene, un cuchillo pequeño funcionará fácilmente. ¡No te cortes! Tenga en cuenta que las etiquetas en el terminal de tornillo y en el pro-mini no son todas iguales (el nano y el pro-mini tienen algunos pines en diferentes ubicaciones). Este es uno de los inconvenientes de este diseño, pero es bastante fácil volver a etiquetar el tablero de terminales cuando haya terminado, si lo desea.

Raspe con cuidado (con una Dremel o un cuchillo pequeño) la capa delgada de epoxi directamente adyacente a los pines grandes 9, 10 y 11 (etiquetados como 'A3', 'A2', 'A1' en el nano terminal) (Fig.2). El recubrimiento de cobre expuesto debajo del epoxi está conectado a tierra a la placa Arduino pro-mini. Posteriormente soldaremos esta sección expuesta a los pines adyacentes, proporcionando así tres terminales de tornillo conectados a tierra.

Paso 3: Instrucciones de construcción

Instrucciones de construcción
Instrucciones de construcción

Corte ocho trozos de cable aislado de calibre 22 de 8 cm de largo y pele aproximadamente 5 mm de aislamiento de un extremo y 3 mm del otro extremo. Recomendamos usar alambre de núcleo sólido.

Tome cuatro de estos cables, doble un extremo 90 grados (el extremo con 5 mm o cable expuesto) y suelde * a través * (es decir, uniendo todos los pines con abundante soldadura y fundente) a los siguientes puntos:

Cable 1: pines grandes 3, 4 y 5 (etiquetados como 'RST', '5V', 'A7' en el nano terminal). Modificaremos estos tres terminales de tornillo en tres terminales VCC (Fig. 3).

Paso 4: Instrucciones de construcción

Instrucciones de construcción
Instrucciones de construcción

Cable 2: pines grandes 9, 10 y 11 (etiquetados como 'A3', 'A2', 'A1' en el nano terminal), así como el revestimiento de cobre expuesto que se expuso anteriormente. Utilice mucha soldadura. No se preocupe si se ve desordenado. Modificaremos estos tres terminales de tornillo en tres terminales de tierra (-) terminales (Fig. 4).

Paso 5: Instrucciones de construcción

Instrucciones de construcción
Instrucciones de construcción

Cable 3: pines grandes 13, 14 y 15 (etiquetados como 'REF', '3V3', 'D13' en el terminal nano). Modificaremos estos tres terminales de tornillo en tres terminales A5 SCL para comunicaciones I2C (Fig. 5).

Paso 6: Instrucciones de construcción

Instrucciones de construcción
Instrucciones de construcción

Cable 4: pines grandes 28, 29 y 30 (etiquetados 'D10', 'D11', 'D12' en el nano terminal). Modificaremos estos tres terminales de tornillo en tres terminales A4 SDA para comunicaciones I2C (Fig. 6).

Paso 7: Instrucciones de construcción

Instrucciones de construcción
Instrucciones de construcción

Suelde un cable a cada uno de los pines pequeños (repito, pequeños) 9, 10 y 11 (etiquetados como 'A3', 'A2', 'A1' en el nano terminal) (Fig. 7).

Paso 8: Instrucciones de construcción

Instrucciones de construcción
Instrucciones de construcción

Soldar

el cable restante al pin 22 grande (etiquetado como 'D4' en el terminal nano) (Fig. 8).

Paso 9: Instrucciones de construcción

Instrucciones de construcción
Instrucciones de construcción

Suelde el extremo libre de cada cable en sus orificios correspondientes en el protector del registrador de datos Deek-Robot (Fig.9):

pin grande 'RST + 5V + A7' al orificio del pin de 5V

pin grande 'A3 + A2 + A1' al orificio del pin GND

pasador pequeño 'A3' al orificio del pasador SCK

pasador pequeño 'A2' al orificio del pasador MISO

pasador pequeño 'A1' al orificio del pasador MOSI

pin grande 'REF + 3V3 + D13' al orificio del pin SCL

pin grande 'D10 + D11 + D12' al orificio del pin SDA

y el pasador grande 'D4' al orificio del pasador CS

Paso 10: Instrucciones de construcción

Instrucciones de construcción
Instrucciones de construcción

Tenga en cuenta que proporcionamos las etiquetas nano aquí solo para facilitar la conexión. Estas etiquetas no se corresponderán con los pines de la placa pro-mini una vez que se inserte en el terminal de tornillo.

Suelde dos cables de 6 cm de largo en los orificios para alfileres A4 y A5 de la parte inferior de la placa pro-mini (Fig. 10).

Paso 11: Instrucciones de construcción

Instrucciones de construcción
Instrucciones de construcción

Suelde las clavijas a la placa pro-mini e insértela en el terminal de tornillo completo. No olvide insertar los cables A5 y A4 en los terminales D12 (A4) y D13 (A5) de la placa nano. Recuerde siempre que los pines del Arduino y las etiquetas de los terminales de tornillo no se alinearán exactamente (las placas pro-mini y nano tienen diferentes arreglos de pines).

Inserte una batería CR 1220 y una tarjeta micro-sd en la placa del registrador. Usamos tarjetas SD con capacidades inferiores a 15 GB, ya que hemos tenido problemas con tarjetas de mayor capacidad. Usamos el formato de las tarjetas a FAT32.

Finalmente, cubra todas las uniones soldadas y asegure todos los cables al tablero de terminales con pegamento caliente.

La placa ya está lista para usarse. La placa completa ahora debería verse así: Fig.11.

Paso 12: Configuración del registrador de datos para uso en el campo

Configuración del registrador de datos para uso en el campo
Configuración del registrador de datos para uso en el campo

Para evitar que su registrador de datos se vuelque en la caja del registrador de datos, además de proporcionar un fácil acceso a los pines de comunicación, recomendamos hacer una plataforma estabilizadora. La plataforma también mantiene la electrónica al menos a unos centímetros del fondo de la caja, en caso de inundación. Usamos una lámina acrílica de 1,5 mm y la conectamos al registrador de datos con pernos, tuercas y arandelas de 4 mm (Fig. 12).

Paso 13:

Imagen
Imagen

Usamos sensores de humedad del suelo de tipo capacitancia I2C de código abierto. Los compramos en Catnip Electronics (sitio web a continuación). Se pueden comprar en Tindie y cuestan ca $ 9US para el modelo estándar y ca $ 22US para el modelo resistente. Hemos utilizado la versión resistente en experimentos de campo. Son muy robustos y ofrecen un rendimiento similar a las alternativas comerciales mucho más caras (no pondremos a nadie en Front Street, pero probablemente conozcas a los sospechosos habituales).

Sensor I2C de Catnip Electronics presentado en este tutorial:

compre aquí:

biblioteca arduino:

biblioteca arduino en Github:

Conecte el cable amarillo del sensor I2C a uno de los terminales de tornillo A5. Conecte el cable verde del sensor I2C a uno de los terminales A4. Los cables rojo y negro del sensor van a VCC y terminales de tierra, respectivamente.

Coloque cuatro baterías de NiMh cargadas en la caja de la batería. Conecte el cable rojo (+) al pin RAW en el registrador de datos (es decir, el pin RAW en la placa pro-mini) (pero vea la sección de "ahorro de energía" a continuación). Conecte el cable negro (-) a una de las clavijas de tierra del registrador de datos.

Para uso de campo a largo plazo, conecte un panel solar de 6V 1W al registrador. El panel solar se utilizará para hacer funcionar el registrador de datos y cargar la batería durante el día, y funciona incluso bajo cielos nublados (aunque la nieve es un problema).

Primero, suelde un diodo Schottky de ~ 2A en el terminal positivo del panel solar. Esto evitará que la corriente regrese al panel solar cuando no haya radiación solar. No olvide hacer esto o se le acabarán las pilas en poco tiempo.

Conecte el terminal (+) del panel solar (es decir, el diodo) al pin RAW en el registrador (es decir, el pin RAW en el pro-mini) y el terminal (-) del panel solar a uno de los terminales en el registrador.

Esta configuración permite que el regulador de voltaje incorporado en la placa pro-mini regule el voltaje proveniente tanto del panel solar como del paquete de baterías. Ahora … diré que esta no es una configuración ideal para cargar baterías de NiMh (difícil incluso en condiciones perfectas). Sin embargo, los paneles solares que utilizamos emiten aproximadamente 150 mA en condiciones de pleno sol, lo que corresponde a aproximadamente 0,06 C (C = la capacidad del paquete de baterías), lo que nos ha demostrado que es un método de carga simple, seguro y confiable. para nuestros madereros. Los hemos tenido corriendo de esta manera en el campo durante hasta un año en Colorado. Sin embargo, consulte el descargo de responsabilidad: nuestros registradores no tienen garantía alguna. Cada vez que usa baterías o paneles solares en el campo, corre el riesgo de iniciar un incendio. Ten cuidado. ¡Utilice este diseño bajo su propio riesgo!

Asegure el registrador de datos y el paquete de baterías dentro de una caja resistente a la intemperie (Fig. 13).

Paso 14: Conservación de energía

A menudo desactivamos los LED de alimentación de las placas pro-mini y del registrador de datos. Los rastros de estos LED se pueden cortar con cuidado con una hoja de afeitar (ver enlace a continuación). Cada LED consume aproximadamente 2,5 mA de corriente a 5 V (enlace a continuación). Sin embargo, para muchas aplicaciones, esta cantidad de pérdida de energía será insignificante y el investigador puede simplemente dejar los LED de energía como están.

www.instructables.com/id/Arduino-low-Proje…

También ejecutamos la biblioteca 'LowPower.h' (por 'rocketscream'; enlace que se muestra a continuación), que es muy fácil de usar y reduce significativamente el consumo de energía entre los intervalos de registro.

github.com/rocketscream/Low-Power

Después de quitar los LED de alimentación del pro-mini y la placa de registro de datos y ejecutar la biblioteca LowPower.h (consulte el 'código' a continuación), el registrador consumirá aprox. 1 mA de corriente a 5 V mientras duerme. Al ejecutar tres sensores I2C simultáneamente, el registrador en modo de suspensión (entre iteraciones de muestreo) consume aproximadamente 4.5mA a 5V y aproximadamente 80mA al tomar muestras. Sin embargo, debido a que el muestreo ocurre muy rápido y con poca frecuencia, el consumo de corriente de 80 mA no contribuye significativamente al agotamiento de la batería.

Se puede ahorrar más energía cuando no se usan paneles solares conectando el terminal (+) de la batería directamente al pin VCC del registrador. Sin embargo, la conexión directa a VCC, en lugar del pin RAW, evita el regulador de voltaje a bordo, y la corriente a los sensores no será tan constante como lo sería si se hubiera enrutado a través del regulador. Por ejemplo, el voltaje disminuirá a medida que se agote la batería en el transcurso de días y semanas y, en muchos casos, esto dará como resultado una variación significativa en las lecturas del sensor (según los sensores que esté utilizando). No conecte un panel solar directamente a VCC.

Paso 15: Código

Incluimos dos bocetos para ejecutar el registrador de datos con tres sensores de humedad del suelo I2C. El primer boceto 'logger_sketch' tomará una muestra de cada sensor y registrará los datos de capacitancia y temperatura en la tarjeta sd cada 30 minutos (pero el usuario puede cambiarlo fácilmente). El segundo boceto 'ChangeSoilMoistureSensorI2CAddress' permitirá al usuario asignar diferentes direcciones I2C a cada uno de los sensores para que puedan ser utilizados simultáneamente por el registrador de datos. Las direcciones en 'logger_sketch' se pueden cambiar en las líneas 25, 26 y 27. Las bibliotecas necesarias para ejecutar el sensor se pueden encontrar en Github.

Recomendado: