miércoles, 20 de mayo de 2026

MBot II


TEMPORIZADOR 



 




Actividad: El Robot de Rescate.

El mBot debe avanzar de forma autónoma por un pasillo. Si encuentra un obstáculo (una víctima o un derrumbe), debe rodearlo, medir cuánto tiempo ha tardado en esquivarlo y encender los LEDs en rojo como señal de alarma si el obstáculo estaba a menos de 10 cm.

Creamos una variable llamada distancia y otra llamada tiempo_esquiva. Al arrancar el programa, aseguramos que el robot empiece parado.
Justo antes de empezar a girar para esquivar el obstáculo, fijamos la variable tiempo_esquiva al valor del cronómetro del programa.
Al terminar la maniobra, restamos el tiempo actual menos el guardado para calcular cuántos segundos ha tardado en esquivarlo y lo mostramos en la pantalla del ordenador (usando el módulo matriz de LED si el mBot lo lleva).
Al arrancar mBot
|   Reiniciar cronómetro
|   Para siempre:
|   |   Fijar variable [distancia] a (distancia del sensor de ultrasonidos en el puerto 3)
|   |   
|   |   Si < distancia < 15 > entonces:
|   |   |   Llamar a función "Maniobra_Alarma"
|   |   Si no:
|   |   |   Avanzar a potencia 50%
|   |   |   Encender LEDs en color VERDE

Función maniobra_alarma :

|   Detener movimiento
|   Si < distancia < 10 > entonces:
|   |   Encender LEDs en color ROJO
|   Si no:
|   |   Encender LEDs en color AMARILLO
|   
|   Fijar [tiempo_inicio] a (cronómetro)
|   
|   [ programar los giros para esquivar el objeto]
|   Girar a la derecha a potencia 60% durante 0.8 seg
|   Avanzar a potencia 60% durante 1.2 seg
|   Girar a la izquierda a potencia 60% durante 0.8 seg
|   
|   Fijar [tiempo_final] a ((cronómetro) - tiempo_inicio)
|   Muestra en la matriz de LED o pantalla: "Obstáculo esquivado en:" [tiempo_final] "segundos"