Autor Tema: bf20 vario + servos caseros + EMC  (Leído 21177 veces)

abu

  • Visitante
bf20 vario + servos caseros + EMC
« en: 20 Diciembre 2010, 13:45 »
Pues lo prometido es deuda. Empieza el publireportaje ;D

No me gusta probar las cosas tiradas sobre la mesa. Asi que, de la basura ;), un chasis de PC (antiquisimo y rara pieza; un 386 de AMD a 40 Mhz con coprocesador IIT independiente).
El trafo es de una fuente de 12v, 7A que tenia con la placa quemada. Es de dos secundarios. Solo he usado uno, que da 28v una vez rectificada la corriente. La bateria de condensadores tiene 12 elementos en paralelo, con un total de 26400 uF/63v
La alimentacion digital la he tomado de la fuente del PC (12v), que aun funcionaba :o :o
Se ve tambien la placa BOB para conexion paralelo al ordenador. Es simple, sin optos, maneja 4 ejes, una input y una output.




Uno de los driver. Hungaro. Hasta 80v / 20A. Ajuste PID por soft (USB al ordenador). ENCODER ya sabemos lo que es y USB tambien :). MAIN es la conexion a la BOB y el conector verde.....alta tension y motor ::). Ya hablaremos largo y tendido de ella.



Inciso. Trafo de microondas con un arrollamiento rapido para probar que va......Y VAAAA .palmas .palmas. Sera el definitivo.......supongo ::)


Conjunto de cosas. Las vemos mejor una a una.


Un encoder desarmado, otro tal como me lo enviaron y un casquillo que me he hecho para centrar la base del encoder con el eje del motor. Los compre hace unos meses en Ebay..........nuevos, pero de superoferta...........a 12 € la pieza .yupi.
La placa de al lado es un adaptador de encoder; de single a diferencial, que es lo que acepta el driver. Coste cero. Viene incluido ;D


Motor hackeado............DE PATINETE ELECTRICO ;D ;D ;D.........24v, 125w.
La tapa era ciega. Taladre y rosque a M3 el extremo del eje , acortando su longitud en 1,5 mm., y un suplemento de diametro 6 (del rodamiento hasta el final). Un pedacillo de varilla M3 y los 1,5 milimetros que hundia el eje en el rodamiento me han permitido fijarlo perfectamente centrado.



El otro motor, totalmente terminado. Se ven las resistencias pullup que Avago "obliga" a instalar en ambos canales


Para el eje Z, tengo preparado este "monstruo" :P. 24v, 250w.


continuara...............
« última modificación: 20 Diciembre 2010, 14:50 por abu »

Desconectado Santiago

  • Global Moderator
  • Oficial 1ª
  • ****
  • Join Date: Oct 2009
  • Mensajes: 3972
  • Ubicación: El Molar-Madrid
Re:bf20 vario + servos caseros + EMC
« Respuesta #1 en: 20 Diciembre 2010, 14:53 »
Muchas gracias y ya nos iras contando lo del reciclaje me ha gustado .palmas .palmas
Emco Maximat Mento10, Fresadora BF30 CNC,sierra de cinta femi 780 y muchas ganas de arrancar viruta

Desconectado Vider

  • Aprendiz
  • *
  • Join Date: Sep 2009
  • Mensajes: 1795
  • Ubicación: Madriles
Re:bf20 vario + servos caseros + EMC
« Respuesta #2 en: 20 Diciembre 2010, 15:09 »
Estupendo!!!

Juer me acaban de llegar justo AHORA (al mismo tiempo que veo el post) 3 encoders de AVAGO  ;)
Bridgeport Series I convertirda a CNC, Colchester Chipmaster 5x20, Sierra cinta S121G y muy poco tiempo para usarlos ...

Alejandro

  • Visitante
Re:bf20 vario + servos caseros + EMC
« Respuesta #3 en: 20 Diciembre 2010, 16:08 »
Decirte que se monstruo de 24v 250w tambien lo tengo yo con una fuente de 16 amp que compre en china, y agarrate la fuerza que tiene.Con la reductora adecuada, es capaz de mover el carro de mi HOLKE hacia arriba y hacia abajo sin problemas, y he de decir que dicho carro pesa mas que la bf 20 entera ;D.Es un motor de una bici electrica, y va cojonudo


saludos, y sigo de cerca este post

Tou

  • Visitante
Re:bf20 vario + servos caseros + EMC
« Respuesta #4 en: 20 Diciembre 2010, 16:18 »
 :o  .palmas .yupi

Más, más porfa  ;D
Tengo la misma fresadora, los encoder y ganas de hacer lo mismo.

abu

  • Visitante
Re:bf20 vario + servos caseros + EMC
« Respuesta #5 en: 20 Diciembre 2010, 18:22 »
Vamos con la jodida (y bendita ;)) teoria.

AJUSTANDO EL PID

Eso que los anglos llaman tuning. Si digo alguna majaderia, ruego.......¡¡¡¡que digo ruego!!!!!......EXIJO.......que se me de un varapalo correctivo .bien

Esto del PID ya sabreis lo que es. Y si no, pues lo dire a lo bruto. El PID es a un servo lo que una puesta a punto de encendido y carburacion es a un coche.......de carburacion, claro :D :D
Cada servo es de su padre y de su madre. Dos servos distintos responderan de distinta forma al mismo estimulo (corrientazo al canto, vamos :D). Y ademas, malamente al primer intento.

Para ajustar el PID, tenemos el metodo ensayo-error.........que funciona mas bien mal.
Tambien tenemos el metodo "fino" de simulacion matematica. Paso de el porque los contructores chinos de los patinetes no entienden de parametros del motor ni yo tengo el instrumental necesario para averiguarlos......que no tengo datos, vamos .confuso2
Pero hay una tercera opcion, que no es una panacea pero es lo que hay; el metodo de Ziegler-Nichols. Apuntad esta wiki:
http://en.wikipedia.org/wiki/Ziegler%E2%80%93Nichols_method
PID es el acronimo de Proporcional-Integral-Derivativo. Usease...hay que buscar tres valores.

Se comienza por dejar a cero los terminos integral y derivativo y se juega con el valor del termino proporcional hasta encontrar el minimo numero que provoca la minima oscilacion sostenida y constante posible. A esta oscilacion hay que buscarle la amplitud y la frecuencia. Son los numeros Ku y Tu de la tabla de la wikipedia.

En la web de los drivers se descarga el software de configuracion. Con todo conectado, se ve la deteccion del driver, numero de serie CDTOWIYX, que he asignado como X-axis. Se selecciona en la lista y se activa el boton "Connect to device". El programa lee memoria eeprom del driver, mediante USB, con los parametros de configuracion y ya podemos pasar a la pestaña importante....... "PID tuning"




Tengo conectado un solo driver de momento y los tres parametros para jugar son Ap, Ad y Ai. He puesto Ap a 650 y Ad, Ai a cero. Muevo 100 steps...............y el motor hace lo que se ve en la onda verde. Comienza a oscilar y se va amotiguando hasta pararse en posicion cero (linea roja). Esto no es lo que queremos.



Vale. Subo Ap hasta 750. Dejo Ad y Ai a cero, uso la pestaña "Analisator" (se ve la grafica mas grande 8).)..........y sale esto



 .yupi .yupi esto es lo que queremos!!!!!!!............una vibracion pequeña, constante, uniforme.......y "eterna".........hasta que no reseteemos, claro :P
He imprimido en papel milimetrado la imagen, y como tengo una escala de 1000 unidades (la linea vertical) es facil averiguar la amplitud por una simple regla de tres. Por cierto..........los encoders son de 500 cuentas por revolucion.

Encontrar la frecuancia ha sido mas "rebuscado" ;D ;D ;D
Con la grabadora de sonidos de guindouz, he grabado un fichero WAV del traqueteo del motor. No hay mas que editarlo con cualquera de los muchos programas que hay para edicion de sonido........y vemos la "casi onda"



Estos programas traen un "troceador" de onda que sirve divinamente para medir el periodo (la zona azul intenso). Me sale 0,052 segundos. HALA.......tecnologia NASA :D :D :D

Descanso.............y continuara.........................



DoctorHauen

  • Visitante
Re:bf20 vario + servos caseros + EMC
« Respuesta #6 en: 20 Diciembre 2010, 19:28 »
Coño... metafísica. ¿Esto no salía en la "Crítica de la razón pura" de Kant?

A mí me molaría entenderla.


brutto

  • Visitante
Re:bf20 vario + servos caseros + EMC
« Respuesta #7 en: 20 Diciembre 2010, 21:19 »
si dejas el pid con la grafica que muestras en el analizator no te entra en motor en resonancia si lo pones muy rapido?
por cierto que lleva el servodriver por dentro un pim para mostrar datos en tiempo real?

Desconectado Vider

  • Aprendiz
  • *
  • Join Date: Sep 2009
  • Mensajes: 1795
  • Ubicación: Madriles
Re:bf20 vario + servos caseros + EMC
« Respuesta #8 en: 21 Diciembre 2010, 12:28 »
juer que controlador más chulo, yo los gecko los ajuste con el osciloscopio de la abuela, y quedaron bien (aimqie solo llevan ajuste PD), aunque tengo que reconocer que me sorprendio que incluso desajustados a posta, funcionaban perfectamente y no entraban en caida, aunque sonaban ligeramente más rudos,

El PID, es relativamente sencillo de ajustar, cuando sabes lo que quieres, en tu caso como la curva la tienes clara, pues estupendo,

Que tal con EMC, tengo ganas de probarlo, dicen que maneja los servos mucho más suavemente, y es que realmente el Mach3, mete unas hostias como panes, cuando compensa backslash,
« última modificación: 21 Diciembre 2010, 22:40 por Vider »
Bridgeport Series I convertirda a CNC, Colchester Chipmaster 5x20, Sierra cinta S121G y muy poco tiempo para usarlos ...

okabum

  • Visitante
Re:bf20 vario + servos caseros + EMC
« Respuesta #9 en: 21 Diciembre 2010, 12:31 »

