Aprenda a programar en Raspberry Pi – Parte 1: Introducción

Muchos principiantes (absolutos) obtienen una Raspberry Pi como regalo, pero a menudo tienen poco o ningún conocimiento de programación. Por lo tanto, me gustaría eliminar ese obstáculo en esta serie de tutoriales y alentar el aprendizaje de la programación con Raspberry Pi. La gran ventaja es que también podemos escribir un código relacionado con el hardware, lo que nos permite usar los pines GPIO de Raspberry Pi.

Usamos Python como lenguaje de programación, ya que es uno de los lenguajes más fáciles de aprender para principiantes y también suele ser el que tiene más referencias y ejemplos disponibles.

Piezas de hardware requeridas

Una nota por adelantado: la serie de tutoriales está destinada a facilitar el inicio de la programación en Raspberry Pi, pero no debe tomarse como un curso independiente. Un libro es muy útil para profundizar en el conocimiento y buscar cosas. En particular, puedo recomendar uno de estos dos libros para aprender:

Hardware

Para empezar, necesitamos las siguientes piezas de hardware:

Preparación

Antes de comenzar a programar, debemos realizar algunos pasos para configurar el entorno. En primer lugar, es necesario que la Raspberry Pi obtenga un sistema operativo. La Fundación Raspberry Pi proporciona el llamado sistema operativo Raspbian, que debemos descargar. Luego transferimos el archivo incluido a la tarjeta micro SD. Puede encontrar instrucciones detalladas aquí:

Transferir Raspberry Pi Raspbian OS a una tarjeta SD (Windows)

Una vez que la imagen está en la tarjeta SD, la insertamos en la Raspberry Pi. Tan pronto como el teclado, el mouse y la pantalla estén conectados a través del cable HDMI, podemos iniciarlo. Esto se hace simplemente conectando el cable micro USB y conectándolo a la corriente. La pantalla ahora debería iluminarse y deberían aparecer algunas líneas de código sobre un fondo negro.

Poco después, el proceso de inicio se completa y vemos el escritorio:

Ahora abrimos la consola de Python, en la que podemos ingresar inmediatamente el código del programa. Ábralo haciendo clic primero en el símbolo de Raspberry Pi en la parte superior izquierda y luego en Programación en «mu». Si no ve esta opción, puede instalarla (Preferencias -> Software recomendado) o también usar el IDE de Thonny Python.

Primero, se le pregunta por el Modo Editor. Seleccione Python 3.

La consola de Python ahora se abre y se ve así. Escribiremos nuestro código en esto:

Haga clic en «REPL» en la barra superior, para que podamos ver nuestra salida de inmediato.

Si se pregunta por qué tomamos Python 3 y si puede usar Python 2, la respuesta es que ambos son posibles. Hay algunas diferencias entre esas dos versiones, pero no importan para empezar. El código que escribimos es ejecutable en ambas versiones.
Si está interesado en las diferencias en detalle, puede leer este artículo.

hola mundo plus

¡Basta de palabras, empezamos! En la consola queremos empezar con una típica aplicación “Hello World”. Todo lo que necesita hacer es escribir la siguiente línea y enviarla con Enter:

print("Hello World")

Con eso obtenemos nuestra primera salida:

Print es la función que llamamos aquí. Dentro de los corchetes, damos los parámetros que necesita la función. Como es una cadena de caracteres, tenemos que poner también las comillas al principio y al final, ya que otras palabras se interpretan como variables, a lo que llegaremos en un momento.

Ahora es bastante aburrido simplemente imprimir una oración. Por lo tanto, ahora creamos una llamada variable. Esta es una especie de marcador de posición que puede tomar diferentes valores y se puede abordar a través de su nombre. ¿Quieres un ejemplo? Aquí:

number = 7 print(number)

La ventaja de las variables es que podemos sobrescribir fácilmente su valor. En el siguiente ejemplo, creamos dos variables y agregamos la primera a la segunda (y guardamos el resultado en la segunda variable, así que lo sobrescribimos):

number_1 = 7 number_2 = 3.5 number_2 = number_1 + number_2 print(number_2)

Pero tenga cuidado: además de los números (enteros), las variables también pueden, por ejemplo, contener cadenas. Una adición no es posible aquí y conduciría a un error.

Por cierto: la variable se puede nombrar como desee, pero no debe comenzar con un número. Además, no se pueden utilizar caracteres especiales (aparte del guión bajo). Tampoco hay dos variables que puedan tener el mismo nombre.

Comentarios

Otra característica útil son los comentarios que explican el código en caso de que alguien más o usted vuelvan a mirar el código más tarde. Dichos comentarios están disponibles en todos los lenguajes de programación y también se pueden usar para «silenciar» partes del código para que no se ejecuten. Ese proceso se llama comentar.

