KR20220050953A - 적어도 하나의 기계, 특히 기계들의 집합체를 제어하기 위한 시스템 및 방법 - Google Patents

적어도 하나의 기계, 특히 기계들의 집합체를 제어하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20220050953A
KR20220050953A KR1020227009328A KR20227009328A KR20220050953A KR 20220050953 A KR20220050953 A KR 20220050953A KR 1020227009328 A KR1020227009328 A KR 1020227009328A KR 20227009328 A KR20227009328 A KR 20227009328A KR 20220050953 A KR20220050953 A KR 20220050953A
Authority
KR
South Korea
Prior art keywords
machine
language
control function
variables
control
Prior art date
Application number
KR1020227009328A
Other languages
English (en)
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 KR20220050953A publication Critical patent/KR20220050953A/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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/41845Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by system universality, reconfigurability, modularity
    • 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/4155Numerical 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 programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • 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/31From computer integrated manufacturing till monitoring
    • G05B2219/31455Monitor process status
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

본 발명은, 그 중에서도, 정의된 명령 변수(R1 , ... , Ri)를 포함하는 개별적인 기계어를 할당 받은 적어도 하나의 기계(Ki)를 제어하기 위한 시스템에 관련되고, 제어의 과정에서 상태의 변화(Zi)를 겪는 기계(Ki)는, 기계의 유형(Ki) 및/또는 그것에 할당된 기계어에 의존한 개별적인 기계어의 상응하는 명령 변수(R1 , ..., Ri)로 상호작용어의 명령 변수(r1 , ..., ri)를 변형하도록 설계된 제어 모듈을 갖는다.

Description

