Configuración del Software
- Abra la aplicación putty desde la carpeta Applications\PuTTY\<versión> en la unidad flash
La carpeta <versión> será algo así como “0,75”. Utilice la última versión disponible.
- Escriba el siguiente comando y presione enter para cambiar al directorio del código PiBbot
cd ~/pibot
- Escriba el siguiente comando y presione enter para descargar el código de Python para esta lección
wget http://osoyoo.com/driver/picar/picar-line-tracking.py
- Asegúrese de que el PiBot esté orientado a lo largo del recorrido de la cinta negra
- Escriba el siguiente comando y presione enter para que el PiBot siga la ruta de la cinta negra
python3 picar-line-tracking.py
- Mantenga presionadas las teclas Ctrl + C para detener el PiBot
- Escriba el siguiente comando y presione enter para cerrar la conexión SSH
exit
Explicación del Software
- Para ver el código que hace que PiBot se ejecute, realice los siguientes pasos
- Abra VSCode desde el directorio de Applications en la unidad flash
- Escribe “pi@pibot##” y presiona enter
Reemplace el texto “pibot##” con la etiqueta en el PiBot
La contraseña para ingresar cuando se le solicite es “DogsAndCatsAreNice2.” sin las comillas. Los '.' al final es importante!
Es posible que tarde un par de minutos en instalar algunos archivos en el PiBot.
- Busque la línea 37 en el archivo picar-line-tracking.py. ¿Cuál es el nombre de las variables en esa línea y las que están debajo? ¿Para qué crees que son según sus nombres?
Si no recuerda qué es una variable, revise la descripción de Lección 1
- Encuentre los lugares en el código donde se utilizan las variables de sensor#. ¿Para qué crees que son las variables sts#? ¿Es eso diferente de lo que pensaba antes?
La declaración “If” permite que el código tome decisiones basadas en el resultado de una prueba. Si el resultado es “Verdadero” o “1” entonces ejecuta asigna el primer valor, de lo contrario el resultado fue “Falso” o “0” y asigna el último valor.
A las variables sts # se les asigna un valor '0' si el pin GPIO es un '1' y un valor '1' si el pin GPIO no es un '1'.
Consulte la sección Descripción Eléctrica en la página anterior para obtener una descripción de cómo funcionan los sensores.
- Busque los otros lugares en el código donde se utilizan las declaraciones “If”. ¿Qué crees que está sucediendo con esas declaraciones “If”?
El segundo grupo de declaraciones “If” son independientes y no forman parte de la asignación de un valor a una variable. Este es el uso más común de la declaración “If”. Cuando la expresión después de “If” es “Verdadero”, ejecutará el código después de la declaración “If”; de lo contrario, omitirá ese código y pasará a la siguiente declaración.
Puede comprobar varios valores de una variable en una declaración “If” combinándolos con el operador “or”. Cuando alguno de los valores coincide, el resultado es “Verdadero”.
El operador “or” es parte de la lógica booleana que permite a las computadoras tomar decisiones basadas en cualquier entrada. La lógica booleana es la base de cómo funcionan las computadoras.
Se pueden agregar comentarios al código para describir lo que está haciendo. Siempre comienzan con un carácter ”#” y todo lo demás en la línea posterior es un comentario y no se ejecuta como parte del código. Los comentarios en el código no siempre son correctos. ¿Puedes detectar los errores?
- Mira la línea 114 del código. ¿Qué crees que hace esta línea?
La instrucción “While” es similar a la instrucción “If”. Continuará ejecutando el código bajo él siempre que la expresión sea “Verdadero”. A esto lo llamamos un ciclo porque cuando llega al final del código bajo la instrucción “While”, vuelve al principio. ¿Cuánto tiempo crees que seguirá funcionando este ciclo “While”?
- El PiBot se mueve con bastante brusquedad mientras intenta mantenerse en la línea. ¿Cómo crees que puedes cambiar el código para que siga la línea con más fluidez? Realice esos cambios en el código y guárdelo con File→Save
- Abra una terminal en Visual Studio Code desde el menú Terminal→ New Terminal
- Escriba el siguiente comando y presione enter para hacer que el PiBot se mueva con sus cambios
python3 picar-line-tracking.py
- Cuando haya terminado de probar sus cambios, escriba el siguiente comando en la terminal y presione Intro para apagar el PiBot
sudo shutdown -h now
- Haga clic en el pequeño rectángulo verde en la esquina inferior izquierda de la pantalla y seleccione “Close Remote Connection”
- Espere de 3 a 5 minutos para que la luz verde de la Raspberry Pi deje de parpadear y apague el interruptor de la batería PiBot