Primeros pasos con RaspBerry: Hola Mundo!!!
Aprende a programar "HOLA MUNDO" en la terminal de una Raspberry Pi B3
Hola Mundo
Hola mundo corriendo en la raspberry.
Lista de Materiales:
Kit Raspberry Pi3
Utilizaremos el kit para starters Raspberry Pi3 que es un perfecto kit de materiales para principiantes en el uso de una raspberry ademas de que incluye todos los materiales que necesitaremos durante esta practica.
Materiales:
1 Raspberry pi 3
1 Pi Cobbler(Extencion de conexiones).
3 Resistores de 630 ohms.
1 Resistor de 10k ohms.
1 Led ultrabrillante.
1 Push Botton.
Software:
Sistema Operativo Raspbian.
Se necesitara una memoria sd equipada con un sistema operativo Raspbian.
Programa:
Utilizaremos dos programas basados en python uno para probar la función de los GPIO con un blink(hacer parpadear un led) y otro para hacer el "HOLA MUNDO".
Python:
Python es un lenguaje de programación que utilizamos para crear el código que realizara las tareas y este sera creado y ejecutado desde la "Terminal".
Terminal:
Acceder a la Terminal:
Una vez estamos en el escritorio de Raspbian procedemos a dar clic al botón de la terminal en la esquina superior izquierda como se muestra en la imagen.
Acceso a la terminal:
De tener éxito se abrirá una ventana como esta:
Programando un Blink(parpadeo):
Programaremos un blink o en español parpadeo, esto es el apagado y encendido de un diodo led a través de un código, nos sirve para aprender como utilizar instrucciones y poder programar salidas en los puertos GPIO( son puertos de múltiple propósito que podemos utilizar para realizar distintas tareas).
Puertos gpio
Funciones de Puertos
Creando el Archivo:
Para crear el archivo del programa escribiremos en la terminal la instrucción: "nano blink.py" donde: el comando "nano" nos permite acceder a un archivo y si este no existe lo crea con el nombre que escribimos a continuación, este debe tener la terminación ".py" para especificar que sera un archivo de python.
Observe las siguientes diapositivas
1.-Escribiendo la instrucción nano blink.py para crear el archivo:
2.-Visualización del nuevo archivo creado correctamente:
Escribiendo el Programa:
Descripción del Código:
Nuestro código consta de 3 partes:
1.- Librerías: las librerías son programas que han sido hechos por otros programadores, que nos dan acceso a distintas herramientas e instrucciones para facilitar la creación de nuevos códigos.
En nuestro caso serian las primeras dos lineas donde: La instrucción "import" nos permite añadir librerías a nuestro código, después escribimos el nombre de la librería que son "Rpi.GPIO as GPIO" para poder utilizar los puertos de las raspberry y time para utilizar "time.sleep(#)" que funciona como un temporizador para detener el programa durante un numero de segundos determinados.
2.-La designación de variables y establecer el estado de los puertos: son todas las lineas entre Import time y While True, en estas lineas definimos el estado de los puertos que utilizaremos si serán entradas de información "In" o salidas de información "OUT". Ademas de crear la variable booleana blink ( las variables booleanas son variables que solo pueden tener dos valores 0 o 1 o tan bien conocidas como False y True respectivamente.
3.- El cuerpo del condigo: abarca desde "While True" hasta el final, en esta parte es donde escribimos la serie de pasos que queremos que el programa realice.
While: se traduce como "mientras" y repite todo su contenido una y otra vez mientras la condición escrita a continuación de el se cumpla, de este modo podemos hacer que el código se repita indefinidamente.
Nota: para que el programa relacione que esta dentro de un while o de otros tipos de condición tiene que tabularse el siguiente renglón una vez adelante del condicionante y seguir esta alineación de modo continuo hasta donde deseemos que abarque la condición.
If y else: son otro tipo de condicionantes y se traducen como "si" y "de otro modo" respectivamente, el if hace que su contenido solo se ejecute si la condición se cumple de otro modo todo este contenido es ignorado y ejecutara el contenido del else.
Print: Se usa para escribir en la pantalla de la terminal el texto contenido en la comillas.
GPIO.output(puerto,estado):Nos deja cambiar el estado de un puerto GPIO que hallamos definido como salida en el paso dos, en la primer variable escribimos el numero del puerto y en la segundo escribimos el estado si queremos que entregue corriente eléctrica sera: 1, True o HIGH. En cambio para detener el flujo de corriente lo ponemos en: 0, False o LOW.
Operaciones con Variables: Podemos hacer operaciones matemáticas en el programa usando las variables en nuestro caso usamos la operación "!=" conocido como negar, que nos permite cambiar el estado de un booleano si es 1 lo cambia a 0 y viceversa esto se usa para cambiar la condición del if y alternar entre apagar y encender el led.Ahora el código termina y como la condición del while no a cambiado se repite una y otra vez.
Guardar el Programa:Es importante guardar el programa para hacer esto presionamos las teclas "control+o" seguidas de "Enter" .
Salir del Programa: Presionamos las teclas "control+x" para regresar a la terminal.
Proceso de armado
Paso 1:
Conectaremos nuestra raspberry a todos sus dispositivos periféricos (Mouse, Tecleado, Monitor, Cargador, etc.). A continuación conectamos el cable del Pi Cobber a los puertos Gpio cuidando la orientación de el cable blanco, tiene que ir en el extremo superior orientado hacia el "PIN NUMERO 1".
Ahora conectaremos el Cobber al protoboard.
Recomendación: Evite conectar el cobbler y la raspberry hasta que se haya finalizado el armado del circuito para facilitar el ensamblaje.
Pi Cobbler y cable conector.
Protoboar con el Pi cobbler.
Paso 2:
Conectaremos el pin 18 a el terminal mas largo del diodo Led y la resistencia Azul, Gris y Marrón a cualquier puerto marcado GND, se recomienda usar la siguiente imagen como guía.
Circuito Blink:
Ejecutar el Programa:Tecleamos python y luego el nombre del programa con terminación .py como se muestra en la siguiente imagen. Para detener el programa tecleamos "control+z"
Ejecutar el programa:
Vídeo del Blink ejecutándose.
Programa Hola Mundo:
Para el hola mundo podemos crear un nuevo programa o editar el programa de Blink para que nos permita usar entradas y escanear su estado.
Paso 1:Modificar el circuito.
Haremos algunos cambios en el circuito como conectar un push botton en configuración pull-up como se muestra a continuación.
Modificación del circuito:
Paso 2:Modificar el programa.
Haremos algunos cambios como añadir inputs, para abrir el programa escribimos nano y el mismo nombre del programa con terminación .py si queremos modificarlo( o con otro nombre para crear un nuevo programa) una vez abierto lo reescribimos de la siguiente manera.
Programa holamundo.py
Descripción del código:
Añadimos la linea de GPIO.setup(26,GPIO.IN) para definir el pin 26 como entrada y en el if la condición cambia a GPIO-input(26) esto significa que si hay voltaje en el pin 26 cuando se escanea se cumplirá el if y se ejecutara su contenido de otro modo hará esto el else.
Nota: Evítese usar voltajes mayores a 3.3v en las entradas de la raspberry o se corre riesgo de dañar la de manera irreparable.
Si realizamos bien los pasos deberíamos lograr que el programa funcione como en el vídeo inicial.
Repita los pazos de guardar y salir, y ejecute como python blink.py (o use el nombre que colocase en su programa seguido de .py).
Puede cerrar el programa en cualquier momento presionando "control+z".
Resultados:
Felicidades hemos creado nuestros primeros programas en la terminal de una raspberry y podemos comenzar a desarrollar nuestro propios programas usando las habilidades obtenidas y estamos listos para comenzar con los proyectos de "RASPBERRY 101".