Pages: [1]   Go Down
Author Topic: medir velocidad / movimiento robot  (Read 1935 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 4
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Saludos.
  Es mi primer post por aqui, aunque visito asiduamente el foro en busca de info. Estoy construyendo un pequeño robot motorizado y me gustaria poder detectar si el mismo esta en movimiento o se ha quedado atrapado/atascado.
  Basicamente esta equipado con un arduino duemilanove, un puente h-l298 y un par de motores 3v. En principio he puesto un par de fines de carrera y un sensor infrarrojo (HC-SR04) para detectar choques en algunos lados del robot, pero me gustaria saber si existe algun componente o método para detectar si el robot se mueve o ha quedado atrapado sin accionarse ningun fin de carrera ( para no tener que forrar todos los lados/esquinas con fines de carrera).

¿¿Alguna sugerencia o experiencia??
De antemano gracias por compartir la experiencia.



Logged

Malaga
Offline Offline
Sr. Member
****
Karma: 6
Posts: 319
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Con motores DC es muy difícil saber si está girando o no. En principio, si no se están moviendo, consumen más, se calientan más, y no generan picos de tensión en las lineas de alimentación.

Posiblemente haya alguien con más experiencia que te pueda ayudar más.
Logged

Vinciduino rocks!

Offline Offline
Newbie
*
Karma: 0
Posts: 4
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias ADLC por tu comentario, esperemos a ver si alguien más se anima y comparte alguna idea.

En principio lo unico que se me ocurre es establecer un valor maximo de toma de datos para la distancia que me devuelve el sensor HC-SR04, de tal modo que si pasados no se... 50 valores por ejemplo, se mide la misma distancia implicaria que el robot esta "atascado", no se mueve por eso el sensor siempre enfoca al mismo lugar y siempre mide lo mismo.

¿Alguna otra idea sobre este procedimiento??

Saludos
Logged

Malaga
Offline Offline
Sr. Member
****
Karma: 6
Posts: 319
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

¿Cómo de estable es la medidad de distancia?
Logged

Vinciduino rocks!

Offline Offline
Newbie
*
Karma: 0
Posts: 4
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Pues... no va como un tiro la verdad, realizando pruebas puede variar entorno a 1 cm, pero bueno, esa variación mediante programacion puedo considerarla la misma, asi si un valor da por ejemplo 10 cm y el siguiente 9 cm lo considero el mismo y supongo que no se ha movido. Así variaciones entre una medida y la siguiente de al menos 2 cm las considero movimiento.
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 65
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

a nivel  Hardware es tan sencillo  como medir la corriente que pasa por el puente H.  Si esta es elevada, implica que el  robot se esta moviendo, si esta es  residual, implica que esta parado, si esta es  muy elevada , fuera del valor nominal, implica que esta atascado y sus motores estan consumiendo demasiado.
Hay que  medir la  corriente  total suministrada al puente H mediante la lectura de la caida de tension en una  resistencia de valor bajo en serie con el circuito del puente H, y luego   leer este valor analogico  desde el  programa, determinando  que  valores son de referencia.
Logged

Oviedo, Spain
Offline Offline
Newbie
*
Karma: 1
Posts: 20
¡A cacharrear!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Y poner un encoder en cada rueda no lo ves viable?

Logged

e-mail: 1315cesarm@gmail.com
Twitter: @1315cesarm

Offline Offline
Newbie
*
Karma: 0
Posts: 4
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias manumoli y tato por  compartir la experiencia,  a priori la solución de manumoli me parece la más elegante, para realizar la propuesta por Tato tendria que modificar un poco la estructura, a ver si me pongo y os cuento como lo llevo a cabo. Me pondre un poco al dia con el tema de resistencias y demás. Ya que la alimentación del puente H es superior a 5V creo que tendré que tirar de divisores resistivos para medirla luego en el analogico de arduino.
Gracias!!
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 65
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

No has de modificar el voltaje. Tan solo hacer pasar la corriente total que consume el motor por una  resistencia de bajo  valor en ohmios. A medida que la corriente aumenta, la caida de tension en esta resistencia sera mayor, aqui ponemos un pin del  Atmega que nos mida el valor analogico de forma constante, con lo cual nos esta  Monitorizando el consumo del motor de forma continua.
Al sobrepasar  unos  determinados margenes, realizamos la accion que creamos oportuna en el Programa.
Logged

Pages: [1]   Go Up
Jump to: