Mini termómetro e higrómetro con E-PAPER en nRF52, o lo que los fabricantes aún no han lanzado

¡Saludos a todos los lectores de Habr! Me gustaría compartir con ustedes mi nuevo proyecto de código abierto. Por el título del artículo, queda claro que estamos hablando de un sensor de temperatura y humedad con display en tinta electrónica. Durante mucho tiempo ya intenté hacer un proyecto de un sensor de temperatura con tales pantallas en forma de módulo arduino. Desde entonces, el tema de las pantallas de tinta electrónica me ha interesado.



El objetivo de este proyecto era desarrollar un sensor en miniatura comparable en tamaño a los sensores de temperatura inalámbricos convencionales, pero al mismo tiempo obteniendo salida de datos en el propio dispositivo. Y en todas estas condiciones, el dispositivo funcionaría con una batería pequeña durante mucho tiempo. Lo que resultó de esto, por favor evalúelo y no escatime en comentarios.







El sensor funciona con chips nRF52, para este proyecto se eligió un módulo de MINEW. El módulo es pequeño, tiene 18 pines, 13 de los cuales son gpio, dos opciones de antena, impresa y cerámica, así como varias opciones para chips, nRF52810 y nRF52832, se instalan en el módulo, y luego de una breve conversación con la gerencia de la empresa, colocan chips nRF52811 en estos módulos sin preguntas. ... Entonces, por cierto, obtuve mis primeros 811 y, además, a un precio una vez y media más bajo del que podía comprar solo chips de proveedores en Rusia, pero esa es otra historia. El módulo tiene una versión DC-DC y un reloj de cuarzo. Dimensiones del módulo 12 mm x 15 mm. Hay una pantalla de metal.





De la línea de pantallas de tinta electrónica, la elección recayó naturalmente en un modelo bastante nuevo con un tamaño de pantalla de 1,02 pulgadas. El costo de una pulgada de tinta electrónica fue de 500 rublos, lo que me pareció aceptable. Las pequeñas dificultades con el desarrollo de una placa para esta pantalla fueron causadas por su conector, un FPC de 30 pines con un paso de 0,5 mm. El ancho del conector FPC es mucho mayor que el ancho de la pantalla en sí, lo que provocó un inconveniente de diseño. Pero fue más fácil con el flejado de la pantalla, es más simple que en otros modelos ( hoja de datos GDEW0102T4 ).





De los diversos sensores digitales de temperatura y humedad, decidí quedarme con el sensor sht20, tenía suficientes, bastante simple, buen precio, tamaño conveniente. Además, una de las ventajas se puede llamar el hecho de que en lugar de sht20, si se desea, es fácil instalar sht21, si7020, si7021, htu20d, htu21d y hdc1080, pero esta última opción no es muy buena;).



Se diseñaron 2 placas para el sensor, una para la pantalla y su flejado, la segunda para el módulo de radio, sensor de temperatura y humedad y una batería. Los parámetros clave para los tamaños de las placas fueron los tamaños de pantalla y batería. En el tablero con la pantalla, había agujeros para tornillos (1.4 x 3) para fijar el tablero a la caja, en el segundo tablero, se hicieron cortes para facilitar la instalación de los tornillos. Dado que este es un dispositivo de bricolaje, podría permitirme poner una batería CR2450 "sabrosa". Bueno, si un día me parece que el dispositivo es grueso, siempre puedo soldar el soporte para una batería CR2430. Como resultado, obtuvimos dos tablas de 36 mm por 26 mm.





El caso fue diseñado en SolidWorks, los modelos de los tableros fueron exportados desde DipTrace en formato DXF, los cuales ya fueron convertidos a modelos 3D en SolidWorks. La caja consta de dos partes y un botón. Las mitades de la caja se sujetan entre sí de la misma manera con tornillos (1,4 x 4) en un lado y un "gancho" saliente en el otro lado. Hay dos orificios para la circulación de aire para el sensor de temperatura y humedad.





