KR102599158B1 - 기계 공구의 프로세스 모니터링 및 적응 제어 - Google Patents

기계 공구의 프로세스 모니터링 및 적응 제어 Download PDF

Info

Publication number
KR102599158B1
KR102599158B1 KR1020187013175A KR20187013175A KR102599158B1 KR 102599158 B1 KR102599158 B1 KR 102599158B1 KR 1020187013175 A KR1020187013175 A KR 1020187013175A KR 20187013175 A KR20187013175 A KR 20187013175A KR 102599158 B1 KR102599158 B1 KR 102599158B1
Authority
KR
South Korea
Prior art keywords
tool
input signal
control section
state
workpiece
Prior art date
Application number
KR1020187013175A
Other languages
English (en)
Other versions
KR20180058833A (ko
Inventor
텐네르트 홀름스트룀
Original Assignee
산드빅 인터렉츄얼 프로퍼티 에이비
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 산드빅 인터렉츄얼 프로퍼티 에이비 filed Critical 산드빅 인터렉츄얼 프로퍼티 에이비
Publication of KR20180058833A publication Critical patent/KR20180058833A/ko
Application granted granted Critical
Publication of KR102599158B1 publication Critical patent/KR102599158B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4065Monitoring tool breakage, life or condition
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34273Pc and plc and nc integrated, pcnc concept
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34288Plc as main controller for cnc
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35263Using variables, parameters in program, macro, parametrized instruction
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36056Modify program, machining order in real time, during operation, dynamically
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37077Relative movement

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)

Abstract

제어 시스템 (110) 은 기계 (200) 의 작동을 제어하는 프로그램 가능한 논리 제어 섹션 (111) 및 기계의 공구 (210) 와 가공물 (220) 사이 상대 운동을 제어하는 수치 제어 섹션 (112) 을 포함한다. 제어 시스템에서 수행된 방법 (300) 은 제 1 조건에 관하여, 프로그램 가능한 논리 제어 섹션에 의해 수신된, 입력 신호 (190) 를 평가하는 단계 (310) 로서, 입력 신호는 공구와 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 또는 공구의 상태에 대한 정보를 포함하는, 평가하는 단계 (310); 및 제 1 조건을 충족하는 입력 신호에 응하여, 정보를 수치 제어 섹션에 제공하는 단계 (320) 를 포함한다. 상태는 예를 들어 공구 파괴, 공구 마모 또는 잘못된 절삭 데이터일 수도 있다. 기계의 오퍼레이터는 예를 들어 기계가 이러한 상태들에 어떻게 응답하는지 수치 제어 섹션에서 프로그램들을 통하여 지정할 수 있다.

Description