적어도 하나의 기계, 특히 기계들의 집합체를 제어하기 위한 시스템 및 방법
본 발명은 적어도 하나의 기계를 제어하기 위한 시스템 및 방법에 관한 것으로, 보다 상세하게는 기계들의 집합체(collective of machines)를 동기적으로(同期, synchronously) 또는 비동기적으로(非同期, asynchronously)로 제어하기 위한 시스템 및 방법에 관한 것이다.
기본적으로, 각각의 기계는, 후술되는 바에 따라 정의되는, 그것에 개별화된(individualized) 또는 개별적인(individual) 기계어(머신 랭귀지, machine language)를 가지며, 이는 정의된 명령 코드(command codes)로 구성된다. 이러한 기계어를 형성하는 명령 체계(command structure) 또는 명령 문법(command syntax)은 기계가 기계에 할당된 정의된 함수들(functions)을 이행하기 위하여 프로그램되거나 제어되거나 활성화(activated)될 수 있도록 설계되거나 또는, 만약 적용가능하다면, 함수들은 자율적인 플래닝(autonomous planning)에 의해 생성되고, 함수에(Which) 기초하여 기계는 그때 환경(environment)과 상호작용한다.
즉 기계어에 의하여 사용자는 기계를 제어하며 적절한 명령을 통하여 기계에 명령을 주어(give), 기계가 정의된 작업을 달성할 수 있도록 한다. 이러한 명령은 기계(설정; setup) 스스로 프로그래밍하도록 그리고 작동 동안 실제 기계(actual machine)를 제어하도록 적용(refer)할 수 있다.
서로 다른 디자인의 여러 기계들간의 상호작용에 있어서 하나의 문제는, 무엇보다도(among other things), 각각의 기계의 제조사(each manufacturer of a machine)가 그들의 기계어를 사용하고, 특별히 그것에 대해 훈련(trained)받으며 설계되고, 기계어는 그들의 프로그램 로직에 기초될 수 있으며 다른 제조사의 기계어와 양립하지 않거나 또는 제한적으로만 양립될 수 있다. 이는 또한 사용자에게 영향을 끼치며, 사용자는 각각의 기계에 대한 서로 다른 프로그래밍 및 제어 명령을 사용하고 배워야 한다.
이 경우에 있어서, 기계는 의도된 프로그래밍 언어(programming language)의 체계(framework) 이내에서 기계어(it)에 의해 이행되도록 작동에 대하여 미리 프로그램되어야 하며, 이러한 목적에 대하여 상응하는 제어 명령을 생성하기 위하여, 기계는(which) 프로그래밍된 다음에 실행될 것이다.
일반적으로, 제어 명령은, 명령 변수(command variables)로 정의된, 인간-기계 인터페이스(human-machine interface; HMI)를 통하여 입력된다(entered). 기계 내에서, 예를 들어 하나의 제조사의 로봇, HMI는 제어 명령을 디스플레이 하도록 설계될 수 있으며, 예를 들어 “이펙터(effector)를 포지션 A에서 포지션 B로 이동”, 개별적으로 설계된 GUI(graphical user interface)를 통하여, HMI(which)는 사용자가 그리고(then) 작동시킨다(actuate). 다른 제조사로부터의 로봇의 제어 시스템은 또한 이러한 제어 명령을 인지하나(knows), 다른 제조사의 로봇은 다른 알고리즘을 통하여 로봇의 입력 및 제어 시스템을 실행할 수 있으며 예를 들어 순수하게 문자대로(purely textually)와 같은, 다른 방식으로 사용자에 의해 프로그램되어야 하거나 작동되어야 한다.
결과적으로, 기계, 로봇, 등의 개별적인 제어 시스템은 하나의(one) 그리고 동일한(same) 작동을 수행하기 위하여, 서로와 다를 수 있고, 다른 프로그래밍 단계들(steps) 및/또는 명령 입력들(command inputs)은 각각의 케이스에서 사용자에 의해 이행되어야 하며, 이는 그것들의 복잡성(complexity)과 이와 같은 사용자 친근성(user-friendliness)의 조건(terms)을 다르게할 수 있다. 말할필요도 없이, 이는 부담이되며 비용 소모적이다. 사용자들은 각각의 기계에 대하여 별도로 훈련되어야 한다. 더욱이, 이는 기계(프로그래밍) 언어와 관련된 특수한 전문 지식과 마찬가지로 기계 스스로의 기능(functionality)이 요구되는 것을 증명한다.
게다가, 기계 집합체 내에서, 서로 다른 기계들이 함께 작업하는 생산 라인(production line) 같은 곳에서, 예를 들어, 각각의 기계는 독립적으로 프로그램되며 제어되고, 또한 그런 기계들은 결국 그들의 상호작용의 조건 내에서 서로 조화되어야 한다. 개별적인 기계들은 서로 소통하기는 커녕, 각기 서로 협력하도록 미리 설계되지 않았을 수 있다. 서로 다른 기계들을 통합하는 것은, 로봇들, 컨베이어들(conveyors), 기계 도구들, 센서들, 등과 같은, 생산 플랜트의 공통적인 맥락(common context) 속으로 그들이 함께 효율적으로 그리고 에러 없이 일할 수 있도록하는 것은 그러므로 매우 성가시고 시간소모적이며, 비용을 수반한다. 이러한 단계들은 반드시 항상 사전에 각각의 기계가 갖는 프로그래밍 언어로 사전에 프로그램되어야 한다. 이것은 서로 다른 프로그래밍 언어를 사용하는 몇몇의 기계의 동시 조정(simultaneous coordination)을 전혀하지 않으며, 상기 몇몇의 기계는(which) 하나 또는 몇몇 작동들의 코스에서 협동는 것이며, 가능한, 즉 이러한 기계들의 동기화(synchronization), 상기 기계들은(which) 그들의 프로그래밍 및 명령 언어에서 서로 양립되지 않는 것이고, 함께 실행되도록 작동되는 것에 관하여, 동기화는 개별적으로 실행되는 프로그래밍 동안 “라이브(live)”에 준하여 실현된다.
유사한 기계들 또는 서로 다른 기계들과 유닛의 집합체가 위치적으로 분산되어 있는 것을 또한 생각해볼 수 있으며, 따라서 현장에서 한 명의 사용자에 의해 동일한(uniform), 일치된(common) 및/또는 동시(simultaneous)에 제어는 것은 불가능하다.
이러한 배경기술에 대하여, 본 발명의 목적은 적어도 하나의 기계가 이 기계에 본래 내장된(inherent) 기계어와 독립적으로 간단한 방법으로 제어될 수 있는 것에 도음을 주는 시스템을 만들고 방법을 제공하는 것이다. 특별하게, 그러나, 본 발명의 목적은 일반적으로 서로 다른 기계들의 집합체를 제어하기 위한 것이다.
이러한 목적들은 청구항 제1항에 따른 제어를 위한 시스템 및 청구항 제8항에 따른 제어를 위한 방법에 의하여 해결된다.
첫 번째 양상에서, 본 발명은 정의된 명령 변수들(defined command variables)을 포함하는 개별적인 기계어를 할당 받는 적어도 하나의 기계를 제어하기 위한 시스템에 대한 것이며, 여기서 제어의 과정 중에(in the course of the control) 기계는 적어도 한 번의 상태 변화를 겪으며(undergoes at least one state change), 이하를 포함한다:
- 정의된 명령 변수들을 포함하는 상호작용어(interaction language)를 할당 받은 인간-기계 인터페이스(human-machine interface); 및
- 기계의 유형 및/또는 거기에 할당된 기계어에 의존하여, 상호작용어의 명령 변수에 대하여 및/또는 개별적인 기계어의 명령 변수에 대하여, 적어도 하나의 제어 함수를 생성하도록 구성된, 적어도 하나의 제어 모듈(control module);
상기 제어 함수(which)는 상호작용어의 명령 변수를 개별적인 기계어의 관련된 명령 변수(associated command variable)로 변형하도록 설계됨.
본 개시 내용의 맥락에서, “기계(machie)”는 제어될 수 있는 임의 실시예의 유닛(unit) 또는 부품(component)을 뜻하는 포괄적인 용어의 관념으로 여기서 이해되어야 하며, 기계(which)는 환경, 오브젝트(object), 워크피스(workpiece) 및/또는 인간과 상호작용 내에서 하나 또는 그 이상의 작동을 이행할 수 있으며, 예를 들어, 기계는 이하를 포함할 수 있다:
- 임의 타입의 기계 도구(machine tools)
- 고정적 또는 모바일(mobile) 로봇,
- 산업 로봇(industrial robots)
- 인간-로봇 협력(collaboration) 기능이 있거나 없는 경량 로봇(lightweight robots)
- 임의 유형의 센서
- 매니퓰레이터(manipulators)
- 컴퓨팅 유닛(computing units)
- 운송 유닛(transport units)
- 시뮬레이션(simulations)
- 가전제품(household appliances)
- 의학 및 수술 장치(medical and surgical devices)
- 분류 시스템들 및 장치(sorting systems and devices)
- 자율 주행 차량(autonomous vehicles)
- 모바일 플랫폼(mobile platforms)
- 신호 장비(signaling equipment)
- etc.,
즉, 원칙적으로, 그것의 기능 및/또는 상태 변화를 반영하는 환경에 상호작용하기 위하여 독립적인 명령 체계(independent command structure)(즉, 기계어)를 갖는 임의의 실제 또는 가상의 존재로서 사용자에 의해 사용될 수 있거나 사용되어야 하는 것.
본 개시 내용의 맥락에서 “명령 변수(Command variables)”또는 명령 코드; command codes)는 기계가 특별한 기능을 이행하도록 및/또는 특별한 작동을 실행하도록 사용자가 입력하고 야기한 것의 결과로서의 임의의 명령(instructions)을 의미하는 것으로 의도된다.
본 발명의 추가적인 양상에서, 제어 모듈은, 기계의 유형 및/또는 그와 함께 관련된 기계어에 의존하여, 상호작용어의 상태 변수에 관하여 및/또는 개별적인 기계어의 상태 변수에 관하여 적어도 하나의 역 제어 함수(inverse control function)를 생성하도록 더 구성되고, 역 제어 함수(which)는 개별적인 기계어의 상태 변수를 상호작용어의 관련된 상태 변수로 전환하도록 구성된다.
이는 한편으로는 명령의 실행 동안 제어 모듈과 함께 피드백 제어를 위하여 그리고 다른 한편으로는 상위 문맥(superordinate context)에서 기계의 탐지된 상태(detected state)의 표시 또는 예를 들어 HMI의 표시 모듈 내에서 기계의 상태 변화를 또한 위하여 제공한다(serves).
본 개시 내용의 맥락에서 “상태 변수(status variables)”또는 또한 신호 변수;signal variables, 상태 신호; state signals)에 의해 모든 변수는 이해되며, 이것(which)은 명령 변수에 의한 효과적인 기계의 상태 변화의 과정에서 그때 제어 모듈로 또는 상호작용어 내에서 변환(transformation)을 통하여 사용자에게 피드백(feedback)을 가능하게 하고, 가능한 영향을 가진 외란 변수(disturbance variables)를 포함한다.
본 발명의 핵심은 그러므로 다음의 사실에서 보여지는 바와 같으며, 임의의 제어 변수와 관련하여, 한편으로는 상호작용어와 기계어 사이의 제1 제어 함수(first control function)를 통한 외부 방향(outward) 변환 그리고, 임의의 상태 변수와 관련하여, 다른 한편으로는 기계어와 상호작용어 사이의 역 제어 함수를 통한 역방향(backward) 변환은 프로세스 컴퓨팅 모델의 실행 처럼 넓은 의미에서 본 발명에 따른 시스템 또는 방법에 의하여 프로그램에 따라(programmatically) 맵핑된다(mapped).
본 발명에 따른 방법 또는 시스템은 사용자에 의해 진입된(entered) 명령을 실행하는 기계처럼 기계로부터의 즉각적인 피드백(immediate feedback)과 함께 사용자에 의해 적어도 하나의 기계의 라이브 제어(live control)가 가능하다. 기계 프로그래밍과 비교하여, 이는 실행된 명령으로부터 결과적인 작동 이전의 시간 내에 실제로 이행되어야 하며, 본 발명에서 사용자에 의한 제어는 “온더플라이(on-the-fly)”로 이행되고, 즉, 실시간으로 이행된다. 사용자와 기계(들) 사이에는 항상 직접적인 상호작용(direct interaction)이 있다; 제어 함수와 역 제어 함수로 결과되는 코드는 기초가 되는 프로그램(program underlying) 그들이 러닝(running)하는 동안 생성된다. 한편, 본 발명에 따라 실시되는 방법은 “루프 내 프로그래밍(programming in the loop)”에 준한다.
오브젝티브 마이크로컴퓨터(objective microcomputer)의 경우처럼, 상기 오브젝티브 마이크로컴퓨터(which)는 체계 및 근본적인 컨트롤러 법칙(controller laws)의 파라미터에 의존하여 구성되고 파라미터로 나타나지는(parameterized) 컨트롤러 프로그램을 포함하고, 본 발명에 따라 가상 프로세스 컴퓨터(virtual process computer)가 실행되며, 어떻게 컨트롤러 프로그램이 구성될 수 있는지를 보장하는 시스템에 의하여, 명령 또는 상태 변수의 변환(transformation)을 위한 상응하는 컨트롤러 법칙 제어 함수(corresponding controller law the control functions)의 조건이 생성되기 위해서, 그것은 실제 추상 프로세스(actual abstraction process)를 반영한다.
기계어의 상응하는 명령 변수로 상호작용어의 명령 변수의 변환은 그러므로 유도된 상태-공간 모델(directed state-space model)처럼 일반적인 조건 내에서 묘사될 수 있다.
단순화된 조건 내에서, 본 발명에 따르면, 시스템측 제어 모듈은 시스템측 제어 모듈의 상호작용어 내에 저장된 명령 변수와 연결하기(link) 위하여 기계측 제어 모듈과 통신을 설정하고(establishes), 이것은 정의된 작동(defined operation)에 상응하고, 기계측 제어 모듈의 기계어 내에 저장된 명령 변수와 상응하고, 여기서 시스템측 제어 모듈은 기계측 제어 모듈 외부(external) 및 상위(superordinate)에 있다.
양 방향 전환의 실제 프로세스는 기본적으로 입력 변수(input variables = 상호작용어의 제어 변수)를 매핑하고, 출력 변수(output variables= 기계어 내의 조종된(manipulated)/제어된(controlled) 변수)와 상태 변수(예를 들어 상태의 변화를 통한 센서 신호), 그로써 일정한 피드백(constant feedback) 또는 백 커플링(back coupling)은 상태 변수와, 필요하다면, 유입되는 외란 변수를 통하여 제어 함수에 관해 활성화될 수 있다.
본 발명에 따른 시스템은 “동시 통역기(simultaneous translator)”에 준하여 비슷하게 기능한다.
때문에, 프로세스 컴퓨팅 모델의 작동은 결정론적으로(deterministic) 해야만 할 필요는 없다. 제어 함수를 통해 결정되는 제어 변수의 미래 아웃풋은 미리 알아야만 할 필요는 없으며, 이처럼 환경과 기계의 상호작용으로부터 또한 오직 결론은 아마, 예를 들어, 기게에 발생하는 힘에 의해 또는 기계의 이동 패턴(movement patterns)에 의해, 상태 변화에 따라서 반영된다.
프로세스 컴퓨팅 모델은 지속적인 피드백 제어를 위하여 종속된 이런 방법에 따라 실행되며, 어카운트 파라미터(account parameters) 및/또는 외란 변수가 되게 하며, 이는 상태 변화 및/또는 가상으로 생성된 변수 (virtually generated variables) 중에 측정 가능한 실제 물리적 변수일 수 있다.
시스템의 추가적인 실시예에서, 제어 모듈은 역 제어 함수에 의존하여 제어 함수가 생성되도록 및/또는 그 역이되도록 더 구성될 수 있다.
더욱이, 제어 모듈은 예를 들어, 미리 결정된 또는 실제 피드백 파라미터에 의존하여, 기계의 상태 변화 동안 제어 함수 및/또는 역 제어 함수를 변화시키도록 구성될 수 있다.
다시 말해서, 본 발명에 따른 시스템은 기능적 및/또는 시간의(temporal) 조건 내에서 오픈되도록 설계될 수 있다. 예를 들어, 승인(approvals), 즉 임의 케이스에서 기계측에서 실현되어야 하는 것, 그리고 제한(restrictions)은, 즉 임의 케이스에서 기계측에서 발생해서는 안되는 것, 그 때마다(in-line) 개별적인 제어 함수에 추가되거나 또는 개별적인 제어 함수로부터 제거될 수 있다.
프로그램 측면에서, 기계를 위해 명시된 개별적인 기계어의 개념(abstraction)은 예를 들면 명령 변수의 외부 방향 변환(outward transformation) 및 상태 변수의 역방향 변환(backward transformation)을 위한 본 발명에 따라 실현된 프로세스 컴퓨팅 모델에 의해 야기된다.
본 발명에 따라 선호되는 실시예에 있어서, 이하에 설명되는 시스템 및 방법은 다른 유형 또는 종류의 기계, 몇몇으로 구성된 제어 집합체를 위하여 특히 설계된다.
이 경우, 복수의 기계가 제공되며, 각각의 기계는 개별적인 기계어를 할당 받고, 여기서 제어 모듈은 각각의 기계를 위한 적어도 하나의 상응하는 제어 함수와 적어도 하나의 상응하는 역 제어 함수를 생성하도록 구성된다.
기계어들은 일반적으로 서로 호환되지 않거나(not compatible) 제한적으로만 호환된다.
집합체는 잠재적으로 이종의(heterogeneous) 시스템 또는 네트워크처럼 설계될 수 있고, 예를 들면 몇몇의 기계들과 로봇들로 구성된 생산 플랜트, 그것의 각각은 서로 다른 작업을 이행하며 서로 다른 제조사로부터 제조될 수 있으며(comes from different manufacturers) 그러므로 다른 것을 포함하고 다르게 사용할 수 있고, 호한되지 않는 기계어일 수 있다.
결과적으로, 본 개시 내용의 맥락에서 “집합체”는 생산 플랜트의 경우처럼, 몇가지 방식으로 서로 협동하나 서로 물리적으로 연결되지 않는 기계뿐만 아니라, 예를 들면, 그것의 말단에 그리퍼 메커니즘(gripper mechanism)을 운반하는 로봇 암처럼, 서로 물리적으로 연결된 시스템과 같이, 이해되어야 한다. 로봇 암은 제1 제조사로부터 제조되며 그것의 기계어(=로봇 언어; robot language)를 가지고, 반면 그에 마운트되는(mounted) 그리퍼 메커니즘은 제2 제조사로부터 제조되며 로봇 언어와 별개인 그것의 기계어(=그리퍼 언어; gripper language)를 가진다.
원칙적으로, 본 발명에 따른 시스템 및 방법을 실현 및 적용하기 위한 집합체의 물리적 디자인은 제한 없다. 집합체의 멤버/기계는 장소적으로 및/또는 전세계적으로 분포될 수 있으며 네트워크 또는 무선을 통해 서로 연결될 수 있다.
이러한 배경기술에 대하여, 제어 모듈은 집합체의 기계에 대하여 동기적으로 또는 비동기적으로 제어 함수 및 역 제어 함수를 생성하도록 더 구성될 수 있다.
다시 말해서, 상호작용어를 통한 사용자에 의한 집합체의 개별적인 기계의 제어는 개별적으로, 동기적으로 또는 소망하는 집합체의 순서에 의존하여 이행될 수 있다.
기계어와 기계의 수에 상관 없이, 본 발명에 따른 시스템 및 방법은 기계의 집합체 내에 존재하는 서로 다른 기계어 모두에 대하여 프로그램측에 획일적인 관념(uniform abstraction)을 이행한다.
상호 작용어는 관념 언어(abstraction language)의 유형에 준하여 기능하고, 그로써 집합체의 적어도 하나의 기계의 제어를 위한 단일 시스템(uniform system)이 제안되고, 이것은 이러한 기계 및/또는 프로그래밍 타입 내부에 존재하는(residing) 제어 시스템으로 그리고 각각의 케이스 내에서 이를 위한 의도된 기계어로 독립적으로 사용될 수 있으며, 예를 들면 로봇, 거의 서로 다른 디자인 및/또는 서로 다른 제조사로부터 유래된 것과 같은, 기계들의 모든 서로 다른 기계어와 소통하는(communicate) 것이 가능하기 때문이다.
특히, 본 발명의 시스템은 기계측 제어 시스템을 자율적으로 인지하도록 또한 설계되고, 즉, 그것의 기계어와 함께, 이것은 일반적으로(currently) 연결되거나 또는 소통할 수 있고, “번역(translation)”또는 제어 함수를 생성하기 위해 소망하는 명령 변수에 대한 필요한 변환 알고리즘(transformation algorithms)을 자율적으로 제공하기 위함이다. 그러한 자율적 “매핑(mapping)”은 적절한 학습(learning) 또는 딥 러닝 알고리즘(deep learning algorithms) 또는 신경망(neural networks)에 의하여 완료 또는 이행될 수 있다.
이런 맥락에서, 본 발명은 또한 적어도 하나의 기계를 제어하기 위한 방법에 관련되고, 기계는 정의된 명령 변수를 포함하는 개별적인 기계어를 할당 받으며, 인간-기계 인터페이스와 상호작용하는 제어 모듈에 의하여, 제어 모듈은 정의된 명령 변수를 또한 포함하는 상호작용어를 할당 받으며, 여기서, 제어의 과정 중에서, 기계는 상태 변화를 겪으며(undergoes), 이하의 단계를 포함한다:
- 기계의 유형(type of machine) 및/또는 그에 할당된 기계어를 인식하는 단계(recognizing);
- 기계의 유형 및/또는 그것에 연관된 기계어에 의존하여, 상호작용어의 명령 변수에 대하여 및/또는 개별적인 기계어의 명령 변수에 대하여 제어 함수를, 생성하는 단계(generating); 및
- 제어 함수의 적용에 의하여 상응하는 개별적인 기계어의 명령 변수로 상호작용어의 명령 변수를 전환하는 단계(transforming).
더 나아가, 상기 방법은 이하의 단계를 포함할 수 있다:
- 기계의 유형 및/또는 그에 할당된 기계어에 의존하여, 상호작용어의 상태 변수(status variable)에 대하여 및/또는 개별적인 기계어의 상태 변수에 대하여 역 제어 함수를 생성하는 단계(generating); 및
- 역 제어 함수를 이용하여 관련된 상호작용어의 상태 변수로 개별적인 기계어의 상태 변수를 전환하는 단계.
상기 방법은 제어 함수가 역 제어 함수의 함수로서 생성될 수 있거나 및/또는 그 역인 것을 또한 특징으로 한다.
방법의 또 다른 실시예에서, 제어 함수 및/또는 역 제어 함수는 기계의 상태 변화(state change) 동안 변화될(changed) 수 있다.
본 발명에 따르면, 이러한 모든 것은 근본적인 작동의 과정 또는 실행 동안에, 즉 “그때 그때(on-the fly)” 발생한다.
바람직하게는, 본 발명에 따른 방법은 이하와 같이 구성될 수 있고, 만약 복수의 기계가 구비되는 경우, 각각의 기계는 개별적인 기계어를 할당 받으며, 제어 함수 및 역 제어 함수는 각 기계에 대하여 생성되고, 여기서 제어 함수 및 역 제어 함수는 기계들에 대하여 동기적으로 또는 비동기적으로 생성될 수 있다.
사용자는 상위 레벨 시스템(higher-level system)의 단순화된 프로그래밍을 참조할 수 있고, 이는 HMI의 GUI의 단순한 작동 로직(logic)(예를 들면 대화 기반(dialog-based), 순수한 텍스트의(purely textual) 또는 그래픽 기호(graphical symbols)를 통하여)에 의해 가급적 식별될 수 있고, 기계의 개별적인 제어 시스템에 작동 명령을 전송하기(transfer) 위하여, 그것은 사용자가 기계측 내부로 더욱 상세한 제어 시스템의 가능한 매우 복잡한 로직으로 들어가지 않더라도 후자에 의해 그때 실행된다.
사용자는 그러므로 기계/로봇에 의하여 또는 심지어 기계/로봇의 집합체에 의하여 수행되는 단순한 작동을 갖기 위해서 시장의 가능한 서로 다른 기계/로봇의 제어 시스템의 모든 프로그래밍 명령을 상세하게 다루거나 그 스스로 그것들과 친숙하게 될 필요가 없으며, 단지 오직 상위 레벨 시스템의 사용을 할 수 있고, 이는 프로그래밍의 조건 내에서 보다 간단한 로직과 그러므로 더 나은 사용자 친밀성을 갖는다.
상위 레벨 시스템은 많은 기계들을 위해 일반화되어(generalized) 작동하는 시스템에 준하여 구성되고, 예를 들어 시장의 모든 로봇이다. 기계어와 마찬가지로, 기존의 또는 새로운 기계 또는 로봇 시스템 및 마찬가지로 수행되는 새로운 작동에 대단한 프로그래밍 노력 없이도, 이것은 새로운 작동 또는 제어 시스템에 쉽게 적응된다.
몇몇의 기계 종류에 걸친 작동의 단순화 뿐 아니라, 본 발명에 따른 시스템과 후술하는 바와 같이 설명되는 본 발명에 따른 방법의 공급 및 실현은 제어 내에서 상당한 시간 절약을 야기하고, 프로그래밍(설정; setup)의 조건과 기계의 작동 모두, 이것은 의미 있는 경제적 이점을 수반된다.
덧붙여, 본 발명에 따른 시스템은 동기적으로 또는 시간 지연적으로, 다른 하나와 공간적으로 분리된 기계 또는 기계 집합체를 작동시키는 것을 간단한 방법으로 가능케한다.
기계의 유형과 그들의 프로그래밍 및 명령 언어에 관계 없이, 본 발명에 따른 시스템 또는 방법은 사용자가 기계 또는 기계 집합체를 직접적으로 및 상응하는 네트워크를 통하여 실시간 온라인으로 제어하는 것을 가능하게 한다.
나아가 본 발명의 특징 및 이점은 참조된 도면을 참조하여 설명되는 실시예의 설명으로부터 명백해 질 것이다.
도 1은 인간-기계 인터페이스의 도식적 표현이다;
도 2는 제어되는 기계의 도식적 표현이다;
도 3은 하나의 기계(Ki)의 제어에 대한 본 발명에 따른 시스템의 체계의 도식적 표현이다;
도 4는 하나의 기계(Ki)의 제어에 대한 본 발명에 따른 시스템의 체계의 추가적인 도식적 표현이다;
도 5는 기계의 집합체의 도식적 표현이다;
도 6은 로봇처럼 물리적으로 연결된 집합체의 표현이다; 그리고
도 7은 기계의 집합체의 제어에 대한 본 발명에 따른 시스템의 체계의 도식적 표현이다.
도 1은 사용자가 이러한 HMI, 시각적으로(visually), 텍스트로(textually), 음성 제어에 의해, 그래픽 심볼(graphic symbols)을 통해 또는 입력 모듈(EM)을 통한 가상 현실 장치에 할당된 상호 작용어의 입력 명령(input commands)을 입력할 수 있게 도움을 주는 인간-기계 인터페이스(HMI)를 도식적으로 보여준다. 동시에, 사용자는 본 발명에 따른 시스템에 의해 제어되는 기계, 부품 또는 유닛의, 또는 제어되는 기계의 집합체의 상태에 대하여 HMI를 통해 피드백 받는다.
상호작용어는, 말하자면, 바람직하게는 시스템이 상호작용하는 모든 기계에 대하여 일률적으로(uniformly) 설계된 사용자측 명령 언어(user-side command language)를, 본 발명에 따른, 형성한다.
상응하는 명령 변수(r1, ..., ri)는, 상호작용어 내에 저장되거나 또는 미리 정의된다. 만약 제어되고자 하는 기계는, 예를 들면, 로봇일 수 있고, 명령 변수(r1)는, 예를 들면, "로봇을 포지션 A에서 포지션 B로 이동"을 의미할 수 있고, 여기서 로봇의 유형 및 그것에 내재하는(inherent) 기계어는 상호작용어 작동을 위해 시스템에게 그리고 따라서 사용자에게 알려질 필요는 없다.
기계의 기계어는 명령 변수에 의해 정의된 모든 명령(instructions)을 포함하고, 이것은 작동의 맥락에서 기계에 의해 직접적으로 실행될 수 있고, 기계가 명령 변수의 실행의 맥락에서 같은 결과로 될지라도, 이것들의 명령의 집합(set) 및 형식 체계(formal structure) 또는 문법에 의하여, 즉 명령 집합(instruction set)은, 기계에서 기계로 다르다. 예를 들어, 6축(six-axis), 제1 기계어(기계 코드, 기계 프로그램)의 제1 제조사로부터 위치-제어 로봇(position-controlled robot)은 단지 6축 처럼 가능한 것이고, 제2 기계어의 제2 제조사로부터 위치-제어 로봇은, 제2 제조사로부터 위치 로봇은(which) 기술적으로 다를 수 있고, 그것의 이펙터(effectors)를 A 포지션에서 B 포지션으로 움직이는 것의, 즉 양 로봇의 결과 또는 기능적 성능(functional performance)은 동일하나, 실행이 서로 다른 기계어의 명령 변수의 사용을 이행한다.
도 2는 본 발명에 따른 시스템에 의하여 제어되는 기계(Ki)의 구조(structure)를 도식적으로 보여준다.
이러한 기계(Ki)는 유형 및 프로그래밍에 대하여 사용자측 상호작용어와 동일하지(identical) 않은 독립적인 기계어를 갖는다. 이런 기계어에서, 이것은 다른 기계 또는 기계 종류의 기계어와 동일해야하거나 또는 호환되어야 하는 것은 아니며, 명령 변수(R1, ..., Ri)는 또한 저장되고, 이것은 그들의 실행에 대하여 상호작용어의 명령 변수에 상응하고, 즉 달성되는 결과다.
제시된 예에서, 기계어의 명령(R1)은 그로므로 또한 “로봇을 포지션 A에서 포지션 B로 이동(Move the robot from position A to position B)”을 의미하고, 그로써 명령 변수(R2 내지 Ri)은 명령(R1) 다음으로 실행되는 추가적인 명령을 포함할 수 있다.
도 3은 하나의 기계(Ki)의 제어에 대하여 본 발명에 따른 시스템의 구조를 도식적으로 보여준다.
본 발명에 따른 시스템은 설계된다, 예를 들어 소프트웨어 또는 적어도 컴퓨팅 커넬(computing kernel)에 대하여 적절한 프로그래밍에 의해, 상호작용어의 각각의 명령 변수(r1, ..., ri)에 대한 적어도 하나의 제어 함수(f1, ..., fi)를 생성하기 위하여, 이것과 함께 이런 명령 변수(r1, ..., ri)는 각각의 케이스에서 그에 할당되거나 상응하는 기계(Ki)의 기계어의 명령 변수(R1, ..., Ri)로 전환되거나(converted) 변형된다(transformed).
본 발명에 따르면, 이런 프로세스는 제어 함수(f1, ..., fi)가 유형 또는 기계(Ki)의 종류에 의존하여 소프트웨어 또는 컴퓨팅 커넬 내에서 저장되거나 실행되는 적어도 하나의 알고리즘을 통하여 결정되는 식으로 이행되고, 예를 들면 6축, 위치 제어 로봇, 이런 기계(Ki)에 내장된 개별적인(일반적으로 제조사에 의존하는) 기계어의 및/또는 그 자신의 명령의 유형의.
실제로는, 상호작용어의 명령 체계 또는 명령 문법은 기계(Ki)의 명령 체계 또는 명령 문법을 알지 않아도 된다.
기계(Ki) 그 자신은 국영 기계(state machine)의 컴퓨팅 모델처럼 묘사되고,
이는 각각의 명령 변수의 실행의 과정에서 상태 변화를 겪으며, 이것은 가장 단순한 형태로 도 3에 화살표(Zi)에 의해 예시되고(exemplified), 컴퓨팅 모델은 튜링 머신(Turing machine)처럼 묘사될 수 있다.
여기서, 상태 변화는 반드시 자연에서(in nature) 동적일(dynamic) 필요 없다. 기계(Ki)는, 예를 들면, 또한 현재 상태의 임의 유형의 센서일 수 있고, 즉 값을 측정하는, 예를 들면 “지배적인 온도 결정(determine prevailing temperature)”의 감지 안에서, 명령 변수(r2)의 의미에 의해 상호작용어 내 상응하는 입력(corresponding input)을 통하여 질문 받고(queried), 시스템의 제어 모듈은 센서의 “지배적인 온도 결정”의 감지 안에서 기계(센서) 언어의 제어 변수(R2)로 이런 입력을 맵(maps)하는 상응하는 제어 함수(f2)를 생성한다. 상태 변수 또는 상태 신호같은 온도는 그 때 도 4의 맥락 내에서 설명되는, 사용자로 정보의 디스플레이 또는 전달을 위한 제어 모듈 또는 HMI로 되돌리도록 전송(transferred back to)될 수 있다.
본 발명에 따르면, 제어 함수는 화살표(U1, ..., Ui)에 의해 상징적으로(symbolically) 표현되는, 제어 함수(f1, ..., fi)의 생성의 과정 중에 기계(Ki)의 명령 변수(R1, ..., Ri)로부터 지속적인 피드백을 제공 받도록 더욱 설계될 수 있다.
따라서, 본 발명은 사용자 정의(user-defined) 상호작용어와 미리결정된 것 사이의 소통(communication)을 위한 프로세스 컴퓨팅 모델의 가상 실행에 의해 특징지어지고, 개별화된 기계어는, 가장 넓은 의미에서 실제의 및/또는 가상의 상태 변수 및/또는 외란 변수 내 제어 루프(control loop)의 기본적인 구조는 피드백 제어 안에 포함된다. 본 발명에 따르면, 그런 제어 루프는 가상의 제어 변수(virtual controlled variables)처럼 개별적인 명령 변수와, 바람직하게는 프로그래밍에 의해 가상으로 생성된다.
제어됨으로써 발생되는 각각의 기계의 상태 변화(예를 들면 “로봇이 포지션 A에서 포지션B로 이동했다”) 여부와 어느 정도(what extent)까지인지를 인식하기 위하여, 시스템(그리고 그러므로 HMI를 통한 사용자)은 상응하는 피드백을 제공해야한다.
이는 도 4에 전형적으로 보여진다.
기계(Ki)의 기계어는 상태 변수(S1, ..., Si)의 집합(set)을 할당 받는다. 차례로 동등한(equivalent) 상태 변수(s1, ..., si)의 집합에 상응하는 이것들 상태 변수(S1, ..., Si)는 상호작용어 안에서 정의된다.
본 발명에 따르면, 적어도 하나의 제어 모듈은 이하의 방식으로 또한 구성되고,
상호작용어의 상태 변수(s1, ..., si)에 대하여, 적어도 하나의 역 제어 함수(f1 -1, ..., fi - 1)는 각각의 케이스 안에서 생성되고, 이는 상호작용어의 관련된 상태 변수(s1, ..., si)로 기계(Ki)의 상응하는 상태 변수(S1, ..., Si)를 변형하거나(transform) 매핑(map)하도록 설계된다.
여기서, 또한, 역 제어 함수의 생성(generation)은 이러한 목적을 위한 제어 모듈 내에 저장된 상응하는 알고리즘과, 프로세스 컴퓨팅 모델처럼 기계어와 상호작용어 사이의 소통을 매핑하는 것의 본 발명에 따른 접근을 따른다.
제어 함수(fi)의 발생을 통한 제어 변수에 대한 바깥으로의 변형(outward transformation)과 상태 변수에 대한 역 방향 변형(backward transformation) 모두, 이것은 제어 변수와 기능적인 관계(functional relationship)를 가질 수 있고, 역 제어 함수(fi - 1)의 생성을 통해 하나의 종류의 바람직하게는, 제어된 모든 기계(Ki)에 걸쳐 상호작용어로 인터페이스(interface)에 동일한 관념(uniform abstraction)을 산출한다(produce). 이런식으로 얻어진(도달된 위치, 온도, 등.) 정보의 출력은 적절하게 설계된 디스플레이 모듈(DM)을 통하여 사용자와 소통될 수 있다.
본 발명에 따르면, 사용자는 그러므로 기계, 부품 및/또는 기계 조립체(assemblies)를 제어하거나 그와 소통하기 위하여 정의된 명령 집합(defined command set)을 갖는 오직 하나의 상호작용어를 필요로한다. 상호작용어는 바람직하게는 사용자 친밀적이고 쉽게 이해되기 위해 설계되고, 예를 들면 GUI 상에 앱 컨트롤(app control)을 통하여, 그리고 제어되는 기계들의 모든 기계어와 관하여 독립적이고 자율적이다.
본 발명에 따른 시스템은 이것들의 알고리즘, 제어 변수와 같은, 상태 변수와 마찬가지로 가능한 외란 변수(예를 들어 잠재된 것(latencies))에 의해 실현된 프로세스 컴퓨팅 모델에 관련된 모든 가능한 가상 및/또는 실제 파라미터들을 고려하는 것에 의하여, 그러므로 시스템 안에 실행되는 미리 결정된 알고리즘의 의미에 의해 모든 서로 다른 기계어를 걸쳐 관념을 획득하도록(to achieve abstraction) 설계된다.
선호되는 실시예에서, 그러나, 시스템은 기계들, 부품들 또는 유닛들이 가급적 잠재적으로 이종적으로 분포한 집합체를 제어하기 위해 사용된다.
도 5는 그런 기계들(K1 내지 K9)로 구성된 집합체(collective)를 도식적으로 보여준다.
각각의 기계(K1 내지 K9)는 제어의 과정에서 발생하는, 상태 변화(Z1 to Z9)를 경험한다.
기계들 그들 스스로는 기능적으로 관련되어야 하는 것은 아니고 서로 다른 장소에 위치될 수 있다. 그러나, 예를 들면 일반적인 생산 플랜트의 맥락에서, 화살표들(A, B)에 의해 전형적으로 표현되는 호환되는 기계어를 가지는 것 없이 또한 함께 일 할 수 있다. 예를 들면, 기계(K8)는 , 컨베이어(K9)로부터 워크피스(workpieces)를 제거하고 기계 가공(machining) 후에 그것을 그들에게 돌려주는 로봇(K7)에 의해, 로드되는(loaded) 기계 도구일 수 있다.
비록 기계들(K7 내지 K9) 그들 스스로가 다른, 서로 호환되지 않는 기계어들을 갖더라도, 서로에 대한 기계의 소통, 그들을 제어하는 그리고, 필요하다면, 또한 프로그래밍은 모든 기계(K7 내지 K9)를 위한 단일한 명령 언어(uniform command language)처럼 상호작용어를 갖는 본 발명의 방법에 따른 관념 원칙(abstraction principle)을 통해 이행된다.
그러나, 집합체는 하나의 몇몇 부품들로 또한 되는, 기능적으로 상호작용하는 독립적인 기계, 이하와 같은, 예를 들면, 그것의 다른 제조사의 말단(distal end) 그리퍼 메커니즘(K5)(gripper mechanism)에 운반되는 어느 제조사의 로봇 암(K3), 이는 도 6에 전형적으로 보여지고, 그래서 로봇 암(K3), 또는 그것의 제어/기계 언어, 그리고 그리퍼 메커니즘(K5), 또는 그것의 제어/기계 언어,는 서로로부터 부분적으로만 정보를 갖거나 정보를 갖지 않을 수 있다.
도 7은 본 발명에 따른 방법에 따라 집합체의 제어를 도식적으로 보여준다.
각각의 기계(K1및 K2)는 그들의 기계어에 명령 변수의 집합((R1, ..., Ri)K1 및 (R1, ..., Ri)K2)을 포함한다. 마찬가지로, 제어의 결과(예를 들면, 변화된 온도)처럼 상태 변화에 의해 이미 존재하거나(예를 들면, 기존 온도; existing temperature) 단지 설정된, 상태 변수의 집합((S1, ..., Si)K1 및 (S1, ..., Si)K2)은 각각의 기계(K1 및 K2)로 할당된다.
본 발명에 따르면, 그러므로, 도 3 및 4에 연결에서 이전에 설명한 것처럼, 기계(K1)를 위한 상응하는 제어 함수(f1 - fi)의 집합(F1)과 기계(K2)를 위한 제어 함수(f1 - fi)의 집합(F2)이 각각의 제어 변수와 기계(K1)를 위한 상응하는 역 제어 함수(f1 -1 - fi - 1)의 집합(F1 -1) 에 대하여 생성되고 그리고 기계(K2)를 위한 역 제어 함수(f1 -1 - fi - 1)의 집합(F2 -1)이 각각의 상태 변수에 대하여 생성된다.
이것은 모든 기계의 종류 또는 유형 및 그들의 기계어에 걸쳐 실현되도록 획일적인 관념을 허락한다.
개별적인 제어 함수의 생성은 미리 정의된 및/또는 적용 가능한 및/또는 (딥) 러닝 알고리즘을 통하여 가능하고, 이것은 제어 모듈(소프트웨어, 컴퓨팅 커넬)에서 실행된다. 이것은 일정한 상호작용 모델(formal interaction model)을 생성하고, 즉 상호작용 제어의 유형(type of interaction control), 이것과 함께 사용자는 그들의 기계어의 조건 안에서 서로 필연적으로 호환되지 않는, 개별적인, 즉 비동기적으로, 또는 동기적으로, 서로 다른 기계를 작동시킬 수 있고, 마찬가지로, 예를 들면, 서로 다른 기계들로 구성된 생산 플랜트에서, 이들 기계들은 상위 프로세스 맥락(higher process context)에서 통합되도록 한다.

