Quizá una de las funciones más interesantes de los robots creados para robótica educativa es la que involucra los sensores de línea a los que había presentado en un viejo post hace ya algún tiempo.
El sensor de líneas permite dectectar "blanco" o "negro" sobre el suelo, lo cual resulta ideal para que el robot circule de acuerdo a un camino (o pista). Un programa básico para hacer funcionar al robot sobre una pista sería el siguiente:
En esta versión, el sensor detecta si se aleja de la línea blanca para corregir el curso con un giro según corresponda. El programa parece funcionar muy bien cuando lo probamos:
Pero... ¿si en vez de utilizar una línea blanca, utilizáramos una línea negra como pista? El desafío parece ser simple: invertimos los colores de detección y los correspondientes giros. Sin embargo, al probar el código en otra pista el robot pierde el curso y en curvas más exigentes se despista. Esto nos pone frente al desafío de intentar un programa más preciso. Veamos este intento:
Sin embargo, subsiste una falla... si el robot pierde la línea comienza a girar sobre sí mismo, lo cual reduce sus posiblidades de volver a encontrar la línea por la cual circulaba. ¿Cómo podría solucionarse esto?
Preguntas como esta se sucederán una y otra vez al probar el programa en pistas distintas. Y así es como el desafío se renueva y puede volverse más exigente. Porque no hay una única solución. No sirve con que funcione "teóricamente", el robot tiene lograrlo, hay que identificar el problema y proponer una hipótesis para corregirlo. Y cada vez que lo volvemos a pensar, hay algo nuevo que aprender.
Otros posts sobre robótica educativa en este mismo blog:
“Primeras experiencias en robótica educativa”, “Con ojos de robot”, “¡Alto ahi”: Programando con el control remoto” “Música Robótica” “Bailando por un programa” "MakeBlock para Linux" |
No hay comentarios.:
Publicar un comentario