Skip to main content
CNC.wiki

지멘스 CNC Setting Data SD 설정 가이드 및 알람 해제

지멘스 SINUMERIK CNC 제어기에서 Setting Data(SD) 구조를 분석하고 SD54657, SD43790 파라미터 구성과 Alarm 4009, 62306 해결을 통해 장비 충돌을 예방하고 비계획 가동 정지 시간을 단축하는 법을 배웁니다.

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

CNC CARE 공동 창업자

서론

지멘스(Siemens) CNC 제어 장치에서 측정 사이클 공차나 시작 위치 설정 데이터(Setting Data)를 잘못 구성하면 가공 도중 물리적인 vise jaw(바이스 조)를 강타하거나, 잘못 위치한 clamp(클램프)에 충돌하거나, 보정형 chuck(척)에 충돌하여 PLC Alarm 700013 'Operation while chuck is not locked'를 유발하고 축 이송계를 파괴하는 치명적인 결과를 초래한다. 프로브가 공차 이탈을 감지하더라도 제어기 내부의 알람 마스크나 공차 정지 파라미터가 비활성화되어 있으면, 기계는 어떠한 비상 정지 없이 이송을 계속해 turret(타렛) 과부하(PLC Alarm 700022 'Turret motor overload') 및 Alarm 700011 'Tool clamping timeout'과 같은 심각한 장비 손상과 비계획 정지 시간을 발생시킨다. 이 파라미터를 검증하지 않고 양산에 들어가면, 팔레트 교환 후 두 번째 사이클부터 치수 편차가 누적되어 최종 검사에서 불량이 발견된다. 특히 SD54657번 파라미터를 사전 확인하면 이 명령어에서 가장 빈번한 비계획 정지를 없낼 수 있다. 따라서 자동화 라인의 반복 가공 안정성을 확보하고 불량률을 최소화하기 위해 Setting Data(SD)의 런타임 동작과 파라미터 제어 방식을 완벽히 파악해야 한다.

기술 요약

명령 / 코드 그룹Setting Data (SD)
모달 그룹 / 영역System Configuration / Setting Data
지원 브랜드Siemens
주요 파라미터SD43790 $SA_OSCILL_START_POS, SD54657 $SNS_MEA_TOL_ALARM_SET_M0
주요 제한 사항MD10710 $MN_PROG_SD_RESET_SAVE_TAB에 등록되지 않는 한 reset 시 휘발됨; 키스위치 설정에 따른 Data Classes (S, M, I, U)에 의해 액세스가 제한됨.

핵심 요약

  • G-code 프로그램 내에서 $ 접두사를 사용하는 직접적인 alphanumeric 어드레싱(예: $SA_OSCILL_START_POS[Z])을 직접 사용하십시오.
  • Setting Data 변경 사항은 reset 세이브 테이블에 연결되지 않는 한 NC reset 또는 M30 실행 시 휘발되어 기본값으로 복귀함을 숙지하십시오.
  • 지속성을 보장하기 위해 machine data MD10710 $MN_PROG_SD_RESET_SAVE_TAB에 주요 Setting Data 어드레스를 등록하십시오.
  • 공작물 측정 공차를 초과할 때 내부 M0 정지를 강제로 생성하려면 SD54657 $SNS_MEA_TOL_ALARM_SET_M01로 구성하십시오.
  • SD43790과 같은 축별 Setting Data는 연삭 제어 장치에서는 작업자용(Protection Level 7)으로 해제되어 있지만, 기본 turning/milling 버전에선 locked(Protection Level 0) 상태로 차단되어 있음에 유의하십시오.
  • Alarm 4009로 부팅이 정지되는 것을 예방하기 위해 파워온 초기화 테이블인 MD10709 $MN_PROG_SD_POWERON_INIT_TAB에 유효하지 않은 SD 번호가 포함되지 않도록 하십시오.

기본 개념

지멘스 Setting Data (SD) 구조의 실무 프로그래밍 효과는 작업자와 프로그래머에게 깊은 레벨의 Machine Data (MD) 수정에 수반되는 위험하고 메모리를 재구성하는 시스템 재부팅(reboot) 없이도 런타임에 직접 액세스할 수 있는 유연한 시스템 구성 레이어를 제공합니다. 파트 프로그램에서 Setting Data와 직접 상호작용함으로써 개발자는 spindle 제한, 나사산 시작 각도, 측정 cycle 공차 및 oscillation 영역 등을 작업 중 동적으로 조정할 수 있습니다.