Claims (16)

  1. 적어도 하나의 기계(Ki)를 제어하기 위한 시스템에 있어서, 상기 기계(Ki)는 정의된 명령 변수(command variables)(R1 , ..., Ri)를 포함하는 개별적인(individual) 기계어(machine language)를 할당받고, 상기 기계(Ki)는 제어 과정(the course of the control)에서 상태 변화(Zi) 되고(undergoes),
    정의된 명령 변수(r1 , ..., ri)를 포함하는 상호작용어(interaction language)와 관련된 인간-기계 인터페이스(human-machine interface; HMI); 및
    상기 기계(Ki)의 유형 및/또는 상기 기계(Ki))에 할당된 상기 기계어에 따라, 상기 상호작용어의 명령 변수(r1 , ..., ri)에 대하여 및/또는 상기 개별적인 기계어의 명령 변수(R1 , ..., Ri)에 대하여 제어 함수(control function)(f1 , ..., fi)를 생성하도록(to generate) 구성되며, 상기 제어 함수는 상기 상호작용어의 명령 변수(r1 , ..., ri)를 상기 개별적인 상기 기계어의 관련된 명령 변수(R1 , ..., Ri)로 전환하도록(to transform) 설계된, 제어 모듈(control module);을 포함하는, 적어도 하나의 기계(Ki)를 제어하기 위한 시스템.
  2. 제1항에 있어서,
    상기 제어 모듈은 상기 기계(Ki)의 유형 및/또는 상기 기계(Ki)에 할당된 상기 기계어에 따라, 상기 상호작용어의 상태 변수(status variable)(s1 , ..., si)에 대하여 및/또는 상기 개별적인 기계어의 상태 변수(S1 , ..., Si)에 대하여 역 제어 함수(inverse control function)(f1 - 1 , ..., fi - 1)를 생성하도록 구성되며, 상기 역 제어 함수는 상기 개별적인 기계어의 상태 변수(S1 , ..., Si)를 상기 상호작용어의 관련된 상태 변수(s1 , ..., si)로 전환하도록 설계된, 적어도 하나의 기계(Ki)를 제어하기 위한 시스템.
  3. 제2항에 있어서,
    상기 제어 모듈은 상기 역 제어 함수(f1 - 1 , ..., fi - 1)에 따라 상기 제어 함수(f1 , ..., fi)를 생성하도록 및/또는 상기 제어 함수(f1 , ..., fi)에 따라 상기 역 제어 함수(f1 - 1 , ..., fi - 1)를 생성하도록 구성되는, 적어도 하나의 기계(Ki)를 제어하기 위한 시스템.
  4. 제2항 또는 제3항에 있어서,
    상기 제어 모듈은 상기 기계(Ki)의 상기 상태 변화 동안 상기 제어 함수(f1 , ..., fi) 및/또는 상기 역 제어 함수(f1 - 1 , ..., fi - 1)를 변화시키도록 구성되는, 적어도 하나의 기계(Ki)를 제어하기 위한 시스템.
  5. 제2항 내지 제4항 중에 어느 한 항에 있어서,
    복수의 기계(K1 , ..., Ki)가 구비되고, 상기 복수의 기계(K1 , ..., Ki) 각각은 개별적인 기계어를 할당받으며, 상기 제어 모듈은 각각의 기계(K1 , ..., Ki)에 대하여 상기 제어 함수(f1 , ..., fi) 및 상기 역 제어 함수(f1 - 1 , ..., fi - 1)를 생성하도록 설계된, 적어도 하나의 기계(Ki)를 제어하기 위한 시스템.
  6. 제5항에 있어서,
    상기 제어 모듈은 상기 기계(K1 , ..., Ki)에 대하여 동기적으로 또는 비동기적으로 상기 제어 함수(f1 , ..., fi) 및 상기 역 제어 함수(f1 - 1 , ..., fi - 1)를 생성하도록 구성되는, 적어도 하나의 기계(Ki)를 제어하기 위한 시스템.
  7. 제1항 내지 제6항 중에 어느 한 항에 있어서,
    상기 적어도 하나의 상기 기계(Ki)는 로봇 또는 로봇의 일부인, 적어도 하나의 기계(Ki)를 제어하기 위한 시스템.
  8. 적어도 하나의 기계(Ki)를 제어하기 위한 방법에 있어서, 상기 기계(Ki)는 정의된 명령 변수(command variables)(R1 ,..., Ri)를 포함하는 개별적인(individual) 기계어(machine language)를 할당받고, 인간-기계 인터페이스(human-machine interface; HMI)와 상호 작용하는 제어 모듈에 의하여, 상기 인간-기계 인터페이스는 정의된 명령 변수(r1 ,..., ri)를 포함하는 상호작용어를 할당받으며, 상기 기계(Ki)가 제어 과정(the course of the control)에서 상태 변화(Zi) 되고(undergoes),
    상기 기계의 유형(Ki) 및/또는 상기 기계에 할당된 상기 기계어를 인식하는(recognizing) 단계;
    상기 기계의 유형(Ki) 및/또는 상기 기계에 함께 할당된 상기 기계어에 따라, 상기 상호작용어의 명령 변수(r1 ,..., ri)에 대하여 및/또는 상기 개별적인 기계어의 명령 변수(R1 ,..., Ri)에 대하여 제어 함수(f1 , ..., fi)를 생성하는(generating) 단계; 및
    상기 제어 함수(f1 , ..., fi)를 이용하여 상기 상호작용어의 명령 변수(r1 ,..., ri)를 관련된 상기 개별적인 기계어의 명령 변수(R1 ,..., Ri)로 전환하는 단계;를 포함하는, 적어도 하나의 기계(Ki)를 제어하기 위한 방법.
  9. 제8항에 있어서,
    상기 기계의 유형 및/또는 상기 기계와 함께 할당된 상기 기계어에 의존하여, 상기 상호작용어의 상태 변수(s1 ,..., si)에 대하여 및/또는 상기 개별적인 기계어의 상태 변수(S1 ,..., Si)에 대하여 역 제어 함수(f1 - 1 , ..., fi - 1)를 생성하는 단계; 및
    상기 역 제어 함수(f1 - 1 , ..., fi - 1)를 이용하여 상기 개별적인 기계어의 상태 변수(S1 ,..., Si)를 관련된 상기 상호작용어의 상태 변수(s1 ,..., si)로 전환하는 단계;를 더 포함하는, 적어도 하나의 기계(Ki)를 제어하기 위한 방법.
  10. 제9항에 있어서,
    상기 제어 함수(f1 , ..., fi)는 상기 역 제어 함수(f1 - 1 , ..., fi - 1)에 따라 생성 및/또는 상기 역 제어 함수(f1 - 1 , ..., fi - 1)는 상기 제어 함수(f1 , ..., fi)에 따라 생성되는, 적어도 하나의 기계(Ki)를 제어하기 위한 방법.
  11. 제9항 내지 제10항에 있어서,
    상기 제어 함수(f1 , ..., fi) 및/또는 상기 역 제어 함수(f1 - 1 , ..., fi - 1)는 상기 기계(Ki)의 상기 상태 변화(Zi) 동안 변화되는, 적어도 하나의 기계(Ki)를 제어하기 위한 방법.
  12. 제9항 내지 제11항 중에 어느 한 항에 있어서,
    복수의 기계(K1 , ..., Ki)가 구비되고, 상기 복수의 기계(K1 , ..., Ki) 각각은 개별적인 상기 기계어를 할당받으며,
    각각의 기계(K1 , ..., Ki)에 대하여 상기 제어 함수(f1 , ..., fi) 및 상기 역 제어 함수(f1 - 1 , ..., fi - 1)를 생성하는 단계;를 포함하고, 상기 제어 함수(f1 , ..., fi) 및 상기 역 제어 함수(f1 - 1 , ..., fi - 1)는 상기 기계(K1 , ..., Ki)에 관하여 동기적으로 또는 비동기적으로 생성되는, 적어도 하나의 기계(Ki)를 제어하기 위한 방법.
  13. 데이터 처리 장치를 포함하는 컴퓨터 시스템에 있어서, 상기 데이터 처리 장치는 상기 데이터 처리 장치에 대하여 전술된 제8항 내지 제12항 중에 어느 한 항에 따른 방법을 이행하도록 구성된, 컴퓨터 시스템.
  14. 전기적으로 판독 가능한(readable) 제어 신호를 갖는 디지털 저장 매체에 있어서, 상기 제어 신호는 전술된 제8항 내지 제12항 중에 어느 한 항에 따른 방법을 이행하는 프로그램 작동이 가능한(programmable) 컴퓨터 시스템과 상호 작용 가능한, 디지털 저장 매체.
  15. 전술된 제8항 내지 제12항 중에 어느 한 항의 방법을 이행하기 위한 기계-판독 가능한 매체에 저장된 프로그램 코드를 포함하는 컴퓨터 프로그램 제품에 있어서, 상기 프로그램 코드는 데이터 처리 장치에서 실행되는, 컴퓨터 프로그램 제품.
  16. 전술된 제8항 내지 제12항 중에 어느 한 항의 방법을 수행하기 위한 프로그램 코드를 포함하는 컴퓨터 프로그램에 있어서, 상기 프로그램은 데이터 처리 장치에 의해 작동하는(runs), 컴퓨터 프로그램.