기계 공구의 프로세스 모니터링 및 적응 제어
본 개시는 일반적으로 수치 제어된 기계 공구들에서 프로세스들의 모니터링 및 적응 제어에 관한 것이다.
프로그램 가능한 논리 제어기들 (PLC) 은 많은 다른 유형들의 기계들의 자동화에 사용된다. PLC 에 의해 제어된 기계는 PLC 로 입력 신호들을 제공할 수 있고 PLC 는 이 입력 신호들을 기반으로 기계에 제어 신호들을 제공한다. 비록 PLC 들이 다양한 작동에 이용될 수 있지만, (금속 절삭을 위한 기계 공구들과 같은) 기계 공구들의 운동은 종종 수치 제어 (NC) 또는 컴퓨터 수치 제어 (CNC) 의 사용을 통하여 자동화된다. 기계 공구의 운동은 예를 들어 다수의 축선들을 따라 오퍼레이터에 의해 입력된 실행가능한 프로그램들 또는 명령어들 (commands) 을 통하여 제어될 수도 있다. 명령어들은 예를 들어 기계에서 전용 사용자 인터페이스를 통하여 또는 기계에 연결된 컴퓨터를 통하여 직접 입력될 수도 있다. 실행가능한 프로그램들은 예를 들어 기계에 연결된 컴퓨터를 통하여 기계에 제공될 수도 있다.
기계는 작동 중 모니터링될 수도 있고 성능을 개선하도록 적응 제어될 수도 있다. 작동 중 바람직하지 못한 상태 또는 이벤트가 검출되는 경우, 기계가 적절히 응답하도록 제어 신호들이 기계에 제공될 수도 있다. 예를 들어 공구 파괴가 검출된다면, 경보가 기계의 오퍼레이터에 트리거될 수도 있고, 공구 및 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스 (subtractive process) 는 가공물로부터 공구를 자동으로 후퇴시킴으로써 중단될 수도 있다. 기계의 모니터링 작동 및 검출된 이벤트들 또는 상태들에 대한 적절한 응답들의 제공은 기계, 기계의 공구 및/또는 가공물에 대한 손상을 방지할 수도 있고, 기계 및/또는 기계의 공구의 수명을 연장시킬 수도 있고, 제조 시간을 감소시킬 수도 있고, 그리고/또는 제조된 제품들의 품질을 향상시킬 수도 있다.
기계, 기계의 공구 및/또는 가공물의 손상을 방지하고, 기계 및/또는 기계의 공구의 수명을 연장시키고, 제조 시간을 감소시키고 그리고/또는 제조된 제품들의 품질을 향상시키는 것이 유리할 것이다. 이 문제점들 중 하나 이상을 더 잘 처리하기 위해서, 독립항들에 규정된 특징들을 갖는 방법들 및 제어 시스템들을 제공한다. 연관된 컴퓨터 프로그램들, 컴퓨터 프로그램 패키지들, 컴퓨터 판독가능한 저장 수단들, 및 시스템들이 또한 제공된다. 바람직한 실시형태들은 종속항들에서 규정된다.
그러므로, 제 1 양태에 따르면, 방법이 제공된다. 방법은 제어 시스템에서 수행된다. 제어 시스템은 기계의 작동을 제어하도록 구성된 프로그램 가능한 논리 제어 섹션을 포함한다. 제어 시스템은 또한 기계의 공구와 가공물 사이 상대 운동을 제어하도록 구성된 수치 제어 섹션을 포함한다. 상기 방법은, 제 1 조건에 관하여, 상기 프로그램 가능한 논리 제어 섹션에 의해 수신된, 입력 신호를 평가하는 단계를 포함한다. 상기 입력 신호는 공구의 상태에 대한 또한 공구와 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태에 대한 정보를 포함한다. 방법은, 상기 제 1 조건을 충족하는 입력 신호에 응하여 상기 정보를 수치 제어 섹션에 제공하는 단계를 포함한다.
공구 또는 서브트랙티브 프로세스의 상태는 기계가 최적의 방식으로 작동되지 않는 것을 나타낼 수도 있고, 기계의 작동은 따라서 바람직하게 수정될 수도 있다. 공구 또는 서브트랙티브 프로세스의 특정 상태에 가장 잘 응답하는 방법은 상황에 따라 상이할 수도 있고, 기계가 제조되거나 설치되었을 때 알지 못할 수도 있다. 기계 및/또는 공구의 특성들은 예를 들어 기계 제조사에 의해 예측될 수 없는 방식으로 시간이 경과함에 따라 변할 수도 있고, 또는 기계는 새로운 유형의 공구로 작동될 수도 있다. 주어진 상태에 대한 가장 적절한 응답은 또한 현재 제조되는 물체의 기하학적 구조 또는 재료에 의존할 수도 있다. 따라서, 기계가 공구 또는 서브트랙티브 프로세스의 특정 상태들에 응답하는 방법을 기계의 오퍼레이터가 지정할 수 있도록 허용하는 것이 유리할 수도 있다.
많은 기계들에서, 다수의 미리 규정된 상태들 (예컨대 공구 파괴와 같은 중요한 이벤트들) 에 대한 응답들은 프로그램 가능한 논리 제어기 (PLC) 에 의해 제어된다. 기계 제조사는 전형적으로 이 상태들에 대한 응답하는 방법에 대해 PLC 에 명령들 (또는 명령어들 또는 프로그램들) 을 포함한다. 이러한 명령들은 예를 들어 스핀들 회전의 즉각 정지, 경보의 신호전달 및 공구의 추가 운동을 방지하기 위한 수치 제어 판독기 금지를 포함할 수도 있다. PLC 에서 프로그램들 또는 명령들은 기계의 오퍼레이터가 편집하는 것이 어렵거나 심지어 불가능할 수도 있고, 수치 제어 섹션에서 프로그램들은 예를 들어 기계에 배치된 사용자 인터페이스를 통하여 오퍼레이터에 의해 쉽게 편집가능할 수도 있다. (제 1 조건을 충족하는 입력 신호에 응하여) 공구 또는 서브트랙티브 프로세스의 상태에 대한 정보를 수치 제어 섹션으로 제공하는 것은 수치 제어 섹션에서 프로그램이 상태에 대한 응답을 제공할 수 있도록 허용한다. 수치 제어 섹션에서 이러한 프로그램은 예를 들어 현재 상황을 기반으로 그리고/또는 오퍼레이터의 선호도를 기반으로 맞춤형 응답을 제공하도록 오퍼레이터에 의해 편집될 수도 있다. 따라서, (제 1 조건을 충족하는 입력 신호에 응하여) 공구 또는 서브트랙티브 프로세스의 상태에 대한 정보를 수치 제어 섹션으로 제공하는 것은 기계의 작동 개선을 허용하는데, 이것은 기계, 공구 및/또는 가공물의 손상을 방지할 수도 있고, 그리고/또는 감소된 제조 시간, 제조된 제품들의 개선된 품질, 및/또는 기계 및/또는 공구의 연장된 수명을 이끌 수도 있다.
(프로그램 가능한 논리 제어 섹션에 의해 수신된) 입력 신호는 공구의 상태, 공구 및 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태, 또는 공구 및 서브트랙티브 프로세스 양자의 상태들에 대한 정보를 포함할 수도 있다.
공구의 상태는 예를 들어 공구 파괴, 공구 마모 또는 공구 미싱 (missing) 일 수도 있다. 공구 마모는, 공구가 마모되고 교체되어야 (또는 교체될 때까지 다른 스핀들 속도, 깊이 또는 이송률 (feed rate) 로 작동되어야) 하는 것을 나타낼 수도 있다.
공구의 상태는 예를 들어 공구가 부여받는 온도 또는 힘, 또는 공구의 진동일 수도 있다. 공구의 상태는 예를 들어 공구의 온도, 힘 또는 진동이 한계치를 초과하거나 특정 범위 내에 있도록 될 수도 있다
서브트랙티브 프로세스의 상태는 예를 들어 스핀들 속도, 절삭 깊이 및/또는 이송률과 같은 절삭 데이터를 포함할 수도 있고, 또는 공구와 가공물 사이 상호 작용에 관련된 다른 파라미터들을 포함할 수도 있다.
서브트랙티브 프로세스의 상태는 예를 들어 잘못된 절삭 데이터일 수도 있다. 잘못된 절삭 데이터는, 스핀들 속도, 절삭 깊이 및/또는 이송률과 같은 현재 이용되는 절삭 데이터가 공구에 부적합한 것을 나타낼 수도 있다. 현재 이용되는 절삭 데이터는 예를 들어 공구 제조사에 의해 지정된 권장 절삭 데이터를 따르지 않을 수도 있다.
서브트랙티브 프로세스의 상태는 예를 들어 프로세스 채터 (chatter), 즉 공구 및/또는 가공물의 기계가공 진동들에 관련될 수도 있다.
서브트랙티브 프로세스의 상태는 예를 들어 가공물이 미싱되고 공구와 가공물 사이에 사실상 상호 작용이 없도록 될 수도 있다.
서브트랙티브 프로세스의 상태는 예를 들어 가공물의 현재 기하학적 구조 또는 표면 마감과 같은 공구 및 가공물의 상호 작용 결과에 관련될 수도 있다.
서브트랙티브 프로세스의 상태는 예를 들어 가공물의 현재 기하학적 구조가 공차 내에 있고 (즉 가공물의 달성된 기하학적 구조를 받아들일 수 있고), 서브트랙티브 프로세스가 따라서 중단될 수 있도록 될 수도 있다.
정보는 예를 들어 공구 또는 서브트랙티브 프로세스의 상태를 나타낼 수도 있는 다수의 비트들의 형태로 제공될 수도 있다.
정보는 예를 들어 수치 제어 섹션에 의해 실행되는 컴퓨터 프로그램에 입력으로서, 또는 수치 제어 섹션에 의해 실행되도록 할당된 컴퓨터 프로그램에 입력으로서 (제 1 조건을 충족하는 입력 신호에 응하여) 제공될 수도 있다.
정보는 예를 들어 그것이 프로그램 가능한 논리 제어 섹션에 의해 수신될 때와 동일한 포맷으로, 또는 다른 (변환된) 포맷으로 수치 제어 섹션에 제공 (또는 전달) 될 수도 있다.
수치 제어 섹션의 하나 이상의 내부 변수들의 하나 이상의 값들을 할당함으로써 정보는 예를 들어 수치 제어 섹션에 제공될 수도 있다.
일부 실시형태들에서, 전체 입력 신호는 수치 제어 섹션에 제공 (또는 전달) 될 수도 있고, 다른 실시형태들에서는, 입력 신호의 단지 일부만 수치 제어 섹션에 전달될 수도 있다.
프로그램 가능한 논리 제어 섹션은 예를 들어 기계의 논리 제어를 위한 디지털 컴퓨터일 수도 있다.
프로그램 가능한 논리 제어 섹션은 예를 들어 기계의 논리 제어를 위한 제어 시스템의 소프트웨어 부분 (또는 일부) 일 수도 있다.
프로그램 가능한 논리 제어 섹션은 예를 들어 프로그램 가능한 논리 제어기 (PLC) 또는 프로그램 가능한 논리 계전기 (PRL) 일 수도 있다.
수치 제어 섹션은 예를 들어 하나 이상의 축선들을 따라 공구 및/또는 가공물의 운동을 제어하도록 구성될 수도 있다.
수치 제어 섹션은 예를 들어 공구 및/또는 가공물의 병진운동 및/또는 회전을 제공하기 위한 하나 이상의 서보들을 제어하도록 배치될 수도 있다.
수치 제어 섹션은 예를 들어 수치 제어 커널 (NCK) 일 수도 있다.
수치 제어 섹션은 예를 들어 컴퓨터화된 수치 제어 (CNC) 를 수행할 수도 있다.
수치 제어 섹션은 예를 들어 제어 시스템의 소프트웨어 부분 (또는 일부) 일 수도 있다.
공구는 예를 들어, 절삭, 드릴링, 밀링, 선삭, 리이밍, 스레딩 또는 연삭과 같은, 서브트랙티브 제조를 위해 배치될 수도 있다.
가공물은 예를 들어 공구가 상호 작용하도록 배치되는 물체일 수도 있다.
가공물은 예를 들어 금속, 목재, 폴리머 재료, 또는 복합 재료를 포함할 수도 있다.
방법은 예를 들어 (예를 들어 PLC 일 수도 있는) 프로그램 가능한 논리 제어 섹션에 수행될 수도 있다.
프로그램 가능한 논리 제어 섹션 및 수치 제어 섹션은 예를 들어 2 개의 분리된 (또는 물리적으로 구별가능한) 디바이스들, 회로들 또는 유닛들일 수도 있다.
프로그램 가능한 논리 제어 섹션 및 수치 제어 섹션은 예를 들어 제어 시스템의 2 개의 논리적으로 분리된 (또는 논리적으로 구별가능한) 부분들 또는 일부들일 수도 있다.
일부 실시형태들에 따르면, 입력 신호에 포함된 정보는 공구 파괴, 공구 마모, 공구 미싱, 가공물 미싱, 잘못된 절삭 데이터, 공구가 부여받는 온도, 공구가 부여받는 힘, 공구 진동, 프로세스 채터 (즉, 공구 및/또는 가공물의 기계가공 진동), 또는 가공물의 현재 기하학적 구조를 나타낼 수도 있다.
공구가 부여받는 온도의 표시는 예를 들어 특정 온도 값, 온도 범위, 온도가 한계치를 초과하는 표시일 수도 있다는 점을 인식할 것이다.
공구가 부여받는 힘의 표시는 예를 들어 특정 힘 크기, 힘 크기 간격, 또는 힘의 크기가 한계치를 초과하는 표시일 수도 있다는 점을 인식할 것이다.
공구 진동 (또는 프로세스 채터) 의 표시는 예를 들어 특정 값, 범위, 또는 진동 (또는 채터) 의 크기가 한계치를 초과하는 표시일 수도 있다는 점을 인식할 것이다.
가공물의 현재 기하학적 구조의 표시는 예를 들어 현재 획득된 특정 기하학적 구조의 표시 또는 가공물의 현재 획득된 기하학적 구조가 공차 내에 있고 (즉 가공물의 달성된 기하학적 구조를 받아들일 수 있음), 서브트랙티브 프로세스가 따라서 중단될 수도 있다는 표시를 포함할 수도 있다는 점을 인식할 것이다.
공구 마모는, 공구가 마모되고 교체되어야 (또는 교체될 때까지 다른 스핀들 속도, 깊이 또는 이송률로 작동되어야) 하는 것을 나타낼 수도 있다.
잘못된 절삭 데이터는, 스핀들 속도, 절삭 깊이 및/또는 이송률과 같은 현재 이용되는 절삭 데이터가 공구에 부적합한 것을 나타낼 수도 있다. 현재 이용되는 절삭 데이터는 예를 들어 공구 제조사에 의해 지정된 권장 절삭 데이터를 따르지 않을 수도 있다.
일부 실시형태들에 따르면, 방법은 제 2 조건에 관하여 입력 신호를 평가하는 단계를 추가로 포함할 수도 있다. 방법은, 제 2 조건을 충족하는 입력 신호에 응하여, 수치 제어 섹션에 의해 실행된 컴퓨터 프로그램의 중단을 트리거하는 단계, 제어 시스템에 의해 실행되도록 수치 제어 섹션에 컴퓨터 프로그램을 할당하는 단계; 및 할당된 컴퓨터 프로그램에 입력으로서 상기 정보를 제공하는 단계를 추가로 포함할 수도 있다.
(공구 파괴와 같은) 서브트랙티브 프로세스 또는 공구의 일부 상태들에 대해, 제어 시스템에 의한 신속한 응답이 바람직할 수도 있다. 수치 제어 섹션에 의해 실행된 컴퓨터 프로그램의 중단을 트리거하고, 실행되도록 수치 제어 섹션에서 컴퓨터 프로그램을 할당하는 것은 입력 신호에 의해 표시된 상태에 대한 신속한 응답을 허용한다.
전술한 대로, 수치 제어 섹션에서 컴퓨터 프로그램들은 PLC 에서 명령들 (또는 명령어들 또는 프로그램들) 보다 기계의 오퍼레이터에 의해 보다 쉽게 편집가능할 수도 있다. 수치 제어 섹션에 할당된 프로그램은, 예를 들어, 제어 시스템이 입력 신호에 의해 표시된 상태에 대한 적절한 응답을 제공하도록 하기 위한 기계의 오퍼레이터에 의해 제공된 맞춤형 프로그램일 수도 있다.
할당된 프로그램에 입력으로서 정보를 제공하면, 할당된 프로그램 (예컨대 기계의 오퍼레이터에 의해 제공된 맞춤형 프로그램) 이 다른 상태들을 구별할 수 있고, 이러한 구별이 제어 섹션의 다른 부분들, 예로 프로그램 가능한 논리 제어 섹션에 저장된 (또는 실행된) 프로그램에서 이루어지기 보다는 응답하는 방법을 결정할 수 있도록 허용할 수도 있다. 이런 식으로, 더 많은 제어가 더 쉽게 편집가능한 수치 제어 섹션에서 이루어지고, 이것은 입력 신호에 의해 나타낸 상태에 대한 더 적절한 응답의 제공을 용이하게 한다.
할당된 컴퓨터 프로그램은 예를 들어 ("축선 X 를 따라 거리 D 만큼 공구를 이동" 과 같은) 단일 명령어 또는 명령을 단지 포함하기 보다는 다수의 명령어들 또는 명령들을 포함한 수치 제어 프로그램일 수도 있다.
할당된 컴퓨터 프로그램은 예를 들어 공구 또는 서브트랙티브 프로세스의 각각의 상태들과 연관된 서브프로그램들을 포함할 수도 있다. 할당된 컴퓨터 프로그램은 예를 들어 입력 신호에 의해 나타낸 특정 상태에 적절한 응답을 제공하기 위해서 실행될 하나 이상의 서브프로그램들을 선택하도록 입력으로서 수신된 정보를 이용할 수도 있다.
중단은 예를 들어 (전용 중단 포트와 같은) 제어 섹션의 물리적으로 구현된 중단 기능을 통하여, 또는 소프트웨어 구현된 중단 기능을 통하여 트리거될 수도 있다.
중단은 예를 들어 공구 및/또는 가공물의 이미 개시된 운동을 완료 전 중지시킬 수 있어서, 할당된 프로그램이 가능한 한 빨리 실행될 수도 있다. 대안적으로, 할당된 프로그램이 실행되기 전 개시된 운동이 완료되도록 허용될 수도 있다.
할당된 컴퓨터 프로그램은 예를 들어 수치 제어 섹션에 저장될 수도 있다.
할당된 컴퓨터 프로그램은 예를 들어 수치 제어 섹션에 의해 실행되도록 할당될 수도 있다.
일부 실시형태들에 따르면, 방법은, 미리 규정된 상태들의 세트로부터 상태를 나타내는 입력 신호에 포함된 정보에 응하여, 수치 제어 섹션에 의해 실행된 컴퓨터 프로그램의 중단을 트리거하는 단계, 제어 시스템에 의해 실행되도록 상기 수치 제어 섹션에 컴퓨터 프로그램을 할당하는 단계, 및 할당된 컴퓨터 프로그램에 입력으로서 상기 정보를 제공하는 단계를 포함할 수도 있다. 상기 미리 규정된 상태들의 세트는 공구 파괴, 공구 마모, 공구 미싱, 가공물 미싱, 잘못된 절삭 데이터, 공구가 부여받는 온도가 한계치를 초과했는지 여부, 공구가 부여받는 힘이 한계치를 초과했는지 여부, 공구 진동이 한계치를 초과했는지 여부, 프로세스 채터가 한계치를 초과했는지 여부, 또는 가공물의 기하학적 구조가 공차 내에 있는지 여부를 포함할 수도 있다.
미리 규정된 상태들의 세트는 예를 들어 다음 상태들: 공구 파괴, 공구 마모, 공구 미싱, 가공물 미싱, 잘못된 절삭 데이터, 공구가 부여받는 온도가 한계치를 초과했는지 여부, 공구가 부여받는 힘이 한계치를 초과했는지 여부, 공구 진동이 한계치를 초과했는지 여부, 프로세스 채터가 한계치를 초과했는지 여부, 및 가공물의 현재 기하학적 구조가 공차 내에 있는지 여부 중 하나 이상 (또는 전부) 을 포함할 수도 있다는 점을 인식할 것이다.
미리 규정된 상태들의 세트에서 상태들은 예를 들어 제어 시스템에 의한 신속한 응답을 요구할 수도 있다. 이 상태들에 응하여 제공된 작용 유형은 예를 들어 수치 제어 섹션에 할당된 컴퓨터 프로그램을 통하여 기계의 오퍼레이터에 의해 맞추어질 수도 있다.
일부 실시형태들에 따르면, 상기 수치 제어 섹션에 할당된 컴퓨터 프로그램은 운동 (예컨대 공구 및/또는 가공물의 회전 또는 병진운동) 을 중지하고, 상기 가공물로부터 공구 (또는 공구의 절삭 에지) 를 후퇴시키고, 상기 공구로부터 (또는 공구의 절삭 에지로부터) 가공물을 후퇴시키고, 상기 공구를 시스터 공구 (sister tool) 로 교체하고, 평가를 위해 카메라를 향하여 상기 공구를 이동시키고, 평가를 위해 카메라를 향하여 상기 가공물을 이동시키고, 상기 공구의 평가를 위해 카메라의 운동을 트리거시키고, 상기 가공물의 평가를 위해 카메라의 운동을 트리거시키고, 또는 절삭 데이터를 변화시키도록 기계를 제어하기 위한 명령들을 포함할 수도 있다.
수치 제어 섹션에 할당된 컴퓨터 프로그램은 예를 들어 다음 작용들: 운동을 중지하고, 상기 가공물로부터 공구를 후퇴시키고, 상기 공구로부터 가공물을 후퇴시키고, 상기 공구를 시스터 공구로 교체하고, 평가를 위해 카메라를 향하여 상기 공구를 이동시키고, 평가를 위해 카메라를 향하여 상기 가공물을 이동시키고, 상기 공구의 평가를 위해 카메라의 운동을 트리거시키고, 상기 가공물의 평가를 위해 카메라의 운동을 트리거시키고, 그리고 절삭 데이터를 변화시키는 것 중 하나 이상 (또는 전부) 을 수행하도록 기계를 제어하기 위한 명령들을 포함할 수도 있다는 점을 인식할 것이다.
카메라를 사용한 광학 평가는 예를 들어 공구가 교체될 필요가 있는지 결정하기 위해 또는 가공물의 기하학적 구조가 공차 내에 있는지 결정하기 위해 이용될 수도 있다.
(공구 또는 가공물의 평가를 위해) 카메라의 운동은 예를 들어 로봇의 사용을 통하여 제공될 수도 있다.
할당된 프로그램은 예를 들어 각각의 미리 규정된 상태들을 취급하기 위한 서브프로그램들 (또는 서브루틴들) 을 포함할 수도 있다. 적절한 서브프로그램은 예를 들어 할당된 프로그램으로 입력으로서 제공된 정보를 기반으로 선택될 수도 있다.
입력 신호에 의해 나타낸 상태가 공구 파괴, 공구 마모, 또는 공구 미싱인 경우에, 할당된 프로그램은 예를 들어 기계가 공구의 하나 이상의 운동을 중지시키고, 가공물로부터 공구 (또는 공구의 절삭 에지) 를 후퇴시킨 후, 상기 공구를 시스터 공구로 교체시킬 수도 있다.
입력 신호에 의해 나타낸 상태가 가공물 미싱인 경우에, 할당된 프로그램은 예를 들어 기계가 휴지되어 오퍼레이터에게 알리도록 할 수도 있고, 그 후 서브트랙티브 제조를 위한 위치로 새로운 가공물을 이동시키도록 로봇을 트리거할 수도 있다.
입력 신호에 의해 나타낸 상태가 잘못된 절삭 데이터인 경우에, 할당된 프로그램은 예를 들어 기계가 절삭 데이터를 변화시키도록 할 수도 있다. 스핀들 속도, 절삭 깊이 또는 이송률과 같은 절삭 데이터는 예를 들어 현재 이용된 공구 및 작동 조건들에 대해 권장된 값들로 변화될 수도 있다.
일부 실시형태들에 따르면, 수치 제어 섹션에 할당된 컴퓨터 프로그램은 편집가능한 수치 제어 프로그램 (또는 NC 프로그램) 일 수도 있다.
수치 제어 프로그램은, 예로 기계의 사용자 인터페이스를 통하여 또는 기계에 연결된 개인용 컴퓨터를 통하여, 예를 들어 기계의 오퍼레이터에 의해 편집가능할 수도 있다.
많은 PLC 프로그램들과 대조적으로, 수치 제어 프로그램은 예를 들어 기계 제조사에 의한 편집으로부터 잠금되지 않을 수도 있다.
일부 실시형태들에 따르면, 방법은 제 3 조건에 관하여 입력 신호를 평가하는 단계를 추가로 포함할 수도 있다. 방법은 상기 제 3 조건을 충족하는 입력 신호에 응하여 입력부로서 상기 정보로 제어 시스템에 의해 실행되도록 프로그램 가능한 논리 제어 섹션에 컴퓨터 프로그램의 적어도 일부를 할당하는 단계를 추가로 포함할 수도 있다.
입력으로서 정보로 프로그램 가능한 논리 제어 섹션에서 컴퓨터 프로그램의 적어도 일부를 (제 3 조건을 충족하는 입력 신호에 응하여) 실행하면 이 프로그램이 공구 또는 서브트랙티브 프로세스의 상태에 대한 응답을 제공할 수 있도록 허용한다. 프로그램 가능한 논리 제어 섹션에서 프로그램은 예를 들어 임의의 상태들 또는 이벤트들에 대한 응답들을 제공하도록 기계 제조사에 의해 제공될 수도 있고, 이 응답들은 바람직하게 기계의 오퍼레이터에 의해 편집될 수 없다. 프로그램 가능한 논리 제어 섹션에서 프로그램에 의해 제공된 이 응답들은 예를 들어 기계의 안전한 작동에 매우 중요할 수도 있고, 이 응답들의 편집은 따라서 수치 제어 섹션의 편집가능한 프로그램보다는 프로그램 가능한 논리 제어 섹션에서 이 응답들을 제어함으로써 방지될 수도 있다. 이런 식으로, 기계의 작동이 수치 제어 섹션에서 프로그램들을 통하여 기계의 오퍼레이터에 의해 여전히 맞추어질 수 있으면서 기계의 안전한 작동이 유지된다.
제 3 조건에 관한 입력 신호의 평가는 예를 들어 제 1 조건에 관한 평가 및 제 2 조건에 관한 평가 이외에 명시적 제 3 평가 단계로서 수행될 수도 있다. 대안적으로, 제 3 조건에 관한 평가는 묵시적일 수도 있다. 입력 신호는 예를 들어 그것이 제 1 조건 및 제 2 조건 중 어느 것도 충족시키지 않는 경우에 자동으로 제 3 조건을 충족시킬 수도 있다.
제 3 조건을 충족시키는 입력 신호에 응하여, 프로그램 가능한 논리 제어 섹션에서 컴퓨터 프로그램의 적어도 일부는 예를 들어 입력으로서 정보로 프로그램 가능한 논리 제어 섹션에 의해 실행되도록 할당될 수도 있다.
프로그램 가능한 논리 제어 섹션에서 컴퓨터 프로그램의 적어도 일부는 예를 들어 기계가 운동을 중지하는 것을 제어하기 위한 그리고/또는 공구를 시스터 공구로 교체하기 위한 명령들을 포함할 수도 있다.
일부 실시형태들에 따르면, 방법은, 상기 제 3 조건을 충족하는 입력 신호에 응하여, 상기 입력 신호의 적어도 일부를 변환함으로써 중간 신호를 발생시키는 단계, 및 입력부로서 중간 신호로 제어 시스템에 의해 실행되도록 프로그램 가능한 논리 제어 섹션에 컴퓨터 프로그램의 적어도 일부를 할당하는 단계를 포함할 수도 있다.
다른 프로그램 가능한 논리 제어 섹션들에서 컴퓨터 프로그램들은 다른 데이터 포맷들로 데이터를 수용하도록 적합화될 수도 있다. 수신된 입력 신호의 적어도 일부를 프로그램 가능한 논리 제어 섹션에서 컴퓨터 프로그램 (적어도 부분) 으로 입력으로서 제공하기 전 변환하는 것은 다른 프로그램 가능한 논리 제어 섹션들로 입력으로서 제공된 신호들과 동일한 데이터 포맷으로 수신된 입력 신호가 수신될 수 있도록 허용한다. 다른 프로그램 가능한 논리 제어 섹션들로 신호전달하기 위한 공통 데이터 포맷의 사용은 프로그램 가능한 논리 제어 섹션들과 다른 디바이스들, 예로 기계들의 작동을 모니터링하여 기계들의 상태들에 관한 정보를 프로그램 가능한 논리 제어 섹션들로 제공하도록 구성된 시스템들 사이 통신을 용이하게 한다.
일부 실시형태들에 따르면, 상기 입력 신호의 상기 적어도 일부는 공구의 상태 또는 공구 및 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태를 공동으로 신호전달하는 비트들을 포함할 수도 있다. 중간 신호는, 공구의 상태 또는 공구 및 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태가 각각의 미리 규정된 상태들과 일치하는지 여부를 독립적으로 신호전달하는 복수의 비트들을 포함할 수도 있다.
PLC 들과 같은 프로그램 가능한 논리 제어 섹션들에서 현재 이용되는 많은 컴퓨터 프로그램들은, 현재 상태가 각각의 미리 규정된 상태들과 일치하는지 독립적으로 신호전달하는 비트들 (또는 플래그들) 형태로 입력을 수신하도록 되어 있다. 예를 들어, 비트 (또는 플래그) 에 대해 값 "1" 은 현재 상태가 그 비트와 연관된 미리 규정된 상태와 일치하는 것을 나타낼 수도 있고, "0" 은 현재 상태가 그 비트와 연관된 미리 규정된 상태와 일치하지 않는 것을 나타낼 수도 있다. 이 데이터 포맷은 구현하기에 명백하고 간단할 수도 있지만, 그것은 비교적 많은 수의 비트들 (각각의 미리 규정된 상태에 대해 하나의 비트) 을 요구한다. 비트들이 상태를 공동으로 신호전달하는 데이터 포맷이 보다 비트 효율적일 수도 있다. 예를 들어, 공동 신호전달은 4 개의 비트들이 단지 4 개의 다른 상태들 대신에 16 개의 다른 상태들을 신호전달할 수 있도록 허용한다. 따라서, 입력 신호를 제어 시스템으로 전송하기 위한 이러한 공동 신호전달 포맷의 사용은, 상태들을 제어 시스템으로 신호전달할 수 있는 속도를 증가시킨다. 이것은 제어 시스템이 공구 또는 서브트랙티브 프로세스의 상태에 보다 신속하게 응답할 수 있도록 허용한다.
일부 실시형태들에 따르면, 상기 프로그램 가능한 논리 제어 섹션에 할당된 프로그램은 편집으로부터 잠금될 수도 있다.
기계의 오퍼레이터는 예를 들어 프로그램 가능한 논리 제어 섹션에서 할당된 프로그램을 편집하는 것이 방지되지만, 기계 제조사의 서비스 기술자는 잠금을 피하거나 비활성화하기 위해 패스워드, 키, 또는 전용 데이터 포트를 이용할 수도 있다. 이런 식으로, 너무 중요해서 최종 사용자에 의해 편집되지 않는 프로그램들 (예컨대 안전 필수 프로그램들) 은 부당 변경으로부터 안전하게 유지되고, 편집은 여전히 공인된 직원에게 가능하다.
프로그램 가능한 논리 제어 섹션에서 할당된 프로그램은 예를 들어 패스워드 보호될 수도 있다.
프로그램 가능한 논리 제어 섹션에서 할당된 프로그램은 예를 들어 단지 전용 데이터 포트를 통해서만 편집될 수도 있다.
일부 실시형태들에 따르면, 입력 신호는 필드 버스와 같은 산업 네트워크를 통하여 수신될 수도 있다. 필드 버스는 신속한 데이터 전송을 제공할 수도 있어서, 제어 섹션이 입력 신호에 의해 나타낸 상태에 신속하게 응답할 수 있도록 허용한다.
제 2 양태에 따르면, 제 1 양태의 임의의 실시형태에 따른 방법을 수행하기 위한 명령들을 포함하는 컴퓨터 프로그램이 제공된다. 컴퓨터 프로그램은 예를 들어 컴퓨터가 제 1 양태의 임의의 실시형태에 따른 방법을 수행하기 위한 명령들을 포함할 수도 있다.
제 1 양태에 따른 방법들의 특징들에 대해 위에서 제시된 장점들은 일반적으로 제 2 양태에 따른 컴퓨터 프로그램들의 대응하는 특징들에 유효할 수도 있다.
컴퓨터 프로그램은 예를 들어 다수의 서브프로그램들을 포함할 수도 있고 컴퓨터 프로그램의 저장부는 예를 들어 다수의 메모리 디바이스들, 디스크들, 서버들, 및/또는 하드 드라이브들에 분배될 수도 있음을 인식할 것이다.
제 3 양태에 따르면, 컴퓨터 프로그램 패키지가 제공되고 상기 패키지는 제 2 양태의 임의의 실시형태에 따른 컴퓨터 프로그램, 및 모니터링 시스템에서 사용하기 위한 상보적 컴퓨터 프로그램을 포함한다. 상기 모니터링 시스템은 적어도 제어 시스템 또는 공구로부터 데이터를 수신하기 위한 입력 섹션, 및 데이터를 제어 시스템에 제공하기 위한 출력 섹션을 포함한다. 상기 상보적 컴퓨터 프로그램은 상보적 방법을 수행하기 위한 명령들을 포함하고, 상기 상보적 방법은 상기 입력 섹션에 의해 수신된 데이터를 기반으로, 공구의 상태 또는 공구 및 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태를 추정함으로써 추정된 상태를 획득하는 단계를 포함한다. 상기 상보적 방법은 입력 신호를 통하여 상기 제어 시스템으로 전송 (전달) 하기 위해 출력 섹션으로 추정된 상태에 대한 정보를 제공하는 단계를 포함한다.
제 1 양태에 따른 방법들의 특징들에 대해 위에서 제시된 장점들은 일반적으로 제 3 양태에 따른 컴퓨터 프로그램 패키지들의 대응하는 특징들에 유효할 수도 있다.
입력 섹션이 예를 들어 제어 시스템 및 공구 양자로부터 데이터를 수신할 수 있음을 인식할 것이다.
공구의 상태 또는 공구 및 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태를 추정하는 것 이외에, 모니터링 시스템은 예를 들어 기계에 대한 전체 장비 효율성 (OEE) 을 추정할 수도 있다. 모니터링 시스템은 예를 들어 기계의 가동 시간 및 정지 시간을 추정할 수도 있다.
컴퓨터 프로그램 패키지의 다른 부분들 (또는 일부들) 은 예를 들어 다른 저장 디바이스들 또는 메모리들과 같은 분리된 로케이션들에 저장될 수도 있다. 컴퓨터 프로그램 및 상보적 컴퓨터 프로그램은 예를 들어 다른 저장 디바이스들 또는 메모리들과 같은 분리된 로케이션들에 저장될 수도 있다.
모니터링 시스템의 출력 섹션은 예를 들어 필드 버스 인터페이스를 포함할 수도 있다.
제 4 양태에 따르면, 제 2 양태의 임의의 실시형태에 따른 컴퓨터 프로그램을 저장하거나, 제 3 양태의 임의의 실시형태에 따른 컴퓨터 프로그램 패키지를 저장하는 컴퓨터 판독가능한 저장 수단이 제공된다.
제 1 양태에 따른 방법들의 특징들에 대해 위에서 제시된 장점들은 일반적으로 제 4 양태에 따른 컴퓨터 판독가능한 저장 수단의 대응하는 특징들에 유효할 수도 있다.
컴퓨터 판독가능한 저장 수단은 예를 들어 컴퓨터 판독가능한 매체일 수도 있다. 컴퓨터 판독가능한 저장 수단은 예를 들어 비일시적 (non-transitory) 컴퓨터 판독가능한 매체일 수도 있다.
제 4 양태에 따른 컴퓨터 판독가능한 저장 수단은 예를 들어 제 1 양태의 임의의 실시형태에 따른 방법을 수행하기 위한 명령들을 갖는 컴퓨터 판독가능한 수단 (또는 컴퓨터 판독가능한 매체) 을 포함하는 컴퓨터 프로그램 제품의 일부로서 간주될 수도 있다.
컴퓨터 판독가능한 저장 수단은 예를 들어 단일 메모리 디바이스, 디스크, 서버, 또는 하드 드라이브에 제공될 수도 있다.
컴퓨터 판독가능한 저장 수단은 예를 들어 분리된 로케이션들에 분배된 복수의 부분들 (또는 일부들) 을 포함할 수도 있다. 컴퓨터 판독가능한 저장 수단의 부분들은 예를 들어 컴퓨터 프로그램 패키지 (또는 컴퓨터 프로그램 및 상보적 컴퓨터 프로그램) 의 각각의 일부들을 저장할 수도 있다.
컴퓨터 판독가능한 저장 수단은 예를 들어 상이한 메모리 디바이스들, 디스크들, 서버들 및/또는 하드 드라이브들에 분배된 복수의 부분들 (또는 일부들) 을 포함할 수도 있다.
제 5 양태에 따르면, 제어 시스템이 제공된다. 제어 시스템은 기계의 작동을 제어하도록 구성된 프로그램 가능한 논리 제어 섹션, 및 상기 기계의 공구와 가공물 사이 상대 운동을 제어하도록 구성된 수치 제어 섹션을 포함한다. 상기 프로그램 가능한 논리 제어 섹션은 공구의 상태 또한 공구 및 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태에 대한 정보를 포함한 입력 신호를 수신하도록 구성된다. 상기 프로그램 가능한 논리 제어 섹션은 제 1 조건에 관하여 상기 입력 신호를 평가하고, 상기 제 1 조건을 충족하는 입력 신호에 응하여, 상기 정보를 상기 수치 제어 섹션에 제공하도록 구성된다.
제 5 양태에 따른 제어 시스템의 프로그램 가능한 논리 제어 섹션은 예를 들어 제 1 양태에 따른 임의의 방법들을 수행하도록 적합화될 수도 있다.
제 1 양태에 따른 방법들의 특징들에 대해 위에서 제시된 장점들은 일반적으로 제 5 양태에 따른 제어 시스템들의 대응하는 특징들에 유효할 수도 있다.
제 6 양태에 따르면, 시스템 (또는 조합된 시스템) 이 제공된다. 시스템 (또는 조합된 시스템) 은 제 5 양태의 임의의 실시형태에 따른 제어 시스템, 및 모니터링 시스템을 포함한다. 모니터링 시스템은 적어도 제어 시스템 또는 공구로부터 데이터를 수신하도록 구성된다. 모니터링 시스템은, 수신된 데이터를 기반으로, 공구의 상태 또는 공구 및 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태를 추정함으로써 추정된 상태를 획득하도록 구성된다. 모니터링 시스템은 상기 추정된 상태를 기반으로 입력 신호를 발생시키고, 상기 입력 신호를 제어 시스템에 제공하도록 구성된다.
제 1 양태에 따른 방법들의 특징들에 대해 위에서 제시된 장점들은 일반적으로 제 6 양태에 따른 시스템들의 대응하는 특징들에 유효할 수도 있다.
모니터링 시스템은 예를 들어 제어 시스템 및 공구 양자로부터 데이터를 수신할 수 있음을 인지할 것이다.
공구의 상태 또는 공구 및 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태를 추정하는 것 이외에, 모니터링 시스템은 예를 들어 기계에 대한 전체 장비 효율성 (OEE) 을 추정할 수도 있다. 모니터링 시스템은 예를 들어 기계의 가동 시간 및 정지 시간을 추정할 수도 있다.
모니터링 시스템은 예를 들어 입력 신호를 제어 시스템에 제공하기 위한 필드 버스 인터페이스를 포함할 수도 있다.
다음에서, 예시적인 실시형태들은 첨부된 도면들을 참조하여 보다 상세하게 기술될 것이다.
도 1 은 실시형태에 따른 기계를 모니터링 및 제어하기 위한 시스템의 전반적인 블록도이다.
도 2 는 실시형태에 따른, 도 1 에 도시된 시스템의 제어 시스템에서 수행된 방법의 흐름도이다.
도 3 은 도 1 에 도시된 시스템의 수치 제어 섹션에서 예시 컴퓨터 프로그램의 개략도이다.
도 4 는 도 1 에 도시된 시스템의 모니터링 시스템에서 수행된 상보적 방법의 흐름도이다.
도 5 는, 실시형태들에 따른, 도 2 에 도시된 방법을 수행하기 위한 명령들을 포함하는 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능한 저장 수단, 및 도 2 및 도 4 에 도시된 방법들을 수행하기 위한 명령들을 포함한 컴퓨터 프로그램 패키지를 저장하는 컴퓨터 판독가능한 저장 수단을 도시한다.
모든 도면들은 개략적이고, 일반적으로 각각의 실시형태들을 설명하기 위해서 필요한 부분들만 보여주고, 반면에 다른 부분들은 생략되거나 단순히 제시될 수있다.
도 1 은 실시형태에 따른 기계 (200) 를 모니터링 및 제어하기 위한 시스템 (100) 의 전반적인 블록도이다.
기계 (200) 는 기계 (200) 에 장착된 가공물 (220) 과 상호작용하도록 배치된 공구 (210) 를 포함한다. 공구 (210) 는 예를 들어 절삭, 선삭, 드릴링, 밀링, 리이밍, 스레딩 또는 연삭과 같은 서브트랙티브 제조를 위해 배치될 수도 있다. 공구 (210) 는 예를 들어 금속, 목재, 폴리머 재료 또는 복합 재료를 포함한 가공물 (220) 과 상호 작용을 통하여 서브트랙티브 제조를 수행하기 위해 배치될 수도 있다. 공구 (210) 는 예를 들어 금속 절삭을 위해 배치될 수도 있다.
시스템 (100) 은 제어 시스템 (110) 및 모니터링 시스템 (120) 을 포함한다. 제어 시스템 (110) 은 프로그램 가능한 논리 제어 섹션 (111) 및 수치 제어 섹션 (112) 을 포함한다.
프로그램 가능한 논리 제어 섹션 (111) 은 기계 (200) 의 작동을 제어하도록 구성된다. 프로그램 가능한 논리 제어 섹션 (111) 은 기계 (200) 로부터 하나 이상의 입력 신호들 (130) 을 수신할 수도 있다. 기계 (200) 로부터 수신된 입력 신호들 (130) 은 디지털 및/또는 아날로그 입력 신호들일 수도 있고 예를 들어 레벨들, 압력들, 온도들, 및/또는 위치들에 대한 정보를 포함할 수도 있다. 프로그램 가능한 논리 제어 섹션 (111) 은 시작, 정지, 충전, 비움 및/또는 변화와 같은 작동들을 수행하도록 기계 (200) 를 제어하기 위한 아날로그 및/또는 디지털 신호들과 같은, 하나 이상의 제어 신호들 (140) 을 기계 (200) 로 송신할 수도 있다.
수치 제어 섹션 (112) 은 제어 신호들 (150) 을 통하여 공구 (210) 와 가공물 (220) 사이 상대 운동을 제어하도록 구성된다. 수치 제어 섹션 (112) 은 예를 들어 제어 신호들 (150) 을 하나 이상의 서보들과 모터들 및/또는 서보모터들 (도 1 에 미도시) 에 송신함으로써 공구 (210) 및/또는 가공물 (220) 의 운동을 제어할 수도 있다. 수치 제어 섹션 (112) 에 의해 제어된 운동은 하나 이상의 축선들을 따르는 병진운동들 및/또는 하나 이상의 축선들 둘레에서 회전들을 포함할 수도 있다. 수치 제어 섹션 (112) 은 예를 들어 공구 (210) 의 스핀들 속도, 절삭 깊이 및/또는 이송률을 제어할 수도 있다.
수치 제어 섹션 (112) 이 공구 (210) 및/또는 가공물 (220) 의 실제 축선 위치들을 항상 알 수 있도록 수치 제어 섹션 (112) 은 예를 들어 기계 (200) 로부터 피드백 신호들 (160) 을 수신할 수도 있다. 일부 실시형태들에서, 수치 제어 섹션 (112) 은 프로그램 가능한 논리 제어 섹션 (111) 을 통하여 기계 (200) 로부터 피드백에 의존할 수도 있고 예를 들어 기계 (200) 로부터 어떠한 피드백 신호들 (160) 도 직접 수신하지 않을 수도 있다.
제어 시스템 (110) 은 예를 들어 기계 (200) 에 장착될 수도 있고, 또는 기계 (200) 로부터 분리되어 배치될 수도 있다. 제어 시스템 (110) 은 예를 들어 하나 이상의 와이어들 또는 케이블들을 통하여, 또는 무선 연결부를 통하여 기계 (200) 에 연결될 수도 있다.
제어 시스템 (110) 은 예를 들어 사용자 인터페이스 (113) 를 포함할 수도 있고 이 인터페이스를 통하여 기계 (200) 의 오퍼레이터는 기계 (200) 의 작동을 모니터링할 수도 있고 그리고/또는 기계 (200) 의 작동을 제어할 수도 있다. 사용자 인터페이스 (113) 는 예를 들어 제어 시스템 (110) 에 장착될 수도 있고, 또는 제어 시스템 (110) 으로부터 분리되어 배치될 수도 있다. 사용자 인터페이스 (113) 는 예를 들어 하나 이상의 와이어들 또는 케이블들을 통하여, 또는 무선 연결부를 통하여 제어 시스템 (110) 에 연결될 수도 있다.
사용자 인터페이스 (113) 는 예를 들어 기계 (200) 의 오퍼레이터가 수치 제어 섹션 (112) 에 의해 실행될 수치 제어 프로그램들을 편집 또는 부가하도록 허용할 수도 있다. 수치 제어 프로그램들은 예를 들어 G-코드와 같은 프로그래밍 언어로 작성될 수도 있다.
수치 제어 섹션 (112) 에 의해 실행될 수치 제어 프로그램들은 예를 들어 수치 제어 섹션 (112) 에 배치된 메모리 (114) 에, 또는 제어 시스템 (110) 의 공유 메모리 (115) 에 저장될 수도 있다. 제어 시스템 (110) 에 연결된 외부 메모리 (도 1 에 미도시) 가 수치 제어 프로그램들을 저장하는데 이용되는 실시형태들을 또한 예상할 수도 있다.
수치 제어 섹션 (112) 은 예를 들어 수치 제어 프로그램들을 실행하기 위한 프로세서 (116) 를 포함할 수도 있다. 일부 실시형태들에서, 수치 제어 섹션 (112) 은 제어 시스템 (110) 의 공유 프로세서 (117) 에서 수치 제어 프로그램들을 실행할 수도 있다.
수치 제어 섹션 (112) 은 예를 들어 수치 제어 커널 (NCK) 일 수도 있다.
프로그램 가능한 논리 제어 섹션 (111) 은 예를 들어 프로그램 가능한 논리 제어기 (PLC) 또는 프로그램 가능한 논리 계전기 (PRL) 일 수도 있다..
프로그램 가능한 논리 제어 섹션 (111) 은 예를 들어 표준 IEC 61131-3 프로그래밍 언어들 중 하나 이상으로 작성된 컴퓨터 프로그램들을 실행하기 위해 배치될 수도 있다. 프로그램 가능한 논리 제어 섹션 (111) 은 예를 들어 래더 논리 프로그래밍 언어 또는 명령 리스트 프로그래밍 언어로 작성된 컴퓨터 프로그램들을 실행하기 위해 배치될 수도 있다.
프로그램 가능한 논리 제어 섹션 (111) 은 예를 들어 프로그램 가능한 논리 제어 섹션 (111) 에 의해 실행될 하나 이상의 컴퓨터 프로그램들을 저장하기 위해 메모리 (118) 를 포함할 수도 있다. 일부 실시형태들에서, 프로그램 가능한 논리 제어 섹션 (111) 에 의해 실행될 컴퓨터 프로그램들은 제어 시스템 (110) 의 공유 메모리 (115) 에 저장될 수도 있다. 제어 시스템 (110) 에 연결되는 외부 메모리 (도 1 에 미도시) 가 프로그램 가능한 논리 제어 섹션 (111) 에 의해 실행될 컴퓨터 프로그램들을 저장하기 위해 이용되는 실시형태들을 또한 예상할 수도 있다.
프로그램 가능한 논리 제어 섹션 (111) 은 예를 들어 컴퓨터 프로그램들을 실행하기 위한 프로세서 (119) 를 포함할 수도 있다. 일부 실시형태들에서, 프로그램 가능한 논리 제어 섹션 (111) 은 제어 시스템 (110) 의 공유 프로세서 (117) 에서 컴퓨터 프로그램들을 실행할 수도 있다.
수치 제어 섹션 (112) 에서 수치 제어 프로그램들과 대조적으로, 기계 (200) 의 오퍼레이터에 의한 프로그램 가능한 논리 제어 섹션 (111) 에서 컴퓨터 프로그램들의 편집이 방지될 수도 있다. 예를 들어, 프로그램 가능한 논리 제어 섹션 (111) 에서 프로그램들의 편집은 패스워드나 키를 요구하지 않을 수도 있고, 또는 제어 시스템 (110) 의 전용 입력 포트를 통해 단지 수행될 수도 있다. 기계 제조사는, 예를 들어, 수치 제어 섹션 (112) 에서 프로그램들이 기계의 오퍼레이터에 의해 편집될 수 있는 반면, 권한을 부여받은 서비스 기술자에 의해서만 단지 편집될 수 있는 프로그램 가능한 논리 제어 섹션 (111) 에 제공된 프로그램들을 가질 수도 있다.
프로그램 가능한 논리 제어 섹션 (111) 의 작동은 도 2 를 참조하여 이하 추가로 설명될 것이다.
모니터링 시스템 (120) 은 입력 섹션 (121), 출력 섹션 (122) 및 프로세싱 섹션 (123) 을 포함한다. 입력 섹션 (121) 은 제어 시스템 (110) 으로부터 데이터 (170) 를 수신하고 그리고/또는 공구 (210) 로부터 데이터 (180) 를 수신하도록 구성된다. 출력 섹션 (122) 은 제어 시스템 (110) 의 프로그램 가능한 논리 제어 섹션 (111) 에 입력 신호 (190) 로서 제공되는 출력 (190) 을 제공하도록 구성된다.
공구 (210) 는 예를 들어 모니터링 시스템 (120) 의 입력 섹션 (121) 으로 데이터 (180) 를 전송하도록 배치된 무선 전송기 (도 1 에 미도시) 를 포함할 수도 있다.
제어 시스템 (110) 및 모니터링 시스템 (120) 은 예를 들어 물리적으로 구별가능한 디바이스들일 수도 있고, 또는 단일 디바이스 내에 다른 소프트웨어 응용들로 구현될 수도 있다. 제어 시스템 (110) 및 모니터링 시스템 (120) 은 예를 들어 응용 프로그래밍 인터페이스 (API) 를 통하여 서로 연결될 수도 있다.
모니터링 시스템 (120) 은 예를 들어 개인용 컴퓨터에서 또는 제어 시스템 (110) 의 사용자 인터페이스 (113) 와 같은 조작 패널에서 소프트웨어로서 구현될 수도 있다. 모니터링 시스템 (120) 의 작동은 이하 도 4 를 참조하여 설명될 것이다.
도 4 는 모니터링 시스템 (120) 에서 수행된 예시적 방법 (500) 의 흐름도이다. 방법 (500) 은, 그것이 제어 시스템 (110) 에서 수행된 방법을 보완하므로 상보적 방법으로 간주될 수도 있다.
상보적 방법 (500) 은, 입력 섹션 (121) 에 의해 수신된 데이터를 기반으로, 공구 (210) 및 가공물 (220) 의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태 또는 공구 (210) 의 상태를 추정함으로써 추정된 상태를 획득하는 단계 (510) 를 포함한다.
입력 섹션 (121) 에 의해 수신된 데이터는 제어 시스템 (110) 으로부터 데이터 (170), 공구 (210) 로부터 데이터 (180) 또는 이 두 가지 유형의 데이터의 조합일 수도 있다. 입력 섹션 (121) 에 의해 수신된 데이터가 기계 (200) 로부터 분리되어 배치된 센서들과 같은 다른 소스들로부터 데이터를 포함할 수 있고 기계 (200), 공구 (210) 및/또는 가공물 (220) 을 모니터링하도록 배치되는 실시형태들을 또한 예상할 수도 있다.
제어 시스템 (110) 으로부터 수신된 데이터 (170) 는 예를 들어 기계 (200) 로부터 제어 시스템 (110) 에 의해 수신된 신호들 (130 및/또는 160) 중 적어도 일부를 포함할 수도 있고, 또는 기계 (200) 로부터 제어 시스템 (110) 에 의해 수신된 신호들 (130 및/또는 160) 을 기반으로 할 수도 있다.
제어 시스템 (110) 은 예를 들어 기계 (200) 내에서 무엇이 발생하는지 결정 또는 추정하기 위해서 기계 (200) 로부터 수신된 신호들 (130 및/또는 160) 을 프로세싱 (또는 분석) 할 수도 있다. 제어 시스템 (110) 은 예를 들어 기계 (200), 공구 (210) 및/또는 가공물 (220) 의 상태 또는 조건을 추정할 수도 있다. 제어 시스템 (110) 으로부터 모니터링 시스템 (120) 에 의해 수신된 데이터 (170) 는 예를 들어 제어 시스템 (110) 에 의해 추정된 이러한 상태를 포함할 수도 있다.
공구 (210) 로부터 모니터링 시스템 (120) 에 의해 수신된 데이터 (180) 는 공구 (210) 에 배치된 하나 이상의 센서들 (도 1 에 미도시) 로부터 데이터일 수도 있다. 공구 (210) 로부터 수신된 데이터 (180) 는 예를 들어 공구 (210) 의 아이덴티티 또는 유형, 또는 기계 (200) 의 작동 중 공구 (210) (또는 공구 (210) 의 절삭 에지) 가 부여받는 온도 또는 힘을 포함할 수도 있다.
모니터링 시스템 (120) 의 프로세싱 섹션 (123) 은, 공구 (210) 의 상태 또는 공구 (210) 및 가공물 (220) 의 상호 작용을 통하여 수행되는 서브트랙티브 프로세스의 상태를 추정하기 위해서 입력 섹션 (121) 에 의해 수신되는 데이터를 프로세싱 (또는 분석) 한다.
공구 (210) 의 상태는 예를 들어 공구 (210) 가 부여받는 온도 또는 힘, 또는 공구 (210) 의 진동일 수도 있다. 공구 (210) 의 상태는 예를 들어 공구 (210) 의 온도, 힘 또는 진동이 한계치를 초과하거나 특정 범위 내에 있도록 될 수도 있다. 공구 (210) 의 상태는 예를 들어 공구 (210) 파괴, 공구 (210) 마모 또는 공구 (210) 미싱일 수도 있다.
공구 (210) 및 가공물 (220) 의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태는 예를 들어 현재 스핀들 속도, 절삭 깊이 및/또는 이송률과 같은 절삭 데이터를 포함할 수도 있고, 또는 공구 (210) 와 가공물 (220) 사이 상호 작용에 관련된 다른 파라미터들, 예로 서브트랙티브 프로세스 중 가공물 (210) 로부터 제거된 칩들의 형상 및/또는 두께를 포함할 수도 있다.
서브트랙티브 프로세스의 상태는 예를 들어 잘못된 절삭 데이터일 수도 있다. 잘못된 절삭 데이터는, 스핀들 속도, 절삭 깊이 및/또는 이송률과 같은 현재 이용된 절삭 데이터가 공구 (210) 에 부적합하다는 것을 나타낼 수도 있다. 현재 이용된 절삭 데이터는 예를 들어 공구 (210) 제조사에 의해 지정된 권장 절삭 데이터를 따르지 않을 수도 있다.
서브트랙티브 프로세스의 상태는 예를 들어 프로세스 채터, 즉 공구 (210) 및/또는 가공물 (220) 의 기계가공 진동과 관련될 수도 있다.
서브트랙티브 프로세스의 상태는 예를 들어 가공물이 미싱되고 사실상 공구 (210) 와 가공물 (220) 사이에 상호 작용이 없도록 될 수도 있다.
서브트랙티브 프로세스의 상태는 예를 들어 가공물 (220) 의 현재 기하학적 구조 또는 표면 마감과 같은 공구 (210) 및 가공물 (220) 의 상호 작용의 결과에 관련될 수도 있다. 서브트랙티브 프로세스의 상태는 예를 들어 가공물 (220) 의 현재 기하학적 구조가 공차 내에 있고 (즉, 가공물 (220) 의 달성된 기하학적 구조를 받아들일 수 있음), 서브트랙티브 프로세스가 따라서 중단될 수 있도록 될 수도 있다.
모니터링 시스템 (120) 은 예를 들어 제어 시스템 (110) 에 이용할 수 없는 데이터, 예로 공구 (210) 로부터 수신된 데이터 (180) 또는 공구 (210) 의 제조사로부터 권장 절삭 데이터로 접근할 수도 있고, 따라서 공구 (210) 또는 서브트랙티브 프로세스의 상태를 보다 정확하게 추정할 수도 있다.
모니터링 시스템 (120) 은 예를 들어 제어 시스템 (110) 보다 더 강력한 컴퓨팅 자원들을 포함 (또는 접근) 할 수도 있고 따라서 공구 (210) 또는 서브트랙티브 프로세스의 상태를 보다 정확하게 추정할 수도 있다.
프로세싱 섹션 (123) 은 예를 들어 단일 프로세싱 유닛일 수도 있고 또는 별개의 로케이션들에 분배된 다수의 프로세싱 자원들을 포함할 수도 있음을 인식할 것이다. 환언하면, 추정된 상태를 획득하는 단계 (510) 는 임의의 유형의 프로세싱 수단의 사용을 통하여, 예로 클라우드 컴퓨팅을 통하여 거의 어디에서나 수행될 수도 있다.
추정된 상태를 획득하는 단계 (510) 는 예를 들어 공구 (210) 및/또는 서브트랙티브 프로세스의 각각의 상태들을 나타내는 복수의 조건들 (C1-CN) 에 관하여 수신된 데이터 (170 및/또는 180) 를 평가하는 것을 포함할 수도 있다.
모니터링 시스템 (120) 에서 수행된 상보적 방법 (500) 은, 입력 신호 (190) 를 통하여 제어 시스템 (110) 에서 프로그램 가능한 논리 제어 섹션 (111) 으로 전송하기 위해, 추정된 상태에 대한 정보를 출력 섹션 (122) 으로 제공하는 단계 (520) 를 추가로 포함한다.
도 2 는 실시형태에 따른 제어 시스템 (110) 에서 수행된 방법 (300) 의 흐름도이다. 방법 (300) 은 예를 들어 제어 시스템 (110) 의 프로그램 가능한 논리 제어 섹션 (111) 에서 (또는 그것에 의해) 수행될 수도 있다.
방법 (300) 은, 하나 이상의 조건들에 관하여 프로그램 가능한 논리 제어 섹션 (111) (예컨대 프로그램 가능한 논리 제어기, PLC) 에 의해 수신된 입력 신호 (190) 를 평가하는 단계 (310) 를 포함한다. 도 4 를 참조하여 전술한 대로, 입력 신호 (190) 는 공구 (210) 의 상태 또는 공구 (210) 및 가공물 (220) 의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태에 대한 정보를 포함한다.
입력 신호 (190) 가 제 1 조건을 충족한다면, 방법 (300) 은 수치 제어 섹션 (112) (예컨대 수치 제어기, NC, 또는 수치 제어 커널 NCK) 으로 정보를 제공하는 단계 (320) 에 의해 진행할 수도 있다.
입력 신호 (190) 는 예를 들어 공구 (210) 또는 서브트랙티브 프로세스의 상태를 나타내는 다수의 비트들을 함께 포함하는 디지털 신호일 수도 있다. 제 1 조건은 예를 들어 한계치보다 더 크거나 더 작은 수를 나타내는 비트들, 또는 특정 간격 내 수를 나타내는 비트들에 대응할 수도 있다.
전체 입력 신호 (190) 는 예를 들어 수치 제어 섹션 (112) 으로 전달될 수도 있다. 대안적으로, 상태에 대한 정보를 포함한 입력 신호 (190) 의 일부만 수치 제어 섹션 (112) 으로 전달될 수도 있다. 일부 실시형태들에서, 입력 신호 (190) 의 일부는 단지 평가 (310) 를 위해 제공되고, 따라서 일단 평가 (310) 가 수행되면 무시 (또는 폐기) 될 수도 있다.
정보는 예를 들어 그것이 입력 신호 (190) 로 수신될 때와 동일한 포맷으로 수치 제어 섹션 (112) 에 제공 (320) 될 수도 있다. 대안적으로, 정보는 수치 제어 섹션 (112) 에 제공되기 전 다른 포맷으로 변환될 수도 있다.
정보는 예를 들어 수치 제어 섹션 (112) 의 하나 이상의 내부 변수들에 대한 값들을 할당함으로써 수치 제어 섹션 (112) 에 제공 (320) 될 수도 있다.
다음 시나리오는 수치 제어 섹션 (112) 으로 정보를 제공/전달 (320) 할 수 있는 능력을 이용할 수 있는 방법을 예시한다. 수치 제어 프로그램을 작성할 때, 기계 (200) 의 프로그래머 또는 오퍼레이터는 최적의 스핀들 속도를 알지 못할 수도 있다. 기계에 최적의 스핀들 속도를 제공하기 위해서, 스핀들 속도는 NC 프로그램을 작성할 때 오퍼레이터에게 알려지지 않은 조건들을 기반으로 조절되어야 할 수도 있다. 예를 들어 다음 신택스 (syntax) 가 사용될 수도 있다:
N10 M6 T10 D1
N20 M3 S2000 F500
N30 G04 F0.2
N40 M3 S=2000+(VARIABLE2) F500
프로그래머 또는 오퍼레이터는 다음 작동을 위해 최적의 스핀들 속도가 2000 rpm ("S2000") 이도록 상정할 수도 있다. 모니터링 시스템 (120) 이 다른 스핀들 속도가 더 나은 것을 발견한 경우, 모니터링 시스템 (120) 은 상태 "잘못된 절삭 데이터" 또는 "너무 낮은 스핀들 속도" 를 입력 신호 (190) 를 통하여 제어 시스템 (110) 으로 신호전달할 수 있고, 또한 스핀들 속도가 어떻게 조절될 수 있는지 입력 신호 (190) 를 통하여 나타낼 수도 있다. 수치 제어 프로그램에 이용된 변수 "VARIABLE2" 를 할당함으로써 입력 신호 (190) 에 포함된 정보가 프로그램 가능한 논리 제어 섹션 (111) 에 의해 수치 제어 섹션 (112) 으로 제공 (320) 될 수 있으므로 모니터링 시스템 (120) 은 입력 신호 (190) 를 통하여 스핀들 속도의 변화를 유발할 수도 있다. 따라서 스핀들 속도는 이에 맞춰 조절될 수도 있다 ("S=2000+(VARIABLE2)").
전술한 수치 제어 프로그램은, 오퍼레이터가 수정할 수 없는 PLC 에서 프로그램들과 대조적으로, 기계 (200) 의 오퍼레이터에 의해 편집 또는 조정될 수도 있다.
입력 신호 (190) 가 제 2 조건을 충족한다면, 정보를 수치 제어 섹션 (112) 에 제공 (320) 하는 단계 전 수치 제어 섹션 (112) 에 의해 실행된 컴퓨터 프로그램의 중단을 트리거 (330) 하고 제어 시스템 (110) 에 의해 실행될 수치 제어 섹션 (112) 에서 컴퓨터 프로그램을 할당 (340) 하는 단계들이 선행한다. 입력 신호 (190) 가 제 2 조건을 충족한다면, 정보는 수치 제어 섹션 (112) 에서 할당된 컴퓨터 프로그램에 입력으로서 제공 (320) 될 수도 있다.
입력 신호 (190) 는 예를 들어 다수의 비트들을 포함하는 디지털 신호일 수도 있다. 제 2 조건은 예를 들어 한계치보다 더 크거나 더 작은 수를 나타내는 비트들, 또는 특정 간격 내 수를 나타내는 비트들에 대응할 수도 있다.
다음 시나리오는 수치 제어 섹션 (112) 에 의해 실행된 컴퓨터 프로그램의 중단을 트리거 (330) 할 수 있는 능력을 이용할 수 있는 방법을 예시한다. 제 1 수치 제어 프로그램을 만들고/작성할 때 프로그래머 또는 오퍼레이터가 알지 못하는 인자들을 기반으로 스핀들 속도를 맞출 필요가 있는 경우에, 제 1 수치 제어 프로그램을 중단시키고 스핀들 속도를 변화시키는 제 2 수치 제어 프로그램을 시작함으로써, 그 후 새로운 스핀들 속도로 기계 (200) 의 작동을 지속하기 위해 제 1 수치 제어 프로그램으로 다시 점프함으로써 스핀들 속도는 기계 (200) 의 작동 중 조절될 수도 있다. 다음 신택스가 예를 들어 제 1 수치 제어 프로그램에서 사용될 수도 있다:
N10 M6 T10 D1
N20 M3 S2000 F500
모니터링 시스템 (120) 은 다른 스핀들 속도가 최적인 것을 검출/결정할 수도 있고 입력 신호 (190) 를 통하여 "잘못된 스핀들 속도" 를 신호전달할 수도 있다. 이것은 제 1 수치 제어 프로그램의 중단을 트리거 (330) 하고 올바른 작용 유형을 찾기 위한 제 1 변수 ("VARIABLE1") 및 모니터링 시스템 (120) 에 의해 결정된 최적의 스핀들 속도를 포함한 제 2 변수 ("VARIABLE2") 에 저장된 정보와 함께 실행될 제 2 수치 제어 프로그램 (실행가능한 작용들 포함) 을 할당 (340) 할 수도 있다. 환언하면, 입력 신호 (190) 에 포함된 정보는 이런 2 개의 변수들을 통하여 수치 제어 섹션 (112) 으로 제공 (320) 될 수도 있다. 제 2 수치 제어 프로그램은 예를 들어 다음 신택스에 따라 실행가능한 작용 유형들을 포함할 수도 있다:
IF VARIABLE1 == 1 GOTOF N10
GOTOF N30
N10 M3 S=VARIABLE2
GOTOF N20
N20
REPOSA
M17
N30
RET
제 2 수치 제어 프로그램은, 오퍼레이터가 수정할 수 없는 PLC 에서 프로그램들과 대조적으로, 기계 (200) 의 오퍼레이터에 의해 편집 또는 조정될 수도 있다. 이 시나리오에서는 중단이 트리거되므로, 중단이 트리거되지 않은 제 1 시나리오에서보다 입력 신호 (190) 에 의해 신호전달되는 상태에 대한 더 빠른 응답을 제공할 수 있다.
제 2 수치 제어 프로그램은 도 3 을 참조로 이하 설명되는 컴퓨터 프로그램 (400) 의 예시이다.
입력 신호 (190) 가 제 3 조건 (제 3 조건은 예를 들어 제 1 조건도 제 2 조건도 충족되지 않는 것에 대응할 수 있음) 을 충족한다면, 방법 (300) 은 수치 제어 섹션 (112) 으로 정보를 제공 (320) 함으로써 진행되지 않을 수도 있다. 그 대신, 방법 (300) 은 입력으로서 정보로 제어 시스템 (110) 에 의해 실행될 프로그램 가능한 논리 제어 섹션 (111) 에 컴퓨터 프로그램의 일부를 할당 (350) 하는 단계에 의해 진행될 수도 있다.
예를 들어, 스핀들 속도는 전술한 시나리오들에서처럼 조절될 필요가 있다면, 이것은 입력 신호 (190) 를 통하여 모니터링 시스템 (120) 에 의해 신호전달될 수도 있고, 프로그램 가능한 논리 제어 섹션 (111) 은, 스핀들 속도를 조절하기 위해 입력 신호 (190) 로부터 정보를 수치 제어 섹션 (112) 으로 전달하는 대신에, (제 3 조건에 관한 입력 신호 (190) 의 평가를 기반으로) 새로운 스핀들 속도 그 자체를 설정하도록 결정할 수도 있다.
컴퓨터 프로그램은 예를 들어 스핀들 속도의 조절을 제공하기 위해 기계 제조사에 의해 프로그램 가능한 논리 제어 섹션 (111) 에 포함될 수도 있다.
스핀들 이송 조절을 제공하기 위해 기계 (200) 의 오퍼레이터에 의해 맞춤형 수치 제어 프로그램들이 제공되지 않는 경우에, 또는 (기계 (200) 의 적어도 일부 특정 상태에 대한) 스핀들 속도의 조절이 너무 중요 (또는 안전 필수) 해서 기계 (200) 의 오퍼레이터에 의해 맞출 수 없는 것으로 간주되는 경우에 스핀들 속도의 조절은 예를 들어 프로그램 가능한 논리 제어 섹션 (111) 에 의해 제공될 수도 있다.
프로그램 가능한 논리 제어 섹션 (111) 에서 할당된 컴퓨터 프로그램에 입력으로서 제공된 정보는 할당된 컴퓨터 프로그램에 입력으로서 제공되기 전 변환될 수도 있다. 예를 들어, 입력 신호 (190) 가 제 3 조건을 충족한다면, 방법 (300) 은, 입력 신호 (190) 를 변환함으로써 중간 신호를 발생 (360) 시킨 후, 입력으로서 중간 신호로 제어 시스템 (110) 에 의해 실행될 프로그램 가능한 논리 제어 섹션 (111) 에 컴퓨터 프로그램의 일부를 할당 (350) 함으로써 진행할 수도 있다.
입력 신호 (190) 는 예를 들어 공구 (210) 의 상태 또는 공구 (210) 및 가공물 (220) 의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태에 대응하는 수를 함께 나타내는 다수의 비트들을 포함하는 디지털 신호일 수도 있다. 환언하면, 비트들이 함께 상태를 나타내는 공동 신호전달 포맷이 이용될 수도 있다.
입력 신호 (190) 를 변환 (360) 함으로써 획득된 중간 신호는, 공구 (210) 또는 서브트랙티브 프로세스의 상태가 각각의 미리 규정된 상태들과 일치하는지 여부를 독립적으로 신호전달하는 복수의 비트들을 포함할 수도 있다. 환언하면, 비트들은 각각의 미리 규정된 상태들과 연관될 수도 있고 각각의 개별 비트는, 그것의 연관된 미리 규정된 상태가 최근에 기계 (200) 에서 발생했는지 아닌지 나타내는 플래그로서 역할을 할 수도 있다.
공동 신호전달이 보다 비트 효율적이지만, 플래그들을 통하여 각각의 상태들의 개별 신호전달은 프로그램 가능한 논리 제어기들 (PLC) 로 입력으로서 일반적이다. 이런 두 데이터 포맷들 사이에 변환 (또는 변형) 을 제공하면 PLC 로 전송을 위한 보다 비트 효율적인 포맷, 적어도 일부 PLC 프로그램들로, 또는 PLC 프로그램의 적어도 일부 부분들로 입력으로서 보다 일반적으로 사용되는 플래그 기반 포맷의 사용을 허용한다.
입력 신호 (190) 에 의해 나타낸 상태들에 대한 신속한 응답들은 공구 (210) 의 수명을 연장시키거나, 파괴된 공구 (210) 가 가공물 (220) 또는 기계 (200) 의 다른 부분들의 손상을 유발하는 것을 방지하는데 중요할 수도 있다. 비트 효율적인 전송 포맷들은 제어 시스템 (110) 의 응답 시간들을 단축시킬 수도 있다.
입력 신호 (190) 는 예를 들어 신속한 데이터 전송을 제공하고 입력 신호 (190) 에 의해 나타낸 상태들에 대한 제어 시스템 (110) 의 응답 시간들을 감소시키기 위해서 필드 버스를 통하여 수신될 수도 있다.
비록 필드 버스가 특히 신속한 데이터 전송을 제공할 수 있지만, 입력 신호 (190) 가 유선 또는 무선 연결부들과 같은 다른 수단을 통하여 수신될 수 있는 실시형태들을 또한 예상할 수도 있다. 입력 신호 (190) 는 예를 들어 TCP/IP 연결을 통하여 수신될 수도 있다.
일부 실시형태들에서, 모니터링 시스템 (120) 및 제어 시스템 (110) 은 응용 프로그래밍 인터페이스 (API) 를 통하여 서로 연결될 수도 있다. 입력 신호 (190) 는 예를 들어 API 를 사용해 모니터링 시스템 (120) 으로부터 제어 시스템 (110) 으로 제공될 수도 있다.
일단 입력 신호 (190) 를 수신하면 제어 시스템 (110) 은 예를 들어 확인 (acknowledgement) 을 제공할 수도 있다. 제어 시스템 (110) (또는 프로그램 가능한 논리 제어 섹션 (111)) 은 예를 들어 입력 신호 (190) 의 수신을 확인하기 위해서 모니터링 시스템 (120) 으로 입력 신호 (190) 를 되돌려 보낼 수도 있다.
도 3 은 도 1 을 참고로 설명된 시스템 (100) 의 수치 제어 섹션 (112) 에서 예시 컴퓨터 프로그램 (400) 의 개략도이다. 도 2 를 참조하여 설명된 방법 (300) 의 단계들에서, 컴퓨터 프로그램 (400) 은 제어 시스템 (110) 에 의해 (또는 수치 제어 섹션 (112) 에 의해) 실행되도록 할당 (340) 될 수도 있고 입력 신호 (190) (또는 그것의 일부) 는 컴퓨터 프로그램 (400) 에 입력으로서 제공 (320) 될 수도 있다. 예를 들어, 수치 제어 섹션 (112) 의 내부 변수들은 입력 신호 (190) 를 기반으로 할당된 값들일 수도 있고, 이 내부 변수들은 그러면 컴퓨터 프로그램 (400) 에 의한 입력으로서 이용될 수도 있다.
컴퓨터 프로그램 (400) 은, 입력 신호 (190) 를 기반으로 (또는 입력 신호 (190) 를 기반으로 할당된 수치 제어 섹션 (112) 에서 변수들을 기반으로), 실행될 적절한 서브프로그램 (P1-PM) 을 선택 (410) 하기 위한 명령을 포함한다. 도 1 및 도 2 를 참조하여 전술한 대로, 입력 신호 (190) 는 공구 (210) 의 상태 또는 공구 (210) 및 가공물 (220) 의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태에 대한 정보를 포함한다. 서브프로그램들 (P1-PM) 은 다른 상태들에 응답하기 위한 명령들을 포함한다. 입력 신호 (190) 에 의해 나타낸 상태에 따라, 서브프로그램들 (P1-PM) 중 하나 이상은 따라서 나타낸 상태에 대한 적절한 응답을 제공하도록 선택된다. 응답은 제어 신호들 (150) 을 통하여 수치 제어 섹션 (112) 으로부터 기계 (200) 로 제공될 수도 있다.
프로그램 (400) 은 예를 들어 각각의 실행가능한 명령어들 또는 명령들을 포함한 복수의 라인들/열들을 포함할 수도 있다. 서브프로그램들 (P1-PM) 은 예를 들어 컴퓨터 프로그램 (400) 에서 각각의 라인들 또는 위치들에서 시작할 수도 있다. 적절한 서브프로그램 (P1-PM) 을 선택 (410) 하는 단계는 예를 들어 적절한 서브프로그램 (P1-PM) 이 시작하는 프로그램 (400) 에서의 라인 또는 위치로 점프를 포함할 수도 있다.
프로그램 (400) 은 예를 들어 공구 파괴, 공구 마모, 공구 미싱, 가공물 미싱, 및 잘못된 절삭 데이터와 같은 상태들에 대한 응답을 제공하기 위한 각각의 서브프로그램들 (P1-PM) 을 포함할 수도 있다.
잘못된 절삭 데이터는, 스핀들 속도, 절삭 깊이 및/또는 이송률과 같은 현재 이용된 절삭 데이터가 공구 (210) 에 부적합하다는 것을 나타낼 수도 있다. 현재 이용된 절삭 데이터는 예를 들어 공구 제조사에 의해 지정된 권장 절삭 데이터를 따르지 않을 수도 있다. 따라서, 연관된 서브프로그램 (P1-PM) 은 스핀들 속도, 절삭 깊이 및/또는 이송률과 같은 절삭 데이터를 수정 또는 조절하기 위한 명령들을 포함할 수도 있다
도 5 는 예시적 실시형태들에 따른 제 1 컴퓨터 판독가능한 저장 수단 (600) 및 제 2 컴퓨터 판독가능한 저장 수단 (700) 을 보여준다.
제 1 컴퓨터 판독가능한 저장 수단 (600) 은 도 2 를 참조하여 설명된 방법 (300) 을 수행하기 위한 명령들을 포함한 컴퓨터 프로그램 (601) 을 저장한다. 제 1 컴퓨터 판독가능한 저장 수단 (또는 컴퓨터 판독가능한 매체) (600) 은 본원에서는 단일 물리적 로케이션에서 전체 컴퓨터 프로그램 (601) 을 저장한 단일 디스크 또는 메모리로 예시된다. 제 1 컴퓨터 판독가능한 저장 수단 (600) 은 예를 들어 단일 서버, 하드 드라이브, 메모리 스틱, 콤팩트 디스크 (CD) 또는 디지털 다기능 디스크 (DVD) 에 제공될 수도 있다. 제 1 컴퓨터 판독가능한 저장 수단 (600) 이 분리된 물리적 로케이션들에 배치되고 컴퓨터 프로그램 (601) 의 각각의 부분들을 저장한 다수의 부분들을 포함할 수도 있는 실시형태들을 또한 예상할 수도 있다. 컴퓨터 판독가능한 저장 수단 (600) 의 다른 부분들은 예를 들어 다른 서버들, 하드 드라이브들, 메모리 스틱들, CD 들 또는 DVD 들에 제공될 수도 있다. 컴퓨터 프로그램 (601) 은 예를 들어 하나 이상의 서버들에 저장될 수도 있고, 도 1 을 참조하여 설명된 제어 시스템 (110) 으로 인터넷을 통하여 다운로드할 수도 있다.
제 2 컴퓨터 판독가능한 저장 수단 (700) 은 도 2 및 도 4 를 참조하여 설명된 방법들 (300, 500) 을 수행하기 위한 명령들을 포함한 컴퓨터 프로그램 패키지를 저장한다. 제 2 컴퓨터 판독가능한 저장 수단 (700) 은, 분리된 물리적 로케이션들에 배치되고 컴퓨터 프로그램 패키지의 각각의 부분들 (701, 702) 을 저장한 다수의 부분들 (710, 720) 을 포함한다.
제 2 컴퓨터 판독가능한 저장 수단 (700) 의 제 1 부분 (710) 은 예를 들어 도 2 를 참조하여 설명된 방법 (300) 을 수행하기 위한 명령들을 포함하는 컴퓨터 프로그램 (701) 을 저장할 수도 있다. 제 2 컴퓨터 판독가능한 저장 수단 (700) 의 제 2 부분 (720) 은 예를 들어 도 4 를 참조하여 설명된 상보적 방법 (400) 을 수행하기 위한 명령들을 포함한 컴퓨터 프로그램 (702) 을 저장할 수도 있다. 제 2 컴퓨터 판독가능한 저장 수단 (700) 의 부분들 (710, 720) 은 예를 들어 다른 서버들, 하드 드라이브들, 메모리 스틱들, CD 들 또는 DVD 들에 제공될 수도 있다. 컴퓨터 프로그램들 (701, 702) 은 예를 들어 다른 서버들에 저장될 수도 있고, 도 1 을 참조하여 설명된, 제어 시스템 (110) 및 모니터링 시스템 (120) 으로 인터넷을 통하여 다운로드할 수도 있다.
본 기술분야의 당업자는, 본 발명이 전술한 바람직한 실시형태들에 결코 제한되지 않는다는 점을 알고 있다. 반대로, 첨부된 청구항의 범위 내에서 많은 수정 및 변형이 가능하다. 부가적으로, 개시된 실시형태들에 대한 변형은, 도면들, 명세서 및 첨부된 청구항의 검토로부터, 청구된 발명을 실시할 때 본 기술분야의 당업자들에 의해 이해되고 이루어질 수 있다. 청구항에서, 단어 "포함하는" 은 다른 요소들 또는 단계들을 배제하지 않으며, "부정 관사" 는 복수를 배제하지 않는다. 본 명세서에서 언급된 기능 유닛 간 작동 분할은 반드시 물리적 유닛으로 분할과 일치하지 않고; 반대로, 하나의 물리적 구성요소가 다수의 기능을 가질 수 있고, 하나의 작동이 여러 물리적 구성요소들에 의해 협동하여 분산된 방식으로 실시될 수 있다. 컴퓨터 프로그램은 다른 하드웨어와 함께 또는 그것의 일부로서 제공되는 광 저장 매체 또는 고체 상태 매체와 같은, 적합한 매체에 저장/분배될 수 있지만, 예로 인터넷 또는 다른 유선 또는 무선 전기 통신 시스템들을 통하여 다른 형태들로 또한 분배될 수도 있다. 특정한 측정값이 서로 다른 종속항에서 인용된다는 사실만으로, 이러한 측정값의 조합이 유리하게 사용될 수 없다는 것을 나타내지 않는다. 청구항에서 임의의 도면 부호는 범위를 제한하는 것으로 해석되어서는 안 된다.

