|
|
X10 Y10 → 홀 위치
Z-1.6 → 드릴 깊이
R2.0 → 드릴이 내려가기 시작하는 기준 높이
F100 → 이송속도
G80 → 드릴 사이클 종료
입니다.
다만 PCB CNC라고 해서 반드시 G81을 사용하는 것은 아닙니다. 장비에 따라 단순한 G00/G01 방식으로 드릴 데이터를 만드는 경우도 많습니다.
4. M코드
M코드는 주로 스핀들, 냉각, 프로그램 종료 등의 기계적인 동작을 담당합니다.
코드의미PCB CNC 용도
| M00 | 프로그램 정지 | 작업자가 확인 후 재개 |
| M01 | 선택적 정지 | 옵션 스위치가 켜져 있을 때 정지 |
| M02 | 프로그램 종료 | 프로그램 종료 |
| M03 | 스핀들 정회전 | PCB 커터/드릴 회전 시작 |
| M04 | 스핀들 역회전 | 장비에 따라 사용 |
| M05 | 스핀들 정지 | 가공 종료 또는 공구 교환 |
| M06 | 공구 교환 | ATC가 있는 CNC에서 사용 |
| M08 | 냉각수 ON | PCB CNC에서는 장비에 따라 사용 |
| M09 | 냉각수 OFF | 냉각수 종료 |
| M30 | 프로그램 종료 및 리셋 | 가장 흔한 프로그램 종료 방식 |
PCB CNC에서는 특히 다음이 중요합니다.
M03 → 스핀들 ON M05 → 스핀들 OFF M06 → 공구 교환 M30 → 프로그램 종료
예를 들어:
M03 S20000
이면
스핀들을 정회전시키고 20,000 RPM으로 회전시키라는 의미입니다.
5. PCB CNC에서 실제로 많이 보게 되는 형태
예를 들어 하나의 PCB 외곽을 절단한다고 하면:
% G21
G90
G17
M03 S18000
G00 Z3.000
G00 X0.000 Y0.000
G01 Z-0.200 F100
G01 X50.000 Y0.000 F300
G01 X50.000 Y40.000
G01 X0.000 Y40.000
G01 X0.000 Y0.000
G00 Z3.000 M05 M30 %
구조를 보면 상당히 단순합니다.
프로그램 시작
↓
단위/좌표계 설정
↓
스핀들 ON
↓
안전 높이로 이동
↓
가공 위치 이동
↓
Z축 하강
↓
X/Y 절삭
↓
Z축 상승
↓
스핀들 OFF
↓
프로그램 종료
입니다.
6. 그런데 PCB CNC에서는 G-code만 보면 안 됩니다
여기가 상당히 중요합니다.
PCB 제조용 데이터를 CNC로 변환할 때는 보통
Gerber
→ CAM
→ 가공 경로 계산
→ G-code
그리고 드릴은
Excellon NC Drill(DRL)
→ CAM
→ G-code
과정을 거칩니다.
따라서 PCB CNC 프로그램을 직접 만드신다면 G-code/M-code 자체보다도
Gerber 좌표 → PCB 가공경로 → G01/G02/G03 변환
과
Excellon DRL → X/Y 홀 좌표 → Z축 드릴링 G-code 변환
을 이해하는 것이 더 중요합니다.
특히 전에 말씀하셨던 VB.NET으로 DRL 파일을 읽어서 G-code를 생성하는 프로그램을 생각하신다면, 그 프로그램에서는 M03, M05, G00, G01, G81 정도만으로도 상당한 수준의 PCB 드릴 프로그램을 만들 수 있습니다.