그러나 프로그래머와 작업자는 이러한 파라미터의 내재된 휘발성에 주의해야 합니다. 작업자가 특수 가공을 위해 NC 프로그램을 사용해 Setting Data 파라미터를 변경하는 경우, 반드시 이 파라미터가 reset 세이브 테이블에 매핑되어 있는지 확인해야 합니다. 이러한 보호 조치 없이 NC reset 또는 M30 프로그램 종료가 수행되면 제어 장치는 자동으로 원래의 기본 상태로 되돌아가며, 이는 작업자가 두 번째 공작물을 가공할 때 전혀 예측할 수 없는 kinematic 오동작을 초래합니다.

명령 구조

Siemens는 달러 기호($) 접두사가 붙은 고도의 구조화된 alphanumeric 형식을 사용하여 Setting Data (SD)를 구성하고 어드레싱합니다. 이름 지정 규칙은 뒤따르는 문자들을 사용하여 정확한 데이터 영역을 정의합니다. 일반 Setting Data 파라미터는 $SN_ 접두사가 붙고, 채널별 파라미터는 $SC_ 접두사가 붙습니다.

축별 Setting Data 파라미터는 $SA_ 접두사를 사용합니다. 이외에도 cycle 구성을 위한 전용 범위는 세 번째 문자 S를 사용하여 cycle Setting Data에 대해 $SNS_, $SCS_, $SAS_와 같은 접두사를 형성합니다. 활성 Setting Data 파일은 .SEA 파일 확장자로 저장됩니다.

데이터는 NC 파트 프로그램에서 직접 어드레싱할 수 있으며, 축별 파라미터는 대괄호 내에 프로그래밍된 축 이름이나 배열 위치를 인덱스로 활용할 수 있습니다. 액세스는 7단계 키스위치 및 비밀번호 보호 계층구조에 직접 매핑된 네 가지 고유한 Data Classes에 의해 엄격하게 통제됩니다. 이러한 클래스는 권한이 없는 작업자가 핵심 장비 kinematics를 손상시키는 것을 방지하는 동시에 사용자 레벨의 Setting Data를 편집할 수 있는 권한을 제공합니다.

  • System (S): Protection level 0. 제어 장치 제조업체용으로 예약됨.
  • Manufacturer (M): Protection levels 1 및 2. 공작기계 제작업체 (OEM)용.
  • Individual (I): Protection levels 1, 2 또는 3. 유지보수 담당자용.
  • User (U): Protection levels 3, 4 및 7. 작업자 및 프로그래머용.

Address Syntax Format

$[Prefix]_[ParameterName]
$[Prefix]_[ParameterName][AxisIndex]

Key Setting Data Parameters

파라미터설명값 범위
SD43790 $SA_OSCILL_START_POS왕복/oscillating 축의 시작 위치를 정의합니다.DOUBLE (-1.0E+301 ~ 1.0E+301, mm 또는 degrees)
SD54657 $SNS_MEA_TOL_ALARM_SET_M0치수 측정 공차가 초과되었을 때의 장비 동작을 지시합니다.Integer (0: alarm 표시 후 계속 진행, 1: 내부 M0 생성)
SD42000 $SC_THREAD_START_ANGLEG33 thread 절삭과 같은 작업 시 thread 시작 각도(SF)를 프로그래밍하는 데 사용되는 채널별 Setting Data입니다.DOUBLE (mm 또는 degrees)

브랜드별 응용

Siemens

Siemens는 $ 접두사를 사용하여 표준 파트 프로그램 내에서 직접 Setting Data의 상위 수준 및 명시적인 alphanumeric 어드레싱을 기본적으로 지원합니다. 이해하기 어렵고 문서화되지 않은 번호식 매크로 변수 뒤에 작동 파라미터를 숨기는 다른 제어 장치와 달리, Siemens는 G-code 에디터에서 직접 액세스할 수 있는 자체 문서화 구문을 제공합니다. 또한 프로그래머는 시스템 Setting Data에 영향을 주지 않고 수학적 계산을 수행하기 위해 R-Parameter Programming을 사용할 수 있습니다.

