fbpx

Expresate

Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:

Avisos
Vaciar todo

Proyecto robot velocista.

318 Respuestas
21 Usuarios
0 Reactions
83.2 K Visitas
_jm_
Respuestas: 961
 JM
Topic starter
(@_jm_)
Prominent Member
Registrado: hace 19 años

Hola pues me dispongo a desarrollar un velocista en un plazo de un año, es decir, para el próximo cosmobot si dios o la caixa quieren. Y me gustaría pedir consejo y escuchar opiniones sobre diferentes puntos.

La base va a ser un coche rc de escala 1/28, como el miniz del cosmobot, esta vez otro modelo de coche, al que he podido incorporar un microservo de 0.1 s 60 grados, para el giro.

Mi primera duda surge en que tipo de sensores para detectar la línea usar, o cuáles hay disponibles. Lo ideal es que cuanto más pequeños mejor, y probablemente haga lectura analógica sobre digital, ya veremos como afectan los cambios de luz.

Yo hasta ahora sólo conozco dos modelos de sensor, en CNY70 y el QRD1114 de fairchild que nunca he usado, en el cosmobot vi a gente que llevaba diversos tipos de sensores, algunos de ellos eran muy pequeños, a ver si alguien me puede indicar otro modelo de sensores distintos de los dos anteriores, o foto trt y foto diodo.

Segunda duda, es como colocar los sensores, mi idea inicial es volver a usar dos placas de sensores, una delante y otra detrás, la de detrás es muy útil para conocer la posición del robot respecto a la línea, para poder realizar cambios de carril y acelerar, cuando el robot está centrado.

En el cosmobot vi a un robot, este http://es.youtube.com/watch?v=IVLpgTclsrI que usaba esa técnica para seguir la línea, me comentaron que esta era la manera correcta de hacerlo, o como se debia hacer. Me gustaría saber que ventajas tiene de hacerlo de esta forma frente a la clásica placa de sensores fija en el coche. Supongo que de esta forma se podrá obtener un error mucho más exacto.

Y por último que microcontrolador usar, he estado leyendo y creo que la mejor elección para este tipo de proyecto es un DSP, además de un mayor número de MIPS llevas los multiplicadores por hard, bastante útil a la hora de realizar operaciones.

Las señales que habría que leer en principio serían los sensores y un encoder que lleve el coche, que aún no sé muy bien donde se lo voy a poder colocar, quizás en el piñon o en la corona, y luego por último leer la batería. Las salidas el motor y el servo.

Aunque con un micro de 8 bits bien programado se puede hacer todo esto y más, yo creo que es un buen proyecto para iniciarse con micros mayores (almenos para mi), aún no sé la cantidad de operaciones que habría que hacer por segundo, mi idea inicial siendo muy optimista, es alcanzar los 2 m/s de media.

Así que a ver si alguien me puede aconsejar un micro para empezar, de momento yo he pensado en el dsPIC del que ya tendría el programador, por lo que el coste sería cero. Pero puestos a aprender no sé si sería mejor irme al mayor fábricante, es decir texas instruments, lo que no sé es cuánto costaría un DSP de estos, y cuánto el material para el desarrollo. La idea es usar un micro smd frente a un kit, por razones de espacio.

Tb me estoy iniciando estos días con atmel, que supongo que tendrá su alternativa a usar.

Gracias. S2

Responder
317 respuestas
ranganok
Respuestas: 3875
(@ranganok)
Ardero
Registrado: hace 19 años

JM, mirate esto http://skiras.blogspot.com/2008/05/3ms- ... nicas.html que te puede servir para entender un poco mejor el problema.

Sobre estabilidad del robot y distancia de los sensores estoy escribiendo dos post más de la misma serie (3 m/s), pero todavía tardaré un poco en sacarlos (están en fase de investigación todavía).

S2

Ranganok Schahzaman

Responder
_jm_
Respuestas: 961
 JM
Topic starter
(@_jm_)
Prominent Member
Registrado: hace 19 años

Si ya veo como es, gracias, me había confundido en pensar en el diferencial donde tenemos distintas velocidades angulares de los sensores proporcionales a la distancia al eje de los motores.

