Basado en el sistema de atenuación inteligente multitarea + SpringBoot + Vue de desarrollo propio STM32 para invernaderos agrícolas

A menudo es fácil sentirse agotado después del trabajo y no obtener un descanso de alta calidad, incluso los fines de semana. ¿Cómo pasan los fines de semana los trabajadores/estudiantes? ¿Tiene alguna manera excelente de extender sus fines de semana y tiempo libre del trabajo? - ¡El método es acumular más, publicar más blogs y escribir todas las ideas! ! , A continuación, le mostraré un diseño de curso: el código fuente y el código del lado del hardware no se mostrarán. En el enlace de recursos de este blog, si está interesado, puede consultarlo. Los códigos de front-end y back-end se guardan en mis recursos

Mi tarea principal:

1. El backend obtiene la información desarrollada por STM32 y puede completar la comunicación en serie con él 

2. Escriba la página del front-end y complete la interacción entre el front-end y el front-end

3. (Lado del hardware) Escriba la función de complemento de luz inteligente de acuerdo con los parámetros personalizados

Basado en STM32 multitarea de desarrollo propio + SpringBoot + Vue 

Sistema de regulación inteligente para invernaderos agrícolas

Resumen

        La agricultura próspera con la ciencia y la tecnología es la única forma de desarrollo agrícola, y la integración de la tecnología de la comunicación en el monitoreo ambiental del invernadero agrícola tradicional es un representante típico de ello. Para garantizar un sistema de iluminación razonable para los invernaderos agrícolas, es necesario controlar con precisión la intensidad de la luz en los invernaderos. Teniendo como objetivo las desventajas de la intensidad de iluminación actual en el galpón que no se puede ajustar, el cableado complejo y el alto costo, se propone un sistema inteligente de ajuste de intensidad de luz basado en la tecnología stm32.

        El sistema de control de iluminación inteligente propuesto por nosotros puede determinar si se requiere iluminación adicional de acuerdo con el umbral de iluminación requerido por el invernadero establecido actualmente, y puede cambiar la intensidad de la luz adicional en tiempo real de acuerdo con la iluminación actual, y puede observar el invernadero actual en tiempo real en el lado del cliente intensidad de luz natural e intensidad de luz de relleno. Si la configuración del umbral no es razonable, el zumbador también es un recordatorio de alarma.

Palabras clave: suplemento de luz inteligente, stm32, SpringBoot, invernadero agrícola

Basado en STM32 Multitarea de desarrollo propio + SpringBoot+Vue

Sistema de iluminación automático  para invernaderos agrícolas

Abstracto

        La promoción de la agricultura a través de la tecnología es el camino necesario para el desarrollo agrícola, y la integración de la tecnología de la comunicación en el monitoreo ambiental del invernadero agrícola tradicional es un representante típico. Para garantizar un sistema de iluminación razonable para los invernaderos agrícolas, es necesario monitorear con precisión la intensidad de la luz dentro de los invernaderos. Se propone un sistema de ajuste de intensidad de luz inteligente basado en la tecnología STm32 para abordar las deficiencias actuales de intensidad de iluminación no ajustable, cableado complejo y alto costo en el invernadero.

        Nuestro sistema de control de iluminación inteligente propuesto puede determinar si la iluminación del invernadero es necesaria en función del umbral de iluminación actual establecido para el invernadero y puede cambiar la intensidad de la iluminación en tiempo real de acuerdo con la iluminación actual. También puede observar la intensidad de la iluminación natural y la intensidad de la iluminación del invernadero actual en tiempo real en el cliente. Si la configuración del umbral no es razonable, el zumbador también proporcionará un recordatorio de alarma.

Palabras clave: Iluminación inteligente, STM32, SpringBoot, Invernadero agrícola.

1. Introducción

