KR19980067075A - How to express robot control language - Google Patents
How to express robot control language Download PDFInfo
- Publication number
- KR19980067075A KR19980067075A KR1019970002942A KR19970002942A KR19980067075A KR 19980067075 A KR19980067075 A KR 19980067075A KR 1019970002942 A KR1019970002942 A KR 1019970002942A KR 19970002942 A KR19970002942 A KR 19970002942A KR 19980067075 A KR19980067075 A KR 19980067075A
- Authority
- KR
- South Korea
- Prior art keywords
- robot
- control language
- robot control
- representing
- work
- Prior art date
Links
Abstract
여러대의 로봇이 동시에 동작할때 각 로봇이 수행해야 할 일련의 작업들을 그림으로 표현된 흐름도를 구성하여, 각 단위 작업들간의 전후관계 조건을 표현함으로써 여러대의 로봇 작업을 용이하게 표현하기 위한 로봇 제어언어의 표현방법은, 로봇의 작업 수행 단위동작, 단위동작들 간의 조건, 단위동작 및 조건들의 연결관계를 나타내는 로봇 제어언어를 그림으로 정의하는 단계와, 로봇의 작업 수행에 따른 정의된 단위동작의 제어언어에 해당하는 동작을 정의하는 단계와, 정의된 로봇 제어언어에 의해 로봇의 수행작업 흐름에 따라 작업의 전후관계를 그림으로 나타내는 단계를 포함하여 이루어진다.When several robots operate at the same time, a series of tasks that each robot should perform consists of a pictorial flow chart, and the robot control to easily express the work of several robots by expressing the conditions of front and back relationship between each unit work. The method of expressing a language may include defining a robot control language representing a robot's work performing unit motion, conditions between the unit motions, a unit motion and a connection relationship between conditions, and a method of defining a unit motion according to the robot's work. Defining an operation corresponding to the control language, and the step of showing the front and rear relationship of the work according to the flow of the robot performing the operation by the defined robot control language.
Description
본 발명은 로봇 제어 언어에 관한 것으로서, 특히 여러대의 로봇이 동시에 작업을 수행할때 이를 용이하게 표현하기 위한 로봇 제어언어의 표현방법에 관한 것이다.The present invention relates to a robot control language, and more particularly, to a method of expressing a robot control language for easily expressing when several robots simultaneously perform a task.
일반적으로 로봇에 원하는 작업을 수행하도록 하기 위해서는 로봇이 수행해야 할 작업을 어떤 형태로 표현하고 이를 로봇 제어기에 알려주어야 한다. 이러한 로봇의 작업을 표현하기 위한 방법으로 현재까지 여러 가지의 로봇 제어 언어들이 개발 되었다.In general, in order for a robot to perform a desired task, it is necessary to express the task to be performed by the robot in some form and inform the robot controller of this. As a way to express the robot's work, various robot control languages have been developed.
지금까지 개발된 종래 기술에 따른 로봇 제어 언어는 로봇이 수행할 수 있는 동작들을 표현하는 명령어를 정의하고 이들 명령어를 이용하여 로봇이 수행할 작업을 작업 순서에 따라 정의된 문법에 맞게 기술하는 로봇 프로그램을 작성한다. 예를 들어 로봇 A가 작업 공간상의 지역 1에 있는 물체를 지역 2로 옮기는 작업을 수행하기 위한 로봇 프로그램을 설명하면 다음과 같다.The robot control language according to the prior art developed so far defines a robot that expresses operations that the robot can perform and uses these commands to describe the robot's tasks in accordance with the grammar defined in the work order. Write. For example, robot A describes a robot program for performing a task of moving an object in area 1 of the work space to area 2 as follows.
robot A move joint to location 1robot A move joint to location 1
robot A grasp handrobot A grasp hand
robot A move joint to location 2robot A move joint to location 2
robot A release handrobot A release hand
이와 같이 표현된 로봇 프로그램은 문자 편집기를 이용하여 사용자가 작성한다. 이렇게 작성된 로봇 프로그램은 두가지 방법에 의해 실행되는데, 먼저 컴파일러(Compiler)가 로봇 프로그램을 컴파일하여 실행 화일을 생성하게 되면 이를 실행하여 로봇을 구동하는 컴파일 방식이 있다. 그리고, 다른 방법은 인터프리터(Interpreter)가 로봇 프로그램을 한줄씩 번역하여 직접 실행시키는 인터프리터 방식이다. 이의 두가지 방법에 의해 실행되어 로봇은 작업을 수행한다.The robot program expressed in this way is created by the user using a text editor. The robot program written in this way is executed by two methods. First, there is a compilation method in which a compiler compiles a robot program to generate an executable file and then runs the robot by executing it. Another method is an interpreter method in which an interpreter translates a robot program line by line and executes it directly. It is executed in two ways so that the robot performs the task.
한편, 로봇이 수행하는 작업의 종류가 다양해지고 복잡해짐에 따라 여러대의 로봇이 동시에 수행하여야 하는 작업들이 생겨남에 따라 로봇 제어언어에 동시 동작 명령어를 추가한 로봇 프로그램 언어들이 개발되었다. 그예를 나타내면 다음과 같다.On the other hand, as the types of tasks performed by the robots are diversified and complicated, the tasks that multiple robots have to perform at the same time have arisen. Therefore, robot programming languages have been developed that add simultaneous operation instructions to the robot control language. An example is as follows.
cobegincobegin
robot A move to location 1robot A move to location 1
robot B move to location 2robot B move to location 2
coendcoend
이와같은 명령은 cobegin - coend 사이의 명령을 동시에 수행하는 명령으로 두대의 로봇 프로그램에는 로봇이 각각 일련의 작업을 동시에 수행하며, 각 로봇의 동작들간에 이루어져야 하는 전후관계들의 조건을 제한적으로 표현할 수 있다.Such a command is a command that simultaneously executes a cobegin-coend command. In two robot programs, a robot performs a series of tasks at the same time, and can express the conditions of the contexts that must be made between the operations of each robot. .
종래 기술에 따른 로봇 제어언어는 로봇이 수행할 작업을 작업의 진행 순서에 따라 순차적으로 문자에 의해 기술함으로써, 한대의 로봇을 프로그램 하는데는 유용하게 사용되었지만 작업의 진행 순서에 따라 기술하는 종래의 로봇 제어언어의 고유 특성상 2대, 특히 3대 이상의 로봇이 동시에 수행하는 작업을 문자로 표현된 종래의 제어언어로 기술 하기에는 용이하지 못한 문제점이 있다.The robot control language according to the prior art describes a task to be performed by the robot in sequence according to the order of work, which is useful for programming one robot, but the conventional robot described according to the order of work. Due to the inherent characteristics of the control language, there is a problem that it is not easy to describe a task performed by two, in particular, three or more robots at the same time in a conventional control language expressed in letters.
따라서, 본 발명은 종래 기술의 제반 문제점을 해결하기 위하여 안출한 것으로서, 본 발명의 목적은 여러대의 로봇이 동시에 동작할때 각 로봇이 수행해야 할 일련의 작업들을 그림으로 표현된 흐름도로 구성하여 각 단위 작업들간의 전후관계 조건을 표현함으로써 로봇 작업을 용이하게 표현하수 있는 로봇 제어언어의 표현방법을 제공함에 있다.Accordingly, the present invention has been made to solve the problems of the prior art, the object of the present invention is to construct a series of tasks to be performed by each robot when a plurality of robots operating at the same time by configuring a flow chart represented by each The present invention provides a method of expressing a robot control language that can easily express a robot task by expressing a relationship between the unit tasks.
도 1은 본 발명에 따른 로봇이 수행할 단위 동작을 나타내는 플레이스를 나타낸 도면,1 is a view showing a place representing a unit operation to be performed by a robot according to the present invention,
도 2는 본 발명에 따른 로봇의 동작 조건을 나타내는 트랜지션을 나타낸 도면,2 is a view showing a transition indicating an operating condition of a robot according to the present invention;
도 3은 본 발명에 따른 로봇의 동시 동작 명령을 나타낸 일실시예,3 is an embodiment showing a simultaneous operation command of a robot according to the present invention;
도 4는 본 발명에 따른 로봇의 조건부 동작 명령을 나타낸 일실시예,Figure 4 is an embodiment showing a conditional operation command of the robot according to the present invention,
도 5는 본 발명에 따른 로봇 제어언어의 표현방법에 의해 두대의 로봇과 두대의 부품 공급장치를 이용한 조립작업을 표현한 도면,5 is a view showing an assembly operation using two robots and two parts supply apparatus by the method of expressing the robot control language according to the present invention;
도 6은 도 5의 각 플레이스가 의미하는 로봇의 동작을 나타낸 도면이다.FIG. 6 is a diagram illustrating an operation of a robot represented by each place of FIG. 5.
도면의 주요 부분에 대한 부호의 설명Explanation of symbols for the main parts of the drawings
10 : 플레이스 11 : 트랜지션10: Place 11: Transition
12 : 화살표12: arrow
본 발명에 따른 로봇 제어언어의 표현방법은 로봇의 작업 수행 단위동작, 단위동작들 간의 조건, 단위동작 및 조건들의 연결관계를 나타내는 로봇 제어언어를 그림으로 정의하는 단계와, 로봇의 작업 수행에 따른 정의된 단위동작의 제어언어에 해당하는 동작을 정의하는 단계와, 정의된 로봇 제어언어에 의해 로봇의 수행작업 흐름에 따라 작업의 전후관계를 그림으로 나타내는 단계를 포함하여 이루어짐에 그 특징이 있다.According to the present invention, there is provided a method of expressing a robot control language by defining a robot control language representing a robot operation language, a condition between unit motions, a condition between unit motions, and a connection between unit motions and conditions. It includes the steps of defining an operation corresponding to the control language of the defined unit motion, and the step of showing the front and rear relationship of the job according to the flow of execution of the robot by the defined robot control language.
이하, 본 발명에 따른 로봇 제어언어의 표현방법을 첨부도면을 참조하여 상세히 설명하면 다음과 같다.Hereinafter, a method of expressing a robot control language according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명에 따른 로봇이 수행할 단위 동작을 나타내는 플레이스를 나타낸 도면이고, 도 2는 본 발명에 따른 로봇의 동작 조건을 나타내는 트랜지션을 나타낸 도면이다. 그리고, 도 3은 본 발명에 따른 로봇의 동시 동작 명령을 나타낸 일실시예이고, 도 4는 본 발명에 따른 로봇의 조건부 동작 명령을 나타낸 일실시예이다.1 is a view showing a place showing a unit operation to be performed by the robot according to the present invention, Figure 2 is a view showing a transition showing the operating conditions of the robot according to the present invention. 3 is an embodiment showing a simultaneous operation command of the robot according to the present invention, Figure 4 is an embodiment showing a conditional operation command of the robot according to the present invention.
도 1 및 도 2를 참조하여 설명하면, 로봇이 수행할 작업을 그림 편집기에 의해 플레이스(Place)(10)와, 트랜지션(Transition)(11)과, 플레이스 및 트랜지션을 연결하는 화살표(Arc)(13)에 의해 표현된다.Referring to FIG. 1 and FIG. 2, the work performed by the robot is performed by a picture editor using a place (10), a transition (11), and an arrow (Arc) connecting the place and the transition ( Is represented by 13).
여기서, 플레이스(10)는 원으로 표현하며 로봇이 수행할 단위 동작 즉, 종래 기술의 제어언어에서의 작업 명령을 나타내는데 이 플레이스(10)는 원 내부에 검은 점으로 표현된 토큰(Token)(도시되지 않음)을 가지고 있으면 참인 플레이스이고, 토큰을 가지고 있지 않으면 거짓인 플레이스이다. 이때, 참인 플레이스는 로봇의 작업이 현재 수행중 이거나 완료된 상태를 나타내며 동작이 완료되면 다음 단계로 토큰을 넘겨줄 수 있는 상태가 된다. 그리고, 거짓인 플레이스는 동작을 시작하라는 시작 명령을 기다리고 있는 상태를 말하며 토큰을 받으면 동작을 시작하게 된다. 여기서, 로봇의 작업 수행시 플레이스(10)가 의미하는 로봇의 각각의 작업은 그림 편집기의 대화상자에서 정의한다.Here, the place 10 is represented by a circle and represents a unit operation to be performed by the robot, that is, a work command in a control language of the prior art. The place 10 is represented by a token (black) represented by a black dot inside the circle. If it does not have a token, it is a false place. In this case, the true place indicates that the robot's work is currently being performed or completed, and when the operation is completed, the token can be passed to the next step. And, a false place is a state waiting for a start command to start an action, and when a token is received, an action is started. Here, each operation of the robot that the place 10 means when performing the operation of the robot is defined in the dialog of the picture editor.
그리고, 트랜지션(11)은 굵은 막대로 표현되며 화살표(13)를 이용하여 플레이스(10)와 연결된다. 여기서, 트랜지션(11)을 향해 들어오는 화살표에 연결된 플레이스를 트랜지션의 입력 플레이스라 하고, 반대편 화살표에 연결된 플레이스를 트랜지션의 츨력 플레이스라 한다. 이때, 트랜지션(11)은 로봇이 수행할 작업에서 조건을 판단하는 역할을 한다. 즉, 트랜지션(11)의 모든 입력 플레이스의 상태가 참이 되어 이들로 부터 토큰을 전달받으면 트랜지션(11)은 자신의 모든 출력 플레이스에 토큰을 전달하여 작업을 시작하도록 하는 기능을 갖는다. 여기서, 트랜지션(11)의 입력 및 출력의 갯수는 제한이 없으며 입력 플레이스에 해당하는 모든 동작이 완료된후 출력 플레이스에 해당하는 동작들이 동시에 시작됨을 뜻한다.The transition 11 is represented by a thick bar and is connected to the place 10 using the arrow 13. Here, the place connected to the arrow entering the transition 11 is called the input place of the transition, and the place connected to the opposite arrow is called the output place of the transition. At this time, the transition 11 serves to determine the condition in the work to be performed by the robot. In other words, when the state of all the input places of the transition 11 becomes true and the tokens are received from them, the transition 11 has the function of delivering the tokens to all its output places to start the work. Here, the number of inputs and outputs of the transition 11 is not limited and means that the operations corresponding to the output place are started at the same time after all the operations corresponding to the input place are completed.
이와같은 기능을 하는 트랜지션은 도 3과 같이 A 동작이 완료된후 B와 C 동작을 동시에 시작하는 동시동작 명령을 나타내는 포크(Fork)와, 도 4와 같이 C 동작이 수행되기 위해서 A와 B 동작이 먼저 완료되어야 함을 나타내는 조건부 동작 명령을 나타내는 조인(Join)으로 표현된다.The transition that has such a function is a fork representing a simultaneous operation command that simultaneously starts B and C operations after A operation is completed as shown in FIG. 3, and A and B operations are performed to perform C operation as shown in FIG. 4. It is represented by a join representing a conditional action instruction indicating that it must be completed first.
이와같이 로봇 제어언어를 그림으로 정의하고, 복수개의 로봇이 동시에 작업을 수행할 경우 그 정의된 로봇 제어언어중 로봇의 단위동작을 나타내는 플레이스의 각각의 동작을 그림 편집기의 대화상자를 이용하여 정의한다. 이렇게 정의된 로봇 제어언어를 이용하여 로봇의 작업 수행동작을 각 로봇의 동작시 관계를 고려하여 그림으로 표현한다.In this way, the robot control language is defined as a picture, and when a plurality of robots perform work at the same time, each motion of a place representing the unit motion of the robot among the defined robot control languages is defined using a dialog box of the picture editor. Using the robot control language defined as above, the robot's work performance is represented by drawing considering the relation of each robot's operation.
두대의 로봇이 동시에 작업을 수행하는 과정을 본 발명에 따른 로봇 제어언어의 표현방법을 이용하여 나타내는 일실시예를 첨부도면을 참조하여 설명하면 다음과 같다.Referring to the accompanying drawings, an embodiment showing a process of performing the work by two robots at the same time using the robot control language representation method according to the present invention.
도 5는 본 발명에 따른 로봇 제어언어의 표현방법에 의해 두대의 로봇과 두대의 부품 공급장치를 이용한 조립작업을 표현한 도면이고, 도 6은 도 5의 각 플레이스가 의미하는 로봇의 동작을 나타낸 도면이다.FIG. 5 is a view illustrating an assembly operation using two robots and two parts supplying apparatuses by a method of expressing a robot control language according to the present invention, and FIG. 6 is a view showing the operation of a robot represented by each place of FIG. 5. to be.
도 5를 참조하여 설명하면, 로봇 arm1과 arm2가 부품 공급장치로 부터 각각 박스와 볼트를 집어 볼트를 박스에 삽입한후 조립된 제품을 컨베이어로 옮기는 작업을 제 1 플레이스 내지 제 11 플레이스(P1∼P11) 및 제 1 트랜지션 내지 제 7 트랜지션(T1∼T7)과 이들을 연결하는 화살표에 의해 나타낸다. 여기서, 각 플레이스 간에 필요한 조건에는 각 부품장치가 부품을 공급한 후에 로봇이 부품을 잡아야 하는 조건과, 로봇 arm2에 의해 박스를 작업대 위에 이동시킨 후에 arm1 이 볼트를 박스에 삽입해야 하는 조건들을 도 3 및 도 4의 동시동작 명령인 포크와 조건부 동작 명령인 조인에 의해 표현한다. 이때, 제 1 내지 제 11 플레이스(P1∼P11)가 의미하는 동작은 도 6과 같이 그림 편집기의 대화상자에서 정의한다.Referring to FIG. 5, the robot arm1 and arm2 the component supply device, respectively the box and bolt the up, insert the bolt into the box Place the operation to transfer the assembled product to the conveyor the first place to the 11th from the (P 1 ~P 11) and the first transition to the seventh transition (T 1 ~T 7) as indicated by the arrows connecting them. Here, the conditions required between each place include the condition that the robot should grab the part after each parts device supplies the part, and the condition that arm1 inserts the bolt into the box after moving the box on the workbench by the robot arm2. And a fork that is a simultaneous operation command and a join that is a conditional operation command of FIG. 4. In this case, the operations of the first to eleventh places P 1 to P 11 are defined in the dialog of the picture editor as shown in FIG. 6.
본 발명에 따른 로봇 제어언어의 표현방법은 로봇의 제어언어를 그림으로 정의하여 그에 따라 로봇이 수행하는 일련의 작업을 그림에 의해 표현함으로써, 여러대의 로봇이 동시에 작업을 수행할때 이루어지는 각 로봇의 동작들간의 관계등을 용이하게 표현할 수 있다.The method of expressing a robot control language according to the present invention defines a control language of a robot as a picture, and expresses a series of tasks performed by the robot according to the drawing, whereby a plurality of robots simultaneously perform work of each robot. The relationship between the operations can be easily expressed.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970002942A KR19980067075A (en) | 1997-01-31 | 1997-01-31 | How to express robot control language |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970002942A KR19980067075A (en) | 1997-01-31 | 1997-01-31 | How to express robot control language |
Publications (1)
Publication Number | Publication Date |
---|---|
KR19980067075A true KR19980067075A (en) | 1998-10-15 |
Family
ID=65952681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970002942A KR19980067075A (en) | 1997-01-31 | 1997-01-31 | How to express robot control language |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR19980067075A (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4998206A (en) * | 1988-07-29 | 1991-03-05 | The Boeing Company | Automated method and apparatus for fabricating sheet metal parts and the like using multiple manufacturing stations |
US5303384A (en) * | 1990-01-02 | 1994-04-12 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | High level language-based robotic control system |
KR940018862A (en) * | 1993-01-07 | 1994-08-19 | 프레데릭 얀 스미트 | Electronically controlled household appliances device |
KR960008460A (en) * | 1994-08-31 | 1996-03-22 | Numerical control method and device |
-
1997
- 1997-01-31 KR KR1019970002942A patent/KR19980067075A/en not_active Application Discontinuation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4998206A (en) * | 1988-07-29 | 1991-03-05 | The Boeing Company | Automated method and apparatus for fabricating sheet metal parts and the like using multiple manufacturing stations |
US5303384A (en) * | 1990-01-02 | 1994-04-12 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | High level language-based robotic control system |
KR940018862A (en) * | 1993-01-07 | 1994-08-19 | 프레데릭 얀 스미트 | Electronically controlled household appliances device |
KR960008460A (en) * | 1994-08-31 | 1996-03-22 | Numerical control method and device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1815951B1 (en) | Robot controller and robot system | |
JPH0895821A (en) | Method and device for multitask program debugging | |
EP3540536B1 (en) | Development support device, development support method, and development support program | |
CN106527335A (en) | PLC supporting coroutine function | |
KR19980067075A (en) | How to express robot control language | |
JP2000020114A (en) | Method for generating and executing program for motion controller | |
CN108829440B (en) | Method and system for converting logic configuration array into logic execution command | |
JPS63273101A (en) | Programmable controller | |
JPH0667709A (en) | Method and device for generating sequence program and sequence controller | |
Hwang et al. | Interactive task planning through natural language | |
JPS62214443A (en) | Emulation executing method | |
JP2022066906A5 (en) | ||
JP4443436B2 (en) | Control system and control method | |
JP2003044106A (en) | Generating method for sfc converting program and control program, and programmable logic controller | |
KR100243331B1 (en) | Sfc interpretation and sequence control method using it | |
JP2001255912A (en) | Method for executing motion program | |
EP0576678A1 (en) | Method of expanding function of automatic programming apparatus | |
KR100423742B1 (en) | Exclusive control system by sequential function chart | |
JPH0950371A (en) | Device and method for program generation support | |
KR20230151336A (en) | Integrated artificial intelligence learning framework system and method therefor | |
Dai | Towards Skills-based Easy Programming of Dual-arm Robot Applications. | |
Gini et al. | A multi-task system for robot programming | |
JPS62260205A (en) | Executing method for off-line control | |
JP2537418B2 (en) | Control program generator | |
Ross et al. | Verbal and graphical language for the AED system: A progress report |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |