mAka: maduración

Una vez que mAka fue capaz de fabricar piezas llega la segunda etapa: conseguir que además sea una máquina robusta y funcional, con una serie de mejoras que detallo a continuación. En las siguientes fotos puedes ver un aspecto general. Se pueden apreciar más detalles si abres las imágenes en otra página para que se vean más grandes.

Todo el código correspondiente a las mejoras descritas está en este enlace, que es donde habrá que recurrir si los enlaces a las piezas individuales dejan de funcionar.

Vista frontal

Trasera y lateral

Arriba, lado derecho del eje X y algo de electrónica.


A la derecha, lado izquierdo del eje X.

Polea frontal del eje Y

Extrusor

El extrusor fue lo primero que hice con OpenSCAD y francamente me avergüenzo del código que hice. Debía cumplir:

  • facilidad a la hora del quita y pon.

  • posibilidad de poner el filamento sin necesidad de quitar la pieza que lo presiona contra el eje de arrastre.

  • sensor de final de filamento.

  • capacidad de poderse levantar ligeramente cuando la fuerza ejercida por el filamento sobre el fusor fuera excesiva.

La última condición era por lo siguiente: cuando la fuerza sobre el filamento es excesiva se corre el riesgo de que el eje de arrastre "lo muerda", y entonces la máquina deja de coger filamento. Si sujetaba el extrusor con un muelle, y regulaba su tensión para que dejara levantarse un poco el mecanismo antes de que el filamento se llevara un mordisco, podría detectar ese levantamiento y tomar medidas correctoras, como bajar la velocidad de impresión.

Hice un gran esfuerzo de programación y conseguí algunos logros, pero finalmente me di cuenta de que la relación coste-beneficio recomendaba olvidar el tema. Posiblemente habría estado bien rediseñar el mecanismo de anclaje sin pensar en esa capacidad de levantamiento, pero no llegué a hacerlo.

El conjunto consta de varias piezas:

  • cuerpo: sujeta el motor, el eje de arrastre, el presor y el detector de filamento. Para facilitar su refrigeración, las paredes del motor no llegan a tocar el cuerpo más que lo imprescindible en la parte de los tornillos. Además, tiene:

    • alojamientos a los lados para rodamientos 608zz

    • un hueco arriba para embutir una rosca de 3mm en la que atornillar el detector de fin de filamento

    • un par de agujeros para tornillos M4 de 45mm con cabeza cilíndrica limada para evitar que pueda rotar

    • alojamientos para los tornillos M3 de cabeza cónica del motor

    • agujeros para el agarre al anclaje derecho con una varilla unos 3mm (yo he usado una carga de bolígrafo metálica)

  • presor: hay que colocarle un rodamiento 608zz con un eje de casi 8mm que se puede sacar del cuello de un perno de M8 con cuello largo. En uno de los lado hay que ponerle un anillo separador de 0.2 o 0.3mm para evitar que la corona del rodamiento roce con el alojamiento.

  • piñon: puesto que los engranajes son en espiga no son simétricos, así que se puede fabricar con el tornillo de sujecion en el lado del motor o en el exterior. La posición tendrá que ir de acuerdo con la catalina, y ambos dependerán del tornillo de arrastre de filamento.

  • catalina: tiene los picos exteriores de los dientes un poco rematados para que no arañen al manipular la rueda para mover el filamento. Para alejarla del rodamiento requiere un casquillo que también hay que fabricar. El diseño de la catalina es totalmente paramétrico y se pueden hacer montones de variantes.

  • anclajes: pueden ir pegados al carro pero no es imprescindible, y por eso se fabrican con una estructura que fija sus posiciones relativas. Se atornillan con tornillos M4 de cabeza cilíndrica a la parte superior del carro, y en la inferior va el fusor de filamento con las tuercas correspondientes. El lado izquierdo estaba pensado para llevar un muelle de alrededor de 10mm para el detector de sobreesfuerzos, y por eso requiere una arandela de 18mm (lo que tenía por casa)

  • detector de 3 piezas

    • cuerpo que aloja un detector infrarrojo TCST1103 y se sujeta con un tornillo M3 de cabeza cónica al cuerpo del extrusor

    • puerta con un alojamiento para pegar el eje, que es un alfiler

    • obturador que va pegado en perpendicular en la puerta, y tiene un brazo en el que colocar una o dos tuercas M3 para que hagan de peso que tiende a abrir el obturador.

