Skip to main content
CNC.wikiCNC.wiki

G31 Skip 및 CNC Probe 프로그래밍: Fanuc, Siemens, Mitsubishi

Fanuc, Siemens 및 Mitsubishi CNC에서 G31 skip 기능 및 probe 프로그래밍을 마스터하십시오. 설비 충돌 방지, 알람 해결 및 서보 지연 파라미터 구성.

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

CNC CARE 공동 창업자

서론

자동화 생산 라인에서 공구 반경 보정(G41/G42)이 해제되지 않은 상태에서 G31 skip block을 실행하거나 Z축 취소 스위치가 켜진 채 touch probe를 접근시키는 것은, 고가의 sapphire stylus 팁을 분쇄하고 live-tool spindle shaft를 휘게 만드는 가장 치명적인 설비 충돌 사고로 직결됩니다. CNC controller가 이러한 부적절한 모달 상태에서 측정 사이클을 시작하면 물리적인 skip 신호가 무시되거나 즉각적인 PS0035 또는 P608 alarm이 발생하여 자동화 생산 라인의 전체 작동이 멈추게 됩니다. 이로 인해 유발되는 비가동 시간의 급증과 핵심 프로빙 장비의 기계적 파손은 가공 공정의 불량률을 크게 증가시킬 뿐만 아니라, 부품 및 고정구의 파손으로 이어져 공장 전체의 생산 효율성을 저하시키는 주요 원인이 됩니다.

기술 요약

특징사양
명령 코드G31
모달 그룹비모달 (one-shot) Group 00 G-code
호환 브랜드Fanuc, Siemens, Mitsubishi
중요 파라미터Fanuc: 6200#7 (SKF), 6201#0 (SEA), 6201#1 (SEB), 6281 · Siemens: $MN_EXTERN_MEAS_G31_P_SIGNAL, MD13231 $MN_MEAS_PROBE_OFFSET · Mitsubishi: #2102 skip_tL, #2103 skip_t1, #1174 skip_F
주요 제한 사항활성 상태의 공구 반경 보정 (G41/G42) 중의 probing은 엄격히 금지됩니다 (반드시 G40으로 취소해야 함). servo lag 및 타주 거리(coasting distance)는 수학적으로 보정되어야 하며, machine lock 및 좌표축 취소 스위치는 비활성화되어야 합니다.

