Skip to main content
CNC.wikiCNC.wiki

G20 G21 G-Code 인치 밀리미터 CNC 단위 선택 및 전환 가이드

Fanuc, Siemens, Mitsubishi CNC 시스템의 G20 및 G21 인치/밀리미터 단위 선택 방법을 마스터하여 비계획 정지(downtime)와 공구 충돌 리스크를 방지하세요. 핵심 파라미터 제어 및 알람 해결 가이드를 제공합니다.

Hakan Gündoğdu
Hakan Gündoğdu

CNC CARE 공동 창업자

서론

자동화 라인의 반복 가공 주기 도중, 인덱싱 turret이 고속으로 회전하는 chuck이나 단단한 tailstock 배리어를 들이받는 대형 충돌 사고는 단 하나의 G-code 단위 스케일링 오류에서 비롯됩니다. 특히 메트릭 밀리미터(mm)와 inch 간의 단위 변환 시, 공구 오프셋 메모리나 공작물 좌표계의 자동 스케일링 파라미터를 검증하지 않고 대량 양산에 들어가면 pallet 교환 후 두 번째 cycle부터 눈에 보이지 않는 치수 편차가 오프셋에 누적됩니다. 이는 결국 대규모 가공 불량률 폭증이라는 비극적 결과를 초래할 뿐만 아니라, 비계획 정지(downtime) 시간을 폭발적으로 늘려 자동화 라인 전체를 마비시킵니다.

기술 요약

사양상세 정보
명령어 코드Fanuc, Mitsubishi, Siemens ISO Dialect의 G20 (inch 입력) / G21 (metric 입력). Siemens native 모드는 G70 / G700 (inch) 및 G71 / G710 (metric) 사용.
Modal 그룹Group 06, modal (명시적으로 변경되거나 재정의될 때까지 활성 상태 유지).
지원 브랜드Fanuc, Siemens, Mitsubishi.
핵심 파라미터Fanuc: 파라미터 5006 비트 0 (OIM), 파라미터 14000 비트 2 (IRFx). Siemens: MD10240 $MN_SCALING_SYSTEM_IS_METRIC, MD10260 $MN_CONVERT_SCALING_SYSTEM. Mitsubishi: 파라미터 #1226 aux10/비트6, 파라미터 #1253 set25/비트1.
주요 제한 사항회전축은 도(degrees) 단위로 잠겨 있으며 단위 스케일링 명령의 영향을 전혀 받지 않습니다. PLC 제어 축은 G20/G21 프로그램 변경을 무시하고 하드웨어 수준의 구성 파라미터만 따릅니다.