둘째, Siemens는 키스위치 계층구조에 직접 매핑된 세분화된 Data Classes (S, M, I, U)를 통해 파라미터를 엄격하게 격리합니다. 이를 통해 작업자는 제조업체 레벨의 kinematics를 손상시킬 위험 없이 자신의 사용자 레벨 Setting Data를 자유롭게 수정할 수 있습니다. 셋째, Siemens는 특정 보존 테이블(예: PROG_SD_RESET_SAVE_TAB)을 통해 reset 전반의 파라미터 지속성을 독특하게 처리합니다. 개발자는 모든 파라미터 변경 사항을 단순히 휘발성으로 만들거나 ROM에 영구적으로 쓰도록 강제하는 대신, 어떤 개별 Setting Data 변수가 NC reset 후에도 유지되어야 하는지 명시적으로 선언할 수 있어 장비의 초기화 상태에 대해 탁월한 제어를 제공합니다.

  • SD43790 $SA_OSCILL_START_POS: oscillating 축의 시작 위치를 정의합니다 (DOUBLE, -1.0E+301 ~ 1.0E+301).
  • SD54657 $SNS_MEA_TOL_ALARM_SET_M0: 측정 공차 초과 시 M0 정지를 트리거할지 아니면 단순히 메시지만 표시할지 결정합니다 (0 또는 1).
  • SD42000 $SC_THREAD_START_ANGLE: G33 작업 시 thread 시작 각도를 설정합니다.

브랜드 비교

제어기 버전 / 시리즈Oscillation 파라미터 액세스 (SD43790)액세스 권한 및 보호 등급 (Protection Levels)
SINUMERIK 828D Grinding (828d-gce42 / 828d-gse42)Protection Level 7 (User)로 해제됨. 작업자가 자유롭게 편집할 수 있습니다.액세스 권한이 사용자 레벨로 열려 있어 런타임 중에 스트로크 조절이 가능합니다.
SINUMERIK 828D Turning/Milling (828d-me42 / 828d-te42)Protection Level 0 (System)으로 차단됨. 제조업체 비밀번호가 필요합니다.승인되지 않은 kinematic 수정을 방지하기 위해 액세스가 제한됩니다.
SINUMERIK 840D / 840D sl사용자 정의가 완벽하게 가능합니다. 보호 등급은 OEM에 의해 재할당될 수 있습니다.액세스 권한은 장비 기술 버전 및 맞춤형 구성에 따라 근본적으로 다릅니다.

기술 분석

SINUMERIK Setting Data (SD)의 액세스 제어 아키텍처는 Siemens가 특정 장비 기술 프로필을 기반으로 파라미터 격리를 어떻게 처리하는지 보여줍니다. grinding 버전의 경우, oscillation 시작 위치를 동적으로 변경할 수 있는 기능이 표준 작업 요구사항입니다. SD43790 $SA_OSCILL_START_POS를 Protection Level 7로 해제하면 일반 작업자가 기술자의 도움 없이도 제어 패널에서 스트로크를 조정할 수 있습니다. 그러나 기본 milling 및 turning 버전의 경우 왕복 이동이 주요 공정 기능이 아니므로, 의도치 않은 좌표 오프셋으로부터 시스템을 보호하기 위해 이 동일한 파라미터가 Protection Level 0으로 잠겨 있습니다.

이러한 기술적 격리는 작업자가 중요 장비 구성을 손상시키는 것을 방지하는 동시에 필요한 곳에서 작업 유연성을 제공합니다. Siemens의 alphanumeric 어드레싱 형식은 다른 제어 장치에서 흔히 발생하는 프로그래밍 오류를 방지합니다. $SA_$SC_와 같은 서술형 접두사를 사용함으로써 G-code 프로그램은 가독성과 유지보수성을 높일 수 있습니다. 고급 경로 제어의 경우, Setting Data는 축 제한을 모니터링하면서 가공 표면 품질을 유지하기 위해 공차 기반 평활화 (G645)와 같은 고속 가공 기능과 함께 동작할 수 있습니다.

프로그램 예제

다음 G-code 블록은 파트 프로그램에서 직접 Siemens Setting Data 파라미터를 작성하고 수정하는 방법을 보여줍니다. 이러한 수정을 통해 나사산 시작 각도, oscillation 좌표 및 측정 알람 설정을 조절합니다.

; Siemens 설정 데이터 조정 예제
$SC_THREAD_START_ANGLE = 90.0          ; G33 나사 절삭의 나사산 시작 각도를 90도로 설정
$SA_OSCILL_START_POS[Z] = 15.5         ; Z축 왕복 시작 위치를 15.5 mm로 설정
$SNS_MEA_ALARM_MASK = 'H10000'         ; 측정 사이클 알람 마스크 설정
M30                                    ; 프로그램 종료

공운전 (dry run) 분석