1.1 Antecedentes de la selección de temas

        La producción agrícola tradicional no solo está limitada por la influencia de las estaciones, sino que también se ve gravemente afectada por los cambios climáticos. Especialmente en primavera e invierno, cuando hay mucha lluvia y nieve, la mayoría de los cultivos en la región norte están restringidos. En la actualidad, algunos factores ambientales en la mayoría de los invernaderos agrícolas se controlan mediante la intervención manual, y los invernaderos agrícolas actuales no pueden cumplir con la búsqueda de requisitos de alta calidad de las personas.

        La luz es uno de los factores importantes para el crecimiento de las plantas. Las bajas temperaturas y la luz insuficiente en invierno y principios de la primavera tendrán efectos adversos en el crecimiento y desarrollo de las plantas. Por lo tanto, al ajustar la configuración y el uso de las instalaciones de iluminación del invernadero, se puede aliviar el problema de la luz insuficiente.

        La forma tradicional de controlar artificialmente la intensidad de la luz y el tiempo de iluminación tiene ciertas desventajas, como el desperdicio de energía, la iluminación desigual, etc., y carece de una respuesta en tiempo real a las necesidades de crecimiento de las plantas. Para resolver estos problemas, es de gran importancia práctica desarrollar un sistema de control de iluminación inteligente.

        En vista de los problemas anteriores, este tema tiene como objetivo diseñar un sistema inteligente de ajuste de iluminación para invernaderos agrícolas para realizar un control en tiempo real de la intensidad de la luz, a fin de lograr los objetivos de ahorro de energía, alta eficiencia, inteligencia y automatización. Al mismo tiempo, se deben considerar factores como la adaptabilidad, la estabilidad, la economía y la escalabilidad del sistema para cumplir con los requisitos de iluminación de las diferentes necesidades de crecimiento de las plantas y las condiciones climáticas en diferentes regiones.

1.2 Estado de la investigación en el país y en el extranjero

        Estado de investigación en países extranjeros: tecnología inteligente de luz suplementaria para invernaderos agrícolas originada en los Países Bajos, Estados Unidos, Japón y otros países. Ya en la década de 1990, los Países Bajos comenzaron a estudiar las luces de crecimiento de las plantas y, en estudios posteriores, descubrieron que las luces LED tienen un buen efecto como complemento de la luz para las plantas. Estados Unidos también ha explorado la luz suplementaria inteligente en invernaderos agrícolas. Los investigadores usan computadoras para controlar las luces LED de crecimiento de plantas para satisfacer las necesidades de luz del crecimiento de las plantas. En Japón, las instituciones de investigación utilizan lámparas LED y lámparas fluorescentes como fuentes de luz para el crecimiento de las plantas y han logrado ciertos resultados de investigación.

        Estado de la investigación nacional: hay relativamente pocas investigaciones sobre luz suplementaria inteligente en invernaderos agrícolas en mi país, y no se le ha prestado atención gradualmente hasta los últimos años. Los investigadores se concentran principalmente en universidades e instituciones de investigación científica. Las principales direcciones de investigación incluyen el diseño y la estrategia de control de lámparas de crecimiento de plantas, la optimización y mejora de equipos de fuente de luz, etc. En la actualidad, todavía hay muchos desafíos en la luz suplementaria inteligente de mi país para invernaderos agrícolas, como la eficiencia energética de los equipos de fuente de luz, la estabilidad y diversidad del entorno de luz y otros problemas.

        En general, la tecnología de complemento de luz inteligente para invernaderos agrícolas ha recibido una gran atención por parte de académicos nacionales y extranjeros, pero hay relativamente pocos estudios nacionales. En futuras investigaciones, la aplicación práctica y la optimización del sistema deben fortalecerse aún más para mejorar el efecto y el beneficio de la tecnología de suplemento de luz inteligente para invernaderos agrícolas.

1.3  Dirección de Diseño e Investigación

        Con base en el análisis anterior, este tema se concibe en función de los fotodiodos y las luces LED que vienen con la placa de desarrollo STM32F429IG, y ajusta automáticamente el brillo de las luces LED configurando el ciclo de trabajo PWM y la relación de ancho de pulso. Al modificar la rutina de la luz de respiración, escriba una luz de respiración en forma de una secuencia aritmética basada en la proporción del ancho de pulso.En este momento, solo necesitamos ajustar el brillo de la luz LED sin modificar el ancho de pulso. El front-end se basa en Vue+Echarts+Element-Plus para la representación de páginas, y el back-end se basa en SpringBoot para obtener los datos de respuesta del front-end en tiempo real y enviar la información correspondiente al puerto serie, y al mismo tiempo El tiempo recoge la intensidad de la luz en tiempo real y la devuelve al front-end.La respuesta dinámica en tiempo real del terminal.

