Tengo un campo lleno de obstáculos, sé dónde se encuentran y sé cuál es la posición del robot. Usando un algoritmo de búsqueda de ruta, calculo una ruta para que el robot la siga.Guía de un robot a través de un camino
Ahora mi problema es que estoy guiando el robot de la cuadrícula a la cuadrícula, pero esto crea un movimiento no tan suave. Comienzo en A, giro la nariz hasta el punto B, me muevo recto hasta llegar al punto B, enjuago y repito hasta que se alcanza el punto final.
Así que mi pregunta es: ¿Qué tipo de técnicas se utilizan para navegar en un entorno así para que tenga un movimiento suave?
El robot tiene dos ruedas y dos motores. Cambio la dirección del motor girando los motores en reversa.
EDIT: Puedo variar la velocidad de los motores básicamente el robot es un arduino más ardumoto, puedo suministrar valores entre 0-255 a los motores en cualquier dirección.
si lo que quieres hacer es suavizar el movimiento, tratar de calcular una curva spline para el camino a seguir –
@steven eso es en realidad lo que yo quiero, sino lo que no tienen una La clave es cómo mapeo la curva a las velocidades del motor. –
Esa sería una relación basada en la pendiente de la curva en el locus actual a lo largo de ella; esencialmente, una línea recta tiene una proporción de motor-potencia de rueda de 1: 1, con izquierdas agudas y derechos como 0: 1 y 1: 0. Los giros curvados son, por lo tanto, fracciones, por lo que un giro suave hacia la izquierda puede ser 0.75: 1. –