모든 글 보기

NCK (수치 제어 커널) — CNC 핵심 소프트웨어

TRASA3 Blog

CNC 라이브러리 게시됨: 2026-09-28 작성자: trasa3 3 조회수
NCK (수치 제어 커널) — CNC 핵심 소프트웨어

CNC 문서에서 NCK라는 약어는 PLC, HMI, NCU와 함께 자주 등장합니다. 이 용어들은 제어 시스템의 서로 다른 구성 요소를 나타냅니다. NCK는 Numerical Control Kernel의 약자로, 부품 프로그램을 처리하고 기계의 움직임을 실시간으로 계산하는 소프트웨어 핵심입니다.

운영자는 보통 NCK와 직접 상호작용하지 않습니다. 대신 제어장치가 프로그램 블록을 받아들이고, 공구 경로를 생성하며, 설정된 이송 속도를 유지하고, 축을 동기화하며, 오류 메시지를 표시하는 결과를 보게 됩니다. 커널의 역할을 이해하면 문제 해결이 더 정확해지고, 부품 프로그램 오류와 PLC 시퀀스, 드라이브 또는 기계적 결함을 구분하는 데 도움이 됩니다.

NCK가 수행하는 주요 작업

기본적으로 처리 과정은 G코드 블록을 읽는 것부터 시작합니다. 커널은 이동 명령, 좌표계, 공구 오프셋, 변환, 사이클, 기술 함수 등을 해석합니다. 이후 경로의 기하학을 계산하고 축의 움직임에 필요한 데이터를 준비합니다.

예를 들어 G01 X80 Y25 F600 명령에서 단순히 최종 좌표만 드라이브에 보내는 것으로는 충분하지 않습니다. NCK는 X축과 Y축의 움직임을 조율해 공구가 지정된 직선을 설정된 이송 속도로 따라가도록 해야 합니다. G02 또는 G03 호 명령은 더 복잡한 계산이 필요하며, 인터폴레이터가 요구된 기하학과 회전 방향을 유지하는 위치들을 순차적으로 생성합니다.

커널의 주요 기능은 다음과 같습니다:

  • 부품 프로그램 블록 해석;
  • 선형, 원호 및 기타 보간 방식;
  • 동적 제한 조건을 고려한 속도 프로파일 계산;
  • 좌표계, 오프셋, 공구 보정 관리;
  • 채널, 축, 스핀들 조정;
  • 변환과 운동학적 관계 처리;
  • 소프트웨어 한계 감시 및 NC 경고 생성.

구체적인 기능은 제어장치 계열, 소프트웨어 버전, 구성 및 활성화된 옵션에 따라 다릅니다. 따라서 NCK는 기능적 계층을 의미하며 모든 기계에서 동일한 기능을 보장하지는 않습니다.

사전 처리와 주 실행 과정

현대 CNC는 보통 현재 실행 중인 블록보다 앞선 블록들을 미리 분석합니다. 기계가 한 구간을 가공하는 동안 커널은 다음 구간을 준비합니다. 이런 선행 처리 덕분에 방향 전환을 미리 예측하고 속도를 계획해 불필요한 정지를 피하며 축의 움직임을 설정 한계 내에서 유지할 수 있습니다.

SINUMERIK 문서에서는 사전 처리(preprocessing)와 주 실행(main run)을 구분합니다. 이 구분은 변수, 동기화 동작, 변환, 사전 계산된 데이터와 실제 기계 상태를 조율해야 하는 명령어를 다룰 때 중요합니다. 예를 들어, 프로그램 내 파라미터 변경이 화면에 표시된 블록 번호보다 먼저 해석될 수 있습니다.

실제로 화면에 표시된 블록과 NCK 내부 계산 단계가 항상 일치하지는 않습니다. 실행 순서 문제를 진단할 때는 블록 버퍼와 Look Ahead 기능을 고려해야 하며, 단순히 화면상의 현재 줄만으로 판단해서는 안 됩니다.

NCK, PLC, HMI 및 드라이브 간 역할 분담

NCK는 주로 수치 운동 제어를 담당합니다. PLC는 기계 논리를 실행하며, 버튼과 센서 신호를 처리하고 클램프, 도어, 윤활 시스템, 공구 매거진 등 기계 부속장치를 제어합니다. HMI는 위치, 작동 모드, 프로그램, 메시지를 표시하고 운영자가 사용하는 조작 수단을 제공합니다.

공구 교환 과정에서 이들 구성요소의 협력 관계가 명확해집니다. NCK는 관련 기술 명령에 도달해 PLC와 실행을 조율합니다. PLC는 안전 조건을 확인하고 매거진과 교환기 작동 시퀀스를 수행합니다. 완료 신호가 확인되면 NCK는 프로그램 처리를 계속합니다. 이때 드라이브는 계산된 운동 명령을 받고 피드백 데이터를 반환합니다.

이러한 역할 분담은 고장 진단에 유용합니다. 호의 기하학 오류나 부적절한 명령은 보통 NCK의 프로그램 처리 문제입니다. 클램프 확인 신호 누락은 PLC 논리나 입력 신호 문제일 가능성이 큽니다. 추종 오류나 모터 경고는 드라이브, 기계적 상태, 제어 파라미터 점검이 필요합니다. 실제 문제는 여러 구성요소에 걸칠 수 있지만, 초기 분류가 수색 범위를 좁히는 데 도움이 됩니다.