Carro

Aunque podría haber sido más pequeño, el carro es muy grande porque:

  • la movilidad del carro por la izquierda la limitan el motor de X y el fusor, que no deben chocar.

  • por la derecha debe caber un ventilador para el lado frío del fusor.

  • separar los rodamientos lineales permite poner un ventilador de capa de 40mm que apenas sobresalga.

  • haberlo hecho más pequeño sólo habría traído ventajas estéticas, pero al ser grande le afectan menos las holguras y flexibilidades del material.

Consta de varias piezas que describo a continuación.

cuerpo: el carro es una superficie plana con zócalos inferiores para acoplar los rodamientos lineales LM10UU, y una serie de agujeros y marcas que sirven para:

  • 1 agujero central para el filamento.

  • 2 agujeros en el centro longitudinal para sujetar el fusor y su ventilador.

  • 2 zonas con relieve para pegar en ellas el anclaje del extrusor.

  • en el centro a la derecha, un alojamiento exagonal para una tuerca M3 que permite agarrar la electrónica de regulación del ventilador del fusor.

  • en las 4 esquinas hay ranuras con forma para colocar las bridas que agarran los rodamientos.

  • junto a las bridas izquierdas, agujeritos que por la parte inferior tienen forma hexagonal para colocar ahí tuercas M3 a las que se atornilla el suplemento del carro que veremos más adelante.

  • hacia la parte trasera hay una gran ranura para pasar cables hacia la parte inferior del carro.

  • 2 agujeros para atornillar el cursor que hace al carro solidario con la correa dentada que lo mueve.

  • entre los zócalos de los rodamientos hay unas guías que permiten colocar correctamente el cursor en la parte trasera y el ventilador de capa en la delantera.

cursor con 3 guías para bridas: una abajo para la clema que cierra la correa dentada, y dos en curva (la de arriba en forma de U) para agarrar el mazo de cables. Por problemas de fabricación, el lado derecho del alojamiento para la clema hay que ajustarlo a base de lima o algo parecido.

alojamiento para el ventilador del fusor: es una estructura que se adapta al fusor, se atornilla al carro, canaliza el aire del ventilador y ofrece dónde colocar un par de tuercas M3 en las que se atornilla el ventilador de 30mm. Es una pieza muy delicada, y conviene colocar las tuercas y pegarlas. Yo lo hice con varias capas de laca de uñas del mismo color que el plástico, con cuidado de no manchar la rosca con laca.

alojamiento para el ventilador de capa: es una estructura que permite poner y quitar el ventilador de capa con mucha facilidad, y conduce el aire de un ventilador de 40mm a la zona de extrusión. Requiere poner 4 roscas M3 de embutir y soldar.

Extremos del eje X

El eje X es una peculiaridad de mAka por tres razones:

  • tener las varillas una al lado de otra como en la Prusa i2, y no una encima de otra, lo que permite colocar cosas de cierto peso con naturalidad.

  • llevar el motor entre las varillas de Z, de manera que no sobresale de la estructura de la impresora y así no puede interferir con trastos que haya sobre la mesa.

  • y llevar el motor bajo las varillas de X, que permite manipular sin tropezar con la correa, y deja sitio para añadir herramientas como el porta-taladro descrito más adelante.

Los extremos del eje X acoplan las varillas al eje Z, se apoyan sobre el cursor que guía el movimiento vertical, sostienen el motor en un extremo y la polea dentada en el otro, y llevan los sistemas de homing y detección de desorden mecánico de X y Z.

