Práctica 1 - Blink LED

INTRODUCCIÓN

 

La siguiente práctica es una de las más básicas en programación de microcontroladores, consiste en controlar el encendido y apagado de un LED cada determinado tiempo.

 

Selecciona el entorno de programación.

 

 

PYTHON
PROCESSING
PYTHON

Descripción

En esta práctica se utiliza el LED incluido en el módulo XENSE, que se encuentra conectado al pin8 de la tarjeta Raspberry Pi. El pin es configurado como salida y señal digital, y enciende o apaga cada determinado tiempo, a la vez se implementa una interfaz la cual despliega una etiqueta con el estado actual del LED.

 

Muestra el estado del LED.  

 

Materiales:

 

1 x Raspberry Pi. Comprar

1 x Módulo XENSE. Comprar

1 x Juego de cable Dupont. Comprar

1 x Protoboard de 830 puntos. Comprar

 

Software:

Raspbian. Descargar

Python. Descargar

 

Procedimiento

1.Instala la librería RPi.GPIO-0.7.0.tar.gz, para poder utilizar los GPIOs de la tarjeta Raspberry Pi. En el siguiente link encontrarás un manual para poder instalarla.

2.En el apartado de "Diagrama esquemático" que se encuentra a continuación selecciona tu Raspberry Pi y realiza las conexiones que se muestran en la imagen.

3.Descarga el código fuente al final de esta práctica en el apartado de "Descargas".

4.En el siguiente link encontrarás un manual para poder ejecutar el programa de Python desde la terminal de Raspberry Pi.

 

Diagrama esquemático

 

Raspberry Pi Zero W
Raspberry Pi 3 A+
Raspberry Pi 3 B+
Raspberry Pi Zero W

Raspberry Pi 3 A+

Raspberry Pi 3 B+

 

Código

Código

 

"""

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: AGOSTO 2019

***********************************************

La práctica consiste en controlar el encendido y apagado del LED mediante un GPIO de la
RaspberryPi.

*************************************************************

"""

 

from Tkinter import *                                         #libreria para poder realizar interfaz grafica

import RPi.GPIO as GPIO                                 # libreria para poder utilizar los GPIO de la Raspberry Pi

import threading                                                  #libreria para poder utilizar timers

 

tiempo=0.5

GPIO.setmode(GPIO.BOARD)                            #Definimos la manera en que utilizaremos los pines ya sea por numeracion de pines o GPIO


GPIO.setup(8, GPIO.OUT)                                                # Se declara GPIO de salida


RAIZ = Tk()                                                                      #Se crea una variable como raiz para toda la interfaz y se llama la clase TK

 

def led():                                                                  # Definimos una funcion donde se encendera el led y llamara a la funcion ledOff 

        etiqueta.config(text=“LED ON”)

        GPIO.output(8, True)

        timer1 = threading.Timer(tiempo,ledoff)                                #Activa la funcion ledoff en un tiempo de 0.5 segundos

        timer1.start()

def ledoff():                                                                        # Definimos la funcion ledoff donde se apagara el LED

        etiqueta.config(text=“LED OFF”)

        GPIO.output(8, False)

        timer = threading.Timer(tiempo,led)

        timer.start()



RAIZ.title(“encender y apagar led”)                                       # Definimos el nombre de la interfaz

RAIZ.geometry('80x60')                                                        # Definimos el tamano de la interfaz

etiqueta = Label(RAIZ, text=“ ”)                                            #Etiqueta de tipo label que nos muestra el estado del LED

etiqueta.grid(column=5, row=5, sticky=(W,E))                        # Definimos la posicion de la etiqueta en nuestras interfaz

timer = threading.Timer(tiempo,led)                                       # Activa la funcion LED en un tiempo de 0.5 segundos

timer.start()

mainloop()                                                                              #Metodo infinito de ejecucion

 

Descargas

R1-PYTHON

Descargar código en Python de la practica 1.

 

 

PROCESSING

Descripción
En esta práctica se utiliza el LED incluido en el módulo XENSE, que se encuentra conectado al GPIO14 de la tarjeta Raspberry Pi. El pin es configurado como salida y señal digital, se enciende o apaga cada determinado tiempo, a la vez se implementa una interfaz gráfica donde se despliega un gráfico en forma de elipse el cual nos muestra el estado actual del LED.

 

LED OFF.

LED ON.

                                                           

                          

Materiales:

1 x Raspberry Pi. Comprar

1 x Módulo XENSE. Comprar

1 x Juego de cable Dupont. Comprar

1 x Protoboard de 830 puntos. Comprar

 

Software:

Raspbian. Descargar

Processing. Descargar

 

Procedimiento

1.En el apartado de "Diagrama esquemático" que se encuentra a continuación selecciona tu Raspberry Pi y realiza las conexiones que se muestran en la imagen.

2.Al final de esta práctica en el apartado de “Descargas", puedes encontrar los archivos del código fuente o bien cópielo del apartado de "código”, que se encuentra más abajo.

3.Sí descargaste el archivo del paso 2, omite este paso. Si copiaste el código abrir el software Processing pega el código en un nuevo proyecto.

4.En el siguiente link encontrarás un manual para poder ejecutar el programa en Processing.

 

Diagrama esquemático


Raspberry Pi Zero W
Raspberry Pi 3 A+
Raspberry Pi 3 B+
Raspberry Pi Zero W

Raspberry Pi 3 A+

Raspberry Pi 3 B+

 

Código

Código

/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: AGOSTO 2019

*/

/**************************************************************************

La práctica consiste en controlar el encendido y apagado del LED mediante un GPIO de la
RaspberryPi.

**************************************************************************/

import processing.io.*;                               // importamos la librería para poder utilizar los GPIO de la Rasberry Pi
int LED=14;
boolean ledOn = false;

void setup() {
size (150, 150);                                                        // Declaramos el tamaño de la interfaz
GPIO.pinMode(LED, GPIO.OUTPUT);                 // Declaramos la variable LED con pin de salida para la Rasberry Pi 
background(130, 194, 60);                                      // Definimos un color de fondo para la interfaz
}

void draw() {
                                                                                    //Si ledOn es verdadera que se encienda el LED
if (ledOn == true) {
    GPIO.digitalWrite(LED, GPIO.HIGH);
    DrawLedOff();                                                           // ejecución de la funcion DrawLedOff
} else {                                                                           // De lo contrario que se Apague
     GPIO.digitalWrite(LED, GPIO.LOW);
     DrawLedOn();                                                             // ejecución de la función DrawLedOn
}
delay(500);
ledOn = !ledOn;
}

void DrawLedOn() {                                                //Función para representar el LED encendido
       fill(0,245,0);
       ellipse(70, 75, 30, 30);
}

void DrawLedOff() {                                                //Función para representar el LED apagado
       fill(255,255,255);
       ellipse(70, 75, 30, 30);
}

 

Descargas 

R1-PROCESSING

Descargar código en processing de la practica 1

Fecha

agosto 1, 2019

Categoría

Prácticas Raspberry Pi

× WhatsApp