Las impresoras 3D utilizan un lenguaje de programación llamado G-code para controlar el proceso de impresión. El G-code es un estándar en la industria para las máquinas de control numérico (CNC), incluidas las impresoras 3D. Proporciona instrucciones detalladas para la máquina sobre movimientos, velocidades y otras acciones necesarias para fabricar objetos físicos.

En este articulo profundizaremos en los detalles de gcode y un poco en la programación de impresoras 3D.

Qué verás a continuación: mostrar

Introducción

Las impresoras 3D son máquinas basadas en microprocesadores, así como lo son las computadoras o teléfonos celulares de hoy en día. Todos los dispositivos basados en microprocesadores tienen un lenguaje máquina específico basados en unos y ceros (lenguaje binario).

Como este lenguaje es poco entendible por nosotros y es específico para cada procesador, no es muy práctico trabajarlo directamente. Lo mejor es un lenguaje un poco menos complejo y más genérico.

El lenguaje de programación de control numérico (CNC programming) se ha consolidado como el estándar en el mundo de la fabricación automatizada. Existen diversos tipos de lenguajes de control numérico y el lenguaje g code es uno de los populares debido a su menor complejidad y pequeño tamaño.

Paso a paso para programar una Impresora 3D

Si deseas programar una impresora 3D a nivel de G-code, hay varios pasos y consideraciones importantes a tener en cuenta. Aquí te guiaré a través del proceso:

  1. Aprender los Fundamentos del G-code: Primero, es esencial entender los comandos básicos de G-code y cómo funcionan. En la siguiente sección veremos los fundamentos de Gcode.
  2. Entender tu Impresora 3D: Diferentes impresoras 3D pueden tener variaciones en la forma en que interpretan el G-code. Revisa el manual de tu impresora 3D o la documentación en línea para comprender sus especificaciones y capacidades.
  3. Escribir G-code Manualmente: Puedes comenzar a escribir G-code usando un editor de texto simple. Esto te permitirá crear archivos de texto con extensiones .gcode o .nc que puedes luego cargar en tu impresora 3D. Comienza con programas simples para familiarizarte con el proceso.
  4. Prueba y Error: La programación a este nivel implica mucha experimentación. Comienza con movimientos simples, como mover el extrusor a diferentes posiciones o calentar la boquilla a una temperatura específica. Gradualmente, puedes incrementar la complejidad de tus programas.
  5. Utilizar Software de Rebanado para Ejemplos: Para obtener una mejor idea de cómo se ve un G-code típico para un objeto completo, puedes usar un software de rebanado, como Cura 3D, para convertir un modelo 3D en G-code. Luego, examina el archivo G-code generado para entender cómo se estructura para una impresión real.
  6. Cargar G-code en la Impresora: Una vez que tengas un archivo G-code, puedes transferirlo a tu impresora 3D. Esto generalmente se hace a través de una tarjeta SD, USB, o directamente desde una computadora.
  7. Observar y Ajustar: Observa cómo tu impresora 3D interpreta y ejecuta tu G-code. Es probable que necesites hacer ajustes para lograr los resultados deseados.
  8. Seguridad: Siempre mantén la seguridad en mente. La programación manual de G-code puede llevar a errores que podrían dañar tu impresora o ser peligrosos (como mover el extrusor demasiado rápido o calentar demasiado algún componente).
  9. Recursos Adicionales: Existen comunidades en línea y foros donde puedes obtener consejos, compartir tus experiencias y aprender de otros que programan impresoras 3D a nivel de G-code.

Recuerda que programar una impresora 3D a nivel de G-code puede ser complejo y requiere paciencia y práctica. Es una habilidad valiosa para aquellos que buscan un control más preciso sobre el proceso de impresión 3D.

¿Que es G-code?


Gcode (o código G) es un lenguaje de control numérico usado para enviar instrucciones a la mayoría de equipos de fabricación automatizada, incluyendo las impresoras 3D. Es un lenguaje simple que usa líneas de código con diferentes letras y números para indicar a la impresora, dónde moverse, cuando moverse, encendido y apagado de ventilador, inicio de calentamiento de la boquilla, por nombrar algunas.

archivo gcode para impresora 3d

Aunque Gcode es el lenguaje más usado para el control de las impresoras 3D, no es el único. x3g es otro lenguaje usado por impresoras 3D como la ReplicatorG y la MakerBot. Sin embargo, x3g es un lenguaje binario (basado en unos y ceros) más difícil de entender que Gcode.. Por otro lado, G code es más usado por las impresoras DIY y Open Source.

Para que tu nueva impresora 3D pueda correr este lenguaje de instrucciones, el firmware de la impresora debe soportar el formato .gcode.

¿Dónde descargar archivos GCode gratis?

Puedes descargar archivos G-code gratuitos de varias fuentes en línea. Estos son algunos sitios web populares donde los usuarios comparten sus diseños, muchos de los cuales incluyen archivos G-code o te permiten generarlos a partir de los modelos 3D disponibles:

  • Thingiverse: Es uno de los sitios más grandes y populares para compartir modelos 3D. Aunque principalmente encontrarás archivos STL, muchos usuarios también suben archivos G-code, o puedes generarlos fácilmente a partir de los modelos STL utilizando un software de rebanado como Cura.
  • MyMiniFactory: Este sitio ofrece una amplia gama de modelos 3D. Al igual que Thingiverse, la mayoría son archivos STL, pero puedes convertirlos en G-code utilizando un software de rebanado.
  • Cults: Cults es una plataforma digital para comprar y vender archivos 3D, pero también ofrece una gran cantidad de modelos gratuitos. Puedes descargar los archivos STL y luego convertirlos en G-code.
  • PrusaPrinters: Un sitio de la comunidad de Prusa, donde los usuarios comparten modelos 3D. Muchos de estos modelos se pueden descargar en formato STL y luego convertir a G-code.
  • GrabCAD: Más orientado hacia ingenieros y profesionales, GrabCAD ofrece una biblioteca extensa de modelos 3D, incluyendo algunos que pueden ser apropiados para la impresión 3D.
  • YouMagine: Otra comunidad de intercambio de diseños 3D, similar a Thingiverse, con una buena selección de modelos.
  • Instructables: Aunque es más conocido por sus tutoriales paso a paso, Instructables a menudo incluye archivos G-code en proyectos relacionados con la impresión 3D.
  • Yeggi: Un motor de búsqueda para modelos 3D que te permite buscar en varios sitios web de archivos 3D al mismo tiempo.
  • Reddit: Subcomunidades como r/3Dprinting y r/functionalprint a menudo tienen usuarios que comparten sus propios diseños, a veces incluyendo archivos G-code.

Cuando descargues archivos G-code, ten en cuenta que pueden estar optimizados para una configuración específica de impresora 3D. Es recomendable comprender y revisar el G-code antes de imprimir, especialmente si lo descargas de una fuente que no conoces bien, para asegurarte de que sea compatible con tu impresora y de que no contenga errores o comandos que puedan dañar tu equipo.

Comandos Gcode para impresora 3D en PDF

A continuación puedes descargar el archivo pdf con el listado completo de comandos g que aplican para impresoras 3D.

¿Cómo están formados los comandos Gcode?


Puedes crear múltiples líneas de código combinando las diferentes instrucciones que conforman el lenguaje. Cada línea de código representa una instrucción que debe realizar la impresora 3D. Por ejemplo, la siguiente línea de código le indica a la impresora que debe mover su extrusor hasta la posición X=10 mm de la cama, a una velocidad de 3600 mm/min

G1 X10 F3600

Esto representa una línea de código y es una instrucción única para la impresora 3D.

También podemos crear muchas líneas de código, cada una indicando una instrucción distinta a la impresora. Por ejemplo, 


1 G1 X0 Y0 F2400 ; mover el extrusor a la posición X=0 y Y=0 de la cama, a una velocidad de 2400 mm/min.

2 G1 Z10 F1200 ; mover el eje Z a la posición Z=10 mm, a una velocidad de 1200 mm/min.