핵심 요약

  • G31을 명령하기 전에 항상 G40을 사용하여 모든 공구 반경 및 공구 코 반경 보정 모달 상태를 해제하여 즉각적인 PS0035 (Fanuc) 또는 P608 (Mitsubishi) alarm의 발생을 방지하십시오.
  • servo system의 위치 편차와 lag를 수학적으로 반영하기 위해 Fanuc의 자동 SEA (6201#0) 및 SEB (6201#1) parameter를 활용하여 기록된 좌표가 공차를 벗어나는 것을 방지하십시오.
  • probing cycle 동안 machine lock 및 Z축 취소 스위치가 완전히 비활성화되어 있는지 확인하십시오. 그렇지 않으면 controller가 물리적 skip 신호를 무시하고 probe를 fixture에 직접 충돌시킬 수 있습니다.
  • feedrate가 누락될 때 P603 alarm이 발생하는 것을 방지하기 위해 명시적인 feedrate (F) 값을 프로그램하거나 0이 아닌 기본 feedrate parameter (Fanuc 6281 또는 Mitsubishi #1174 등)를 설정하십시오.
  • cycle을 시작하기 전에 물리적 touch probe 접점이 깨끗하고 케이블이 손상되지 않았는지 확인하여 Siemens 21700 stuck-probe alarm의 발생을 방지하십시오.
  • 프로그램 RESET 또는 비상 정지 인터럽트가 발생한 직후에는 항상 수동 retract 이동 (G00 또는 G01)을 통해 안전한 좌표 위치로 퇴각시켜 Siemens 제어에서의 바이패스된 충돌 감지를 무력화하십시오.

기본 개념

G31 skip 기능의 실질적인 프로그래밍 효과는 자동화된 워크피스 측정을 통해 고도로 지능적이고 자체 보정되는 가공 cycle을 생성할 수 있다는 것입니다. controller가 G31 block을 실행할 때, 축은 표준 G01 linear feed와 똑같이 이동합니다. 그러나 외부 skip 신호 (예: 워크피스에 접촉하는 물리적 touch probe)가 수신되는 즉시, CNC는 남은 축 이동을 즉각 중지하고, block의 남은 이동 거리를 소거하며, 접촉 순간의 정확한 절대 기계 좌표를 전용 시스템 변수에 영구적으로 기록합니다. 프로그래머는 이 저장된 좌표 변수를 읽기 위해 custom macro를 사용하여 작업자의 개입 없이 다음 가공으로 진행하기 전에 기계가 공구 오프셋을 동적으로 조정하거나, 파트 제로를 설정하거나, 파트 형상을 검증할 수 있도록 합니다.

skip 기능을 사용할 때, 프로그래머와 오퍼레이터는 servo system의 물리적 동특성과 controller의 modal 상태에 대해 각별히 경계해야 합니다. CNC는 skip 신호가 수신되는 그 즉시 현재 위치를 기록하기 때문에, 저장된 원시 값에는 본질적으로 servo system의 위치 편차로 인해 발생하는 약간의 delay가 포함됩니다. 흔한 실패 원인은 이 lag를 수학적으로 보정하는 내장 parameter 설정을 방치하는 것입니다. 이 지연을 무시하면 기계는 부정확한 접촉 지점을 기록하게 됩니다. 이 결함이 있는 데이터가 offset macro에 입력되면 공구 가공 경로가 공차를 벗어나 결국 불량 부품(scrapped part)이 생성됩니다. 설상가상으로, 부정확한 워크피스 offset 계산은 다음 가공 패스에서 기계가 너무 깊게 plunge하도록 유도하여 turret이나 spindle을 chuck, vise jaw 또는 워크피스 clamp에 격렬하게 충돌시키는 치명적인 hard collision을 초래할 수 있습니다.

기계를 보호하기 위해 제어 장치의 내부 안전 로직은 G-code 환경을 적극적으로 모니터링합니다. 자동화된 probing cycle을 시작하기 전에 오퍼레이터는 G12.1 polar coordinate interpolation 또는 G07.1 cylindrical interpolation과 같은 모든 좌표 변환이 완전히 취소되었는지 확인해야 합니다. 이러한 운동학적 변환은 백그라운드에서 좌표 해석을 변경하므로, 이들이 활성화된 상태에서 G31 측정 이동을 실행하면 시스템 alarm이 발생하거나 예측할 수 없는 경로 편차가 발생할 수 있습니다. 마찬가지로 G65 macro call commands를 통해 호출되는 모든 복잡한 가공 macro는 skip 명령을 호출하기 전에 공구 반경 보정 (G41/G42)이 G40 block을 통해 완전히 해제되었음을 명시적으로 확인해야 하며, 이를 통해 probe stylus가 파괴적인 측면 보정 이동에 노출되지 않도록 해야 합니다.

명령 구조

G31 명령은 비모달(non-modal), 원샷(one-shot) 지시어로 프로그램됩니다. 즉, 이 명령은 해당 명령이 작성된 특정 프로그램 block 내에서만 활성 상태로 유지됩니다. 가장 단순한 형태에서, 이 명령은 축의 목표 좌표와 feedrate와 함께 작성됩니다. CNC는 프로그램된 feedrate로 지정된 목표 지점을 향해 linear coordinate interpolation을 시작하는 동시에 외부 전기 skip 신호 채널을 지속적으로 모니터링합니다. 트리거 신호가 수신되지 않은 채 목표 좌표에 도달하면 프로그램은 단순히 다음 block으로 진행합니다.

이동 중에 probe가 워크피스나 fixture에 물리적으로 접촉하면, 외부 센서는 CNC의 고속 입력 터미널로 전압 변환 신호를 보냅니다. controller의 커널은 즉각적으로 정확한 축 위치를 캡처하고 남은 좌표 이동 거리(남은 이동 거리 소거(deleting the distance-to-go)라고 함)를 취소하며 G-code의 다음 block으로 직접 skip합니다. 이러한 신속한 응답은 touch probe 팁에 과도한 압력이 가해지는 것을 방지합니다. 캡처된 좌표 데이터는 즉시 시스템 변수에 저장되어 custom 측정 macro에서 읽을 수 있습니다.

명령 구문 형식:

  • Fanuc System Format: G31 IP_ F_ [P_] ; (여기서 IP는 목표 좌표축을 나타내고, F는 feedrate이며, 선택적 인수 P는 skip 신호 입력을 선택함)
  • Siemens System Format: G31 X... Y... Z... F... [P...] ; (여기서 X, Y, Z는 목표 좌표 끝점이고, F는 feedrate이며, 선택적 인수 P는 probe 입력을 선택함)
  • Mitsubishi System Format: G31 Xx1 Yy1 Zz1 αα1 [Rr1] [Ff1] ; (여기서 X, Y, Z, α는 좌표축을 나타내고, 선택적 인수 R은 가속 프로파일을 제어하며, F는 skip feedrate임)
주소 / 파라미터CNC 시스템설명허용 범위
IP / X, Y, Z, αFanuc, Siemens, Mitsubishilinear probing 이동을 위한 목표 좌표.실수
FFanuc, Siemens, Mitsubishimm/min 단위의 probing feedrate. 0이 아니어야 합니다.실수
PFanucskip 신호 입력을 지정합니다 (P1..P4 또는 P1..P8).1에서 8 사이의 값
PSiemensprobe 입력 선택 (P1..P4).1에서 4 사이의 값
RMitsubishi가속 프로파일 명령. 즉각 정지는 R0, 부드러운 감속은 R1.0 또는 1
PMitsubishiskip 신호 조합 (D1 논리 AND와 함께 사용됨).1에서 255 사이의 값
DMitsubishiskip 신호 방식. Multiple Skip은 D1, 표준은 D0/생략.0 또는 1

브랜드별 응용

Fanuc 응용

Fanuc 시스템에서 G31은 시스템 파라미터를 통해 고도로 구성할 수 있습니다. 고속 skip 신호는 하드웨어 입력에 직접 매핑되며 trigger edge를 지시하기 위해 Parameter 6200#6에 의해 관리됩니다.

전형적인 Fanuc skip block은 G31 Z-50.0 F120; 또는 특정 probe 채널을 모니터링하기 위해 다단계 입력을 사용하는 G31 X100.0 F80 P3;과 같이 작성됩니다. controller는 SRE 비트 구성에 따라 해당 probe가 닫히거나열릴 때 이동 block을 자동으로 종료합니다.

분류기능 / 식별자기술 사양
파라미터Parameter 6200#7 (SKF)`공운전 (dry run)`, override 및 자동 가속/감속을 비활성화(0)하거나 활성화(1)합니다.
파라미터Parameter 6201#0 (SEA)자동 Type A servo lag 보정을 활성화(1)합니다.
파라미터Parameter 6201#1 (SEB)자동 Type B servo lag 보정을 활성화(1)합니다.
파라미터Parameter 6281활성화되었을 때 기본 skip feedrate (0.0 ~ 999000.0 mm/min)를 설정합니다. SFP가 1인 경우에만 활성화됩니다.
파라미터Parameter 6207#1 (SFP)parameter 6281에 설정된 feedrate의 사용을 활성화(1)합니다.
파라미터Parameter 6200#6 (SRE)trigger edge를 설정합니다: rising edge (0) 또는 falling edge (1).
알람 코드Alarm PS0035활성 상태 of Group 07 공구 반경 보정 (G41/G42) 중의 probing, 또는 지정되지 않은 토크 제한 skip.
알람 코드Alarm PS0369G31 포맷 에러 (축이 지정되지 않거나 2개 이상의 축이 동시에 지정된 토크 skip, 또는 Q 값이 1-254 범위를 벗어남).
알람 코드Alarm PS0370다단계 skip P 값이 1-8 범위를 벗어나거나 옵션이 존재하지 않음.
알람 코드Alarm 211회전당 feed 모드 (G99)에서 명령된 G31 고속 skip.
버전Series 15 vs Series 16i/18i/21iM-series는 동기화 축 skipping을 위한 G31.8 EGB skip을 지원합니다. Multi-probe 옵션은 parameter 6270 ~ 6273을 통해 P1-P8을 매핑합니다.

경고: 고속 G31 cycle을 실행하는 동안 회전당 feed 모드 (G99)로 CNC를 작동시키면 즉시 Alarm 211이 발생합니다. probe 이동을 실행하기 전에 항상 G98 block을 프로그램하여 분당 feed 모드로 전환함으로써 고속 충돌로부터 민감한 물리적 probe stylus를 보호하십시오.

Siemens 응용

Siemens 제어 장치에서 G31은 NCK 커널에 매핑되는 직접 운동학적 측정을 사용하여 실행됩니다. 이러한 디지털 입력은 probe 스위칭 offset을 설정하기 위해 MD13231과 같은 시스템 파라미터를 사용하여 매핑됩니다.

전형적인 Siemens 측정 block은 P 파라미터가 probe 입력 2를 선택하는 G31 G91 Z-30.0 F100 P2;와 같이 작성됩니다. 물리적 스위칭이 발생하면 NCK는 즉시 남은 좌표 이동을 계산하고 다음 block으로 skip합니다.

분류기능 / 식별자기술 사양
파라미터$MN_EXTERN_MEAS_G31_P_SIGNAL[0..3]P1..P4 probe 입력을 디지털 probe 하드웨어 신호에 매핑합니다.
파라미터MD13231 $MN_MEAS_PROBE_OFFSETMEAS 스위칭 위치를 이동시킵니다 (전체 측정 거리보다 작아야 함).
알람 코드Alarm 21700Probe 신호가 이미 활성화되어 있음 (block 시작 시 probe가 편향되었거나 고정되어 있음).
알람 코드Alarm 61301Probe 스위칭 없이 측정 거리를 완전히 이동함.
알람 코드Alarm 61302Probe 충돌 (중간 접근 위치 결정 중 예기치 않은 스위칭 신호 발생).
알람 코드Alarm 14060프로그램된 block skip 레벨이 1보다 작거나 9보다 큽니다.
버전SINUMERIK 828D/808D vs 840DMulti-probe 기능인 G31 P1..4는 828D/808D 모델에서 사용할 수 없습니다. 표준 G31은 제공됩니다.

경고: 중간 접근 위치 결정 중에 측정용 stylus가 예기치 않게 장애물과 접촉하면 NCK는 즉시 Alarm 61302를 트리거합니다. 오퍼레이터는 고가의 probe에 대한 물리적 손상을 방지하기 위해 대상 영역이 비어 있는지 확인하고 안전한 접근 거리를 사용해야 합니다.

Mitsubishi 응용

Mitsubishi CNC 시스템에서 G31 skip 명령은 감속 프로파일을 구성하기 위해 R 주소를 통합하여 처리됩니다. 응답성은 가속 지연을 처리하기 위해 #2102 및 #2103과 같은 파라미터에 의해 제어됩니다.

표준 Mitsubishi skip block은 신호 트리거 시 부드러운 감속을 가능하게 하는 G31 X-150. R1 F50; 또는 지정된 센서들에 대해 AND multiple skip 로직을 실행하기 위해 G31 D1 P3 Z20. F20;과 같이 작성됩니다.

분류기능 / 식별자기술 사양
파라미터Parameter #2102 (skip_tL)가변 속도 skip 감속을 위한 선형 skip 시정수 (0 ~ 4000 ms).
파라미터Parameter #2103 (skip_t1)소프트 가속/감속을 위한 1차 지연 skip 시정수 (0 ~ 4000 ms).
파라미터Parameter #1174 (skip_F)G-code block에서 F가 생략되었을 때의 기본 G31 skip feedrate (1 ~ 999999 mm/min).
파라미터Parameter #1366 (skipExTyp)다중 계통 동시 G31 동작 명령 (0 또는 1).
알람 코드Alarm P601시스템 옵션 내에서 skip 사양이 비활성화되어 있습니다.
알람 코드Alarm P603Skip 속도가 0입니다 (생략되었고 #1174가 0으로 설정됨).
알람 코드Alarm P608활성 상태의 공구 반경 또는 공구 코 반경 보정 중에 발행된 G31 skip 명령.
알람 코드Alarm M01 0029제어 장치가 드라이브 유닛으로부터 skip 좌표를 가져오지 못했습니다.
버전M-System vs L-SystemM-System은 X, Y, Z, α 축 명령을 사용합니다. L-System은 직경/반경을 지원하는 X, Z, U, W 축 명령을 사용합니다. Speed Change Skip (G31 Fn)에는 옵션이 필요합니다.

경고: 지정된 모든 센서가 트리거되기 전에 probe가 물리적 overtravel 한계를 벗어나 이동하도록 강제하는 Multiple Skip 명령 (D1)을 발행하면 stylus가 파손됩니다. 프로그래머는 probe가 짓눌리는 것을 방지하기 위해 overtravel 클리어런스를 면밀히 확인해야 합니다.

브랜드 비교

항목FanucSiemensMitsubishi
Probe 입력G31 P1-P8을 통한 최대 8개의 동시 입력.G31 P1-P4을 통한 최대 4개의 디지털 입력.D1 및 P1-P255 조합을 통해 매핑된 최대 8개의 입력.
감속 제어자동 백그라운드 servo 보정 (SEA/SEB 파라미터를 통한 Type A/B).PLC/NC 고유 cycle 매핑 (MEAS/MEAW)에 의존합니다.R0 (즉각 정지) 및 R1 (부드러운 감속)을 통한 프로그램 방식 감속 선택.
토크 제한 ProbingG31 P98/P99 토크 제한 skip 명령.토크 임계값을 갖는 custom cycle 또는 MEAW를 통해 처리됩니다.G160 토크 제한 skip 명령.
블록 스킵 레벨9개의 block skip 레벨./와 /1을 완전히 독립적인 skip 레벨로 처리합니다.레벨 1 표준 block skip.
고유 사이클지속적 고속 skip (G31.9), EGB skip (G31.8).채널별 고속 MEAS/MEAW cycle.다중 feedrate 이동을 위한 Speed Change Skip (G31 Fn).

기술 분석

Fanuc, Siemens, Mitsubishi 간의 G31 skip 기능 구현에서 나타나는 근본적인 차이는 그들의 운동학적 제어, 파라미터화 및 하드웨어 매핑 아키텍처에 있습니다. Fanuc은 기록된 좌표에서 자동으로 servo lag를 차감해 주는 내장형 수학적 servo 지연 및 가속 보정 (SEA 및 SEB 파라미터를 통한 Type A 및 Type B)을 제공함으로써 그 시스템을 차별화합니다. 또한 완벽한 반복정밀도를 보장하기 위해 SKF 파라미터 (6200#7)를 사용하여 probing block 동안 오퍼레이터의 임의 개입(feedrate override 및 공운전)을 완전히 차단할 수 있도록 프로그래머에게 허용합니다. 반면 Siemens는 G31 신호가 디지털 probe 머신 데이터(예: `$MN_EXTERN_MEAS_G31_P_SIGNAL`)를 통해 매핑되는 수치 제어 커널 (NCK)과의 직접적인 통합에 의존하며, 백그라운드에서 ISO dialect probe 호출을 Siemens 고유의 `MEAS` 명령어로 자동 라우팅합니다. 또한 Siemens는 표준 슬래시(/)와 번호가 지정된 슬래시(/1 ~ /9)를 완전히 독립적인 skip 레벨로 취급하여 별도로 활성화해야 하므로 보다 세부적인 block skip 제어를 제공한다는 점에서 독특합니다.

Mitsubishi는 G31 block 내에서 R 주소를 통해 직접 프로그램 가능한 감속 제어를 도입함으로써 Fanuc 및 Siemens와 차별화된 아키텍처를 구축하고 있습니다. 프로그래머는 파라미터 #2102 및 #2103에 정의된 가속 시정수를 사용하여 즉각적인 정지를 위한 R0 또는 부드러운 감속을 위한 R1을 선택함으로써 기계를 기계적 충격으로부터 보호할 수 있습니다. 나아가 Mitsubishi의 D1 주소는 P 주소를 활용해 최대 8개의 센서 입력을 결합하는 하드웨어 수준의 논리 AND Multiple Skip 연산을 가능하게 하여 PLC 래더 로직의 지연 시간을 없앱니다. 마지막으로, Mitsubishi는 신호 트리거 시 축을 완전히 정지시키는 대신에 피드레이트 간을 부드럽게 전환할 수 있는 고유한 'Speed Change Skip' (G31 Fn)을 제공하는데, 이는 표준 Fanuc이나 Siemens G31 구문에서는 기본적으로 대응되지 않는 독보적인 옵션입니다.

프로그램 예제

Fanuc 프로그램 예제

; Fanuc Probe Measurement Cycle
G90 G98;                 ; 절대 좌표계 선택 및 분당 feed 모드 선택
G31 Z-25.0 F100. P2;     ; probe 입력을 모니터링하면서 Z축을 100 mm/min으로 -25.0을 향해 probe 이동
G04 X2.0;                ; 좌표 판독값을 안정화하기 위해 2초간 dwell 대기

공운전: CNC controller는 첫 번째 block에서 G90 G98을 처리하여 절대 위치 결정을 선택하고 G31 feed 요건을 충족하기 위해 분당 feed 모드로 전환합니다. 두 번째 block에서 공구는 P2 probe 신호 입력을 능동적으로 모니터링하면서 Z-25.0을 향해 100 mm/min의 feedrate로 Z축을 따라 linear interpolation을 시작합니다. touch probe가 워크피스에 접촉하는 순간 외부 전기 트리거가 수신되어 CNC가 Z축 운동을 즉각 중지하고 남은 이동 거리를 소거하며 절대 기계 좌표를 시스템 변수에 저장합니다. 세 번째 block에서 제어 장치는 custom macro가 기록된 좌표를 읽기 전에 물리적 시스템이 안정화될 수 있도록 2.0초의 dwell (G04)을 실행합니다.

Siemens 프로그램 예제

; Siemens Measurement with Delete Distance-to-Go
G90 G94;                 ; 절대 좌표 및 mm/min 단위 feedrate 설정
G31 Z-30.0 F120 P1;      ; probe 입력 P1을 사용하여 Z축을 120 mm/min으로 Z-30.0을 향해 측정 이동
G00 Z10.0;               ; 안전 여유 평면 (Z10.0)으로 급속 retract 퇴각

공운전: Siemens controller는 첫 번째 block에서 절대 좌표 모드와 분당 feedrate 모드 (G90 G94)를 읽습니다. 두 번째 block에서 비모달 G31 명령어가 실행되어 디지털 probe 입력 P1을 모니터링하면서 Z축을 따라 Z-30.0을 향해 120 mm/min of the feedrate로 선형 측정 경로를 시작합니다. 물리적 접촉 시 probe가 트리거되어 NCK 커널이 linear interpolation을 즉각 중단하고 남은 이동 거리를 소거하며 정확한 터치 좌표를 기록합니다. 이어서 세 번째 block이 즉시 처리되어 Z축이 안전한 여유 좌표인 Z10.0으로 급속 retract (G00) 이동합니다.

Mitsubishi 프로그램 예제

; Mitsubishi Decelerated Multiple Skip Cycle
G19 C0 Z0;               ; skip block에 직접 인접한 좌표 평면 선택
G31 D1 P3 Z-50. R1 F80;  ; P3에 대한 Multiple skip AND 로직, Z축 probe 이동 -50.0까지, 감속 정지, 80 mm/min
G00 Z20.0;               ; 안전한 좌표 위치로 급속 retract 퇴각

공운전: Mitsubishi 제어 장치는 첫 번째 라인에서 G19 block을 처리하여 skip cycle에 인접한 C-Z interpolation 평면을 설정합니다. 두 번째 block에서 복합 센서 패턴 P3을 모니터링하는 논리 AND Multiple Skip (D1)과 함께 G31이 실행됩니다. Z축은 80 mm/min의 feedrate로 Z-50.0을 향해 feed 이동합니다. 특정 센서 조합이 트리거되면 제어 장치는 R1 주소를 읽어 급격한 정지 대신 파라미터로 정의된 시정수 (#2102 및 #2103)를 사용하는 부드러운 감속 램프를 적용하여 probe를 보호합니다. Z축은 정지하고 정확한 기계 좌표를 기록한 후 세 번째 block으로 skip하여 Z축을 Z20.0의 안전 여유 평면으로 급속 retract (G00)시킵니다.

오류 분석

브랜드알람 코드트리거 조건오퍼레이터 증상근본 원인 / 해결책
FanucPS0035Group 07 공구 반경 보정 (G41/G42)이 활성화된 상태에서 G31이 명령되었거나 토크 제한 skip 한계가 지정되지 않음.G31을 읽는 즉시 CNC가 정지하며 CRT 화면에 PS0035를 표시합니다.G31 전에 G40으로 보정을 해제하십시오. PMC 토크 윈도우를 확인하십시오.
FanucPS0369축이 지정되지 않거나 2개 이상의 축이 지정된 토크 skip 명령이 발생했거나 Q 값이 1-254 범위를 벗어남.PS0369 포맷 에러와 함께 축 동작이 즉시 정지합니다.정확히 하나의 축만 프로그램하고 Q 값을 1에서 254 사이로 설정하십시오.
Siemens21700측정용 probe 신호가 이미 활성화된 상태에서 G31이 활성화됨.프로그램이 정지되고 화면에 Alarm 21700을 표시합니다.물리적 probe 상태를 확인하고 (편향되거나 고정되지 않았는지 확인), 배선을 확인하십시오.
Siemens61301Probe 스위칭 없이 측정 거리를 완전히 이동함.CNC 화면에 Alarm 61301 ("Probe not switching")이 표시됩니다.측정 입력을 확인하십시오. 공구 길이 offset 또는 워크피스 위치를 확인하십시오.
MitsubishiP608활성 상태의 공구 반경/공구 코 보정 중에 G31 skip 명령이 발행됨.제어 장치가 실행을 중지하고 P608 alarm을 발생시킵니다.G31 전에 보정을 해제하도록 G40을 프로그램하십시오.
MitsubishiM01 0029제어 장치가 드라이브 유닛으로부터 skip 좌표를 가져오지 못했습니다.가공 cycle이 정지하고 M01 0029 에러를 표시합니다.드라이브 배선, 고정밀 파라미터 및 인코더 통신을 확인하십시오.

실무 응용 가이드

자동화 라인의 반복 가공 프로세스에서 반복정밀도를 저해하고 제품 불량률을 폭발적으로 증가시키는 가장 숨겨진 위험 요소는 바로 touch probe의 물리적 측정 접촉 신호와 servo system의 위치 제어 편차 사이에서 발생하는 시간 지연(lag)입니다. 이 파라미터를 검증하지 않고 양산에 들어가면, 팔레트 교환 후 두 번째 사이클부터 치수 편차가 누적되어 최종 검사에서 불량이 발견된다. 특히 Fanuc 시스템의 6201#0 (SEA) 및 6201#1 (SEB) 파라미터를 사전 확인하면 이 명령어에서 가장 빈번한 비계획 정지를 없앨 수 있다. 이 파라미터들은 servo system의 가속/감속에 따른 지연 펄스를 수학적으로 보정하여 touch probe가 실제로 공작물 표면에 접촉한 머신 절대 좌표를 정확하게 연산하여 시스템 변수에 영구적으로 기록하도록 보장합니다. 만약 Mitsubishi 제어 장치를 사용하는 생산 라인에서 기본 feedrate가 정의되지 않은 상태로 G31 skip 명령을 내리면 P603 alarm과 함께 라인이 즉각 멈추게 되는데, 이는 #1174(skip_F) 파라미터에 적절한 기본 feedrate 값을 미리 대입하여 차단할 수 있습니다. 또한 공운전 제어 스위치가 수동으로 켜져 있어 발생하는 신호 무시 현상을 방지하기 위해 Fanuc의 6200#7 (SKF) 파라미터를 0으로 비활성화하여 오퍼레이터의 임의 개입을 차단하는 것이 비가동 시간을 단축하고 공정 수율을 유지하는 필수 안전 가이드라인입니다.

관련 명령 구조

  • G40 / G41 / G42 (공구 반경 보정): 즉각적인 시스템 alarm 및 toolpath 잠금을 방지하기 위해 G31을 실행하기 전에 G40을 사용하여 완전히 해제되어야 합니다.
  • G36 / G37 (자동 공구 길이 측정): 백그라운드 probe 조정 및 고속 입력 로직을 공유하여 공구 형상 조정을 자동화합니다.
  • G04 (일시 정지 / Dwell): 물리적 접촉이 발생했을 때 남은 dwell 시간을 조기에 취소하기 위해 Q 주소 (Q1-Q8)를 사용하여 동일한 다단계 skip 신호를 통합합니다.
  • G160 (토크 제한 스킵): 운동을 중단시키기 위해 외부 전기적 touch 신호가 아닌 servo motor의 토크 임계값을 모니터링하여 G31의 skip 동작을 확장합니다.

결론

자동화 생산 라인에서의 성공적인 G31 skip 기능 운용은 장비 고유의 파라미터 최적화와 철저한 모달 코드 제어에 달려 있습니다. 대량 생산 체제에서 불필요한 비가동 시간과 probe 파손을 미연에 방지하기 위해서는, G31을 호출하기 직전에 반드시 G40을 통한 공구 보정 취소를 의무화하고 장비의 servo lag 보정 값(SEA/SEB 등)을 작업 전 완전하게 검증하는 프로토콜을 공장 전반에 도입해야 합니다. 이러한 예방적이고 정량적인 관리 방식을 생산 표준으로 수립함으로써 불량률을 극적으로 낮추고 반복 정밀도를 최고 수준으로 유지할 수 있습니다.

자주 묻는 질문 (FAQ)

자동화 생산 라인에서 팔레트 교환 후 G31을 실행할 때 두 번째 사이클부터 발생하는 치수 편차의 주요 원인은 무엇인가요?

많은 오퍼레이터들이 간과하는 부분은 다중 팔레트 시스템에서 각 팔레트의 물리적 영점 오차와 결합된 servo lag 보정 파라미터의 누락입니다. 첫 번째 사이클은 기준 오프셋을 사용하므로 정상 가공되는 것처럼 보이지만, 두 번째 사이클부터는 누적된 잔여 지연 펄스로 인해 가공 좌표계가 불량 상태로 전환됩니다. 해결책: 각 팔레트마다 전용 macro 변수를 사용하여 절대 zero 포인트를 리프레시하고, Fanuc의 6201#0 (SEA) 파라미터가 '1'로 설정되었는지 확인하여 물리적 연산 오차를 즉각 소거하십시오.

G31 skip 명령어 실행 중에 발생하는 비계획 정지와 Alarm PS0035/P608을 방지하기 위한 가장 안전한 프로그램 구성 방법은 무엇인가요?

주요 원인은 이전 가공 단계에서 사용되던 G41/G42 공구 반경 보정이 활성 상태로 남아있기 때문입니다. 이 모달 상태에서는 controller가 측정 이동 벡터와 오프셋 벡터를 동시 연산할 수 없어 안전을 위해 즉시 차단합니다. 해결책: 측정용 서브루틴 프로그램의 시작부(첫 번째 라인)에 반드시 G40 G98 모달을 함께 명령하고, Z축을 안전한 clearance 좌표로 도피시킨 후 독립적인 단독 블록으로 G31을 명령하는 강제 안전 규정을 코딩 규칙에 포함시키십시오.

Touch probe를 교체하거나 가공 피드를 변경한 후 G31 측정 값의 신뢰성을 확인하려면 어떤 파라미터와 동작을 검증해야 하나요?

피드레이트의 변경은 곧바로 probe 팁의 물리적 타주 거리(coasting distance)와 servo 응답 지연 시간의 변화를 유발하여 측정 한계를 초래합니다. 특히 Mitsubishi의 경우 R 주소 값의 가감속 모드와 파라미터 #2102(skip_tL)가 실제 피드값과 어긋나면 치수 정확도가 무너집니다. 해결책: 새로운 피드로 실제 가공을 수행하기 전, 표준 게이지 블록을 사용하여 5회 이상의 반복 probing 테스트를 진행하고 6281 또는 #1174 파라미터의 기본 skip 피드값을 표준 피드와 완벽히 1: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의 공동 창업자로서 활동을 이어가고 있습니다.

관련 기사

이 주제에 관한 다른 기사