이 프로그램의 공운전 실행을 수행하면 다음 실행 시퀀스를 점검할 수 있습니다:

  1. 제어 장치는 첫 번째 블록을 읽고 활성 이동을 방해하지 않으면서 채널별 나사산 시작 각도($SC_THREAD_START_ANGLE)를 90.0도로 동적으로 업데이트합니다.
  2. 제어 장치는 $SA_OSCILL_START_POS[Z]를 사용하여 Z축 왕복 시작 위치를 15.5 mm로 할당합니다.
  3. 제어 장치는 $SNS_MEA_ALARM_MASK'H10000'으로 업데이트하여 활성 프로브가 알람 예외를 처리하는 방식을 수정합니다.
  4. 프로그램이 M30에 도달하고 종료됩니다. 이러한 값들은 기본적으로 휘발성이므로 reset 세이브 테이블에 등록되어 있지 않으면 reset 시 원래 값으로 되돌아갑니다.

오류 분석

브랜드알람 코드발생 조건작업자 관찰 증상원인 및 조치 방법
SiemensAlarm 4009파워온 초기화 배열(MD10709 $MN_PROG_SD_POWERON_INIT_TAB) 내부에 유효하지 않은 Setting Data 번호가 구성된 경우.NCK가 기동(run-up) 중에 정지하여 유효하지 않은 인덱스를 표시하고 시스템 스타트업을 차단합니다.파워온 초기화 테이블에 유효한 Setting Data 번호를 입력하거나, 인덱스를 0으로 설정하여 지우십시오.
SiemensAlarm 62306공작물 측정 시 부품 치수가 구성된 공차 한계를 초과한 것을 감지한 경우.NCK가 "Permissible dimensional difference exceeded"를 트리거하고 공차 정지가 활성화되어 있으면 실행을 정지합니다.SD54657 $SNS_MEA_TOL_ALARM_SET_M0을 확인하십시오. 공작물 위치 지정을 조정하거나, 공구 마모를 점검하거나, 공차 한계를 업데이트하십시오.
SiemensAlarm 61303활성 측정 프로브가 정의된 안전 경계 외부로 이동하거나 표면을 감지하려고 시도한 경우.NCK가 "Beyond safe area" cycle 알람을 표시하고 물리적 축 이동을 중단합니다.프로브 캘리브레이션을 확인하고, 바이스 조(vise jaw) 또는 척(chuck) 내부의 공작물 정렬을 점검하고, cycle 파라미터에서 안전 영역 경계를 조정하십시오.

실무 응용 가이드

측정 공차 설정 데이터 파라미터인 MEA_TOL_ALARM_SET_M0(SD54657)을 0으로 방치하거나, 측정 사이클 알람 마스크($SNS_MEA_ALARM_MASK)가 에러 처리 회피 루틴으로 올바르게 분기되지 않으면 축 충돌과 비계획 정지 시간(downtime)이 직결되는 치명적인 오작동이 일어난다. 프로브나 공구 측정 시에 안전 영역을 벗어나 경계를 침범할 때 제어 장치는 Alarm 62306("Permissible dimensional difference exceeded") 또는 Alarm 61303("Beyond safe area") 사이클 알람을 생성한다. 그러나 이 상태에서 공차 정지 설정 데이터인 SD54657 파라미터가 0으로 설정되어 있으면, 기계는 텍스트 경고 메시지만 화면에 표시할 뿐 물리적 축 이동을 정지하지 않는다. 결국 보정되지 않은 공구는 계속해서 진행하여 공작물 고정용 vise jaw(바이스 조)에 깊숙이 처박히거나, 부적절하게 배치된 clamp(클램프)를 들이받고, 보정 chuck(척)과 충돌하여 PLC Alarm 700013 'Operation while chuck is not locked'를 유발한다. 또한 듀얼 turret(터렛) 구조물과 교차 충돌함으로써 PLC Alarm 700022 'Turret motor overload' 및 Alarm 700011 'Tool clamping timeout' 같은 서보 과부하 결함을 야기한다. 이러한 비계획 정지를 예방하기 위해 SD54657 파라미터를 반드시 1로 설정하여 공차 초과 시 내부 M0 정지 명령을 강제로 발생시키도록 설계해야 한다.

