KR20120072021A - Robot plug-in agent system and method thereof - Google Patents

Robot plug-in agent system and method thereof Download PDF

Info

Publication number
KR20120072021A
KR20120072021A KR20100133783A KR20100133783A KR20120072021A KR 20120072021 A KR20120072021 A KR 20120072021A KR 20100133783 A KR20100133783 A KR 20100133783A KR 20100133783 A KR20100133783 A KR 20100133783A KR 20120072021 A KR20120072021 A KR 20120072021A
Authority
KR
South Korea
Prior art keywords
plug
robot
remote
relay
function
Prior art date
Application number
KR20100133783A
Other languages
Korean (ko)
Inventor
이승익
김록원
정승욱
송병열
서범수
노명찬
변재민
성준용
김성훈
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR20100133783A priority Critical patent/KR20120072021A/en
Priority to JP2011282009A priority patent/JP2012131025A/en
Publication of KR20120072021A publication Critical patent/KR20120072021A/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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7839Architectures of general purpose stored program computers comprising a single central processing unit with memory
    • G06F15/7864Architectures of general purpose stored program computers comprising a single central processing unit with memory on more than one IC chip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)
  • Programmable Controllers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

PURPOSE: A robot plug-in relay system and a method thereof are provided to secure compatibility between robot plug-in by performing remote execution through interworking a symbol reference and a framework engine. CONSTITUTION: A remote robot plug-in(100) performs communication with the other remote robot plug-in and transceives data for execution of the function. A robot plug-in framework engine(102) is connected with the remote robot plug-in. The robot plug-in framework engine transmits the function request to the other remote plug-in.

Description

로봇 플러그인 중계 시스템 및 방법{ROBOT PLUG-IN AGENT SYSTEM AND METHOD THEREOF}Robot plug-in relay system and method {ROBOT PLUG-IN AGENT SYSTEM AND METHOD THEREOF}

본 발명은 로봇 플러그인(robot plug in) 중계 방법에 관한 것으로, 특히 분산환경하에서 두 로봇 플러그인간 상호작용에 관한 프로토콜(protocol)을 정의하고, 로봇 플러그인 프레임워크 엔진(frame work engine)이 두 로봇 플러그인간 통신을 중계하도록 구현하여 로봇 플러그인간 함수호출, 심볼참조 및 프레임워크 엔진과의 상호작용을 통한 이벤트(event), 타이머(timer) 등의 원격 실행이 가능하도록 하는 로봇 플러그인의 원격 실행을 위한 로봇 플러그인 중계 시스템 및 방법에 관한 것이다.
The present invention relates to a method for relaying a robot plug in. In particular, a protocol for interaction between two robot plug-ins in a distributed environment is defined, and a robot plug-in framework engine includes two robot plugs. A robot for remote execution of a robot plug-in that enables remote execution of events, timers, etc. through function calls, symbol references, and interaction with the framework engine by implementing human communication. A plug-in relay system and method.

통상적으로 로봇용 소프트웨어 플러그인은 로봇 응용을 구성하는 각종 기능을 재사용 및 교체가 가능한 모듈(module)로 모듈화한 것이다. 이러한 로봇용 소프트웨어 플러그인은 그 자체로서는 실행이 불가능하며 플러그인을 구동시키는 플러그인 프레임워크 엔진을 필요로 하게 된다.Typically, software plug-ins for robots are modularized modules that can reuse and replace various functions that make up a robot application. These robotic software plug-ins are not executable on their own and require a plug-in framework engine to run the plug-in.

기존에 로봇용 플러그인 프레임워크 엔진은 엔진이 탑재된 로컬 노드(local node)상에 존재하는 로컬 플러그인을 탑재하고, 탑재된 로컬 플러그인들끼리의 상호작용을 통하여 하나의 로봇 응용을 구성하였다. The existing plug-in framework engine for robots includes a local plug-in existing on a local node on which the engine is mounted, and constructs a robot application through interaction between the mounted plug-ins.

한편, 근래에 들어 로봇용 로컬 플러그인의 한계를 극복하고, 이를 분산환경에서 동작할 수 있는 원격 플러그인 프레임워크 엔진이 개발되었다. 이로써, 로봇 플러그인은 엔진이 탑재된 로컬 노드의 한계를 벗어나서 네트워크로 연결된 어느 노드에서도 동작 가능한 환경이 조성되었다.
On the other hand, in recent years, a remote plug-in framework engine has been developed that can overcome the limitations of the local plug-in for robots and operate it in a distributed environment. As a result, the robot plug-in has created an environment that can operate on any networked node beyond the limit of the local node on which the engine is mounted.

하지만, 종래의 기술에서는 로봇 플러그인 프레임워크 엔진의 중계를 통한 로봇 원격 플러그인간의 상호작용과 기능에 대하여는 규정하였지만, 이들의 상호작용을 가능하게 하여주는 프로토콜에 대하여는 정하여진 바가 없었기 때문에, 개발자마다 상이한 프로토콜을 사용함으로 인하여 플러그인간의 상호작용에 있어서 호환성을 확보하는데 문제가 발생하였다.However, in the related art, although the interaction and functions of the robot remote plug-in through the relay of the robot plug-in framework engine have been defined, the protocol for enabling the interaction has not been determined. The problem arises in ensuring the compatibility of the plug-in interaction.

따라서, 본 발명은 분산환경하에서 두 로봇 플러그인간 상호작용에 관한 프로토콜을 정의하고, 로봇 플러그인 프레임워크 엔진이 두 로봇 플러그인간 통신을 중계하도록 구현하여 로봇 플러그인간 함수호출, 심볼참조 및 프레임워크 엔진과의 상호작용을 통한 이벤트, 타이머 등의 원격 실행이 가능하도록 하는 로봇 플러그인의 원격 실행을 위한 로봇 플러그인 중계 시스템 및 방법을 제공하고자 한다.
Accordingly, the present invention defines a protocol for interaction between two robot plug-ins in a distributed environment, and implements the robot plug-in framework engine to relay communication between the two robot plug-ins so that the function calls, symbol references, and framework engines between the robot plug-ins The present invention provides a robot plug-in relay system and method for remote execution of a robot plug-in that enables remote execution of events, timers, and the like through interaction.