Al girar, las varillas del eje Z mueven arriba y abajo unos cursores sobre los que apoyan los extremos del eje X. Cuando los cursores bajan es posible que haya que ayudar al eje X para que no se quede atascado. Para eso hay unos muelles en los cursores que apoyan sobre unos zócalos. El muelle hace algo de fuerza hacia abajo, pero si el eje se empeña en quedarse atascado acabará por vencer al muelle. Entonces el cursor acciona un mini-microrruptor de ratón, que es el detector de desorden mecánico de Z.

En términos generales las piezas son (me ahorro mostrarlas por separado porque están en los .stl de fabricación izquierdo y derecho):

  • cuerpos: tienen cachas en las que acomodar las varillas horizontales de 10mm que se sujetan con 2 bridas (una ancha y una media). Hay un alojamiento para 2 rodamientos LM10UU del eje Z con posibilidad de poner 3 bridas finas. En la vertical de la varilla roscada de Z hay un hueco para el cursor. En ese hueco hay 2 ventanas: una para el presor, y otra para un mini-microrruptor de ratón. En la parte trasera hay huecos en los que encajar el detector de desorden de X, y un canal para poder sujetarlo con una brida fina.

  • zócalos: son piezas que se introducen en sus respectivas ventanas con el objetivo de dar una superficie de apoyo a los muelles que hay en los cursores.

  • cursores: tienen un hueco en el que colocar 2 tuercas M5 correctamente alineadas y pegadas entre si y al cursor. En la parte inferior hay un agujerito en el que meter un muelle de piedra de mechero, que apoyará en el zócalo.

  • detección de desorden mecánico en X: es una estructura con dos pinchos en los que se encaja un mini-microrruptor con el accionador hacia arriba para coincidir con un canal en el que meter una varilla de unos 3mm que puede ser de madera o plástico. A esa varilla le ajustamos la longitud para que el carro accione el detector en el último milímetro antes de hacer tope. En el lateral hay 2 pinchos para colocar el detector en el cuerpo.

Las particularidades de cada extremo son:

lado izquierdo

  • el cuerpo tiene 3 agujeros en la parte trasera para atornillar el motor.

  • también hay un agujero menor con separador, que hay que roscar para atornillar ahí el endstop de Z.

  • el otro extremo del endstop de Z se sujeta con una brida (también hay separador).

  • sobre esta última brida está la ventana para colocar el sensor de desorden de Z, que se instala poniéndole un asa en uno de los agujeritos que tiene (asa que puede ser perfectamente una brida fina).

  • arriba hay 2 separadores y agujeros que hay que roscar para atornillar el endstop de X.


lado derecho

  • tiene huecos para los rodamientos 605zz del eje de la polea.

  • en el interior del canal del cursor hay alojamientos para tuercas M3 (o tornillos de cabeza hexagonal) que sirven para sujetar el mecanismo de accionamiento de la sonda de autolevel.

  • para hacer compatible el autolevel con el sistema de detección de desorden mecánico, la varilla de madera o plástico que acciona el detector debe tener intercalado un muelle que permita que el carro avance un poco más allá de lo que se considera un desorden sin dañar nada.

Accesorios del eje Y

A grandes rasgos, el eje Y consiste en 2 varillas sobre 4 patas, por las que circula una cama caliente flotante sobre un carro montado sobre 4 rodamientos lineales LM10UU que es movido por un motor acoplado a una correa con su polea. El control de posición se hace con un endstop. La cama caliente requiere un termómetro y alimentación eléctrica que le llega por un cable.

Algunas piezas que hice en su día con aluminio, pegamento y poco más funcionan sin problemas y de momento no las cambio: la polea, la sujeción del cable, el soporte del endstop, el agarre del carro a la correa y el sistema de suspensión de la cama.

