KR20070052641A - Robot server, content providing system and method comprising the same - Google Patents

Robot server, content providing system and method comprising the same Download PDF

Info

Publication number
KR20070052641A
KR20070052641A KR1020060020414A KR20060020414A KR20070052641A KR 20070052641 A KR20070052641 A KR 20070052641A KR 1020060020414 A KR1020060020414 A KR 1020060020414A KR 20060020414 A KR20060020414 A KR 20060020414A KR 20070052641 A KR20070052641 A KR 20070052641A
Authority
KR
South Korea
Prior art keywords
robot
content
server
data
virtual
Prior art date
Application number
KR1020060020414A
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 US11/599,903 priority Critical patent/US7835821B2/en
Priority to JP2006312042A priority patent/JP4712678B2/en
Publication of KR20070052641A publication Critical patent/KR20070052641A/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40089Tele-programming, transmit task as a program, plus extra info needed by robot

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

로봇 제어를 위한 로봇 서버, 이를 포함하는 컨텐츠 제공 시스템 및 그 방법이 개시된다, 본 발명의 로봇과 통신하는 로봇 서버는 가상 로봇 객체 및 가상 로봇 객체 관리부를 포함한다. 로봇 서버는 로봇에 대응하여 생성되고, 로봇으로부터 수신되는 명령을 수행하며 로봇을 제어한다. 가상 로봇 객체 관리부는 로봇에 대응하는 가상 로봇 객체를 생성하고, 로봇과 연결되면 가상 로봇 객체를 활성화한다.A robot server for controlling a robot, a content providing system including the same, and a method thereof are disclosed. A robot server communicating with a robot of the present invention includes a virtual robot object and a virtual robot object manager. The robot server is generated corresponding to the robot, performs a command received from the robot, and controls the robot. The virtual robot object manager generates a virtual robot object corresponding to the robot and activates the virtual robot object when connected to the robot.

Description

로봇 제어를 위한 로봇 서버, 이를 포함하는 컨텐츠 제공 시스템 및 그 방법{Robot server, content providing system and method comprising the same}Robot server for controlling the robot, content providing system and method including the same {Robot server, content providing system and method comprising the same}

도 1은 본 발명에 따른 컨텐츠 제공 시스템의 개략적인 구성도를 도시한 것이다.1 is a schematic structural diagram of a content providing system according to the present invention.

도 2는 도 1의 인증 서버의 내부 블록도를 도시한 것이다.FIG. 2 illustrates an internal block diagram of the authentication server of FIG. 1.

도 3은 인증 서버에서 실행되는 인증 과정을 흐름도로 도시한 것이다.3 is a flowchart illustrating an authentication process executed in the authentication server.

도 4는 접속요청 패킷의 구조를 도시한 것이다.4 shows the structure of a connection request packet.

도 5는 인증요청시 사용되는 패킷의 구조를 도시한 것이다.5 shows the structure of a packet used in an authentication request.

도 6은 로봇 서버에 대한 상세 블록도를 도시한 것이다.6 shows a detailed block diagram of the robot server.

도 7은 도 6의 인증부에서 수행되는 인증과정에 대한 흐름도를 도시한 것이다.7 is a flowchart illustrating an authentication process performed by the authentication unit of FIG. 6.

도 8은 본 발명에 따른 컨텐츠 서비스 방법에 대한 흐름도를 도시한 것이다.8 is a flowchart illustrating a content service method according to the present invention.

도 9a 및 도 9b는 도 6의 사용자 명령 실행부 또는 로컬 서비스 실행부와 컨텐츠 서버 간 컨텐츠 데이터를 송수신하기 위한 컨텐츠 패킷 구조 및 시스템 명령 패킷 구조를 도시한 것이다.9A and 9B illustrate a content packet structure and a system command packet structure for transmitting and receiving content data between a user command execution unit or a local service execution unit of FIG. 6 and a content server.

도 10(a)는 본 발명에 채용된 버퍼가 가득 채워진 경우의 버퍼 동기화 프로토콜을 도시한 것이다. Figure 10 (a) shows the buffer synchronization protocol when the buffer employed in the present invention is full.

도 10(b)는 본 발명에 채용된 버퍼가 비어있거나 일부가 채워진 경우의 버퍼 동기화 프로토콜을 도시한 것이다.Figure 10 (b) shows the buffer synchronization protocol when the buffer employed in the present invention is empty or partially filled.

도 11은 컨텐츠 서버(14)에 대한 상세 블록도를 도시한 것이다.11 shows a detailed block diagram of the content server 14.

본 발명은 로봇 제어를 위한 서버, 이를 포함하는 컨텐츠 제공 시스템 및 그 방법에 관한 것으로, 특히 자체 프로세싱 능력이 없거나 낮은 로봇을 원격제어하는 서버, 그 로봇에게 컨텐츠를 제공하는 시스템 및 그 방법에 관한 것이다.The present invention relates to a server for controlling a robot, a content providing system including the same, and a method thereof, and more particularly, to a server for remotely controlling a robot having no or low self-processing capability, a system for providing content to the robot, and a method thereof. .

현재까지의 대부분의 로봇은 각종 센서를 구비하고, 자체 프로세서를 구비하여 음악 서비스, 구연동화와 같은 스트리밍(streaming) 서비스를 제공하며, 대용량 프로세싱 능력을 요구하는 컨텐츠, 예를 들어, 음성인식, 영상인식 또는 네비게이션과 같은 서비스를 제공할 수 있다. 그러나 이러한 서비스를 모두 제공할 수 있는 로봇은 고가이므로, 실용성이 떨어진다고 할 수 있다.Most robots up to now have various sensors and have their own processors to provide streaming services such as music service and video activity, and content that requires a large amount of processing power, for example, voice recognition and video. It can provide services such as recognition or navigation. However, since robots that can provide all of these services are expensive, they can be said to be impractical.

또한 종래의 네트워크 기반의 로봇은 홈서버 또는 가정 내 PC와 같은 홈 네트워크 기반의 서버에 미리 제공하고자 하는 컨텐츠를 저장해 놓았다가 서비스하기도 한다. 이러한 종래 기술은 제공하고자 하는 컨텐츠를 미리 저장해야 할 뿐만 아니라 다양한 로봇에 대응되는 컨텐츠를 제공하기도 어렵다. 또한 컨텐츠를 제공하는 홈서버 등과 직접 로봇이 통신하므로 로봇의 하드웨어에 손상을 줄 수 있는 컨텐츠에 대응할 수 없다는 문제점도 있다.In addition, the conventional network-based robot stores the content to be provided in advance to the home network-based server, such as a home server or a PC in the home and then service. The prior art is not only to store the content to be provided in advance, but also difficult to provide content corresponding to various robots. In addition, since the robot directly communicates with a home server that provides the content, there is a problem in that it cannot cope with contents that may damage the hardware of the robot.

본 발명이 이루고자 하는 기술적 과제는 자체 서비스를 제공할 능력이 없거나 어려운 로봇을 원격제어하고 로봇에 컨텐츠를 제공하는 로봇 서버, 이를 포함하는 컨텐츠 제공 시스템 및 그 방법을 제공하는 데 있다.An object of the present invention is to provide a robot server that remotely controls a robot that is incapable or unable to provide its own service and provides content to the robot, a content providing system including the same, and a method thereof.

상기 기술적 과제를 이루기 위한, 본 발명은 로봇과 통신하는 로봇 서버에 있어서, 상기 로봇에 대응하여 생성되고, 상기 로봇으로부터 수신되는 명령을 수행하며 상기 로봇을 제어하는 가상 로봇 객체; 및 상기 로봇에 대응하는 상기 가상 로봇 객체를 생성하고, 상기 로봇과 연결되면 상기 가상 로봇 객체를 활성화하는 가상 로봇 객체 관리부를 포함함을 특징으로 한다.According to an aspect of the present invention, there is provided a robot server communicating with a robot, comprising: a virtual robot object generated in correspondence with the robot, performing a command received from the robot, and controlling the robot; And a virtual robot object manager configured to generate the virtual robot object corresponding to the robot and activate the virtual robot object when connected to the robot.

상기 기술적 과제를 이루기 위한, 본 발명은 로봇에게 컨텐츠 서비스를 제공하는 컨텐츠 서비스 시스템에 있어서, 복수의 컨텐츠를 저장하고, 상기 컨텐츠 서비스를 요청받으면 요청된 컨텐츠 데이터를 전송하는 컨텐츠 서버; 및 상기 로봇으로부터 네트워크를 통해 상기 컨텐츠 서비스 요청을 수신하고, 상기 컨텐츠 서버에 접속하여 상기 요청된 컨텐츠 데이터를 수신하여 상기 로봇에게 전송하는 로봇 서버를 포함함을 특징으로 한다.According to an aspect of the present invention, there is provided a content service system for providing a content service to a robot, comprising: a content server configured to store a plurality of contents and to transmit requested content data when the content service is requested; And a robot server that receives the content service request from the robot through a network, accesses the content server, receives the requested content data, and transmits the requested content data to the robot.