En Python, los comentarios comienzan con un hashtag (#). El resto de la línea ya no se ejecuta. Aquí hay un ejemplo:

# This is a comment print("Line1") # another comment #print("Line2") print("Line 3")

Como puede ver, solo se muestran la línea 1 y la línea 3 porque comentamos el comando central.

Primeras Consultas

Como ya se ha dicho, las variables pueden tener diferentes valores. Para que podamos volver a consultarlos, también existe la posibilidad de hacerlo. Podemos hacer esto con if .. else. Aquí hay un ejemplo:

number = 7 # assuming an unknown number is added here if number == 10:     print("number = 10") elif number < 10:     print("less than 10") else:     print("greather than 10")

Hay mucho que considerar aquí:

  • Al final de if, elif o else línea debe haber dos puntos porque estamos diciendo que la condición ha terminado. También podemos vincular varias condiciones.
  • Para consultas existen las siguientes opciones == (igualdad), < (menor), > (más grande), <= (menor/igual), >= (mayor/igual). Al verificar la igualdad, no se debe usar el signo igual simple, ya que esto solo asigna variables.
  • Los comandos que se ejecutan si la condición es verdadera deben sangrarse con espacios. Todo debe estar al mismo nivel o sangrado por igual. El valor predeterminado es 4 espacios para sangrar.
  • Ahora mostraré un ejemplo extendido para que la sintaxis sea un poco más fácil de entender (persona ficticia con fecha de nacimiento el 30 de julio de 1980):

    birth_day = 30 birth_month = 7 birth_year = 1980 output = "" # empty string  if birth_year < (2017 - 18):     # user is old enough     output = "age > 18" else:     if (birth_month >= 6) and (birth_month <= 9):         output = "child has birthday in the summer"     else:         # here e.g. there is another command         output = "not a summer child" print(output)

    Como puede ver, es muy fácil anidar consultas. Solo es importante que siempre vigiles las sangrías, de lo contrario, obtendrás un error (o el programa se ejecutará incorrectamente).

    Bucles

    Ahora vamos un paso más allá y observamos los llamados bucles. Básicamente, estos representan repeticiones simples, por lo que después de cada repetición (también llamada iteración) se verifica si la condición especificada es (todavía) verdadera.

    Los dos tipos de bucles se denominan ForLoop y WhileLoop. El bucle while comprueba inicialmente si la consulta es verdadera. Aquí hay un ejemplo:

    x = 0 while x < 5:     print(x)     x += 1

    En cada repetición se comprueba inicialmente si x es menor que 5 y en caso afirmativo se ejecuta la parte sangrada. Enviamos el número una vez y luego sumamos 1 a x. Por lo tanto, se emiten los números del 0 al 4.

    En contraste, la estructura del ciclo for es un poco diferente. En Python, su definición es for .. in .. : donde el primer parámetro es una variable (que está disponible dentro del bucle) y el segundo parámetro es, por ejemplo, una lista. Tenemos las siguientes opciones para generar los números del 0 al 4:

    # first alternative for number in range(5): # range(x) outputs the numbers from 0 to x-1      print (number)   # second alternative for number in [0,1,2,3,4]:     print (number)

    Como puede ver, un bucle for es mejor para contar fácilmente.

    Externalización del código en archivos

    Como paso final de este tutorial, quiero mostrarle cómo escribir el código en un archivo y ejecutarlo. Dado que generalmente escribe bloques completos de código, también desea que se ejecuten secuencialmente. El llamado compilador, que traduce el código legible (comprensible para los humanos) en código de máquina, puede ejecutar comandos individuales o archivos completos.

    Haga clic en el símbolo de la carpeta en la barra de navegación y haga clic derecho en el espacio libre. En «Crear nuevo»> «Archivo vacío» puede crear un nuevo archivo:

    Nómbrelos, por ejemplo, «program1.py» (sin comillas). No olvides la extensión “.py”, así queda claro que es un script de Python.

    Puede abrir el archivo creado con un doble clic. Aquí puede escribir su código y guardarlo a través del menú. Pegué el código de arriba:

    Después de guardar, ya podemos iniciar el archivo. Esto sucede a través de la terminal/consola. Para hacer esto, haga clic en el icono a la derecha de la carpeta en la barra de tareas. Se abre una ventana negra en la que puede ingresar algo.

    Aquí escribes lo siguiente (enviar con Enter):

    python3 program1.py

    El programa ahora se ejecutará de principio a fin. Todas las consultas se ejecutan hasta que el programa llega al final donde no hay más comandos. Entonces termina.

    Esto fue todo con la primera parte de mi pequeña descripción general para comenzar a programar con Raspberry Pi. En la siguiente parte, nos centraremos en leer y escribir los pines GPIO, que podemos usar para controlar componentes electrónicos como LED y botones de lectura.

    PD: No se puede ver ningún código de Python en la imagen de entrada, ya que solo debería ser una imagen de símbolo 🙂

    PPS: Los comentarios/sugerencias (especialmente de los principiantes) son bienvenidos para que pueda adaptar las otras partes en consecuencia.