Lo que he modernizado ha sido:

  • porta-carro: es un añadido de dos piezas que se pegan al carro de aluminio para estabilizar la posición de los rodamientos, y lleva el tornillo que acciona el endstop.

  • soporte del motor: geométricamente es igual que el original de madera si lo vemos de perfil, pero hacerlo de plástico permite que sea más fino por arriba, y gracias a ello se pierde el riesgo de que el tornillo de ajuste de la suspensión trasera de la cama roce, y puede ser más grande.

  • patas: aparte de la función estructural de las patas he añadido otra: contener los mini-microrruptores del sistema de detección de desorden mecánico de Y. Cada pata lleva un interruptor embutido con sus contactos C y NC soldados a un conector de 2 patitas que se pega con los contactos sobresaliendo de la pata. El montaje no es fácil, porque los cables pasan por el hueco en el que van las varillas roscadas transversales de la estructura, que no deben cortocircuitarlos. Los 4 interruptores van conectados en serie entre ellos y los 4 de los ejes X y Z. Si el cable se rompe o se abre alguno de los 8 interruptores se dispara la alarma de desorden mecánico.

Sonda móvil de Z (autloevel)

Los sistemas mecánicos de medición de la altura en Z necesitan que haya algo haciendo contacto con la cama de impresión por debajo de la boquilla de filamento, y eso es incompatible con el funcionamiento normal de una impresora "de churrito" o FDM. Como solución, cada vez se usan más los sensores capacitivos, que pueden medir desde más arriba de la altura de la boquilla, y por tanto pueden estar en una posición fija.

De entre las soluciones mecánicas, la más típica es la del servomotor que sube y baja un microrruptor, o bien habilita un sistema óptico. También he visto usar un solenoide para coger y dejar parte del mecanismo de medición. Otro sistema hace uso de un mecanismo que se activa y desactiva por medio de un tornillo que queda fuera del alcance operativo de la impresora. También hay sistemas de levas y empujadores que usan los extremos del recorrido del carro X para sacar y meter la sonda de medición.

Mi sistema de entrar y salir del "modo medición de Z" es del último tipo citado, pero puesto que mAka es una máquina muy compacta no dispongo de 20mm a cada lado como se ve por ahí. Sólo necesito que el carro X se mueva 1mm más allá del límite de uso en el eje X para sacar la sonda, y para meterla no hace falta ni eso.

Por varios motivos que no viene a cuento detallar es conveniente tener un sistema de endstop en Z alternativo, para evitar que se rompa la máquina si falla la sonda principal. Yo he optado por un sistema óptico "traspasable": la máquina encuentra el endstop a unos 5mm por encima de la cama, pero a la hora de trabajar puede bajar más allá. Para ello, en el extremo izquierdo del eje X he cambiado el final de carrera mecánico original por uno óptico que he diseñado con un formato compatible. Lleva un sensor TCST1103, y es activado por una lámina de plástico sujeta y regulada desde la superficie en la que se atornilla el motor izquierdo de Z.

Volviendo a la sonda de Z, consta de unas cuantas piezas que se pueden ver en el .stl de fabricación, y están sobradamente descritas en el vídeo de al lado.

Porta-taladro

Es una estructura que se coloca sobre las varillas del eje X adosada al carro, que sirve para colocar un taladrador pequeño u otras herramientas. Las piezas correspondientes están descritas en el mismo fichero .scad que el carro, y son 2:

  • cuerpo: es un bloque que se apoya sobre las varillas por el lado izquierdo, y sobre el carro por el derecho. Va atornillada con tornillos M3 de cabeza cilíndrica cuyas tuercas tienen que haber sido puestas cuando se instaló el carro sobre los rodamientos lineales. En la parte inferior, para sujetar el taladrador hay que mecanizar una chapa de aluminio o hierro que se atornilla al cuerpo, y a la cual se agarra el taladrador.

  • presilla: pieza que va atornillada al lado izquierdo del cuerpo para agarrar las varillas del eje X desde abajo, e impedir que el cuerpo pueda volcar con el taladrador instalado.

Carro para sujetar el taladrador

Carcasa para forzar la circulación de aire

Guía para rotulador

