Este foro utiliza cookies
Este foro utiliza cookies para almacenar su información de inicio de sesión si está registrado y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; Las cookies establecidas por este foro solo se pueden utilizar en este sitio web y no representan ningún riesgo para la seguridad. Las cookies de este foro también rastrean los temas específicos que ha leído y cuándo los leyó por última vez. Confirme si acepta o rechaza la configuración de estas cookies.

Se almacenará una cookie en su navegador independientemente de su elección para evitar que se le vuelva a hacer esta pregunta. Podrá cambiar la configuración de las cookies en cualquier momento utilizando el enlace en el pie de página.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Proyecto PowerFeed (Avance Automatico) Electronico con Motores PaP
#1
Buenos dias a todos, 

Bueno, hace tiempo le puse un motor PaP a la fresadora, para hacer el avance automatico. Opte por un Motor PaP porque tengo mas de la mano el uso y control de estos motores al igual que la adaptacion a la fresadora era sencilla.

Necesitaba entonces un control sencillo para el motor, que me permitiera cambiar de velocidad y de direccion, poco mas. Implemente algo rapido en Arduino, super basico....con millis() y un control a traves de un encoder para subir o bajar la velocidad y un switch para derecha izquierda o parado. El invento era 100% funcional, pero me faltaba algo, me faltaba ver los mm/min a los que iba sin necesidad de contarlo a mano con el DRO o similares, a si que pense en darle una vuelta...

Este proyecto esta basado en Arduino, porque necesitaba tener algo rapido y estoy mas familiarizado con Arduino que con otras plataformas, la idea en un futuro es migrarlo a STM, un cortex M3 o similar pero por ahora quiero desarrollar algo completo en Arduino y luego migrarlo sin la presion de necesitar algo funcional. 

La idea es MUY basica, poder controlar el driver del motor (Senyales EN, DIR y PULSE) con el Arduino, pudiendo seleccionar que feedrate queremos en mm/min.

Basicamente esto esta parametrizado en:

-- Pulse/rev configurado en el Driver (Adaptable en el codigo del arduino)
-- Paso del husillo del eje de vuestra maquina (Adaptable en el codigo del arduino)

Por ahora he considerado motores de 1.8deg por pulso, si se usan de 0.9Deg por pulso, se podria adaptar facilmente, quiza lo anyada en el codigo, por ahora no lo tiene. 

De esta manera podemos configurar los mm/min que queremos y la programacion se encarga de adaptar los pulsos al Driver. 

Como perifericos del Arduino, que necesitamos:

(Por ahora esto es el primer prototipo, no descarto disenyar una PCB para este proyecto)

[Imagen: KDzU3KT.jpg]

[Imagen: 7dBy2gv.jpg]

[Imagen: wHNg1se.jpg]

[Imagen: IDnmpwm.jpg]

[Imagen: H6oj9vn.jpg]

-- Un Switch the tres posiciones con bloqueo en las 3
-- Un Encoder con pulsador
-- Modulo DCDC entrada 40V salida 5V (Para convertir los 36V de la power supply del motor a 5V)
-- Arduino Nano
-- Pantalla LCD 16x2 con adaptador I2C
-- Un punyado de resistencias, condensadores y transistores BJT

Ire poniendo por aqui tanto esquematicos, como el codigo fuente que aun tengo que refinar aunque sea el basico para subirlo, y toda la informacion necesaria para poder replicar este proyecto. 

Para futuras implementaciones a corto plazo:

-- Implementar alguna funcion de seguridad, como que al iniciar el control, aunque el switch este en posicion de moverse Derecha o Izquierda no se mueva y pida una verificacion al usuario
-- Implementar perfiles de aceleracion
-- Implementar menus para poder configurar on the fly parametros como steps/rev, el paso del husillo..., sin necesidad de entrar en el codigo
-- Implementar unos endstop virtuales, que quiere decir esto? Basicamente una opcion que te permita decirle al control cuantos mm quieres avanzar automaticamente, hasta el paro automatico, si por ejemplo tenemos una pieza de 100mm, poner 120mm y que recorra la pieza y se pare automaticamente. 



Un pequenyo video del funcionamiento por ahora. 

A medida que vaya teniendo tiempo ire implementando nuevas funciones y dandole una vuelta de tuerca al disenyo electronico porque ahora mismo no dispone de ninguna proteccion, generalmente los DRIVERs de los motores la entradas digitales van a traves de optoacopladores, pero quiza implemente alguna proteccion en este lado. 

De igual forma cuando lo tenga pulido ire incluyendo mas informacion del conexionado, programacion.... Necesito un poco de tiempo  Smile
Responder
#2
Muy guapo el proyecto, el tipo del canal Maquineros ha hecho algo similar y los vende a 60 pavos.
Yo si me decido ponerle motores PAP ya me paso a CNC.

un saludo
Responder
#3
Muy bien realizado !
Lo bueno de Arduino es esto de poder ir evolucionándolo, pero con lo que tiene ahora y la posibilidad de ajustar con precisión el avance lo tienes ya mejor que la mayoría de estos sistemas.
¿Le has puesto interruptores de límite de carrera?

Saludos
Hugo
Responder
#4
Cojo asiento
Responder
#5
(04-14-2021, 07:15 PM)juanmagaor escribió: Muy guapo el proyecto, el tipo del canal Maquineros ha hecho algo similar y los vende a 60 pavos.
Yo si me decido ponerle motores PAP ya me paso a CNC.

un saludo

Gracias Juan, Si lo vi al final es otra aproximacion. Otra manera de resolver el asunto  Big Grin

Sobre el tema de la CNC, totalmente de acuerdo, de hecho quiza sea mas barato poner un motor DC si quieres hacer un avance automatico, pero bueno bajo mi perspectiva los motores PaP son mas sencillos de controlar si quieres conocer cuanto avanzas. Y si luego la paso a CNC, ya tengo un eje listo! 

(04-14-2021, 10:11 PM)Hugo Turn escribió: Muy bien realizado !
Lo bueno de Arduino es esto de poder ir evolucionándolo, pero con lo que tiene ahora y la posibilidad de ajustar con precisión el avance lo tienes ya mejor que la mayoría de estos sistemas.
¿Le has puesto interruptores de límite de carrera?

Saludos
Hugo

Buenas Hugo, gracias. Si, me interesaba sobre todo saber con cierta precision el avance, porque para hacer pruebas de acabado me viene de lujo, ya que no tengo mucha experiencia en este mundillo.

Sobre los ENDSTOPs, tenia idea de hacer unos por SW, es decir que le indiques al sistema cuanto quieres que avance, 100mm, 200mm...., y se pare solo. Pero quiza anyada en la siguiente version la posibilidad de anyadir unos endstop por HW, osea fisicos. Tambien podria cambiar un poco el codigo y ponerlos en serie con el interruptor para activar el movimiento..., le dare una vuelta.

(04-14-2021, 10:39 PM)kankarrio escribió: Cojo asiento

Os mantendre informados  Smile

Saludos!
Responder
#6
Ya va cogiendo forma la idea inicial que tenías y te está quedando genial. Como te han dicho, la versión del Maquinero tiene esas opciones y puede ayudarte como punto de partida, no se si incluso puedes coger la señal de las reglas y que la interprete el arduino como sistema redundante y se corrija como si fuera un servo.

Saludos,
Novacila.
Torno Belflex BF 520 - Kondia FV1 - sierra de cinta Ayerbe AY 115 - muchas ganas de seguir aprendiendo y compartiendo
Responder
#7
Gracias Novacila!

El camino que voy a seguir por ahora es mantener la funcionalidad basica del avance automico, con unas pocas mejoras. Se podria implementar el tema del feedback del DRO, pero dado que el sistema en principio no esta pensado para tener movimiento en distancia precisos, mantendre un enfoque digamos mas "simple", si no nos iriamos mas camino de un control CNC digamos.

Como dato, este artilujio puede ser util tanto para fresas como para tornos, ya que por ejemplo mi torno, tiene el avance automatico en velocidad muy muy limitado....
Responder
#8
realmente muy muy bueno !!

seguimos el proyecto Brinda
Responder
#9
Bueno, he tenido un rato para subir al repositorio el codigo y demas:

https://github.com/CarlosRodriguezF/PowerFeed

Como esquematico muy resumido:

[Imagen: BlockDiagramU.JPG?raw=true]

He encontrado algun fallito que tengo que corregir, pero son leves no afectan al funcionamiento, y he anyadido el bloqueo del control si al arrancar el pulsador no esta en el centro. 

Os seguire informando de los avances. 

Un saludo y Gracias!
Responder
#10
Buenos dias,

Dejo una actualizacion que he estado haciendo este fin de semana:



Basicamente como añadido. 

-Aceleracion y deceleracion progresiva
-Bloqueo en el menu inicial si el boton esta accionado
-Modo alta velocidad mientras mantenemos pulsado el boton del encoder


La ultima actualizacion esta ya subida en Github.

Me quedan un par de cosas mas, y podre dar por concluido el proyecto. 

Un Saludo y Gracias!
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)