En este proyecto, el cuerpo se imprimió en una impresora FDM, por supuesto, la calidad de impresión es menor que en una impresora SLA, pero en términos de resistencia, los productos hechos de resinas líquidas son muy inferiores a los productos hechos de filamentos, y debido a las características del cuerpo, la resistencia era importante. Así que estaba preparado mentalmente para pulir y pulir. En principio, resultó bastante bien.





Algo como esto sucedió en el desarrollo del hardware, traté de describir todas las etapas y algunos de los matices, si le parecía que requería mucho tiempo, entonces no lo es, el software en realidad requería mucho trabajo. Como antes, hago mis proyectos bajo MySensors, aunque confieso que ya no tengo la misma ilusión que antes. En algunos momentos comencé a contenerme, faltan algunas cosas, otras son simplemente imposibles. Por el momento, veo Open Thread como una alternativa para mí, al menos me parece bastante atractivo.



Diagrama de dispositivo








Como resultado, logramos implementar todos nuestros requisitos de funcionalidad. El dispositivo puede funcionar con el controlador UD, así como el dispositivo puede funcionar directamente con cualquier dispositivo en la red MySensor. La vinculación de dispositivos para intercambio directo puede ocurrir tanto a través de la configuración de dispositivos a través del controlador UD, usando comandos externos, o sin la participación del controlador UD simplemente presionando un botón para activar el modo de vinculación. El sensor de temperatura y otro dispositivo al que está vinculado el sensor normalmente pueden admitir el intercambio incluso sin una puerta de enlace MySensors o un controlador UD que funcione, lo que ciertamente aumenta la tolerancia a fallas. Otro problema fue con los controladores de pantalla eink, probablemente porque la pantalla es bastante nueva,en el sitio web del fabricante y en el sitio web WaveShare (que ofrece pantallas eink Good Display bajo su propia marca), las implementaciones de la biblioteca son bastante crudas. Tuve que rehacer algo, agregar algo.



El sensor tiene soporte para varios idiomas, inversión de color por un comando externo en el modo de configuración del dispositivo, varias opciones de fuente también cambiables por un comando externo en el modo de configuración del dispositivo. El sensor muestra lecturas de temperatura y humedad, energía de la batería y fuerza de la señal. El intervalo para medir la temperatura y la humedad, el intervalo para medir el nivel de la batería también se puede configurar mediante un comando externo. Para temperatura y humedad en minutos, para nivel de batería en horas. El sensor transmite los siguientes datos a la UD: temperatura, humedad, nivel de carga en%, voltaje, nivel de señal, motivo de reinicio.





Puedes ver cómo se ve en un pequeño video:





Marcas de tiempo de momentos interesantes:

3.10 - Configuración (cambio de fuente, inversión de color)

5.10 - Medición de consumo, trabajo WTD



Si alguien está interesado en mis desarrollos, luego de leer el artículo recomiendo ir al canal y suscribirse, allí publico información sobre nuevos desarrollos primero que nada ...



En modo de suspensión, el sensor consume 2μA, WTD se reinicia cada 5 segundos, el consumo en el momento del reinicio es de 4-5μA. En el modo de funcionamiento con una pantalla y un sensor de temperatura y humedad de 2-3 mA, en un modo de transmisión de 5-8 mA, dicho rango de 3 mA se debe al hecho de que el propio sensor regula la potencia de transmisión en función de los datos del nivel de señal.



Debajo de las fotos del spoiler del sensor.
























Sobre esto quiero despedirme, si está interesado en todo lo relacionado con el bricolaje, es un desarrollador de bricolaje o simplemente quiere comenzar, está interesado en usar dispositivos de bricolaje, invito a todos los interesados ​​en el chat de telegramas - DIYDEV



Cualquier persona que quiera hacer dispositivos, comience a construir la automatización de su hogar, los invito a que se familiaricen con Protocolo Mysensors fácil de aprender: chat de telegramas MySensors



Y para aquellos que buscan soluciones lo suficientemente maduras para la automatización del hogar, los invito al chat de telegramas de Open Thread .



Mi GitHub de este proyecto , diagrama, archivos gerber, modelos 3D de la carcasa, bom, software .



¡Todos son amables como siempre!



All Articles