핵심 요약

  • PS5362와 같은 좌표 쉬프트 알람을 방지하기 위해 G20/G21 전환을 실행하기 전에 항상 G28을 사용하여 모든 축을 기계 원점(reference position)으로 복귀시키십시오 (특히 Fanuc 장비).
  • 표준 G20/G21 명령어는 활성 feedrate를 자동으로 스케일링하지 않으므로, 단위를 전환한 직후에 새로운 feedrate 값(F-word)을 명시적으로 선언하십시오.
  • 심각한 치수 오차 발생을 예방하기 위해 자동 공구 오프셋 변환 파라미터(예: Fanuc 5006 비트 0, Siemens MD10260, Mitsubishi #1226)가 활성화되어 있는지 확인하십시오.
  • 회전축 좌표는 글로벌하게 도(degrees) 단위로 잠겨 있어 어떠한 inch 또는 metric 단위 스케일링 명령의 영향도 받지 않습니다.
  • Siemens 제어기에서 구문 오류와 인터프리터 정지(예: Alarm 15030)를 예방하기 위해, 레거시 ISO Dialect 단위 명령을 블록의 시작 부분에 단독 블록으로 프로그래밍하십시오.
  • 실제 절삭 전에 장비 좌표를 시각적 및 논리적으로 검증하기 위해 공운전 (dry run) 그래픽과 chuck/tailstock 배리어(예: Mitsubishi의 G22/G23)를 적극 활용하십시오.

기본 개념

CNC 좌표 추적의 핵심에는 좌표값을 inch(G20)로 해석할지 밀리미터(G21)로 해석할지 정의하는 Group 06 modal 코드인 G-code 단위 선택 명령이 있습니다. 이러한 측정 시스템의 변경은 프로그래밍된 대상 위치, 원호 보간(circular interpolation) 파라미터(I, J, K), 프로그래밍 가능한 공작물 좌표계 등 길이 관련 데이터의 수학적 스케일링을 완전히 재정의합니다. 좌표를 적용하기 전에 올바른 평면 파라미터를 설정하는 것이 중요하며, 일반적으로 단위 스케일링을 실행하기 전에 working plane selection 작업을 마쳐야 합니다. 프로그램이 단위 전환을 실행하면 "1.0"이라는 값이 나타내는 물리적 거리가 1밀리미터에서 25.4밀리미터(또는 그 반대)로 바뀌므로, 이는 NC 파일에서 단일 명령어로 가장 중요하고 치명적인 설정 명령입니다.

레거시 단위 전환 명령어는 전통적으로 기하학적 좌표 치수만 변경하며, feedrate F와 수동 핸들 인크리멘탈 jog 변동치와 같은 기술적 매개변수는 스케일링되지 않은 상태로 둡니다. 프로그래머가 활성화된 공구 반경 보정(tool radius compensation)을 명시적으로 비활성화하고 새로운 F-word를 작성하지 않은 상태에서 프로그램 도중에 활성 단위 시스템을 변경하면 컨트롤러가 스케일링을 오역하게 됩니다. 이는 즉시 컨트롤러 알람을 트리거하고 절삭 공구를 회전하는 워크홀딩 장치, fixture, 또는 물리적 경계에 박아 넣게 만들며 고가의 공작물을 완전히 망가진 불량품(scrap part)으로 전락시키는 심각한 좌표 편차를 유발합니다.

명령 구조

G20 및 G21의 구조적 구현을 위해서는 일반적으로 프로그램의 완전한 시작 부분에 독립형 G-code로 프로그래밍되어야 합니다. 이 명령어들은 글로벌 인터프리터 스위치 역할을 하기 때문에 동일한 블록 내의 다른 이동 좌표나 G-code와 혼용해서는 안 됩니다. 독립된 줄에 `G20;` 또는 `G21;`만 단독으로 선언하는 단독 블록 방식은 인터프리터가 어떠한 이동 지시도 실행하기 전에 단위 변경을 먼저 성공적으로 등록하도록 보장합니다.

사용 중인 브랜드의 활성 언어 dialect에 따라 대체 코드가 사용될 수 있습니다. 예를 들어, Siemens native 모드는 기하학적 치수 스케일링을 위해 G70 및 G71을 사용하거나, 기하학과 기술 데이터를 동시에 스케일링하기 위해 확장된 G700 및 G710을 사용합니다. 특정 구성 환경에서 Fanuc 시스템 또한 특정 파라미터 비트를 조정하여 G70 및 G71을 사용하도록 프로그래밍할 수 있습니다. 다중 단위 프로그램에서 linear interpolation을 실행할 때, 새로운 좌표 기준선을 지정하면 정확한 이동 한계(travel limits)가 보장됩니다. 구문 규칙에 관계없이 이러한 코드는 모든 선형 축의 기준 단위 시스템을 구축하는 반면, 회전축은 일관되게 고유 단위인 도(degrees)를 그대로 유지합니다.

G20 ; (inch 명령 모드)
G21 ; (metric 명령 모드)

Siemens native 모드의 경우 구문이 다음과 같이 확장됩니다:

G70   ; (Siemens Native 기하학적 inch 모드)
G71   ; (Siemens Native 기하학적 metric 모드)
G700  ; (Siemens SW5+ Extended inch 모드: 기하 및 feedrate 스케일링)
G710  ; (Siemens SW5+ Extended metric 모드: 기하 및 feedrate 스케일링)

브랜드별 응용

Fanuc

Fanuc 제어기는 modal Group 06 명령어인 G20 및 G21을 통해 단위 선택을 관리합니다. 이 시스템은 파라미터 3402 비트 5가 표준 G20/G21 구문 또는 G70/G71 구문 중 어느 것을 사용할지 결정하고, 파라미터 5006 비트 0이 치수 편차를 예방하기 위해 활성 공구 오프셋을 자동으로 재계산할지 정의하는 깊은 파라미터 연동 메커니즘에 의존합니다. 원점(reference point)을 벗어난 곳에서 전환을 시도하면 컨트롤러가 단위 전환을 거부하고 동작을 멈추게 됩니다.

안전한 단위 전환을 처리하기 위해, Fanuc 설정에서는 G28을 통한 원점 복귀가 선행되어야 하며, 이후 단독 블록(예: G20; 또는 G21;) 상에서 독립 명령어로 실행해야 합니다.

분류상세 정보
핵심 파라미터파라미터 3402#5 (G70), 파라미터 11222#0 (NIM), 파라미터 14000#2 (IRFx), 파라미터 5006#0 (OIM)
알람 및 트리거PS5362 (14000#2가 1일 때 원점(reference position)을 벗어난 상태에서 단위 전환), PS1298 (11222#1이 0일 때 수동 쉬프트/미러 이미지 상태에서 전환), PS0092 (1015#0이 1일 때 모든 축이 원점에 위치하지 않은 상태에서 전환)
버전별 차이Machining Center (M) 및 레거시 Series 15-M 구성은 파라미터 3402#5에 따라 대체 G70/G71 코드를 지원하는 반면, 선반 (T) 모델은 표준 G20/G21을 고수합니다.

경고: 프로그래머는 G20/G21 전환을 실행하기 전에 파라미터 5006 비트 0 (OIM)이 활성화되어 있는지 확인해야 합니다. 비활성화된 경우 공구 오프셋 데이터가 변환되지 않아 스케일링되지 않은 오프셋이 적용되고, 이로 인해 가공 경로 주행 중 치명적인 치수 오차가 발생하게 됩니다.

Siemens

Siemens 제어기는 표준 ISO Dialect 명령어인 G20/G21 또는 native 명령어인 G70/G71 및 G700/G710을 사용하는 다층 스케일링 시스템을 활용합니다. 핵심적인 기본 측정 시스템은 머신 데이터 MD10240에 의해 정의되는 반면, 활성 공작물 오프셋(work offset) 및 공구 오프셋의 확장형 자동 스케일링 변환은 MD10260에 의해 통제됩니다.

ISO dialect 모드에서 G20 또는 G21은 반드시 블록의 시작 부분에 단독 블록으로 작성되어야 합니다. 반면, Siemens native 명령어는 N10 G700 X2.75 Y3.22 F10.0과 같이 이동 블록 내에 직접 통합하여 실행할 수 있습니다.

분류상세 정보
핵심 파라미터MD10240 $MN_SCALING_SYSTEM_IS_METRIC, MD10260 $MN_CONVERT_SCALING_SYSTEM, MD10250 $MN_SCALING_VALUE_INCH, MD10884 EXTERN_FLOATINGPOINT_PROG
알람 및 트리거Alarm 4070 (스케일링 머신 데이터를 수동으로 변경함), Alarm 15030 (활성 측정 시스템이 입력 데이터 블록과 충돌함), Alarm 4240 (전환 중 과도한 길이 의존 사용자 변수로 인한 CPU 오버플로우), Alarm 61529 (기본 시스템 MD10240이 프로그래밍된 G 명령과 일치하지 않음)
버전별 차이소프트웨어 버전 SW5 이상은 기하학적 데이터 및 기술적 데이터(feedrate)의 동시 스케일링을 위해 G700/G710을 지원하는 반면, 레거시 SW1-SW4 버전은 기술적 데이터의 자동 스케일링을 지원하지 않습니다.

경고: 시스템 변환이 활성화되지 않은 상태에서 수동으로 핵심 스케일링 머신 데이터를 변경하면 Alarm 4070이 트리거되며, 이는 기존 백그라운드 오프셋 및 보정(compensation) 데이터가 자동으로 스케일링되지 않았음을 경고합니다.

Mitsubishi

Mitsubishi CNC 플랫폼은 파라미터 #1226 aux10/비트6이 1로 설정되었을 때 좌표 엔벨로프(envelope) 전체에서 G20과 G21을 동적으로 처리하여 좌표 카운터, 사용자 파라미터, 활성 오프셋을 실시간 변환합니다. 또한 관리자는 파라미터 #1253 set25/비트1을 활성화하여 모든 단위 스케일링 변경 시도를 원천 차단하고 장비의 기준 단위 좌표 무결성을 영구 보호할 수 있습니다.

명령어들은 절대 좌표계(absolute mode)로 입력되며, 단독으로 사용하거나 이동 블록 내에 `G21 G01 X150.0 Z50.0 F300.;`과 같이 호환 가능한 G-code와 함께 작성할 수 있습니다.

분류상세 정보
핵심 파라미터파라미터 #1041 I_inch, 파라미터 #1226 aux10/비트6, 파라미터 #1152 I_G20, 파라미터 #1253 set25/비트1, 파라미터 #1042 pcinch
알람 및 트리거P67 (프로그램 단위 전환 옵션이 활성화되지 않은 상태에서 전환 명령 수행), P34 (잠금 파라미터 #1253이 활성화된 상태에서 모드 전환 시도 시 형식 오류 트리거)
버전별 차이NC 축은 프로그램 G20/G21 명령을 따르는 반면, PLC 제어 축은 이를 완전히 무시하고 오직 파라미터 #1042 pcinch에 의해서만 제어됩니다. 회전축은 머시닝 센터 (M) 및 선반 (L) 컨트롤 전체에서 도(degrees) 단위로 엄격히 고정됩니다.

경고: 파라미터 #1226이 0으로 설정되어 있는 경우 G20/G21 명령어는 프로그램 상의 좌표계는 변환시키지만 오프셋 데이터 변환은 실행하지 않으므로, 스케일링되지 않은 metric 공구가 imperial 좌표 경로로 급격히 진입하는 치명적인 불일치를 일으키게 됩니다.

브랜드 비교

주제 / 기능FanucSiemensMitsubishi
기본 단위 선택 G-codesG20 (inch) / G21 (metric)ISO 모드: G20 / G21
Siemens 모드: G70 / G71
G20 (inch) / G21 (metric)
기술적 스케일링 (Feedrate F)수동 재계산 필요확장 G700 / G710 코드가 feedrate를 자동으로 스케일링활성 G20/G21 G94/G95 모드에서 자동으로 스케일링
원점 제한파라미터 14000#2는 G20/G21을 원점(reference position)으로만 제한할 수 있으며, 위반 시 PS5362 알람 발생제한 없음; 전환 전에 활성 좌표 오프셋을 역추적하거나 소거해야 함원점 제한 없음; 화면 파라미터 #1226이 1인 경우 좌표 영역 내 어디서나 전환 가능
공구 및 워크 오프셋 자동 스케일링파라미터 5006#0 (OIM)을 통해 구성 가능파라미터 MD10260 $MN_CONVERT_SCALING_SYSTEM (SW5+)을 통해 구성 가능파라미터 #1226 aux10/비트6을 통해 구성 가능
전환 잠금 / 보호표준 좌표 안전 파라미터를 통해 잠금 가능Alarm 15030을 통해 데이터 블록의 비일관적인 블록 차단파라미터 #1253 set25/비트1을 통한 명시적 잠금, P34 알람 트리거
PLC 제어 축 처리— (no source)표준 머신 데이터에 따라 처리됨PLC 제어 축은 프로그램 G20/G21을 완전히 무시하며, #1042 pcinch를 통해 단위 설정
회전축 스케일링— (no source)도(degrees) 단위로 고정 (스케일링 안 됨)도(degrees) 단위로 고정 (스케일링 안 됨)

기술 분석

분석적 관점에서 3대 주요 제어 시스템의 핵심적 기하학적 차이는 활성 상태 변환 방식과 운동학적(kinematic) 안전 설계 제약 사항에 있습니다. Fanuc은 파라미터 잠금 설정을 고수하는 대단히 보수적인 안전 철학을 취하고 있습니다. 파라미터 14000#2를 활용해 장비 빌더는 단위 전환을 엄격히 물리적 원점(reference position)으로만 제한할 수 있으며, 만약 프로그램 도중에 갑작스러운 전환 명령이 내려지면 제어기가 스위칭을 즉각 차단하고 PS5362 알람을 표출하게 만듭니다. Fanuc의 표준 좌표계 전환(G20/G21)은 공구 오프셋 레지스터를 실시간 스케일링하기 위해 파라미터 5006#0 (OIM)의 명시적 활성화를 강제하므로, 사전 설정이 안 되어 있다면 표준 G-code 실행만으로는 오프셋이 자동 전환되지 않습니다. 이와 반대로 Mitsubishi는 더 유연하고 동적인 실시간 전환(on-the-fly) 접근법을 제공합니다. 파라미터 #1226을 통해 Mitsubishi는 작동 포지션에 구애받지 않고 오프셋 공간 내 어디서든 단위 전환이 가능하며 위치 카운터, feedrate, 공구 오프셋을 일괄 변환시킵니다. 하지만 이러한 과도한 유연성 통제를 위해 관리자 레벨의 전환 잠금 파라미터 #1253 set25/비트1을 구비하여 위반 시 P34 알람을 표출하여 오퍼레이터의 오작동을 차단합니다.

Siemens는 ISO dialect 파싱과 native NC 기본 설정을 유기적으로 융합한 세련되고 다층적인 구조적 아키텍처 환경 하에서 동작합니다. 표준 ISO G20 및 G21 명령어가 오직 기하학적 스케일 크기만 제어하는 것에 비해, Siemens native G700 및 G710 (소프트웨어 SW5 버전 이후 지원) 계열 명령어는 단일 블록 상에서 기하학 데이터 및 feedrate F와 같은 기술적 파라미터 스케일링을 완전하게 일원화시킵니다. Siemens는 백그라운드 보정(compensation) 및 워크 오프셋(work offset)을 MD10260 $MN_CONVERT_SCALING_SYSTEM으로 안전하게 다루어 스케일링되지 않은 이상 경로 주행을 완전 차단합니다. 또한 Fanuc 및 Mitsubishi와 다르게 Siemens는 독특한 MD10884 EXTERN_FLOATINGPOINT_PROG 파라미터를 갖추고 있어, 소수점이 없는 정수 형태의 좌표값(예: X1000)을 내부 해상도 기준(표준)으로 읽을지 계산기 형태(mm 또는 inch)로 다룰지 자유롭게 전환할 수 있는 동적 legacy 대응 성능을 제공합니다.

프로그램 예제

Fanuc G-Code 예제

G28 U0 W0;                  ; reference position 복귀 (많은 Fanuc 설정에서 필수)
G20;                        ; G20 (inch) 입력 선택
G00 X2.0 Z1.5;              ; inch 단위 급속 이송

공운전

공운전 과정 중 작업자는 turret이 우선 G28 U0 W0 명령어를 사용하여 기계 원점(reference coordinate system)으로 완전히 안전하게 복귀하는지 점검해야 합니다. 원점에 위치한 상태에서 제어기가 G20을 처리하면 인터프리터의 축 배율 스케일링이 정상적으로 수정되므로, 다음 급속 이송 지시인 G00 X2.0 Z1.5는 공구를 활성 공작물 좌표계를 기준으로 X축으로 정확히 2.0인치, Z축으로 1.5인치만큼씩 물리적 이동을 진행하게 만듭니다. 오퍼레이터는 제어반 디스플레이 화면의 좌표 카운터 단위가 바뀌는지 체크하고, 화면의 공구 경로 그래픽을 모니터링하여 잔존하는 밀리미터 단위 명령어로 인한 비정상 좌표 충돌 거동이 없는지 주시해야 합니다.

Siemens G-Code 예제

G291;                       ; ISO dialect 모드로 전환
G20;                        ; G20 (inch) 입력 선택
G290;                       ; Siemens 모드로 복귀
N10 G700 X2.75 Y3.22 F10.0; ; Native Siemens inch 모드 (G700 좌표 및 feedrate F 스케일링)

공운전

공운전 수행 단계에서 NCK 인터프리터는 먼저 G291 블록을 읽고 단독으로 설계된 legacy ISO 단위 정의 명령어 G20을 파싱합니다. 다시 G290 블록에 이르러 Siemens native 모드로 제어권이 복귀하면, 블록 N10이 최종 확장 native 명시 명령 G700을 실행함으로써 좌표 지시인 X2.75 Y3.22를 온전하게 인치 크기로 번역하는 동시에 feedrate F10.0을 분당 10.0인치 값으로 지연 없이 즉각 변환시킵니다. 가공 담당 작업자는 spindle을 돌려 직접 깎는 실가공 공정에 진입하기 전 상태 점검 모니터와 상태 파라미터 모니터 상에서 축 스케일 배율과 이송 주행 속도가 안정되게 출력되고 작동되는지 정밀 조율 검증 절차를 거쳐야 합니다.

Mitsubishi G-Code 예제

G20;                        ; 프로그램 명령 단위를 inch 시스템으로 전환
G00 X5.0 Z2.0;              ; inch 단위 급속 이송
G21 G01 X150.0 Z50.0 F300.; ; metric 모드 전환 및 mm 단위 linear interpolation 및 mm/min 단위 feedrate

공운전

공운전 시뮬레이션 단계에서 프로그래머는 G20 지시가 인터프리터 스케일 눈금을 인치(inch) 상태로 동적 세팅하는지 점검하여, G00 X5.0 Z2.0 급속 주행이 공구를 X축 5.0인치 및 Z축 2.0인치 위치로 완벽히 작동시키는지 진단합니다. 이후 메인 제어기가 다음 코드 라인으로 주행하면 G21을 만나 모달 상태가 메트릭으로 리얼타임 선회하므로, 뒤따르는 G01 X150.0 Z50.0 F300. 문맥은 밀리미터 단위(X 150.0 mm, Z 50.0 mm)의 linear interpolation 연산으로 해석하고 메트릭 이송 값 300 mm/min을 이끌어 냅니다. 오퍼레이터는 모션 주행 간 감속 변화와 장비 디스플레이 창의 디지털 변환 카운터 좌표 갱신 추이를 꼼꼼히 살피며 안전 마진 확보를 체크해야 합니다.

오류 분석

브랜드알람 코드트리거 조건작업자 증상근본 원인 / 해결 방법
FanucPS536214000#2가 활성화되었을 때 원점(reference position)을 벗어난 위치에서 G20/G21 단위 전환 시도.장비가 즉시 정지하며, 화면에 "CONVERT INCH/MM AT REF-POS" 알람 표시 및 축 이동 정지.근본 원인: 축이 원점에 위치하지 않았습니다.
해결 방법: 단위 전환 명령을 실행하기 전에 G28을 프로그래밍하여 공구를 원점(reference position)으로 복귀시키십시오.
FanucPS129811222#1이 0으로 설정되어 있고 워크 좌표계(workpiece coordinate system)가 쉬프트된 상태에서 G20/G21 명령 수행.프로그램 실행이 중단되며, 화면에 "ILLEGAL INCH/METRIC CONVERSION" 알람이 표시됨.근본 원인: 수동 개입, 핸들 개입(handle interrupt) 또는 활성 미러 이미지(mirror image)로 인한 활성 쉬프트 량이 체결되어 있습니다.
해결 방법: 모든 수동 쉬프트 량을 소거하거나 파라미터 11222 비트 1 (CIM)을 1로 설정하여 시스템이 자동으로 소거하도록 하십시오.
FanucPS0092모든 축이 원점에 위치하지 않은 상태에서 단위를 전환함 (파라미터 1015#0이 1인 경우).시스템에서 P/S 알람 92를 생성하며, CNC가 알람 상태로 진입하고 모든 축 동작이 차단됨.근본 원인: 측정 시스템을 변경하기 전에 모든 축이 원점에 있어야 합니다.
해결 방법: G20/G21 전환 전에 모든 축에 대해 완전한 수동 또는 프로그래밍된 원점 복귀를 실행하십시오.
SiemensAlarm 15030활성 컨트롤 측정 설정과 충돌하는 INCH 또는 METRIC 명령을 읽음.NCK 인터프리터가 즉시 실행을 중단하며, cycle start가 중단되고 화면에 측정 시스템 불일치가 표시됨.근본 원인: NCK 컨트롤의 활성 측정 시스템과 들어오는 데이터 블록의 정렬이 맞지 않습니다.
해결 방법: NCK 컨트롤의 측정 시스템과 읽기 블록을 일치시키거나 프로그래밍된 G-코드를 수정하십시오.
SiemensAlarm 4070단위 스케일링 머신 데이터(예: MD10260)를 수동으로 또는 파일을 통해 변경함.화면에 "Scaling machine data altered" 경고가 표시되며, 이후의 축 이동이 스케일링되지 않은 데이터로 실행될 수 있음.근본 원인: 자동 오프셋 재계산이 활성화되지 않은 상태에서 머신 데이터 스케일링 시스템이 변경되었습니다.
해결 방법: POWERON 리셋을 수행하여 스케일링을 활성화하고 모든 공구 보정(compensation)/오프셋 값을 수동으로 확인하십시오.
SiemensAlarm 4240과도한 길이 의존 사용자 변수가 있는 상태에서 측정 시스템 전환 시 CPU 시간 오버플로우 발생.NCK 인터프리터 오버플로우가 발생하며, 시스템이 정지하거나 통신 지연을 겪고 화면에 형식 변환 오류가 표시됨.근본 원인: 전환 중에 너무 많은 길이 의존 사용자 변수(GUD/PUD/LUD)가 main run 동기 동작(synchronized actions)에서 활성화되어 있습니다.
해결 방법: main run 동기 동작에서 물리적인 길이 의존 사용자 변수의 사용을 피하거나 최소화하십시오.
MitsubishiP34잠금 파라미터 #1253 set25/비트1이 1로 설정된 상태에서 G20 또는 G21 명령 수행.CNC에서 P34 형식 오류를 트리거하며, 모드 전환이 거부되고 축 이동이 차단됨.근본 원인: 장비 좌표를 보호하기 위해 단위 변환에 대한 보안 잠금이 활성화되어 있습니다.
해결 방법: 잠금 파라미터 #1253 비트 1을 0으로 변경하여 단위 전환을 허용하거나 프로그램에서 G20/G21 코드를 제거하십시오.
MitsubishiP67프로그램 단위 전환 옵션이 활성화되지 않은 컨트롤에서 G20/G21 명령 수행.알람 P67 "No spec"이 표시되고 프로그램 실행이 중단되며, 장비는 기본 단위 상태를 유지함.근본 원인: 물리적 컨트롤러에 필요한 프로그램 단위 변환 소프트웨어 옵션이 없습니다.
해결 방법: Mitsubishi로부터 옵션 사양을 주문하고 활성화하거나, 장비의 자체 단위 시스템으로 G-code 프로그램을 다시 작성하십시오.

실무 응용 가이드

자동화 라인의 반복 가공 공정에서 chuck과 공구 충돌을 방지하기 위해서는, 오프셋 자동 변환을 담당하는 특정 제어 파라미터를 양산 시작 전에 철저히 검증해야 합니다. 만약 Mitsubishi 시스템에서 파라미터 `#1226 aux10/비트6`이 0으로 설정되어 있거나, Fanuc 시스템에서 파라미터 `5006 비트 0 (OIM)`이 비활성화된 상태에서 G20/G21 단위 전환을 실행하면 가공 경로 자체는 메트릭으로 전환되지만 공구 길이와 마모 오프셋은 이전의 인치 단위 상태로 머물러 있게 됩니다. 이 파라미터를 검증하지 않고 양산에 들어가면, pallet 교환 후 두 번째 cycle부터 치수 편차가 누적되어 최종 검사에서 불량이 발견된다. 또한, Fanuc 시스템의 파라미터 `14000 비트 2 (IRFx)`를 사전 확인하면 이 명령어에서 가장 빈번한 비계획 정지를 없앨 수 있다. 해당 파라미터가 활성화된 장비에서는 반드시 G28 명령어를 통해 모든 축을 원점(reference position)으로 복귀시킨 후에만 단위를 스위칭해야 하며, 그렇지 않으면 즉시 PS5362 알람이 트리거되어 자동화 라인이 강제로 정지합니다. 작업자는 실무에서 G22 chuck/tailstock barrier 기능을 통해 물리적 경계를 사전에 파라미터로 설정하고, chuck 가공 영역 진입 전에 공운전 그래픽으로 최종 Stroke limits를 엄격히 검증하여 예기치 못한 비가동 시간(downtime)을 영초(0초)로 수렴시켜야 합니다.

관련 명령 구조

  • G28 (Reference Position Return) - 원점(reference position) 복귀를 실행할 때 필수적인 명령어로, 좌표 스케일링 오류로 인한 알람 발생을 피하기 위해 단위 전환 전 축을 원점으로 복귀시킵니다.
  • G70 / G71 (Inch/Metric Input) - Siemens에서 기하학적 데이터 측정 단위를 정의하는 고유 명령어이며, Fanuc에서도 파라미터 설정을 통해 지원 가능합니다.
  • G700 / G710 (Inch/Metric Technological Scaling) - Siemens native 모드 확장 명령어로, 가공 좌표뿐만 아니라 feedrate F와 같은 기술적 데이터까지 원스톱으로 변환해 줍니다.
  • G22 / G23 (Chuck/Tailstock Barrier Check) - 스케일링 오류로 발생할 수 있는 공구와 chuck, tailstock 간 충돌을 하드웨어 수준에서 차단하는 경계 감시 명령어입니다.
  • G94 / G95 (Asynchronous/Synchronous Feedrate Modes) - active feedrate(mm/min, inch/min 등) 단위를 지지하는 명령어로, 활성 G20/G21 단위 모드 설정에 의존합니다.

결론

자동화 라인의 반복 가공 정밀도를 고도로 유지하고 불필요한 비가동 시간(downtime)과 가공 불량률을 영초(0초)로 방지하기 위해서는 표준화된 검증 프로토콜을 공장에 수립해야 합니다. 다품종 대량 양산 공정에 다중 단위(multi-unit) 프로그램을 도입하기 전에, 관리자는 Fanuc 파라미터 `5006 비트 0 (OIM)`, Siemens `MD10260`, Mitsubishi `#1226` 등 핵심 오프셋 변환 레지스터 상태를 완전하게 문서화하고 체크리스트화해야 합니다. 양산 시작 전에 공구의 물리적 가공 영역에 도달하기 전 G28 원점 복귀 명령의 실행 여부를 점검하고, 그래픽 공운전을 통해 가공 경로 전체를 사전 검증하는 프로세스를 규정하는 것만이 가공 치수 편차 누적과 turret 충돌이라는 파괴적 리스크로부터 비즈니스를 완벽히 방어하는 지름길입니다.

자주 묻는 질문 (FAQ)

자동화 라인 양산 가공 중 G20/G21 스위칭 시 PS5362 알람이 발생하는 원인과 즉각적인 해결책은 무엇인가요?

이 알람은 Fanuc 시스템에서 파라미터 14000 비트 2 (IRFx)가 활성화되어 있어 공구가 원점(reference position)에 있지 않을 때 단위 변환을 시도했기 때문에 발생하며, 자동 가공 도중 불시의 비계획 정지를 야기합니다. 자동화 라인에서 이 같은 오류로 인한 라인 정지를 예방하기 위해, 프로그램 단위 변경 명령 바로 앞에 G28 U0 W0 등의 원점 복귀 블록을 고정 삽입하고 메인 가공 사이클 시작 전 장비 제어반 화면에서 파라미터 14000 값이 현장 운영 표준에 맞는지 즉시 확인 조치하십시오.

G20/G21 명령 실행 후 이송 속도(feedrate)가 비정상적으로 급감(Crawl)하여 툴이 마모되는 현상을 예방하려면 어떻게 해야 하나요?

G20/G21 표준 ISO G-code는 좌표 치수만 스케일링할 뿐, 활성화된 feedrate(F값)는 메트릭과 인치 간 단위로 자동 변환하지 않아 F10.0이 10 mm/min이라는 느린 속도로 실행되어 툴 마모와 공정 지연을 유발합니다. 유일한 예외는 기술 데이터까지 동시 스케일링하는 Siemens의 G700/G710 계열이며, Fanuc이나 Mitsubishi에서는 반드시 단위 전환 직후에 명시적인 F-word(이송 속도 값)를 재선언해야 하므로 프로그램 템플릿에 'G20/G21 직후 F값 재작성' 규칙을 기본 프로그래밍 지침으로 등록하여 현장에 배포하십시오.

자동화 라인 팔레트 교환기(pallet changer) 작동 후 두 번째 사이클부터 치수 오차가 발생하여 불량이 발생할 때 어떤 파라미터를 점검해야 하나요?

이는 공구 오프셋 메모리를 자동으로 재계산해 주는 핵심 파라미터가 비활성화되어, 프로그램 좌표계는 전환되었으나 공구 길이와 마모 오프셋은 변환되지 않아 발생하며, 최종 검사에서 불량이 발견될 때까지 치수 누적 편차가 이어집니다. 이를 예방하기 위해서는 Fanuc Parameter 5006 bit 0 (OIM), Siemens MD10260, Mitsubishi Parameter #1226의 설정을 반드시 1로 변경하고, 양산 투입 전 장비 백업 파라미터 시트에 해당 설정 상태를 의무적으로 명시하여 라인 검수 절차를 수립하십시오.

아직 해결되지 않았나요?

이 주제에 대해 AI 어시스턴트에게 자연어로 물어보세요. 검증된 소스를 기반으로 하며 환각이 없습니다.

AI 어시스턴트에게 질문하기
Hakan Gündoğdu
Hakan Gündoğdu
  • CNC CARE Co-Founder (May 2025 - Present)
  • Mitsubishi Electric NC Sales & Service Section Manager (2008 - 2025)
  • Reis CNC Service Engineer (2003 - 2005)
  • Ören Kalıp CNC Mold Line Team Leader (1999 - 2002)

CNC 기계 산업의 모든 분야에서 25년 이상 근무한 경험을 바탕으로, 브랜드 독립적인 컨설팅, 엔지니어링 및 순정 부품 서비스를 제공하는 CNC CARE의 공동 창업자로서 활동을 이어가고 있습니다.

관련 기사

이 주제에 관한 다른 기사