상기 기술적 과제를 이루기 위한, 본 발명은 로봇에 컨텐츠 서비스를 제공하는 방법에 있어서, 상기 컨텐츠 서비스의 요청이 있으면, 상기 로봇에 대응하는 가상 로봇 객체를 활성화하는 단계; 및 상기 가상 로봇 객체를 통해 요청된 컨텐츠를 획득하여 상기 로봇에 전송하는 단계를 포함함을 특징으로 한다.According to an aspect of the present invention, there is provided a method of providing a content service to a robot, the method comprising: activating a virtual robot object corresponding to the robot when the content service is requested; And acquiring the requested content through the virtual robot object and transmitting the requested content to the robot.

이하에서 첨부된 도면을 참조하여 본 발명을 상세하게 설명하기로 한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 컨텐츠 제공 시스템의 개략적인 구성도를 도시한 것이다. 도시된 컨텐츠 제공 시스템은 댁내(1)에 위치한 로봇(10) 및 무선 엑세스 포인트(Access Point, AP)(10), 무선 AP(11)를 통해 로봇(10)과 통신하는 인증서버(12), 로봇 서버(13) 및 컨텐츠 서버(14)를 포함한다. 여기서, 인증 서버(12), 로봇 서버(13) 및 컨텐츠 서버(14)는 각각 유선으로 연결되는 것이 바람직하다.1 is a schematic structural diagram of a content providing system according to the present invention. The illustrated content providing system includes a robot 10 and a wireless access point (AP) 10 located in the home 1, an authentication server 12 communicating with the robot 10 through a wireless AP 11, The robot server 13 and the content server 14 are included. Here, the authentication server 12, the robot server 13 and the content server 14 is preferably connected by wire respectively.

인증서버(12)는 로봇 서버(13)에 접속하고자 하는 로봇(10)을 인증한다. 로봇 서버(13)는 입력된 사용자 명령을 해석하고 실행하며, 내장된 가상 로봇 객체를 통해 로봇(10)을 관리 및 제어한다. 컨텐츠 서버(14)는 로봇 서버(13)를 통해 로봇(10)에 컨텐츠를 제공한다.The authentication server 12 authenticates the robot 10 to be connected to the robot server 13. The robot server 13 interprets and executes the input user command, and manages and controls the robot 10 through the embedded virtual robot object. The content server 14 provides content to the robot 10 through the robot server 13.

로봇(10)은 자체 컨텐츠 서비스를 제공할 수 없는 중저가 로봇이거나 자체 컨텐츠 서비스를 제공할 수 있는 고가의 로봇일 수도 있다.The robot 10 may be a low-cost robot that cannot provide its own content service or an expensive robot that can provide its own content service.

여기서, 하나의 로봇 서버(13)는 여러 로봇들(10)을 관리할 수 있고, 로봇 서버(13)는 하나 또는 복수의 서버들로 구성될 수 있으며, 컨텐츠 서버(14) 역시 하나 또는 복수의 서버들로 구성될 수 있다.Here, one robot server 13 may manage several robots 10, the robot server 13 may be composed of one or a plurality of servers, the content server 14 is also one or a plurality of It can consist of servers.

도 2는 도 1의 인증 서버(12)의 내부 블록도를 도시한 것이다. 도시된 인증 서버(12)는 패킷 검사부(121), 제어부(122) 및 저장부(123)를 포함한다. 도 3은 인증 서버(12)에서 실행되는 인증 과정을 흐름도로 도시한 것이다.FIG. 2 shows an internal block diagram of the authentication server 12 of FIG. The illustrated authentication server 12 includes a packet inspecting unit 121, a control unit 122, and a storage unit 123. 3 is a flowchart illustrating an authentication process executed by the authentication server 12.

먼저, 패킷 검사부(121)는 로봇(10)으로부터 로봇 서버(13)로의 접속을 위한 접속요청 패킷을 수신하면, 수신한 접속요청 패킷을 분석한다(31단계). First, when the packet inspecting unit 121 receives the connection request packet for the connection from the robot 10 to the robot server 13, the packet inspecting unit 121 analyzes the received connection request packet (step 31).

도 4는 접속요청 패킷의 구조를 도시한 것이다. 접속요청 패킷은 로봇(10)의 일련번호를 나타내는 RSN(Robot Serial Number) 필드(41), 접속요청 시간을 나타내는 TS(Time Stamp) 필드(42), 접속요구 타입을 나타내는 RT(Request Type) 필드(43), 로봇 서버 주소 필드(44) 및 로봇 서버 포트(port) 필드(45)를 포함한다. 4 shows the structure of a connection request packet. The connection request packet includes an RSN (Robot Serial Number) field 41 indicating a serial number of the robot 10, a TS (Time Stamp) field 42 indicating a connection request time, and an RT (Request Type) field indicating a connection request type. 43, a robot server address field 44 and a robot server port field 45.

접속요청시, 로봇 서버 주소 필드(44)와 로봇 서버 포트 필드(45)는 비어있는 상태로 전달된다. When the connection request is made, the robot server address field 44 and the robot server port field 45 are transmitted in an empty state.

패킷 검사부(121)는 수신한 접속요청 패킷의 각 필드가 적절한 값을 갖는지를 검사하여 유효한 것을 확인하면(32단계), 제어부(122)는 이전에 로봇(10)이 로봇 서버(13)에 접속하였는지를 판단한다(33단계). 이전에 접속하였는지에 대한 판단은 접속요청 패킷의 RSN필드(41)에 포함된 로봇 일련 번호를 독출한 다음, 저장부(123)에 저장된 로봇 접속 테이블(미도시)에 해당 RSN값이 포함되어 있는지를 검사함으로써 이루어진다.When the packet inspecting unit 121 checks whether each field of the received connection request packet has an appropriate value (step 32), the control unit 122 previously connected the robot 10 to the robot server 13. Determine whether or not (step 33). The determination as to whether the connection has been previously performed is performed by reading the robot serial number included in the RSN field 41 of the connection request packet, and then checking whether the corresponding RSN value is included in the robot connection table (not shown) stored in the storage unit 123. By inspection.

이전에 로봇 서버(13)에 접속한 적이 없으면, 저장부(123)에 저장된 로봇 서버 목록 테이블(미도시)로부터 접속할 로봇 서버의 주소와 포트 번호를 획득한다(34단계).If the robot server 13 has not been accessed before, an address and a port number of the robot server to be accessed are obtained from the robot server list table (not shown) stored in the storage unit 123 (step 34).

제어부(122)는 이전에 로봇 서버(13)에 접속한 적이 있다면, 로봇 접속 테이블로부터 획득한 로봇 서버(13)의 주소와 포트 번호를, 처음 접속한 경우라면 로봇 서버 목록 테이블로부터 획득한 로봇 서버(13)의 주소와 포트 번호를 이용하여 해당 로봇 서버에 연결하고, 인증을 요청한다(35단계).If the controller 122 has previously connected to the robot server 13, the controller 122 obtains the address and port number of the robot server 13 obtained from the robot connection table if it is the first time. Connect to the robot server by using the address and port number of (13), and requests authentication (step 35).

도 5는 인증요청시 사용되는 패킷의 구조를 도시한 것이다. 도시된 인증 패 킷은 RSN필드(51), 인증요청명령을 나타내는 명령 필드(52), 로봇의 일련번호에 대응하여 획득된 로봇의 모델 번호를 나타내는 필드(53) 및 로봇의 IP주소를 나타내는 필드(54)를 포함한다.5 shows the structure of a packet used in an authentication request. The illustrated authentication packet includes an RSN field 51, a command field 52 indicating an authentication request command, a field 53 indicating a model number of the robot obtained corresponding to the serial number of the robot, and a field indicating the IP address of the robot. (54).

로봇 서버(13)로부터 인증이 이루어지면(36단계), 제어부(122)는 최초 접속인 경우 다음번 접속시 동일한 로봇 서버(13)에 접속할 수 있도록 로봇(10)의 RSN, 로봇 서버(13)의 주소 및 포트 번호를 로봇 접속 테이블에 추가 등록한다(38단계). 다음으로, 도 3의 패킷에서 로봇 서버 주소 필드(44) 및 로봇 서버 포트 필드(45)를 해당 값들로 채워서 로봇(10)에게 전송한다(39단계). 이후, 로봇(10)은 해당 로봇 서버 주소 및 포트 번호를 이용하여 로봇 서버와 통신한다.When authentication is made from the robot server 13 (step 36), the control unit 122 of the RSN of the robot 10, the robot server 13 of the robot server 13 to be connected to the same robot server 13 at the next connection in the first connection The address and port number are additionally registered in the robot connection table (step 38). Next, the robot server address field 44 and the robot server port field 45 are filled with the corresponding values in the packet of FIG. 3 and transmitted to the robot 10 (step 39). Thereafter, the robot 10 communicates with the robot server using the corresponding robot server address and port number.

36단계에서 인증이 이루어지지 않으면, 접속 대상의 로봇 서버가 동작하지않음을 나타내므로, 제어부(122)는 다른 로봇 서버에 접속하도록 34단계로 진행하여 로봇 서버 목록 테이블에서 다른 로봇 서버의 주소 및 포트를 획득한 다음 35단계로 진행한다.If the authentication is not performed in step 36, it indicates that the robot server to be connected does not operate. Therefore, the controller 122 proceeds to step 34 to connect to another robot server, and the address and port of another robot server in the robot server list table. After obtaining, proceed to step 35.

도 6은 도 1의 로봇 서버(13)에 대한 상세 블록도를 도시한 것이다.FIG. 6 shows a detailed block diagram of the robot server 13 of FIG. 1.

