Cree iluminación ambiental con codificación basada en bloques en Raspberry Pi Pico

El microcontrolador Raspberry Pi Pico se puede programar con lenguajes basados ​​en texto como C, MicroPython y CircuitPython. Pero para aquellos que están aprendiendo a programar, la codificación basada en bloques puede ser menos abrumadora. Ahora disponible para Pico, BIPES (plataforma integrada basada en bloques para sistemas integrados) es una excelente opción.

Codificación basada en bloques con BIPES

BIPES, un entorno de codificación basado en bloques para dispositivos MicroPython, le permite crear programas arrastrando y soltando bloques similares a Scratch en una interfaz web de Chrome.

Leer más: Introducción a MicroPython

En esta guía, usará BIPES para crear un programa simple basado en bloques para una Raspberry Pi Pico para controlar el color de una luz ambiental LED RGB. Se utilizan tres potenciómetros giratorios para ajustar los componentes rojo, verde y azul, los colores primarios aditivos de la luz. Para que pueda aprender un poco de física en el proceso.

1. Construyendo la luz ambiental multicolor

Para crear la luz ambiental, necesitará una selección de componentes electrónicos estándar.

Lo que necesitarás:

  • Raspberry Pi Pico con cabezales de clavija macho soldados
  • Tablero de pruebas de 800 puntos (o 2x tableros de pruebas de 400 puntos vinculados)
  • LED RGB
  • 3 resistencias de 330 ohmios
  • Potenciómetros rotativos 3x
  • Cables de puente macho a macho (M2M)

Nota: Si no le apetece soldar encabezados de clavija macho a su Raspberry Pi Pico, es posible comprar un Pico con los encabezados ya conectados.

Relacionado: Un vistazo al Pico, la pequeña potencia más nueva de Raspberry Pi

Antes de conectar todo, eche un vistazo a la parte inferior del Pico para ver las etiquetas de los pines.

En la parte superior del Pico, también puede ver cómo funciona la numeración de pines físicos, del 1 al 40, en sentido antihorario desde la izquierda del puerto micro-USB.

También puede ver un diagrama del pinout de Pico en la pestaña Dispositivo de la interfaz web BIPES que usaremos.

En la placa de pruebas, inserte los cabezales de clavija macho del Pico en los orificios de un extremo. Empuje hacia abajo con firmeza para asegurar buenas conexiones; debe encajar perfectamente.

Ahora conecte su LED RGB usando cuatro cables de puente, como en el diagrama a continuación. La pata más larga está conectada a un pin GND (tierra), mientras que las otras están conectadas, a través de resistencias, a los pines GP13, GP14 y GP15 para los colores rojo, verde y azul.

Nota: estamos usando un LED RGB de cátodo común, por lo que estamos conectando su pin largo a tierra. Si el suyo es del tipo de ánodo común, deberá conectarlo a 3V3 en su lugar.

A continuación, conecte los tres potenciómetros giratorios. Necesitará una placa de pruebas de tamaño completo de 800 puntos para colocarlos. Alternativamente, puede usar dos de 400 puntos.

Cada potenciómetro tiene tres pines. Los externos están conectados a la alimentación 3V3 y GND, mientras que el pin del medio está conectado a uno de los pines de entrada ADC del Pico. Esto permite que su señal analógica se lea y se convierta en un número de 0 a 65535. En nuestro ejemplo, estamos usando ADC0 / GP26 para el potenciómetro que controla el componente rojo, ADC1 / GP27 para verde y ADC2 / GP28 para azul.

Finalmente, conecte su Pico a una computadora usando un cable micro-USB a USB.

2. Programación de la luz ambiental

Para que funcione la codificación basada en bloques BIPES, deberá instalar MicroPython en su Pico (si aún no lo ha hecho). Este proceso consta de cuatro sencillos pasos:

  1. Descargue MicroPython para Raspberry Pi Pico desde el sitio web de Raspberry Pi
  2. Conecte el Pico a su computadora a través de su toma micro-USB mientras mantiene presionado el botón BOOTSEL
  3. Espere a que el Pico aparezca como una unidad externa
  4. Arrastre y suelte el archivo .uf2 MicroPython para copiarlo en Pi Pico; se reiniciará automáticamente

Ahora, en la computadora conectada, abra el navegador web Google Chrome. Para permitir que BIPES se comunique con Pico a través de USB sin la necesidad de software adicional, debe habilitar una función experimental en Chrome. Ingrese chrome: // flags / en la barra de direcciones y habilite la opción Características de la plataforma web experimental .

Vaya a https://bipes.net.br/beta2serial/ui/ para comenzar a codificar con BIPES. En el menú desplegable Dispositivo de destino , seleccione Raspberry Pi Pico .

Para conectarse al Pico, seleccione la pestaña Consola y haga clic en Conectar (Serie Web) . En el cuadro de diálogo, seleccione la opción Tarjeta en modo FS y luego haga clic en Conectar .

Seleccione la pestaña Bloques para comenzar a crear su programa basado en bloques. Desde la categoría Funciones en el panel izquierdo, arrastre el bloque superior para hacer algo al área de código principal.

Esto es equivalente a definir una función en MicroPython. Nómbrelo rojo , ya que esta primera función leerá su potenciómetro para ajustar el valor rojo del LED RGB.

Seleccione la categoría Variables en el panel izquierdo y Crear variable . Nómbralo pot1 . Arrastre un conjunto pot1 para bloquear en el medio de su bloque de función rojo .

Desde la categoría Machine> In / Out Pins , arrastre un bloque Read RPI Pico ADC Input junto a su set pot1 para bloquear la función. En su menú desplegable de pines , seleccione Pin 26 / ADC0 / GP26 .

Desde la categoría Máquina> Pines de entrada / salida , arrastre un bloque PWM y colóquelo debajo del bloque set pot1 . Seleccione Pin 17 / GP13 en su menú desplegable de pines .

Desde la categoría Variables , arrastre un bloque pot1 para reemplazar 50 en la sección Duty del bloque PWM. Ahora tiene una función para leer un potenciómetro y ajustar el componente rojo del LED RGB en consecuencia. Repita esto para los componentes verde y azul.

Haga clic con el botón derecho en el bloque de funciones y seleccione Duplicar para copiar toda la función. Cambie el nombre a verde y cambie los valores de los pines a Pin 27 / ADC1 / GP27 y Pin 19 / GP14 . Cree una nueva variable pot2 y arrástrela al campo Duty . Utilice el menú desplegable para cambiar el juego de POT1 al bloque de conjunto de POT2.

Vuelva a duplicar la función, cámbiele el nombre a azul y cambie los nombres y la configuración en consecuencia. Los valores de los pines son Pin 28 / ADC2 / GP28 y Pin 20 / GP15 . La variable es pot3 .

Finalmente, cree un bucle infinito para ejecutar las tres funciones. Desde la categoría Bucles , arrastre un bloque de repetición while al área de código. Desde la categoría Lógica , arrastre un bloque verdadero y adjúntelo. Luego, desde Funciones , arrastre los bloques rojo , verde y azul al bucle.

3. Pruebe la luz ambiental

El programa ya está completo, así que es hora de ejecutarlo y probar nuestra luz ambiental. Haga clic en la pestaña Consola y seleccione Ejecutar programa basado en bloques .

Ahora intente girar cada potenciómetro para ajustar los componentes rojo, verde y azul de la luz. Puedes crear innumerables tonos.

Programa Raspberry Pi Pico con codificación basada en bloques: éxito

Ha explorado cómo programar su Raspberry Pi Pico utilizando codificación basada en bloques con la interfaz web BIPES en Google Chrome.

En el proceso, también ha creado una luz ambiental multicolor. Para difundir su luz, intente colocar una cubierta de plástico translúcido sobre ella; usamos una de un sensor PIR.