Tabla de contenido:
- Paso 1: Equipo
- Paso 2: Configuración del microcontrolador
- Paso 3: configuración de MATLAB
- Paso 4: funciones
- Paso 5: prueba
- Paso 6: Conclusión
Video: Modelo de aire acondicionado Arduino: 6 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
Como parte de una demostración de la capacidad de nuestro equipo para crear un modelo de un dispositivo de tren inteligente con fines de marketing, el objetivo era crear un sistema en el que un sensor de temperatura lea los datos del circuito y convierta la información en un valor de temperatura que sea a la vez se muestra en una pantalla iluminada y se enfoca en si un ventilador se enciende o apaga. El propósito es ayudar a adaptarse a las condiciones de conducción de los pasajeros mediante un sistema automatizado que también actúa para mostrar la temperatura en las inmediaciones.
Mediante el uso de un kit de microcontrolador Arduino y las versiones 2016b y 2017b de MATLAB, pudimos demostrar estos resultados con relativo éxito.
Paso 1: Equipo
Kit de microcontrolador con lo siguiente:
-Pizarra roja de Sparkfun
-Tablero de pruebasparkfun
-Tablero LCD
-Potenciómetro
-Sensor de temperatura
-Servo
-Adaptador USB / Arduino
-Alambres de puente (25, mínimo)
Laptop (Windows 10) con entrada USB
Objeto impreso en 3D (opcional)
Paso 2: Configuración del microcontrolador
Considere esto: todo el sistema está compuesto por unidades individuales, cada una de las cuales aplica un factor significativo hacia el resultado final. Por esta razón, es muy recomendable configurar una imagen del circuito antes de conectar los cables en un lío complicado.
Las imágenes de cada modelo individual se pueden encontrar en el manual del kit de herramientas del microcontrolador o en su sitio web en
Comience colocando el sensor de temperatura, el potenciómetro, los conectores de servo y la pantalla LCD en la placa. Se recomienda que debido al tamaño de la pantalla LCD y al requisito de la cantidad de cables, se debe colocar en su propia mitad de la placa de pruebas con las otras piezas en la otra mitad y que el potenciómetro esté en un área para que alguien pueda gire fácilmente su perilla.
Para referencia:
LCD: c1-16
Servo: i1-3 (GND + -)
Sensor de temperatura: i13-15 (- GND +)
Potenciómetro: g24-26 (- GND +)
A continuación, comience a conectar los cables de puente a cada pin de las unidades del microcontrolador; aunque arbitrario en el gran esquema general, el diseño se creó con estas importantes conexiones:
Conexión del potenciómetro a la pantalla LCD: f25 - e3
Cable servo GND: j1 - Entrada digital 9
Sensor de temperatura GND: j14 - Entrada analógica 0
Entradas LCD: e11-e15 - Entrada digital 2-5
e4 - Entrada digital 7
e6 - Entrada digital 6
(Nota: si tiene éxito, ambas luces en el borde de la pantalla LCD deben parpadear y el potenciómetro puede ayudar a ajustar su brillo una vez que se le suministre energía del adaptador).
Opcional: se utilizó un objeto impreso en 3D como parte de un requisito. Para evitar daños potenciales a las partes más frágiles, se colocó una carcasa extendida como funda alrededor de la pantalla LCD. Las medidas de la pantalla LCD resultaron ser de aproximadamente 2-13 / 16 "x 1-1 / 16" x 1/4 ", por lo que solo se modificó significativamente la altura. Si hay una impresora 3D disponible, considere agregar un objeto personal, aunque innecesario Además, tenga en cuenta que las medidas pueden diferir.
Paso 3: configuración de MATLAB
Instale una versión más actualizada de MATLAB (2016a y posteriores), disponible en el sitio web de MathWorks https://www.mathworks.com/products/matlab.html?s_tid=srchtitle. Una vez abierto, vaya a Complementos en la pestaña Inicio y descargue "Paquete de soporte de MATLAB para hardware Arduino" para que se pueda acceder a los comandos del microcontrolador.
Una vez completado, se puede hacer una prueba para encontrar la conectividad del microcontrolador a la computadora / computadora portátil. Después de conectarlos con el adaptador USB del kit de herramientas, inserte el comando "fopen (serial ('nada'))".
Aparecerá un mensaje de error que indica que el conector es "COM #", que será necesario para crear un objeto arduino siempre que sea la misma entrada en todo momento.
Debido a que la pantalla LCD no tiene una conexión directa a la biblioteca Arduino, se debe crear una nueva biblioteca para mostrar mensajes. Una recomendación es crear un archivo LCDAddon.m a partir del ejemplo de LCD que se encuentra en la ventana de ayuda de MATLAB después de buscar "Arduino LCD" y colocarlo en la carpeta + arduinoioaddons, o usar la carpeta comprimida adjunta y copiar todo su contenido en la carpeta antes mencionada. carpeta.
Si tiene éxito, entonces el código para crear un objeto Arduino en MATLAB es como se muestra a continuación.
a = arduino ('com #', 'uno', 'Bibliotecas', 'ExampleLCD / LCDAddon');
Paso 4: funciones
Cree una función MATLAB. Para las entradas, usamos las variables "eff" y "T_min"; para las salidas, aunque innecesarias en el diseño general, usamos la variable "B" como una forma de contener datos de los resultados. La entrada "eff" permite gestionar la velocidad máxima del servo, y la entrada "T_min" controla la temperatura mínima deseada. El valor "B" debería producir una matriz que contenga tres columnas para el tiempo, la temperatura y la eficiencia del ventilador. Además, como una ventaja para los detalles, el código que se enumera a continuación también tiene una declaración if tal que la velocidad del ventilador se reducirá en un cincuenta por ciento cuando se acerque a la temperatura mínima deseada.
Si todas las entradas y los cables de puente se colocan exactamente y asumiendo que el puerto de la conexión arduino es COM4 y el nombre de la función es "fanread", el siguiente código debería ser suficiente:
función [B] = fanread (Tmin, eff)
claro a; clear lcd; a = arduino ('com4', 'uno', 'Bibliotecas', 'ExampleLCD / LCDAddon');
t = 0; t_max = 15; % de tiempo en segundos
lcd = addon (a, 'ExampleLCD / LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'});
initializeLCD (lcd, 'Filas', 2, 'Columnas', 2);
si ef> = 1 || e <0
error ('El ventilador no se activará a menos que eff se establezca entre 0 y 1')
fin
para t = 1:10% número de bucles / intervalos
claro c; % evitar la repetición de errores
v = readVoltage (a, 'A0');
TempC = (v-0.5) * 100; Estimación de% para rangos de voltaje 2,7-5,5 V
si TempC> Tmin si TempC
c = ['Temp', num2str (TempC, 3), 'C On'];
writePWMDutyCycle (a, 'D9', eff / 2); % enciende el servo a la mitad de la velocidad
spd = 50;
demás
c = ['Temp', num2str (TempC, 3), 'C On'];
writePWMDutyCycle (a, 'D9', eff); % enciende el servo a la velocidad dada
spd = 100;
fin
demás
c = ['Temp', num2str (TempC, 3), 'C Off'];
writePWMDutyCycle (a, 'D9', 0); % apagado si ya está encendido
spd = 0;
fin
printLCD (lcd, c);
pausa (3); % transcurren tres segundos por bucle
tiempo (t) = t. * 3;
tempplot (t) = TempC;
acto (t) = spd;
subtrama (2, 1, 1)
plot (time, tempplot, 'b-o')% gráfico lineal
eje ([0 33 0 40])
xlabel ('Tiempo (segundos)')
ylabel ('Temperatura (C)')
esperar
plot ([0 33], [Tmin Tmin], 'r-')
esperar
plot ([0 33], [Tmin + 2 Tmin + 2], 'g-')
subtrama (2, 1, 2)
barra (tiempo, acto)% gráfico de barras
xlabel ('Tiempo (segundos)')
ylabel ('Eficiencia (%)')
fin
B = transponer ([tiempo; trama temporal; acto]);
fin
Ahora que la función está completa, es hora de probar.
Paso 5: prueba
Ahora pruebe la función en la ventana de comandos insertando "nombre_función (valor_entrada_1, valor_entrada_2)" y observe. Asegúrese de que no exista ningún objeto Arduino; si es así, use el comando "borrar a" para eliminarlo. Si ocurren errores, verifique y vea si algún conector está en el lugar incorrecto o si se utilizan las entradas digitales o analógicas incorrectas. Se espera que los resultados varíen, aunque esto puede deberse a la colocación de ciertos cables de puente y el sensor de temperatura.
Las expectativas de los resultados deberían producir cambios en el rendimiento del servo y los datos en la pantalla LCD. Con cada intervalo de tres segundos, una línea de texto debe mostrar la temperatura en grados Celsius y si el ventilador está activo o no mientras el ventilador funciona a máxima velocidad, la mitad de la velocidad o sin velocidad. Lo más probable es que los datos no sean consistentes, aunque si desea obtener más resultados diversos, coloque el valor "Tmin" cerca de la temperatura promedio producida por el circuito.
Paso 6: Conclusión
Aunque fue una tarea ardua de realizar mediante ensayo y error, los resultados finales demostraron ser bastante interesantes y satisfactorios. Un sistema como tal ayuda a ilustrar cuántas máquinas complicadas, o incluso algunas de sus partes, pueden verse como una colección de partes independientes colocadas juntas para lograr un objetivo específico.
Debido al diseño bastante simplista del proyecto final, aquellos que tengan interés en mejorar su rendimiento pueden hacer ajustes y alteraciones en el producto final que pueden hacer que el proyecto sea mejor y más elaborado. Sin embargo, sí revela debilidades en el circuito, como la activación del servo que resulta en fluctuaciones esporádicas en la lectura de voltaje del circuito, lo que puede hacer que el sistema nunca produzca resultados idénticos. Además, ha habido problemas al ver un cambio en la velocidad del servo cuando "eff" se establece en 0.4 y más. Si se hubiera utilizado un sensor de temperatura y humedad, el modelo final sería más complicado pero presentaría valores más consistentes. Sin embargo, esta es una experiencia que muestra que una máquina compleja puede funcionar como una combinación de sus partes simples.
Recomendado:
Aire acondicionado de cubo de bricolaje: 13 pasos (con imágenes)
Aire acondicionado de cubo de bricolaje: Vivo en un lugar bastante caluroso en el sur de la India y mi espacio de trabajo se llena. Encontré una buena solución a este problema al transformar un balde viejo en un acondicionador de aire de bricolaje. El modelo de aire acondicionado es muy simple, de bajo costo pero efectivo. El ba
Interruptor automático de aire acondicionado: 5 pasos
Interruptor automático del aire acondicionado: dado que hay varias cosas diferentes que las personas deben hacer durante su vida diaria, a menudo olvidamos algunos detalles menores, que a veces causan graves consecuencias, olvidar apagar el aire acondicionado es uno de ellos. Mientras que la gente accidentalmente
Ventilador automático / sistema de aire acondicionado: 6 pasos
Ventilador automático / Sistema de aire acondicionado: ¡Bienvenido! En este Instructable, lo guiaré a través de cómo construir su propio sistema automático de ventilador / aire acondicionado. Este Instructable trata con un ventilador de ventana, que se utiliza para enfriar las habitaciones en el calor del verano. El objetivo de este proyecto es
Tutorial de PCB de aire acondicionado con su funcionamiento y reparación: 6 pasos
Tutorial de PCB de aire acondicionado con su funcionamiento y reparación: ¡Hola, chicos! Akarsh aquí de CETech. ¿Alguna vez se ha preguntado qué está pasando en el lado interior de sus acondicionadores de aire? En caso afirmativo, debería leer este artículo, ya que hoy voy a dar una idea de las conexiones y la composición
¡Aire más frío! por menos dinero! ¡Sobrealimentación del aire acondicionado!: 14 pasos (con imágenes)
¡Aire más frío! por menos dinero! ¡¡Sobrealimentación del acondicionador de aire !!: Puede obtener un enfriamiento mejorado y reducir los costos de energía con este método. Un acondicionador de aire funciona comprimiendo un refrigerante gaseoso hasta que se condensa en el condensador (lo adivinó) en el lado exterior. Esto libera calor al exterior. Entonces cuando eso