상술한 본 발명은 로봇 플러그인 중계 시스템으로서, 로봇에서 실행되는 애플리케이션을 구성하는 각종 기능을 수행하며, 통신망을 통해 다른 로봇 원격 플러그인과 통신을 수행하여 상기 기능의 수행을 위한 데이터를 송/수신하는 로봇 원격 플러그인과, 상기 로봇 원격 플러그인과 통신망으로 연결되어, 상기 로봇 원격 플러그인간 상호 통신을 중계하는 로봇 플러그인 프레임워크 엔진을 포함한다.The present invention described above is a robot plug-in relay system, which performs various functions configuring an application executed in a robot, and communicates with another robot remote plug-in through a communication network to transmit / receive data for performing the function. A remote plug-in and a robot plug-in framework engine connected to the robot remote plug-in and a communication network to relay mutual communication between the robot remote plug-ins.

또한, 상기 로봇 플러그인 프레임워크 엔진은, 상기 로봇 원격 플러그인간 상호 통신을 중계하여 상기 로봇 원격 플러그인으로부터 특정 함수의 호출 요청 시 상기 호출 요청을 상기 다른 로봇 원격 플러그인으로 전송하고, 상기 다른 로봇 원격 플러그인으로부터 상기 호출 요청에 응답한 상기 함수의 결과값을 전송받아 상기 로봇 원격 플러그인으로 전송하는 것을 특징으로 한다.In addition, the robot plug-in framework engine relays the mutual communication between the robot remote plug-ins to transmit the call request to the other robot remote plug-in when a call of a specific function is requested from the robot remote plug-in, and from the other robot remote plug-in. And receiving a result value of the function in response to the call request and transmitting the result value to the robot remote plug-in.

또한, 상기 로봇 원격 플러그인간 통신은, 텍스트 기반의 프로토콜을 통해 수행되는 것을 특징으로 한다.In addition, the robot remote plug-in communication, characterized in that performed via a text-based protocol.

또한, 상기 프로토콜을 통해 송신 또는 수신되는 패킷은, 헤더부와 바디부를 포함하는 것을 특징으로 한다.In addition, the packet transmitted or received through the protocol is characterized in that it comprises a header portion and a body portion.

또한, 상기 헤더부는, 프로토콜 이름, 버전, 패킷 아이디, 데이터 타입 또는 길이 중 하나 이상의 정보를 포함하는 것을 특징으로 한다.The header unit may include one or more information among a protocol name, a version, a packet ID, a data type, and a length.

또한, 상기 바디부는, 태그부와 데이터부를 포함하는 것을 특징으로 한다.The body portion may include a tag portion and a data portion.

또한, 상기 태그부는, 요청, 응답 또는 에러 중 어느 하나를 포함하는 것을 특징으로 한다.The tag unit may include any one of a request, a response, or an error.

또한, 상기 데이터부는, 실제 전송되는 데이터를 포함하는 것을 특징으로 한다.The data unit may include data that is actually transmitted.

또한, 본 발명은 로봇 플러그인 중계 방법으로서, 로봇 플러그인 중계 방법으로서, 통신망을 통해 다수의 로봇 원격 플러그인들과 연결되는 로봇 플러그인 프레임워크 엔진에서 하나의 로봇 원격 플러그인으로부터의 함수 호출 명령을 수신하는 단계와, 상기 로봇 플러그인 프레임워크 엔진에서 상기 함수 호출 명령을 수행할 타겟 로봇 원격 플러그인으로 상기 함수 호출 명령을 전송하는 단계와, 상기 로봇 플러그인 프레임워크 엔진에서 상기 타겟 로봇 원격 플러그인으로부터 상기 함수의 실행에 따른 결과값을 수신하는 단계와, 상기 로봇 플러그인 프레임워크 엔진에서 상기 결과값을 상기 함수 호출을 명령한 상기 로봇 원격 플러그인으로 전송하는 단계를 포함한다.In addition, the present invention is a robot plug-in relay method, a robot plug-in relay method, receiving a function call command from one robot remote plug-in in a robot plug-in framework engine connected to a plurality of robot remote plug-ins via a communication network; Transmitting, by the robot plug-in framework engine, the function call command to a target robot remote plug-in to perform the function call command, and the result of executing the function from the target robot remote plug-in in the robot plug-in framework engine. Receiving a value, and transmitting the result value from the robot plug-in framework engine to the robot remote plug-in commanding the function call.

또한, 상기 로봇 원격 플러그인간 통신은, 텍스트 기반의 프로토콜을 통해 수행되는 것을 특징으로 한다.In addition, the robot remote plug-in communication, characterized in that performed via a text-based protocol.

또한, 상기 프로토콜을 통해 송/수신되는 패킷은, 헤더부와 바디부를 포함하는 것을 특징으로 한다.The packet transmitted / received through the protocol may include a header part and a body part.

또한, 상기 헤더부는, 프로토콜 이름, 버전, 패킷 아이디, 데이터 타입 또는 길이 중 하나 이상의 정보를 포함하는 것을 특징으로 한다.The header unit may include one or more information among a protocol name, a version, a packet ID, a data type, and a length.

또한, 상기 바디부는, 태그부와 데이터부를 포함하는 것을 특징으로 한다.The body portion may include a tag portion and a data portion.

또한, 상기 태그부는, 요청, 응답 또는 에러 중 어느 하나를 포함하는 것을 특징으로 한다.The tag unit may include any one of a request, a response, or an error.

또한, 상기 데이터부는, 실제 전송되는 데이터를 포함하는 것을 특징으로 한다.
The data unit may include data that is actually transmitted.

본 발명에서는 로봇 플러그인 중계 시스템 및 방법에 있어서, 분산환경하에서 두 로봇 플러그인간 상호작용에 관한 프로토콜을 정의하고, 로봇 플러그인 프레임워크 엔진이 두 로봇 플러그인간 통신을 중계하도록 구현하여 로봇 플러그인간 함수호출, 심볼참조 및 프레임워크 엔진과의 상호작용을 통한 이벤트, 타이머 등의 원격 실행이 가능하도록 함으로써 로봇 플러그인간 호환성을 확보할 수 있는 이점이 있다.
In the present invention, in the robot plug-in relay system and method, a protocol relating to the interaction between the two robot plug-in in a distributed environment, and implements the robot plug-in framework engine to relay the communication between the two robot plug-in, calling the function between the robot plug-in, By enabling the remote execution of events and timers through symbol reference and interaction with the framework engine, there is an advantage of ensuring compatibility between robot plug-ins.

도 1은 본 발명의 실시 예에 따른 로봇 플러그인 중계 시스템의 구성도,
도 2는 본 발명의 실시 예에 따른 로봇 플러그인 중계 시스템의 프로토콜 패킷의 포맷도,
도 3은 본 발명의 실시 예에 따른 로봇 플러그인 중계 시스템에서 로봇 원격 플러그인간 신호 처리 흐름도,
도 4는 도 3의 과정에서 송/수신되는 프로토콜 패킷의 일예를 도시한 도면.
1 is a block diagram of a robot plug-in relay system according to an embodiment of the present invention,
2 is a format diagram of a protocol packet of a robot plug-in relay system according to an exemplary embodiment of the present invention;
3 is a flowchart illustrating signal processing between robot remote plug-ins in a robot plug-in relay system according to an exemplary embodiment of the present invention;
4 is a diagram illustrating an example of a protocol packet transmitted and received in the process of FIG.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Advantages and features of the present invention, and methods for achieving them will be apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of the invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout.

본 발명의 실시 예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이며, 후술되는 용어들은 본 발명의 실시 예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In describing the embodiments of the present disclosure, when it is determined that a detailed description of a known function or configuration may unnecessarily obscure the subject matter of the present disclosure, the detailed description thereof will be omitted, and the following terms are used in the embodiments of the present disclosure. Terms are defined in consideration of the function of the may vary depending on the user or operator's intention or custom. Therefore, the definition should be based on the contents throughout this specification.

첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들(실행 엔진)에 의해 수행될 수도 있으며, 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다.Combinations of each block of the block diagrams and respective steps of the flowcharts may be performed by computer program instructions (executable engines), which may be executed on a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment. As such, instructions executed through a processor of a computer or other programmable data processing equipment create means for performing the functions described in each block of the block diagram or in each step of the flowchart. These computer program instructions may be stored in a computer usable or computer readable memory that can be directed to a computer or other programmable data processing equipment to implement functionality in a particular manner, and thus the computer usable or computer readable memory. The instructions stored therein may also produce an article of manufacture containing instruction means for performing the functions described in each block of the block diagram or in each step of the flowchart.

그리고, 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명되는 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.In addition, computer program instructions may be mounted on a computer or other programmable data processing equipment, such that a series of operating steps may be performed on the computer or other programmable data processing equipment to create a computer-implemented process to generate a computer or other program. Instructions for performing possible data processing equipment may also provide steps for performing the functions described in each block of the block diagram and in each step of the flowchart.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능들을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있으며, 몇 가지 대체 실시 예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하며, 또한 그 블록들 또는 단계들이 필요에 따라 해당하는 기능의 역순으로 수행되는 것도 가능하다.In addition, each block or step may represent a portion of a module, segment or code that includes one or more executable instructions for executing specific logical functions, and in some alternative embodiments referred to in blocks or steps It should be noted that the functions may occur out of order. For example, the two blocks or steps shown in succession may, in fact, be performed substantially concurrently, or the blocks or steps may be performed in the reverse order of the corresponding function, as required.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예에 대하여 상세하게 설명한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시 예에 따른 로봇 플러그인 중계 시스템의 구성을 도시한 것이다.1 is a block diagram of a robot plug-in relay system according to an exemplary embodiment of the present invention.

도 1을 참조하면, 로봇 플러그인 프레임워크 엔진(plug-in framework engine)(102)은 제1로봇 원격 플러그인(100)과 제2로봇 원격 플러그인(104) 및 로봇 로컬 플러그인(106)간 상호작용을 중계하고, 이벤트(event) 및 타이머 서비스(timer service)를 제공하는 역할을 수행한다.Referring to FIG. 1, the robot plug-in framework engine 102 may interact with the first robot remote plug-in 100, the second robot remote plug-in 104, and the robot local plug-in 106. It relays and provides an event and a timer service.

제1 로봇 원격 플러그인(100)은 로봇 플러그인 프레임워크 엔진(102)이 탑재된 컴퓨팅 노드(computing node)와는 다른 곳에 탑재될 수 있으며, 인터넷을 통하여 로봇 플러그인 프레임워크 엔진(102)의 중계를 통하여 원격지에 있는 다른 제2 로봇 원격 플러그인(104)과 상호작용한다. The first robot remote plug-in 100 may be mounted at a different place from a computing node equipped with the robot plug-in framework engine 102, and may be remotely connected through a relay of the robot plug-in framework engine 102 through the Internet. Interact with another second robot remote plug-in 104 at.

로봇 로컬 플러그인(106)은 로봇 플러그인 프레임워크 엔진(102)과 같은 컴퓨팅 노드에 존재하여, 로봇 플러그인 프레임워크엔진(102)에 의해 탑재된다. Robot local plug-in 106 resides in a computing node, such as robot plug-in framework engine 102, and is mounted by robot plug-in framework engine 102.

제1 로봇 원격 플러그인(100)과 제2 로봇 원격 플러그인(104)간 상호작용은 로봇 플러그인 프레임워크 엔진(102)의 중계를 통하여 이루어진다. 제1, 제2 로봇 원격 플러그인(100, 104)간 또는 제1, 제2 로봇 원격 플러그인(100, 104)과 로봇 플러그인 프레임워크 엔진(102) 사이에는 함수호출, 심볼참조, 이벤트 및 타이머 기능과 각종 제어를 위한 상호작용이 포함된다.Interaction between the first robot remote plug-in 100 and the second robot remote plug-in 104 takes place through relaying of the robot plug-in framework engine 102. Function call, symbol reference, event and timer functions between the first and second robot remote plug-ins 100 and 104 or between the first and second robot remote plug-ins 100 and 104 and the robot plug-in framework engine 102. Interactions for various controls are included.

도 2는 본 발명의 실시 예에 따른 로봇 플러그인 중계 시스템에서의 프로토콜 패킷(protocol packet)의 포맷도이다. 본 발명의 프로토콜은 텍스트 기반 프로토콜(text based protocol)이며 텍스트(text)를 기반으로 하기 때문에 인코딩(encoding)과 디코딩(decoding)이 용이하다. 2 is a format diagram of a protocol packet in the robot plug-in relay system according to an exemplary embodiment of the present invention. The protocol of the present invention is a text based protocol and is easy to encode and decode since it is based on text.

도 2를 참조하면, 하나의 패킷은 헤더부(header)와 바디부(body)로 구성된다. 헤더부에는 프로토콜 이름(protocol name), 버전(version), 패킷 아이디(packet ID), 데이터 타입(data type), 길이(length)가 들어가는 총 24바이트(byte)로 구성된다. Referring to FIG. 2, one packet includes a header and a body. The header part includes a total of 24 bytes including a protocol name, version, packet ID, data type, and length.

