#Novedades de la industria
G-code para impresoras de investigación LPBF
SnowWhite2 & MetalOne
El G-code como ventaja para sistemas de investigación de fusión por láser en lecho de polvo
El G-code, desarrollado originalmente como un lenguaje de programación de control numérico (CN) estandarizado, se utiliza ampliamente para definir trayectorias de herramientas y operaciones para máquinas de control numérico por computadora (CNC). Su adopción como estándar de facto para impresoras 3D de fabricación por filamento fundido (FFF) resalta su versatilidad y amplia aceptación. Los comandos G-code se clasifican en tres categorías: movimiento, selección de herramienta y funciones especiales.
Comandos básicos de G-code
Comandos de movimiento (G0/G1): Estos comandos dictan el movimiento de los ejes de la máquina. G0 denota típicamente un movimiento rápido sin extrusión, mientras que G1 especifica un movimiento lineal controlado, a menudo acompañado de una acción como extrusión en FFF o activación del láser en sistemas basados en láser.
G0 X10: Mueve el eje X a la posición de 10 mm desde el origen.
G0 X10 Y15: Mueve el eje X a 10 mm y el eje Y a 15 mm desde el origen.
G1 X20 Y20 E10: Mueve el eje X a 20 mm y el eje Y a 20 mm desde el origen, mientras realiza simultáneamente una acción cuantificada por el parámetro E (por ejemplo, extruir 10 mm de filamento en FFF).
G1 Z0.1: Traslada el eje Z en 0,1 mm, comúnmente usado para cambios de capa en fabricación aditiva.
Comandos de selección de herramienta (T): Estos comandos permiten la selección de herramientas o configuraciones específicas. El formato es una T seguida de un entero no negativo.
T0: Selecciona la herramienta 0.
T1: Selecciona la herramienta 1.
T5: Selecciona la herramienta 5.
Implementación de G-code en sistemas de fusión por láser en lecho de polvo (PBF)
En sistemas de fabricación aditiva basados en láser, particularmente para aplicaciones de investigación que involucran lechos de polvo, el G-code ofrece un método robusto y preciso para controlar la trayectoria del láser y los parámetros operativos. Aquí, el eje E (a menudo usado para extrusión en FFF) se reutiliza para controlar la activación del láser. Cuando el parámetro E se establece en un valor distinto de cero durante un comando de movimiento G1, indica que el láser debe estar activo durante la duración de ese movimiento.
Además, los comandos de selección de herramienta (T) se emplean estratégicamente para definir parámetros específicos del láser, como la potencia del láser y la velocidad de escaneo. Esta capacidad es crucial para la investigación, ya que permite una experimentación rápida y sistemática con diferentes parámetros de procesamiento dentro de una sola construcción. Por ejemplo:
gcode
T0 ; Selecciona la herramienta 0, correspondiente a un conjunto predefinido de parámetros láser (ej. velocidad, potencia)
G1 X15 Y15 E1 ; Mueve el láser desde su posición actual a (15,15) con el láser activado usando los parámetros definidos por T0.
Ejemplo ilustrativo: Dibujar un cuadrado con parámetros láser variables
La siguiente secuencia G-code demuestra la capacidad de aplicar diferentes parámetros láser a diferentes segmentos de una geometría, una característica valiosa para la investigación en ciencia de materiales y la optimización de procesos. Este ejemplo dibuja un cuadrado de 1 cm en el lecho de polvo, aplicando parámetros de T0 para líneas horizontales y de T1 para líneas verticales.
gcode
T0 ; Establece parámetros láser para líneas horizontales (ej. Potencia A, Velocidad B)
G0 X10 Y10 ; Movimiento rápido a la esquina inicial del cuadrado (10,10)
G1 X20 Y10 E1 ; Dibuja la primera línea horizontal desde (10,10) hasta (20,10) con láser activado (configuración T0)
T1 ; Establece parámetros láser para líneas verticales (ej. Potencia C, Velocidad D)
G1 X20 Y20 E1 ; Dibuja la primera línea vertical desde (20,10) hasta (20,20) con láser activado (configuración T1)
T0 ; Vuelve a seleccionar parámetros T0
G1 X10 Y20 E1 ; Dibuja la segunda línea horizontal desde (20,20) hasta (10,20) con láser activado (configuración T0)
T1 ; Vuelve a seleccionar parámetros T1
G1 X10 Y10 E1 ; Dibuja la segunda línea vertical desde (10,20) hasta (10,10) con láser activado (configuración T1)
Funcionalidad extendida mediante manipulación del G-code
La naturaleza abierta y textual del G-code proporciona ventajas significativas para los investigadores, permitiendo funcionalidades avanzadas que el software de segmentación estándar podría no ofrecer directamente. Al modificar o generar G-code de forma programática, los investigadores pueden implementar nuevas estrategias de procesamiento y explorar comportamientos complejos de los materiales. Dos ejemplos notables incluyen el refundido y los patrones de relleno personalizados.
Refundido
El refundido es una técnica utilizada para mejorar la calidad de la superficie y la densidad de las piezas fabricadas. Implica un segundo paso del láser sobre el material solidificado, típicamente enfocándose en los contornos externos de cada capa. Si bien los segmentadores FDM a menudo permiten controlar el número de perímetros (o «pieles») y las trayectorias de herramienta asociadas, implementar el refundido en un sistema láser PBF se puede lograr manipulando inteligentemente el G-code generado.
Específicamente para cada capa (es decir, justo antes de un incremento positivo del eje Z), los segmentos G-code correspondientes a los contornos externos (a menudo identificados por cambios de herramienta específicos) se pueden duplicar. Esta duplicación crea efectivamente un segundo paso, permitiendo que el láser refunda las áreas designadas. Este enfoque ofrece un control preciso sobre la estrategia de refundido sin requerir modificaciones en el algoritmo de segmentación principal.
Relleno con patrones personalizados
La estructura línea por línea del G-code también facilita la implementación de patrones de relleno personalizados sin alterar el software de segmentación. Esto es particularmente útil para investigar cómo diferentes geometrías internas afectan las propiedades mecánicas o la disipación térmica.
El proceso típicamente implica:
Identificación de líneas de relleno: El primer paso es identificar con precisión las líneas G-code que constituyen el relleno. En nuestra configuración usando Cura para metalONE, por ejemplo, la herramienta 4 (T4) está exclusivamente designada para operaciones de relleno. Esto permite una identificación sencilla de los bloques G-code relevantes.
Generación y transformación de patrones: Una vez identificadas las líneas de relleno, se puede generar mediante programación un patrón deseado de un ancho y alto específicos. Crucialmente, dado que cada línea G-code define un segmento con una dirección implícita en el plano XY, esta información se puede usar para orientar y rotar correctamente el patrón personalizado para alinearlo con la dirección de movimiento prevista del láser. Esto permite la creación de estructuras internas altamente especializadas que pueden variar capa por capa o incluso dentro de una sola capa.
Para probar nuestra idea, diseñamos este patrón:
[Luego generamos el G-code correspondiente y escribimos un script en Python que sustituyó cada aparición de los movimientos de la herramienta T4 por una repetición de nuestro patrón expresado a través del G-code correctamente rotado.]
Conclusión
La flexibilidad inherente y el amplio conocimiento del G-code lo convierten en un lenguaje excepcionalmente ventajoso para controlar sistemas láser en entornos de investigación. Proporciona a los investigadores un control detallado sobre las trayectorias del láser y los parámetros de procesamiento, facilitando la creación rápida de prototipos de diseños experimentales e investigaciones en profundidad sobre las interacciones material-proceso.