2. Diseño del esquema general

        El hardware se divide principalmente en tres áreas, una es el área de detección de diodos fotosensibles, que recopila la intensidad de luz actual en tiempo real; la segunda es el área de suplemento de luz LED; la tercera es el área de recordatorio del zumbador, cuando la configuración del umbral no es razonable (menos de 10 es mayor que 90), el zumbador emitirá una alarma.

        En términos de software, diseño de back-end: el paquete RXTX.jar de Java se puede usar para la comunicación en serie, y luego se construye el back-end basado en el marco SpringBoot. Convierta la intensidad de la luz de acuerdo con las reglas; envíe la intensidad de la luz actual al front-end; reciba el umbral establecido por el front-end y el estado de otras luces LED, y luego envíe la información correspondiente al puerto serie para controlar las luces LED. Diseño frontal: primero inicialice el gráfico de líneas cambiante en tiempo real, luego obtenga datos del backend, cargue los datos en el gráfico de líneas y luego devuelva los datos al backend.

        El módulo de control principal elige utilizar el chip STM32F429IGT6 para las funciones de transmisión de datos de programación, control y medición. La arquitectura del sistema es como se muestra en la Figura 1:

Figura 1 Diagrama de arquitectura del sistema

3. Principio de diseño

3.1 Diseño de hardware

3.1.1 Introducción al ADC

        STM32F429IGT6 tiene 3 ADC, cada ADC tiene opciones de 12 bits, 10 bits, 8 bits y 6 bits, y cada ADC tiene 16 canales externos. Además, dos fuentes ADC internas y canales VBAT se cuelgan en ADC1. ADC tiene modo independiente, modo dual y modo triple, y casi todos los modos adecuados son opcionales para diferentes requisitos de conversión de AD.

        La Figura 2 a continuación es el diagrama de bloques funcional del ADC:

Figura 2 Diagrama de bloques funcional del ADC

3.1.2 Introducción del sensor fotosensible

        La placa de desarrollo GECSTM32F4 está equipada con un fotodiodo (fotorresistencia) como sensor de luz, que es muy sensible a los cambios de luz. Los diodos fotosensibles también se denominan fotodiodos. Los diodos fotosensibles tienen una estructura similar a los diodos semiconductores, y su troquel es una unión PN con características fotosensibles, que tiene conductividad unidireccional, por lo que se debe aplicar un voltaje inverso cuando se trabaja.

        Cuando no hay luz, hay una pequeña corriente de fuga inversa saturada, es decir, corriente oscura, y el fotodiodo se corta en este momento. Cuando se ilumina, la corriente de fuga inversa saturada aumenta considerablemente, formando fotocorriente, que cambia con la intensidad de la luz incidente. Cuando la luz irradia la unión PN, se pueden generar pares de huecos de electrones en la unión PN, aumentando la densidad de portadores minoritarios. Estos portadores se desplazan bajo el voltaje inverso, aumentando la corriente inversa. Por lo tanto, la intensidad de la luz se puede usar para cambiar la corriente en el circuito.

        Usando este cambio de corriente, podemos convertirlo en un cambio de voltaje conectando una resistencia en serie, para leer el valor de voltaje a través del ADC para juzgar la intensidad de la luz externa.

        La figura 3 a continuación es el diagrama esquemático del sensor fotosensible:

Figura 3 Diagrama de conexión del sensor fotosensible

        En la figura, CS1 es un diodo fotosensible y R76 le proporciona un voltaje inverso. Cuando cambia la luz ambiental, el voltaje en ambos extremos de CS1 también cambiará en consecuencia, de modo que la luz ambiental se puede obtener leyendo el voltaje en la fotorresistencia a través del canal ADC1_IN5. Cuanto más brillante sea la luz, menor será el voltaje y cuanto más oscura sea la luz, mayor será el voltaje.

3.1.3 Introducción al zumbador

        El zumbador es un zumbador electrónico con una estructura integrada, se alimenta con voltaje de CC y es ampliamente utilizado como dispositivo de sonido en productos electrónicos como computadoras, impresoras, fotocopiadoras, alarmas, juguetes electrónicos, equipos electrónicos automotrices, teléfonos y temporizadores. . Los zumbadores se dividen principalmente en dos tipos: zumbadores piezoeléctricos y zumbadores electromagnéticos.

        El zumbador de la placa de desarrollo GECSTM32F4 es un zumbador activo electromagnético, como se muestra en la Figura 4 a continuación, y la Figura 5 es el diagrama esquemático del zumbador.

Figura 4 zumbador activo

Figura 5 Diagrama esquemático del zumbador

3.1.4 Introducción de GPIOLED

        La siguiente figura es el diagrama de conexión del principio LED de STM32F429IGT6:

