### 3.3.1 Ventilador inteligente de control de temperatura #### 3.3.1.1 Descripción general ![Img](./media/top1.png) Cuando la temperatura interior supera el valor estándar preestablecido, el ventilador inteligente se encenderá para enfriar la habitación hasta una temperatura confortable. Además, la pantalla OLED mostrará la temperatura interior actual y el estado de funcionamiento del ventilador en tiempo real, proporcionando a los usuarios una retroalimentación de control de temperatura intuitiva. ![Img](./media/bottom1.png) #### 3.3.1.2 Conocimientos de componentes ![Img](./media/2top.png) **Microbit Temperature Sensor** ![Img](./media/j501.png) La placa principal micro:bit en realidad no está equipada con un sensor de temperatura dedicado, sino que utiliza el chip nRF52833 para la detección de temperatura. Por lo tanto, el valor detectado está mucho más cercano a la temperatura del procesador, por lo que puede haber cierta desviación respecto al valor ambiental. Su rango de detección es -40 ~ 105℃. **OLED Display** ![Img](./media/A636.png) La tecnología OLED presenta importantes ventajas como una rica reproducción de color, alto contraste y un amplio ángulo de visión, ofreciendo imágenes claras y vívidas, especialmente destacadas en negro. Cada píxel de la pantalla OLED emite luz por sí mismo sin necesidad de retroiluminación, por lo que consume relativamente poca energía. Con su tamaño pequeño (0.96 inches), alta resolución (128×64 pixels) y bajo consumo, es muy adecuada para dispositivos wearables. ⚠️ **Nota:** En este proyecto, el módulo de pantalla OLED conecta la interfaz SDA al pin P20 y SCL al pin P19. **Parámetros:** - Voltaje de funcionamiento: DC 3.3V-5V - Corriente de trabajo: 30mA - Interfaz: pines de cabecera con separación 2.54mm - Modo de comunicación: comunicación I2C - Chip de controlador interno: SSD1306 - Resolución: 128×64 - Ángulo de visión: mayor de 150° **130 Motor** ![Img](./media/cou710.png) En el módulo del motor 130 hay un motor de corriente continua que funciona en base a la inducción electromagnética y la fuerza de Lorentz. Está compuesto principalmente por un estator, un rotor (armadura) y un conmutador. El estator genera un campo magnético fijo, mientras que el rotor, compuesto por bobinados, genera un campo magnético al ser energizado. Cuando la corriente pasa por las escobillas y el conmutador y entra en la bobina del rotor, el campo magnético del rotor interactúa con el del estator, generando una fuerza de Lorentz que impulsa la rotación del rotor. Durante esta rotación, el conmutador cambia la dirección de la corriente, asegurando que el rotor esté continuamente sometido a una fuerza en la misma dirección, manteniendo así la rotación. Mediante la inducción electromagnética y la fuerza de Lorentz, el motor de corriente continua convierte la energía eléctrica en mecánica. Debido a su excelente capacidad de regulación de velocidad y gran par de arranque, los motores de CC se usan ampliamente en herramientas eléctricas, vehículos y electrodomésticos. ![j124](./media/j124.png) El motor 130 puede regular su velocidad mediante PWM. Para su uso es necesario conectar dos pines para el control. Es adecuado para escenarios donde se necesita ajustar la velocidad del ventilador, como la refrigeración de ordenadores y la producción industrial. Es pequeño, ligero y fácil de instalar, lo que lo hace muy práctico. **Diagrama esquemático:** ![Img](./media/cou712.png) El chip HR1124S asiste en el accionamiento del motor. Sin embargo, el motor requiere una corriente grande y no puede ser accionado por un transistor, y mucho menos directamente por un puerto IO. Mientras se aplique voltaje a ambos extremos del motor, este puede hacerse girar. La dirección de rotación varía según la polaridad del voltaje. Dentro del rango de tensión nominal, cuanto mayor sea el voltaje, más rápido girará el motor. Por el contrario, cuanto menor sea el voltaje, más lento girará el motor, o en algunos casos, puede que no gire en absoluto. Hay dos modos de control: por nivel alto y bajo (control de giro y parada), y por PWM (control de la velocidad de rotación). **Parámetros:** - Voltaje de funcionamiento: DC 5V - Corriente de funcionamiento: (Máx.)400mA@5V - Potencia máxima: 2W - Velocidad de rotación: (16000+10%) r/min@5V ![Img](./media/2bottom.png) #### 3.3.1.3 Componentes necesarios | ![Img](./media/microbitV2.png)| ![Img](./media/ExpansionBoard.png) |![Img](./media/OLED.png) | | :--: | :--: | :--: | | micro:bit V2 placa principal ×1 | micro:bit shield ×1 |Pantalla OLED ×1 | |![Img](./media/motor.png) |![Img](./media/usb.png) |![Img](./media/4pin.png)| |Motor 130 ×1| cable micro USB ×1 |cable de 4 pines ×2 | |![Img](./media/fan.png) |![Img](./media/batterycase.png)| ![Img](./media/AAbattery.png)| |ventilador ×1|porta baterías ×1|Pilas AA (**preparadas por el usuario**) ×6| #### 3.3.1.4 Diagrama de conexión ⚠️ **Al cablear, por favor preste atención al color de los cables.** | 130 motor | wire color | micro:bit shield pin |micro:bit board pin | | :--: | :--: | :--: | :--: | | G | black | G | G | | V | red | V2 | V | | IN+ | blue | 2 | P2 | | IN- | green | 16 | P16 | | OLED display | wire color | micro:bit shield pin |micro:bit board pin | | :--: | :--: | :--: | :--: | | GND | black | G | G | | VCC | red | V2 | V | | SDA | blue | 20 | P20 | | SCL | green | 19 | P19 | ![Img](./media/couj1.png) #### 3.3.1.5 Flujo del código ![Img](./media/flow-chart-1.png) #### 3.3.1.6 Código de prueba ⚠️ **Tenga en cuenta que el umbral 28 en la condición if() puede modificarse según la situación real.** **Código completo:** ![Img](./media/couj01.png) ⚠️ **Tenga en cuenta que el código usa C en lugar de ℃, porque ℃ se mostrará con caracteres extraños en la OLED.** ![Img](./media/line1.png) **Breve explicación:** ① Inicializa los píxeles del OLED, limpia el OLED, y la matriz de LED 5×5 de la Micro:bit muestra ![Img](./media/ab3.png). ![Img](./media/cou00.png) ② OLED muestra el valor de la temperatura en una línea. ![Img](./media/cou01.png) ③ Inserta una nueva línea. ![Img](./media/cou02.png) ④ Sentencia de juicio: if()...else... Cuando la temperatura detectada por el sensor es mayor o igual a 28℃, el OLED muestra “Ventilador encendido”, y el ventilador gira. En caso contrario, el OLED muestra “Ventilador apagado” y el ventilador no funciona. ![Img](./media/cou04.png) ⑤ Retardo de 1000ms(1s). ![Img](./media/cou05.png) #### 3.3.1.7 Resultado de la prueba ![Img](./media/4top.png) Tras realizar las conexiones y alimentar mediante el cable micro USB, conecte la alimentación externa (6 pilas AA) para asegurar un suministro de energía suficiente. Para la App de Windows 10, simplemente haga clic en Download. Para el navegador, envíe el archivo “.hex” a la placa micro:bit. Después de cargar el código de prueba en la placa micro:bit, la matriz de LED 5×5 incorporada muestra ![Img](./media/ab3.png), y la pantalla OLED muestra en tiempo real la temperatura y el estado del ventilador. Cuando la temperatura está por encima de 28℃, el ventilador gira. De lo contrario, el ventilador no funciona. ![Img](./media/dongtu-1.gif) ⚠️ **Nota: Los bloques de construcción en el experimento no están incluidos en este kit.** (**Consejo:** Si no se observa ningún resultado, por favor presione el botón de reinicio de la placa micro:bit.) ![Img](./media/4bottom.png)