El cuerpo del porta-taladro tiene unas ranuras para permitir la ventilación del taladrador, pero éste tiene ya de por sí una acusada tendencia a calentarse, y necesita una ayuda. Para eso hice un envoltorio que rodea el taladrador y permite atornillar un ventilador que fuerce un poco el aire para facilitar la refrigeración. Consta de 4 piezas que se atornillan entre ellas.

Al porta-taladro se le puede fijar una estructura que sirve para colocar un rotulador para dibujar, por ejemplo, pistas de circuito impreso. No viene muy a cuento explicar las piezas de que consta por que es un diseño muy a la medida de lo que tenía por casa, que incluye pedazos de pata de mueble de cocina, tubo de cobre de calefacción, una rosca que probablemente salió de un telefonillo de ducha, muelles, clips y trozos de cámara de bicicleta.

Otros accesorios

La caja para el LCD la encontré por la red, le hice unos apaños. El resultado es malo porque no tenía tornillos de la medida adecuada y tuve que agrandar los agujeros hasta casi cargarme la caja, que tuve que pegar internamente. Pero el caso es que cumple su función sin problemas así que de momento no la voy a modificar. Tiene un soporte en el que se fija un pulsador de seta para el apagado.

Bujes: cada rollo de filamento que compro es distinto del anterior, así que lo primero que fabrico son los bujes para colocarlo en el portacarretes.

El portacarrete es una pareja de piezas que se colocan en la parte superior del marco de la impresora para sostener un eje en el que colocar el carrete de filamento con salida en el eje Y. Es una solución que no uso, porque tengo otro sistema que saca el filamento en el eje X.

La cama para PCB es un panel con un entramado de agujeros que tienen por abajo tuercas M3 pegadas a las que se tornillan otras piezas:

  • una larga inferior con alojamiento para 6 tuercas M3, que se adapta a la cama

  • una larga superior con huecos para 6 tornillos M3 de cabeza cónica para atornillar con la pieza anterior, que sirve de apoyo a la placa PCB virgen en el eje X

  • una mediana con huecos para 4 tornillos M3 de cabeza cónica que se atornilla las tuercas pegadas al panel, y sirve de apoyo a la PCB en Y

  • 4 piezas con ranuras en las que meter tornillos M3 de cabeza cilíndrica con arandela que se atornillan en las tuercas pegadas al panel, y sirven para sujetar la PCB.

He añadido un ventilador que se coloca sobre el lado derecho del eje X para refrigerar el motor del extrusor en los días más cálidos de verano, más que nada por precaución, ya que no he visto una necesidad real. He medido temperaturas de unos 70º en el motor, y no confío mucho del PLA.

En el agujero grande se coloca un potenciómetro que controla la corriente de base de un transistor para regular la velocidad del ventilador.

Creo que me cargué la fuente de alimentación anterior trasteando para mejorar el control de la misma por programa, así que compré una fuente nueva de 650W y le hice un frontal conectores USB para cargar móviles haciendo uso de la salida de 5V permanente.

más cosas, pendientes de documentar

He añadido algo de electrónica para resolver el siguiente problema: el programa de control de la impresora gestiona la fuente de alimentación, pero desde el momento de pulsar el botón hasta que el Arduino Mega arranca y asume el control de la fuente pasan unos segundos, quizá 2 o 3. Me las he apañado para que al pulsar el botón se cargue un condensador que mantiene activo el encendido durante ese tiempo necesario para que arranque el microcontrolador.

Otro añadido es un sistema que permita tener simultáneamente hasta 4 finales de carrera en serie: dos mecánicos que sólo requieren cable de señal y masa, y dos electrónicos que también necesitan alimentación de 5V. Sirven para esto:

  • el principal y permanente, que es un interruptor mecánico para la sonda móvil de Z.

  • un secundario y permanente también, que es un endstop óptico de seguridad por si falla el principal.

  • uno mecánico para tomar alturas con la herramienta de rotular placas de circuito impreso.

  • uno electrónico con la lógica invertida para medir alturas con la broca de taladrar placas de circuito impreso.