관련 명령 구조

  • MD10710 $MN_PROG_SD_RESET_SAVE_TAB: NC reset 및 프로그램 종료 시에도 비휘발성 메모리에 특정 Setting Data 값을 유지합니다.
  • MD10709 $MN_PROG_SD_POWERON_INIT_TAB: 제어 장치 전원 투입 시 어떤 Setting Data 파라미터가 자동으로 초기 기본값으로 되돌아갈지 설정합니다.
  • R-Parameter Programming: 시스템 재부팅이 필요하지 않고 시스템 Setting Data에 영향을 미치지 않는 파트 프로그래밍을 위해 런타임에 액세스 가능한 변수 구조로 작동합니다.
  • G33 Threading: 정밀한 thread 시작 각도를 프로그래밍하기 위해 채널별 Setting Data인 SD42000 $SC_THREAD_START_ANGLE에 의존합니다.

결론

지멘스 CNC 시스템에서 Setting Data를 관리할 때 비가동 시간과 불량률을 방지하기 위해서는 프로그램 실행 중의 임시 파라미터 수정이 NC Reset이나 M30 프로그램 종료 시 소실되지 않도록 MD10710 $MN_PROG_SD_RESET_SAVE_TAB 비휘발성 유지 테이블에 정확히 매핑해야 한다. 또한, 측정 사이클의 공차 경보 및 정지 설정을 항시 검증해 공차 이탈 시 즉시 기계를 비상 정지시킴으로써 공구 및 주요 물리 장비의 손상을 사전에 차단하는 보호 환경을 구축하는 것이 최우선 과제다. 체계적인 보호 등급 관리와 전원 투입 초기화 테이블의 유효성 점검을 병행한다면, 현장의 조작자는 공정의 안전을 완벽히 도모하면서도 런타임 매개변수를 유연하게 제어해 생산 라인의 가동률을 최대치로 끌어올릴 수 있다.

자주 묻는 질문 (FAQ)

지멘스 CNC에서 임의로 변경한 설정 데이터(Setting Data)가 NC Reset 또는 M30 실행 후 초기화되는 현상을 해결하는 방법은 무엇입니까?

지멘스 Setting Data는 기본적으로 휘발성을 가지므로 NC Reset이나 M30 프로그램 종료 신호를 받으면 기본값으로 리셋됩니다. 이를 유지하려면 기계 데이터 MD10710 $MN_PROG_SD_RESET_SAVE_TAB 배열의 빈 슬롯에 영구 보존할 설정 데이터 파라미터 번호(예: 43790)를 등록해야 합니다. 실무적 조치: 파라미터 테이블에서 변경할 변수가 MD10710에 포함되어 있는지 확인하고 누락되었다면 제조사(OEM) 또는 유지보수 담당자를 통해 해당 테이블 번호를 기입하십시오.

NCK 기동(부팅) 시 발생하는 Alarm 4009의 구체적인 원인과 이를 신속하게 해제하는 방법은 무엇입니까?

Alarm 4009는 제어 장치가 부팅할 때 파워온 초기화 테이블인 MD10709 $MN_PROG_SD_POWERON_INIT_TAB 내부에 유효하지 않거나 존재하지 않는 설정 데이터 번호를 조회하여 시스템 스타트업이 블록되는 알람입니다. 이 오류는 부팅 시퀀스를 중단시켜 장비의 긴 비가동 시간을 초래합니다. 실무적 조치: 부트 업 대기 중인 상태에서 지멘스 기계 파라미터 설정 화면으로 전환하여 MD10709의 슬롯 값 중 잘못 등록된 인덱스를 찾아 0으로 설정해 제거하거나 유효한 SD 번호로 정정하십시오.

무인 자동화 가공 중에 공작물 정밀도 공차 초과 알람(Alarm 62306)이 감지되었을 때 바이스나 척 충돌을 강제 정지하기 위한 파라미터 설정은 어떻게 합니까?

측정 사이클 중 허용치를 초과해도 기계가 멈추지 않는 것은 공차 감지 동작을 지시하는 설정 데이터 SD54657 $SNS_MEA_TOL_ALARM_SET_M0이 0으로 설정되어 경고 메시지만 출력하기 때문입니다. 비가동 시간 방지 및 척/바이스 손상을 막으려면 이 값을 1로 지정해 강제적인 내부 M0 정지를 유도해야 합니다. 실무적 조치: 파트 프로그램 가동 전에 SD54657 파라미터가 1(M0 정지 생성)로 기입되었는지 점검하고, 프로브 경로 중 안전 오프셋 간격이 알람 기준치에 상응하는지 대조하십시오.

아직 해결되지 않았나요?

이 주제에 대해 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 - 2008)
  • Ören Kalıp CNC Mold Line Team Leader (1999 - 2002)

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

관련 기사

이 주제에 관한 다른 기사