3 G1 X30 E10 F1800 ; pasa 10 mm a través de la boquilla mientras mueves el extrusor a la posición X=30 mm.


Estas 3 líneas de código le indican a la máquina 3D que debe moverse a las provisiones indicadas en los comentarios y a la velocidad indicada.

Las letras del Código G para Impresoras 3D

Cada línea de código está compuesta por diferentes combinaciones de letras y números. Cada combinada le indican algo específico a la impresora. A continuación, vemos el significado de cada letra:

G = Comandos G. Comandos G code geométricos para indicar movimientos del extrusor de la impresora 3D. Se usan para iniciar las instrucciones de movimientos a través de la plataforma de impresión.

M = Comandos M. Comandos máquina no geométricos usados para iniciar acciones que no están asociados a movimientos sobre la plataforma de impresión. Encender/apagar, calentar/enfriar, etc.

X/Y/Z = Ejes de coordenadas. Indican que el extrusor debe moverse en alguna de los ejes X, Y o Z.

F = Velocidad del movimiento. Se usa para indicar la velocidad a la que debe moverse el extrusor de la impresora 3D.

E = Extrusión de filamento. Se usa para indicar la cantidad de filamento que debe ser pasado a través de la boquilla del extrusor.

S = Temperatura del extrusor o velocidad del ventilador de enfriamiento. Cuando se usa con los comandos G, se usa para indicar la temperatura (en grados centígrados) que debe alcanzar el extrusor. También se usa para ajustar la velocidad del ventilador que enfría el objeto impreso, cuando se usa con los comandos M.

T = Especificar extrusor. Cuando tenemos más de 1 extrusor, podemos especificar cual extrusor se usará en cada comando específico. Con T0, normalmente, solicitamos el extrusor derecho. T1, se suele usar para pedir el extrusor izquierdo.

Cada letra va acompañada de uno o varios números que representan el valor a ejecutar o un argumento que complementa el comando.

Más abajo vemos cómo el número puede influenciar bastante la ejecución de la tarea de impresión 3D.

El símbolo Punto y Coma (;)

El signo de punto y coma (;) se usa para agregar comentarios al código sin que esto afecte la programación. Es decir, el compilador no toma en cuenta nada que esté después del punto y coma.

Los números en G code para Impresora 3D

Los números indican el valor del comando a ser ejecución. En el caso de los comandos con G y M, los números cambian el tipo de comando. Veamos algunos casos:

F3600. El número 3600 indica el valor de velocidad a la que debe moverse el brazo de la impresora 3D. En este caso, es 3600 mm/min.

E20. El 20 representa la cantidad de filamento que debe ser pasada a través del extrusor. En este caso, es 20 mm.

X15, Y10. En este caso, el 15 indica los milímetros que debe moverse el extrusor en el eje X, mientras que el 10 indica que debe moverse 10 mm en el eje Y.

Z10. En este caso, la impresora debe elevar el extrusor 10 mm hacia arriba en el eje Z.

G1. En este caso, el 1 no representa un valor geométrico. Solo se usa para indicar el tipo de comando que se quiere enviar. En este caso, G1 indicar que el comando es un movimiento lineal.

M104. Al igual que en el caso del comando G, El número 104 del comando M no representa un valor geométrico sino que se usa para indicar una función que se debe realizar. El M104 es un comando de máquina usado para iniciar el calentamiento del extrusor.

S255, S0, S127. Cuando se usa el comando S para representar la velocidad de ventilación, el número que lo acompaña puede estar entre 0 y 255. 0 representa el 0% de velocidad, es decir, apagado, y el 255 representa el 100 % de la velocidad, es decir, velocidad máxima.

Argumentos en los Códigos Gcode

Los comandos G y M pueden requerir argumentos para que la instrucción sea completada.

El resto de los comandos E, F, X, Y o Z junto con sus números de valor sirven de argumentos para los comandos G y M. Por ejemplo, 

G1 E10 F800

G1 es el comando G que especifica un movimiento lineal. E10 y F800 son los argumentos del comando que especifican empujar el filamento 10 mm a través de la boquilla y hacerlo a una velocidad de 800 mm/min, respectivamente.