프로토콜 이름은 'RPP'로 고정되며, 버전은 프로토콜의 현재 버전이 2.x와 같은 세 바이트 문자열로 구성된다. 패킷 아이디는 패킷에 부여되는 일련번호로서 하나의 플러그인에서 생성되는 각 패킷은 고유의 아이디를 지녀야 한다. The protocol name is fixed as 'RPP', and the version consists of a three-byte string where the current version of the protocol is 2.x. The packet ID is a serial number assigned to the packet. Each packet generated by a plug-in must have a unique ID.

데이터 타입은 바디의 데이터부에 있는 데이터의 타입을 나타내며 'S'혹은 'L' 값을 지니며 각각 문자열형 데이터 또는 리스트형 데이터를 나타낸다. 길이는 바디부의 총 길이를 나타낸다.The data type represents the type of data in the data portion of the body and has a value of 'S' or 'L', and represents string type data or list type data, respectively. The length represents the total length of the body portion.

도 2에서 보여지는 바와 같이, 바디는 태그부와 데이터부로 이루어진다. 태그부는 'request', 'reply', 'error' 문자열중의 하나이다. 'request'는 요청을 할 때 지정되며, 이 요청에 대한 응답이 필요할 경우 'reply' 또는 'error'를 이용한다. 데이터부는 실제 요청이나 응답의 내용을 기술하는 부분으로서 각각에 대하여는 아래에 기술한다. 바디부의 각 항목은 공백문자로 구분한다.As shown in FIG. 2, the body consists of a tag portion and a data portion. The tag part is one of the strings 'request', 'reply', and 'error'. 'request' is specified when making a request. If a response to this request is required, use 'reply' or 'error'. The data section describes the content of the actual request or response, and each is described below. Each item in the body part is separated by a space character.

아래의 [표 1]은 제1, 제2 로봇 원격 플러그인(100, 104)에서 로봇 플러그인 프레임워크 엔진(102)으로 심볼(symbol)을 등록(해지)할 때 사용되는 심볼등록(해지) 메시지에 대한 바디부의 구성을 보여준다. 태그로는 [request]를 지정하고, 명령부는 심볼을 등록하는지 또는 해지하는지에 따라 명령코드가 달라지며 [표 2]의 명령코드표를 참조한다. 심볼이름 항목에는 처리하고자 하는 심볼의 이름을 지정한다.[Table 1] below is a symbol registration (termination) message used when registering (cancel) a symbol from the first and second robot remote plug-ins (100, 104) to the robot plug-in framework engine 102. Shows the configuration of the body part. The tag specifies [request], and the command section changes the command code depending on whether the symbol is registered or canceled. Refer to the command code table in [Table 2]. In the symbol name field, specify the name of the symbol to be processed.

심볼등록(해지)Symbol registration (cancellation) 항목Item 데이터data 타입type 설명Explanation 태그tag [request][request] 문자열String 명령코드Command code 가변variable 문자열String 심볼이름Symbol name 가변variable 문자열String

요청request 코드code 설명Explanation 심볼등록Symbol registration 0x010x01 심볼을 등록한다Register the symbol 심볼해지Symbol 0x020x02 심볼등록을 해지한다Cancel symbol registration 오브젝트 등록Register object 0x030x03 오브젝트를 등록한다Register the object 오브젝트 해지Terminate Object 0x040x04 오브젝트 등록을 해지한다Unregister an object 함수등록Function registration 0x050x05 함수를 등록한다Register a function 함수등록 해지Termination of function registration 0x060x06 함수등록을 해지한다Terminate function registration 심볼값 참조Symbol value reference 0x070x07 심볼값을 참조한다Refers to a symbol value 심볼값 변경Change symbol value 0x080x08 심볼값을 변경한다Change the symbol value 함수호출Function call 0x090x09 함수를 호출한다Call function 타이머 등록Timer registration 0x0a0x0a 타이머를 등록한다Register a timer 이벤트 등록Event registration 0x0b0x0b 이벤트를 등록한다Register for an event 이벤트 발생Event occurrence 0x0c0x0c 발생된 이벤트를 전달한다Pass the raised event

아래의 [표 3]는 제1, 제2 로봇 원격 플러그인(100, 104)에서 로봇 플러그인 프레임워크 엔진(102)으로 오브젝트(object)를 등록(해지)할 때 사용되는 오브젝트등록(해지) 메시지에 대한 바디부의 구성을 보여준다. 태그로는 [request]를 지정하고, 명령코드는 오브젝트를 등록하는지 또는 해지하는지에 따라 명령코드가 달라지며 [표 2]의 명령코드표를 참조한다. 오브젝트이름 항목에는 처리하고자 하는 오브젝트 이름을 지정한다.[Table 3] below shows the object registration (cancellation) message used when registering (canceling) an object from the first and second robot remote plug-ins 100 and 104 to the robot plug-in framework engine 102. Shows the configuration of the body part. The tag specifies [request], and the command code varies depending on whether the object is registered or canceled. Refer to the command code table in [Table 2]. In the Object Name field, specify the object name to be processed.

오브젝트 등록(해지)Register (cancel) an object 항목Item 데이터data 타입type 설명Explanation 태그tag [request][request] 문자열String 명령코드Command code 가변variable 문자열String 심볼이름Symbol name 가변variable 문자열String

아래의 [표 4]은 제1, 제2 로봇 원격 플러그인(100, 104)에서 로봇 플러그인 프레임워크 엔진(102)으로 함수를 등록(해지)할 때 사용되는 함수등록(해지) 메시지에 대한 바디부의 구성을 보여준다. 태그로는 [request]를 지정하고, 명령코드는 함수를 등록하는지 또는 해지하는지에 따라 명령코드가 달라지며 [표 2]의 명령코드표를 참조한다. 함수이름 항목에는 처리하고자 하는 함수 이름을 지정한다.[Table 4] below shows the body part for the function registration (cancellation) message used when registering (canceling) a function from the first and second robot remote plug-ins 100 and 104 to the robot plug-in framework engine 102. Show the configuration. Specify [request] as a tag, and the command code varies depending on whether the function is registered or canceled. Refer to the command code table in [Table 2]. In the function name field, specify the function name to be processed.

