Competencia: Desarrollo de Software
Palabras Clave: Programación, NXC, robótica.
Descripción
Se pide programar un robot para tour, que sea capaz de recorrer una ruta
establecida, dentro de un parque de atracciones. En este parque existen diferentes
obstáculos que deben ser evadidos para mantener la seguridad de sus pasajeros, y además
existen puntos de descanso en los que el robot debe detenerse para que los pasajeros
puedan tomar fotografías y el guía pueda indicar las atracciones del lugar. Esta ruta de tour
debe ser recorrida un total de 2 veces.
En términos prácticos, ya que no se cuenta con un robot (ni un parque de atracciones) a escala
real, con ayuda de su robot NXT, deben simular esta actividad en la mesa de competición
preparada para la ocasión.
Debe tomar en cuenta:
● Que la ruta no es precisa, pero el robot debe esquivar los obstaculos exactamente en la
manera pedida.
● El robot debe llegar y detenerse en todas las estaciones para tomar fotos y luego
continuar su recorrido. Cada una de estas pausas será de 2 segundos.
● Al volver el robot al punto de partida la primera vez, podrá ser mínimamente
reposicionado (con la mano) en la zona de partida de ser necesario.
● Cuando el robot termine su segundo recorrido (en el que también debe detenerse en los
puntos para sacar fotografías y mantener la ruta) el robot debe detenerse, y no seguir
funcionando.
Codigo Fuente documentado:
task main()
{
repeat (2)//repetir 2 veces el recorrido
{
OnFwd (OUT_BC,50); //encendido de motores y primera salida
Wait ( 1000);//espera 1 segundo
Off (OUT_BC); //apagado de motores en primera estación durante 2 segundos
Wait (2000);//espera 2 segundos
OnFwd (OUT_BC,50); //encendido de motores
Wait (2000);//espera 2 segundos
OnRev (OUT_C,50); //primera vuelta
Wait (450);//espera casi medio segundos
OnFwd (OUT_C,50);
Wait (3000);//espera 3 segundos
Off (OUT_BC); //apagado de motores en segunda estacion durante 2 segundos
Wait (2000);//espera 2 segundos
OnFwd (OUT_BC,50); //encendido de motores
OnRev (OUT_C,50); //segunda vuelta
Wait (500);//espera medio segundos
OnFwd (OUT_C,50);
Wait (4000);//espera 4 segundos
OnFwd (OUT_C,70); //realiza una curva para esquivar un obstáculo
Wait (1000);//espera 1 segundos
OnFwd (OUT_B,80);//el motor B gira en una velocidad de 80 para poder realizar la curva
Wait (1200);//espera 1,2 segundos
OnFwd (OUT_BC,50);// los 2 motores avanzan a una velocidad de 50
Wait (2000);//espera 2 segundos
Off (OUT_BC); //apagado de motores en tercera estación durante 2 segundos
Wait (2000);//espera 2 segundos
OnFwd (OUT_BC,50); //encendido de motores
Wait (1000);//espera 1 segundos
OnRev (OUT_C,50); //tercera vuelta
Wait (380);//espera unos segundos
OnFwd (OUT_C,50);//baja su velocidad a 50
Wait (4000);//espera 4 segundos
Off (OUT_BC); //se detiene en el punto de partida
Wait (2000);//espera 2 segundos
OnRev (OUT_C,50); //cuarta vuelta para quedar en posicion inicial
Wait (1000);//espera 2 segundos
OnFwd (OUT_BC,50);// se normalizan a una misma velocidad los motores
Wait (1000);//espera 2 segundos
}
Off (OUT_BC); //apagado de motores y fin del recorrido
}//fin
Vídeo de la actividad Realizada.
Reflexión
Creo que esta primera actividad de robot al principio, al igual que mis compañeros nos pareció un tanto difícil pero después con el tiempo aprendimos a manejar el lenguaje de estos y así poder completar este objetivo.
Creo que esta primera actividad de robot al principio, al igual que mis compañeros nos pareció un tanto difícil pero después con el tiempo aprendimos a manejar el lenguaje de estos y así poder completar este objetivo.
No hay comentarios:
Publicar un comentario