G-Code가 무엇인지, 기계가 이를 사용하는 방법, 그리고 SVG 및 래스터 이미지부터 펜 플로터, 레이저 조각기, 3D 프린터 및 CNC 밀을 위한 기계에서 바로 사용할 수 있는 파일까지 전체 생산 파이프라인을 살펴보세요.
G-Code(Geometric Code)는 CNC 기계를 구동하는 일반 텍스트 언어입니다. 각 파일(일반적으로 .gcode, .nc 또는 .cnc)은 기계에 이동 위치, 속도, 도구 활성화 시기를 알려주는 일련의 명령입니다. 선은 위에서 아래로 한 번에 하나씩 실행됩니다.
디자인은 청사진, G-Code는 단계별 주행 지침이라고 생각하면 됩니다. 3D 프린터는 JPG를 직접 이해하지 못하고, 펜 플로터도 문자 'A'의 모양을 스스로 해석하지 못합니다. G-Code는 모든 형상을 직선, 호, 도구 켜기/끄기 같은 기본 동작으로 쪼개어 어떤 모션 컨트롤러에서도 안정적으로 실행할 수 있게 해 줍니다.
이 표준은 1950년대 MIT로 거슬러 올라가며 1963년에 RS-274로 공식화되었고 1982년에 ISO 6983으로 국제적으로 출판되었습니다. 오래되었음에도 불구하고 G-Code는 취미용 데스크톱 프린터부터 산업용 5축 공장에 이르기까지 보편적인 제작 언어로 남아 있습니다.


각 라인(블록이라고 함)은 하나의 완전한 명령어입니다. 기계는 라인 사이의 상태를 기억합니다. 즉, 라인 10에 설정된 이송 속도는 변경하지 않는 한 라인 200에서 활성 상태로 유지됩니다. 이를 모달 상태라고 합니다.
다음은 50×50mm 정사각형을 그리는 펜 플로터 프로그램입니다:
G21 ; 밀리미터
G90 ; 절대 위치
G0 Z5.0 ; 리프트 펜
G0 X0 Y0 ; 원점으로 이동
M3 S1000 ; 펜 내리기
G1 X50.0 Y0 F2000
G1 X50.0 Y50.0
G1 X0 Y50.0
G1 X0 Y0
M5 ; 펜 올리기
M2 ; 끝
G1 X50.0 Y25.3 F1500 해설: G1 = 직선 이동, X50.0 Y25.3 = 도착 좌표, F1500 = 1500 mm/min입니다. G1은 한 번만 적고, 다음 좌표 줄은 G0나 다른 동작 명령이 나올 때까지 이 모드를 계속 사용합니다. 세미콜론 뒤의 내용은 주석이므로 기계는 무시합니다.

이러한 명령은 취미용 GRBL부터 산업용 Fanuc까지 거의 모든 펌웨어에서 작동합니다.
GRBL은 초 단위를 사용합니다. G4 P1.5는 1.5초 정지입니다. Marlin은 밀리초 단위를 사용하므로 G4 P1500이 같은 의미입니다. 단위를 잘못 쓰면 장비가 거의 멈추지 않거나 반대로 몇 분씩 멈춘 것처럼 보일 수 있습니다. 반드시 펌웨어 문서를 확인하세요.


