KR20100080332A - 다기종 로봇 진단 관리 서버 - Google Patents

다기종 로봇 진단 관리 서버 Download PDF

Info

Publication number
KR20100080332A
KR20100080332A KR1020090090563A KR20090090563A KR20100080332A KR 20100080332 A KR20100080332 A KR 20100080332A KR 1020090090563 A KR1020090090563 A KR 1020090090563A KR 20090090563 A KR20090090563 A KR 20090090563A KR 20100080332 A KR20100080332 A KR 20100080332A
Authority
KR
South Korea
Prior art keywords
robot
server
virtual
management server
robots
Prior art date
Application number
KR1020090090563A
Other languages
English (en)
Other versions
KR101253561B1 (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 US12/632,036 priority Critical patent/US20100168914A1/en
Publication of KR20100080332A publication Critical patent/KR20100080332A/ko
Application granted granted Critical
Publication of KR101253561B1 publication Critical patent/KR101253561B1/ko

Links

Images

Classifications

    • 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

Landscapes

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

Abstract

본 발명에서 다루는 로봇은 초음파, 적외선 등의 센서 장치를 통해 충돌회피를 포함한 주행 기능을 제공하며, 카메라, 디스플레이, 마이크, 스피커 등의 장치를 통해 음성 녹음, 음성 재생, 영상 녹화 등의 기능을 제공하는 최소한의 기능을 가진 경량의 로봇을 대상으로 하며, 음성 인식과 음성 합성, 영상 인식, 화자 인식, 제스처 인식 등과 같은 기능을 제공하는 외부의 서버와 연동하여 해당 기능을 로봇의 기본 기능처럼 제공해 줄 수 있는 로봇 관리 서버의 구조 및 로봇 내부 구조를 제안한다. 이러한 구조를 통해 로봇 내부 구조를 접근하는 동일한 인터페이스의 제공이 가능하게 되며, 로봇 개발자들은 이러한 인터페이스를 통해 다양한 기종의 로봇을 다루는 응용의 개발 및 로봇의 기본 기능에 제약 받지 않고 응용을 개발 가능하게 된다. 또한, 상태 진단을 통해 로봇의 운영 중 발생할 수 있는 오동작과 장애를 파악하여 적절한 처리를 할 수 있는 응용의 개발이 가능하게 된다.
로봇, 로봇 관리, 원격 진단

Description

다기종 로봇 진단 관리 서버{DIAGNOSIS AND MANAGEMENT SERVER FOR MULTI-KINDS ROBOT}
본 발명은 다기종 로봇 원격 진단 관리 서버 및 그 방법에 관한 것이다. 더욱 상세하게는, 다기종 로봇의 상태 진단을 통해 로봇의 장애 여부를 파악하고 이에 대한 처리를 할 수 있는 다기종 로봇 원격 진단 서버 및 그 진단 방법에 관한 것이다.
본 발명은 지식경제부의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호:2008-S-029-01, 과제명:RUPI-서버 기술 개발].
전통적으로 로봇은 산업용 로봇 기술을 중심으로 모터, 감속기, 센서 등 전자, 기계, 컴퓨터 H/W 등과 관련된 산업 분야에 폭 넓게 활용되어 산업을 활성화하고 기술을 혁신하는데 기여하여 왔다. 또한, 군사용, 연구 개발용 등의 특수 목적을 가진 로봇도 지속적으로 개발되어 활용되어 왔다. 향후 로봇은 지능형 서비스 로봇 기술을 중심으로 기존 컴퓨터 및 각종 정보기기에서의 이동 능력 및 지능 기술을 혁신할 것으로 기대되며, 새로운 로봇 시장을 창출하고 비약적으로 성장할 것으로 예측되고 있다. 현재로서는 이러한 지능형 로봇을 위한 시장이 형성되어 있다 고는 할 수 없지만, 향후 2020년에 최소 4000억불 규모의 시장이 형성될 것으로 예상되고 있다(출처:IFR 자료, 미쯔비시연구소, 일본공업회자료). 인간과 상호작용을 통하여 인간의 감정을 이해하고 반응하며 정보통신 기술을 바탕으로, 인간에게 다양한 서비스를 제공하는 로봇. 지능형 서비스 로봇은 외부환경을 인식하고 스스로 상황을 판단하여 자율적으로 동작하는 로봇을 의미한다. 예컨대, 자동차, 전자제품 반도체, bio 신약 제조, 농업, 건설, 수중, 극한작업 등에 쓰이는 산업용 로봇, 가사, 교육, 청소, 경비, 배달, 애완, 게임, 의료, 간호 등에 쓰이는 서비스 로봇 등으로 구분될 수 있다.
전술한 바와 같이, 최근 로봇 기술이 발달하면서 로봇의 활용도가 넓어지고 있으며, 이에 따라 더 많은 기능이 로봇에게 요구되고 있고, 로봇의 종류 또한 기능의 다양함만큼이나 다양한 모습을 보이고 있다.
한편, 전술한 다양한 로봇들은 일반적으로 독립형 로봇으로서, 외부 환경을 센싱하고(Sensing), 센싱된 상황 정보를 바탕으로 판단하고(Processing), 판단 결과에 따라 행동(Action)하는 세 가지 기능 요소를 갖는다.
하지만, 기존의 독립형 로봇은 적외선 센서, 카메라 센서, 초음파 센서, 가속도 센서 등 로봇 자체에 구비된 자체 센서만으로 환경을 인식하기 때문에 상황인식에 제한이 있고, 로봇 자체의 프로세서만을 이용하기 때문에 프로세싱 능력에 한계를 갖는다는 문제점이 있었다.
따라서, 로봇 자체에서 처리되던 전술한 기능(Sensing, Processing, Action)들을 분산하여 처리할 수 있는 네트워크 기반 로봇이 도입되었다.
네트워크 기반 로봇의 목적은 외부의 센싱 기능과 외부의 프로세싱 기능을 네트워크를 통해서 활용함으로써 기존 로봇의 상황 인식 및 프로세싱의 한계를 극복하고 다양한 서비스를 제공할 수 있도록 하는 것이다. 즉, 로봇 자체의 센싱 기능을 늘려가기 보다는 로봇 서버와 같은 외부 환경에 내재된 센서의 기능을 활용하고, 로봇의 프로세싱 기능을 높이기 보다는 로봇 서버와 같은 원격지의 고기능 서버를 활용함으로써 가격과 성능 면에서 장점을 갖을 수 있는 로봇이 구현될 수 있다. 즉, 네트워크 기반 로봇은 로봇 서비스 주요한 기능을 외부 서버에서 제공하고 로봇 하드웨어 구성을 단순화시킬 수 있기 때문에, 가격은 상대적으로 저렴하지만 우수한 성능을 갖는 로봇을 구현할 수가 있다.
최근 로봇 기술이 발달하면서 로봇의 활용도가 넓어지고 있으며, 이에 따라 더 많은 기능이 로봇에게 요구되고 있고, 로봇의 종류 또한 기능의 다양함만큼이나 다양한 모습을 보이고 있다. 한편, 제작사 별로 로봇들의 기능과 이를 실현하기 위한 내부 플랫폼과 구조가 다르기 때문에 이러한 상이성을 극복하고 다수의 이기종 로봇을 운영하기 위해서 로봇 통합 S/W 플랫폼(RUPI) 규격이 만들어지게 되었다.
본 발명은 상기한 바와 같은 문제점을 해결하기 위해 고안된 것으로서,
본 발명에서 다루는 로봇은 초음파, 적외선 등의 센서 장치를 통해 충돌회피를 포함한 주행 기능을 제공하며, 카메라, 디스플레이, 마이크, 스피커 등의 장치를 통해 음성 녹음, 음성 재생, 영상 녹화 등의 기능을 제공하는 최소한의 기능을 가진 경량의 로봇을 대상으로 하며, 음성 인식과 음성 합성, 영상 인식, 화자 인식, 제스처 인식 등과 같은 기능을 제공하는 외부의 서버와 연동하여 해당 기능을 로봇의 기본 기능처럼 제공해 줄 수 있는 로봇 관리 서버의 구조 및 로봇 내부 구조를 제안한다. 이러한 구조를 통해 로봇 내부 구조를 접근하는 동일한 인터페이스의 제공이 가능하게 되며, 로봇 개발자들은 이러한 인터페이스를 통해 다양한 기종의 로봇을 다루는 응용의 개발 및 로봇의 기본 기능에 제약 받지 않고 응용을 개발 가능하게 된다. 또한, 상태 진단을 통해 로봇의 운영 중 발생할 수 있는 오동작과 장애를 파악하여 적절한 처리를 할 수 있는 응용의 개발이 가능하게 된다.
본 발명은 다수의 로봇과 네트워크로 연결된 로봇 관리 서버에 있어서, 가상 로봇 서버를 생성 또는 삭제하는 로봇 관리자, 연결된 로봇에 대해 접속 관리, 인증, 진단 및 프로파일링 중 하나 이상을 수행하는 관리 기능 모듈, 상기 로봇 관리자에 의해 생성되며 연결된 로봇의 기종수만큼 생성되는 상기 가상 로봇 서버 및 연결된 로봇의 수만큼 생성되어 해당 기종에 대응하는 가상 로봇 서버에 각각 연결 되는 가상 로봇 객체를 포함하는 로봇 관리 서버이다.
또한, 상기 로봇 관리자는 새로운 로봇이 연결되면, 생성되어 있는 가상 로봇 서버들 중에서 상기 새롭게 연결된 로봇의 기종에 해당하는 가상 로봇 서버가 있는지를 판단하고, 해당하는 가상 로봇 서버가 있다고 판단되면, 상기 새롭게 연결된 로봇에 대한 가상 로봇 객체를 생성한 후 상기 해당하는 가상 로봇 서버에 연결시키고, 해당하는 가상 로봇 서버가 없다고 판단되면, 상기 새롭게 연결된 로봇 에 대한 가상 로봇 객체 및 상기 새롭게 연결된 로봇의 기종에 대한 가상 로봇 서버를 생성하여 양자를 연결시키는 것을 특징으로 한다.
한편, 상기 가상 로봇 서버는 로봇이 접속된 경우 상기 가상 로봇 객체를 생성하고, 로봇의 접속이 해제된 경우 상기 가상 로봇 객체를 삭제하는 것을 특징으로 한다.
또한, 상기 가상 로봇 객체는 로봇의 기능에 접근하기 위한 하나 이상의 가상 컴포넌트를 포함하고 있는 것을 특징으로 한다.
그리고, 상기 가상 로봇 객체는 로봇에 설치되어 있는 기능 이외에 추가적인 기능을 수행할 수 있도록 하는 하나 이상의 가상 컴포넌트를 포함하고 있는 것을 특징으로 한다.
한편, 상기 로봇 관리 서버는 외부의 서버와 접속이 가능하고, 상기 외부 서버는 로봇의 기능을 제공하는 것을 특징으로 한다.
또한, 상기 로봇 관리 서버는, 로봇에 포함되고 로봇의 오동작 또는 장애를 진단할 수 있는 상태 진단 모듈의 진단 결과를 수신할 수 있는 것을 특징으로 한다.
한편, 상기 로봇 관리 서버의 수신 데이터는 네트워크에 연결된 단말기를 통해 조회가 가능한 것을 특징으로 한다.
그리고, 상기 로봇은 RUPI 규격에 의해 표준화된 로봇인 것을 특징으로 한다.
또한, 상기 로봇 관리 서버는 유선 또는 무선 방식으로 로봇에 연결되는 것 을 특징으로 한다.
본 발명에 따르면 다음과 같은 효과가 있다.
다양한 이기종 로봇들을 동시에 운영하기 위해서는 통신 방식의 표준화, 접속 제어 및 인증 방식의 표준화 및 각 로봇 별로 상이한 기능에 대한 지원 및 로봇의 기능 제약을 보완할 수 있는 기능 지원 등이 필요하다. 또한, 로봇의 안정적인 운영을 위해서 로봇에 장애 발생을 탐지하고 이를 수집하여 분석할 수 있는 기능이 필요하다. 본 발명에서 제안한 로봇 관리 서버와 로봇의 구조는 이러한 이기종 로봇의 기능 제약을 극복하고 다수의 로봇이 동시에 하나의 서버에서 관리될 수 있도록 한다. 또한, 로봇의 상태 진단을 통해 로봇의 장애 여부를 파악하고 이에 대한 처리를 할 수 있는 구조를 제공함으로써 다수의 로봇을 보다 효과적으로 운영할 수 있도록 한다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
도 1을 참조하면 본 발명에 따른 로봇 원격 진단 관리 시스템은 로봇(100)과 로봇 관리 서버(140)로 구성된다. 로봇 관리 서버(140)와 로봇(100)은 네트워크를 통해 유선 또는 무선 방식으로 접속될 수 있고, 복수개의 로봇이 로봇 관리 서버에 접속될 수 있다. 여기서 로봇은 인간의 형태를 하고 있는 기계 장치 뿐 만 아니라, 기계, 전자 장치를 포함하고, 제어가 가능 한 것이면 어떤 것이든 될 수 있다. 본 시스템에는 OPRoS 서버(120)를 포함할 수 있다. OPRoS서버(120)는 로봇 관리 서버(140)에 연결되는 외부 서버일 수도 있고, 로봇 관리 서버(140)와 통합하여 운영되는 서버를 통칭하는 의미로 사용될 수도 있다. 한편, 로봇 관리 서버(140)의 데이터는 외부 데이터베이스에 저장될 수도 있고, 외부 단말기에서 접속하여 상기 데이터베이스의 내용을 열람해 볼 수도 있다.
상기 시스템이 다양한 이기종 로봇들을 동시에 운영하기 위해서는 통신 방식의 표준화, 접속 제어 및 인증 방식의 표준화 및 각 로봇 별로 상이한 기능에 대한 지원 및 로봇의 기능 제약을 보완할 수 있는 기능 지원 등이 필요하다. 이를 위해서 RUPI(Robot Unified Platform Initiative) 규격을 사용할 수 있다. RUPI 규격이란 다양한 로봇 플랫폼이 서버와 연동하여 다양한 로봇 서비스를 수행할 수 있도록 지원하는 네트워크 기반 로봇(URC)의 표준 환경을 제공하는 제반 규격 및 플랫폼이다. RUPI 규격을 사용하면 로봇 S/W 컴포넌트간의 상호호환성이 좋고, 다양한 통신 및 정보 기기와의 상호 운용성이 좋으며, 이종 통신망과의 상호 접속성이 좋다.
RUPI에서 제공하고 있는 로봇의 내부 구성 모듈은 일반적으로 도 2 및 도 3에서 제시되는 바와 같다. 로봇의 내부 구성 모듈(300)은 도 3 에서와 같이 '로봇 H/W(390)', '로봇 S/W 컴포넌트(360)', '로봇 서비스 컴포넌트(330)' 및 로봇 응용의 계층별 모듈로 구성된다.
'로봇 H/W(390)'는 로봇의 하드웨어 장치와 드라이버로 구성되는데 머리(406), 팔(402), 바퀴(408) 등과 같은 구동부 장치와 초음파(392), Gyro(가속도)(394), Touch(396), 적외선 센서(398) 등과 같은 센서부 장치와 마이크(404), 스피커(410), 카메라(400)등과 같은 일반부 장치들로 이루어진다. 상기 하드웨어 장치와 드라이버는 로봇의 기종에 따라 추가되거나 삭제될 수 있다.
'로봇 S/W 컴포넌트(360)'는 로봇의 하드웨어 장치들을 로봇 응용 및 소프트웨어 컴포넌트들이 사용할 수 있도록 하는 제어 모듈들로 구성되는데 상기 제어 모듈은 장치와 바인딩 되어 있다. 예를 들어 도면에 나타난 바와 같이, 카메라 제어(362), 센서 제어(364), 팔 제어(368), 바퀴 제어(370), 음성 녹음(366), 음성 재생(372) 등과 같은 모듈로 이루어진다. 여기서도 마찬가지로 상기 제어 모듈은 로봇의 기종에 따라 추가되거나 삭제될 수 있다.
'로봇 서비스 컴포넌트(330)'는 로봇 S/W 컴포넌트(360)들을 이용해 서비스를 제공하는 모듈(342, 344, 346, 348, 350, 352)과 이들을 관리하는 관리 모듈(332, 334, 336, 338, 340)로 구성되는데 영상 인식(342), 음성 인식(344), 화자 인식(348), 음성 합성(350), 주행(346), 충돌 회피(352) 등과 같은 독립적인 서비스를 제공하는 소프트웨어 모듈과 '로봇 H/W(390)'와 '로봇 S/W 컴포넌트(360)'의 구성 모듈을 관리하는 장치 관리자(334), 구동 관리자(338), 센서 관리자(340) 및 SC(Software Component) 관리자(332) 등으로 이루어지며, 로봇 응용들은 이러한 로봇 서비스 컴포넌트와 관리자를 활용하여 개발되어 수행된다. 예를 들면, 충돌 회피 서비스(352)를 수행하기 위해서, 즉, 로봇이 소리에 반응하여 움직이도록 하는 응용을 수행하기 위해서는, 마이크(404)를 통해 소리를 인식하고, 로봇이 움직이도록 바퀴(408)를 사용한다. 상기 마이크(404)를 통해 입력된 소리를 처리하기 위해 음성 녹음(366)을 수행하거나 센서제어(364)를 통해 소리가 입력되었음을 판단하고, 이후 바퀴 제어(370)를 통해 바퀴를 움직인다. 상기 센서 제어(364) 또는 바퀴 제어(370)는 센서 관리자(340) 또는 구동 관리자(338)에 의해 관리된다. 이와 같이 로봇에 의해 제공되는 서비스는 로봇의 하드웨어 및 그 제어를 통해 만들어 질 수 있으며, 로봇은 로봇에 내장된 서비스 이외에도 외부 서버 등에 의하여 로봇의 하드웨어가 제어되어 서비스를 제공할 수 있다.
도 2 및 도 3에 나타나는 바와 같이, 로봇은 로봇 서비스 컴포넌트로써 진단 에이전트(200, 336)를 포함할 수 있다. 도 3에서와 같이 진단 에이전트는 로봇 서비스 컴포넌트의 하나로서 동작하는데 도 2에서와 같이 각 관리자 모듈에게 쿼리를 전송하여 각 하드웨어 장치 및 소프트웨어 모듈의 장애 발생 여부에 대한 결과를 수집하는 역할을 한다. 예를 들어, 카메라에 문제가 생긴 경우, 진단 에이전트(200)는 SC 관리자(220), 장치 관리자(240), 센서 관리자(260), 구동 관리자(280)에 명령하여 각 장치들의 동작 이상 여부를 진단하도록 한다. 그 결과 장치 관리자(240) 카메라, 스피커, 마이크, LED 중에서 카메라에 이상이 있음을 발견하고, 그 결과를 진단 에이전트(200)에 알려준다.
이와 같이 본 발명은 표준화된 로봇, 상기 로봇에 접속되는 로봇 관리 서버로 구성되고, 별도로 접속되는 외부 서버, 단말기, 데이터베이스(DB)를 더 구비할 수 있다.
이하 본 발명의 바람직한 실시예를 첨부된 도면을 참조하여 상세히 설명한다.
<제 1 실시예>
로봇 관리 서버(430)는 도 4에서와 같이 로봇 관리자(440), 로봇 서버(450, 460, 470), 로봇 객체(455, 457, 475, 477) 및 관리 기능 모듈(접속 관리, 인증, 진단, 프로파일링)(480)로 구성된다. 먼저, 로봇이 접속되면, 로봇 관리 서버(430)에서 정하고 있는 표준 규격(예를 들면, RUPI 규격)에 적합한지를 판단한다. 만약 표준 규격에 적합한 로봇인 경우에는 로봇 관리 서버(430)에 접속을 허용한다. 로봇이 로봇 관리 서버(430)에 접속을 하는 순간 로봇 관리자(440)는 로봇 서버(450, 460, 470)를 생성하고, 로봇 서버(450, 460, 470)는 로봇 객체(455, 457, 475, 477)를 생성한다. 로봇 객체(455, 457, 475, 477)는 접속한 실제 로봇의 수만큼 생성되며 로봇 서버(450, 460, 470)에 의해 관리되는데, 다양한 기종의 로봇이 동시에 로봇 관리 서버(430)에 의해 관리될 수 있도록 하기 위해 각 로봇 기종에 따라 각각의 로봇 서버(450, 460, 470)를 생성한다. 즉, 하나의 로봇 서버에는 동일 기종의 로봇만을 관리할 수 있도록 하여 이기종 로봇이 가진 기능적 상이성, 인증 방식, 기능 확장에 대한 차이점을 각각의 로봇 서버에 의해 처리될 수 있도록 한다. 그러므로 A 기종 로봇이 하나 접속하면 로봇 서버 및 로봇 객체가 하나씩 생성되고, B 기종이 추가로 접속되면 로봇 서버 및 로봇 객체가 추가적으로 하나씩 더 생성되며, 이후 A 기종 로봇이 추가로 접속되면, A 기종에 대한 로봇 서버는 이미 생 성되었기 때문에, 로봇 객체만 추가로 생성된다.
로봇 객체(455, 457, 475, 477)에는 각 실제 로봇이 가진 '로봇 서비스 컴포넌트'들에 대한 가상 컴포넌트(456, 458, 476, 478)를 생성하여 가지고 있으며 사용자 또는 원격 로봇 응용은 이들 가상 컴포넌트를 통해 실제 로봇의 기능을 접근할 수 있게 한다. 예를 들어, 로봇이 영상 인식, 음성 인식, 음성 합성의 기능을 가지고 있다면, 로봇 객체(455, 457, 475, 477)에는 상기 기능들을 수행할 수 있는 가상 컴포넌트(456, 458, 476, 478)를 가지게 되고, 상기 가상 컴포넌트(456, 458, 476, 478)를 실행함으로써, 실제적으로 로봇 내부에 있는 영상 인식, 음성 인식, 음성 합성 등의 기능을 사용할 수 있게 되는 것이다. 접속된 로봇이 어떠한 기능을 가지고 있는지는, 표준에서 정해진 서식에 따라, 로봇에 저장되어 있으므로, 이러한 데이터를 처리함으로써, 로봇 관리 서버(430)는 로봇에 어떠한 기능이 내장되어 있는지 알 수 있고, 이러한 기능을 가상 컴포넌트(456, 458, 476, 478)로 하여금 로봇 객체(455, 457, 475, 477)에 저장할 수 있는 것이다. 상기 가상 컴포넌트는 동시에 여러 개가 실행되어 여러 기종의 다수의 로봇을 동시에 제어할 수 있다. 또한 각 기종마다 공통되는 기능인 경우에는 묶어서 동시에 같은 기능을 수행하도록 할 수도 있다.
로봇 객체(455, 457, 475, 477)는 로봇이 접속하여 인증이 성공하는 순간 생성되며 접속을 해제하면 삭제된다. 여기서, 로봇 객체(455, 457, 475, 477)가 모두 삭제된 로봇 서버(450, 460, 470)는 메모리에서 삭제되지는 않고 로봇의 접속을 대기하도록 할 수도 있다. 이렇게 하면, 로봇 객체가 모두 삭제된 로봇 서버에 대응 되는 기종의 로봇이 다시 접속되는 경우, 로봇 서버를 또다시 생성할 필요가 없기 때문이다.
로봇 관리자(440)는 로봇 서버(450, 460, 470)들을 생성하고 검색하는 기능을 제공하며, 관리 기능 모듈(480)은 '접속 관리(482)', '인증(484)', '진단(486)', '기능 확장(프로파일링)(488)'등이 있으며 이들 모듈은 로봇 서버(450, 460, 470)에 의해 공유되어 사용되며, 로봇 관리 서버(430)가 실행을 시작하면 생성되어 로봇 서버(450, 460, 470)로부터의 요청에 응답하게 된다.
이하 도 8을 참조하여, 본 발명에서 로봇이 접속되는 시점부터, 로봇의 접속이 해제되는 시점까지의 단계를 설명한다. 먼저, 로봇이 접속되면(S800), 로봇 관리 서버의 관리 기능 모듈은 로봇이 표준에 적합한지를 인증하고, 적합하지 않다면 로봇의 접속을 종료하고, 적합하다면 인증이 성공하게 된다.(S805) 인증이 성공된 경우, 로봇 관리 서버는 로봇으로부터 로봇의 기종 정보를 수신한다.(S810) 이후 상기 수신된 정보를 바탕으로 로봇 관리 서버 내에 접속된 로봇의 기종에 해당하는 가상 로봇 서버가 이미 생성되어 있는지 여부를 판단한다.(S815) 만약 해당하는 기종의 가상 로봇 서버가 생성되어 있는 경우에는 접속된 로봇에 해당하는 가상 로봇 객체를 생성하고, 생성된 가상 로봇 객체를 이미 생성되어 있는 가상 로봇 서버에 연결한다.(S820) 만약 해당하는 기종의 가상 로봇 서버가 생성되어 있지 않은 경우에는, 접속된 로봇에 해당하는 가상 로봇 객체를 생성하고, 접속된 로봇의 기종에 해당하는 가상 로봇 서버를 생성한 후, 생성된 가상 로봇 객체를 생성된 가상 로봇 서버에 연결한다.(S825) 이후 로봇의 접속이 종료되면 가상 로봇 객체를 삭제한 다.(S830)
상기와 같은 구성을 통해 본 실시예는, 이기종 로봇의 기능 제약을 극복하고 다수의 로봇이 동시에 하나의 서버에서 관리될 수 있도록 한다.
<제 2 실시예>
도 5는 제 2 실시예를 도시한 도면으로써, 상기 제 1실시예에서 제시한 로봇 관리 서버가 로봇과 연결되어 사용되는 모습을 나타내는 도면이다. 먼저 로봇(520)이 연결되면 로봇 관리 서버(540)의 로봇관리자는 로봇 관리 서버(540)에서 정해놓은 표준 규격에 적합한 로봇인지를 판단한다. 상기 인증과정을 거친 후, 접속을 완료하면, 로봇 관리자는 접속한 로봇(520)의 기종 정보를 읽은 후, 기종에 따른 로봇 서버를 생성한다. 만약 동일 기종의 로봇 서버가 이미 생성되어 있는 경우에는 별도로 로봇 서버를 생성하지 않는다. 이후 로봇 서버는 로봇 객체를 생성하고, 로봇의 기능 정보를 읽어 온 후 상기 기능을 수행할 수 있는 가상 컴포넌트를 포함하는 로봇 객체를 생성한다. 이와 같이, 로봇의 기종 및 로봇의 기능 정보를 읽어 올 수 있는 이유는 로봇이 표준화된 규격에 의해 약속되어 정보가 저장되어 있기 때문이다. 본 실시예에서는 로봇 관리 서버가 로봇에 내장되어 있는 컴포넌트 이외의 컴포넌트를 추가적으로 가질 수 있다는 점에서 제 1 실시예와 차이가 있다. 예를 들어, 로봇(520)은 음성 합성 기능을 가지지 않고, 단지 마이크와 스피커만 가질 수 있다. 이 경우, 로봇(520)은 마이크를 통해 입력받은 데이터를 로봇 관리 서버(540)에 전송하고, 로봇 관리 서버(540) 내의 가상 컴포넌트(545)에서 상기 입력 받은 데이터를 이용해 음성 합성 처리를 한다. 이 후, 처리된 데이터를 로봇(520)에 전송하고, 로봇(520)에서 스피커를 통해 합성된 데이터를 출력할 수 있다. 이와 같은 과정을 통하면, 로봇(520)은 별도의 음성 합성 장치를 구비하지 않아도, 음성 합성 기능을 구비할 수 있고, 이를 통해 소형화가 가능하고, 로봇의 기능이 확장된다. 본 실시예의 가상 컴포넌트(545)는 컴포넌트의 구체적인 내용이 로봇(520)이 아닌 로봇 관리 서버(540)에 구현되어 있다는 점에서 제 1 실시예의 도 4의 가상 컴포넌트(456, 458, 476, 478)와 다른 점이 있다. 그러나 결국 가상 로봇 서버에 연결된 가상 로봇 객체 내에서 로봇의 기능을 수행한다는 점에서 같으므로, 제 1 실시예와 마찬가지로 명칭은 가상 컴포넌트라고 한다.
상기와 같은 가상 컴포넌트(545)의 추가적인 기능은, 로봇 관리 서버(540)에 로봇(520)이 접속된 이후에 추가될 수도 있고, 호환이 가능한 경우에는 다른 기종의 기능을 가져와 사용할 수도 있다. 또한 로봇 관리 서버(540)에는 별도의 저장장치(560)가 마련될 수 있다. 즉, 로봇(520)은 언제든지 저장하고자 하는 정보를 로봇 관리 서버(540)에 보내고, 보내진 정보는 로봇 관리 서버(540)에 연결된 저장장치(560)에 저장된다. 이후 로봇(520)은 필요한 정보를 로봇 관리 서버(540)의 저장장치에 접속하여 수신받을 수 있다.
<제 3 실시예>
도 6은 제 3 실시예를 도시한 도면으로써, 상기 제 1실시예에서 제시한 로봇 관리 서버가 로봇과 연결되고, 별도의 외부서버(660)에 접속되어 있다. 먼저 로 봇(620)이 연결되면 로봇 관리 서버(640)의 로봇관리자는 로봇 관리 서버(640)에서 정해놓은 표준 규격에 적합한 로봇인지를 판단한다. 만약 여러가지 표준이 상호 전환 가능하고, 이러한 전환 기능을 로봇 관리 서버(640)가 내장하고 있다면, 다수의 표준 규격을 포함하는 것도 가능하다.
상기 인증과정을 거친 후, 접속을 완료하면, 로봇 관리자는 접속한 로봇(620)의 기종 정보를 읽은 후, 기종에 따른 로봇 서버를 생성한다. 만약 동일 기종의 로봇 서버가 이미 생성되어 있는 경우에는 별도로 로봇 서버를 생성하지 않는다. 이후 로봇 서버는 로봇 객체를 생성하고, 로봇의 기능 정보를 읽어 온 후 상기 기능을 수행할 수 있는 가상 컴포넌트를 포함하는 로봇 객체를 생성한다. 이와 같이, 로봇의 기종 및 로봇의 기능 정보를 읽어 올 수 있는 이유는 로봇이 표준화된 규격에 의해 약속되어 정보가 저장되어 있기 때문이다. 본 실시예에서는 로봇 관리 서버가 로봇에 내장되어 있는 컴포넌트 이외의 컴포넌트를 추가적으로 가질 수 있다는 점에서 제 1 실시예와 다르고, 외부 서버(660)에 접속될 수 있다는 점에서 제 2 실시예와 다르다. 상기 제 2 실시예에서 설명한 바와 같이, 로봇(620)은 음성 합성 기능을 구비하지 않고도, 로봇 관리 서버(640)에 의해, 음성 합성 기능을 사용할 수 있다. 즉, 제 2 실시예에서는 로봇에 구비되지 않은 기능을 로봇 관리 서버 내부에 구비함으로써, 로봇의 기능을 확장한 것임에 비해, 제 3 실시예에서는, 별도의 서버(660)에 로봇의 확장 기능을 구비하게 된다. 즉, 로봇(620)이 음성 합성 기능이 필요한 경우에는 로봇 관리 서버(640)는 음성 합성 기능을 가지는 외부 서버(660)와 연결한다. 이후 로봇(620)에서 음성 데이터를 로봇 관리 서버에 전송하 고(640), 로봇 관리 서버(640)는 이 데이터를 외부서버(660)에 전송하고, 외부 서버(660)는 전송받은 음성 데이터를 처리한 후, 처리한 데이터를 다시 로봇 관리 서버(640)에 전송하게 된다. 이 후, 로봇 관리 서버(640)는 로봇(620)에 처리된 데이터를 다시 전송한다. 이와 같은 구성은, 로봇(620)의 확장기능이 필요한 경우, 로봇 관리 서버(640)는 필요한 기능을 구비하고 있는 외부서버(660)에 접속만 하면 되므로, 매우 간편하게 로봇의 기능을 확장 할 수 있다.
<제 4 실시예>
도 7는 본 발명에 따른 로봇 리소스 진단 구조도로서 로봇 내부의 시스템 리소스를 조회하는데 사용되는 모듈의 구조도이다.
즉 로봇은, 로봇 내부의 장치를 진단하는 진단 모듈을 포함할 수 있다.
'진단'기능에서는 로봇의 상태를 모니터링하여 로봇이 정상적으로 동작하고 있는지에 대한 정보를 생성한 후 이를 관리자에게 리포팅하여야 하며, 이를 위해서 로봇의 시스템 내부 하드웨어 장치, 하드웨어 드라이버 모듈, 소프트웨어 컴포넌트 또는 소프트웨어 모듈 등에 대한 운영 정보를 가져올 수 있어야 한다. 윈도우 운영체제 상에서는 WMI(Windows Management Instrumentation) 기능을 사용해 윈도우 상에 동작하는 모든 하드웨어 장치, 소프트웨어 모듈에 대한 정적 정보와 동적 운영 정보를 가져올 수 있는데 이 기능을 진단 에이전트가 사용할 수 있도록 WMI API와 연동하여 로봇의 운영 시스템이 윈도우 운영체제인 경우에 로봇의 오동작, 오류 등에 대한 정보를 실시간으로 추출하여 원격지에 전송함으로써 관리자가 로봇의 상태 를 모니터링할 수 있게 된다.
즉, 진단 에이전트(722)는 로봇의 리소스 정보가 필요한 경우 WMI 기반 조회 API(724)를 통해 진단 명령을 내리고, WMI 기반 조회 API(724)는 WMI SYSTEM(740)을 통해 진단 결과를 수신 받는다. 이후 수신 정보를 진단 에이전트(722)에 전송하게 된다. 상기의 리소스 정보는 별도의 데이터베이스에 저장될 수 있고, 원격지의 단말기에서 접속하여 조회해 볼 수도 있다. 본 실시예는 MICROSOFT사의 운영체제인 WINDOWS를 기반으로 하는 것을 전제로 하여 설명하였으나, 리눅스, 유닉스 등 다른 운영체제로 로봇이 구성되는 것도 가능하다.
본 발명은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크 및 광 데이터 저장장치 등이 있을 수 있다. 또한, 캐리어 웨이브(예컨대, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
이상에서와 같이 도면과 명세서에서 최적의 실시 예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로, 본 기술 분야의 통상의 지식을 가진자라면 이로 부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
도 1은 본 발명에 따른 로봇 원격 관리 시스템 구성도로서, 로봇 관리 서버와 로봇 및 로봇 미들웨어 서버(OPRoS)의 구성도이다.
도 2는 본 발명에 따른 로봇의 기능별 모듈 구성도로서, 특히 진단 에이전트에 관하여, 로봇 내부의 모듈의 기능적 관점에서 본 구성도이다.
도 3은 본 발명에 따른 로봇의 계층별 모듈 구성도로서, 로봇 내부의 모듈을 계층적 관점에서 본 구성도이다.
도 4는 본 발명의 제1 실시예에 따른 로봇 관리 서버의 모듈 구성도로서 로봇 관리 서버 내에서 실제 로봇의 접속 시 생성되어 관리되는 가상 모듈과 공유 모듈의 구성도이다.
도 5는 본 발명의 제2 실시예에 따른 로봇 및 로봇 관리 서버의 구성도이다.
도 6은 본 발명의 제3 실시예에 따른 로봇, 로봇 관리 서버 및 외부 서버의 구성도이다.
도 7는 본 발명의 제4 실시예에 따른 로봇 리소스 진단 구조도로서 로봇 내부의 시스템 리소스를 조회하는데 사용되는 모듈의 구조도이다.
도 8은 본 발명에 따라 로봇 관리 서버에 로봇이 접속 및 해제하는 과정을 나타내는 순서도이다.

Claims (10)

  1. 다수의 로봇과 네트워크로 연결된 로봇 관리 서버에 있어서,
    가상 로봇 서버를 생성 또는 삭제하는 로봇 관리자;
    연결된 로봇에 대해 접속 관리, 인증, 진단 및 프로파일링 중 하나 이상을 수행하는 관리 기능 모듈;
    상기 로봇 관리자에 의해 생성되며 연결된 로봇의 기종수만큼 생성되는 상기 가상 로봇 서버; 및
    연결된 로봇의 수만큼 생성되어 해당 기종에 대응하는 가상 로봇 서버에 각각 연결 되는 가상 로봇 객체를 포함하는, 로봇 관리 서버.
  2. 청구항 1에 있어서,
    상기 로봇 관리자는 새로운 로봇이 연결되면, 생성되어 있는 가상 로봇 서버들 중에서 상기 새롭게 연결된 로봇의 기종에 해당하는 가상 로봇 서버가 있는지를 판단하고,
    해당하는 가상 로봇 서버가 있다고 판단되면, 상기 새롭게 연결된 로봇에 대한 가상 로봇 객체를 생성한 후 상기 해당하는 가상 로봇 서버에 연결시키고,
    해당하는 가상 로봇 서버가 없다고 판단되면, 상기 새롭게 연결된 로봇에 대한 가상 로봇 객체 및 상기 새롭게 연결된 로봇의 기종에 대한 가상 로봇 서버를 생성하여 양자를 연결시키는 것을 특징으로 하는, 로봇 관리 서버.
  3. 청구항 1에 있어서,
    상기 가상 로봇 서버는 로봇이 접속된 경우 상기 가상 로봇 객체를 생성하고, 로봇의 접속이 해제된 경우 상기 가상 로봇 객체를 삭제하는 것을 특징으로 하는, 로봇 관리 서버.
  4. 청구항 1에 있어서,
    상기 가상 로봇 객체는 로봇의 기능에 접근하기 위한 하나 이상의 가상 컴포넌트를 포함하고 있는 것을 특징으로 하는, 로봇 관리 서버.
  5. 청구항 1에 있어서,
    상기 가상 로봇 객체는 로봇에 설치되어 있는 기능 이외에 추가적인 기능을 수행할 수 있도록 하는 하나 이상의 가상 컴포넌트를 포함하고 있는 것을 특징으로 하는, 로봇 관리 서버.
  6. 청구항 1에 있어서,
    상기 로봇 관리 서버는 외부의 서버와 접속이 가능하고,
    상기 외부 서버는 로봇의 기능을 제공하는 것을 특징으로 하는, 로봇 관리 서버.
  7. 청구항 1에 있어서,
    상기 로봇 관리 서버는, 로봇에 포함되고 로봇의 오동작 또는 장애를 진단할 수 있는 상태 진단 모듈의 진단 결과를 수신할 수 있는 것을 특징으로 하는, 로봇 관리 서버.
  8. 청구항 7에 있어서,
    상기 로봇 관리 서버의 수신 데이터는 네트워크에 연결된 단말기를 통해 조회가 가능한 것을 특징으로 하는, 로봇 관리 서버.
  9. 청구항 1에 있어서,
    상기 로봇은 RUPI 규격에 의해 표준화된 로봇인 것을 특징으로 하는, 로봇 관리 서버.
  10. 청구항 1에 있어서,
    상기 로봇 관리 서버는 유선 또는 무선 방식으로 로봇에 연결되는 것을 특징으로 하는, 로봇 관리 서버.
KR1020090090563A 2008-12-29 2009-09-24 다기종 로봇 진단 관리 서버 KR101253561B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/632,036 US20100168914A1 (en) 2008-12-29 2009-12-07 Diagnosis and management server for multi-kinds robots

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20080135419 2008-12-29
KR1020080135419 2008-12-29

Publications (2)

Publication Number Publication Date
KR20100080332A true KR20100080332A (ko) 2010-07-08
KR101253561B1 KR101253561B1 (ko) 2013-04-11

Family

ID=42641291

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090090563A KR101253561B1 (ko) 2008-12-29 2009-09-24 다기종 로봇 진단 관리 서버

Country Status (1)

Country Link
KR (1) KR101253561B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022215776A1 (ko) * 2021-04-07 2022-10-13 엘지전자 주식회사 클라우드 서버 및 클라우드 서버에서 로봇의 소프트웨어 이미지를 변환하는 방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102247911B1 (ko) * 2020-01-09 2021-05-04 엘지전자 주식회사 인공 지능 로봇 및 인공 지능 서버
KR102615501B1 (ko) 2023-04-18 2023-12-19 (주)인티그리트 하이퍼로봇 구현을 위한 로봇통합관리장치 및 그 장치의 구동방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070052641A (ko) * 2005-11-17 2007-05-22 한국전자통신연구원 로봇 제어를 위한 로봇 서버, 이를 포함하는 컨텐츠 제공시스템 및 그 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022215776A1 (ko) * 2021-04-07 2022-10-13 엘지전자 주식회사 클라우드 서버 및 클라우드 서버에서 로봇의 소프트웨어 이미지를 변환하는 방법

Also Published As

Publication number Publication date
KR101253561B1 (ko) 2013-04-11

Similar Documents

Publication Publication Date Title
US20100168914A1 (en) Diagnosis and management server for multi-kinds robots
Du et al. Robot cloud: Bridging the power of robotics and cloud computing
US6889118B2 (en) Hardware abstraction layer for a robot
KR101471729B1 (ko) 최소한 하나의 센서, 액튜에이터 또는 이펙터를 soa네트웍에 접속하기 위한 접속 모듈
US8078357B1 (en) Application-independent and component-isolated system and system of systems framework
US20130261796A1 (en) Intelligent robot apparatus responsive to environmental change and method of controlling and reconfiguring intelligent robot apparatus
KR101253561B1 (ko) 다기종 로봇 진단 관리 서버
KR20070052641A (ko) 로봇 제어를 위한 로봇 서버, 이를 포함하는 컨텐츠 제공시스템 및 그 방법
Delgado et al. Integration of ROS and RT tasks using message pipe mechanism on Xenomai for telepresence robot
González et al. Run-time verification of behaviour-aware mashups in the internet of things
KR101384242B1 (ko) 내부 환경을 동적으로 재구성하는 로봇 장치 및 재구성 방법
Biswas et al. A middleware-driven architecture for information dissemination in distributed sensor networks
KR20090088112A (ko) 로봇 통신 미들웨어 플랫폼 및 그 통신 방법
Park et al. A system architecture to control robot through the acquisition of sensory data in IoT environments
Elkady et al. A plug and play middleware for sensory modules, actuation platforms and task descriptions in robotic manipulation platforms
KR101231771B1 (ko) 로봇 소프트웨어 컴포넌트 동적 재구성 장치 및 방법
KR20190005001A (ko) 로봇 제어 시스템 및 방법
Weber Context and Interaction in the Internet of Things
KR101348664B1 (ko) 시뮬레이션 프로세스 통합 처리 시스템 및 그 방법
KR101251287B1 (ko) 명령 적응형 지능형 로봇 장치 및 제어 방법
KR101104716B1 (ko) 네트워크 기반 로봇 제어를 위한 로봇 클라이언트 관리 시스템 및 그 방법
KR102638951B1 (ko) 이기종 드론/로봇 통합 원격제어 시스템 및 방법
Noergaard Demystifying embedded systems middleware
Mohamed et al. Characteristics of middleware for networked collaborative robots
KR20070050287A (ko) 로봇 공통 프레임워크상에서 명령 수행여부를 검지하는방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160225

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170203

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180212

Year of fee payment: 6