KR1020227009328A 2019-08-20 2020-08-20 적어도 하나의 기계, 특히 기계들의 집합체를 제어하기 위한 시스템 및 방법 KR20220050953A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102019005787.2 2019-08-20
DE102019005787.2A DE102019005787A1 (de) 2019-08-20 2019-08-20 System und Verfahren zur Steuerung zumindest einer Maschine, insbesondere eines Kollektivs von Maschinen
PCT/EP2020/073341 WO2021032841A1 (de) 2019-08-20 2020-08-20 System und verfahren zur steuerung zumindest einer maschine, insbesondere eines kollektivs von maschinen

Publications (1)

Publication Number Publication Date
KR20220050953A true KR20220050953A (ko) 2022-04-25

Family

ID=72292493

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227009328A KR20220050953A (ko) 2019-08-20 2020-08-20 적어도 하나의 기계, 특히 기계들의 집합체를 제어하기 위한 시스템 및 방법

Country Status (7)

Country Link
US (1) US20220283568A1 (ko)
EP (1) EP4018275A1 (ko)
JP (1) JP2022545803A (ko)
KR (1) KR20220050953A (ko)
CN (1) CN114375427A (ko)
DE (1) DE102019005787A1 (ko)
WO (1) WO2021032841A1 (ko)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3668653A (en) * 1968-10-22 1972-06-06 Sundstrad Corp Control system
GB2350442A (en) * 1999-05-18 2000-11-29 Falcon Machine Tools Co Ltd Computerised numerical controller with profile path editor
DE102012217573A1 (de) * 2012-09-27 2014-03-27 Krones Ag Bediensystem für eine Maschine
US9308647B2 (en) * 2014-06-03 2016-04-12 Bot & Dolly, Llc Systems and methods for instructing robotic operation
US10675761B2 (en) * 2016-10-14 2020-06-09 Magic Leap, Inc. Mode architecture for general purpose robotics
DE102019100766A1 (de) * 2018-08-07 2020-02-13 Still Gmbh Fernbedienbares Flurförderzeug