Claims (16)

  1. 제어 시스템 (110) 에서 수행되는 방법 (300) 으로서,
    상기 제어 시스템은 기계 (200) 의 작동을 제어하도록 구성된 프로그램 가능한 논리 제어 섹션 (111), 및 상기 기계의 공구 (210) 와 가공물 (220) 사이 상대 운동을 제어하도록 구성된 수치 제어 섹션 (112) 을 포함하고,
    상기 방법은:
    상기 프로그램 가능한 논리 제어 섹션에 의해 수신된, 입력 신호 (190) 가 제 1 조건을 충족하는지 여부를 평가하는 단계 (310) 로서, 상기 입력 신호는 상기 공구의 상태에 대한 또는 상기 공구와 상기 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스 (subtractive process) 의 상태에 대한 정보를 포함하고, 상기 입력 신호는 상기 공구의 상태 또는 상기 서브트랙티브 프로세스의 상태를 나타내는 비트들을 포함하고, 상기 제 1 조건은 상기 비트들이 한계치보다 더 크거나 더 작은 수를 나타내거나, 소정 간격 내 수를 나타내는 것인, 상기 평가하는 단계 (310); 및
    상기 제 1 조건을 충족하는 입력 신호에 응하여, 상기 정보를 수치 제어 섹션에 제공하는 단계 (320) 를 포함하는, 제어 시스템에서 수행되는 방법.
  2. 제 1 항에 있어서,
    상기 입력 신호에 포함된 상기 정보는:
    공구 파괴;
    공구 마모;
    공구 미싱 (missing);
    가공물 미싱;
    잘못된 절삭 데이터;
    공구가 부여받는 온도;
    공구가 부여받는 힘;
    공구 진동;
    프로세스 채터 (chatter); 또는
    상기 가공물의 현재 기하학적 구조를 나타내는, 제어 시스템에서 수행되는 방법.
  3. 제 1 항에 있어서,
    상기 입력 신호가 제 2 조건을 충족하는지 여부를 평가하는 단계 (310) 로서, 상기 제 2 조건은 상기 입력 신호의 비트들이 한계치보다 더 크거나 더 작은 수를 나타내거나, 소정 간격 내 수를 나타내는 것인, 상기 평가하는 단계 (310); 및
    상기 제 2 조건을 충족하는 입력 신호에 응하여:
    상기 수치 제어 섹션에 의해 실행된 컴퓨터 프로그램의 중단을 트리거하는 단계 (330);
    상기 제어 시스템에 의해 실행되도록 상기 수치 제어 섹션에 컴퓨터 프로그램 (400) 을 할당하는 단계 (340); 및
    할당된 컴퓨터 프로그램에 입력으로서 상기 정보를 제공하는 단계 (320) 를 더 포함하는, 제어 시스템에서 수행되는 방법.
  4. 제 1 항에 있어서,
    입력 신호에 포함된 정보가 미리 규정된 상태들의 세트 중 적어도 하나의 상태를 나타내는 경우에,
    상기 수치 제어 섹션에 의해 실행된 컴퓨터 프로그램의 중단을 트리거하는 단계 (330);
    상기 제어 시스템에 의해 실행되도록 상기 수치 제어 섹션에 컴퓨터 프로그램을 할당하는 단계 (340); 및
    할당된 컴퓨터 프로그램에 입력으로서 상기 정보를 제공하는 단계 (320) 를 포함하고,
    상기 미리 규정된 상태들의 세트는:
    공구 파괴;
    공구 마모;
    공구 미싱;
    가공물 미싱;
    잘못된 절삭 데이터;
    공구가 부여받는 온도가 한계치를 초과했는지 여부;
    공구가 부여받는 힘이 한계치를 초과했는지 여부;
    공구 진동이 한계치를 초과했는지 여부;
    프로세스 채터가 한계치를 초과했는지 여부; 또는
    가공물의 현재 기하학적 구조가 공차 내에 있는지 여부를 포함하는, 제어 시스템에서 수행되는 방법.
  5. 제 3 항에 있어서,
    상기 수치 제어 섹션에 할당된 컴퓨터 프로그램은:
    운동을 중지하고;
    상기 가공물로부터 상기 공구를 후퇴시키고;
    상기 공구로부터 상기 가공물을 후퇴시키고;
    상기 공구를 시스터 공구 (sister tool) 로 교체하고;
    평가를 위해 카메라를 향하여 상기 공구를 이동시키고;
    평가를 위해 카메라를 향하여 상기 가공물을 이동시키고;
    상기 공구의 평가를 위해 카메라의 운동을 트리거시키고;
    상기 가공물의 평가를 위해 카메라의 운동을 트리거시키고; 또는
    절삭 데이터를 변화시키도록 기계를 제어하기 위한 명령들을 포함하는, 제어 시스템에서 수행되는 방법.
  6. 제 3 항에 있어서,
    상기 수치 제어 섹션에 할당된 상기 컴퓨터 프로그램은 편집가능한 수치 제어 프로그램인, 제어 시스템에서 수행되는 방법.
  7. 제 3 항에 있어서,
    상기 입력 신호가 제 3 조건을 충족하는지 여부를 평가하는 단계 (310) 로서, 상기 제 3 조건은 상기 입력 신호가 상기 제 1 조건 및 상기 제 2 조건 중 어느 것도 충족시키지 않는 것인, 상기 평가하는 단계 (310); 및
    상기 제 3 조건을 충족하는 상기 입력 신호에 응하여, 상기 정보의 입력으로 제어 시스템에 의해 실행되도록, 상기 프로그램 가능한 논리 제어 섹션에 컴퓨터 프로그램의 적어도 일부를 할당하는 단계 (350) 를 더 포함하는, 제어 시스템에서 수행되는 방법.
  8. 제 7 항에 있어서,
    상기 제 3 조건을 충족하는 상기 입력 신호에 응하여,
    상기 입력 신호의 적어도 일부를 변환함으로써 중간 신호를 발생시키는 단계 (360); 및
    상기 중간 신호의 입력으로 제어 시스템에 의해 실행되도록, 프로그램 가능한 논리 제어 섹션에 상기 컴퓨터 프로그램의 적어도 일부를 할당하는 단계 (350) 를 포함하는, 제어 시스템에서 수행되는 방법.
  9. 제 8 항에 있어서,
    상기 입력 신호의 적어도 일부는 상기 공구의 상기 상태 또는 상기 공구 및 상기 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상기 상태를 공동으로 신호전달하는 비트들을 포함하고, 상기 중간 신호는, 상기 공구의 상태 또는 상기 공구 및 상기 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태가 각각의 미리 규정된 상태들과 일치하는지 여부를 독립적으로 신호전달하는 복수의 비트들을 포함하는, 제어 시스템에서 수행되는 방법.
  10. 제 7 항에 있어서,
    상기 프로그램 가능한 논리 제어 섹션에 할당된 상기 컴퓨터 프로그램은 편집으로부터 잠금되는, 제어 시스템에서 수행되는 방법.
  11. 제 1 항 내지 제 10 항 중 어느 한 항에 규정된 바와 같은 방법을 수행하기 위한 명령들을 포함하는 컴퓨터 판독가능한 저장 수단 (600, 700) 에 저장되는 컴퓨터 프로그램 (601, 701).
  12. 컴퓨터 판독가능한 저장 수단 (600, 700) 에 저장되는 컴퓨터 프로그램으로서,
    제 11 항에 규정된 바와 같은 상기 컴퓨터 프로그램 (701); 및
    모니터링 시스템 (120) 에서 사용하기 위한 상보적 컴퓨터 프로그램 (702) 을 포함하고,
    상기 모니터링 시스템은 적어도 상기 제어 시스템 또는 상기 공구로부터 데이터 (170, 180) 를 수신하기 위한 입력 섹션 (121), 및 데이터를 제어 시스템에 제공하기 위한 출력 섹션 (122) 을 포함하고,
    상기 상보적 컴퓨터 프로그램은 상보적 방법 (500) 을 수행하기 위한 명령들을 포함하고, 상기 상보적 방법은:
    상기 입력 섹션에 의해 수신된 데이터를 기반으로, 상기 공구의 상태 또는 상기 공구 및 상기 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태를 추정함으로써 추정된 상태를 획득하는 단계 (510); 및
    상기 입력 신호를 통하여, 상기 제어 시스템으로 전송하기 위해 상기 출력 섹션으로 상기 추정된 상태에 대한 정보를 제공하는 단계 (520) 를 포함하는, 컴퓨터 판독가능한 저장 수단 (600, 700) 에 저장되는 컴퓨터 프로그램.
  13. 제 11 항에 규정된 바와 같은 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능한 저장 수단 (600, 700).
  14. 제 12 항에 규정된 바와 같은 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능한 저장 수단 (600, 700).
  15. 제어 시스템 (110) 으로서,
    기계 (200) 의 작동을 제어하도록 구성된 프로그램 가능한 논리 제어 섹션 (111); 및
    상기 기계의 공구 (210) 와 가공물 (220) 사이 상대 운동을 제어하도록 구성된 수치 제어 섹션 (112) 을 포함하고,
    상기 프로그램 가능한 논리 제어 섹션은:
    상기 공구의 상태 또한 상기 공구 및 상기 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태에 대한 정보를 포함한 입력 신호 (190) 를 수신하고;
    상기 입력 신호가 제 1 조건을 충족하는지 여부를 평가하고; 그리고
    상기 제 1 조건을 충족하는 입력 신호에 응하여, 상기 정보를 상기 수치 제어 섹션에 제공하도록 구성되고,
    상기 입력 신호는 상기 공구의 상태 또는 상기 서브트랙티브 프로세스의 상태를 나타내는 비트들을 포함하고, 상기 제 1 조건은 상기 비트들이 한계치보다 더 크거나 더 작은 수를 나타내거나, 소정 간격 내 수를 나타내는 것인, 제어 시스템 (110).
  16. 시스템 (100) 으로서,
    제 15 항에 규정된 바와 같은 상기 제어 시스템; 및
    적어도 상기 제어 시스템 또는 상기 공구로부터 데이터 (170, 180) 를 수신하고;
    수신된 상기 데이터를 기반으로, 상기 공구의 상태 또는 공구 및 상기 가공물의 상호 작용을 통하여 수행된 서브트랙티브 프로세스의 상태를 추정함으로써 추정된 상태를 획득하고;
    상기 추정된 상태를 기반으로 상기 입력 신호를 발생시키고; 그리고
    상기 입력 신호를 상기 제어 시스템에 제공하도록 구성된 모니터링 시스템 (120) 을 포함하는, 시스템 (100).