함수등록(해지)Function registration (cancellation) 항목Item 데이터data 타입type 설명Explanation 태그tag [request][request] 문자열String 명령코드Command code 가변variable 문자열String 심볼이름Symbol name 가변variable 문자열String

아래의 [표 5]은 제1, 제2 로봇 원격 플러그인(100, 104)의 특정 심볼값을 참조하고자 할 때 사용하는 심볼값 참조 명령에 대한 데이터부를 기술한다. 이 명령은 특정심볼의 값을 참조하는 것이기 때문에 이 요청에 대한 성공 또는 실패여부를 응답하여야 한다. Table 5 below describes a data unit for a symbol value reference command used when referring to specific symbol values of the first and second robot remote plug-ins 100 and 104. Since this command refers to the value of a particular symbol, it must respond to the success or failure of this request.

이 요청을 받은 로봇 플러그인 프레임워크 엔진(102)은 요청의 처리에 대한 성공 또는 실패여부를 요청한 예를 들어, 제1 로봇 원격 플러그인(100)에게 전달한다. 심볼값 참조 명령의 요청 시는 명령코드 항목, 심볼이름 항목을 갖는다. 명령코드는 심볼값 참조명령에 해당하는 코드를 가지며, 심볼이름값은 설정하고자 하는 심볼의 이름을 지정한다. 심볼값 참조 명령의 성공 시 'reply' 태그와 함께 심볼값을 전달하며 실패 시에는 'error'와 함께 오류메시지를 보낸다The robot plug-in framework engine 102 receiving the request transmits the request to the first robot remote plug-in 100, for example, whether the request succeeds or fails in processing the request. When requesting symbol value reference command, it has command code item and symbol name item. The command code has a code corresponding to a symbol value reference command, and the symbol name value specifies the name of a symbol to be set. If the symbol value reference command succeeds, the symbol value is transmitted with the 'reply' tag. If the symbol value fails, an error message is sent with the 'error'.

심볼값 참조Symbol value reference 항목Item 데이터data 타입type 설명Explanation 태그tag [request][request] 문자열String 명령코드Command code 가변variable 문자열String 심볼이름Symbol name 가변variable 문자열String 심볼값 참조 성공시On successful symbol value reference 항목Item 데이터data 타입type 설명Explanation 태그tag [request][request] 문자열String 심볼값Symbol value 가변variable 밸류형Value type 심볼값 참조 오류시On symbol value reference error 항목Item 데이터data 타입type 설명Explanation 태그tag [error][error] 문자열String 심볼값Symbol value 가변variable 밸류형Value type

아래의 [표 6]은 제1, 제2 로봇 원격 플러그인(100, 104)의 특정 심볼값을 변경하고자 할 때 사용하는 심볼값 변경 명령에 대한 데이터부를 기술한다. 심볼변경 명령은 특정심볼의 값을 변경하는 것이기 때문에 이 요청에 대한 성공 또는 실패여부를 응답하여야 한다. Table 6 below describes a data unit for a symbol value change command used when a specific symbol value of the first and second robot remote plug-ins 100 and 104 is to be changed. Since the change symbol command changes the value of a specific symbol, it must respond with a success or failure for this request.

이 요청을 받은 로봇 플러그인 프레임워크 엔진(102)은 요청의 처리에 대한 성공 또는 실패여부를 요청한 제1 로봇 원격 플러그인(100) 또는 제2 로봇 원격 플러그인(104)에게 전달한다. 심볼값 변경 요청 시는 태그, 명령코드, 심볼 이름부, 그리고 심볼값부를 갖는다. 명령코드는 심볼값 변경에 해당하는 명령코드값을 가지며, 심볼이름값은 설정하고자 하는 심볼의 이름을 지정한다. 심볼값은 밸류형의 타입의 값을 가지는데, 이 타입은 정수형, 실수형, 문자열, 이미지, 사운드, 리스트형 데이터를 담을 수 있다.The robot plug-in framework engine 102 having received the request transmits to the first robot remote plug-in 100 or the second robot remote plug-in 104 that has requested the success or failure of the request. The request for changing a symbol value has a tag, a command code, a symbol name part, and a symbol value part. The command code has a command code value corresponding to the symbol value change, and the symbol name value specifies the name of a symbol to be set. Symbol values have values of type value, which can hold integer, real, string, image, sound, and list data.

심볼값 변경Change symbol value 항목Item 데이터data 타입type 설명Explanation 태그tag [request][request] 문자열String 명령코드Command code 가변variable 문자열String 심볼이름Symbol name 가변variable 문자열String 심볼값Symbol value 가변variable 밸류형Value type 할당할 값Value to assign

아래의 [표 7]는 제1, 제2 로봇 원격 플러그인(100, 104)의 특정 함수를 호출하고자 할 사용하는 명령에 대한 메시지 포맷을 도시한다. Table 7 below shows a message format for a command to be used to call a specific function of the first and second robot remote plug-ins 100 and 104.

함수호출 요청 시에는 태그로 '[request]'를 가지며, 명령코드로는 함수호출에 해당하는 명령코드를 지정한다. 함수이름 항목은 호출하고자 하는 함수이름을 지정하고 파라미터(parameter) 항목은 함수호출에 전달되는 파라미터를 지정한다. 이때, 파라미터는 리스트형(list type)이며 밸류형(value type) 데이터의 나열이다. 함수호출을 성공하면 로봇 플러그인 프레임워크 엔진(102)은 '[reply]' 태그와 함께 반환값을 반환하며, 실패 시에는 '[error]' 태그와 함께 오류 메시지를 전달한다.When calling a function call, it has '[request]' as a tag, and the command code corresponding to a function call is designated as a command code. The function name field specifies the function name to be called and the parameter field specifies the parameter passed to the function call. In this case, the parameter is a list type and a list of value type data. If the function call is successful, the robot plug-in framework engine 102 returns a return value with the '[reply]' tag, and in case of failure, the robot plug-in framework engine 102 transmits an error message with the '[error]' tag.

함수호출Function call 항목Item 데이터data 타입type 설명Explanation 태그tag [request][request] stringstring 명령코드Command code 가변variable 문자열String 함수이름Function name 가변variable 문자열String 파라미터parameter 가변variable 리스트List 함수호출 성공시On successful function call 항목Item 데이터data 타입type 설명Explanation 태그tag [request][request] stringstring 반환값Return value 가변variable 밸류형Value type 함수호출 오류시On function call error 항목Item 데이터data 타입type 설명Explanation 태그tag [error][error] stringstring 오류메시지Error message 가변variable 문자열String