Modos de posicionamiento en Gcode

Cuando envías un comando de movimiento a la impresora 3D, se lo puedes enviar en forma absoluta o relativa.

Un movimiento absoluto requiere indicar la posición específica dónde quieres que vaya el.extrusor sobre la cama. En estos casos, los valores indicados en X, Y y Z representan valores exactos en milímetros sobre la plataforma de impresión.

Al pedir una ubicación relativa, le dices a la máquina 3D que se mueva ciertos milímetros desde la ubicación actual del extrusor.

El movimiento absoluto es mayormente usado en los códigos G ya que los slicers suelen conocer la posición cero de la impresora 3D y suelen determinar previamente las opciones exactas a dónde moverse.

El comando G90 pide un movimiento absoluto, mientras que el comando G91 pide un movimiento relativo. Más adelante, veremos ejemplos de estos comandos.

El comando E – Extrusor


El extrusor es controlado como si fuera un eje adicional en la impresora 3D. En este caso, la letra E se usa para representar el eje del extrusor y suele ser usada en muchos comandos de movimiento como un eje más.

En el siguiente ejemplo se muestra como se le pide al extrusor que pase 2 mm de filamento a través de la boquilla. El comando G1 indica que el comando es lineal, como pasa con los ejes X, Y y Z.

G1 X7 Y18 F500 E2

Ejemplo: Programando Gcode en la Impresora 3D Ender 3

Programar G-code para una impresora 3D como la Ender 3 puede ser un desafío interesante y educativo. A continuación, te proporcionaré un ejemplo básico de cómo podrías escribir un G-code para realizar una tarea sencilla, como calentar la boquilla y la cama, mover el extrusor y luego realizar una impresión de prueba pequeña.

; Ejemplo de G-code para Ender 3
; Preparación y calentamiento
M104 S200 ; Calentar extrusor a 200 grados Celsius
M140 S60 ; Calentar cama a 60 grados Celsius
M109 S200 ; Esperar a que el extrusor alcance la temperatura
M190 S60 ; Esperar a que la cama alcance la temperatura

; Movimiento inicial
G28 ; Mover a la posición inicial
G21 ; Establecer unidades en milímetros
G90 ; Usar posicionamiento absoluto
G92 E0 ; Reiniciar la posición del extrusor

; Realizar una línea de purga
G1 Z0.2 F3000 ; Mover el extrusor a 0.2mm del bed
G1 X0.1 Y20 Z0.3 F5000.0 ; Mover para iniciar la línea
G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Extruir mientras se mueve
G92 E0 ; Reiniciar la posición del extrusor

; Impresión de una pequeña prueba (un cuadrado de 20x20mm)
G1 X20 Y20 F3000 ; Mover a la posición de inicio del cuadrado
G1 Z0.2 ; Bajar el extrusor
G1 F900 ; Establecer velocidad del extrusor
; Dibujar cuadrado
G1 X40 E30 ; Mover a la derecha extruyendo
G1 Y40 E60 ; Mover hacia atrás extruyendo
G1 X20 E90 ; Mover a la izquierda extruyendo
G1 Y20 E120 ; Volver al inicio extruyendo

; Terminar la impresión
G92 E0 ; Reiniciar la posición del extrusor
G1 E-1 F300 ; Retraer un poco de filamento
G28 X0 Y0 ; Volver al origen
M104 S0 ; Apagar el calentador del extrusor
M140 S0 ; Apagar el calentador de la cama
M84 ; Desactivar motores

Explicación del Código:

  • M104 y M140 comienzan a calentar la boquilla y la cama, respectivamente.
  • M109 y M190 esperan a que la boquilla y la cama alcancen las temperaturas deseadas.
  • G28 mueve la impresora a su posición de origen.
  • G21, G90 y G92 son comandos de configuración para unidades, posicionamiento y reinicio del extrusor.
  • G1 es un comando de movimiento. Se usa para mover el extrusor y extruir el filamento.
  • Luego, se realiza una impresión de prueba simple, un cuadrado de 20x20mm.
  • Finalmente, se apagan los calentadores y se desactivan los motores.

Este es un ejemplo básico y deberías ajustar los parámetros según las necesidades de tu proyecto y las especificaciones de tu Ender 3. Recuerda siempre supervisar la impresora durante las pruebas, especialmente cuando experimentas con G-code personalizado, para evitar daños en tu equipo.

Ver Gcode con Cura 3D – Paso a paso

Para usar G-code en conjunto con Cura 3D sigue estos pasos:

  1. Instalar y Abrir Cura 3D:
    • Si aún no tienes Cura, descárgalo e instálalo desde el sitio web oficial de Ultimaker Cura.
    • Abre Cura en tu computadora.
  2. Configurar la Impresora en Cura:
    • Al abrir Cura por primera vez, te pedirá que configures tu impresora. Selecciona la Ender 3 o ingresa los detalles de tu impresora si no está en la lista.
    • Ajusta los parámetros de la impresora según sea necesario, como el tamaño del área de impresión y las configuraciones de la boquilla.
  3. Cargar el Modelo 3D:
    • Importa tu modelo 3D en Cura usando la opción «Abrir archivo» o simplemente arrastrando y soltando el archivo en la ventana de Cura.
    • Ajusta la orientación y la posición del modelo en la plataforma de impresión virtual si es necesario.
  4. Configurar los Parámetros de Impresión:
    • Selecciona el material y la calidad de impresión. Cura ofrece varios perfiles predefinidos, pero puedes personalizarlos según tus necesidades.
    • Ajusta configuraciones como relleno, soportes, adhesión a la base y otras opciones específicas para tu modelo.
  5. Rebanar y Previsualizar:
    • Haz clic en «Rebanar» para convertir tu modelo en G-code. Cura procesará el modelo y te dará una estimación del tiempo de impresión y la cantidad de material requerido.
    • Utiliza la función de previsualización para revisar las capas y asegurarte de que todo esté configurado correctamente.
  6. Guardar o Exportar el G-code:
    • Una vez que estés satisfecho con la previsualización, guarda el archivo G-code generado en tu computadora o directamente en una tarjeta SD/USB, según lo admita tu impresora.
  7. Cargar el G-code en la Impresora 3D:
    • Inserta la tarjeta SD/USB en tu impresora 3D o conecta la impresora a tu computadora, según tu configuración.
    • Selecciona el archivo G-code en el menú de la impresora para comenzar la impresión.

Veamos ahora los detalles de los comandos Gcode

¿Cuáles son los comandos G? – Listado de comandos Gcode para impresoras 3D


Como ya hemos dicho, la comandos G son instrucciones geométricas que inician los comandos del código G. Los comandos G inician con la letra G (de ahí el nombre) y siempre van acompañados por un número que especifica el tipo de comando a ser ejecutado.

Veamos los comandos G más comunes usados en impresión 3D:

Comando G1 – Movimiento lineal

G1 es el comando G más usado en el código G y especifica un movimiento en línea recta de cualquiera de los ejes X, Y y Z. Puedes pedir el movimiento de uno de los ejes o de varios en un solo comando. Por ejemplo,

G1 Z18 F2400

Se usa para pedir un movimiento lineal del eje Z. La impresora 3d debe elevar el extrusor 18 mm hacia arriba a una velocidad de 2400 mm/min.

G1 X10 Y10 F1200

Está instrucción pide un movimiento lineal de los ejes X y Y en un solo comando. El extrusor debe moverse hasta la posición X=10 mm y Y=10 mm de la cama de impresión. En ambos casos, debe ejecutarse a una velocidad de 1200 mm/min.

Por otro lado, como el extrusor es tratado como un eje adicional, se puede usar el comando E dentro de las instrucciones para pedir el empuje de filamento a través de la boquilla, como se muestra a continuación:

G1 X30 E10 F1800 ; pasar 10 mm de filamento a través de la boquilla a una velocidad de 1800 mm/min y, al mismo tiempo, mover el extrusor a la posición X=30 mm.

Comando G2 y G3 – Movimiento circular

G2 inicia el movimiento del extrusor en el sentido de las agujas del reloj hasta una posición determinada. Cómo argumento se establecen las coordenadas de la ubicación final del extrusor y su eje de rotación con los parámetros I y J.

El parámetro I especifica cuánto se desplaza el eje X respecto a su posición actual.

El parámetro J establece cuánto se desplaza el eje Y respecto a su posición actual.

Por ejemplo,

G2 X15 Y5 I0 J-12

Se pide que el extrusor realice un movimiento circular en el sentido de las agujas del reloj. El eje central lo tendrás desplazando 0 mm en el eje X y -12 mm en el eje Y. El movimiento termina cuando el extrusor alcance las posiciones X=15 mm y Y=5 mm.

El comando G3 usa los mismo parámetros pero específica que el movimiento circular se ejecutar en sentido contrario al de las agujas del reloj. Por ejemplo,

G3 X-20 Y10 I1 J-15

Comandos G90 y G91 gcode – Modo de posicionamiento del extrusor

Antes de iniciar un movimiento del extrusor, debes especificar si el movimiento es absoluto o relativo.

Para un movimiento absoluto, el extrusor se mueve a una ubicación específica en los ejes X, Y, Z y E. El comando G90 se usa para especificar un movimiento absoluto. Un ejemplo se muestra a continuación:

G90
G1 X25 F3600 E0.02

El movimiento relativo implica que el extrusor avanzará ciertos milímetros en alguno de los ejes desde su provisión actual. Esto se especifica con el comando G91, tal como se muestra en el siguiente ejemplo:

G91
G1 X10 Y10 F2400

Comando G92 – Ajustar posición actual

El comando G92 se usa para ajustar el valor actual de alguno de los ejes o funciones a un valor deseado. Por ejemplo, puedes indicar a la impresora 3D que el filamento se ubique en la posición 0 mm en el extrusor como se muestra a continuación:

G92 E0 ; ajustar posición del filamento en la posición 0 mm.

En este caso, el argumento especifica el tipo de función o movimiento requerido. En vez de E, pudiste usar las coordenadas X, Y, o Z, para ajustar la posición del extrusor.

Comando G28 Gcode- Enviar el extrusor a Home

Lo más recomendable antes de iniciar la impresión 3D es llevar el extrusor hasta la posición conocida como Home. Esta es la posición en los bordes más lejanos de la impresora y es una ubicación conocida a nivel de programación.

Con código Gcode se puede hacer iniciar la secuencia de Home con el comando G28, como se muestra a continuación:

G28

Este es el comando sin el uso de argumentos y totalmente válido para llevar a los 3 ejes a su posición de Home.

Si queremos hacer Home de 1 o 2 ejes en específico, lo podemos hacer usando argumentos como se muestra a continuación:

G28 X ;  iniciar la secuencia de Home del eje X.
G28 Y Z ; iniciar la secuencia de Home de Los ejes Y y Z.

Comando G0 – Movimiento rápido

Si queremos llevar el extrusor a una posición específica de forma rápida, podemos usar el comando G0 e indicar las coordenadas del movimiento. Al usar G0, la impresora mueve el extrusor a las coordenadas indicadas usando la máxima velocidad de viaje de la máquina.

Por ejemplo,

G0 X5 Y10

Comandos G17, G18 y G19 – Establecer planos de circunferencia

Aunque se usan poco, los comandos G17, G18 y G19 te permiten establecer los planos para circunferencias de tus impresiones tridimensionales. Es decir, cambia el plano de referencia para la impresión.

G17 establece el plano en los ejes X y Y. En este caso, el círculo va alrededor del eje Z. Este es el plano predeterminado en todas las impresoras 3D.

G18 establece el plano en los ejes X y Z, mientras que G19 establece el plano en los ejes Y y Z. Ambos comandos cambian el significado de los parámetros I, j y k para los comandos G2 y G3.

Estos comandos se usan cuando realizar interpolación circular y, para ello, deben estar acompañados de los comandos G02 y G03.

Usarlos estos comandos en tan simple como se muestra a continuación:

G18

Comandos G20 y G21 – Establecer unidades de medida

Si estás en USA seguro quieres que tus impresiones sean en pulgadas, pero si estás en el resto del mundo quieres que las medidas de tus coordenadas sean en milímetros.

El comando G20 establece que las medidas sean en pulgadas, mientras que G21 las establece en milímetros. Sería algo así para pulgadas,

G20
G0 X5 Y13

Así sería para milimetros,

G21
G0 X5 Y13

Los comandos M


Los Comandos M son comandos a nivel de máquina que permiten ejecutar acciones no geométricas. Por ejemplo, encender o apagar el ventilador, subir o bajar temperatura de la boquilla, etc. Los comandos M arrancan con una M ( de allí su nombre).

Veamos los comandos M más importantes:

Comandos gcode M104 y M109 – Calentar Extrusor

Cuando queremos calentar el Extrusor para pasar el filamento a través de la boquilla, recurrimos a los comandos M104 y M109.

El comando M104 inicia el calentamiento del extrusor y al mismo tiempo permite la ejecución de otras acciones por parte de la impresora 3D. Por ejemplo:

M104 S190 T0 ; Iniciar el calentamiento del Extrusor T0 hasta 190 grados centígrados.
G28 X0 ; enviar todos los ejes a Home, mientras se calienta el Extrusor.

Recordemos que el comando S representa la temperatura deseada en grados centígrados y T se usa cuando existe más de un extrusor en la impresora.

El comando M109 ejecuta el calentamiento del extrusor pero no permite ejecutar otras actividades hasta que se alcance la temperatura programada.

M109 S190 T0 ; esperar a que el Extrusor T0 alcance los 190 grados centígrados para poder hacer alguna otra acción.

Comando M106 – Ajustar Velocidad del ventilador

Para controlar el ventilador que apunta hacia el objeto impreso podemos usar el comando M106 de la siguiente forma:

M106 S255 ; se ajusta el ventilador a la velocidad máxima.

En este caso, S especifica la velocidad del ventilador y 255 es el valor de velocidad máxima, siendo 255 = 100 % de la velocidad.

En el ejemplo siguiente, la velocidad del ventilador es ajustada a 50% con el 127 (255/2) acompañando a la S.

M106 S127

Si queremos apagar el ventilador, solo debemos ajustar la velocidad a 0, lo cual significa un 0% de velocidad.

M106 S0

Comando M112 – Parada de emergencia

Cuando las cosas se salen de control, se puede usar el comando M112 para detener inmediatamente el proceso de impresión. Los motores y los calentadores se enfrían cuando se activa este comando.

Comandos M140 y M190 – Calentar la cama

Cuando queremos calentar la cama caliente podemos usar los comandos M140 y M190, los cuales funcionan de forma similar a los comandos M104 y M109.

Con el comando M140, se iniciar el calentamiento de la plataforma de construcción mientras otros comandos se ejecutan en paralelo. A continuación se muestra un ejemplo:

M140 S50 ; iniciar el calentamiento de la cama hasta 50 grados centígrados.
G28 ; Llevar los 3 ejes a Home.

Por otro lado, el comando M190 se usa para bloquear cualquier otro comando hasta que se alcance la temperatura programada. En el ejemplo, a continuación, se muestra como programar el comando M190:

M190 S50 ; Calentar hasta 50 grados centígrados. Esperar alcanzar esta temperatura para poder ejecutar algún otro comando.

¿Cómo crear instrucciones G-code?


Todas las impresoras comerciales tienen su propio programa slicer que se encarga de convertir el modelo 3D y las instrucciones en Gcode. Es un proceso automático realizado por el software y es la forma recomendada para la mayoría de los proyectos.

En el programa slicer, configuras los parámetros de temperatura, velocidad de ventilador, etc. Todo lo haces con ventanas fáciles de manejar. 

Cuando haces la compilación del código y lo envías a la impresora 3D, el slicer convierte esos parámetros en comandos M.

