Impresora casera con Arduino y lectores de CDs viejos

Este post está inspirado en la charla motivacional que dió Ariel Lobos para que dejen de consumir y comiencen a construir, en el Hackmeeting2012 que se realizó el viernes y sábado recien pasado en Valparaíso.

Un Arduino es una placa electrónica con un microcontrolador y que contiene puertos de entrada y salida muy sencilla de programar, es libre y cuenta con un entorno de desarrollo multiplataforma.
Los lectores de CDs antiguos nos van a servir para usar sus “rieles” y de esta forma poder darle movimiento en 2 o 3 dimensiones. En este caso, la impresora se ha construído sólo con los ejes x,y.

En este artículo se mostrará como construir una impresora 2D usando un Arduino, protoboard y los rieles de lectores de CD o DVD. Especial para quienes estan empezando a jugar con los Arduinos y necesitan desafios un poco mas interesantes que encender un led.

Este hack consiste en remover los motores y los rieles del lector de cd, programar el arduino con las instrucciones necesarias para que los ejes se muevan segun lo que queramos escribir o dibujar, usando un lápiz y papel.

Ariel Lobos explica que son 3 los puntos basicos que hay que considerar respecto a estos motores:

  1. Son alimentados con 5v
  2. No superan los 500 mA
  3. Son motores del tipo stepper o paso-a-paso bipolar. Para controlarlos se necesita un puente H como por ejemplo un L293.

Así estan conectados los motores al arduino y al protoboard:

Pueden leer este tutorial sobre Motores Paso a Paso para poder conocer su funcionamiento y como conectarlos a la placa.
El codigo utilizado es el siguiente:

#include <Stepper.h>

const int stepsPerRevolution = 5; // numeros de pasos por instruccion en el motor

// inicializa la libreria de stepper, dandole los pines de los stepper
Stepper myStepper(stepsPerRevolution, 8,9,10,11); //primer stepper
Stepper myStepper2(stepsPerRevolution, 4,5,6,7); //segundo stepper


void setup() {
        // configuracino de velocidad en rpm
        myStepper.setSpeed(800);
        myStepper2.setSpeed(800);
        // iniciando el puerto serial
        Serial.begin(9600);
}

void loop() {
        char dir = 0;
        dir = Serial.read();
        if(dir == 'a') myStepper.step(stepsPerRevolution);
        if(dir == 'd') myStepper.step(-stepsPerRevolution);
        if(dir == 'w') myStepper2.step(stepsPerRevolution);
        if(dir == 's') myStepper2.step(-stepsPerRevolution);
}

Video de un stepper funcionando con un arduino:

Son muchas las cosas que se han construído con un Arduino y motores Steppers: Real Pen Etch-A-Sketch

Y este es el post original donde Ariel nos enseña como hacerlo: Arduino + Módulos de CD’s viejos

Imagenes:

Este es el video de la maquinita hecha por Ariel:

6 comentarios

  1. Muy ingenioso e interesante.

    Saludos.

  2. Hola!
    Gracias a José Miguel conocí este sitio. Echándole un vistazo a los artículos interesantes!!
    Y también echándole un vistazo a la galería de Flickr
    Muy interesantes proyectos por aqui !!
    Saludos

  3. Hello, thank you for linking to my etch-a-sketch drawing machine. Unfortunately, you’ve also embedded one of my pictures of the stepper motors used in that post without permission or credit. This one: http://www.flickr.com/photos/62234213@N00/4024555377/ Please remove that photo or give me credit for it. Thanks.

  4. a vale esta mogollon y segun me doi de de cuenta ¿los puedes controlar con el teclado o como haces pare que imprima?
    me sacarias de muchas dudas
    gracias

  5. disculpa puedes ayudarme con un tutorial de las conexiones en el proto al rduino y al puente h

  6. La verdad que es curioso ver como se pueden reciclar cosas y al paso entretenerse un poco.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Esto sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.