아래의 [표 8]은 로봇 플러그인 프레임워크 엔진(102)에 등록할 때 사용되는 메시지를 보여준다. 태그항목은 '[request]'라 지정하며, 명령코드는 [표 2]의 명령코드표를 참조한다. 이벤트이름 항목에는 알림요청을 등록할 대상 이벤트의 이름을 지정한다.Table 8 below shows messages used when registering with the robot plug-in framework engine 102. The tag item is designated as '[request]'. For the command code, refer to the command code table in [Table 2]. In the Event Name field, specify the name of the event to register the notification request.

이벤트 알림 등록Event notification registration 항목Item 데이터data 타입type 설명Explanation 태그tag [request][request] 문자열String 명령코드Command code 가변variable 문자열String 오브젝트이름Object name 가변variable 문자열String 이벤트이름Event name 가변variable 문자열String

아래의 [표 9]는 로봇 플러그인 프레임워크 엔진(102) 또는 제1, 제2 로봇 원격 플러그인(100, 104)에서 발생한 이벤트를 로봇 플러그인 프레임워크 엔진(102) 또는 제1, 제2 로봇 원격 플러그인(100, 104)에게 전달할 때 쓰이는 메시지를 보여준다. [Table 9] below shows events generated by the robot plug-in framework engine 102 or the first and second robot remote plug-ins 100 and 104, and the robot plug-in framework engine 102 or the first and second robot remote plug-ins. Show the message used to convey to (100, 104).

태그항목은 '[request]'라 지정하며, 명령코드는 [표 2]의 명령코드표를 참조한다. 이벤트이름 항목에는 발생한 이벤트의 이름을 지정한다.The tag item is designated as '[request]'. For the command code, refer to the command code table in [Table 2]. In the event name field, specify the name of the event that occurred.

이벤트 알림 등록Event notification registration 항목Item 데이터data 타입type 설명Explanation 태그tag [request][request] 문자열String 명령코드Command code 가변variable 문자열String 이벤트이름Event name 가변variable 문자열String

아래의 [표 10]는 제1, 제2 로봇 원격 플러그인(100, 104)에서 일정한 주기로 특정 기능을 수행하고자할 때, 또는 로봇 플러그인 프레임워크 엔진(102)에게 특정 주기로 이벤트를 발생시켜 달라고 요청할 때 쓰이는 명령에 대한 메시지 포맷이다.[Table 10] below shows when the first and second robot remote plug-ins 100 and 104 want to perform a specific function at a predetermined cycle, or when the robot plug-in framework engine 102 requests to generate an event at a specific cycle. Message format for the command used.

태그항목은 '[request]'라 지정하며, 명령코드는 [표 2]의 명령코드표를 참조한다. 이벤트 이름 항목에는 발생한 이벤트의 이름을 지정한다. 주기 항목은 이벤트를 발생시킬 주기를 지정하며, 오브젝트 이름은 이 메시지를 보내는 오브젝트의 이름을 지정한다.The tag item is designated as '[request]'. For the command code, refer to the command code table in [Table 2]. The event name field specifies the name of the event that occurred. The cycle item specifies the frequency at which the event will be triggered, and the object name specifies the name of the object sending this message.

이벤트 알림 등록Event notification registration 항목Item 데이터data 타입type 설명Explanation 태그tag [request][request] 문자열String 명령코드Command code 가변variable 문자열String 이벤트이름Event name 가변variable 문자열String 주기Cycle 가변variable 문자열String 밀리초단위Milliseconds 오브젝트이름Object name 가변variable 문자열String

도 3은 본 발명의 실시 예에 따른 로봇 플러그인 중계 시스템에서 제1, 제2 로봇 원격 플러그인(100, 104)간 함수호출 동작을 위한 신호 처리 흐름을 도시한 것이다. 이하, 도 1 및 도 3을 참조하여 본 발명의 실시 예를 상세히 설명하기로 한다.3 illustrates a signal processing flow for a function call operation between the first and second robot remote plug-ins 100 and 104 in the robot plug-in relay system according to an exemplary embodiment of the present invention. Hereinafter, an embodiment of the present invention will be described in detail with reference to FIGS. 1 and 3.

먼저, 제1 로봇 원격 플러그인(100) 안에 A라는 오브젝트가 로봇 플러그인 프레임워크 엔진(102)으로 제2 로봇 원격 플러그인(104)안의 B라는 오브젝트가 가지고 있는 특정 함수의 호출을 요청한다(S300).First, an object called A in the first robot remote plug-in 100 requests a call of a specific function possessed by an object called B in the second robot remote plug-in 104 to the robot plug-in framework engine 102 (S300).

이에 따라, 로봇 플러그인 프레임워크 엔진(102)은 제1 로봇 원격 플러그인(100)으로부터의 함수 호출 요청을 해당 함수를 가지고 있는 제2 로봇 원격 플러그인(104)으로 전송한다(S302).Accordingly, the robot plug-in framework engine 102 transmits a function call request from the first robot remote plug-in 100 to the second robot remote plug-in 104 having the corresponding function (S302).

그러면, 제2 로봇 원격 플러그인(104)은 제1 로봇 원격 플러그인(100)으로부터 요청된 함수를 호출한다. 이때 예를 들어, 제2 로봇 원격 플러그인(104)안의 B라는 오브젝트가 가진 sum 함수가 호출된다고 가정하고, 또한, sum 함수는 두 개의 정수를 받아서 이를 합산한 후 그 결과를 반환하는 함수라고 가정한다.The second robot remote plug-in 104 then calls the requested function from the first robot remote plug-in 100. In this case, for example, it is assumed that the sum function of the object B in the second robot remote plug-in 104 is called, and the sum function is a function that takes two integers, sums them, and returns the result. .

이어, 제2 로봇 원격 플러그인(104)은 해당 sum함수를 호출하여(S304), 함수값을 계산한 후, 이러한 함수값을 함수 호출에 대한 결과값으로 로봇 플러그인 프레임워크 엔진(102)으로 전송한다(S308).Subsequently, the second robot remote plug-in 104 calls the corresponding sum function (S304), calculates a function value, and transmits the function value to the robot plug-in framework engine 102 as a result of the function call. (S308).

이에 따라, 로봇 플러그인 프레임워크 엔진(102)은 제2 로봇 원격 플러그인(104)으로부터 전송받은 결과값을 제1 로봇 원격 플러그인(100)으로 전송한다(S310).Accordingly, the robot plug-in framework engine 102 transmits the result value received from the second robot remote plug-in 104 to the first robot remote plug-in 100 (S310).

도 4는 위 도 3의 과정에서 송/수신되는 프로토콜 패킷의 일예를 도시한 것이다.4 illustrates an example of a protocol packet transmitted / received in the process of FIG. 3.

도 4를 참조하면, 도 4의 '1'은 제1 로봇 원격 플러그인에서 로봇 플러그인 프레임워크 엔진으로 전송하는 함수 호출 요청의 패킷의 구성을 도시한 것이고, '2'는 로봇 플러그인 프레임워크 엔진에서 제2 로봇 원격 플러그인으로 전송하는 함수 호출 요청의 패킷의 구성을 도시한 것이다.Referring to FIG. 4, '1' of FIG. 4 illustrates a configuration of a packet of a function call request transmitted from a first robot remote plug-in to a robot plug-in framework engine, and '2' is a symbol of a robot plug-in framework engine. Figure 2 shows the structure of a packet of a function call request sent to a robot remote plug-in.

도 4의 '3'은 제2 로봇 원격 플러그인에서 로봇 플러그인 프레임워크 엔진으로 전송하는 결과값의 패킷 구성을 도시한 것이고, '4'는 로봇 플러그인 프레임워크 엔진에서 제1 로봇 원격 플러그인으로 전송하는 결과값의 패킷 구성을 도시한 것이다.'3' of FIG. 4 shows a packet configuration of a result value transmitted from the second robot remote plug-in to the robot plug-in framework engine, and '4' shows a result of transmission from the robot plug-in framework engine to the first robot remote plug-in. The packet configuration of the value is shown.

상기한 바와 같이, 본 발명에서는 로봇 플러그인 중계 시스템 및 방법에 있어서, 분산환경하에서 두 로봇 플러그인간 상호작용에 관한 프로토콜을 정의하고, 로봇 플러그인 프레임워크 엔진이 두 로봇 플러그인간 통신을 중계하도록 구현하여 로봇 플러그인간 함수호출, 심볼참조 및 프레임워크 엔진과의 상호작용을 통한 이벤트, 타이머 등의 원격 실행이 가능하도록 함으로써 로봇 플러그인간 호환성을 확보할 수 있다.As described above, in the robot plug-in relay system and method, the present invention defines a protocol related to interaction between two robot plug-ins in a distributed environment, and implements the robot plug-in framework engine to relay communication between two robot plug-ins. It is possible to secure compatibility between robot plug-ins by enabling remote execution of events, timers, etc. through function calls, symbol references, and interaction with the framework engine.

한편 상술한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시될 수 있다. 따라서 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
Meanwhile, in the above description of the present invention, specific embodiments have been described, but various modifications may be made without departing from the scope of the present invention. Accordingly, the scope of the invention should not be limited by the described embodiments but should be defined by the appended claims.

100 : 제1 로봇 원격 플러그인 102 : 로봇 플러그인 프레임워크 엔진
104 : 제2 로봇 원격 플러그인 106 : 로봇 로컬 플러그인
100: first robot remote plug-in 102: robot plug-in framework engine
104: second robot remote plug-in 106: robot local plug-in

Claims (15)