El slicer también filetea el modelo 3D (que vino en formato stl) y lo convierte en código G (Comandos G).

También puedes crear Gcode desde cero como se explica a continuación:

Crear Código Gcode desde cero – Modificar gcode


Si eres un fanático del DIY o estás creando tu propia impresora 3D, puedes crear tu propio código G desde cero respetando los comandos asociados al firmware de tu impresora 3D. Recuerda que cada impresora tiene su propio firmware y cada firmware tiene su propio Gcode.

Para las impresoras Open source RepRap se suele usar el muy popular firmware Marlin. Todas las impresoras 3D DIY que tienen este firmware respetan los comandos estándares de código G indicados al principio de este artículo.

Para crear tu código G desde cero solo necesitas un editor de texto como notepad++ y empezar a escribir las instrucciones y comandos para el firmware de tu impresora 3D.

Nota: no recomendamos realizar la creación de Gcode desde cero a menos que estés muy especializado en programación de lenguaje máquina. Ten en cuenta que un comando mal colocado puede causar daños a tu impresora.

Slicers como Simplify3D, Cura o Slic3r tienen herramientas para la edición y prueba de las instrucciones que vas creando paso a paso

¿Cómo editar un archivo Gcode?


Para editar un archivo de código G (editar gcode) necesitas usar un editor de texto como Notepad++. La gente de Simplify3D ofrecen un archivo XML que permiten remarcar la sintaxis del código. En los siguientes enlaces puedes descargar el Notepad++ y la el archivo creado por Simplify3D.

https://notepad-plus-plus.org/downloads/

https://www.simplify3d.com/public/3DP-Gcode-Styling.xml

Comandos Gcode Marlin


El lenguaje máquina que usa Marlin para el control de las impresoras 3D es un derivado de gcode y, por ende, su parecido a inminente. Veamos los códigos gcode para el firmware Marlin más importantes, a continuación:

Todos los ejemplos fueron tomados desde la página oficial del firmware Marlin.

G0, G1 – Movimiento Lineal

Permite agregar un movimiento lineal al conjunto de movimientos que ya se encuentra en la cola de ejecución.

Ejemplo

G0 X12   ; mover hasta 12 mm en el eje X
G0 F1500 ; ajustar el feedrate a 1500 mm / minuto 
G1 X90.6 Y13.8 ; mover hasta 90.6 mm sobre el eje X y 13.8 mm sobre el eje Y 

G2, G3 – Movimiento circular o de arco

Por un lado, G2 inserta un movimiento en forma de arco en el sentido de las agujas del reloj, mientras que G3 agrega un movimiento en el sentido contrario al de las agujas del reloj.

Ejemplos

G2 X125 Y32 I10.5 J10.5 ; mover en un arco en el sentido de las agujas del reloj desde la posición actual hasta [125, 32] con un desplazamiento desde el centro de (10.5, 10.5).
G3 X125 Y32 I10.5 J10.5 

G4 – Pausa

Ejecuta un comando de pausa de todos lo comandos por un periodo de tiempo.

Ejemplo

G4 P500 ; Pausar por 1/2 segundo

G10 – Retraer Filamento

Se encarga de retraer el filamento de acuerdo con los ajustes del código M107.

Ejemplo

G10 ; Retraer

G12 – Limpiar la boquilla

Inicia el proceso de limpieza de la boquilla con alguno de los siguientes patrones de limpieza.

  • Trazos rectos.
  • Zigzag.
  • Trazos circulares.

Ejemplos

G12 ; trazos rectos (default) 
G12 P1 S1 T3 ; limpieza en zigzag con 3 triángulos 
G12 P2 S1 R10 ; limpieza en forma circular con radio de 10 mm

G28 – Auto Home (Origen)

Ejecuta el Home de uno o todos los ejes enviándolos hasta sus topes o puntos de origen.

Ejemplos

G28 ; ir todos los ejes al punto de origen 
G28 X Z ; ir a Home solo los ejes X y Z 

Más info sobre Impresoras 3D

Scroll al inicio