Diferencia entre revisiones de «Evitar obstaculos»
Línea 5: | Línea 5: | ||
El robot va a estar todo el tiempo haciendo estas subtareas, por lo tanto nuestro programa va a necesitar un bloque por-siempre.<br> | El robot va a estar todo el tiempo haciendo estas subtareas, por lo tanto nuestro programa va a necesitar un bloque por-siempre.<br> | ||
+ | |||
+ | Para hacer que el robot se vaya disminuyendo su velocidad a medida que se acerca a un objeto utilizamos un enfoque llamado reactivo, donde se mapea directamente lo sensado a los actuadores. En este caso vamos a cambiar la velocidad de los motores de manera proporcional con la distancia al objeto.<br> | ||
+ | |||
+ | [[Archivo:acercar_reactivo.png]] | ||
+ | |||
[[Archivo:principal.png|400px]] | [[Archivo:principal.png|400px]] | ||
− | [[Archivo:esquivar.png| | + | [[Archivo:esquivar.png|500px]] |
− | [http://www.fing.edu.uy/inco/proyectos/butia/files/ejemplos/evitaObsDistanciaDinamica.ta | + | [http://www.fing.edu.uy/inco/proyectos/butia/files/ejemplos/evitaObsDistanciaDinamica.ta Descargar este ejemplo para TortugarteButiá] |
Revisión del 21:41 3 sep 2011
Este programa intenta evitar obstaculos disminuyendo la velocidad al aproximarse a un obstaculo como medida de seguridad. En este ejemplo se utiliza solamente un sensor de distancia.
Lo principal es descomponer el problema en subproblemas más sencillos. De ésta manera podemos identificar dos subproblemas:
- disminuir la velocidad al aproximarse al mismo
- eludir al obstaculo
El robot va a estar todo el tiempo haciendo estas subtareas, por lo tanto nuestro programa va a necesitar un bloque por-siempre.
Para hacer que el robot se vaya disminuyendo su velocidad a medida que se acerca a un objeto utilizamos un enfoque llamado reactivo, donde se mapea directamente lo sensado a los actuadores. En este caso vamos a cambiar la velocidad de los motores de manera proporcional con la distancia al objeto.