로봇 플러그인 중계 시스템으로서,
로봇에서 실행되는 애플리케이션을 구성하는 각종 기능을 수행하며, 통신망을 통해 다른 로봇 원격 플러그인과 통신을 수행하여 상기 기능의 수행을 위한 데이터를 송/수신하는 로봇 원격 플러그인과,
상기 로봇 원격 플러그인과 통신망으로 연결되어, 상기 로봇 원격 플러그인간 상호 통신을 중계하는 로봇 플러그인 프레임워크 엔진
을 포함하는 로봇 플러그인 중계 시스템.
Robot plug-in relay system,
A robot remote plug-in that performs various functions of configuring an application running on the robot, and communicates with another robot remote plug-in through a communication network to transmit / receive data for performing the function;
A robot plug-in framework engine connected to the robot remote plug-in and a communication network to relay mutual communication between the robot remote plug-ins.
Robot plug-in relay system comprising a.
제 1 항에 있어서,
상기 로봇 플러그인 프레임워크 엔진은,
상기 로봇 원격 플러그인간 상호 통신을 중계하여 상기 로봇 원격 플러그인으로부터 특정 함수의 호출 요청 시 상기 호출 요청을 상기 다른 로봇 원격 플러그인으로 전송하고, 상기 다른 로봇 원격 플러그인으로부터 상기 호출 요청에 응답한 상기 함수의 결과값을 전송받아 상기 로봇 원격 플러그인으로 전송하는 로봇 플러그인 중계 시스템.
The method of claim 1,
The robot plug-in framework engine,
Relaying the mutual communication between the robot remote plug-ins to transmit the call request to the other robot remote plug-in upon request of a call of a specific function from the robot remote plug-in, and a result of the function responding to the call request from the other robot remote plug-in; Robot plug-in relay system for receiving a value and transmits to the robot remote plug-in.
제 1 항에 있어서,
상기 로봇 원격 플러그인간 통신은,
텍스트 기반의 프로토콜을 통해 수행되는 로봇 플러그인 중계 시스템.
The method of claim 1,
Communication between the robot remote plug-in,
Robot plug-in relay system performed via a text-based protocol.
제 3 항에 있어서,
상기 프로토콜을 통해 송신 또는 수신되는 패킷은,
헤더부와 바디부를 포함하는 로봇 플러그인 중계 시스템.
The method of claim 3, wherein
A packet transmitted or received through the protocol is
Robot plug-in relay system including a header portion and a body portion.
제 4 항에 있어서,
상기 헤더부는,
프로토콜 이름, 버전, 패킷 아이디, 데이터 타입 또는 길이 중 하나 이상의 정보를 포함하는 로봇 플러그인 중계 시스템.
The method of claim 4, wherein
The header unit,
Robot plug-in relay system containing information of one or more of protocol name, version, packet ID, data type or length.
제 4 항에 있어서,
상기 바디부는,
태그부와 데이터부를 포함하는 로봇 플러그인 중계 시스템.
The method of claim 4, wherein
The body portion,
Robot plug-in relay system including a tag unit and a data unit.
제 6 항에 있어서,
상기 태그부는,
요청, 응답 또는 에러 중 어느 하나를 포함하는 로봇 플러그인 중계 시스템.
The method according to claim 6,
The tag unit,
Robot plug-in relay system comprising any of a request, response or error.
제 6 항에 있어서,
상기 데이터부는,
실제 전송되는 데이터를 포함하는 로봇 플러그인 중계 시스템.
The method according to claim 6,
The data unit,
Robot plug-in relay system containing the actual transmitted data.
로봇 플러그인 중계 방법으로서,
통신망을 통해 다수의 로봇 원격 플러그인들과 연결되는 로봇 플러그인 프레임워크 엔진에서 하나의 로봇 원격 플러그인으로부터의 함수 호출 명령을 수신하는 단계와,
상기 로봇 플러그인 프레임워크 엔진에서 상기 함수 호출 명령을 수행할 타겟 로봇 원격 플러그인으로 상기 함수 호출 명령을 전송하는 단계와,
상기 로봇 플러그인 프레임워크 엔진에서 상기 타겟 로봇 원격 플러그인으로부터 상기 함수의 실행에 따른 결과값을 수신하는 단계와,
상기 로봇 플러그인 프레임워크 엔진에서 상기 결과값을 상기 함수 호출을 명령한 상기 로봇 원격 플러그인으로 전송하는 단계
를 포함하는 로봇 플러그인 중계 방법.
As a robot plug-in relay method,
Receiving a function call command from one robot remote plug-in in a robot plug-in framework engine connected to a plurality of robot remote plug-ins through a communication network;
Transmitting the function call command from the robot plug-in framework engine to a target robot remote plug-in to perform the function call command;
Receiving a result of executing the function from the target robot remote plug-in in the robot plug-in framework engine;
Transmitting, by the robot plug-in framework engine, the result value to the robot remote plug-in commanding the function call.
Robot plug-in relay method comprising a.
제 9 항에 있어서,
상기 로봇 원격 플러그인간 통신은,
텍스트 기반의 프로토콜을 통해 수행되는 로봇 플러그인 중계 방법.
The method of claim 9,
Communication between the robot remote plug-in,
Robot plug-in relay method performed via text based protocol.
제 10 항에 있어서,
상기 프로토콜을 통해 송/수신되는 패킷은,
헤더부와 바디부를 포함하는 로봇 플러그인 중계 방법.
11. The method of claim 10,
A packet transmitted / received through the protocol is
Robot plug-in relay method comprising a header portion and a body portion.
제 11 항에 있어서,
상기 헤더부는,
프로토콜 이름, 버전, 패킷 아이디, 데이터 타입 또는 길이 중 하나 이상의 정보를 포함하는 로봇 플러그인 중계 방법.
The method of claim 11,
The header unit,
Robot plug-in relay method that includes one or more of the protocol name, version, packet ID, data type or length.
제 11 항에 있어서,
상기 바디부는,
태그부와 데이터부를 포함하는 로봇 플러그인 중계 방법.
The method of claim 11,
The body portion,
Robot plug-in relay method comprising a tag portion and a data portion.
제 13 항에 있어서,
상기 태그부는,
요청, 응답 또는 에러 중 어느 하나를 포함하는 로봇 플러그인 중계 방법.
The method of claim 13,
The tag unit,
Robot plug-in relay method comprising any of a request, response or error.
제 13 항에 있어서,
상기 데이터부는,
실제 전송되는 데이터를 포함하는 로봇 플러그인 중계 방법.
The method of claim 13,
The data unit,
Robot plug-in relay method that includes the actual transmitted data.
KR20100133783A 2010-12-23 2010-12-23 Robot plug-in agent system and method thereof KR20120072021A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR20100133783A KR20120072021A (en) 2010-12-23 2010-12-23 Robot plug-in agent system and method thereof
JP2011282009A JP2012131025A (en) 2010-12-23 2011-12-22 System and method for relaying robot plug-in

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20100133783A KR20120072021A (en) 2010-12-23 2010-12-23 Robot plug-in agent system and method thereof

Publications (1)

Publication Number Publication Date
KR20120072021A true KR20120072021A (en) 2012-07-03

Family

ID=46647221

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20100133783A KR20120072021A (en) 2010-12-23 2010-12-23 Robot plug-in agent system and method thereof

Country Status (2)

Country Link
JP (1) JP2012131025A (en)
KR (1) KR20120072021A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3078178B1 (en) * 2018-02-20 2020-02-28 Universite De Reims Champagne-Ardenne INTERCONNECTION PROCESS BETWEEN ROBOTS

Also Published As

Publication number Publication date
JP2012131025A (en) 2012-07-12

Similar Documents

Publication Publication Date Title
CN102185901B (en) Client message conversion method
Ye et al. Toward the plug-and-produce capability for industry 4.0: An asset administration shell approach
Felser et al. Coexistence standardization of operation technology and information technology
CN102297493B (en) System and method for monitoring air conditioning unit
CN102780613B (en) A kind of method and apparatus of distributed apparatus communication between plates
CN107621987B (en) Unmanned aerial vehicle general ground station software architecture system based on message
CN109040171A (en) A kind of emergency response system, method, equipment and storage medium
EP2429150A1 (en) Apparatus, web service component and method based on web service
EP3654123A1 (en) Method of comissioning a field in an industrial system network
CN104937896A (en) Method for processing address resolution protocol message, forwarder and controller
CN105183452A (en) Spring AOP based remote protocol service middleware for monitoring power distribution device
CN103188472A (en) Controlling HDMI devices via intelligent emulation of consumer electronics control (CEC) protocol
CN106130991A (en) A kind of data forwarding method and device
CN110557321A (en) Information transmission method, network equipment and terminal
CN108449246A (en) A kind of intelligent domestic system based on instant message applications Yu Internet of Things Network Communication
CN105279452A (en) Method, device and system for managing intelligent equipment
CN105119969B (en) A kind of exchange method for putting inspection data format and point inspection data
CN110177100A (en) A kind of safety equipment data communication protocol of contract network defence
KR20120072021A (en) Robot plug-in agent system and method thereof
CN110417875B (en) Method, system, equipment and storage medium for docking between cloud servers
JP2009278451A (en) Network equipment setting method
WO2014067319A1 (en) Method, apparatus, and gateway for deregistering terminal peripheral in machine type communication system
CN114205842B (en) Device cooperation synchronization method, system, device, terminal device and storage medium
CN115333943A (en) Deterministic network resource configuration system, method, device and storage medium
KR20170093562A (en) Smart factory connection module and operating method thereof

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination