3D 프린터나 CNC 머신을 사용하다 보면 G-code라는 말을 자주 접하게 됩니다. 그런데 G-code가 정확히 무엇인지, 왜 필요한지 아는 사람은 많지 않습니다. 이번 글에서는 G-code의 기본 개념부터 구조, 실사용 예시까지 자세히 알아보겠습니다.
1. G-code란 무엇인가?
G-code(Geometric Code)는 기계 장치가 수행할 작업을 지시하는 프로그래밍 언어입니다.
주로 CNC 머신, 3D 프린터, 레이저 커터에서 사용되며, 기계가 정확한 위치로 이동하거나 특정 동작을 수행하도록 지시합니다.
- 목적: 장치가 정확한 위치, 속도, 경로를 따라 움직이게 함.
- 예시 장치: 3D 프린터, 밀링 머신, 레이저 커터, 플로터 등.
- 특징: 사람이 이해할 수 있는 문자 기반 명령어로 구성됨.
2. G-code의 기본 구조
G-code는 일반적으로 명령어 + 매개변수로 구성됩니다.
명령어는 크게 두 가지로 나뉩니다.
예시
| G 명령어 | 기계의 이동이나 기능 동작을 제어 | G0 X10 Y20 (빠른 이동) |
| M 명령어 | 기계의 부가 기능 제어 | M104 S200 (노즐 온도 설정) |
2.1 좌표 이동
G-code에서 가장 중요한 기능은 XYZ 좌표 이동입니다.
- G0 X10 Y10 Z5 : 빠른 이동 (공구 이동 속도 우선)
- G1 X50 Y50 Z0.3 F1500 : 지정 속도(F)로 선형 이동
3D 프린터에서는 Z축이 층 높이, F가 프린트 속도 역할을 합니다.
2.2 온도 설정
3D 프린터에서는 노즐과 히팅 베드를 제어하는 명령도 있습니다.
M104 S200 ; 노즐 온도를 200도로 설정
M140 S60 ; 베드 온도를 60도로 설정
M109 S200 ; 노즐 온도 도달 후 진행
2.3 기타 명령어
- G28 : 홈 포지션(원점) 이동
- G92 E0 : 압출기 위치 초기화
- M106 S255 : 팬 속도 제어
3. G-code 생성 과정
- 3D 모델 준비
CAD 또는 STL 파일을 준비합니다. - 슬라이싱(Slicing)
3D 모델을 층별 이동 경로로 변환합니다.
예: Cura, PrusaSlicer, Simplify3D - G-code 생성
슬라이서가 STL을 읽고 각 층의 이동 경로, 속도, 압출량을 G-code로 변환합니다. - 프린팅 실행
생성된 G-code를 프린터에 넣으면 기계가 명령대로 움직입니다.
4. G-code 작성과 수정
- 슬라이서를 사용하면 대부분 자동으로 생성됩니다.
- 하지만 정밀 제어나 특수 작업이 필요하면 G-code를 직접 수정할 수 있습니다.
- 예시: 서포트 제거, 특정 영역 속도 조절, 레이어별 온도 변경 등.
5. G-code 예시 (3D 프린터)
; 시작 부분
G28 ; 홈 이동
M104 S200 ; 노즐 온도 설정
M140 S60 ; 베드 온도 설정
G1 Z0.3 F500 ; 첫 레이어 높이 이동
G1 X50 Y50 F1500 ; 프린트 시작 위치 이동
G1 E10 F200 ; 필라멘트 압출
이런 명령어 한 줄 한 줄이 프린터의 움직임을 제어합니다.
6. G-code 활용 팁
- 디버깅: 프린트가 실패할 때 G-code를 확인하면 문제 원인을 알 수 있음.
- 최적화: 이동 경로, 속도, 압출량 등을 조절하면 프린트 품질 향상.
- 자동화: CNC 가공, 레이저 절단 등 다른 장비에서도 동일한 원리로 적용 가능.
7. 결론
G-code는 기계를 이해하고 제어하는 핵심 언어입니다.
3D 프린터, CNC, 레이저 커터를 제대로 활용하려면 G-code 구조와 명령어를 이해하는 것이 중요합니다.
- 슬라이서를 통해 자동으로 생성되지만, 직접 이해하면 프린트 품질과 효율을 높일 수 있습니다.
- 필요하면 직접 수정하여 맞춤형 작업도 가능하다는 점이 큰 장점입니다.
📘 핵심 참고 논문 & 자료 (DOI 포함)
1. G‑code 최적화와 머신러닝
- Machine Learning G‑Code Optimization
Héctor Lasluisa‑Naranjo 외, Engineering Proceedings, 2024.
➤ DOI: https://doi.org/10.3390/engproc2024077032
— G‑code 파라미터(온도, 속도 등)를 머신러닝으로 분석·최적화해 제조 시간과 재료 소모를 줄이는 방법을 다룸.
2. G‑code 보안 및 조작 탐지
- Machine learning‑based early detection of malicious G‑code manipulations in 3D printing
Journal of Manufacturing Processes, 2025.
➤ DOI: https://doi.org/10.1016/j.jmapro.2025.04.012
— 3D 프린터 G‑code를 악성 조작으로부터 사전 탐지하는 머신러닝 기법 연구.
3. G‑code 처리와 시뮬레이션
- GPAMS: A G‑code processor for advanced additive manufacturing simulations
Additive Manufacturing, 2023.
➤ DOI: https://doi.org/10.1016/j.addma.2022.103279
— G‑code를 FEM 시뮬레이션에서 활용할 수 있도록 처리하는 프레임워크.
4. 로보틱스 3D 프린팅용 G‑code 생성
- Angled G‑Code Generator for Robotics Additive Manufacturing
Acta Mechanica Slovaca, 2024.
➤ DOI: 10.21496/ams.2024.022
— 6자유도 로봇 기반 대형 AM(첨가제조)에서 최적의 움직임 경로 G‑code 생성 연구.
5. 3D 프린팅 전반적 머신러닝·AI 리뷰 (간접 참고용)
- A review on machine learning in 3D printing: applications, potential, and challenges
Artificial Intelligence Review, 2021.
➤ DOI: 10.1007/s10462-020-09876-9
— 3D 프린팅에서 머신러닝 적용 전반을 다루며 G‑code 최적화나 공정 제어도 개괄적으로 설명하는 리뷰.
참고용 arXiv/오픈 자료 (정식 DOI 없음)
- Towards Foundational AI Models for Additive Manufacturing: Language Models for G‑Code Debugging, Manipulation, and Comprehension
– G‑code 자동 디버깅과 변형을 위한 LLM 연구 (arXiv: 2309.02465). - Slice‑100K: A Multimodal Dataset for Extrusion‑based 3D Printing
– G‑code 대규모 데이터셋 소개 (arXiv: 2407.04180). - Formalizing Linear Motion G‑code for Invariant Checking and Differential Testing
– G‑code의 정확성 검증과 테스트 자동화 도구 연구 (arXiv: 2509.00699)
'생산 제조 기술' 카테고리의 다른 글
| FGM(Functionally Graded Material)이란? (2) | 2026.05.02 |
|---|---|
| 반도체 공정의 OPC (Optical Proximity Correction)란? (0) | 2026.04.25 |
| 반도체 노광 기술이란? (0) | 2026.04.22 |
| HBM이란? (0) | 2026.01.29 |
| LSCM (Laser Scanning Confocal Microscopy)란? (0) | 2026.01.17 |