Autor Tema: Proyecto de Robot Sigue-Linea...  (Leído 113863 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado dogflu66

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3510
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #90 en: 29 de Septiembre de 2005, 09:07:00 »
Con respecto al PWM quisiera añadir que estas entradas deshabilitan la polaridad de sus salidas, con lo que el motor que daria libre (en robotica se llamaria parada de los motores por Float) en esta forma de control los motores no llegan a parar realmente ya que por inercia siguen girando durante un tiempo dependiendo de las caracteristicas del motor, peso del bot, agarre de las ruedas, etc. Y cuando se requiere precision lo que se hace es parada por Off que seria colocando los dos hilos del motor a 1, con lo que el motor para pero ademas se le hace un cortocircuito a los dos terminales ya que los dos van conectados al mismo polo, con lo que se produce una parada mucho mas rapida, a esto se le denomina parada por motor…. Es una caracterictica que tienen todos los motores electricos cuando se le cortocicuitan sus terminales…. Este sistema da una mayor precision a la hora de realizar una determinada tarea. Este efecto es mas conocido en los alternadores cuanto mas carga se les solicita mas cuesta que gire el alternador o mas potencia se necesita para hacer que siga girando.
Saludos desde Granada, España.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #91 en: 29 de Septiembre de 2005, 09:42:00 »
Dos preguntas, Dogflu:
- ¿hay algún consumo cuando los dos bornes de la bobina están a 1?, supongo que al desarrollar una potencia (la parada en seco) lo hacen consumiendo energía.
- si lo hay, ¿cómo se explica si no hay diferencia de potencial entre ellos? loco

Es curiosa la explicación: en cuanto pueda probaré a hacer lo que cuentas y a medir las revoluciones del motor a un mismo % de duty con mi método y con el vuestro.

Desconectado dogflu66

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3510
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #92 en: 29 de Septiembre de 2005, 10:06:00 »
Durante la parada a Off se supone que la energia la suministra el motor (al seguir girando se convierte durante un breve instante en un generador de corriente) y al estar los dos pin a 1 se supone que estan en corto a travez del mismo driver, por lo que seria el driver el que absorbe la corriente del motor, claro esta que el driver por el tema inherente a su construcción nunca lleva los dos pin exactamente a cero pero el efecto se aprecia muy bien girando las ruedas con la mano haciendo la parada en modo Off y modo Flota.

Y cuando los dos bornes estan a 1 no debería de haber consumo de alimentación ya que los dos bornes del motor están conectados al mismo polo, no importando que esto estén conectados directamente... o a través del driver (no se si te refieres a esto ultimo).
Saludos desde Granada, España.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #93 en: 29 de Septiembre de 2005, 10:14:00 »
Aha, ahora lo entiendo. La energía de la frenada no la proporciona la batería, sino el mismo motor actuando como generador.
Curioso, sí señor.
Muchas gracias

Desconectado 5GTT

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 915
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #94 en: 02 de Octubre de 2005, 18:02:00 »
Este es mi codigo que como comente, no hace que gire el motor trasero controlado por PWM, haber quien me puede aclarar donde estoy metiendo la pata de novato. Muchas gracias por la ayuda.

---------------------------------------------------------------------------------------------------------
//En B0, B1 y B2 entra la señal de los sensores CNY70
//En A0 y A1 esta la salida a la logica del driver L293B para el sentido de giro del tren delantero


#include <16F876A.h>

#use Delay(Clock=4000000)

#fuses xt,nowdt,noput,nobrownout,nolvp,noprotect

#use fast_io (c)
#use fast_io (b)

void main(void)
{
   setup_ccp1(CCP_PWM); // Configura CCP1 como PWM
   set_tris_a (0x00);   //Todo salida
   set_tris_b (0xff);   //todo entrada
   set_tris_c (0x00);   //Todo salida
   long duty_PWM1=125;  //variable duty a 125
   setup_timer_2(T2_DIV_BY_16,124,1);  //PR2 = 124
   set_pwm1_duty(duty_PWM1);  

   while(1)
   {
           if(input(PIN_B0)==1)          //señal en el CNY de la izquierda          
           {
               long duty_PWM1=31.25;
               set_pwm1_duty(duty_PWM1);  //Duty=0.5ms reduce velocidad
               output_high(PIN_A0); //A0 a 5V  introduce logica en el driver para que gire
               output_low(PIN_A1);  //A1 a 0V
           }

           if(input(PIN_B1)==1)         //señal en el CNY de la derecha      
           {
               long duty_PWM1=31.25;
               set_pwm1_duty(duty_PWM1);  //Duty=0.5ms
               output_high(PIN_A1); //A1 a 5V
               output_low(PIN_A0);  //A0 a 0V
           }

           if(input(PIN_B2)==1)        //señal en el CNY del centro            
           {
               long duty_PWM1=125;
               set_pwm1_duty(duty_PWM1);  //velocidad maxima            
               output_low(PIN_A1);  //A1 a 0V logica para seguir recto
               output_low(PIN_A0);  //A0 a 0V
           }
    }
}
---------------------------------------------------------------------------------------------------------

Saludos y gracias.

Edito: Se me olvidaba comentar que cuando consiga que funcione el PWM voy a darle la vuelta al coche, para que las ruedas que giran vayan atras y las motrices delante, de esa manera aunque sea menos estetico el coche podra tomar curvas de menor radio.

Saludos.

Tutoriales y proyectos de electrónica

Desconectado RaDoN

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1498
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #95 en: 03 de Octubre de 2005, 06:57:00 »
La verdad esque desmonte el bot antes de llegar a probar el PWM ... ¿probaste los pulsos nocturno por las entradas de las puertas en lugar de las que habilitan?

Me gustaría escuchar tu opinión y resultado de haber comparado, antes de conectar el hard ya de una forma concreta.

Por cierto, a que frecuencia probaste los PWM?
Si juegas contra el mejor, pierdes como los demás.

Desconectado 5GTT

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 915
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #96 en: 03 de Octubre de 2005, 08:40:00 »
Probando un LED, la luz se mantiene constante, no noto variacion alguna, probare a cambiar los dutys.

El tema de dar la vuelta al coche es simplemente por anticipar el giro, ahora mismo al llevar los sensores justo delante de las ruedas delanteras, el giro comienza con el coche ya encima de la curva, poniendolo al reves, el coche empieza a girar al principio de esta. Asi que el sensor detecta el giro antes una distancia igual a la del coche.

En realidad creo que tambien debe haber alguna explicacion fisica de que gire mas, aunque no se darla, solo se que cuando voy a aparcar en bateria con el coche de verdad si voy de culo puedo en una maniobra y si voy de cara no, por que no me abarca el giro xD.

Un saludo.

Tutoriales y proyectos de electrónica

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #97 en: 03 de Octubre de 2005, 12:32:00 »
Para Radón: no he probado a meter PWM por la patilla de dirección; no me ha dado tiempo y seguramente voy a tardar. Las frecuencias que probé fueron varias; no determiné ninguna que me gustase más que otras.

Para 5GTT: claro, el radio de giro es el mismo tanto hacia delante como hacia atrás. La diferencia es que vas a acercar los sensores al punto de rotación central, que se supone que está sobre el eje trasero. Creo que cuando montes los sensores en la parte de atrás del coche, lo mismo dará que vayas hacia delante o hacia detrás.

Desconectado dogflu66

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3510
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #98 en: 07 de Octubre de 2005, 16:25:00 »
Estuve probando los motores del bot controlandolos por pwm, y probe a 77hz, 39hz, 20hz y 9hz… funcionan bien con todas menos con la de 9… asi que para no robar mucho tiempo a la cpu utilizare 20Hz.
Saludos desde Granada, España.

Desconectado RaDoN

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1498
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #99 en: 07 de Octubre de 2005, 16:47:00 »
20 Hz ?? eso es una frecuencia lentisima, yo habia escuchado por otros lares, frecuencias del orden de 5khz para los PWM a motores DC locoHelado

Por cierto, la resolucion del modulo CCP no da para una frecuencia tan lenta, lo implementaras a base de interrupciones supongo y es al menos es mucho mas trabajoso. Solo por curiosidad si tienes 1 min para probar sobre las frecuencias de las que te hablo ...Fumador
Si juegas contra el mejor, pierdes como los demás.

Desconectado dogflu66

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3510
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #100 en: 07 de Octubre de 2005, 20:20:00 »
Hola Radon.
Cierto no utilizo los modulos CCP, utilizo las interrupciones… probe los motores trabajando a 5K y 10K y observe que al 50% apenas los motores se mueven y emiten un pitido muy agudo y molesto... en general funcionan, pero a la frecuencia de 20h, me funcionan bien… aprovechan mejor la escala de trabajo y suenan a motor normal y corriente… si alguien puede exponer su experiencia en control de los motores DC normales por PWM y puede añadir algo......
Saludos desde Granada, España.

Desconectado RaDoN

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1498
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #101 en: 08 de Octubre de 2005, 02:58:00 »
Pues ahora me sembraste de dudas, habra que investigar mas sobre con que frecuencia de PWM atacar el motor, por que ami me gustaria usar este módulo.
Si suena el pitido que dices no creo que sea muy bueno para el motor jeje, aver si monto un chiringuito para hacer pruebas yo tb en cuanto tenga tiempo Avergonzado
Si juegas contra el mejor, pierdes como los demás.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #102 en: 08 de Octubre de 2005, 03:11:00 »
Todos los motores electricos de modelismo son controlados por un regulador, cuya misión supongo que es entregarles PWM. No conozco la frecuencia de trabajo, aunque intentaré medirla, pero lo que es curioso, es que al encenderlo suenan unos tonos como si el motor fuera un altavoz.
Supongo que el regulador le entrega unos KHz de frecuencia audible y de ahi el pitido. Así que no creo que sea malo para los motores.

Desconectado Rav3N

  • PIC12
  • **
  • Mensajes: 86
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #103 en: 08 de Octubre de 2005, 10:52:00 »
hola chicos!!

Hace tanto tiempo q no paso por acá....

Yo estoy intentando hacer tb un sigue-lineas, pero como mi programación es más bien penosa tirando a patética estoy utilizando la "programación por hardware" y el esquema lo quité de x-robotics esquema y circuito impreso

Una foto del crio en cuestión (os pongo las de la page, me da vergüenza enseñar el mio Avergonzado)



Descripción: He aquí un diseño super simple para montar un rastreador de líneas básico con 2 sensores CNY70 y componentes discretos de fácil compra en cualquier comercio de electrónica.



En el esquema mostrado se puede apreciar como funciona el circuito, el led emisor del sensor CNY70 se alimenta a través de una resistencia R1 de 680 &#937;, cuando una superficie reflectante como el color blanco de la superficie por donde se moverá el rastreador, refleja la luz del led emisor, el fototransistor contenido en el sensor CNY70 baja su resistencia interna entre Colector y Emisor con lo cual conduce la corriente que hace que también entre en conducción el transistor Q1 que estaba polarizado a masa por medio de la resistencia R2 de 10 K&#937;. Q2 sirve para invertir la señal para que de este modo se desactive el motor cuando ve blanco y se ponga en marcha cuando ve negro el sensor, con lo que al activarse Q1 hace que se active Q2 cortando a Q3 con el, ya que este ultimo estaba activo porque esta polarizado por R3, con lo cual lo que a pasado es que la salida del motor se a desactivado cuando el sensor a detectado una superficie reflectante, en estado de reposo la salida estará siempre activa y Q3 conduciendo. Los 2 circuitos se pueden alimentar con 4 pilas normales de 1,5V puestas en serie con lo que se obtienen 6V, dependerá del consumo de los motores elegir pilas o baterías mas potentes.

Montaje: El robot se compondrá de un circuito que podremos hacer fácilmente con una placa de topos o de prototipos o usando los fotolitos expuestos y este tendrá dos circuitos exactamente iguales uno para cada sensor-motor e irán cruzados con lo que el sensor izquierdo actuara sobre el motor derecho y el sensor derecho sobre el motor izquierdo tal como se muestra en la ilustración.

Los motores tienen que ser de corriente continua y habrá que fabricarles una reductora si no disponen de ella para mover las ruedas, contra mas grandes sean las ruedas, mas velocidad alcanzara el robot, aunque no hay que pasarse con el diámetro de estas porque si no en las curvas se saldrá de trayectoria, unos 6 cm. es lo ideal.



Los sensores irán dispuestos mirando al suelo y a unos 2 o 3 mm de separación desde el suelo a la superficie del sensor y la separación entre ambos sensores será para que quede dentro de la línea negra que vayamos a usar como trayectoria. En mi montaje he utilizado dos servos trucados de manera que queden solo los motores CC con la reductora osea sin circuito de control pero se puede usar cualquier motor de CC de unos 5 o 6 voltios y que no consuma demasiado para no agotar las pilas o baterías demasiado deprisa. El trazado lo podremos hacer sobre una cartulina blanca y para trazar las líneas usar cinta aislante negra, tener cuidado en no hacer curvas demasiado cerradas ya que si el robot es muy veloz (ruedas grandes) se saldrá de la trayectoria por inercia y al sacar los 2 sensores fuera de la línea no volverá a entrar (recordemos que este sistema no es microcontrolado) por lo que haremos algunas pruebas antes de trazar el camino final.

Funcionamiento: Pondremos el robot en la superficie de fondo blanca y lo alimentaremos, como los dos sensores están activos los motores permanecerán parados, ahora empujaremos el robot hasta la línea de trayectoria negra, al entrar uno de los sensores con la línea negra este hará que el motor del lago contrario empiece a funcionar con lo que el robot entrara por si solo en la trayectoria, cuando tenga los dos sensores viendo negro los 2 motores estarán en marcha con lo que el robot avanzara en línea recta, ahora bien si el llega a una curva y supongamos que el sensor izquierdo sale de la línea negra entonces provocara que el motor del lado contrario (motor derecho) se desactiva con lo cual el robot girara a derecha (como un tanque) entrando de este modo en la línea negra otra vez... para el caso contrario pasa lo mismo pero con el otro motor y sensor.

Además podeis ver un video

Como motor en mi modelo he comprado el Twin Motor Gearbox (tam70097) de  Tamiya ya que los utilizo para todos mis proyectos (q por el momento son pocos)


Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Proyecto de Robot Sigue-Linea...
« Respuesta #104 en: 08 de Octubre de 2005, 12:08:00 »
Bienvenido de nuevo  Rav3n. No se puede ver el vídeo.