Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Jugando con Nextion Display

Componentes y suministros

Arduino Mega 2560
× 1
Arduino Mega Proto Shield
× 1
nextion HMI display 2.4 "
× 1
lector de tarjetas SD
× 1
Sensor de temperatura DHT22
× 1
Desglose del sensor atmosférico SparkFun - BME280
× 1
Módulo DS3231 RTC
× 1
Receptor superheterodino RXB6 de 433 MHz
× 1
Resistencia de 10k ohmios
× 1
Resistencia 475 ohm
× 1
temporizador ne555
× 1
Fuente de alimentación AC-DC 5v
× 1

Herramientas y máquinas necesarias

Soldador (genérico)

Aplicaciones y servicios en línea

Arduino IDE
Editor Nextion

Acerca de este proyecto

¿Puede la pantalla nextion ahorrar espacio en el programa en Arduino?

A veces queremos usar gráficos coloridos para crear proyectos más atractivos a la vista. Desafortunadamente, los hermosos gráficos requieren una gran cantidad de recursos, como la memoria del controlador para las rutinas de la biblioteca gráfica y el almacenamiento externo, como una memoria de tarjeta SD para almacenar imágenes, etc. El controlador Arduino, por otro lado, tiene una cantidad limitada de recursos y no es completamente adecuado para los proyectos gráficos ricos. Para reducir los requisitos de recursos, podemos utilizar la pantalla de nextion. En este caso, no necesitamos almacenamiento externo para imágenes y podemos reducir significativamente los requisitos de memoria.

Desde el punto de vista del controlador, la pantalla nextion es solo un dispositivo en serie, no más costoso en recursos que una pantalla lcd en blanco y negro habitual en primer lugar. Entonces, ¿es posible construir la estación meteorológica en Arduino UNO y la pantalla nextion?

La respuesta no es exacta. Puede construir uno, pero tendría una funcionalidad muy limitada debido a la falta de memoria del controlador. No puede incluir algún gráfico de historial o algo así. Para construir una estación meteorológica de gran funcionalidad, necesita un microcontrolador más avanzado.

En este artículo, voy a mostrar cómo construir la estación meteorológica destacada con gráficos atractivos y registro de datos que recibe los datos meteorológicos de muchos sensores meteorológicos inalámbricos. Esta estación meteorológica se basa en nextion dislay y arduino mega 2560.

La idea principal

Supongamos que ya tenemos los sensores meteorológicos externos, como este o fabricados por el famoso fabricante, OREGON, THGN123N. Vamos a crear nuestra propia unidad central, que recibe los datos meteorológicos de estos sensores externos, muestra la temperatura, la humedad y la presión atmosférica, guarda periódicamente los datos en la tarjeta SD y dibuja los gráficos de los datos históricos. Además, la unidad central realiza algún tipo de pronóstico del tiempo en función de los cambios de presión.

La característica principal de esta unidad de estación meteorológica es que utiliza la imagen de fondo para mostrar el pronóstico del tiempo, no solo el pequeño icono como suelen hacer otras estaciones meteorológicas.

La exhibición acrobacias

La gran desventaja de la pantalla nextion es que las imágenes transparentes no son compatibles con el firmware de la pantalla. Entonces no podemos crear los elementos redondos. Debe usar un fondo 'recortado' dentro de sus widgets de texto para mostrar los datos de texto sobre una imagen personalizada. En mi caso, significa que cuando el fondo de la pantalla cambia, todos los fondos de los widgets de texto deben cambiarse en consecuencia. Por eso, necesitamos crear varias pantallas completas para cada pronóstico del tiempo.

Por otro lado, usando cambios de presión, podemos hacer tres tipos diferentes de pronóstico del tiempo:despejado, nublado o lluvia (nieve). También. Hay dos períodos principales de día:día y noche. Por lo tanto, necesitamos crear solo 8 pantallas diferentes:

  • soleado (cielo despejado, día)
  • lunático (cielo despejado, noche)
  • día nublado
  • noche nublada
  • día de lluvia
  • noche de lluvia
  • día de nieve
  • noche de nieve

Todas estas pantallas deben crearse dentro de la pantalla de nextion usando el editor de nextion. Todas estas pantallas comparten los mismos nombres de widgets para campos de texto (temperatura, humedad, presión) para los datos de nuestros sensores. Cuando el controlador actualiza la pantalla, primero selecciona la pantalla correspondiente con el fondo deseado, luego actualiza los datos del sensor dentro de los widgets de pantalla.

Datos de la pantalla principal

La pantalla principal se divide en tres áreas principales. En la línea superior de la pantalla puede encontrar los datos del sensor interno:temperatura y humedad del hogar, presión atmosférica, hora y fecha actuales. Se asumió que todos vivimos en casas con ventanas habituales, por lo que la presión atmosférica es la misma dentro y fuera de la casa. Por lo tanto, el controlador tiene solo un sensor de presión dentro del módulo principal para medir con precisión la presión atmosférica.

En la mitad izquierda de la pantalla puede encontrar los datos del sensor principal:temperatura y humedad. Es conveniente ver los datos del sensor externo principal en la pantalla todo el tiempo. La ID del sensor principal se puede definir en la pantalla de configuración. Puede seleccionar el ID requerido de la lista de ID de sensor disponibles. Por lo tanto, tenga paciencia y espere hasta que todos los sensores externos envíen las señales al controlador. Por lo general, tarda unos dos minutos.

En el lado derecho de la pantalla puede encontrar los datos de todos los sensores externos e internos:ID del sensor, temperatura y humedad. La información cambia periódicamente permitiendo monitorear los datos de todos los sensores. El controlador admite hasta 4 sensores externos. Si solo tiene un sensor externo, los datos del sensor interno también se mostrarán en el lado derecho de la pantalla principal.

El controlador tiene incorporado un módulo de reloj en tiempo real preciso, ds3231 que permite obtener la hora y la fecha reales. Estos datos de reloj se utilizan para registrar los datos del sensor junto con la marca de tiempo en la tarjeta SD, generar el pronóstico diurno y nocturno y controlar el brillo de la pantalla.

Otras pantallas

Hay varias pantallas adicionales dentro de la siguiente pantalla:

  • La pantalla que muestra la hora del amanecer y el atardecer y la edad de la luna;
  • La pantalla para la configuración del controlador;
  • La pantalla para ajustar el reloj en tiempo real;
  • La pantalla para mostrar los datos del historial de los sensores

Para llegar a la pantalla de 'amanecer', toque la pantalla principal en la fecha actual. Para configurar el controlador y ajustar el reloj, toque la hora actual. Para mostrar los datos del historial, toque la temperatura o la presión.

La pantalla de datos de registro del historial

Hay dos modos para la pantalla de datos del historial:período de 1 día y período de 8 días. Para cambiar el modo actual, toque el área del gráfico.

Hay dos menús de caja de herramientas de iconos en el lado izquierdo y en la parte superior de la pantalla del historial. En el menú de la barra de herramientas de la izquierda, puede seleccionar el ID del sensor deseado (elija entre los disponibles). El sensor interno tiene ID igual a 0. En la barra de herramientas superior puede cambiar el tipo de datos que se mostrarán:presión, temperatura o humedad.

La pantalla de configuración

En la pantalla de configuración puede:

  • personalizar el ID del sensor externo principal (espere hasta que el controlador reciba las señales de todos los sensores);
  • Configure las horas de la mañana y la tarde (cuando el controlador cambia el brillo de la pantalla);
  • Configure el brillo de la pantalla.

Evitar que el controlador se cuelgue

Para aumentar la estabilidad del controlador y evitar que el controlador se cuelgue, se implementó el circuito de perro guardián externo en los esquemas. Este circuito también se puede implementar en los otros proyectos, por lo que aquí puede ver la imagen separada para este temporizador a continuación.

El temporizador reiniciaría el controlador Arduino en aproximadamente 2-3 minutos si no recibiera la señal a través del pin Arduino A2.

Conclusión

El clima tiene una pantalla de gráficos ricos, muy atractiva a la vista, la estación funciona de manera muy estable aproximadamente la mitad del año.

Código

El código fuente
https://github.com/sfrwmaker/Weather_nextion/blob/master/Weather_nextion.ino
El código fuente
https://github.com/sfrwmaker/Weather_nextion/blob/master/Weather_nextion.ino

Esquemas

Los esquemas completos
https://github.com/sfrwmaker/Weather_nextion/blob/master/weather_mega_nextion.jpg

Proceso de manufactura

  1. Juego Arduino Pong - Pantalla OLED
  2. Controlar el aceptador de monedas con Arduino
  3. Arduino Temp. Monitor y reloj en tiempo real con pantalla 3.2
  4. ¡Arduino con Bluetooth para controlar un LED!
  5. Cómo conectar Arduino Mega con el módulo GPS NEO-6M
  6. Voltímetro de bricolaje con Arduino y una pantalla Nokia 5110
  7. BME280 Temperatura, humedad y presión en la pantalla Nextion
  8. Plataforma de entrenamiento Arduino
  9. Cree la aplicación Fridgeye con una pantalla Nextion
  10. Medición de la radiación solar con Arduino
  11. Pantalla de ubicación GPS con protectores de pantalla GPS y TFT