Está en la página 1de 7

Práctica de laboratorio: Haga parpadear un LED con

Raspberry Pi y PL-App

Objetivos

 Parte 1: Configuración de la práctica de laboratorio de prototipos con Raspberry Pi


 Parte 2: Configurar la aplicación PL-App
 Parte 3: (Desafío) Implementar un indicador de ayuda del código Morse internacional

Aspectos básicos/situación

En esta práctica de laboratorio aprenderá más sobre cómo puede usarse Raspberry Pi junto con PL-App para
escribir una aplicación que interactúe con electrónica externa mediante los puertos de GPIO en Raspberry Pi.
En la parte 1, armará un circuito simple con un LED externo que esté conectado a los puertos de GPIO en
Raspberry PI. En la parte 2, utilizará la herramienta de programación visual de PL-App, Blockly, para crear un
programa que hará parpadear el LED cuando se cargue y se ejecutará en Raspberry Pi.

En la parte 3, se le presenta el desafío de modificar el código de Blockly para que el LED parpadee la señal de
ayuda del código morse internacional.

Recursos necesarios

 PC con acceso a Internet


 Raspberry Pi con cable de alimentación y conexión de red cableada o inalámbrica
 Raspberry Pi configurado para el acceso a PL-App

Parte 1: Configuración de la práctica de laboratorio de prototipos con


Raspberry Pi
Es importante saber cómo se enumeran los pines de GPIO en Raspberry Pi y cómo se accede a ellos.
Raspberry Pi 3 Model B usa 3 diferentes esquemas de numeración de pin, que se describen en la figura a
continuación. El esquema recomendado es el esquema de numeración de pin BCM:
Paso 1: Arme el circuito de prototipo en la placa de prueba.

Nota: Raspberry Pi no debe estar encendido al armar el circuito de prototipo.

1. Seleccione 1 resistor de 330 Ohm (Ω), 1 LED, 1 cable de acoplamiento rojo, 1 cable de
acoplamiento negro del kit básico de Raspberry Pi.
2. Inserte el LED en la placa de prueba. La pata del cátodo se conecta a c13 y la pata del ánodo se
conecta a c14.
3. Inserte el resistor en la placa de prueba en los conectores b9 y b13.

Paso 2: Complete el circuito de prototipo conectándolo a Raspberry Pi.

Nota: los pines de GPIO en Raspberry Pi son machos. Si está disponible, utilice el acoplamiento de macho a
hembra desde la placa de prueba hasta Raspberry Pi. De lo contrario, use el cable plano GPIO, provisto en el
kit básico, para convertir los pines de GPIO a conectores hembra.
1. Conecte un extremo del cable de acoplamiento negro al conector a9 de la placa de prueba y el otro
extremo al pin 9 GPIO físico en Raspberry Pi.
2. Conecte un extremo del cable de acoplamiento rojo al conector a14 de la placa de prueba y el otro
extremo al pin 11 GPIO físico (BCM17) en Raspberry Pi.

Parte 2: Configure la aplicación PL-App

Paso 1: Cree una celda de programación visual (Blockly)

a. Ingrese a la celda de código a continuación y conviértala de una celda de código de Python predeterminada a
una celda de programación visual haciendo clic en el ícono Blockly en la barra de herramientas.

Paso 3: Cree un programa visual (Blockly)


1. La celda de código ahora admite la programación visual con Blockly. Agregue un nuevo bloque
de impresión y el bloque de texto al lienzo.
2. Conecte el bloque Texto con el bloque Imprimir. Agregar al bloque de texto el siguiente texto: Led on
pin BCM 17 should blink

3. Para controlar los pines de GPIO de Raspberry Pi, primero debe configurar el esquema de
numeración de pines a BCM. En el menú de acceso a pin de Blockly, seleccione el bloque
de establecer el modo en y agregue inmediatamente después del bloque de impresión. Cambie
su valor a BCM.

4. Configure el pin de GPIO donde esté conectado físicamente el LED (pin físico 11/BCM17) para que
sea del tipo desalida. Seleccione el bloque de configuración de canal en el menú del acceso a
pin y agréguelo al lienzo. El primer número, el canal, representa el pin de GPIO (con el esquema
de numeración de pin especificado, definido con el bloque antes en BCM) que desea configurar
(BCM17), mientras que el segundo parámetro es la dirección, entrada o salida, de ese pin. Debido
a que queremos controlar el estado del LED desde Raspberry Pi, el modo en este caso
es OUTput.
5. Agregue un bucle de repetición while seleccionando Programa->Bucles y moviéndolo al lienzo.

6. Selecione Programa->Lógica y arrastre el bloque true al final del bloque de repetición while.

7. Agregue un bloque output to channel mediante la selección de Acceso a pin. Arrastre el


bloque output to channeldentro del bucle de repetición while. Desde el menú Programa->Lógica,
seleccione el bloque true y agréguelo al bloque output to channel. Esto encenderá el pin de
GPIO y proporcionará 3.3 V para activar el LED.

8. Agregue un bloque de retardo seleccionando en el menú Tiempo el bloque de suspensión para


generar una demora entre la ejecución de los bloques. Arrástrelo dentro del bucle de repetición
while debajo del bloque output to channel. Establezca la demora en 0.5 segundos.
9. Haga clic en los bloques output to channel y sleep para duplicarlos.
10. Para el bloque output to channel duplicado, cambie el estado a false.

11. Examine el guión de Python generado a la derecha de la celda de código de programación visual.

Paso 4: Ejecute la aplicación.

1. En la celda de código, haga clic en el botón Reproducir en la esquina superior izquierda de la

celda.

El código de Python será ejecutado en Raspberry Pi y el LED debe comenzar a parpadear.

Nota: si el LED no parpadea, desconecte Raspberry Pi de la fuente de energía antes de solucionar el


problema del circuito.

2. Haga clic en el botón Detener para detener el programa. Nota: según el ciclo del programa, el LED
puede continuar iluminando aunque el programa haya terminado. Intente reiniciar la aplicación y
detener nuevamente durante el ciclo desactivado.
Parte 3: (Desafío) Implemente un indicador de ayuda del código Morse
internacional
Modifique el programa de Blockly que creó en la parte 2 para que el LED parpadee la señal de ayuda del código
Morse internacional (SOS). Sugerencia: revise las longitudes de unidad que aparecen en el gráfico.

Reflexión:
Observe las diversas opciones bajo los controles de Blockly Programa->Bucles. ¿Cómo se podría modificar la
aplicación para hacer que el programa ejecute el bucle durante una cierta cantidad de veces o sobre la base de
un intervalo periódico en lugar de salir de la aplicación?

© 2017 Cisco y/o sus filiales. Todos los derechos reservados. Este documento es información pública de Cisco.

También podría gustarte