Also Published As

Publication number Publication date
US20220283568A1 (en) 2022-09-08
DE102019005787A1 (de) 2021-02-25
WO2021032841A1 (de) 2021-02-25
EP4018275A1 (de) 2022-06-29
CN114375427A (zh) 2022-04-19
JP2022545803A (ja) 2022-10-31

Similar Documents

Publication Publication Date Title
JP6868574B2 (ja) 産業用ロボットをエンドユーザがプログラミングするための方法とその実行のためのソフトウェアが備えられたプログラム可能なロボット
Suh et al. A framework for an intelligent CNC and data model
CN100460159C (zh) 工业机器人离线编程系统
CN111061232A (zh) 基于数字孪生的生产线设计与优化方法
KR102586646B1 (ko) 공작기계 시스템
WO2006025775A1 (en) A control system for real time applications for cooperative industrial robots
CN107024902A (zh) 通过公共语言规格的程序驱动多种生产装置的生产系统
Erős et al. Integrated virtual commissioning of a ROS2-based collaborative and intelligent automation system
CN105511400A (zh) 一种冲压机器人控制系统
US10678231B2 (en) Production controller equipped with function of identifying cause upon operation stop of production facility including manufacturing facilities
Matthaiakis et al. Flexible programming tool enabling synergy between human and robot
JP5291727B2 (ja) 多軸同期動作機械のプログラム変換モジュール及びプログラム変換方法
CN106557072B (zh) 数控加工设备执行程序的辅助编程方法
CN109074065B (zh) 用于将数控装置匹配于待控制的机器的设备和方法以及数控装置
TW202001871A (zh) 工作機械語音控制系統
US20220283568A1 (en) System and method for controlling at least one machine, more particularly a collective of machines
Ashley A mosaic for machine tools
CN114505853A (zh) 一种工业机器人的远程分层管控方法及系统
Živanović et al. Programming of machine tools and robots for machining using STEP-NC in the era of Industry 4.0
Xiao et al. Assembly language design and development for reconfigurable flexible assembly line
Weston et al. A new concept in machine control
CN107203191B (zh) 多伺服系统预演协同控制系统及控制方法
Slavković et al. Robot machining simulation in step-nc machine environment
Rauch et al. A manufacturing system for advanced multi-process manufacturing based on STEP-NC
Palchaudhary et al. Path Planning and Path Optimization for Industrial Robots Using Moveit! and ROS Melodic