NCK와 NCU는 다른 개념

NCU는 Numerical Control Unit의 약자로, 제어 시스템을 구동하는 하드웨어-소프트웨어 플랫폼 또는 계산 모듈입니다. NCK는 이 플랫폼 위에서 동작하는 수치 제어 소프트웨어 구성요소입니다. 제품 구조에 따라 NCU는 NCK, PLC, 통신 서비스 및 기타 시스템 구성요소를 통합할 수 있습니다.

Siemens 최신 자료도 이 구분을 반영합니다. SINUMERIK ONE 소프트웨어 구성요소 목록에는 NCK, PLC-1500F, NCK-Adapter, SINAMICS, SINUMERIK Operate가 별도로 기재되어 있습니다. 하드웨어 측면에서는 제어 캐비닛형 NCU와 패널형 제어장치가 제공됩니다. NCK 재시작은 소프트웨어 작업이고, NCU 교체는 장치 교체에 해당합니다.

채널, 축, 보간 주기

다중 채널 기계에서는 한 채널이 주 스핀들 가공을 담당하고 다른 채널이 두 번째 터렛이나 추가 공정을 제어할 수 있습니다. 각 채널은 독립적인 블록 시퀀스를 실행하며, NCK는 할당된 축을 배분하고 기계 설계에 맞는 동기화를 지원합니다.

지령 위치 계산은 주기적으로 수행됩니다. 보간 주기는 경로 데이터 생성 시점을 결정하고, 더 빠른 드라이브 제어 루프는 위치, 속도, 전류를 조절합니다. 주기 시간을 줄인다고 해서 반드시 기계 성능이 향상되는 것은 아닙니다. 성능은 하드웨어 플랫폼, 축과 채널 수, 활성 변환, 파라미터 설정, 소프트웨어 기능에 따라 달라집니다.

사용자에게 중요한 것은 안정적인 움직임, 허용 가능한 경로 오차, 짧은 블록 실행의 예측 가능성입니다. CAM 시스템이 매우 촘촘한 선형 이동 명령을 내놓으면 경로 처리 부담이 커집니다. 블록 길이, 스무딩 모드, 급가속 제한, Look Ahead, 드라이브 튜닝, 기계 동역학 등이 최종 표면 품질과 사이클 타임에 영향을 미칩니다.

NCK 경고 메시지 의미

NCK 라벨은 진단 출처를 나타내지만 커널 자체 손상을 의미하지는 않습니다. 대부분 메시지는 구문 오류, 잘못된 보간 파라미터, 사용할 수 없는 축, 소프트웨어 한계 초과, 변환 충돌, 처리 단계 간 불일치 같은 특정 상태를 설명합니다.

조사할 때는 경고 번호와 전체 텍스트, 활성 채널, 관련 블록, 작동 모드를 먼저 확인합니다. 이어서 좌표계, 오프셋 값, 활성 G 기능, 축 상태를 점검합니다. 재현 가능한 오류라면 관련 프로그램 일부와 기계 상태를 저장해 서비스 담당자가 테스트하기 쉽도록 합니다.

이유를 모른 채 NCK를 리셋하면 화면 메시지는 사라질 수 있으나 프로그램이나 설정은 수정되지 않습니다. 재시작은 제어 상태를 변경하므로 반드시 제조사 절차를 따라야 합니다. 메모리 초기화, 아카이브, 기계 데이터 작업 전에는 최신 백업이 필요합니다.

현장 작업자와 셋업 담당자가 아키텍처를 알아야 하는 이유

작업자는 HMI가 사용자 입력을 받고, NCK가 프로그램과 경로를 처리하며, PLC가 기계 시퀀스를 실행하고, 드라이브가 기계 부품을 움직인다는 기본 흐름만 이해해도 충분합니다. 셋업 담당자나 서비스 기술자는 기계 데이터, 동기화 동작, NC/PLC 신호 교환 작업 시 더 상세한 구조를 알아야 합니다.

이 구조는 서비스 요청 시에도 유용합니다. 보고서에는 NCK 경고 번호, 채널, 블록, 활성 변환, 오류 발생 시점을 포함해야 합니다. 움직임이 계산되었으나 실행 장치가 준비 완료를 확인하지 않으면 PLC 신호 상태도 함께 기술합니다. 이런 정보는 프로그램 문제와 기계 논리, 축 설정, 드라이브 결함을 구분하는 데 도움을 줍니다.

NCK는 운영자 화면 뒤에 숨겨져 있지만 CNC 시스템의 핵심 부분으로 남아 있습니다. 부품 프로그램 텍스트가 조율된 경로 움직임으로 변환되는 곳이 바로 여기입니다. 이 계층에 대한 이해는 다중 채널 기계, 복잡한 운동학, NC, PLC, 드라이브 간 상호작용 진단에서 특히 중요합니다.

이 글은 다음 언어로 제공됩니다:

관련 글