플로터는 픽셀, 채우기 또는 원시 텍스트가 아닌 경로만 이해합니다. Inkscape, Illustrator 또는 Affinity Designer를 사용하여 SVG 스트로크 경로를 만듭니다. 모든 텍스트를 윤곽선으로 변환합니다. 채우기, 비트맵 및 효과를 제거합니다. 변환기에서는 자동으로 무시됩니다.
중복된 경로를 병합하고(펜이 동일한 선을 두 번 추적함) 조밀한 노드를 단순화하고 문서 크기를 픽셀이 아닌 밀리미터로 설정하여 나중에 DPI 크기 조정 문제를 방지합니다.
변환기는 각 경로를 G1 이동으로 변환하고 연결이 끊긴 스트로크 사이에 M3/M5 펜 리프트 명령을 삽입합니다. 가장 중요한 설정은 스트로크가 그려지는 순서인 경로 정렬입니다. 잘못된 정렬에서는 펜이 페이지 전체에 걸쳐 수천 번 지그재그로 움직입니다. 가장 가까운 이웃 정렬을 사용하면 밀집된 아트웍에서 이동 시간을 50% 이상 줄일 수 있습니다.
UGS(Universal Gcode Sender) 또는 bCNC를 통해 파일을 GRBL 펌웨어로 스트리밍합니다. 발신자는 라인을 하나씩 전달합니다. GRBL은 각각을 스테퍼 모터 펄스로 변환합니다.
벡터 모드는 일정한 전력으로 경로를 추적합니다. 윤곽선과 새겨진 선을 자르는 데 사용합니다. 래스터 모드는 프린터처럼 앞뒤로 스윕하여 픽셀별로 전력을 변화시킵니다. 사진 및 음영 채우기에 사용합니다. 단일 작업은 별도의 레이어에서 두 모드를 모두 사용할 수 있습니다.
LightBurn 또는 LaserGRBL과 같은 도구는 M3 S[값]을 출력하여 레이저를 발사하고 M5를 출력하여 중지합니다. 래스터 모드에서는 S 값이 모든 G1 라인에서 변경되어 회색조 그라데이션을 재현합니다. 이를 위해서는 GRBL을 레이저 모드에서 컴파일해야 합니다. 즉, 속도 램핑을 비활성화하고 즉각적인 전력 응답을 활성화합니다.
힘과 속도는 재료에 따라 크게 다릅니다. 실제 작업을 시작하기 전에 항상 동일한 재료에 대해 소규모 전력/속도 그리드 테스트를 실행하세요.
레이저: 장비 파장에 맞는 보호안경을 착용하세요(CO2 = 10,600nm, 다이오드 조각기 ≈ 450nm로 서로 다른 보호안경이 필요합니다). 환기도 반드시 확보하세요. 대부분의 재료는 조각 과정에서 유해한 연기를 냅니다. 작동 중인 레이저를 켜 둔 채 자리를 비우지 마세요. CNC: 스핀들을 돌리기 전에 공작물을 단단히 고정하세요. 고정이 느슨하면 재료가 고속으로 튈 수 있습니다. 작업 전에는 비상정지 위치를 반드시 확인하세요.
Fusion 360, Blender, FreeCAD 또는 이와 유사한 도구로 디자인하세요. STL은 표준 교환 형식입니다. STEP은 엔지니어링 부품에 대해 보다 정확한 형상을 제공합니다.
슬라이서(PrusaSlicer, Cura, Bambu Studio)는 모델을 0.1~0.3mm 수평 레이어로 자르고 도구 경로, 지지대, 채우기 및 브리지를 계산합니다. 일반적인 움직임은 G1 X42.5 Y88.3 E0.0234 F4500과 같습니다. 정확히 0.0234mm의 필라멘트를 압출하면서 헤드를 움직이는 것입니다. 슬라이서는 또한 M109 및 M190을 삽입하여 인쇄가 시작되기 전에 노즐과 베드를 가열합니다.
Marlin, Klipper 또는 RepRapFirmware가 파일을 실행합니다. Klipper는 계산을 Raspberry Pi로 오프로드하고 입력 형성을 지원합니다. 가속도계로 프레임 공진을 측정하고 이를 모션 명령에서 필터링하여 링잉 아티팩트를 줄이고 더 높은 인쇄 속도를 가능하게 합니다.
Fusion 360, SolidWorks 또는 FreeCAD를 사용하세요. 가공된 부품에는 0.01~0.05mm의 공차가 필요하므로 모델 품질이 부품 품질을 직접적으로 결정합니다.
CAM 소프트웨어(Fusion 360 CAM, VCarve, Mastercam)를 사용하면 공구, 절삭 전략(적응형 클리어링, 윤곽, 포켓팅), 절삭 깊이, 스핀들 속도 및 이송 속도를 지정할 수 있습니다. 목표는 비트를 파손하거나 재료를 태우지 않고 효율적인 도구 사용입니다.
산업용 CNC 기계는 각각 Fanuc, Siemens Sinumerik, Heidenhain, Haas 등 고유한 방언을 사용합니다. CAM 소프트웨어 내부의 포스트 프로세서는 일반 공구 경로를 기계가 기대하는 정확한 구문으로 변환합니다. 잘못된 포스트 프로세서를 사용하면 불량 부품이 생산될 뿐만 아니라 기계가 공작물에 충돌하여 툴링이 파손되고 안전 위험이 발생할 수 있습니다.
SVG 경로는 베지어 곡선, 호 및 직선을 사용합니다. G1은 직선만 그립니다. 따라서 변환기는 두 가지 방법으로 간격을 연결해야 합니다.
면처리는 곡선을 여러 개의 작은 직선 세그먼트로 나눕니다. 부드러운 곡선에는 더 짧은 세그먼트가 필요합니다. 즉, 기계의 명령 버퍼가 따라잡을 수 없을 때 더 큰 파일과 잠재적인 모션 끊김 현상이 발생함을 의미합니다.
아크 피팅은 더 똑똑합니다. 짧은 세그먼트의 실행이 집단적으로 원을 형성하는 시기를 감지하고 전체 그룹을 단일 G2 또는 G3 명령으로 대체합니다. 360개의 G1 라인을 차지하는 원은 G-Code의 한 라인이 됩니다. 파일은 최대 90%까지 줄어들고 동작은 완벽하게 매끄러워지며 기계는 호를 통해 지속적인 속도를 유지합니다. 모든 GRBL 빌드가 G2/G3을 지원하는 것은 아닙니다. 활성화하기 전에 확인하세요.