En el coche tengo que ver como afecta la distancia.

Responder
beamspot
Respuestas: 1132
(@beamspot)
Noble Member
Registrado: hace 17 años

En los jpg's que añado se puede ver el concepto del sensor 'serial' con los colectores en común que propongo. Esto se puede leer en analógico y en digital. El segundo jpg es un comparador para hacer una lectura analógica que sea independiente de la luz ambiente.

En realidad es un filtro sencillo, y que se puede añadir a la salida del colector común. La ventaja de este método es que sería más rápido que hacer lecturas analógicas con el ADC, o cualquier otro método que necesite intervención del uC. Además es más rápido que leer el mismo en digital, ya que con menos variación (y por ende menos tiempo) ya se detecta el cambio.

Por supuesto, un sistema paralelo es siempre más rápido, pero este se podría leer en 200 us o menos, lo cual significa 2mm o menos, a 10m/s.

Habría que probarlo, de todas maneras. ¿Alguien se apunta?

Una vez probado, lo añadimos a la lista de placas prediseñadas que propone Ranganok.

Responder
_silent
Respuestas: 41
(@_silent)
Eminent Member
Registrado: hace 17 años

Jota, aunque ya te lo ha puesto Ranganok, aqui explican lo mismo que en su post:

http://www.disam.upm.es/cybertech/Nacio ... miento.pdf

Lo de una gran placa con la que leer las dos lineas a la vez, yo no lo veo. Una cosa es circular por el centro de la pista, leyendo una u otra linea según para donde te vayas, y otra querer las dos a la vez, lo cual haría que a poco que te vayas, con una placa tan ancha, pisarías roja. Además, la única ventaja que veo a ese sistema es que aumentas un poco el radio mínimo de curvatura, pero seguramente no merezca la pena en proporción a lo que vas a ganar en distancia. Por otro lado, en una curva la placa se descolocaría mucho, aunque esto habría que verlo despacio en cada caso, pienso que, o el robot es muy grande, o es muy fácil que se te atraviese la placa de sensores en mitad de una curva o se descoloque e incluso se salga.
La ventaja de ir entrelineas es que en las curvas, ganas más margen de maniobra al ir de una linea a otra y etar más lejos de la roja, puesto que si tienes el robot centrado en una linea, ya lo tienes "medio fuera" para las curvas en ese lado. Si estás en las dos a la vez, la curva venga por donde venga, te pilla mal. es decir, que con una placa de sensores tan grande, no puedes bandear nada en las curvas puesto que enseguida pisarías roja, con lo cual el robot tendría que seguir perfectamente cada curva si desviación casi, pero, si el robot hace eso, es mejor correr por el carril de dentro que es más corto.

Mejor que eso Jota, es un cambio de carril.Ir buscando siempre el carril de dentro y no preocuparse mucho por las pasadas de frenada aunque controlandolas, porque si la curva es hacia dentro, te irás contra la linea de fuera y si es hacia fuera, se supone que el el radio mímino estará fuera y tú irás por el radio grande, con lo cual, no deberías irte.

Responder
ranganok
Respuestas: 3875
(@ranganok)
Ardero
Registrado: hace 19 años

beamspot, hay una cosa que no me cuadra... Estas pasando la señal por un filtro paso alto y luego digitalizandola a 1 bit (comparador). Si al LED estas aplicando una señal AC la salida del comparador será también una señal cuadrada que tendrás que integrar...

Ok ya veo por donde vas, a la salida del comparador tendrás una señal cuadrada de la misma frecuencia que la del LED por lo tanto contando el tiempo entre flancos puedes discriminar las señales que no sean tuyas.

¿No sería más fácil un comparador con histéresis? ¿o un filtro pasa banda con un integrador al final que de señal 1 o 0 limpia?

S2

Ranganok Schahzaman

PD: Propongo el siguiente circuito: primero un filtro paso banda y luego un comparador con histéresis. En medio de los dos un rectificador de señal (con diodo Schottky) o de precisión y un condensador para filtrar la salida.

Responder
Página 21 / 64
Compartir: