Beruflich Dokumente
Kultur Dokumente
recicladas
Hola a tod@s, este post tiene como objetivo
contarles acerca de el proyecto que
desarrolle para la materia Sistemas
embebidos.
Lo que hice fue un plotter utilizando 2
impresoras rotas y un arduino. Utilice
lenguaje C y C++ para el firmware que corre
sobre arduino (lo se, muchos dirn que use
libreras de arduino en vez programar los
registros a mano, bueno, eso ya lo tuve que
hacer y no era el objetivo de este proyecto).
Y Java para el lado Host, encargado de enviar
las coordenadas al Arduino.
Asi que, ahora cambie un poco los planes. Agarre como eje X la base de la epson
con el sistema de impresion, y saque el motor paso a paso encargado de
alimentar de papel la misma y lo adecue al eje de impresion de la impresora HP
(sacandole el DC que traa).
Obvio que mientras armaba la estructura iba probando el manejo de los motores,
estos motores no poseen datasheets ni info alguna, ya que son fabricados
exclusivamente para estas impresoras. Por lo que tuve que realizar todo a
prueba y error. Utilice 2 integrados de puente-h (L293D) como drivers de
potencia para los motores ( arduino provee maximo 30mA y yo necesitaba al
rededor de 400mA).
Ese mismo circuito para ambos motores, con la nica diferencia es que
utilizaban diferentes pines del Arduino.
Entrando en el desarrollo del firmware ahora, procedo a comentarles breve ment
el algoritmo principal. Hay que recordar que los motores paso a paso por cada
seal mueven un paso (ver mas http://es.wikipedia.org/wiki/Motor_paso_a_paso )
yo lo que hice ademas, fue modificar la librera Stepper.h que provee arduino
para incluir la funcionabiliadad de mover Half step ( asi achicaba el tamao e
milmetros de cada step y lograba mayor precisin).
Por ah es medio difcil explicar el algoritmo por ac, pero bsicamente lo que
hace es intercalando un step en cada direccin para llegar al punto. El
problema radica cuando no hay que dar la misma cantidad de steps en X que en Y
o viceversa. Esto se lo soluciona con un Slope, que controla cuando el motor
que debe realizar menos pasos le toca hacer un paso (no voy a entrar en
detalles, miren algoritmo o pregunten me si quieren saber mas).
Luego para la comunicacin entre el Arduino y la PC utilizo el puerto Serial.
La librera Serial de arduino y la librera RXTXcomm de java. Podra
comentarles como es el protocolo, pero los que no entienden nada no entendern
y traducirlas a pasos para los motores. Y, ademas, puede recibir las mismas por
comunicacion Serial. Ahora toca hacer una buena app en la PC que le envie las
Coordenadas.
Bueno, ya les comente a grandes rasgos todo, ahora paso a mostrarles imgenes
de dibujos y videos
PUBLICIDAD
inRead
inRead invented by Teads
inRead
link:
https://www.youtube.com/watch?v=h3npSM-KHdw&feature=youtu.be
No hice mas largo el post, porque no quiero aburrir con los detalles, pero
. Espero les
Codigos Fuente:
https://www.mediafire. com/?oezbhmhoid3yow9