Illustrator는 72DPI로 내보냅니다. v0.92 이전의 Inkscape는 90 DPI를 사용했습니다. 최신 도구는 96 DPI를 사용합니다. 변환기에서 96 DPI를 가정하지만 파일을 Illustrator에서 가져온 경우 모든 치수가 33% 너무 큽니다. 즉, 100mm 모양이 133mm로 플롯됩니다. 수정: 변환기의 DPI 설정을 소스 앱과 일치시키거나 더 나은 방법으로 SVG 문서 크기를 밀리미터 단위로 설정하여 DPI를 완전히 관련되지 않게 만드세요.
핵심 동작 명령(G0, G1, G2, G3)은 어디에서나 작동합니다. 시작 순서, 도구 변경, 주석 구문 등 그 밖의 모든 것은 펌웨어 제품군에 따라 다릅니다. 전문 CNC 기계의 잘못된 컨트롤러에서 G-Code를 실행하면 잘못된 출력이 생성될 뿐만 아니라 공작물에 급격한 충돌이 발생할 수 있습니다.
사진에는 픽셀만 포함되어 있으며 경로 데이터는 없습니다. 사진을 플롯하거나 벡터 조각하려면 먼저 SVG로 변환해야 합니다. 일반적인 접근 방식:


Pixel2Lines는 펜 플로터 및 레이저 조각사를 위해 제작된 전문적인 스타일(선 그리기, 해칭, 점각 등)을 통해 사진을 깨끗하고 기계에 바로 사용할 수 있는 SVG로 변환합니다. 출력 경로는 개별 스트로크로 구성되어 펜 리프트와 이동 시간을 최소화합니다.
SVG가 있으면 SVG-G-Code 변환기가 이송 속도, 펜업 높이, 레이저 출력 및 경로 정렬 순서를 완전히 제어하여 최종 파일을 생성합니다.
Pixel2Lines를 통해 사진을 SVG로, 변환기를 통해 SVG를 G-Code로 변환하는 이 2단계 파이프라인은 벡터 디자인 기술이나 G-Code 지식 없이도 모든 사진에서 기계에서 바로 사용할 수 있는 파일로 이동합니다.

그렇습니다. 단순한 모양의 경우 이는 유용한 연습입니다. 복잡한 작업에는 CAM 소프트웨어나 전용 변환기를 사용하세요.
핵심 모션 명령은 보편적입니다. 시작 순서, 도구 변경 및 확장 기능은 크게 다릅니다. GRBL 플로터용 G-코드는 Fanuc 공장에서 실행하려면 상당한 변경이 필요할 수 있으며 산업용 기계에서 잘못된 방언을 사용하면 충돌이 발생할 수 있습니다.
GRBL은 Arduino급 마이크로컨트롤러에서 실행되는 오픈 소스 CNC 펌웨어입니다. 이는 취미로 사용하는 펜 플로터, DIY 레이저 조각기 및 소형 CNC 라우터의 표준입니다. 가속 인식 모션 플래너 및 예측 버퍼링을 통해 핵심 RS-274 표준을 구현합니다.
볼펜: 5000~8000mm/분 펠트펜 또는 붓펜: 2000-4000 mm/min. 만년필 또는 유리 펜촉: 1500~3000mm/분. 항상 스크랩 종이에 먼저 테스트하세요.
그렇습니다. GRBL 레이저 모드에서 S는 모든 G1 라인에서 변경될 수 있습니다. 이는 래스터 조각이 단일 스윕에서 부드러운 회색조 그라데이션을 재현하는 방법입니다.
HPGL(Hewlett-Packard Graphics Language)은 1970년대부터 90년대까지 HP 펜 플로터에서 사용되었습니다. 이는 두 글자 명령(PU = 펜 업, PD = 펜 다운, PA = 플롯 절대값)과 mm 또는 인치 대신 밀리미터당 40의 플로터 단위를 사용합니다. 대부분의 최신 플로터 도구는 두 형식을 모두 읽을 수 있습니다.
NCViewer(ncviewer.com)는 가장 빠른 옵션입니다. 파일을 붙여넣으면 도구 경로가 즉시 렌더링됩니다. CAMotics는 CNC 작업을 위해 3D 재료 제거 과정을 시뮬레이션해 줍니다. Universal Gcode Sender에는 경로 미리보기가 기본으로 포함되어 있습니다. 화면 시뮬레이션만 믿지 말고, 항상 안전한 높이에서 실제 시험 주행으로 한 번 더 확인하세요.
Pixel2Lines에서 깨끗하고 최적화된 SVG를 얻으려면 사진을 업로드한 다음 한 번에 기계에서 바로 사용할 수 있는 G 코드로 변환하세요. 펜 플로터, 레이저 조각기 및 CNC 기계에서 작동합니다.
지금 사진을 변환하세요
댓글
댓글 로드 중...