KR1020187013175A 2015-10-13 2016-09-27 기계 공구의 프로세스 모니터링 및 적응 제어 KR102599158B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP15189543.0A EP3156865B1 (en) 2015-10-13 2015-10-13 Process monitoring and adaptive control of a machine tool
EP15189543.0 2015-10-13
PCT/EP2016/072954 WO2017063868A1 (en) 2015-10-13 2016-09-27 Process monitoring and adaptive control of a machine tool

Publications (2)

Publication Number Publication Date
KR20180058833A KR20180058833A (ko) 2018-06-01
KR102599158B1 true KR102599158B1 (ko) 2023-11-06

Family

ID=54325395

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187013175A KR102599158B1 (ko) 2015-10-13 2016-09-27 기계 공구의 프로세스 모니터링 및 적응 제어

Country Status (6)

Country Link
US (1) US11275351B2 (ko)
EP (1) EP3156865B1 (ko)
JP (1) JP7041054B2 (ko)
KR (1) KR102599158B1 (ko)
CN (1) CN108139735A (ko)
WO (1) WO2017063868A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10559971B2 (en) 2015-04-10 2020-02-11 Ossia Inc. Wirelessly chargeable battery apparatus
TWI616272B (zh) * 2016-12-01 2018-03-01 財團法人資訊工業策進會 加工參數調整系統及加工參數調整方法
US10452052B2 (en) * 2017-07-13 2019-10-22 Autodesk, Inc. Method and system for processing machine data before completion of machining
US10656977B1 (en) * 2018-03-01 2020-05-19 Techsolve, Inc. Automatic deployment of manufacturing adapters
CN111627189B (zh) * 2019-02-12 2022-04-22 珠海格力电器股份有限公司 一种设备异常处理方法、系统及存储介质
CN113574481A (zh) * 2019-02-19 2021-10-29 西门子股份公司 用于数控机床的控制程序的基于循环的编程的方法和设备
US20220143771A1 (en) 2019-03-01 2022-05-12 Leif Andreas Andersen Automatic system for cutting tool inspection and replacement
US11413747B2 (en) * 2019-08-12 2022-08-16 Workshops for Warriors Machine learning driven computer numerical control of a robotic machine tool
CN110703690A (zh) * 2019-11-19 2020-01-17 天津紫荆长远科技发展有限公司 一种用于加工过程的智能控制与监测系统的运行方法
CN111026032B (zh) * 2019-12-26 2021-10-22 武汉重型机床集团有限公司 一种基于工业数控机床的实时监控系统及其工作方法
CN113126563A (zh) * 2019-12-31 2021-07-16 中国航发商用航空发动机有限责任公司 数控机床数据管理系统及方法
US12046910B2 (en) 2020-02-24 2024-07-23 Ossia Inc. Devices and systems for providing wirelessly chargeable batteries with improved charge capacities
US20240264577A1 (en) 2021-05-13 2024-08-08 Sumitomo Electric Industries, Ltd. Machining condition management system, machining control device, machining system, and machining program
EP4420829A1 (en) 2021-10-18 2024-08-28 Sumitomo Electric Industries, Ltd. Analysis device, analysis method, machining system, and program
CN116736792B (zh) * 2023-08-01 2024-04-05 广州亿达科技有限公司 一种嵌入cnc系统中的逻辑控制编程方法与装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101468415A (zh) 2007-12-25 2009-07-01 通用电气公司 加工控制系统
US20100324720A1 (en) * 2009-06-19 2010-12-23 Yimin Zhan Machining control system

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5953926A (ja) * 1982-09-20 1984-03-28 Mitsubishi Electric Corp 制御装置
JPH0246443B2 (ja) * 1983-08-31 1990-10-16 Colgate Palmolive Co Jutensochi
JPH0760330B2 (ja) * 1986-06-14 1995-06-28 三菱電機株式会社 複合制御装置
JPH02151909A (ja) * 1988-12-05 1990-06-11 Mitsubishi Electric Corp 産業用機械の制御装置
US4992712A (en) 1988-09-07 1991-02-12 Mitsubishi Denki Kabushiki Kaisha Control device for industrial machine
CH682182A5 (ko) * 1990-05-31 1993-07-30 Kk Holding Ag
US5127090A (en) * 1990-09-07 1992-06-30 Square D Company Map interface unit for industrial programmable logic controllers
JP3526070B2 (ja) * 1993-03-31 2004-05-10 株式会社安川電機 数値制御装置および数値制御加工方法
JP3483636B2 (ja) * 1994-12-21 2004-01-06 ファナック株式会社 工具破損・摩耗検出装置
KR0126773B1 (ko) * 1995-03-23 1998-04-07 김광호 가변적인 도피량을 갖는 구멍 가공방법
JPH11167404A (ja) * 1997-12-04 1999-06-22 Yaskawa Electric Corp 数値制御装置
JP2000084794A (ja) * 1998-09-14 2000-03-28 Makino Milling Mach Co Ltd 加工処理装置
JP4261708B2 (ja) * 1999-12-01 2009-04-30 東芝機械株式会社 Nc加工装置
JP2002236506A (ja) * 2001-02-09 2002-08-23 Toyoda Mach Works Ltd 工作機械の制御システム
JP2003326438A (ja) * 2002-02-28 2003-11-18 Fanuc Ltd 工具異常検出装置
CN101122791A (zh) * 2007-09-13 2008-02-13 上海交通大学 数控机床定位误差实时补偿装置
DE102008001727A1 (de) * 2008-05-13 2009-11-19 Robert Bosch Gmbh Werkzeugmaschine
JP2010026660A (ja) * 2008-07-16 2010-02-04 Mitsubishi Electric Corp 数値制御装置
CN101334656B (zh) * 2008-07-25 2010-08-04 华中科技大学 一种数控机床加工性能监控系统
CN201368979Y (zh) * 2009-02-13 2009-12-23 南京工大数控科技有限公司 一种数控铣齿机床切削主轴实时监控系统
US20140216170A1 (en) * 2013-02-05 2014-08-07 Georgia Tech Research Corporation Systems And Methods For Monitoring Cutting Forces In Peripheral End Milling
CN203438013U (zh) * 2013-06-05 2014-02-19 无锡天惠塑机有限公司 一种数控复合磨床
CN103823409B (zh) * 2014-02-27 2016-08-17 电子科技大学 数控机床加工状态多参数在线主动监控系统及其实现方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101468415A (zh) 2007-12-25 2009-07-01 通用电气公司 加工控制系统
US20100324720A1 (en) * 2009-06-19 2010-12-23 Yimin Zhan Machining control system