도시된 로봇 서버(13)는 인증부(61), 가상 로봇 객체 관리부(62), 가상 로봇객체(63), 패킷 분배부(64) 및 자원(resource) 관리부(65)를 포함한다.The illustrated robot server 13 includes an authenticator 61, a virtual robot object manager 62, a virtual robot object 63, a packet distributor 64, and a resource manager 65.

인증부(61)는 인증 서버(12)의 제어부(122)로부터 송신된 인증 패킷을 수신하고 분석하여 현재 접속 요청한 로봇(10)을 인증한다.The authentication unit 61 receives and analyzes the authentication packet transmitted from the control unit 122 of the authentication server 12 to authenticate the robot 10 that has requested the current connection.

도 7은 도 6의 인증부(61)에서 수행되는 인증과정에 대한 흐름도를 도시한 것이다.FIG. 7 is a flowchart illustrating an authentication process performed by the authenticator 61 of FIG. 6.

인증부(61)는 제어부(122)로부터 수신한 인증 패킷으로부터 로봇(10)에 대한 정보를 획득한다(71단계). 인증부(61)는 획득된 정보를 가상 로봇 객체 관리부(62)에 전달하고, 가상 로봇 객체 관리부(62)는 해당 로봇(10)에 대응하는 가상 로봇 객체가 있는지를 판별한다(72단계). 가상 로봇 객체가 있다면 해당 가상 로봇 객체(63)를 활성화한다(73단계). 해당 가상 로봇 객체가 없다면, 가상 로봇 객체 관리부(62)는 그 로봇(10)에 대응하는 가상 로봇 객체(63)를 생성한 다음(74단계), 활성화한다(73단계). The authentication unit 61 obtains information about the robot 10 from the authentication packet received from the control unit 122 (step 71). The authenticator 61 transmits the obtained information to the virtual robot object manager 62, and the virtual robot object manager 62 determines whether there is a virtual robot object corresponding to the robot 10 (step 72). If there is a virtual robot object, the virtual robot object 63 is activated (step 73). If there is no corresponding virtual robot object, the virtual robot object manager 62 generates a virtual robot object 63 corresponding to the robot 10 (step 74) and activates it (step 73).

가상 로봇 객체(63)는 데이터 전송부(631), 로봇 프락시(proxy)(632), 가상객체실행부(633) 및 컨텐츠 패킷 관리부(634)를 포함한다. 또한 가상객체실행부(633)는 사용자 명령 실행부(6331) 및 로컬 서비스 실행부(6332)를 포함한다. 이러한 요소들로 구성된 가상 로봇 객체(63)의 생성 과정은 다음과 같다.The virtual robot object 63 includes a data transmitter 631, a robot proxy 632, a virtual object execution unit 633, and a content packet manager 634. In addition, the virtual object execution unit 633 includes a user command execution unit 6331 and a local service execution unit 6332. The creation process of the virtual robot object 63 composed of these elements is as follows.

먼저, 가상로봇 객체 관리부(62)는 가상 객체 로봇(63)에 로봇(10)과 통신을 위한 동기/비동기 통신 포트를 할당한다. 다음으로, 해당 로봇(10)과의 통신 규약 및 데이터 처리 등을 위한 로봇 프락시(632)를 저장수단(62-1)으로부터 독출하여 가상 객체 로봇(632)에 설치한다. 접속되는 로봇의 종류가 다양하고 그에 따른 통신 규약 및 데이터 처리 방법이 다양하기 때문에, 접속하는 로봇의 종류에 대응되는 객체로서 로봇 프락시(632)는 가상 로봇 객체(63)의 한 요소로 구성되며, 인증서버(12)로부터 얻어진 로봇 모델을 참고로 하여 저장수단(62-1)으로부터 독출된다. 로봇 프락시(632)에 대한 정보는 XML 문서와 같은 텍스트 형태로 저장수단(62-1)에 저장되어 있다.First, the virtual robot object manager 62 allocates a synchronous / asynchronous communication port for communicating with the robot 10 to the virtual object robot 63. Next, the robot proxy 632 for communication protocol and data processing with the robot 10 is read out from the storage means 62-1 and installed in the virtual object robot 632. Since the types of robots to be connected are various and communication protocols and data processing methods are various, the robot proxy 632 is composed of one element of the virtual robot object 63 as an object corresponding to the type of robots to be connected. The robot model obtained from the authentication server 12 is read out from the storage means 62-1. Information about the robot proxy 632 is stored in the storage means 62-1 in the form of text such as an XML document.

가상 로봇 객체 관리부(62)는 또한 할당된 동기/비동기 통신 포트를 통한 통신을 위해 데이터 전송부(631)를 가상 로봇 객체(63)에 설치하고, 컨텐츠 서버(14)로부터 컨텐츠 데이터를 패킷 단위로 저장 및 관리하는 컨텐츠 패킷 관리부(634), 사용자 명령을 해석하고 실행하는 사용자 명령 실행부(6331) 및 가상 로봇 객체(63)의 내부 상태 관리, 장애물로부터 로봇(10)의 보호, 사용자 명령이 없을 때 사용자를 위한 감성기반 서비스 등을 수행하는 로컬 서비스 실행부(6332)를 더 설치한다.The virtual robot object manager 62 also installs a data transmitter 631 in the virtual robot object 63 for communication through the assigned synchronous / asynchronous communication port, and transmits content data in packet units from the content server 14. The content packet management unit 634 stores and manages, the user command execution unit 6131 for interpreting and executing user commands, and the internal state management of the virtual robot object 63, the protection of the robot 10 from obstacles, and the user commands. When the local service execution unit (6332) for performing emotion-based services for the user is further installed.

가상 로봇 객체 관리부(62)는 가상 로봇 객체(63)를 관리하고, 다수의 가상 로봇 객체(63)들에 대한 생명주기 관리 및 사용자 정보/설정 정보 등을 가상 로봇 객체(63)로 전달한다. 여기서, 생명주기는 로봇(10)의 파워가 온(on)상태이면 해당 가상 로봇 객체(63)를 유지하고, 로봇(10)의 파워가 오프(off)되면 해당 가상 로봇 객체(63)를 일정 시간 동안 유지하거나 삭제하는 것을 말한다.The virtual robot object manager 62 manages the virtual robot object 63 and transmits life cycle management and user information / setting information, etc. to the virtual robot object 63 to the virtual robot object 63. Here, the life cycle maintains the virtual robot object 63 when the power of the robot 10 is on, and sets the virtual robot object 63 when the power of the robot 10 is off. To keep or delete for hours.

인증부(61)는 가상 로봇 객체(63)가 활성화되면, 인증서버(12)에 인증되었음을 알린다. 인증이 이루어지면, 가상 로봇 객체(63)는 로봇(10)으로부터 최초 접속에 따른 연결 패킷인 HelloPacket을 수신한다(75단계). 가상 로봇 객체(63)는 로봇(10)으로부터 수신한 HelloPacket으로부터 로봇(10)의 IP주소 및 포트번호를 등록함으로써 서비스할 준비를 하게 된다(76단계).The authenticator 61 notifies the authentication server 12 that the virtual robot object 63 is activated. When the authentication is made, the virtual robot object 63 receives HelloPacket, which is a connection packet according to the initial connection, from the robot 10 (step 75). The virtual robot object 63 prepares for service by registering the IP address and port number of the robot 10 from the HelloPacket received from the robot 10 (step 76).

로봇 프락시(632)는 데이터 전송부(631)를 통해 로봇(10)과 통신한다. 통신은 패킷 데이터 단위로 동기/비동기로 이루어진다. 동기/비동기 통신을 위한 채널은 TCP/IP, UDP(User Datagram protocol)/IP를 포함하여 자바 RMI(Remote Method Invocation), CORBA(Common Object Request Broker Architecture) 등 다양한 형태의 프로토콜로 구성될 수 있다. 동기 통신은 로봇의 동작, 음성 또는 영상 표시에 있어서 끊김이 없도록 하기 위한 것이고, 비동기 통신은 긴급을 요하는 시스템 명령 또는 센서 정보와 같이 어느 한쪽이 일방적으로 전송하기 위한 것이다.The robot proxy 632 communicates with the robot 10 through the data transmitter 631. Communication is performed synchronously / asynchronously on a packet data basis. The channel for synchronous / asynchronous communication may include various types of protocols including TCP / IP, User Datagram protocol (UDP) / IP, Java Remote Method Invocation (RMI), and Common Object Request Broker Architecture (CORBA). Synchronous communication is to ensure that there is no interruption in robot operation, voice or video display, and asynchronous communication is for one-sided transmission such as urgent system command or sensor information.

비동기 통신의 경우, 데이터 전송부(631)는 로봇(10)으로부터 비동기 데이터를 수신한 다음, 그 로봇(10)에 대응되는 가상 로봇 객체(63)에 대한 정보를 가상 로봇 객체 관리부(62)로부터 얻고, 해당 가상 로봇 객체(63)의 로봇 프락시(632)로 비동기 데이터를 전달한다. 로봇 프락시(632)는 전달된 비동기 데이터를 해석하고 그에 따른 동작을 수행한다.In the case of asynchronous communication, the data transmission unit 631 receives asynchronous data from the robot 10, and then receives information about the virtual robot object 63 corresponding to the robot 10 from the virtual robot object manager 62. And transmits asynchronous data to the robot proxy 632 of the virtual robot object 63. The robot proxy 632 interprets the delivered asynchronous data and performs the action accordingly.

패킷 분배부(64)에서 로봇 프락시(632)로 비동기 데이터를 전달하는 방법은 가상 로봇 객체(63)에 대응하는 함수를 호출하거나 이벤트 방식으로 이루어질 수 있다. 또한 로봇(10)으로부터 수신되는 비동기데이터의 경우, 그 전달 방식에 있어서도 로봇(10)이 비동기데이터를 로봇서버(13)로 전송하는 방식과 로봇서버(13)가 로봇(10)에게 비동기데이터를 요구하여 전송받는 방식 모두 사용될 수 있다.The method for transferring asynchronous data from the packet distributor 64 to the robot proxy 632 may be performed by calling a function corresponding to the virtual robot object 63 or by an event method. In addition, in the case of asynchronous data received from the robot 10, the robot 10 transmits asynchronous data to the robot server 13 also in the delivery method, and the robot server 13 transmits asynchronous data to the robot 10. Both request and receive methods can be used.

동기/비동기 데이터에 대한 처리방식은 로봇의 유형마다 정의하는 규약 및 처리 방법이 서로 달라질 수 있기 때문에 본 발명에서는 로봇 프락시(632)가 로봇(10)과의 통신규약 및 데이터 처리 방법을 담당한다.In the present invention, since the protocol and processing method defined for each type of robot may be different from each other, the robot proxy 632 is in charge of the communication protocol and data processing method with the robot 10.

가상객체실행부(633)는 로봇(10)으로부터 사용자가 입력한 명령을 수신하여 수신된 사용자 명령을 해석하고 실행하며, 장애물로부터 로봇(10)을 보호하며, 사용자를 위한 감성 기반 서비스를 수행한다. The virtual object execution unit 633 receives a command input by the user from the robot 10, interprets and executes the received user command, protects the robot 10 from obstacles, and performs an emotion-based service for the user. .

사용자 명령 실행부(6331)는 사용자 명령이 음성이면, 자원관리부(65)의 자동음성인식(Automatic Speech Recognition, ASR)기능을 통해 외부의 ASR 서버와 접속하여 음성명령 데이터를 전송하고, 음성명령에 대한 문자열 또는 심볼형태를 받아 해석하여 실행한다. 사용자 명령이 문자열로 이루어진 것이라면, 문자열에 대한 음성 발성을 위해 자원관리부(65)의 TTS(Text-To-Speech) 기능을 통해 문자열을 음성 데이터로 변환하여 로봇(10)에게 전송한다.If the user command execution unit 6321 is a voice, the user command is connected to an external ASR server through an automatic speech recognition (ASR) function of the resource manager 65 to transmit voice command data, and to the voice command. Receive and interpret a string or symbolic form If the user command is composed of a string, the voice string is converted into voice data through the TTS (Text-To-Speech) function of the resource management unit 65 and the voice is transmitted to the robot 10.

로컬 서비스 실행부(6332)는 로봇(10)으로부터 수신되는 감지 데이터를 이용하여 로봇(10)에 장애물 회피 명령을 전송한다. 로봇(10)은 각종 센서를 구비하고, 센서를 통해 감지된 데이터를 로컬 서비스 실행부(6332)로 전송한다. 현재까지 대부분의 로봇들은 자체 센서정보를 이용하여 로봇내에서 장애물 탐지 및 회피 기능을 수행하지만, 이 경우 고성능의 프로세서를 구비하고 있어야한다. 따라서 그러한 고성능 프로세서를 구비하지 않은 저가형 로봇은 그러한 처리능력이 없으므로 외부에서 두뇌 역할을 대신할 장치가 필요하다. 본 발명에서는 로봇 서버(13)를 통해 자체 고성능 프로세서를 구비하지 않은 저가형 로봇에 대한 장애물 탐지 및 회피 기능을 수행한다. The local service execution unit 6332 transmits an obstacle avoidance command to the robot 10 by using the sensed data received from the robot 10. The robot 10 includes various sensors and transmits data sensed through the sensors to the local service execution unit 6332. Until now, most robots use their own sensor information to perform obstacle detection and avoidance functions in the robot, but in this case, a high performance processor must be provided. Therefore, low-cost robots without such high-performance processors do not have such processing power and need devices to take the place of external brains. In the present invention, the robot server 13 performs an obstacle detection and avoidance function for a low-cost robot that does not have its own high performance processor.

로컬 서비스 실행부(6332)는 또한 사용자의 감성에 기반한 서비스를 제공할 수 있다. 현재까지 대부분의 로봇들은 사용자의 명령에 의하여 사용자가 원하는 서비스를 제공하였다. 그러나 본 실시예에 따르면, 일정한 시간이 되었거나 사용자 명령이 없는 채로 일정한 시간이 경과한 경우 로봇(10)은 사용자 의도를 미리 분석하여 사용자에게 적절한 서비스를 제공할 수 있다. 예를 들어, 오후 3시에는 사용 자의 명령이 없어도 사용자가 애청하는 음악을 컨텐츠 서버(14)로부터 수신하여 들려주는 것과 같은 지능적인 서비스를 제공할 수 있다. 이러한 지능적인 서비스를 제공하기 위해 로봇(10)은 이전에 수행되어온 사용자 명령 혹은 이력 사항을 바탕으로 사용자의 습관 또는 취향을 학습함으로써 사용자의 의도를 미리 분석한다. 학습은 상술한 바와 같이 동일한 시간대에 입력되는 사용자 명령이 소정 회수 이상 반복되는 패턴을 저장함으로써 해당 시간대에 사용자 명령이 없어도 실행되도록 할 수 있다.The local service execution unit 6332 may also provide a service based on the emotion of the user. Until now, most robots have provided a service desired by a user by a user's command. However, according to the present embodiment, when a certain time has elapsed or a predetermined time has elapsed without a user command, the robot 10 may analyze the user's intention in advance and provide an appropriate service to the user. For example, at 3 pm, an intelligent service may be provided such that the user listens to music from the content server 14 without a user's command. In order to provide such an intelligent service, the robot 10 analyzes a user's intention by learning a user's habit or taste based on a user's command or history that has been previously performed. As described above, the learning may be executed without storing the user command in the corresponding time zone by storing a pattern in which the user command input in the same time zone is repeated a predetermined number of times or more.

컨텐츠 패킷 관리부(634)는 사용자 명령 실행부(6331) 또는 로컬 서비스 실행부(6332)가 컨텐츠 서버(14)에 연결하여 컨텐츠 데이터를 수신하고, 수신한 컨텐츠 데이터를 로봇(10)에 제공할 때, 통신 채널의 상태에 따라 오버플로우(overflow)가 발생하지 않도록 컨텐츠 데이터를 패킷 단위로 일시 저장하여 전송한다.The content packet manager 634 receives the content data by connecting to the content server 14 by the user command execution unit 6331 or the local service execution unit 6332, and provides the received content data to the robot 10. In order to prevent an overflow from occurring according to the state of the communication channel, the content data is temporarily stored and transmitted in packet units.

도 8은 본 발명에 따른 컨텐츠 서비스 방법에 대한 흐름도를 도시한 것이다. 먼저, 로봇(10)은 사용자에게 제공할 수 있는 컨텐츠 목록을 제시하고, 사용자로부터 음성명령 또는 로봇(10)에 장착되어 있는 버튼 또는 터치 스크린을 이용한 사용자 선택을 입력받는다(81단계). 로봇(10)은 사용자 선택을 로봇 서버(13)의 사용자 명령 실행부(6331)로 전달한다. 사용자 명령 실행부(6331)는 사용자 명령을 수행하기 위해 컨텐츠 서버(634)에 연결한다(82단계). 컨텐츠 패킷 관리부(634)는 통신 연결 상태를 유지하면서, 컨텐츠 서버(14)로부터 사용자가 요청한 서비스에 대한 컨텐츠 데이터를 수신하여 버퍼(미도시)에 순차적으로 저장한다(83단계). 8 is a flowchart illustrating a content service method according to the present invention. First, the robot 10 presents a list of contents that can be provided to the user, and receives a voice command or a user selection using a button or a touch screen mounted on the robot 10 (step 81). The robot 10 transmits the user selection to the user command execution unit 6331 of the robot server 13. The user command execution unit 6321 connects to the content server 634 to perform a user command (step 82). The content packet manager 634 receives the content data of the service requested by the user from the content server 14 while maintaining the communication connection state and sequentially stores the content data in a buffer (not shown) (step 83).

도 9a 및 도 9b는 사용자 명령 실행부(6331) 또는 로컬 서비스 실행부(6332)와 컨텐츠 서버(14) 간 컨텐츠 데이터를 송수신하기 위한 컨텐츠 패킷 구조 및 시스템 명령 패킷 구조를 도시한 것이다. 여기서, PL은 패킷 길이, DT는 명령(CMD) 또는 서브 명령(SCMD)을 나타내는 필드이다. RSN은 로봇(10)의 일련번호, AL은 오디오 길이, VL은 비디오 길이, CL은 제어 데이터의 길이를 나타내는 필드이다. AD는 오디오 데이터, VD는 비디오 데이터, CD는 제어 데이터를 나타낸다. CS는 패킷의 오류발생 여부를 점검하기 위한 체크섬(checksum)을 나타내는 필드이다.9A and 9B illustrate a content packet structure and a system command packet structure for transmitting and receiving content data between the user command execution unit 6331 or the local service execution unit 6332 and the content server 14. Here, PL is a packet length, and DT is a field indicating a command (CMD) or a sub command (SCMD). RSN is a serial number of the robot 10, AL is an audio length, VL is a video length, and CL is a field indicating the length of control data. AD represents audio data, VD represents video data, and CD represents control data. CS is a field indicating a checksum for checking whether an error occurs in a packet.

컨텐츠 패킷 관리부(634)는 버퍼의 크기 및 로봇(10)과의 채널 연결상태에 따라 저장된 컨텐츠 데이터를 독출하여 도 9a와 같은 형식으로 변환한 다음 로봇(10)으로 전송한다(84단계). 예를 들어 버퍼의 크기가 작고 채널 대역폭이 작다면 컨텐츠 서버(13)로부터 컨텐츠 데이터의 전송을 지연하는 등의 방법으로 오버플로우가 발생하지 않도록 한다. 로봇(10)은 수신한 컨텐츠 패킷을 스피커 또는 디스플레이 장치를 통해 사용자에게 제공한다(85단계).The content packet manager 634 reads the stored content data according to the size of the buffer and the channel connection state with the robot 10, converts the stored content data into a format as shown in FIG. 9A, and transmits the same to the robot 10 (step 84). For example, if the size of the buffer is small and the channel bandwidth is small, overflow does not occur by delaying the transmission of the content data from the content server 13. The robot 10 provides the received content packet to the user through the speaker or the display device (step 85).

컨텐츠 서비스의 다른 예로서, 로컬 서비스 실행부(6332)는 상술한 바와 같은 학습내용에 따라 사용자 명령이 일정 시간 동안 없거나 하루 중 어느 시간이 되면 사용자가 자주 이용하는 컨텐츠를 사용자에게 제공하기 위해 81단계와 같이 컨텐츠 서버(14)에 연결할 수도 있다. 이하 82 내지 85의 과정은 동일하며, 그 과정들은 로컬 서비스 실행부(6332)와 컨텐츠 패킷 관리부(634) 사이에 이루어진다.As another example of the content service, the local service execution unit 6332 may perform step 81 to provide the user with content frequently used by the user when the user command is not for a predetermined time or at some time of the day according to the learning content as described above. Similarly, the content server 14 may be connected. 82 to 85 are the same, and the processes are performed between the local service execution unit 6332 and the content packet manager 634.

이와 같이, 로봇(10)과 로봇 서버(13) 사이에는 무선통신이 이루어지고, 로봇 서버(13)와 컨텐츠 서버(14) 사이에는 유선 통신이 이루어진다. 현재의 네트워 크 환경에서 무선 통신은 유선 통신에 비해 전송속도가 현저하게 떨어지고 패킷의 손실이 많이 발생한다. 따라서 유선통신 구간인 로봇 서버(13)와 컨텐츠 서버(14) 사이의 통신에 있어서 패킷 데이터 전송제어를 필요로 한다. 그렇지 않으면 무선 구간인 로봇 서버(13)와 로봇(10)간의 패킷 전송에 있어서 재전송이 필요하게 되면 유선구간에서의 패킷 데이터가 증가하게 된다. 이 경우 하드웨어적인 저장 공간의 제약으로 인하여 유선 구간의 패킷 데이터를 저장할 수 없게 되어 메모리 초과 오류가 발생한다. 예를 들어, 유선구간의 패킷 데이터를 모두 저장할 수 있다 하더라도 대화를 필요로 하는 실시간성 서비스 또는 실시간으로 컨텐츠 데이터를 전송해야하는 경우 과거의 데이터를 로봇(10)에 전송하게 되는 문제가 발생하게 된다.As such, wireless communication is performed between the robot 10 and the robot server 13, and wired communication is performed between the robot server 13 and the content server 14. In the current network environment, wireless communication has a significantly lower transmission speed and more packet loss than wired communication. Therefore, packet data transmission control is required in the communication between the robot server 13 and the content server 14 which are wired communication sections. Otherwise, if retransmission is required in the packet transmission between the robot server 13 and the robot 10 which is a wireless section, the packet data in the wired section is increased. In this case, due to hardware storage space limitation, the packet data of the wired section cannot be stored, resulting in a memory overflow error. For example, even if it is possible to store all the packet data of the wired section, when the content data need to be transmitted in real time service or real time requiring a conversation, there is a problem that the past data is transmitted to the robot 10.

따라서 본 발명에서는 이러한 문제점을 해결하기 위해 컨텐츠 패킷 관리부(634)가 컨텐츠 데이터를 버퍼에 저장하고 전송을 제어한다. 버퍼의 크기는 로봇(10)의 유형과 그 처리 능력에 따라 정해질 수 있다.Therefore, in the present invention, to solve this problem, the content packet manager 634 stores the content data in the buffer and controls the transmission. The size of the buffer may be determined according to the type of robot 10 and its processing capacity.

도 10(a)는 본 발명에 채용된 버퍼가 가득 채워진 경우의 버퍼 동기화 프로토콜을 도시한 것이다. 도시된 바에 따르면 버퍼가 가득 채워진 경우, 컨텐츠 패킷 관리부(634)는 컨텐츠 서버(14)에 BUF_FULL을 전송하고(101단계), 컨텐츠 서버(14)는 BUF_LOW가 수신될 때까지 대기한다(102단계). Figure 10 (a) shows the buffer synchronization protocol when the buffer employed in the present invention is full. As shown, when the buffer is full, the content packet manager 634 transmits BUF_FULL to the content server 14 (step 101), and the content server 14 waits until the BUF_LOW is received (step 102). .

도 10(b)는 본 발명에 채용된 버퍼가 비어있거나 일부가 채워진 경우의 버퍼 동기화 프로토콜을 도시한 것이다. 도시된 바에 따르면, 버퍼가 비어있는 경우, 컨텐츠 패킷 관리부(634)는 컨텐츠 서버(14)에 BUF_LOW를 전송하고(103단계), 컨텐츠 서버(14)는 패킷을 전송한다(104단계).Figure 10 (b) shows the buffer synchronization protocol when the buffer employed in the present invention is empty or partially filled. As illustrated, when the buffer is empty, the content packet manager 634 transmits BUF_LOW to the content server 14 (step 103), and the content server 14 transmits the packet (step 104).

본 발명에서 이러한 버퍼 동기화 프로토콜을 채택한 이유는 로봇 서버(13)의 데이터 저장 자원(미도시)이 한정되어 있기 때문이다. 또한 저장수단에 저장할 수 있다고 하더라도 많은 양의 컨텐츠 데이터를 처리함으로써 발생되는 처리 지연에 따라 사용자와 실시간 대화가 필요한 서비스는 로봇(10)이 적절하게 대응하지 못할 수 있으며, 라디오 스트리밍(radio streaming)과 같이 일방적으로 전송하는 스트리밍 서비스의 경우 많은 양의 데이터로 인해 실시간 서비스가 어렵게 되기 때문이다.The reason why the buffer synchronization protocol is adopted in the present invention is that data storage resources (not shown) of the robot server 13 are limited. In addition, even if it can be stored in the storage means, a service that requires real-time conversation with the user may not properly respond to a service requiring a real-time conversation with the user, depending on the processing delay caused by processing a large amount of content data, radio streaming and This is because the streaming service, which is transmitted unilaterally together, becomes difficult due to the large amount of data.

이러한 버퍼 동기화 프로토콜은 로봇(10)과 컨텐츠 패킷 관리부(634) 사이에도 적용될 수 있다. 즉, 컨텐츠 패킷 관리부(634)는 로봇(10)으로부터 버퍼 상태를 나타내는 신호를 수신하고, 버퍼가 오버플로우되지 않도록 컨텐츠 데이터의 전송을 제어한다.This buffer synchronization protocol may be applied between the robot 10 and the content packet manager 634. That is, the content packet manager 634 receives a signal indicating the buffer state from the robot 10 and controls the transmission of the content data so that the buffer does not overflow.

도 11은 컨텐츠 서버(14)에 대한 상세 블록도를 도시한 것이다. 도시된 컨텐츠 서버(14)는 패킷 송수신부(141), 패킷 해석부(142), 컨텐츠 로봇(143), 컨텐츠 실행부(144) 및 로봇 프락시(145)를 포함한다. 또한 컨텐츠 서버(14)는 음성 인식, 음성 변환 혹은 TTS 기능을 제공하기 위해 자원 관리부(146)를 더 포함할 수 있다.11 shows a detailed block diagram of the content server 14. The illustrated content server 14 includes a packet transceiver 141, a packet analyzer 142, a content robot 143, a content executor 144, and a robot proxy 145. In addition, the content server 14 may further include a resource manager 146 to provide a voice recognition, voice conversion, or TTS function.

패킷 송수신부(141)는 로봇 서버(13)의 컨텐츠 패킷 관리부(634)와 패킷을 송수신하고, 패킷 해석부(142)는 패킷 송수신부(141)를 통해 수신된 패킷의 종류 또는 내용을 해석한다. 이 패킷은 도 9a 또는 도 9b에 도시된 구조를 갖는 패킷으로, 각 필드 값을 이용하여 컨텐츠 요청 또는 컨텐츠 실행 시작과 같은 명령을 해석한다. 컨텐츠 로봇(143)는 패킷 해석부(142)의 해석 결과에 따라 해당 명령을 수 행한다. 예를 들어, 명령에 따라 컨텐츠의 시작, 중지, 일시정지, 재시작 또는 통신 상태 감지 등과 같은 컨텐츠의 라이프 사이클(life cycle)을 관리한다. 컨텐츠 실행부(144)는 요청된 컨텐츠를 외부 DB1로부터 로딩하고 실행하며 패킷 송수신부(141)를 통해 컨텐츠 패킷 관리부(634)로 전송한다. 로봇 프락시(145)는 패킷 해석부(142)를 통해 전달되는 로봇(10)에 대한 정보를 기반으로 하여 외부 DB2로부터 해당 로봇(10)에 구비된 센서들, 로봇(10)을 구동하는 액추에이터(actuator) 및 컨텐츠 서비스를 위한 로봇(10)의 다른 장치들에 대한 정보, 예를 들어, 프로세서의 사양 등을 독출하여 갖고 있으며, 컨텐츠 실행부(144)에 이러한 정보를 제공함으로써 로봇(10)의 환경에 맞는 컨텐츠 서비스를 제공할 수 있게 한다. 컨텐츠 개발자는 로봇 프락시(303)를 포함하는 표준 API나 XML 형태로 개발하여야 한다.The packet transceiver 141 transmits and receives a packet with the content packet manager 634 of the robot server 13, and the packet analyzer 142 analyzes the type or content of the packet received through the packet transceiver 141. . This packet is a packet having the structure shown in FIG. 9A or 9B, and interprets a command such as a content request or a content execution start using each field value. The content robot 143 executes the command according to the analysis result of the packet analyzer 142. For example, according to the command, the life cycle of the content such as starting, stopping, pausing, restarting, or detecting a communication state is managed. The content executor 144 loads and executes the requested content from the external DB1 and transmits the requested content to the content packet manager 634 through the packet transceiver 141. The robot proxy 145 is based on information about the robot 10 transmitted through the packet analyzing unit 142, and sensors provided in the robot 10 from an external DB2 and an actuator for driving the robot 10 ( The information on the actuators and other devices of the robot 10 for the content service, for example, the specification of the processor and the like, is read out and provided to the content execution unit 144 to provide the information of the robot 10. Enables to provide content services suitable for the environment. The content developer should develop in the form of standard API or XML including the robot proxy 303.

본 발명은 또한 컴퓨터로 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD_ROM, 자기 테이프, 플로피 디스크 및 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브, 예를 들어 인터넷을 통한 전송의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.The invention can also be embodied as computer readable code. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD_ROM, magnetic tape, floppy disks, optical data storage devices, and the like, and also include those implemented in the form of carrier waves, for example, transmission over the Internet. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

본 발명에 따르면, 현재까지의 로봇과 같이 로봇을 제어하거나 컨텐츠를 사 용자에게 제공하기 위하여 센서정보의 수집, 분석 및 처리를 자체 처리하는 고가형 로봇이 아닌 저가형 로봇에서도 수행할 수 있다. 예를 들어, 음악 서비스, 동화구현과 같은 스트리밍 서비스 형태에서부터 대용량 프로세싱 능력을 요구하는 고급 서비스를 로봇 서버의 처리능력을 통하여 서버측 시스템 구조의 변경없이 다수의 로봇들을 원격 제어하거나 고급 엔터테인먼트 서비스를 제공할 수 있다.According to the present invention, in order to control the robot or provide contents to the user as in the present robot, it can be performed even in a low-cost robot, not an expensive robot that processes, collects, analyzes, and processes sensor information itself. For example, through the processing of the robot server, the advanced services that require high-capacity processing capabilities from streaming services such as music service and fairy tale implementation, can remotely control a number of robots or provide advanced entertainment services without changing the server-side system structure. can do.

또한 본 발명은 사용자의 명령 해석 및 실행, 로봇과의 통신을 로봇 서버에서 처리하고, 컨텐츠 데이터의 생성과 실행은 컨텐츠 서버에서 수행하여 로봇 서버를 통해 로봇에 전달함으로써 로봇 서버는 컨텐츠 데이터에 대한 재가공 및 컨텐츠 데이터의 수정을 통해 동일한 컨텐츠에 대해서도 사용자에게 차별화된 서비스를 제공할 수 있다.In another aspect, the present invention processes the user's command interpretation and execution, communication with the robot in the robot server, and the generation and execution of the content data is carried out in the content server and transferred to the robot through the robot server to reprocess the content data And by modifying the content data can provide a differentiated service to the user even for the same content.

이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서, 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.As described above, optimal embodiments have been disclosed in the drawings and the specification. Herein, specific terms have been used, but they are used only for the purpose of illustrating the present invention and are not intended to limit the scope of the present invention as defined in the claims or the claims. Therefore, those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

Claims (28)

로봇과 통신하는 로봇 서버에 있어서,In the robot server to communicate with the robot, 상기 로봇에 대응하여 생성되고, 상기 로봇으로부터 수신되는 명령을 수행하며 상기 로봇을 제어하는 가상 로봇 객체; 및A virtual robot object generated in correspondence with the robot and executing a command received from the robot and controlling the robot; And 상기 로봇에 대응하는 상기 가상 로봇 객체를 생성하고, 상기 로봇과 연결되면 상기 가상 로봇 객체를 활성화하는 가상 로봇 객체 관리부를 포함함을 특징으로 하는 로봇 서버.And a virtual robot object manager configured to generate the virtual robot object corresponding to the robot and activate the virtual robot object when connected to the robot. 제1항에 있어서, 상기 가상 로봇 객체는The method of claim 1, wherein the virtual robot object 상기 로봇의 종류에 따른 통신 규약 및 데이터 처리 방식을 구비하여 상기 로봇과 통신하는 로봇 프락시; 및A robot proxy having a communication protocol and a data processing method according to the type of the robot to communicate with the robot; And 상기 로봇 프락시를 통해 수신한 상기 명령에 대응하여 상기 로봇에 컨텐츠 데이터를 전송하거나 상기 로봇을 관리하는 서비스를 실행하는 가상객체실행부를 포함함을 특징으로 하는 로봇 서버.And a virtual object execution unit configured to transmit content data to the robot or to execute a service for managing the robot in response to the command received through the robot proxy. 제2항에 있어서, 상기 가상객체실행부는The method of claim 2, wherein the virtual object execution unit 상기 명령중 사용자 명령에 따라 상기 컨텐츠 데이터를 상기 로봇 프락시를 통해 상기 로봇에 전송하는 사용자 명령 실행부; 및A user command execution unit for transmitting the content data to the robot through the robot proxy according to a user command among the commands; And 상기 명령중 센서 데이터를 포함하는 명령에 대해 상기 로봇의 상태를 관리 하거나 상기 로봇의 움직임에 따른 보호를 포함하는 서비스를 상기 로봇 프락시를 통해 상기 로봇에 제공하는 로컬 서비스 실행부를 포함함을 특징으로 하는 로봇 서버.And a local service execution unit configured to manage a state of the robot with respect to a command including sensor data among the commands or provide a service including protection according to the movement of the robot to the robot through the robot proxy. Robot server. 제3항에 있어서, 상기 로컬 서비스 실행부는The method of claim 3, wherein the local service execution unit 상기 사용자 명령의 패턴을 학습하여 상기 사용자 명령이 없는 경우에도 소정 조건에 따라 상기 로봇에 상기 컨텐츠를 서비스하는 것을 더 포함함을 특징으로 하는 로봇 서버.And learning the pattern of the user command to provide the contents to the robot according to a predetermined condition even when there is no user command. 제2항 내지 제4항중 어느 한 항에 있어서,The method according to any one of claims 2 to 4, 상기 컨텐츠 데이터는 복수의 컨텐츠를 저장하는 컨텐츠 서버로부터 공급되는 것을 특징으로 하는 로봇 서버.The content data is a robot server, characterized in that supplied from a content server for storing a plurality of content. 제2항 내지 제4항중 어느 한 항에 있어서,The method according to any one of claims 2 to 4, 버퍼를 구비하여 상기 컨텐츠 데이터를 소정 단위로 수신하여 상기 버퍼에 저장하고, 저장된 컨텐츠 데이터를 상기 로봇에 공급하는 컨텐츠 패킷 관리부를 더 포함함을 특징으로 하는 로봇 서버.And a content packet manager configured to receive the content data in a predetermined unit and to store the content data in the buffer, and to supply the stored content data to the robot. 제2항에 있어서, 상기 가상 객체 로봇 관리부는According to claim 2, wherein the virtual object robot management unit 복수의 로봇 종류에 대응하는 복수의 로봇 프락시에 대한 프로그램을 저장하 는 저장수단을 더 포함하고,A storage means for storing a program for a plurality of robot proxies corresponding to the plurality of robot types, 상기 로봇으로부터 연결요청을 수신하면, 상기 로봇의 종류를 분석하여 해당 로봇 프락시에 대한 프로그램을 상기 가상 객체 로봇에 설치하는 것을 특징으로 하는 로봇 서버.When receiving the connection request from the robot, the robot server, characterized in that for analyzing the type of the robot to install a program for the robot proxy in the virtual object robot. 제1항에 있어서,The method of claim 1, 상기 로봇으로부터 인증 데이터를 수신하면, 상기 인증 데이터를 분석하여 상기 로봇에 대한 정보를 얻고, 얻어진 정보를 이용하여 상기 가상 로봇 객체 관리부를 통해 해당 로봇에 대응하는 가상 객체 로봇을 활성화하는 인증부를 더 포함함을 특징으로 하는 로봇 서버.Upon receiving the authentication data from the robot, the authentication data is analyzed to obtain information about the robot, and using the obtained information further comprises an authentication unit for activating a virtual object robot corresponding to the robot through the virtual robot object manager. Robot server characterized in that. 제8항에 있어서, 상기 인증 데이터는The method of claim 8, wherein the authentication data is 상기 로봇의 일련 번호, 인증요청명령을 나타내는 명령, 상기 로봇의 일련 번호에 대응하여 획득된 로봇의 모델 번호 및 상기 로봇의 IP주소를 포함함을 특징으로 하는 로봇 서버.And a serial number of the robot, a command indicating an authentication request command, a model number of the robot obtained corresponding to the serial number of the robot, and an IP address of the robot. 로봇에게 컨텐츠 서비스를 제공하는 컨텐츠 서비스 시스템에 있어서,In the content service system for providing a content service to the robot, 복수의 컨텐츠를 저장하고, 상기 컨텐츠 서비스를 요청받으면 요청된 컨텐츠 데이터를 전송하는 컨텐츠 서버; 및A content server that stores a plurality of contents and transmits the requested contents data when the contents service is requested; And 상기 로봇으로부터 네트워크를 통해 상기 컨텐츠 서비스 요청을 수신하고, 상기 컨텐츠 서버에 접속하여 상기 요청된 컨텐츠 데이터를 수신하여 상기 로봇에게 전송하는 로봇 서버를 포함함을 특징으로 하는 컨텐츠 서비스 시스템.And a robot server that receives the content service request from the robot through a network, accesses the content server, receives the requested content data, and transmits the requested content data to the robot. 제10항에 있어서, 상기 컨텐츠 서버는The method of claim 10, wherein the content server 상기 컨텐츠 서비스 요청에 따른 패킷을 해석하는 패킷 해석부;A packet analyzer for analyzing a packet according to the content service request; 상기 패킷의 해석 결과에 따라 상기 요청된 컨텐츠의 라이프 사이클을 관리하는 명령을 수행하는 컨텐츠 로봇; 및A content robot that executes a command to manage a life cycle of the requested content according to a result of analyzing the packet; And 상기 요청된 컨텐츠를 실행하여 상기 로봇 서버에 전송하는 컨텐츠 실행부를 포함함을 특징으로 하는 컨텐츠 서비스 시스템.And a content execution unit that executes the requested content and transmits the requested content to the robot server. 제11항에 있어서, The method of claim 11, 상기 컨텐츠 서비스를 받는데 필요하고 상기 로봇에 구비된 장치들에 대한 정보를 상기 컨텐츠 실행부에 제공하는 로봇 프락시를 더 포함함을 특징으로 하는 컨텐츠 서비스 시스템.And a robot proxy for providing the content executing unit with information about the devices required for receiving the content service and provided in the robot. 제10항에 있어서, 상기 로봇 서버는The method of claim 10, wherein the robot server 상기 로봇에 대응하여 생성되고, 상기 로봇으로부터 수신되는 상기 컨텐츠 서비스 요청을 해석하여 상기 컨텐츠 서버에 전달하고, 상기 요청된 컨텐츠 데이터를 상기 컨텐츠 서버로부터 수신하여 상기 로봇에 전송하는 가상 로봇 객체; 및A virtual robot object generated corresponding to the robot and interpreting the content service request received from the robot and transmitting the content service request to the content server, and receiving the requested content data from the content server and transmitting the received content data to the robot; And 상기 로봇에 대응하는 상기 가상 로봇 객체를 생성하고, 상기 로봇과 연결되 면 상기 가상 로봇 객체를 활성화하는 가상 로봇 객체 관리부를 포함함을 특징으로 하는 컨텐츠 서비스 시스템.And a virtual robot object manager configured to generate the virtual robot object corresponding to the robot and activate the virtual robot object when connected to the robot. 제13항에 있어서, 상기 가상 로봇 객체는The method of claim 13, wherein the virtual robot object 상기 로봇의 종류에 따른 통신 규약 및 데이터 처리 방식을 구비하여 상기 로봇과 통신하는 로봇 프락시; 및A robot proxy having a communication protocol and a data processing method according to the type of the robot to communicate with the robot; And 상기 로봇 프락시를 통해 수신한 상기 컨텐츠 서비스 요청을 상기 컨텐츠 서버에 전달하고, 상기 요청된 컨텐츠 데이터를 상기 컨텐츠 서버로부터 수신하여 상기 로봇에 전송하는 가상객체실행부를 포함함을 특징으로 하는 컨텐츠 서비스 시스템.And a virtual object execution unit which transmits the content service request received through the robot proxy to the content server, and receives the requested content data from the content server and transmits the requested content data to the robot. 제14항에 있어서, 상기 가상객체실행부는15. The method of claim 14, wherein the virtual object execution unit 상기 로봇으로부터 상기 컨텐츠 서비스 요청이 없는 경우에도 소정 조건을 만족하면 상기 로봇에 컨텐츠를 서비스하는 것을 더 포함함을 특징으로 하는 컨텐츠 서비스 시스템.Even if there is no content service request from the robot, if the predetermined condition is satisfied, the content service system further comprises service to the robot. 제14항 또는 제15항에 있어서,The method according to claim 14 or 15, 버퍼를 구비하여 상기 컨텐츠 데이터를 소정 단위로 수신하여 상기 버퍼에 저장하고, 저장된 컨텐츠 데이터를 상기 로봇에 공급하는 컨텐츠 패킷 관리부를 더 포함함을 특징으로 하는 컨텐츠 서비스 시스템.And a content packet manager configured to receive the content data in a predetermined unit, store the data in a buffer, and supply the stored content data to the robot. 제10항에 있어서,The method of claim 10, 상기 로봇이 상기 컨텐츠 서비스를 요청하기 위해 상기 로봇 서버에 접속하면, 상기 로봇을 인증하는 인증 서버를 더 포함함을 특징으로 하는 컨텐츠 서비스 시스템.And the authentication server for authenticating the robot when the robot accesses the robot server to request the content service. 제17항에 있어서, 상기 인증 서버는18. The system of claim 17, wherein the authentication server is 상기 로봇으로부터 상기 로봇 서버에 접속하는 패킷을 분석하여 상기 패킷을 구성하는 각 필드의 값이 유효한지를 판단하는 패킷 검사부; 및A packet inspecting unit analyzing a packet connected to the robot server from the robot and determining whether a value of each field constituting the packet is valid; And 상기 로봇이 상기 로봇 서버에 접속한 적이 있는지를 판별하고, 판별 결과에 따라 이전에 접속한 주소 및 포트 번호 또는 새로 획득한 주소 및 포트 번호를 이용하여 상기 로봇 서버에 접속하는 제어부를 포함함을 특징으로 하는 제어부를 포함함을 특징으로 하는 컨텐츠 서비스 시스템.And a controller for determining whether the robot has accessed the robot server and accessing the robot server using a previously accessed address and port number or a newly acquired address and port number according to the determination result. Contents service system comprising a control unit. 제18항에 있어서, 상기 로봇 서버에 접속하는 패킷은 19. The method of claim 18, wherein the packet connecting to the robot server 상기 로봇의 일련번호, 접속요청 시간, 접속요구 타입, 상기 로봇 서버의 주소 및 포트 번호를 나타내는 복수의 필드들을 포함함을 특징으로 하는 컨텐츠 서비스 시스템.And a plurality of fields representing a serial number of the robot, a connection request time, a connection request type, an address and a port number of the robot server. 로봇에 컨텐츠 서비스를 제공하는 방법에 있어서,In the method for providing a content service to a robot, 상기 컨텐츠 서비스의 요청이 있으면, 상기 로봇에 대응하는 가상 로봇 객체를 활성화하는 단계; 및Activating a virtual robot object corresponding to the robot when the content service request is made; And 상기 가상 로봇 객체를 통해 요청된 컨텐츠를 획득하여 상기 로봇에 전송하는 단계를 포함함을 특징으로 하는 컨텐츠 서비스 방법.Obtaining the requested content through the virtual robot object and transmitting the requested content to the robot. 제20항에 있어서, The method of claim 20, 상기 컨텐츠 서비스의 요청은 그 이전에 상기 로봇을 인증한 후에 이루어지는 것을 특징으로 하는 컨텐츠 서비스 방법.The request for the content service is a content service method, characterized in that after the authentication of the robot before. 제21항에 있어서, 상기 로봇의 인증은The method of claim 21, wherein the authentication of the robot 상기 로봇으로부터 접속요청 패킷을 수신하여 분석하는 단계;Receiving and analyzing a connection request packet from the robot; 분석결과 상기 접속요청 패킷이 유효하다면, 상기 로봇이 접속할 로봇 서버의 주소 및 포트 번호를 획득하여 해당 로봇 서버와 연결하는 단계; 및If the connection request packet is valid, obtaining the address and port number of the robot server to which the robot is connected and connecting the robot server with the corresponding robot server; And 연결된 로봇 서버는 인증 패킷을 수신하여 상기 로봇을 인증하는 단계에 따라 이루어짐을 특징으로 하는 컨텐츠 서비스 방법.The connected robot server receives the authentication packet and authenticates the robot according to the content service method. 제22항에 있어서, 상기 로봇 서버의 주소 및 포트번호의 획득은The method of claim 22, wherein obtaining the address and port number of the robot server 이전에 상기 로봇이 로봇 서버에 접속한 적이 있는지를 판단하는 단계;Determining whether the robot has previously connected to the robot server; 이전에 접속한 적이 있다면 해당 로봇에 대응하여 저장된 로봇 서버의 주소 및 포트 번호를 독출하는 단계; 및Reading an address and a port number of a robot server stored in correspondence with the robot if the user has previously accessed the robot; And 처음 접속하였다면, 새로운 로봇 서버의 주소 및 포트 번호를 획득하는 단계를 포함함을 특징으로 하는 컨텐츠 서비스 방법.If it is connected for the first time, the content service method comprising the step of obtaining the address and port number of the new robot server. 제20항에 있어서, 상기 가상 로봇 객체의 활성화는The method of claim 20, wherein the activation of the virtual robot object is 상기 로봇에 대응하는 상기 가상 로봇 객체가 존재하지 않는 경우,If the virtual robot object corresponding to the robot does not exist, 상기 로봇과의 통신 규약 및 데이터 처리 방식을 규정한 로봇 프락시를 설치하는 단계; 및Installing a robot proxy that defines a communication protocol and a data processing method with the robot; And 상기 컨텐츠 서비스 요청을 해석 및 처리하는 제1처리부를 설치하는 단계를 포함하여 상기 가상 로봇 객체를 생성하는 과정을 더 포함함을 특징으로 하는 컨텐츠 서비스 방법.And generating a virtual robot object, including installing a first processor configured to interpret and process the content service request. 제24항에 있어서,The method of claim 24, 상기 로봇의 상태관리, 상기 로봇으로부터 전달되는 센서 데이터를 이용하는 상기 로봇의 장애물 회피 기능 및 사용자 명령이 없는 경우에도 사용자에게 컨텐츠 서비스를 제공하는 기능 중 적어도 어느 하나를 수행하는 제2처리부를 설치하는 단계를 더 포함함을 특징으로 하는 컨텐츠 서비스 방법.Installing a second processor configured to perform at least one of state management of the robot, obstacle avoidance function of the robot using the sensor data transmitted from the robot, and a function of providing a content service to a user even when there is no user command Content service method, characterized in that it further comprises. 제20항에 있어서, 상기 컨텐츠의 획득하여 상기 로봇에 전송하는 것은21. The method of claim 20, wherein obtaining and transmitting the content to the robot 상기 가상 로봇 객체가 복수의 컨텐츠를 저장하는 컨텐츠 서버에 접속하여 상기 컨텐츠 서비스를 요청하는 단계;Requesting the content service from the virtual robot object by accessing a content server storing a plurality of contents; 버퍼를 사용하여 상기 컨텐츠 서버로부터 상기 버퍼의 크기에 맞게 상기 컨텐츠의 데이터를 수신하고, 수신된 데이터를 상기 버퍼에 저장하는 단계; 및Receiving data of the content from the content server according to the size of the buffer using a buffer and storing the received data in the buffer; And 저장된 컨텐츠 데이터를 상기 로봇에 전달하는 단계에 따라 이루어지는 것을 특징으로 하는 컨텐츠 서비스 방법. And delivering the stored content data to the robot. 제26항에 있어서, 상기 컨텐츠 서비스를 요청하는 패킷의 구조는The structure of claim 26, wherein the structure of the packet for requesting the content service is 상기 패킷의 길이, 상기 컨텐츠 서비스를 요청하는 패킷임을 나타내는 명령 및 서브명령, 그리고 상기 로봇의 일련 번호를 각각 나타내는 필드를 포함함을 특징으로 하는 컨텐츠 서비스 방법.And a field indicating a length of the packet, a command and a subcommand indicating that the packet is a request for the content service, and a serial number of the robot. 제26항에 있어서, 상기 수신된 데이터의 패킷 구조는27. The packet structure of claim 26, wherein the packet structure of the received data is 상기 패킷의 길이, 상기 데이터의 타입, 상기 로봇의 일련번호, 오디오 길이, 비디오 길이, 제어 데이터의 길이, 오디오 데이터, 비디오 데이터, 제어 데이터 및 체크섬을 각각 나타내는 필드를 포함함을 특징으로 하는 컨텐츠 서비스 방법.And a field indicating the length of the packet, the data type, the serial number of the robot, the audio length, the video length, the control data length, the audio data, the video data, the control data, and the checksum, respectively. Way.
KR1020060020414A 2005-11-17 2006-03-03 Robot server, content providing system and method comprising the same KR20070052641A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/599,903 US7835821B2 (en) 2005-11-17 2006-11-15 Robot server for controlling robot, system having the same for providing content, and method thereof
JP2006312042A JP4712678B2 (en) 2005-11-17 2006-11-17 Robot server for robot control, content providing system including the same, and method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020050110360 2005-11-17
KR20050110360 2005-11-17

Publications (1)

Publication Number Publication Date
KR20070052641A true KR20070052641A (en) 2007-05-22

Family

ID=38275271

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060020414A KR20070052641A (en) 2005-11-17 2006-03-03 Robot server, content providing system and method comprising the same

Country Status (1)

Country Link
KR (1) KR20070052641A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100818305B1 (en) * 2006-11-17 2008-04-01 한국전자통신연구원 Robot control system based on network on dynamic ip address environment
KR100968944B1 (en) * 2009-12-14 2010-07-14 (주) 아이알로봇 Apparatus and method for synchronizing robot
KR100988597B1 (en) * 2008-01-14 2010-10-18 주식회사 유진로봇 Robot content authoring system having user Friendly form in web environments
KR101237252B1 (en) * 2011-04-19 2013-02-27 한성대학교 산학협력단 Method for Controlling Robot And Multimedia Content by Using Virtual Upper Instruction, Computer-Readable Recording Medium with Program Therefor
KR101253561B1 (en) * 2008-12-29 2013-04-11 한국전자통신연구원 Diagnosis and management server for multi-kinds robot
KR20150106553A (en) * 2014-03-12 2015-09-22 (주) 퓨처로봇 Home network system and method using robot
WO2020105755A1 (en) * 2018-11-20 2020-05-28 (주)로보티즈 Device and method for controlling robot motion

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100818305B1 (en) * 2006-11-17 2008-04-01 한국전자통신연구원 Robot control system based on network on dynamic ip address environment
KR100988597B1 (en) * 2008-01-14 2010-10-18 주식회사 유진로봇 Robot content authoring system having user Friendly form in web environments
KR101253561B1 (en) * 2008-12-29 2013-04-11 한국전자통신연구원 Diagnosis and management server for multi-kinds robot
KR100968944B1 (en) * 2009-12-14 2010-07-14 (주) 아이알로봇 Apparatus and method for synchronizing robot
KR101237252B1 (en) * 2011-04-19 2013-02-27 한성대학교 산학협력단 Method for Controlling Robot And Multimedia Content by Using Virtual Upper Instruction, Computer-Readable Recording Medium with Program Therefor
KR20150106553A (en) * 2014-03-12 2015-09-22 (주) 퓨처로봇 Home network system and method using robot
WO2020105755A1 (en) * 2018-11-20 2020-05-28 (주)로보티즈 Device and method for controlling robot motion

Similar Documents

Publication Publication Date Title
US7835821B2 (en) Robot server for controlling robot, system having the same for providing content, and method thereof
US10445142B2 (en) Edge computing platform
US10791200B2 (en) Method, apparatus and server for providing voice service
CN102137059B (en) Method and system for blocking malicious accesses
KR20070052641A (en) Robot server, content providing system and method comprising the same
US8103763B2 (en) System for remote configuration, control, and monitoring of devices over computer network using central server
US20070135967A1 (en) Apparatus and method of controlling network-based robot
US20120284696A1 (en) Method, Apparatuses and a System for Compilation
US20100332984A1 (en) System and method for providing a remote user interface for an application executing on a computing device
TWI313417B (en) Dynamic wizard interface system and method
US20070150104A1 (en) Apparatus and method for controlling network-based robot
US20070078527A1 (en) Interface for Sensor Query and Control
CN112340557A (en) Call information processing method, control board and storage medium
JP4571216B2 (en) Device management system and set value setting method in the system
CN110456738B (en) Monitoring system and monitoring method thereof
RU2605918C2 (en) Method for providing functions in industrial automation system and industrial automation system
KR100772514B1 (en) Apparatus for controlling robot by network-based robot control system and method thereof
CN108255585A (en) SDK exception controls and application program operation method, device and its equipment
CN110428836A (en) Internet of things equipment control method, information forwarding device and Internet of Things server
JP2007157166A (en) Method and apparatus for providing xml-based service in server controlling mobile home service robot
KR20070061241A (en) Network-based robot control device, robot and robot control method
JP7031042B1 (en) IoT control system, data display method, device control method and program
Trifunović et al. Data Exchange Interfaces in Automotive SOA
CN116266120A (en) Adaptive file generation method and device, electronic equipment and medium
CN116341181A (en) Data interaction method and device based on virtual simulation

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E601 Decision to refuse application