KR100812986B1 - Multi-channel Robot Control System - Google Patents

Multi-channel Robot Control System Download PDF

Info

Publication number
KR100812986B1
KR100812986B1 KR1020060074532A KR20060074532A KR100812986B1 KR 100812986 B1 KR100812986 B1 KR 100812986B1 KR 1020060074532 A KR1020060074532 A KR 1020060074532A KR 20060074532 A KR20060074532 A KR 20060074532A KR 100812986 B1 KR100812986 B1 KR 100812986B1
Authority
KR
South Korea
Prior art keywords
channel
module
channels
internal
communication
Prior art date
Application number
KR1020060074532A
Other languages
Korean (ko)
Other versions
KR20080013258A (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 (주)다사로봇
Priority to KR1020060074532A priority Critical patent/KR100812986B1/en
Publication of KR20080013258A publication Critical patent/KR20080013258A/en
Application granted granted Critical
Publication of KR100812986B1 publication Critical patent/KR100812986B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39001Robot, manipulator control

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Numerical Control (AREA)

Abstract

본 발명은 멀티 태스킹(Multi-tasking) 수행을 위한 다수 개의 채널이 구비되고 채널 간 협조운전이 가능한 운영체제(OS)가 구비된 멀티채널(Multi-channel) 로봇제어시스템에서, 외부인터페이스부(110), 채널모듈(120), 내부메모리(130), 및 캔통신드라이버(140)가 구비된 메인모듈(100); 상기 메인모듈(100)의 캔통신드라이버(140)와 접속하는 캔통신접속부(210)가 구비된 입출력모듈(200); 및, 상기 메인모듈(100)의 캔통신드라이버(140)와 접속하는 캔통신접속부(310)가 구비된 서버드라이버모듈(300);을 포함하되, 상기 외부인터페이스부(110)는 외부운영체제와 통신이 가능한 통신모듈이 구비되고, 상기 채널모듈(120)은 선점형 멀티 태스킹(Preemptive Multi-tasking) 방식으로 독립된 작업수행이 가능한 개별적인 채널 내부 프로세서(126)를 구비한 다수 개의 채널(125);을 포함하고, 상기 채널(125)은 각각 상기 캔통신드라이버(140)를 통하여 상기 서버드라이버모듈(300)로 작업수행의 결과 생성된 궤적이 포함된 제어신호를 출력하는 것을 특징으로 하는 멀티채널 로봇제어 시스템에 관한 것이다.The present invention provides a multi-channel robot control system equipped with an operating system (OS) capable of cooperative operation between channels provided with a plurality of channels for performing multi-tasking, and an external interface unit 110. A main module 100 including a channel module 120, an internal memory 130, and a CAN communication driver 140; An input / output module (200) provided with a can communication connector (210) for connecting with the can communication driver (140) of the main module (100); And a server driver module 300 including a can communication connection unit 310 connected to the can communication driver 140 of the main module 100, wherein the external interface unit 110 communicates with an external operating system. The communication module is provided, and the channel module 120 includes: a plurality of channels 125 having individual channel internal processors 126 capable of performing independent tasks in a preemptive multi-tasking manner; The channel 125 is a multi-channel robot control, characterized in that for outputting a control signal containing the trajectory generated as a result of the operation performed to the server driver module 300 through the can communication driver 140, respectively; It's about the system.

메인모듈, 채널모듈, 입출력모듈, 서버드라이버모듈, 캔통신드라이버, 채널 내부 프로세서, 메인프로세서, 내부좌표, 내부변수, 전역좌표, 전역변수 Main Module, Channel Module, I / O Module, Server Driver Module, CAN Communication Driver, Channel Internal Processor, Main Processor, Internal Coordinates, Internal Variables, Global Coordinates, Global Variables

Description

멀티채널 로봇제어 시스템{Multi-channel Robot Control System}Multi-channel Robot Control System

도1은 본 발명의 구체적 실시예가 적용된 로봇제어시스템의 전체 구성도이다.1 is an overall configuration diagram of a robot control system to which a specific embodiment of the present invention is applied.

도2는 채널모듈을 보다 상세히 도시하고 있다.2 shows the channel module in more detail.

도3은 하나의 채널이 로봇을 제어하는 구조도이다.3 is a structural diagram in which one channel controls the robot.

도4는 채널메니저부의 채널상태 관리 과정을 도시하고 있다.4 illustrates a channel state management process of the channel manager.

도5는 채널 내부 프로세서의 작업수행 과정을 도시하고 있다.5 shows a process of performing an in-channel processor.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

100:메인모듈100: main module

110:외부인터페이스부110: external interface unit

120:채널모듈120: channel module

121:메인프로세서부 122:채널메니저부121: main processor section 122: channel manager section

125:채널125: channel

126:채널 내부 프로세서126: channel internal processor

127:파라미터 메니저 128:파일 메니저127: Parameter manager 128: File manager

130:내부메모리130: internal memory

140:캔통신드라이버((CAN Driver)140: CAN communication driver (CAN Driver)

200:입출력모듈200: I / O module

210:캔통신접속부210: CAN communication connection

300:서버드라이버모듈300: server driver module

310:캔통신접속부310: can communication connection

11:파워컨버터11: power converter

21:전역좌표 22:전역변수21: Global coordinates 22: Global variables

31:내부좌표 32:내부변수31: internal coordinate 32: internal variable

41:축(Axis)41: Axis

기술분야Field of technology

본 발명은 멀티 태스킹(Multi-tasking) 수행을 위한 다수 개의 채널이 구비되고 채널 간 협조운전이 가능한 운영체제(OS)가 구비된 멀티채널(Multi-channel) 로봇제어 시스템에 관한 것이다.The present invention relates to a multi-channel robot control system provided with an operating system (OS) which is provided with a plurality of channels for performing multi-tasking and enables cooperative operation between channels.

종래기술Prior art

기존에 개발된 멀티 태스킹(Multi-tasking)의 개념은 하나의 CPU안에 작업계 획 지시장치를 부가하여, 작업계획 지시장치에 의해 순차적으로 일련의 작업에 따른 작업 부호를 부여하고, 그에 따른 내부영역을 할당하여 다수의 로봇을 제어하는 방식이다.The existing concept of multi-tasking adds a task plan indicating device in one CPU, assigns a work code according to a series of tasks sequentially by the task plan indicating device, and accordingly, the internal area. It is a way to control multiple robots by assigning them.

그러나 위와 같은 방식은 멀티 태스킹이라기 보다는 순차적으로 작업을 진행하면서 동기화하는 방식에 더 근접하고, 또한 다수의 로봇이 아닌 하나의 로봇에 구비된 다수의 축을 제어하는 것에 해당한다.However, the above method is closer to the method of synchronizing while working sequentially rather than multitasking, and also corresponds to controlling a plurality of axes provided in one robot instead of a plurality of robots.

즉, 여러 개의 작업이 동시에 이루어지는 것처럼 보이지만 이를 주관하고 있는 프로세서 자체가 타이머 인터럽트 등에 의한 시분할 방식에 의하여 매 순간마다 해당 작업을 각각의 작업 프로세서에 할당하여 해당 작업을 수행하는 방식이다. That is, although several tasks appear to be performed at the same time, the processor in charge of the task itself performs a task by assigning the task to each task processor at each moment by a time-division method such as a timer interrupt.

이때 작업이 수행되는 대상이 되는 축 또한 하나의 로봇에만 한정되어 있는 바, 다수의 로봇을 제어하기 위해서는 시스템 구축 비용이 과도하게 소요되는 문제가 있다. At this time, the axis on which the work is performed is also limited to only one robot, and there is a problem that excessive system construction cost is required to control a plurality of robots.

또한 멀티 태스킹을 수행하는 로봇 제어기로서 삼성전자의 SECP Series가 있는데, 이는 최대 3개 채널의 동시운전이 가능한 컨트롤러다.There is also SEC's SECP Series as a robot controller that performs multitasking, which is a controller that can operate up to three channels simultaneously.

그러나, 삼성전자의 SECP Series는 산업용 PC를 메인프레임(Main Frame)으로 하고, 외산의 상용 RTOS (Real Time OS)를 탑재하여 사용하는 것으로서, 머리를 외산 장비에 의존하고 몸만 구성한 방식이다. However, SEC's SECP Series uses an industrial PC as the main frame, and uses a commercial RTOS (Real Time OS) from a foreign country.

따라서, 고가의 산업용 PC와 상용의 외산 RTOS를 사용에 따른 시스템 구축비용이 높고, 하나의 로봇 제어기에서 멀티채널 운전이 가능한 멀티 태스킹 OS(Multi-tasking Operating System) 기능을 제공하지는 못하고 있다.Therefore, the system construction cost is high by using an expensive industrial PC and a commercial foreign RTOS, and it does not provide a multi-tasking operating system (Multi-tasking Operating System) function that enables multichannel operation in one robot controller.

상기한 종래의 문제점을 해결하기 위하여 창작된 본 발명의 목적은 다음과 같다.The object of the present invention created to solve the above-mentioned conventional problems is as follows.

첫째, 하나의 채널에서 최대 6개의 축을 구동할 수 있도록 모듈화된 로봇제어 시스템을 제공함을 본 발명의 목적으로 한다.First, it is an object of the present invention to provide a modular robot control system capable of driving up to six axes in one channel.

둘째, 개별적인 작업수행이 가능한 채널이 다수 개 구비되고, 각각의 채널이 하나의 로봇을 제어하여, 다수 개의 로봇에 의한 멀티 태스킹 수행이 가능한 로봇제어 시스템을 제공함을 본 발명의 다른 목적으로 한다.Second, it is another object of the present invention to provide a robot control system that is provided with a plurality of channels capable of performing individual work, each channel controls a single robot, to perform a multi-tasking by a plurality of robots.

셋째, 다수 개의 채널 사이에 협조운전이 가능한 로봇제어 시스템을 제공함을 본 발명의 또 다른 목적으로 한다.Third, another object of the present invention is to provide a robot control system capable of cooperative operation between a plurality of channels.

상기한 목적을 달성하기 위하여 창작된 본 발명의 구성은 다음과 같다.The configuration of the present invention created to achieve the above object is as follows.

본 발명은 멀티 태스킹(Multi-tasking) 수행을 위한 다수 개의 채널이 구비되고 채널 간 협조운전이 가능한 운영체제(OS)가 구비된 멀티채널(Multi-channel) 로봇제어시스템에서, 외부인터페이스부(110), 채널모듈(120), 내부메모리(130), 및 캔통신드라이버(140)가 구비된 메인모듈(100); 상기 메인모듈(100)의 캔통신드라이버(140)와 접속하는 캔통신접속부(210)가 구비된 입출력모듈(200); 및, 상기 메인모듈(100)의 캔통신드라이버(140)와 접속하는 캔통신접속부(310)가 구비된 서버드라이버모듈(300);을 포함하되, 상기 외부인터페이스부(110)는 외부운영체제와 통신이 가능한 통신모듈이 구비되고, 상기 채널모듈(120)은 선점형 멀티 태스킹(Preemptive Multi-tasking) 방식으로 독립된 작업수행이 가능한 개별적인 채널 내부 프로세서(126)를 구비한 다수 개의 채널(125);을 포함하고, 상기 채널(125)은 각각 상기 캔통신드라이버(140)를 통하여 상기 서버드라이버모듈(300)로 작업수행의 결과 생성된 로봇의 운동경로에 관한 궤적이 포함된 제어신호를 출력한다.The present invention provides a multi-channel robot control system equipped with an operating system (OS) capable of cooperative operation between channels provided with a plurality of channels for performing multi-tasking, and an external interface unit 110. A main module 100 including a channel module 120, an internal memory 130, and a CAN communication driver 140; An input / output module (200) provided with a can communication connector (210) for connecting with the can communication driver (140) of the main module (100); And a server driver module 300 including a can communication connection unit 310 connected to the can communication driver 140 of the main module 100, wherein the external interface unit 110 communicates with an external operating system. The communication module is provided, and the channel module 120 includes: a plurality of channels 125 having individual channel internal processors 126 capable of performing independent tasks in a preemptive multi-tasking manner; The channel 125 outputs a control signal including a trajectory of a motion path of the robot generated as a result of the work to the server driver module 300 through the can communication driver 140.

이하에서는 본 발명의 구체적 실시예를 첨부도면을 참조하여 상세히 설명한다.Hereinafter, with reference to the accompanying drawings, a specific embodiment of the present invention will be described in detail.

도1에는 본 발명의 구체적 실시예가 적용된 로봇제어시스템의 전체 구성도가 도시되어 있고, 도2에는 채널모듈이 보다 상세히 도시되어 있다.1 shows an overall configuration diagram of a robot control system to which a specific embodiment of the present invention is applied, and FIG. 2 shows a channel module in more detail.

도1에 도시된 파워컨버터(11)는 교류전원을 직류전원으로 변환하여 본 발명의 메인모듈(100), 입출력모듈(200), 및 서버드라이버모듈(300)에 공급한다.The power converter 11 shown in FIG. 1 converts AC power into DC power and supplies the same to the main module 100, the input / output module 200, and the server driver module 300 of the present invention.

메인모듈(100)의 외부인터페이스부(110)는 외부운영체제와 통신이 가능한 통신모듈이 구비되는데, 통신용으로 UART, RS232 및 RS422를 지원한다. The external interface unit 110 of the main module 100 includes a communication module capable of communicating with an external operating system, and supports UART, RS232, and RS422 for communication.

내부메모리(130)는 본 발명의 구체적 실시예에 따른 작업 수행에 필요한 각종 데이터가 저장되는데 플래쉬메모리를 포함하고 있다.The internal memory 130 includes a flash memory for storing various data required for performing a task according to a specific embodiment of the present invention.

상기 채널모듈(120)은 선점형 멀티 태스킹(Preemptive Multi-tasking) 방식으로 독립된 작업수행이 가능한 개별적인 채널 내부 프로세서(126)를 구비한 다수 개의 채널(125);을 포함하고 있다.The channel module 120 includes a plurality of channels 125 having individual channel internal processors 126 capable of performing independent tasks in a preemptive multi-tasking manner.

이러한 채널모듈(120)은 도2에 보다 구체적으로 도시되어 있는데, 도2에 도 시된 본 발명의 구체적 실시예에 의하면 채널모듈(120)에 총 4개의 채널이 포함되고 각각의 채널(125)에는 독립된 작업수행이 가능한 개별적인 채널 내부 프로세서(126)가 구비되어 있다.The channel module 120 is shown in more detail in FIG. 2. According to a specific embodiment of the present invention shown in FIG. 2, a total of four channels are included in the channel module 120, and each channel 125 is included in the channel module 120. A separate in-channel processor 126 is provided for independent work.

또한, 메인프로세서부(121)가 구비되어 상기 채널(125) 가운데 우선권이 부여된 채널 내부 프로세서(126)를 판별하여 지정한다.In addition, the main processor unit 121 is provided to identify and specify the channel internal processor 126 to which priority is given among the channels 125.

4 개의 채널을 구비하여 최대 4대의 로봇을 제어(하나의 채널에서 제어 가능한 로봇이 1대)함과 동시에 입출력모듈(200)을 통하여 입력되는 작업명령도 동시에 수행하기 위하여는 동시에 여러 개의 프로세스가 수행되어야 한다. In order to simultaneously control up to four robots with one channel (one robot that can be controlled by one channel) and simultaneously perform work commands input through the input / output module 200, several processes are performed at the same time. Should be.

이를 지원하기 위해 본 발명이 채택한 방식은 선점형 멀티태스킹(Preemptive Multitasking)으로서, 타이머 인터럽트 등에 의한 시분할 방식으로 스케쥴러가 다음 타임 슬롯에 실행할 우선순위 프로세스를 선정하는 비선점형 멀티태스킹이 아니다. 이는 RTOS를 베이스로 하여야 하므로 컴팩트한 시스템에 적합하지 않다. 선점형 멀티태스킹은 메인프로세서부(121)의 운영체제(OS)가 프로세스를 선별하여 우선권을 부여하고, 우선권을 부여받은 프로세스가 우선적으로 CPU를 사용하고 난 후, 메인프로세서부(121)에 CPU를 돌려주고, 다시 메인프로세서부(121)는 다음 우선 순위 프로세스에게 CPU를 부여한다.The method adopted by the present invention to support this is preemptive multitasking, which is not non-preemptive multitasking in which the scheduler selects a priority process to execute in the next time slot in a time division manner by a timer interrupt. This is not suitable for compact systems since it must be based on an RTOS. In the preemptive multitasking, the operating system (OS) of the main processor unit 121 selects a process and gives priority to the process, and after the process given priority uses the CPU preferentially, the CPU is applied to the main processor unit 121. In return, the main processor unit 121 grants the CPU to the next priority process.

채널모듈(120)에는 상기 메인프로세서부(121)에 의해서 관리되며 상기 채널(125) 각각의 상태를 점검하고 관리하는 채널메니저부(122)도 포함된다.The channel module 120 also includes a channel manager 122 that is managed by the main processor 121 and checks and manages the state of each of the channels 125.

채널메니저부(122)는 도4에 도시된 바와 같이 다음과 같은 순서로 채널 상태를 관리한다.The channel manager 122 manages channel states in the following order, as shown in FIG.

가. 전원 투입에 의해 초기 상태는 NOT_EXIT 로 된다.end. The initial state is NOT_EXIT by powering on.

나. 채널 초기화 프로그램에서 채널의 존재 여부를 확인하고 필요한 파라미터(Parameter)들을 참조하여 각 변수의 초기값을 설정한다. 필요한 구동 장치들의 접속을 확인하면 NULL 상태로 전환된다.I. The channel initialization program checks for the existence of the channel and sets the initial value of each variable by referring to the required parameters. Checking the connection of the necessary drive devices to the NULL state.

다. 해당 구동장치의 이상상태를 확인하였을때, ORG 신호를 발견하지 못했을때, 또는 RUN 동작 중 허용되지 않은 메모리 영역에 접근하면 ALARM 상태로 전환된다.All. When checking the abnormal state of the relevant drive device, finding no ORG signal, or accessing the memory area that is not allowed during RUN operation, the state is changed to ALARM state.

라. ALARM 조건이 해제되고 ALARM RESET 명령을 받으면 NULL 상태로 전환된다.la. When the ALARM condition is cleared and the ALARM RESET command is received, the condition is changed to NULL.

마. NULL 상태에서 JOG 명령을 받는 경우 및 JOG 상태에서 동작이 완료된 경우 상호 상태를 전환한다.hemp. When the JOG command is received in the NULL state and when the operation is completed in the JOG state, the mutual state is switched.

바. NULL 상태에서 ORG 명령을 받는 경우 및 ORG 상태에서 동작이 완료된 경우나 PAUSE 명령에 의해 정지 동작을 끝낸 후 상호 상태를 전환한다.bar. When the ORG command is received in the NULL state and the operation is completed in the ORG state, or after the stop operation is completed by the PAUSE command, the mutual state is switched.

사. NULL 과 RUNfour. NULL and RUN

아. RUN과 PAUSE Ah. RUN and PAUSE

자. PAUSE 와 NULL간의 상태 전환은 RUN, STOP, Break, SETP 명령에 의해 이루어진다. 이 동작을 위해 모션 프로그램 파일이 로딩(loading) 되었음을 알리는 플랙(flag)을 사용한다. character. State transitions between PAUSE and NULL are done by the RUN, STOP, Break, and SETP commands. For this operation, a flag is used to indicate that a motion program file has been loaded.

차. Run중에 변수 값이 범위를 벗어나는 등의 이상 상황이 발생하면 interpreter에서 Error 상태로 전환한다. 단, 이상 상황이 사용자 program에 의한 것일 가능성이 없는 경우는 ALARM 상태로 전환한다. car. If an abnormal situation occurs such that the variable value is out of range during the run, the interpreter switches to the Error state. However, if the abnormality is not likely to be caused by a user program, switch to the ALARM state.

카. Error 상태에서 Error Reset 명령을 받으면 PAUSE 상태로 전환한다.Ka. When Error Reset command is received in Error state, it is converted to PAUSE state.

타. 외부에서 ESTOP 명령이 들어오면 ESTOP 상태로 전환한다.Get. When ESTOP command is received from outside, it switches to ESTOP state.

파. ESTOP 동작 시퀀스가 완료되면 ALRAM 상태로 전환한다.wave. When the ESTOP operation sequence is completed, it switches to ALRAM state.

도2 및 도5에 도시된 바에 의하면, 상기 채널 내부 프로세서(126)는 파라미터 메니저(127)와 파일 메니저(128)로부터 상기 채널(125)의 내부 작업수행에 필요한 내부좌표와 내부변수를 가져오고, 내부좌표와 내부변수에 따라 상기 채널 내부 프로세서(126) 각각에서 작업이 수행되는 도중에 별도의 작업명령이 상기 입출력모듈(200)을 통하여 입력되면, 상기 채널(125) 각각의 내부 작업수행에만 사용되는 내부좌표(31)와 내부변수(32)를 모든 채널(125)에서 사용 가능한 전역좌표(21)와 전역변수(22)에 동기화하여 상기 채널(125) 상호 간의 위치를 확인하고 입력된 작업명령에 따라 상기 채널(125) 각각이 협조운전을 수행하게 된다.
상기한 바와 같이 내부좌표(31)과 내부변수(32)는 채널(125) 각각의 내부 작업수행에만 사용되도록 지정된 것이고, 전역좌표(21)과 전역변수(22)는 모든 채널(125)에서 사용이 가능하도록 지정된 것이다.
여기서 좌표나 변수는 로봇의 구체적인 운동경로(궤적)를 생성(계산)하기 위하여 사용되는 인자를 의미하는데, 좌표란 특정위치에 대한 데이터를 의미하고, 변수란 좌표를 제외한 나머지 데이터로서 예를 들면 공간에서 두 점 사이의 거리, 로봇의 이동속도, 가속도, 대기시간 등에 관한 값들이 해당될 수 있다.
다시 말하면, 내부좌표(31)는 (20, 30, 40)과 같이 로봇이 운동하는 경로 상의 위치를 표시하는 데이터이다. 예를 들어 채널 1이 관리하는 로봇이 (10, 0, 0)의 최초위치에서 (20, 30 ,40)의 최종위치로 이동하여야 하는 경우 최초 위치값 (10, 0, 0) 및 최종 위치값(20, 30, 40)이 채널 1의 내부좌표에 해당하게 된다. 또한 최초 위치값과 최종 위치값 사이에서 채널 1이 관리하는 로봇이 지나가야 할 경유점의 좌표값이 (15, 30, 30)라면 이 또한 채널 1의 내부좌표에 해당된다. 즉 채널 1에서 관리하는 로봇을 이동(운동)시키는 궤적을 생성하기 위해서는 이와 같은 데이터들(최초위치, 중간위치, 최종위치)이 채널 1의 내부좌표로 지정되어 입력되어야 한다.
전역좌표(21)도 특정 위치에 대한 데이터를 의미하는 것은 내부좌표(31)와 동일하며, 다만 도2에 도시된 바와 같이 내부좌표(31)와는 별도의 영역으로 지정될 뿐이다.
다시 말하면 동일한 좌표값이 내부좌표(31)로 지정되어 입력되면 해당 채널(125)의 내부에서만 인식되고 작업수행에 사용될 수 있으나, 전역좌표(21)로 지정되면 모든 채널(125)에서 인식되고 사용될 수 있다. 즉, 채널 1의 내부좌표 (20, 30, 40)로 지정되어 입력되거나 내부메모리(130)에 저장된 데이터는 채널 2에서는 불러와서 사용할 수 없다. 따라서 채널 1과 채널 2가 서로의 위치를 확인하면서 협조 운전이 필요한 경우 모든 좌표값이 각자의 내부좌표로만 지정되어 있다면 서로의 위치를 확인할 방법이 없어 협조 운전이 불가능하다.
이와 같은 경우에 (20, 30, 40)을 채널 1의 내부좌표와는 별도로 전역좌표로 지정하여 입력하거나 내부메모리(130)에 저장해 놓으면 채널 2에서도 필요한 경우 이 값을 불러와서 사용이 가능하여 채널 상호 간 협조 운전이 가능하게 된다.
다시 말하면 내부좌표 (20, 30, 40)의 공간에서의 위치와 전역좌표 (20, 30, 40)의 공간에서의 위치는 일치하는 것으로서 서로 다른 위치를 의미하는 것이 아니며, 단지 각 채널(125) 내부에서만 사용가능한 데이터로 지정되느냐, 아니면 모든 채널(125) 내부에서 사용가능한 데이터로 지정되느냐의 차이점이 있을 뿐이다.
내부변수(32)와 전역변수(22)의 관계도 이와 동일하다. 즉 어떤 데이터가 내부변수(32)로 지정되어 입력되거나 저장되면 해당 채널(125)의 내부에서만 사용이 가능하고, 동일한 데이터가 전역변수(22)로 지정되어 입력되거나 저장되면 모든 채널(125)에서 사용이 가능하게 된다.
As shown in Figs. 2 and 5, the channel internal processor 126 obtains internal coordinates and internal variables necessary for performing internal work of the channel 125 from the parameter manager 127 and the file manager 128. When a separate work command is input through the input / output module 200 while a work is performed in each of the channel internal processors 126 according to an internal coordinate and an internal variable, it is used only for performing internal work of each of the channels 125. The internal coordinates 31 and the internal variables 32 are synchronized with the global coordinates 21 and the global variables 22 available in all channels 125 to check the position between the channels 125 and input work instructions. As a result, each of the channels 125 performs a cooperative operation.
As described above, the internal coordinates 31 and the internal variables 32 are designated to be used only for the internal work of each of the channels 125, and the global coordinates 21 and the global variables 22 are used for all the channels 125. This is specified to be possible.
Here, the coordinates or variables refer to factors used to generate (calculate) the specific motion path (track) of the robot. The coordinates refer to data for a specific position, and the variable refers to data other than coordinates, for example, a space. Values related to the distance between the two points, the moving speed of the robot, the acceleration, the waiting time, etc. may be applicable.
In other words, the internal coordinate 31 is data indicating a position on the path along which the robot moves, such as (20, 30, 40). For example, if the robot managed by channel 1 has to move from the initial position of (10, 0, 0) to the final position of (20, 30, 40), the initial position value (10, 0, 0) and the final position value (20, 30, 40) corresponds to the internal coordinate of channel 1. Also, if the coordinate value of the waypoint through which the robot managed by channel 1 must pass between the initial position value and the final position value is (15, 30, 30), this also corresponds to the internal coordinate of channel 1. That is, in order to generate a trajectory for moving (movement) the robot managed in channel 1, such data (first position, intermediate position, and final position) must be inputted by designating the internal coordinate of channel 1.
The global coordinate 21 also means data for a specific position, which is the same as the internal coordinate 31, but is designated as a separate area from the internal coordinate 31 as shown in FIG. 2.
In other words, if the same coordinate value is designated and inputted into the internal coordinate 31, it is recognized only in the corresponding channel 125 and can be used for work. Can be. That is, data designated and input into the internal coordinates 20, 30, and 40 of the channel 1 or stored in the internal memory 130 may not be loaded and used in the channel 2. Therefore, if cooperative operation is necessary while channel 1 and channel 2 are checking each other's position, if all coordinate values are designated by their own internal coordinates, there is no way to check each other's position and thus cooperative operation is impossible.
In such a case, if (20, 30, 40) is input in global coordinates separately from the internal coordinates of channel 1 or stored in internal memory 130, this value can be retrieved and used if necessary in channel 2 as well. It is possible to cooperate with each other.
In other words, the position in the space of the internal coordinates 20, 30, and 40 and the position in the space of the global coordinates 20, 30, and 40 are coincident and do not mean different positions, only the respective channels 125. The only difference is whether the data is designated internally available or data available internally in all channels 125.
The relationship between the internal variable 32 and the global variable 22 is the same. That is, if any data is assigned or stored as an internal variable 32, it can be used only in the corresponding channel 125. If the same data is assigned or stored as a global variable 22, all channels 125 It becomes possible to use.

이와 같이 내부좌표(31)와 내부변수(32)를 전역좌표(21)와 전역변수(22)에 동기화하면 각기 다른 모든 축이 하나의 제어 명령을 통해 작동되도록 할 수 있다.As such, by synchronizing the internal coordinates 31 and the internal variables 32 with the global coordinates 21 and the global variables 22, all different axes can be operated through one control command.

예를 들어, 채널 1의 로봇이 A라는 위치로 이동하고 채널 2의 로봇이 B라는 위치로 이동하는 도중에 입출력모듈(200)을 통하여 별도의 명령이 입력되면 들어오면 동기화를 통하여 채널 1의 로봇과 채널 2의 로봇의 상호 위치를 참고하여(전역좌표) 원하는 만큼 보상하고 (전역변수) 다시 원래의 작업으로 복귀하는 복잡한 동기화 동작도 가능하게 된다.
다시 말하면 채널 1 및 2 각각의 내부좌표(31)와 내부변수(32)에 의하여 생성된 운동경로에 관한 궤적을 따라 채널 1의 로봇과 채널 2의 로봇이 각자의 궤적을 따라 이동하는 과정에서 상기 채널(125) 상호 간에 협조 운전이 필요한 별도의 작업명령이 채널 1 및 2에서 모두 사용가능하도록 지정된 전역좌표(21)와 전역변수(22)의 형태로 입출력모듈(200)을 통하여 입력될 수 있는데, 이러한 경우 협조 운전을 위해서 채널 1 및 2는 상호 간의 위치나 진행방향, 속도 등을 확인할 필요가 있다.
따라서 채널 1 및 2 각각의 내부 작업수행에만 사용되도록 지정된 내부좌표(31)와 내부변수(32)는 채널 1 및 2 모두에서 사용 가능하도록 지정된 전역좌표(21)와 전역변수(22)에 동기화되어야 하는데, 전역좌표(21)와 전역변수(22)에 동기화된다는 의미는 전역좌표(21)와 전역변수(22)와 동일하게 취급될 수 있음을 의미한다.
즉, 동기화된 채널 1의 내부좌표(31)와 내부변수(32)는 전역좌표(21)와 전역변수(22)로 지정된 것과 동일하게 취급되어 채널 2에서 사용이 가능하고, 동기화된 채널 2의 내부좌표(31)와 내부변수(32)도 전역좌표(21)와 전역변수(22)로 지정된 것과 동일하게 취급되어 채널 1에서 사용이 가능하다.
따라서 채널 1과 채널 2는 전역좌표(21) 및 전역변수(22)로 동기화된 각각의 내부좌표(31)와 내부변수(32)를 사용하여 상호 간의 위치나 속도, 운동방향 등을 확인하고 협조운전이 가능하게 된다.
For example, when a robot of channel 1 moves to a position A and a robot of channel 2 moves to a position B, if a separate command is input through the input / output module 200, the robot of channel 1 is synchronized with the robot of channel 1. By taking into account the mutual position of the robots in channel 2 (global coordinates), it is possible to perform complex synchronization operations that compensate as desired (global variables) and return to the original work.
In other words, the robot of channel 1 and the robot of channel 2 move along their trajectories along the trajectory of the motion path generated by the internal coordinates 31 and the internal variables 32 of the channels 1 and 2, respectively. A separate work command requiring cooperative operation between the channels 125 may be input through the input / output module 200 in the form of global coordinates 21 and global variables 22 designated to be available in both channels 1 and 2. In this case, for cooperative operation, channels 1 and 2 need to check the position, direction, speed, etc. of each other.
Therefore, internal coordinates 31 and internal variables 32 designated for use only in internal work of each of channels 1 and 2 must be synchronized to global coordinates 21 and global variables 22 designated to be available on both channels 1 and 2. In this case, the fact that the global coordinate 21 and the global variable 22 are synchronized means that the global coordinate 21 and the global variable 22 may be treated in the same manner.
That is, the internal coordinate 31 and the internal variable 32 of the synchronized channel 1 are treated the same as those specified by the global coordinate 21 and the global variable 22 and can be used in the channel 2. The internal coordinates 31 and the internal variables 32 are also treated the same as those assigned to the global coordinates 21 and the global variables 22 and can be used in channel 1.
Therefore, channel 1 and channel 2 identify and cooperate with each other by using the internal coordinates 31 and internal variables 32 synchronized with the global coordinates 21 and the global variables 22, and the position, speed, and direction of movement. Driving is possible.

파일 메니저(128)와 파라미터 메니저(127)에서 얻어온 정보는 프로그램 컴파 일러에서 컴파일하여 인식가능 형태로 변환하고, 인터프리터에서 컴파일된 사용자 프로그램을 해석한다.The information obtained from the file manager 128 and the parameter manager 127 is compiled by the program compiler, converted into a recognizable form, and interpreted by the interpreter.

이렇게 변환된 작업명령을 받아서 목표점까지 정해진 궤적이 생성되면 메인모듈(100)의 캔통신드라이버(140)와 접속된 서버드라이버모듈(300)의 캔통신접속부(320)를 통하여 제어신호를 출력하게 된다.
다시 말하면, 도1 및 도3에 도시된 바와 같이 채널(125)에서 서버드라이버모듈(300)이 제어하는 축(41) 각각의 운동경로에 관한 궤적(목표점까지 정해진 궤적)이 생성되면 이에 관한 제어신호가 캔통신드라이버(140) 및 캔통신접속부(320)를 통하여 서버드라이버모듈(300)에 전송되고, 서버드라이버모듈(300)은 전송받은 제어신호에 따라 각 축(41)의 운동을 제어하게 된다.
When the trajectory determined to the target point is generated by receiving the converted work command, the control signal is output through the can communication connection unit 320 of the server driver module 300 connected to the can communication driver 140 of the main module 100. .
In other words, as shown in FIGS. 1 and 3, when a trajectory (trajectory determined up to a target point) is generated for each movement path of each of the axes 41 controlled by the server driver module 300 in the channel 125, the related control is performed. The signal is transmitted to the server driver module 300 through the can communication driver 140 and the can communication connection unit 320, the server driver module 300 to control the movement of each axis 41 in accordance with the received control signal do.

도3에 도시된 바와 같이 하나의 채널(125)은 서버드라이버모듈(300) 3 개를 관리하고, 하나의 서버드라이버모듈(300)은 축(41) 2개의 운동을 제어하는데 각각의 축(41)에는 식별인자(ID)가 부여되어 상호 식별이 가능하다.As shown in FIG. 3, one channel 125 manages three server driver modules 300, and one server driver module 300 controls two axes 41. ) Is given an identification factor (ID) to enable mutual identification.

상기한 구성의 본 발명에 따른 기술적 효과는 다음과 같다.Technical effects according to the present invention of the above configuration is as follows.

첫째, 하나의 채널에서 최대 6개의 축을 구동할 수 있도록 모듈화된 로봇제어 시스템을 제공한다.First, it provides a modular robot control system that can drive up to six axes in one channel.

멀티 태스킹을 하기 위해서 하나의 작업은 해당 로봇이 지니고 있는 모든 축의 궤적 이동을 원할히 수행할 수 있어야 한다. 따라서 최대 6개의 서보 액추에이터를 구동할 수 있는 제어시스템을 구축할 필요가 있는데, 본 발명에서는 채널 한 개에서 6개의 축을 제어함은 물론 각각의 축마다 개별적으로 식별인자(ID)가 부여되어 있는 바, 순차적으로 X, Y, Z, R축을 사용하는 다른 로봇 제어기와는 달리 원하는 축을 선택하여 해당 로봇의 좌표계에 접목시킬 수 있다. 다시 말하면, 순서에 상관없이 사용자의 요구에 따라 원하는 로봇의 해당 축을 선택하여 제어할 수 있다. 또한, 각각의 구성요소들은 모듈화되어 필요 시 손쉽게 확장과 축소가 가능하다.In order to multitask, one task must be able to smoothly perform trajectory movement of all axes of the robot. Therefore, it is necessary to build a control system capable of driving up to six servo actuators. In the present invention, six axes are controlled from one channel, and each axis is individually provided with an identification factor (ID). Unlike other robot controllers that use X, Y, Z, and R axes sequentially, you can select the desired axis and apply it to the coordinate system of the robot. In other words, the corresponding axis of the desired robot can be selected and controlled according to the user's request regardless of the order. In addition, each component is modular and can be easily expanded and collapsed as needed.

둘째, 개별적인 작업수행이 가능한 채널이 다수 개 구비되고, 각각의 채널이 하나의 로봇을 제어하여, 다수 개의 로봇에 의한 멀티 태스킹 수행이 가능한 로봇제어 시스템을 제공한다.Second, a plurality of channels capable of performing individual tasks are provided, and each channel controls one robot to provide a robot control system capable of performing multi-tasking by a plurality of robots.

다시 말하면, 본 발명을 구성하는 채널모듈은 선점형 멀티 태스킹(Preemptive Multi-tasking) 방식으로 독립된 작업수행이 가능한 개별적인 채널 내부 프로세서를 구비한 다수 개의 채널을 포함하고, 채널은 각각 캔통신드라이버를 통하여 서버드라이버모듈로 작업수행의 결과 생성된 궤적이 포함된 제어신호를 출력하여 서버드라이버모듈을 제어하는데, 선점형 멀티 태스킹(Preemptive Multi-tasking) 방식으로 독립된 작업수행이 가능한 하나의 채널 내부 프로세서가 하나의 로봇을 제어하는 바, 다수 개의 로봇에 의한 멀티 태스킹 수행이 가능하다.In other words, the channel module constituting the present invention includes a plurality of channels having separate internal channel processors capable of independent tasks in a preemptive multi-tasking manner, and each channel is provided through a can communication driver. The server driver module controls the server driver module by outputting a control signal including the trajectory generated as a result of the task execution by the server driver module. One processor in a channel capable of performing independent tasks by preemptive multi-tasking method is provided. By controlling the robot, it is possible to perform multi-tasking by a plurality of robots.

셋째, 다수 개의 채널 사이에 협조운전이 가능한 로봇제어 시스템을 제공한다.Third, it provides a robot control system capable of cooperative operation between a plurality of channels.

다시 말하면, 내부좌표와 내부변수에 따라 상기 채널 내부 프로세서 각각에서 작업이 수행되는 도중에 별도의 작업명령이 상기 입출력모듈을 통하여 입력되면, 상기 채널 각각의 내부 작업수행에만 사용되는 내부좌표와 내부변수를 전역좌표와 전역변수에 동기화하여 상기 채널 상호 간의 위치를 확인하고 입력된 작업명령에 따라 상기 채널 각각이 협조운전을 수행할 수 있다. In other words, when a separate work command is input through the input / output module while the work is performed in each of the channel internal processors according to the internal coordinates and the internal variables, the internal coordinates and the internal variables used only for the internal work execution of each of the channels are displayed. By synchronizing to global coordinates and global variables, the positions of the channels may be identified, and each of the channels may perform a cooperative operation according to the input work command.

Claims (3)

멀티 태스킹(Multi-tasking) 수행을 위한 다수 개의 채널이 구비되고 채널 간 협조운전이 가능한 운영체제(OS)가 구비된 멀티채널(Multi-channel) 로봇제어 시스템에서,In a multi-channel robot control system equipped with an operating system (OS) that is provided with a plurality of channels for performing multi-tasking and cooperative operation between channels, 외부인터페이스부(110), 채널모듈(120), 내부메모리(130), 및 캔통신드라이버(140)가 구비된 메인모듈(100); A main module 100 having an external interface unit 110, a channel module 120, an internal memory 130, and a can communication driver 140; 상기 메인모듈(100)의 캔통신드라이버(140)와 접속하는 캔통신접속부(210)가 구비된 입출력모듈(200); 및,An input / output module (200) provided with a can communication connector (210) for connecting with the can communication driver (140) of the main module (100); And, 상기 메인모듈(100)의 캔통신드라이버(140)와 접속하는 캔통신접속부(310)가 구비된 서버드라이버모듈(300);A server driver module (300) having a can communication connection unit (310) for connecting with the can communication driver (140) of the main module (100); 을 포함하되,Including, 상기 외부인터페이스부(110)는 외부운영체제와 통신이 가능한 통신모듈이 구비되고,The external interface unit 110 is provided with a communication module that can communicate with the external operating system, 상기 채널모듈(120)은,The channel module 120, 선점형 멀티 태스킹(Preemptive Multi-tasking) 방식으로 독립된 작업수행이 가능한 개별적인 채널 내부 프로세서(126)를 구비한 다수 개의 채널(125);을 포함하고, 상기 채널(125)은 각각 상기 캔통신드라이버(140)를 통하여 상기 서버드라이버모듈(300)로 작업수행의 결과 생성된 로봇의 운동경로에 관한 궤적이 포함된 제어신호를 출력하는 것을 특징으로 하는 멀티채널 로봇제어 시스템.A plurality of channels 125 having individual channel internal processors 126 capable of independent tasks in a preemptive multi-tasking manner, wherein the channels 125 each include the can communication driver ( Multi-channel robot control system, characterized in that for outputting a control signal containing the trajectory of the movement path of the robot generated as a result of the work performed through the server driver module (300). 제1항에서, 상기 채널모듈(120)은,The method of claim 1, wherein the channel module 120, 상기 채널(125) 가운데 우선권이 부여된 채널 내부 프로세서(126)를 판별하여 지정하는 메인프로세서부(121); 및,A main processor unit 121 for identifying and designating a channel internal processor 126 to which priority is given among the channels 125; And, 상기 메인프로세서부(121)에 의해서 관리되며 상기 채널(125) 각각의 상태를 점검하고 관리하는 채널메니저부(122);A channel manager 122 which is managed by the main processor 121 and checks and manages a state of each of the channels 125; 를 더 포함하되,Include more, 상기 채널 내부 프로세서(126)는 파라미터 메니저(127)와 파일 메니저(128)로부터 상기 채널(125) 각각의 내부 작업수행에만 사용되도록 지정된 내부좌표(31)와 내부변수(32)를 가져오고, 내부좌표(31)와 내부변수(32)에 따라 상기 채널 내부 프로세서(126) 각각에서 작업이 수행되는 도중에 상기 채널(125) 상호 간에 협조운전이 필요한 별도의 작업명령이 상기 채널(125) 모두에서 사용가능하도록 지정된 전역좌표(21)와 전역변수(22)의 형태로 상기 입출력모듈(200)을 통하여 입력되면, 상기 채널(125) 각각의 내부 작업수행에만 사용되도록 지정된 내부좌표(31)와 내부변수(32)를 상기 채널(125) 모두에서 사용 가능하도록 지정된 전역좌표(21)와 전역변수(22)에 동기화하여 상기 채널(125) 상호 간의 위치를 확인하고 입력된 작업명령에 따라 상기 채널(125) 각각이 협조운전을 수행하도록 하는 것을 특징으로 하는 멀티채널 로봇제어 시스템.The channel internal processor 126 retrieves from the parameter manager 127 and the file manager 128 an internal coordinate 31 and an internal variable 32 designated to be used only for internal work of each of the channels 125. A separate work command is required in all of the channels 125 that requires cooperative operation between the channels 125 while the work is performed in each of the channel internal processors 126 according to the coordinates 31 and the internal variables 32. When input through the input / output module 200 in the form of global coordinates 21 and global variables 22 designated to be possible, the internal coordinates 31 and internal variables designated to be used only for the internal work of each of the channels 125. Synchronize (32) to the global coordinates 21 and global variables 22 designated to be available on all of the channels 125 to confirm the position between the channels 125 and the channels 125 in accordance with the input work order. ) Each of the cooperative operation Multi-channel robot control system characterized in that to perform. 제2항에서, In claim 2, 상기 채널모듈(120)에는 상기 채널(125)이 4 개 구비되고, 상기 채널(125) 각각은 상기 서버드라이버모듈(300) 3 개를 관리하고, 상기 서버드라이버모듈(300) 각각은 축(41) 2 개의 운동을 제어하되, 상기 축(41)은 각각 식별인자(ID)가 부여되어 있는 것을 특징으로 하는 멀티채널 로봇제어 시스템.The channel module 120 is provided with four channels 125, each of the channels 125 manages three server driver modules 300, and each of the server driver modules 300 has an axis 41. Multi-channel robot control system, characterized in that for controlling two movements, the axis (41) is each assigned an identification factor (ID).
KR1020060074532A 2006-08-08 2006-08-08 Multi-channel Robot Control System KR100812986B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060074532A KR100812986B1 (en) 2006-08-08 2006-08-08 Multi-channel Robot Control System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060074532A KR100812986B1 (en) 2006-08-08 2006-08-08 Multi-channel Robot Control System

Publications (2)

Publication Number Publication Date
KR20080013258A KR20080013258A (en) 2008-02-13
KR100812986B1 true KR100812986B1 (en) 2008-03-13

Family

ID=39341042

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060074532A KR100812986B1 (en) 2006-08-08 2006-08-08 Multi-channel Robot Control System

Country Status (1)

Country Link
KR (1) KR100812986B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10929182B2 (en) 2018-06-29 2021-02-23 Tata Consultancy Services Limited Systems and methods for scheduling a set of non-preemptive tasks in a multi-robot environment
KR102403635B1 (en) 2021-06-29 2022-05-30 신동호 Smart robot control system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114952820B (en) * 2021-02-25 2024-07-12 中国科学院沈阳自动化研究所 Multi-robot cooperative control implementation method and system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990009119A (en) * 1997-07-07 1999-02-05 윤종용 Control Method of Mobile Robot
KR19990018440A (en) * 1997-08-27 1999-03-15 윤종용 Robot Control Method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990009119A (en) * 1997-07-07 1999-02-05 윤종용 Control Method of Mobile Robot
KR19990018440A (en) * 1997-08-27 1999-03-15 윤종용 Robot Control Method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10929182B2 (en) 2018-06-29 2021-02-23 Tata Consultancy Services Limited Systems and methods for scheduling a set of non-preemptive tasks in a multi-robot environment
KR102403635B1 (en) 2021-06-29 2022-05-30 신동호 Smart robot control system

Also Published As

Publication number Publication date
KR20080013258A (en) 2008-02-13

Similar Documents

Publication Publication Date Title
US5204942A (en) Robot control system for controlling a set of industrial robots for cooperative operation
CN108136578B (en) Real-time equipment control system with layered architecture and real-time robot control system using same
CN109388107B (en) Control device
Kröger Opening the door to new sensor-based robot applications—The Reflexxes Motion Libraries
US20090132057A1 (en) Control system for controlling the movements of a plurality of mechanical units
Kröger et al. Manipulation primitives—A universal interface between sensor-based motion control and robot programming
US4891765A (en) Control system
US20130282148A1 (en) Motion controller
US9632493B2 (en) Method of controlling a robotic work station, as a function of synchronization states, and a corresponding robotic work station
CN111465475A (en) Method for operating a robot in a multi-agent system, robot and multi-agent system
CN102955460A (en) Control system of numerical control system master station over input/output (IO) terminal slave station
EP2665585B1 (en) System for commanding a robot
KR100812986B1 (en) Multi-channel Robot Control System
KR910002317B1 (en) Numerical control device
EP0377939A1 (en) Robot control system for controlling a set of industrial robots
WO2013113320A1 (en) System for modifying a plc program
US5239476A (en) Multi-level state language controller for multi-threaded machine control
KR101379430B1 (en) Robot actuator module having an independent function
KR100221491B1 (en) Method for controlling dual robot
EP1906284A1 (en) A control device for controlling an industrial robot
CN112612245A (en) Shaft motion control method and device, terminal device and computer readable storage medium
CN111993413A (en) Robot system capable of flexibly sharing resources
KR102686219B1 (en) How to operate a robot in a multi-agent system, robots, and multi-agent systems
JP2687119B2 (en) Numerical control unit
JPH10301608A (en) Controller for work machine

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
FPAY Annual fee payment

Payment date: 20130305

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140305

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150306

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160304

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20190305

Year of fee payment: 12