Todos los que nos seguis en Twitter y Facebook sabreis que recientemente ha caido en mis manos una fresadora eShapeoko, que es una pequeña máquina CNC de escritorio derivada de la conocida Shapeoko creada por Edward Ford pero vendida desde Europa y que fué y sigue siendo todo un éxito por su relativa facilidad de montaje y uso al tiempo que es relativamente económica. Disponer de una fresadora por control numérico capaz de cortar desde materiales blandos como madera, plástico o PVC hasta cosas más duras como el aluminio es el sueño húmedo de cualquier Maker. Hacía ya bastante tiempo que andaba detrás de algo así para dar salida a un montón de proyectos que tengo a la espera en la recámara y en los que mi humilde caladora, que aunque le tengo mucho cariño, no es la herramienta adecuada para realizarlos. De esta forma puedo dedicarme más a la parte de diseño en algún programa de CAD y obtener piezas de calidad para montar sin demasiados problemas y de forma rápida.
Por supuesto este tipo de máquinas no son del todo Plug and Play (conectar y funcionar) ya que necesitan de un preciso ajuste a nivel mecánico y una série de pasos a través de varios tipos de programas para crear las piezas. También hay que conocer los diferentes tipo de materiales para seleccionar las fresas correctas para el trabajo y os puedo asegurar que hay una cantidad increible de modelos distintos.
Cabe destacar que aunque he leido y me he informado mucho (mucho!) sobre el tema, aún así no soy ningún experto en la materia ni mucho menos y os quiero dejar por aquí y también para mi propia referencia, mi experiencia con esta estupenda máquina que estoy conociendo poco a poco cual padre a hijo. Espero que esto pueda ayudar a otra gente que pase por la misma experiencia y así poder también compartir ideas y trucos que seguro serán bienvenidos. Pero empezemos por el principio y conozcámos primero la recién llegada eShapeoko! (qué sí... tranquilos, también hay un vídeo de la bestia funcionando al final :D)
Características eShapeoko
La máquina en cuestión se compone de 3 ejes: X, Y y Z y aunque se puede configurar en varias medidas, la mía es de 500x500mm con una superficie de trabajo aproximada de unos 300x300mm. Se basa principalmente en un sistema T-Slot llamado Makerslide creado por Bart Dring y que salió de una exitosa campaña en kickstarter. Con este tipo de perfiles y con la ayuda de una ruedas especiales llamadas V-Wheels, se consigue un desplazamiento lineal muy preciso y económico. El creador utilizó este diseño para crear la primera Shapeoko que pronto se convertiría en la nueva y mejorada Shapeoko 2 en la cual se basa la eShapeoko y de la cual se encarga la web de Inventables donde venden tanto la máquina en kit como otras partes y mejoras.
Dado que todo el proyecto es completamente Open hardware y todos los planos están disponibles online, permite que la máquina evolucione gracias a la propia comunidad que aporta mejoras. De hecho el modelo que tengo es una versión derivada muy similar pero con algunas modificaciones, aunque se puede considerar una Shapeoko de por sí. Por el momento, la única web que se encarga de distribuirla en toda Europa es Amberspyglass en Reino Unido, que es de donde vino la mía. Viene en forma de kit para montar con todas las piezas necesarias en función de la configuración que uno prefiera, ya que podemos variar su tamaño en función del espacio o necesidades que tengamos, así como el tipo de soporte de motores. Sólo se incluyen las partes mecánicas y no incluye ningún tipo de electrónica ni motores que se tienen que adquirir por separado. Respecto a la compra no puedo decir que la experiencia fuera mala pero tampoco la mejor debido a ciertas circunstancias del vendedor como falta de stock, retrasos por mudanzas y demás excusas que alargaron la entrega de la máquina casi 3 meses. Así que si te animas a realizar un pedido ahí, tómalo con calma. Recuerda que por la propia naturaleza de la máquina, ante cualquier duda sobre montaje, no es esperes otra cosa que te mande a la wiki o al foro.
Montaje de la mecánica
En la página oficial se indica que si sabes apretar un tornillo, sabes montar una Shapeoko y puedo decir que es casi cierto. La wiki está muy detallada aunque en algunos caso hay que aplicar algo de sentido común. Pensaba que me llevaría bastante más tiempo el montaje sin embargo en un fin de semana intenso, se monta perfectamente. Toda la tornillería es M8 con tuercas y arandelas así que necesitarás las herramientas correspondientes. Hay que fijarse bien en cada parte del montaje ya que cada arandela y tornillo cuenta y tiene que estar todo colocado exactamente en el orden correcto o tendremos problemas mecánicos que luego afectarán a la precisión y funcionamiento de la máquina. Es muy conveniente tomarse el tiempo necesario para dejarlo todo perfecto y revisarlo todo dos o tres veces. Esto ahorrará mucho tiempo luego cuando toque ajustar y afinar la máquina.
Os dejo unas fotos del montaje, pero podeis ver más en está galería de Flickr.
Primero se empieza por montar las ruedas y rodamientos. Son aproximadamente unas 20 en total dependiendo del tipo de máquina y configuración y lleva un rato montarlas. Es esencial que estén perfectamente encajadas y que giren totalmente libres. Desde luego la parte más compleja y que más tiempo me ha llegado es la parte del puente o "Gantry", ya que lleva bastantes piezas y llega un momento donde hay que hilar fino para poder apretarlo todo bien. Pero bueno, esto también forma parte del juego y es divertido, es como un Meccano a lo bestia! (me encantan los Meccanos).
En este punto y ya montada y atornillada la base, ANTES de montar nada más hay que asegurarse de que todo está a escuadro midiendo de la forma más precisa posible. Es importante que el puente X esté perfectamente perpendicular al eje Y y asegurarse de que todos los ejes se mueven con soltura. También la base debe ser perfectamente cuadrada y un buen método para saberlo es medir las distancias diagonales y asegurarse de que sean iguales.
Motores NEMA 23
En mi caso he optado por no utilizar los motores estándar NEMA 17 que se utilizan en la Shapeoko. Dichos motores sueles ser de uno 3 Kg/cm (~44 oz/inch) aproximadamente y para una máquina con una medidas ya algo importantes, he preferido montar 4 motores NEMA 23 de 9 Kg/cm (125 oz/inch) de 200 pasos por vuelta (1.8º) ya que mi objetivo es también poder cortar y fresar materiales más duros como aluminio, cobre o incluso hierro. De esta forma, en teoría, debería tener potencia suficiente para este tipo de trabajos. De todos modos y dado que la máquina funciona por correas dentadas, no se le puede montar motores más potentes por los propios límites físicos y mecánicos de todo el sistema.
Bueno para los cables hay que buscarse un poco la vida e intentar dejarlo todo lo mejor posible. Dios bendiga a las bridas.
Controladora de motores
Una vez todo montado y ajustado lo mejor posible, le toca el turno a la electrónica de control. En la wiki de Shapeoko recomiendan el uso de una placa llamada GRBL Shield que se pincha sobre un Arduino UNO, aunque también hay otras alternativas. Estas son las dos placas:
Esta placa está muy bien ya que se le carga un programa al Arduino UNO llamado Grbl y que no es más que un intérprete de G-Code, el lenguaje de programación para control numérico, digamos estándar de este tipo de máquinas. Sin embargo aunque sea muy económica, tiene algunos inconvenientes ya que tan solo tiene 3 salidas para motores y yo necesito 4. Por otro lado, el proceso lo realiza integramente el Arduino dado que la shield solo se encarga de la parte de potencia. Eso nos limita a la potencia de cálculo del pequeño Arduino.
Synthetos es la gente que fabrica esta shield y también tienen otra placa que es bastante más interesante y que ofrece más características llamada TinyG, que es la que he instalado.
Esta ya es una controladora más avanzada basada en 4 drivers DRV8811 de 2.5A cada uno y con un microcontrolador ATxmega192 integrado que se encarga de todo tipo de operaciones matemáticas. Tiene la peculiaridad de tener muy bien optimizado el algoritmo de aceleración y deceleración de los motores haciendo que se desplazen de una forma muy suave. También dispone de una amplia configuración y es autosuficiente, tan solo se necesita conectar la alimentación, motores y USB. Por otro lado, tiene entradas para los finales de carrera que aún no he puesto pero pondré en breve, además de salidas interesantes para por ejemplo encender la fresa, iniciar el sistema de refrigeración en caso de que exsista o incluso un pin PWM por si queremos controlar la velocidad de la fresa directamente desde el software. Esta última opción es muy interesante pero se necesita conectar la fresa a un variador que lo soporte para que funcione.
Su montaje no tiene mucha complicación más allá de conectar las salidas correctamente así que tampoco hay mucho que decir. Es posible que tengas que instalar el driver USB (igual que con Arduino) para que lo detecte el PC. Lo he conectado a una fuente de 12V/33A (un poco exagerada pero es la que tenía a mano). Simplemente le hice un soporte para la fuente y la placa con un kit de Makerbeam que tenía por el taller y con esto queda más o menos presentable mientras no haga una caja más decente.
Software de control
Para hacer funcionar una máquina de estas características, se necesita utilizar varios programas. Los pasos a seguir serían primero diseñar la pieza en 2D con algún programa como por ejemplo Inkscape o similares a gusto del usuario. Luego con la ayuda de un programa de CAM, necesitamos generar las rutas que seguirá la máquina para quitar material siguiendo unos patrones. Para eso hay unos cuantos, de hecho incluso los hay online como makercam, pero uno que me ha gustado mucho por su sencillez de uso es CamBam. Podeis ver muchos tutoriales buscando por Youtube y está bastante bien documentado. Este me ha gustado por que tiene bastante opciones y además tiene un pequeño lenguaje de script para poder programar cosas automáticas. Finalmente, el programa de CAM, en mi caso CamBam generará un archivo de texto plano con el código G-Code. Este fichero para ser enviado necesita de otro programa, normalmente compatible con la máquina que se utilice. Yo utilizo una controladora TinyG y su creador tiene para eso varias opciones. El primero es el tgFX, escrito en JAVA que personalmente no me gusta demasiado por ser algo tosco y no he llegado a hacerlo funcionar del todo (no me funciona la vista previa ni puedo mover los ejes manualmente ni puedo hacer el homing), aunque es muy cómodo configurar los parámetros principales de la placa TinyG sin tener que utilizar el serial. Al final me he decantado por el entorno online Chilipeppr. A continuación os dejo unos pantallazos para que veais qué pinta tienen.
tgFX
CamBam
Chilipeppr.com
El entorno de Chilipeppr es bastante sorprendente. A parte de funcionar desde el navegador y por lo tanto no hay necesidad de instalar nada, utiliza JSfiddle para poder realizar modificaciones a los widgets que tiene en pantalla y ampliar sus funcionalidades. Tan solo necesita de un pequeño programa lllamado JSON Serial Port Server para poder comunicarse con el puerto USB. Se puede descargar directamente desde la web del Chilipeppr y está disponible para Windows, Mac e incluso Raspberry Pi (sí, podríamos tener la máquina conectada por red y controlarla remotamente!). He estado en contacto por email con su autor John Lauer para comentarle que sería interesante implementar una opción para conectar un mando MPG y así poder mover los ejes sin necesidad de utilizar el ratón o el teclado. Lo estuve mirando y con sus indicaciones, muy probablemente me pondré a desarrollar alguna cosilla para poder implementarlo y con un Arduino y un encoder incluso se podría hacer inalámbrico, pero eso ya es otro tema que iré comentando y otro proyecto para el libro de petete de proyectos a la espera :)
Primeras pruebas
Las primeras pruebas siempre se hacen con miedo a romper algo y por supuesto aún me faltan muchos detallitos por hacer como por ejemplo instalar los finales de carrera para que en caso de fallo no se rompa nada. Sin embargo, necesitaba realizar un pequeño agujero para un pulsador de emergencia (os lo recomiendo, e sla mejor forma de pararlo todo instantáneamente cuando ves que algo va mal) y ya que estaba, ¿por qué no hacerlo con la máquina? El pulsador en cuestión es este:
Es diámetro del agujero es de 22mm así que he diseñado un circulo con Inkscape de esa medida y generado el G-Code con CamBam. Para enviar el código a la máquina, he utilizado Chilipeppr. Es muy importante hacer el "homing de la máquina antes de nada. Consiste en indicar cual es el punto de inicio de coordenadas y es a partir de ahí donde se tomará el centro. Los eje X e Y son fáciles ya que consite en ir desplazando poco a poco hasta llegar a la zona indicada, sin embargo el Z que es la profundiad de corte debe ser lo más exacta posible y el método de deslizar una hora de papel e ir bajando el pasos de 0.1mm funciona perfectamente. Una vez no puedes mover la hoja, estableces el cero y voiala!
Por último pero no menos importante es agarrar bien el material. Yo he utilizado (o más bien improvisado) unas pequeñas pinzas de agarre que se fijan al tablero con tornillos y te permiten meter y sacar de forma rápida el material. En este caso es un trozo de PVC amarillo que tenía rondando por el taller y suficiente para hacer una pequeña base para colocar el pulsador.
Finalmente llegó el momento de la verdad, con algo cortante girando a unas diez mil vueltas por minuto a punto de ponerse en marcha... Y como dicen en la página de Shapeoko "take a deep breath". Vamos, respirar profundamente, triplicar todas las comprobaciones y pulsar el botón de comenzar.
Finalmente el resultado final tardó uno 6 minutos en completarse para lograr realizar un agujero de 22 milímetros. No debe tomar tanto tiempo, pero he puesto un incremento de profundidad de 0.1 para una profundidad total de 5.35 mm y así ir sobre seguro. El feedrate (la velocidad de corte) establecida también muy lenta a tan solo de 400 milímetros por minuto, la fresa es la básica de Dremel de 3.15mm y 4 flutes. El pulsador encaja perfectamente y el corte es muy limpio. La verdad es que estoy bastante contento con esta primera prueba. Sin embargo al medir el diámetro, tengo un agujero de 21.86mm así que hay un error 0.14mm en algún sitio y muy probablemente de la configuración de distancia por revolución que tendré que ir afinando. Pero como primera prueba real, estoy bastante contento con el resultado y esto ya resulta muy emosionante!
Conclusiones
El corte asistido por ordenador es un mundo apasionante y a la vez complejo. Permite hacer cosas realmente interesantes pero toma su tiempo llegar a tener una máquina afinada y lista para funcionar en cualquier momento como una herramienta más. Pero muchas veces el camino es incluso más interesante que el destino, así que si os ha gustado el post y quereis saber más, no dudeis en dejar vuestro comentario y por supuesto seguiré informando de cómo evoluciona mi máquina!