Que tal con EMC, tengo ganas de probarlo, dicen que maneja los servos mucho más suavemente, y es que realmente el Mach3, mete unas hostias como panes, cuando compensa backslash,

mucho mas suave sin duda, y consume menos recursos del pc por lo que puedes cargar un archivo de 100k lineas en segundos y no sufre cuelgues, y eso que trabajo solo a 25mhz porque es un pc antiguo y para mas inri AMD

abu

  • Visitante
Re:bf20 vario + servos caseros + EMC
« Respuesta #10 en: 21 Diciembre 2010, 13:44 »
Otra entrega .bien

Despues de aplicar el metodo Ziegler-Nichols (que no deja de ser una tonteria de lo mas simple ::)), de " refinar" manualmente, y de convencerme de que estos motores de patinete no son todo lo lineales que un buen servomotor debe ser...........pues he llegado a una solucion de compromiso. La imagen es la de el programilla servoconfigurator3, con los valores que mas me han gustado, donde he comprobado que el valor "SAMPLING TIME" es critico. La documentacion del driver WHALE3 aclara poco de lo que representa este parametro (mas bien nada >:(), pero deduzco que o bien es la "velocidad" con la que se aplica el algoritmo PID (veces por unidad de tiempo) o bien es la "velocidad de escaneo" de los valores de los encoders. Y claro, el metodo Ziegler-Nichols no lo contempla.......que se le va ha hacer :D :D. Lo dejo ahi......de momento  ::)
La grafica corresponde al servo en vacio (eje al aire). Se Ve que el motor llega rapido al punto deseado (1000 pasos, que es lo que he elegido para pruebas), tiene un pequeño rebote (por debajo de la linea roja de "posicion deseada"), se ajusta rapidamente.......y SE ESTABILIZA EN LA POSICION SIN RESONANCIAS DE NIGUN TIPO .yupi .yupi .yupi .yupi .yupi .yupi .yupi




Pero ojito.......el que el servo se esta probando en vacio...........voy a meterle carga (la que pueda, claro, que a mano no es lo suyo :D :D :D :D). Agarro el eje lo mas fuerte que mi debil constitucion me permite ::).......................y DALEEEEEEEE..........lo disparo.
Me sale esto:



Esto promete 8)..............
La grafica del movimiento en carga es muy, muy, muy buena...............me parece. Ya veremos ;D

Brutto........¿te va quedando mas claro? .bien

........Continuara...............con el enganche a Linux :-\
« última modificación: 21 Diciembre 2010, 13:46 por abu »

Desconectado Vider

  • Aprendiz
  • *
  • Join Date: Sep 2009
  • Mensajes: 1795
  • Ubicación: Madriles
Re:bf20 vario + servos caseros + EMC
« Respuesta #11 en: 21 Diciembre 2010, 22:42 »
lo que no entiendo es como lees la posicion del encoder con ese software, te la da el controlador¿¿??
Bridgeport Series I convertirda a CNC, Colchester Chipmaster 5x20, Sierra cinta S121G y muy poco tiempo para usarlos ...

abu

  • Visitante
Re:bf20 vario + servos caseros + EMC
« Respuesta #12 en: 21 Diciembre 2010, 23:12 »
Yo no leo nada, Vider...........te cuento por pasos ::):

-No hay ningun programa CN instalado en el el ordenador.........al menos en windows ;). Solo el programita de configuracion del driver WHALE3.

-La conexion USB solo se utiliza para configurar el driver. Lo unico que hace es leer o escribir parametros y valores de/en la memoria del microcontrolador que lleva la WHALE.

- El encoder va conectado a la WHALE. Durante las pruebas de configuracion, todos los valores del encoder (pasos y tiempos) los recoje el micro del controlador y este los manda, via USB, al ordenador. Con esos datos, el programa de configuracion traza las graficas. Yo, ni los veo........bueno, si.............graficamente, que es lo que interesa.
Todo esto ultimo no lo dice el manual, pero es de cajon.


Desconectado Vider

  • Aprendiz
  • *
  • Join Date: Sep 2009
  • Mensajes: 1795
  • Ubicación: Madriles
Re:bf20 vario + servos caseros + EMC
« Respuesta #13 en: 21 Diciembre 2010, 23:20 »
Bueno, de cajón porque lo lee el driver ese que debe ser cojonudo, ya quisiera yo que los geckos también lo hicieran,

Tambien podías tener conectado un osciloscopio a la tarjeta de sonido, y enchufado a la corriente del motor, o puenteados los encoders al paralelo,
Bridgeport Series I convertirda a CNC, Colchester Chipmaster 5x20, Sierra cinta S121G y muy poco tiempo para usarlos ...

brutto

  • Visitante
Re:bf20 vario + servos caseros + EMC
« Respuesta #14 en: 22 Diciembre 2010, 18:59 »
entonces esa grafica te muestra los pulsos del encoder, no? no entiendo porque la subida a mil pulsos es totalmente vertical, deberia ser alargada, a no ser que la grafica este demasiado alejada para reflejarse, no?.

Has probado a intentar que cuando la grafica pasa por cero hacia abajo sea mas corta o si haces eso te crea otra regulacion de oscilacion mas?