Also Published As

Publication number Publication date
US20180299865A1 (en) 2018-10-18
KR20180058833A (ko) 2018-06-01
CN108139735A (zh) 2018-06-08
US11275351B2 (en) 2022-03-15
WO2017063868A1 (en) 2017-04-20
EP3156865B1 (en) 2024-02-21
JP2018534680A (ja) 2018-11-22
EP3156865C0 (en) 2024-02-21
EP3156865A1 (en) 2017-04-19
JP7041054B2 (ja) 2022-03-23

Similar Documents

Publication Publication Date Title
KR102599158B1 (ko) 기계 공구의 프로세스 모니터링 및 적응 제어
JP2018534680A5 (ko)
US9733637B2 (en) Method and apparatus for automated configuration of a monitoring function of a machine tool
JP4221016B2 (ja) 干渉チェックを行う数値制御装置
CN102365595B (zh) 数控装置以及该数控装置的控制方法
US9823648B2 (en) Method and apparatus for an automated configuration of a monitoring function of an industrial robot
JP5143005B2 (ja) 機械における加工プロセスの最適化のための方法
WO2014155723A1 (ja) 数値制御装置
JP6209392B2 (ja) 干渉確認装置
KR20210062440A (ko) 디지털 트윈을 이용한 공작기계 제조장치 및 제조방법
CN101109947A (zh) 具备干扰检查功能的数值控制装置
JP7524230B2 (ja) 数値制御工作機械で使用するための制御装置、および制御装置を含む工作機械
US11312016B2 (en) Method and system for controlling a robot arrangement
US10459427B2 (en) Numeric controller with notification of a CAM system in the event of a change in the subroutine
US20140115561A1 (en) Apparatus and Method for Creating a Program For Computer-controlled Machines
CN109074065B (zh) 用于将数控装置匹配于待控制的机器的设备和方法以及数控装置
JP5362146B1 (ja) 数値制御装置および数値制御システム
US11086291B2 (en) Method for operating a numerically controlled production system, and production system for same
CN106843163A (zh) 一种数控系统、控制方法及控制装置
WO2014162598A1 (ja) 数値制御装置
JP2021018566A (ja) サーボ制御装置
JP7538228B2 (ja) 数値制御装置、製造機械、および製造機械の制御方法
JP7041041B2 (ja) 数値制御装置
JP2020119041A (ja) 制御装置
JPH02140810A (ja) 産業用機械の制御装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant