4.4 Evita obstáculos

Bueno ahora hay que hacer el típico programa que evite los obstáculos para que nuestro rover sea autónomo ¿a qué esperas? tiene ganas de salir ya solito, ¡ya es mayor!

image-1647950337501.gif

Space Science Animation by European Space Agency ESA

Solución

La solución no es única, una propuesta es hacerlo con las librerías que hemos aprendido:

Ahora ya nuestro rover puede salir libre a recoger piedrecitas:

Fichero Roomba.py

import RPi.GPIO as GPIO
import time
from VARIABLES import *
import MOVIMIENTOS
import MOVIMIENTOSPASO

while True:
    sensorR= not (GPIO.input(DR))
    sensorL= not (GPIO.input(DR))
    if not(sensorR and sensorL):
         MOVIMIENTOS.FORDWARD(50)
    if (sensorR and sensorL):
        MOVIMIENTOSPASO.BOTH(50,-10,50,-10)
    if (sensorR and not(sensorL)):
        MOVIMIENTOSPASO.BOTH(50,-5,50,-5)
        MOVIMIENTOSPASO.BOTH(40,-5,40,5)
    if (not(sensorR) and (sensorL)):
        MOVIMIENTOSPASO.BOTH(50,-5,50,-5)
        MOVIMIENTOSPASO.BOTH(40,5,40,-5)

 


Revision #3
Created 22 March 2022 11:58:16 by Equipo CATEDU
Updated 22 March 2022 12:04:19 by Equipo CATEDU