Figura 6 Diagrama de conexión del principio LED

        Esta placa experimental está conectada con 3 luces LED, y los cátodos de estas luces LED están conectados a los pines GPIO de STM32. Siempre que controlemos el estado de salida de nivel de los pines GPIO, las luces LED se pueden encender y apagar.

3.2 Diseño de software

3.2.1 Diseño del programa de ingeniería back-end de SpringBoot

        Primero, el programa debe obtener el voltaje enviado por el puerto serie y luego convertirlo en la intensidad de luz de la regla personalizada ((300-valor de voltaje*100)/300*100)-10). ¿Por qué debería establecerse la regla como se indicó anteriormente? Porque, a través de la práctica, el valor de voltaje es el más cercano a 3,0 V en el caso más oscuro, y luego el valor de voltaje es inversamente proporcional a la intensidad de la luz, y nuestro rango de intensidad de luz asumido es: 0- 100, por lo que habrá (valor de voltaje 300 * 100)/300 * 100. En cuanto a la subsiguiente reducción de 10, es práctico, porque de acuerdo con la fórmula anterior, incluso en la situación más oscura, todavía hay una intensidad de luz de más de 10, así que Resto 10 aquí.

        Luego envíe los datos al front-end, después de que el front-end responda, envíe los datos al back-end, y el back-end recibe los datos y luego los redirige al puerto serie, repitiendo este proceso, el diagrama de flujo del programa es como se muestra en la Figura 7:

Figura 7 Diagrama de flujo del programa de back-end 

3.2.2 Diseño del programa de ingeniería front-end de Vue

        El front-end recibe los datos y actualiza el gráfico de líneas en tiempo real (aquí, para evitar que el gráfico de líneas sea demasiado confuso, el gráfico de líneas está configurado para mostrar solo 20 puntos), y luego regresa al front-end para devuelve el umbral establecido en este momento y el estado del resto de las luces LED al back-end, el flujo del programa La figura se muestra en la Figura 8 a continuación:

Figura 8 Diagrama de flujo del programa front-end

4. Experimentación y depuración

4.1 Ambiente experimental

        Laptop Dell Insprion 5509, Keil5, IntelliJ IDEA 2021.1, código de Visual Studio, Google Chrome, placa de desarrollo STM32F429IGT6

4.2 Método experimental

  1. Combinando todos los archivos de encabezado en la rutina, escriba el microsistema multitarea Stm32,
  2. Escriba el código de prueba relevante y grábelo en la prueba de desarrollo.
  3. Combinando con el caso de la luz de respiración del microsistema multitarea, escriba un código de luz suplementario inteligente
  4. Quema y prueba la luz suplementaria inteligente
  5. Escriba el código de back-end para obtener los datos enviados por el puerto serie en tiempo real
  6. De acuerdo con la interfaz de back-end, escriba el código de front-end
  7. Grabe en la placa de desarrollo, ejecute los extremos delantero y trasero e integre la prueba

4.3 Resultados experimentales

        Ejecute todos los programas y visite localhost:5173 , verá el efecto que se muestra en la Figura 13 a continuación: la respuesta del cliente es similar a la siguiente y el efecto dinámico se guarda en mis recursos:

Figura 9 efecto de carrera

        En la actualidad, vemos que la placa de desarrollo necesita llenar las luces y observar el estado de la placa de desarrollo, como se muestra en la Figura 10 a continuación:

Figura 10 Estado de la placa de desarrollo

Otros resultados de la prueba:

Tabla 1 Resultados de la prueba

contenido de prueba

resultado

Haga clic en LED0 para encender (apagar) la luz si LED0 debe encender (apagar) la luz

Haga clic en LED0 para encender (apagar) la luz si LED0 debe encender (apagar) la luz

Ajustar si el gráfico de línea de umbral cambia en consecuencia

Si el estado de la luz LED en la placa de desarrollo corresponde al gráfico de líneas

Pruebe si el brillo de la luz LED se ajusta en tiempo real al complementar la luz

Si el zumbador emitirá una alarma cuando el umbral sea superior a 90 o inferior a 10

4.4 Análisis de los resultados experimentales

        A través de pruebas y análisis, nuestro sistema puede llenar automáticamente la luz de acuerdo con el umbral establecido por el cliente.Si el umbral no es razonable, también puede dar un recordatorio de alarma y también puede controlar la apertura y el cierre de otras luces LED. Y tiene un muy buen efecto dinámico.

Supongo que te gusta

Origin blog.csdn.net/qq_53317005/article/details/132066103
Recomendado
Clasificación