KR100738258B1 - 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법 - Google Patents
스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법 Download PDFInfo
- Publication number
- KR100738258B1 KR100738258B1 KR1020050059737A KR20050059737A KR100738258B1 KR 100738258 B1 KR100738258 B1 KR 100738258B1 KR 1020050059737 A KR1020050059737 A KR 1020050059737A KR 20050059737 A KR20050059737 A KR 20050059737A KR 100738258 B1 KR100738258 B1 KR 100738258B1
- Authority
- KR
- South Korea
- Prior art keywords
- robot
- content
- control
- script
- authoring tool
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/23—Pc programming
- G05B2219/23373—Interactive guidance by voice message
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/23—Pc programming
- G05B2219/23386—Voice, vocal command or message
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31085—Application scripts; in web server, not sent to client
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/37—Measurements
- G05B2219/37453—Simulate measuring program, graphical interactive generation of program
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39254—Behaviour controller, robot have feelings, learns behaviour
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
본 발명은 복잡한 파라미터를 가진 로봇의 세부적인 제어를 멀티미디어 저작툴에서 제공하는 액션 스크립트를 이용하여 추가할 수 있으며 로봇제어 및 세부적인 파라미터 값을 가진 함수를 자동으로 입력 가능하게 해주는 스크립트 생성기를 통하여 로봇 컨텐츠 제작자가 로봇에 대한 특별한 지식이 없더라도 편리하게 개발할 수 있는 인터페이스를 제공하도록 하기 위한 다양한 플랫폼의 로봇 제어를 위한 스크립트 생성기 및 상용화 저작툴의 활용 방법에 관한 것이다.
로봇, 제어, 저작툴, 스크립트 생성기, 프로그래밍, 컨텐츠, 시뮬레이션
Description
도 1은 본 발명이 적용되는 개략적인 시스템 환경을 도시한 예시도
도 2는 본 발명에서 적용되는 범용 저작툴의 구조를 개략적으로 나타낸 예시도
도 3은 로봇에서 컨텐츠를 재생하는 플레이어에 대한 구조를 나타낸 예시도
도 4는 PC에서 컨텐츠를 재생하는 플레이어에 대한 구조를 나타낸 예시도
도 5는 본 발명에 따른 범용 저작툴의 편집화면을 보여주는 예시도
도 6은 범용 저작툴의 클래스 구조 예시도
도 7 내지 도 10은 본 발명의 스크립트 자동 생성기의 화면을 보여주는 스크린 샷
도 11은 본 발명에 따라 구동하는 부분을 나타내기 위한 로봇의 전후면 예시도
*도면의 주요 부분에 대한 부호의 설명*
100 : 로봇 200 : PC
210 : 플래쉬 컨텐츠 로딩모듈 220 : 컨텐츠 재생 모듈
230 : 플래쉬 파일 조정모듈 240 : 로봇 제어 모듈
310 : 재생 모듈 320 : 소켓 통신 모듈
330 : 음성관련 모듈부 410 : 스크립트 생성 모듈
420 : 재생 모듈 430 : 시뮬레이션 모듈
440 : 소켓 통신 모듈 460 : 데이터베이스
본 발명은 스크립트 자동화 생성기를 이용한 범용 로봇의 제어를 위한 멀티미디어 저작툴 활용 방법에 관한 것으로 특히, 로봇 개발자의 추가적인 프로그래밍 작업 없이 컨텐츠 개발자가 빠르고 편리하게 로봇용 컨텐츠를 개발할 수 있는 저작환경을 제공하고, 컨텐츠 재생과 시뮬레이션 기능을 지원함으로써 로봇 컨텐츠 제작시의 오류를 최소화 하는 기존 로봇 저작툴의 장점을 살리면서, 컨텐츠 정보를 갖고 있는 파일과, 로봇제어 명령을 갖고 있는 파일로 분리된 제작 및 재생 구조를 한 개의 컨텐츠 파일로 통합하여 동기화 관련 제약을 해소하고, 새로운 로봇을 개발할 때 마다 저작툴과 컨텐츠를 재개발해야 하는 문제점을 개선하기 위한 다양한 플랫폼의 로봇 제어를 위한 스크립트 생성기 및 상용화 저작툴의 활용방법에 관한 것이다.
일반적으로, 현재의 로봇제어 방법은 대부분 필요시 마다 개발자가 프로그래밍을 해서 로봇에서 직접 실행을 해보고 결과의 오류를 찾아 몇 차례의 디버깅을 거치는 일련의 과정을 거친다.
그리고, 디스플레이 되는 화면과 실제 로봇과의 동작을 연결하여 동기화 시키는 것도 비교적 간단치 않은 작업이었다.
이러한 기술적 한계로 인해, 실생활에 유익한 다양한 컨텐츠를 제공하는 로봇을 상품화 하는 것에 어려움이 있었다.
위의 문제를 개선하기 위하여 로봇용 컨텐츠를 개발하는 저작툴이 국내특허출원 제 10-2003-0067691호의 '지능형 로봇의 컨텐츠 제작용 저작툴 및 이를 이용한 지능형 로봇의 컨텐츠 제작 방법' 이 개발되었다.
상술한 선행발명은 로봇을 사용한 경험이 없거나, 로봇제어에 대한 지식이 전혀 없는 컨텐츠 개발자가 로봇용 컨텐츠를 제작할 수 있는 환경을 제공하였다는 장점이 있었으나, 화면에 디스플레이 되는 멀티미디어 파일과 실제 액션정보를 전달하는 로봇용 컨텐츠 파일을 별도로 관리해야 했으며 , 멀티미디어 파일과 동기화에 제약이 많아 다소 불편함이 있었다.
또한, 로봇마다 플랫폼과 제어가 필요한 부분이 각기 다른 이유로 특정 로봇의 제어 목적으로 개발된 저작툴과 컨텐츠는 다른 로봇에는 적용하기 어려운 상황이 발생하게 되었다.
예를 들어, 초기에 개발된 로봇의 경우 팔이 없어 제어할 필요가 없었으나, 차기에 개발된 로봇의 경우 팔이 추가되어 제어가 필요하게 되었는데, 기존에 개발된 구조의 저작툴로는 새로 추가된 기능을 사용할 수 없어 매번 새로운 로봇이 개발될 때 마다 그에 종속적인 새로운 저작툴과 컨텐츠를 개발해야 한다는 문제가 발생하게 되었다.
또한, 로봇만의 특화된 얼굴인식, 대화기술, 네비게이션, 사용자 응시 등의 기능을 컨텐츠에 적용하기 어려워 PC용으로 개발된 컨텐츠와 차별화된 컨텐츠를 개발하는데 있어 매우 한계가 있었다.
따라서 로봇의 컨텐츠를 지켜본 많은 사용자들은 일반 PC를 위해 개발된 컨 텐츠와 차별점을 찾기 어렵다고 지적했다. 로봇의 독창적인 컨텐츠 개발을 위하여 로봇관련 개발기술을 컨텐츠에 접목시키는 기능이 필요하게 되었다.
상술한 문제점을 해소하기 위한 본 발명의 목적은 로봇 개발자의 추가적인 프로그래밍 작업 없이 컨텐츠 개발자가 빠르고 편리하게 로봇용 컨텐츠를 개발할 수 있는 저작환경을 제공하고, 컨텐츠 재생과 시뮬레이션 기능을 지원함으로써 로봇 컨텐츠 제작시의 오류를 최소화 하는 기존 로봇 저작툴의 장점을 살리면서, 컨텐츠 정보를 갖고 있는 파일과, 로봇제어 명령을 갖고 있는 파일로 분리된 제작 및 재생 구조를 한 개의 컨텐츠 파일로 통합하여 동기화 관련 제약을 해소하고, 새로운 로봇을 개발할 때 마다 저작툴과 컨텐츠를 재개발해야 하는 문제점을 개선하기 위한 다양한 플랫폼의 로봇 제어를 위한 스크립트 생성기 및 상용화 저작툴의 활용방법을 제공하는 데 있다.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 다양한 플랫폼의 로봇 제어를 위한 스크립트 생성기 및 상용화 저작툴의 활용방법의 특징은, 로봇액션, 음성인식, 음성합성 등의 전체 로봇제어와 멀티미디어 기반의 저작기능, 그리고 로봇이 없는 사용자도 로봇과 동일한 형태의 시뮬레이션이 가능하도록 하는 컨텐츠 플레이어 및 3차원 시뮬레이션을 포함하여 구성하되 로봇액션 정보 및 음성합성, 음 성인식 등록을 위한 정적객체 정보 윈도가 있는 저작환경을 포함하는 로봇의 컨텐츠 제작용 저작툴의 운영방법에 있어서: 특정 양식을 갖는 임의의 컨텐츠 자료를 로딩하는 제 1과정과; 상기 제 1과정에서 로딩되어진 컨텐츠 자료에 대한 재생동작을 수행하고 재생되는 컨텐츠 자료에 대한 편집을 수행하는 제 2과정과; 상기 제 1과정에서 로딩되어진 컨텐츠 자료에 대하여 로봇제어와 관련된 명령을 스크립트 방식으로 정의하여 로봇의 동작제어 및 음성인식과 음성합성, 사용자 응시, 얼굴인식, 네비게이션, 대화기술 등 모든 로봇명령 스크립트를 로봇과 통신하여 로봇액션에 대한 설정 및 시뮬레이션을 수행하는 제 3과정과; 상기 제 2과정과 제 3과정을 통해 편집 및 설정되어진 컨텐츠 자료에 대하여 표출시점을 사용자 임의로 선택하는 제 4과정; 및상기 로봇의 자원을 통해 상기 제 2과정과 제 3과정을 통해 편집 및 설정되어진 컨텐츠를 표출하는 경우 상기 제 4과정에서 선택되어진 시점을 기준으로 외부로 표출되는 제 5과정을 포함하는 것을 특징으로 한다.
또한, 상기 제 3과정에서의 통신은 소켓통신을 사용하는 것을 특징으로 한다.
아울러, 상기 제 3과정에서 로봇제어와 관련된 명령을 스크립트의 정의과정은 로봇제어에 필요한 다양한 액션종류를 제공하고 있으며 로봇에 따라서 저작자가 로봇 액션을 추가 할 수 있는 로봇액션 스크립트 조정 모드와; 각각 특정 로봇 컨텐츠 파일과 특정 파일의 전역적으로 사용되는 파일 인식어와 특정 범위의 시작과 종료 프레임 구간에서만 인식이 활성화 되는 프레임 인식어로 구분되는 로봇의 음성인식 정보를 조정할 수 있도록 하는 음성인식 스크립트 조정모드와; 음성의 피치 와 속도 파라미터 값의 속성을 활용하여 다양한 감정 변화에 따른 적합한 로봇의 목소리를 표현하도록 하는 음성합성 조정모드; 및 얼굴인식 및 대화기술 등과 같이 로봇의 주요 기능으로 구현되어 있는 기술요소를 설계자의 필요에 의해 상기 제 1과정에서 로딩되어진 컨텐츠 자료에 부가시키는 특성화 객체 추가모드를 포함하는 것을 특징으로 한다.
또한, 상기 제 3과정은 멀티미디어 컨텐츠 저작도구를 활용하여 로봇의 동작 및 음성인식과 합성 등을 로봇제어와 관련된 명령을 스크립트 방식으로 정의하고 로봇과 통신하되, 로봇제어와 관련된 함수를 이용하여 스크립트를 자동으로 생성하고, 이를 컨텐츠 저작도구에 자동으로 입력하며, 로봇제어 명령을 다양한 플랫폼의 범용 로봇에 적용할 수 있도록 하는 것을 특징으로 한다.
아울러, 상기 로봇에 특성화 된 컨텐츠 개발을 위하여, 얼굴인식 판단 여부 등의 입출력 결과에 따라 액션을 하도록 하는 과정을 더 포함하는 것을 특징으로 한다.
또한, 상기 로봇에 특성화 된 컨텐츠 개발을 위하여, 대화기술을 접목시켜 로봇과 사용자의 인터랙션을 효과적으로 구현할 수 있도록 하는 과정을 더 포함하는 것을 특징으로 한다.
아울러, 상기 사용자의 인터페이스를 개선하기 위하여 로봇제어와 관련된 함수를 이용하여 스크립트를 자동으로 생성하고, 이를 상용 저작툴에 자동으로 입력하여 주는 것을 특징으로 한다.
또한, 상기 다양한 플랫폼과 제어 부위를 가진 로봇에 적용할 수 있는 확장 성을 위하여 로봇제어와 관련된 모든 명령을 외부 파일로 정의하는 것을 특징으로 한다.
본 발명의 상술한 목적과 여러 가지 장점은 이 기술 분야에 숙련된 사람들에 의해, 첨부된 도면을 참조하여 후술되는 본 발명의 바람직한 실시 예로부터 더욱 명확하게 될 것이다.
이하, 본 발명의 다양한 플랫폼의 로봇 제어를 위한 스크립트 생성기 및 상용화 저작툴의 활용방법의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다.
첨부한 도 1은 본 발명이 적용되는 개략적인 시스템 환경을 도시한 것으로, 제어대상인 로봇(100)과, 스크립트 자동화 생성기를 이용한 범용 로봇의 제어를 위한 멀티미디어 저작툴이 탑재되어 있으며 제어대상인 로봇(100)에 임의의 멀티미디어 컨텐츠를 운영할 수 있도록 하는 PC(200)로 구성된다.
첨부한 도 1에 도시되어 있는 바와 같은 시스템의 구현은 로봇(100)에 임의의 멀티미디어 컨텐츠를 세팅하거나 기존의 컨텐츠를 변경하기 위한 과정에서 이루어지면, 로봇(100)은 그 외의 과정에서는 PC(200)와 연결이 차단된 상태에서 개별적으로 운영되어진다.
따라서 상기 PC(200)에 탑재되어진 멀티미디어 저작툴은 PC용 멀티미디어 저작툴을 이용하여 로봇을 제어할 수 있는 컨텐츠의 제작을 목적으로 개발된 프로그램으로써, 기존의 저작도구를 사용할 줄 아는 컨텐츠 개발자가 손쉽게 로봇용 컨텐츠를 개발 할 수 있도록 구현되며, 본 발명에서 사용되는 스크립트 생성기는 매크 로미디어사의 플래쉬를 지원하는 스크립트 생성기를 통해 로봇제어와 음성인식, 음성합성, TTS, 얼굴인식 및 대화기술 객체 등을 정의할 수 있도록 구현되어 있다.
첨부한 도 2는 본 발명에서 적용되는 범용 저작툴의 구조를 개략적으로 나타낸 것으로, 외부에서 생성되었거나 또는 데이터베이스에 저장되어 있는 플래쉬 컨텐츠를 억세스하는 플래쉬 컨텐츠 로딩모듈(210)과, 상기 플래쉬 컨텐츠 로딩모듈(210)을 통해 로딩되어진 플래쉬 컨텐츠를 입력받아 재생하도록 하는 컨텐츠 재생모듈(220)과, 임의의 컨텐츠를 제공받는 경우 로봇의 제한된 자원을 운영하여 제공된 컨텐츠를 로봇이 활용하도록 하는 로봇제어모듈(240), 및 상기 컨텐츠 재생모듈(220)을 통해 재생되는 컨텐츠를 상기 로봇제어모듈(240)측으로 전달하며 상기 로봇제어모듈(240)의 운영동작에 대한 결과를 통해 최적의 컨텐츠의 생성을 수행하도록 하는 플래쉬파일 조정모듈(230)로 구성되어진다.
이때 상기 로봇제어모듈(240)과 플래쉬파일 조정모듈(230)간에는 소켓통신을 통해 데이터의 교환이 이루어진다.
첨부한 도 3은 로봇에서 컨텐츠를 재생하는 플레이어에 대한 구조를 나타낸 예시도로서, 로봇에서는 컨텐츠를 재생모듈(310)인 플레이어(ERobotPlayer.exe)를 통해 구동을 시킨다.
이때 소켓통신모듈(320)인 "ERPPlayer.dll"이 재생모듈(310)인 플레이어(ERobotPlayer.exe)와 로봇간의 통신을 담당하게 된다.
첨부한 도 3은 음성인식과 관련한 컨텐츠를 활용하기 위한 경우의 예로써, 참조번호 330으로 지칭되는 음성관련 모듈부는 플레이어와의 인터페이스를 위한 하 드웨어제어모듈과 음성합성모듈 및 음성인식모듈을 구비한다.
따라서, 하드웨어제어모듈(Player Interface)이 서버 모드로 소켓통신을 오픈(Open)하여 구동되고 있는 상태이며, 재생모듈(310)은 음성관련 명령을 처리하기 위해 클라이언트 모드로 소켓통신을 오픈(Open)하여 하드웨어제어모듈(Player Interface)과 접속이 되어 있는 상태이다.
상기 재생모듈(310)이 컨텐츠를 구동하면서 "FSCommand Event"를 통해 명령을 "ERPPlayer.dll"로 소켓(Socket)을 통해 전달하게 된다. "ERPPlayer.dll"은 플레이어로부터 전달받은 명령을 하드웨어제어모듈(Player Interface)을 통해 로봇을 제어하고 또한 음성인식 관련 처리를 하고, 다시 "ERPPlayer.dll"을 통해 다시 플레이어에게 전달하게 된다.
즉, 로봇에서는 컨텐츠를 재생모듈을 통해 구동을 시킨다. 이때 소켓통신모듈(320)은 재생모듈(310)과 로봇간의 통신을 담당하게 된다. 이때 이미 소켓 통신 모듈(320)은 서버 모드로 소켓을 열어 구동되고 있는 상태이며, 재생모듈(310)은 클라이언트 모드로 소켓을 열어 소켓 통신 모듈과 접속한다.
재생모듈(310)은 컨텐츠를 구동하면서 확장기능 이벤트가 발생할 때 마다 로봇제어 명령을 소켓으로 로봇에 전달하게 된다. 로봇은 전달된 명령에 따라 로봇을 제어하고 또는 음성인식/합성 등 관련 처리를 하고, 그 결과를 소켓 통신 모듈(320)을 통해 다시 재생모듈(310)에게 전달하게 된다.
첨부한 도 4는 PC에서 컨텐츠를 재생하는 플레이어에 대한 구조를 나타낸 예시도로서, 크게 음성인식과 시뮬레이션을 동시에 하는 경우이며, 다른 하나는 시뮬 레이션 또는 음성인식 엔진만을 작동하는 경우이다.
전자의 경우 스크립트 생성모듈(Script Editor; 410)에서 미리보기를 하였을 때 재생모듈(ERobotPlayer.exe; 420)이 구동을 하면서 하드웨어제어모듈(Player Interface)과 시뮬레이션모듈(SimulatorProcess.exe; 430)이 재생모듈(420)에 의해 구동을 하게 된다.
이때, 하드웨어제어모듈(Player Interface)이 서버 모드로 소켓통신을 오픈(Open)하여 구동되고 있는 상태이며, 재생모듈(420)은 음성관련 명령을 처리하기 위해 클라이언트 모드로 소켓통신을 오픈(Open)하여 하드웨어제어모듈(Player Interface)과 접속이 되어 있는 상태이다.
또한, 시뮬레이션모듈(430) 역시 실행되면서 서버모드로 소켓통신을 오픈(Open)하여 구동되고 있는 상태이며, 재생모듈(420)은 클라이언트 모드로 접속을 하여 통신을 하게 된다.
이때부터 실제로 재생모듈(420)에서 컨텐츠가 재생되면서 "FsCommand 이벤트"가 발생을 할 때 마다 이를 소켓통신을 통해 하드웨어제어모듈 또는 시뮬레이션모듈(430)에 전달을 하게 된다.
상술한 전자의 경우가 아닌 경우 즉, 후자의 경우로 시뮬레이션모듈(430) 또는 음성인식모듈만을 작동 시켰을 때, 전반적인 동작은 상술한 전자의 경우와 동일하며 단지 시뮬레이션모듈(430) 또는 음성인식모듈 중 어느 하나만 동작을 한다는 것이 차이점이다.
부연하여 설명하면 스크립트 생성 모듈(410)에서 미리 보기를 하였을 때, 재 생모듈(420)을 구동 하면서 소켓 통신 모듈(440)과 시뮬레이션 모듈(430)이 구동된다. 이때 소켓 통신 모듈(440)이 서버 모드로 소켓을 열고, 재생모듈(420)이 음성관련 명령을 처리하기 위해 클라이언트 모드로 소켓을 열어 서로 접속을 하게 된다. 시뮬레이션 모듈(430) 역시 프로그램이 실행되면서 서버모드로 소켓을 열고, 재생모듈(420)이 이에 클라이언트 모드로 접속을 하여 서로 통신을 하게 된다. 이때부터 실제로 재생모듈(420)에서 컨텐츠가 돌아가면서 확장기능이벤트가 발생을 할 때 마다 이를 소켓 통신을 통해 소켓 통신 모듈(440) 또는 시뮬레이션 모듈(430)에 전달을 하게 된다.
첨부한 도 5는 본 발명에 따른 범용 저작툴의 편집화면 및 스크립트 생성기를 보여주는 예시도로서, 플래쉬 저작툴이 실행되어 있는 상태에서 로봇 액션 정보 및 음성인식 등록을 위한 범용 저작툴 (로봇 액션정보) 윈도가 있다.
즉, 플래쉬 저작툴이 실행되어 있는 상태에서 우측에 로봇 액션 정보 및 음성인식 등록을 위한 스크립트 생성기 윈도가 함께 실행되어 있다. 새로운 로봇 액션의 패턴등록 및 음성합성, 음성인식 단어를 실제 등록하는 작업은 모두 로봇 액션정보 윈도우에서 이루어진다.
또한, 사용자 정의 액션의 추가도 스크립트 생성기에서 제공하는 기능을 통해 추가하게 된다. 스크립트 생성기는 스크립트를 붙여넣을 포커스 영역을 지정하는 기능을 통해 선택된 명령을 자동으로 추가한다. 플래쉬 함수인 fscommand 스크립트를 플래쉬의 해당하는 부분에 삽입한다.
명령어 종류는 머리, 바퀴, 눈, 입, 가슴, 팔 등의 로봇 제어 부위를 구분하 는 것이다. 로봇에 따라 팔이 추가되거나 또는 추가적인 관절 제어가 필요한 경우, 로봇제어와 관련된 정보를 담고 있는 외부 파일에 규정된 프로토콜을 이용하여 명령어 코드와 파라미터를 정의하면 컨텐츠 개발자가 스크립트 생성기 실행시 목록에 동적으로 로딩하도록 되어 있다. 따라서 스크립트 생성기는 특정 목적과 용도에 맞는 로봇을 위한 컨텐츠를 만들 수 있게 되어 있다.
각 명령 패턴에 대한 파라미터 또한 동적으로 로딩되는 구조를 갖고 있다. 예를 들어 기존의 로봇의 경우, 파라미터 종류가 5개로 모든 제어가 가능했으나, 더 복잡한 팔과 다리 관절을 가진 로봇을 제어하려면 10개 이상의 파라미터가 필요하게 될지 알 수 없다.
따라서, 로봇정보를 담고 있는 외부 파일에는 패턴정보 뿐 아니라 파라미터의 종류 및 기본적인 값도 갖고 있다. 이때, 다른 파라미터의 값의 변동에 상하한값 제한 등이 바뀌는 수식도 독립적인 외부 파일로 갖고 있어 특정 로봇에 종속적이지 않기 때문에 확장이 가능하다.
첨부한 도 5에서 스크립트 생성영역에 대한 상세한 설명은 후술하는 도 7 내지 도 10에 상세히 언급하도록 한다.
새로운 로봇 액션의 패턴등록 및 음성합성, 음성인식 단어를 실제 등록하는 작업은 모두로봇 액션정보 윈도우에서 이루어진다. 또한, 사용자 정의 액션객체 추가도 범용 저작툴에서 제공하는 마법사 기능을 통해 추가하게 된다. 저작툴에서 생성된 fscommand 을 플래쉬의 타임라인 상의 해당하는 부분에 삽입한다.
이때, 명령어 종류는 머리, 바퀴, 눈, 입, 가슴, 팔 등의 로봇 제어 부위를 구분하는 것이며, 명령어 코드는 제어되는 부위별로 가능한 액션패턴에 대해 고유의 코드로 정의한 것이다.
예를 들어, 머리를 상하로 흔드는 액션의 경우 H(Head) U(Up) D(Down)를 조합하여 "HDU0"으로 정의 되어 있다. 팔의 경우 A(Arm) U(Up) D(Down)를 조합한 "AUD0", 바퀴를 좌우로 회전하는 액션 코드는 W(Wheel) L(Left) R(Right)을 조합한 "WLR0"으로 정의되어 있다.
그리고, 로봇에 따라 팔이 추가되거나 또는 관절과 같은 추가적인 제어가 필요할 경우, 이를 위와 같이 미리 정의된 명령어 코드와 파라미터를 정의하여 사용자 정의 액션을 추가한 후 해당하는 로봇에 맞는 컨텐츠를 만들 수 있게 되어 있어, 로봇의 특성에 맞게 임의적으로 새로운 로봇 액션을 추가할 수 있는 범용성을 가지고 있다.
파라미터는 로봇액션에 대해 세부적인 제어를 할 수 있도록 발명된 것으로 파라미터 값의 타입과 값이 쌍으로 등록이 된다. 현재 개발 중인 로봇 기준으로 모든 로봇 액션은 1초의 유지시간과 1회의 반복횟수 파라미터 값을 가진다. 유지시간과 반복횟수는 로봇 컨텐츠 제작자가 임의로 설정할 수 있으며, 액션의 특성별로 이동각도, 이동거리, 이동길이, 이동끝점, 이동방향 등의 파라미터 종류가 다양하다.
만일 제작자가 컨텐츠 제작시 TTS로 나레이션 사운드 등의 동기를 위해 유지시간을 길게 하거나, 액션의 반복횟수를 변경하거나, 이동각도나 이동거리 등의 파라미터 값을 변경하고자 하면 스크립트 생성 유틸리티를 통하여 파라미터 값을 변 경하고 스크립트 생성을 하게 되면 자동적으로 로봇 제어와 관련된 "FsCommand"명령어가 생성된다.
이때, 로봇액션의 반복횟수는 유지시간 및 이동거리 또는 각도 등에 의해 영향을 받으며 모든 파라미터는 상하한 값 제한 범위가 존재한다.
상하한 값은 로봇의 하드웨어에서 처리할 수 있는 한계 범위를 나타내는 것으로 사용자가 입력한 파라미터 값에 대해 내부적으로 상하한 값을 체크하여 범위 초과시 메시지로 알려주도록 한다.
모든 로봇액션에서 기본적으로 제공되는 값은 모두 초당 1회이며, 컨텐츠 제작자는 상하한 값 범위 내에서 임으로 값을 정의할 수 있다.
예를 들어, 로봇 머리의 상하이동 최대 각도는 10도 인데, 이동각도 파라미터를 11도 이상 입력하면 파라미터 상하한 값 초과 메시지가 발생하게 된다. 또는, 1초의 유지시간에 로봇의 머리를 상하로 100회 이상 수행하는 등의 무리한 하드웨어 제어를 할 수 없도록 방지하고 있다.
또한, 로봇 제작자에 의해 새로운 로봇 액션과 파라미터의 추가가 용이하게 되어 있다. 간단한 마법사 기능을 통해 명령어 코드와, 파라미터의 타입과, 종류, 상하한 값을 마법사 각 단계마다 순차적으로 입력하여 새로운 로봇액션을 추가할 수 있다.
도 6은 범용 저작툴의 클래스 구조 예시도로서, 범용 저작툴의 재생구조는 "CSwfControl"에서 컨텐츠 관련 제어(Play, Pause, Stop)를 담당하게 된다. 여기서 로봇 관련 제어, 음성 인식, LED 관련 제어, 네비게이션 관련 제어에 따라 각각 담 당하는 부분이 나누어지게 되어 있다.
또한, "CRobotCommand"는 로봇 명령과 관련된 제어를 담당하는 부분으로 로봇의 머리 움직임, 바퀴 움직임, 팔 움직임 제어명령을 실제 제어 프로세서로 전달하는 역할을 담당한다.
또한, "CRecognitionControl"은 컨텐츠 제작시 등록한 음성인식 단어를 관리하는 부분으로 "CRecogWordList"가 음성 인식 단어를 관리하고, "CRecogObject"에는 컨텐츠에 등록되어 있는 음성인식 단어 객체에 해당한다.
또한, "CRecognitionControl"에서는 로봇의 음성제어 부분으로부터 전달 받은 음성인식 단어를 받아 이를 컨텐츠에 등록되어 있는 음성 인식 단어와 비교하여 해당하는 액션을 취하게 된다.
마지막으로 "CInterfaceProtocol"은 제어부분과의 통신을 담당하게 된다.
첨부한 도 7 내지 도 10은 본 발명의 스크립트 자동 생성기의 화면을 보여주는 스크린 샷으로, 첨부한 도 7은 로봇액션 스크립트 윈도우로서 실제 로봇 제어와 관련된 정의를 할 수 있는 윈도우로서, 스크립트 자동 생성기의 표시 형태를 확장상태와 축소상태로 표시한 것이다.
로봇 제어에 필요한 다양한 액션종류를 제공하고 있으며, 로봇에 따라서 저작자가 로봇 액션을 추가 할 수 있다. 명령어와 파라미터를 정의 하여 새로운 로봇 액션을 등록 하여 사용할 수 있다. 또한, 자주 사용하는 로봇 액션을 등록하여 간단한 조작으로 액션 스크립트를 플래쉬 컨텐츠에 삽입할 수 있다. 로봇 액션은 명령어 종류, 명령어 코드, 명령어 이름, 파라미터의 데이터 타입, 파라미터의 종류, 상하한 값으로 구성되어 있다.
새롭게 추가된 확장성이란, 로봇에 따른 새로운 명령어를 추가할 수 있는 기능을 말한다. 새로운 관절 제어를 필요로 할 경우 해당 로봇에 들어가는 컨텐츠에서도 이를 활용하여 제어하는 컨텐츠를 개발하게 된다. 이와 같이 추가적으로 제어가 필요하게 되는 명령어를 등록 및 수정할 수 있는 기능을 지원한다. 이를 이용하면 거미와 같은 형태의 많은 다리를 제어해야 하는 로봇을 위한 컨텐츠도 개발이 가능할 것이다.
예를 들어 바퀴제어, LED 제어, 머리 제어를 동시에 해야 하는 경우 이를 매번 반복적으로 액션 객체를 추가하기 보다는 자주 사용하는 액션으로 등록을 하여 사용자가 손쉽게 이전에 등록했던 액션 템플릿을 통해 등록할 수 있도록 했다.
또한, 다른 플랫폼의 로봇에 적용할 수 있는 확장성을 위한 기능을 가지고 있다. 여기서 확장성은 범용 저작툴을 사용하여 로봇에 따른 새로운 명령어를 추가할 수 있는 기능을 말한다. 예를 들어, 로봇이 관절 제어를 필요로 할 경우 해당 로봇에 들어가는 컨텐츠에서도 로봇제어를 위하여 관절제어 관련 명령어를 필요로 하게 된다. 범용 저작툴에 이와 같이 추가적으로 필요하게 되는 로봇제어 명령어를 등록, 수정할 수 있는 기능을 지원한다.
도 8은 음성인식 스크립트 윈도우로서, 로봇의 음성인식 정보를 갖고 있는 음성인식 윈도이다. 음성인식에는 인식형태에 따라 단일 인식어와 구간 인식어 두 가지 종류가 있는데, 단일 인식어에 해당하는 것은 파일 인식어이고, 구간 인식어에는 프레임 인식어가 있다. 그 특징은 살펴보면 대략 다음과 같다.
파일 인식어는 각각 특정 로봇 컨텐츠 파일과 특정 파일의 전역적으로 사용되는 인식어를 정의하는 기능이고, 구간 인식어는 특정 범위의 시작과 종료 프레임 구간에서만 인식이 활성화 되는 프레임 인식어를 정의할 수 있는 기능이다.
프레임 인식어는 동일한 컨텐츠 페이지 내에서 두개 이상의 동일한 인식어의 서로 다른 링크경로를 정의할 수 있는 장점이 있다.
그러나, 동일 구간에는 동일한 인식어를 중복하여 서로 다른 링크경로를 처리할 수 없도록 되어 있다.
도 9는 음성합성 스크립트 윈도우로서, 로봇의 음성합성(TTS)을 정의하는 윈도우이다. 저작툴에서 로봇과 동일한 한글과 영문 음성합성 엔진이 내장되어 있는데, 저작툴에서 컨텐츠를 제작할 때 한영 모드를 선택하여 등록할 수 있다. 음성합성을 등록할 때는 음성합성 등록 윈도에서 로봇 음성합성의 피치와 속도 파라미터 값의 속성을 활용하여 다양한 감정 변화에 따른 적합한 로봇의 목소리를 표현할 수 있다.
도 10은 로봇에 특성화 된 객체를 추가할 수 있는 윈도우로서, 얼굴인식 및 대화기술 등과 같이 로봇의 주요 기능으로 구현되어 있는 기술요소를 컨텐츠에 적용할 수 있도록 함으로써 PC와는 차별화된 컨텐츠를 개발할 수 있도록 지원하는 기능이다.
PC와 차별화된 컨텐츠의 개발을 위하여 추가된 기능으로 로봇의 새로운 부가가치를 창출할 수 있도록 발명되었다. 얼굴인식, 사용자 응시, 네비게이션, 대화기술 등과 같은 로봇의 주요 기능으로 이미 구현되어 있는 기술요소를 컨텐츠에 적용 할 수 있도록 함으로써 다양한 컨텐츠를 개발할 수 있도록 하는데 중점을 두었다.
HRI 객체 적용 예시를 간략히 정리하면 아래의 표 1과 같다.
얼굴인식 객체의 경우, 인식된 사용자에 따라서 특정 액션을 취하는 컨텐츠를 제작할 수 있는데, 예를 들어 "~님 안녕하세요." 라는 문장을 컨텐츠 상에서 구현해야 할 경우, 얼굴인식을 통해 현재 인식된 사용자를 알아낼 수 있으며, 이 정보를 전달 받아서 컨텐츠에서는 인식된 사람에 따라 각기 반응의 정도를 다르게 구현할 수 있다.
대화 객체의 경우 컨텐츠에 특정 시나리오로 구성된 컴포넌트 형태의 대화기술 객체를 추가하게 되면, 컨텐츠 재생시 대화기술을 접목시킨 특성화 된 컨텐츠를 개발할 수 있다. 예를 들어, 어린이용 동화 한편을 제작할 경우 단순히 일방적으로 들려주는 이야기가 아니라 각각의 등장인물과의 대화를 통해 사고력을 증진시켜 주는 PC용 컨텐츠와 차별화 되는 로봇에 적합한 컨텐츠를 제작할 수 있을 것이다. 이와 같은 로봇에 특성화된 객체를 추가함으로써 인식 및 대화객체의 입출력 결과에 따라 판단하는 알고리즘을 컨텐츠에 구성하여 반영할 수 있는 장점이 있다.
그 외에도 사용자의 얼굴을 응시하거나, 컨텐츠 재생중 지정된 특정 장소로 이동하는 등의 네비게이션을 수행할 수 있어 로봇 관련 기술을 컨텐츠에 접목시킬 수 있도록 하였다.
발명의 실시예로 상용화된 저작툴 중 매크로미디어사의 플래쉬와 스크립트 생성기를 이용하여 로봇제어와 음성인식, 음성합성, TTS, 얼굴인식 및 대화기술 객체 등을 정의하는 방법에 대해 설명한다.
상술한 바와 같은 스크립트 생성기에서 제공하는 "FsCommand" 명령어를 정의하면 아래의 표 2와 같다.
상기 표 2는, "FsCommand" 및 파라미터를 정의한 것으로, 플래쉬에서 제공하는 함수를 이용하여 로봇을 제어하는 명령을 정의한 것으로 아래에서 그 작성 예를 들어 설명한다.
실제 제작시에는 개발자의 정보를 입력 받아 스크립트 생성기가 자동으로 코드를 생성한다.
○ 머리액션 스크립트 :
ex 1) fscommand( "robotcmd", "#HUD0#1#1#10" );
로봇의 머리를 상하로 1초간 1회 10도 만큼 흔든다.
ex 2) fscommand( "robotcmd", "#HSK0#1#1#10#1#30" );
로봇의 머리를 좌우로 1초간 1회 흔들면서 숙인다. 이때, 숙임 각도는 10, 흔들 횟수는 1, 흔들 각도는 30 이다.
ex 3) fscommand( "robotcmd", "#HCL0#1#1#10#1#0#0#0#10#30" ) ;
로봇의 머리를 왼쪽 위로 시작해서 1초간 1회 원을 그린다. 이때, 수평과 수직의 장단의 길이는 30, 10 이다.
○ 바퀴액션 스크립트 :
ex 1) fscommand( "robotcmd", "#WFB0#1#1" ) ;
로봇의 바퀴를 앞뒤로 1초간 1회 움직인다.
○ 팔 액션 스크립트 :
ex 1) fscommand( "robotcmd", "#AUD0#1#1#10#1" ) ;
로봇의 왼쪽 팔을 상하로 1초간 1회 움직인다.
○ 네비게이션 스크립트
ex1) fscommand( "navigation", "#prev" ) ;
페이지 전환시 히스토리 기능을 사용하여 이전에 본 페이지로 이동한다.
○ 얼굴표정 LED 스크립트 :
ex1) fscommand( "ledcmd", "#LEH0#RED#1#5#1" ) ;
얼굴에 기쁜 표정을 Red 색상으로 약5초간 1회 반복한다.
ex 2) fscommand( "ledcmd", "#LEG0#GREEN#2#5#1" ) ;
얼굴에 슬픈 표정을 Green 색상으로 약5초간 1회 반복한다.
○ 음성인식 스크립트 :
ex 1) fscommand( "asr", "#KOR#안녕하세요#
http://www.irobi.co.kr/contents/exam.swf#FILE_LINK#10#HistoryType" ) ;
음성인식 단어중 "안녕하세요"가 인식되면, 해당 경로의 파일로 이동한다.
○ 음성합성 스크립트 :
ex1 ) fscommand( "tts", "#KOR#안녕하세요#1#1#1");
"안녕하세요" 라는 음성합성 TTS를 높이1, 속도 1, 볼륨 1 로 송출한다.
○ 링크정보 스크립트 :
ex 1) fscommand( "linkinfo", http://www.irobi.co.kr/contents/exam.swf#
FILE_LINK#10#HistoryType" ) ;
특정 객체가 선택되면, 해당 경로의 파일로 이동한다.
로봇제어에 관련한 스크립트를 간략히 정리하여 살펴보면 아래의 표 3과 같다.
상기 표 3에 나타나 있는 구분에서 머리에 관련한 머리액션 명령 및 파라미터를 간략히 정리하면 아래의 표 4와 같다.
표 4는 로봇의 머리제어를 위한 명령 및 파라미터를 정의한 표이다.
머리 제어에 관련된 액션 패턴으로 총 7가지 종류가 있다. 액션 코드별로 정의된 액션명과 각 파라미터의 기본값, 최소값, 최대값이 정의되어 있다. 유지시간은 해당 액션을 계속 유지하는 시간을 말하는 것으로 단위는 초(sec)이다. 최대 3,600초 즉, 1시간까지 정의할 수 있다.
반복횟수는 유지시간에 대해 액션을 반복하는 속성으로 반복횟수의 최대값은 유지시간 및 이동각도, 회전각도, 흔들기 횟수 등의 영향을 받는다. 머리 액션의 파라미터의 종류는 동작시 제어되는 특성별로 각기 다르며 다양하다.
머리를 상하로 이동하는 액션코드 HDN0의 경우 파라미터 종류는 유지시간과 반복횟수를 제외하면 이동각도 뿐이지만, 흔들면서 숙이기 액션코드 HSK0의 경우는 흔들기 횟수, 흔들기 각도, 숙임 각도 등으로 정의해야 할 파라미터 종류가 HDN0 보다 다양하다.
표 5는 로봇의 바퀴제어를 위한 명령 및 파라미터를 정의한 표이다.
바퀴 제어에 관련된 액션 패턴으로 총 4가지 종류가 있다. 액션코드 WFB0는 앞뒤로 이동하는 것으로, 초당 1회의 속도로 10cm의 이동거리를 왕복한 후 시작위치로 복귀하는 것으로 정의되어 있다. 이때, 바퀴의 최대 이동거리는 10cm 이며, 11cm 이상의 파라미터 값을 입력하면 상한값 초과 메시지가 발생하게 된다.
표 6은 로봇의 팔 제어를 위한 명령 및 파라미터를 정의한 표이다.
팔 제어에 관련되어 정의된 패턴은 총 3가지 종류가 있다. 액션코드 AUD2는 양팔을 상하로 흔드는 동작을 하는 것으로, 기본적인 파라미터 값은 1초의 유지시간 동안 1회의 행동을 하는 것으로 되어 있으며, 파라미터 수치를 변경하여 원하는 새로운 액션을 생성하여 추가할 수 있다.
표 7은 로봇의 얼굴표정 표현을 위한 명령 및 파라미터를 정의한 표이다.
로봇의 머리에 있는 Face LED에 대한 얼굴표정을 제어하는 명령으로 현재 총 10가지 정의된 패턴이 있다.
도 11은 본 발명에 따라 구동하는 부분을 나타내기 위한 로봇의 전후면 예시도로서, 플래쉬 편집화면의 타임라인에서 해당 프레임 부분에 "fscommand" 스크립트를 삽입을 통해 머리, 바퀴, 팔 의 동작을 제어 할 수 있으며, 머리 LED, 가슴 LED, 눈 LED, 입 LED, 팔 LED, 귀 LED 제어를 통해 효과적인 감정의 표현을 할 수 있다.
이때 LED 는 감정별로 각각의 색으로 정의 되어 있어 색상을 통해 로봇의 기분 상태를 표현할 수 있도록 되어 있다. 예를 들어, 얼굴 LED가 오렌지(Orange)색 일 때는 기쁜 감정을 표현하는 것이고, 녹색(Green)의 얼굴 LED 일 때는 슬픔의 감정을 나타내며, 적색(RED)을 띄고 있을 때는 불안한 감정을 표현하는 것으로 볼 수 있다.
따라서, 첨부한 도 5에 도시되어 있는 바와 같은 본 발명에 따른 범용 저작툴의 편집화면을 통해, 로봇용 컨텐츠는 멀티미디어 저작도구인 플래쉬에서 제공하는 "FsCommand" 함수를 이용하여 제작을 하게 되는데, 타임라인 영역에서 특정 액션의 시작점을 지정할 수 있다.
또한, 컨텐츠 편집영역은 로봇에 장착된 디스플레이 장치에서 보이게 되는 화면을 제작하는 영역이다.
또한, 액션 스크립트 영역은 실질적으로 로봇제어에 관련되는 "FsCommand" 함수를 스크립트 형식으로 등록하는 화면이다.
이때, "FsCommand" 명령은 직접 입력이 가능하지만, 일반 제작자들이 사용함에 있어 어려움이 있기 때문에 인터페이스를 개선하여 첨부한 도 7 내지 도10에 도시되어 있는 바와 같은 스크립트 생성기에서 명령을 선택하면 자동적으로 플래쉬의 액션 스크립트 영역에 등록되는 방식이다.
범용 저작툴은 저작 환경으로 화면에서와 같이 매크로 미디어 플래쉬와 같은 컨텐츠 저작툴과 범용 저작툴을 윈도 상에 띄워서 작업을 하게 된다. 범용 저작툴에서 스크립트를 생성하여 해당 컨텐츠의 원하는 부분에 이를 삽입하는 형태를 취한다.
컨텐츠 개발자가 수작업으로 스크립트를 입력하는 방식에서 범용 툴을 사용하여 자동으로 스크립트가 생성이 되어 이를 컨텐츠에 입력하는 형식을 취해 컨텐츠 개발의 편의를 제공한다.
이상의 설명에서 본 발명은 특정의 실시 예와 관련하여 도시 및 설명하였지만, 특허청구범위에 의해 나타난 발명의 사상 및 영역으로부터 벗어나지 않는 한도 내에서 다양한 개조 및 변화가 가능하다는 것을 당 업계에서 통상의 지식을 가진 자라면 누구나 쉽게 알 수 있을 것이다.
이상에서 설명한 바와 같은 본 발명에 따른 다양한 플랫폼의 로봇 제어를 위한 스크립트 생성기 및 상용화 저작툴의 활용방법을 제공하면, 복잡한 파라미터를 가진 로봇의 세부적인 제어를 상용화된 멀티미디어 저작툴의 액션 스크립트를 이용하여 추가할 수 있으며, 스크립트 함수를 자동으로 작성하는 스크립트 생성기를 통하여 로봇 컨텐츠 제작자가 로봇이나 특정 함수에 대한 특별한 지식이 없더라도 편리하게 개발할 수 있는 인터페이스를 제공하고 있어 로봇을 상품화함에 있어 부가 가치 높은 컨텐츠를 개발할 수 있는 기술을 제공한다.
또한 국내외에서 개발 중인 다양한 형태의 다른 로봇 플랫폼에 적용할 수 있도록 발명되어 있어 중복 개발의 부담을 경감시키는 효과가 있으며 비교적 단기간에 완성도 높은 로봇 컨텐츠를 개발할 수 있다.
그리고 사용자 응시, 네비게이션, 얼굴인식 등을 적용한 객체를 추가하여 PC와 차별화 되고, 로봇의 특성을 살린 컨텐츠를 개발할 수 있는 기능을 제공하고 있다.
뿐만 아니라, 로봇이 개발 중이거나 컨텐츠 개발자가 실제 로봇을 소유하고 있지 않더라도 PC 환경에서 완벽한 시뮬레이션 기능을 제공하므로 검수단계에서 기간 및 비용을 최소화 할 수 있는 효과가 있다.
Claims (8)
- 로봇액션, 음성인식, 음성합성 등의 전체 로봇제어와 멀티미디어 기반의 저작기능, 그리고 로봇이 없는 사용자도 로봇과 동일한 형태의 시뮬레이션이 가능하도록 하는 컨텐츠 플레이어 및 3차원 시뮬레이션을 포함하여 구성하되 로봇액션 정보 및 음성합성, 음성인식 등록을 위한 정적객체 정보 윈도가 있는 저작환경을 포함하는 로봇의 컨텐츠 제작용 상용화 저작툴의 활용방법에 있어서,선택되는 특정 컨텐츠 자료가 로딩되는 제 1과정과;상기 제 1과정에서 로딩되어진 컨텐츠 자료에 대한 재생동작이 수행되고 재생되는 컨텐츠 자료에 대한 편집이 수행되는 제 2과정과;상기 제 1과정에서 로딩되어진 컨텐츠 자료에 대하여 로봇제어와 관련된 명령이 스크립트 방식으로 정의되어 로봇의 동작제어 및 음성인식과 음성합성, 사용자 응시, 얼굴인식, 네비게이션, 대화기술을 포함하는 로봇명령 스크립트를 로봇과 통신하여 로봇액션에 대한 설정 및 시뮬레이션이 수행되는 제 3과정과;상기 제 2과정과 제 3과정을 통해 편집 및 설정되어진 컨텐츠 자료에 대하여 표출시점을 사용자에 의해 선택되어지는 제 4과정; 및상기 로봇의 자원을 통해 상기 제 2과정과 제 3과정을 통해 편집 및 설정되어진 컨텐츠가 표출되는 경우 상기 제 4과정에서 선택되어진 시점을 기준으로 외부로 표출되는 제 5과정;을 포함하여 이루어지는 것을 특징으로 하는 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법.
- 제 1항에 있어서,상기 제 3과정에서의 통신은 소켓통신을 사용하는 것을 특징으로 하는 다양한 플랫폼의 로봇 제어를 위한 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법.
- 제 1항에 있어서,상기 제 3과정에서 로봇제어와 관련된 명령이 스크립트 방식으로 정의되는 과정은 로봇제어를 위한 다수개의 로봇 액션이 제공되며 로봇에 따라서 저작자에 의해 로봇 액션이 추가될 수 있는 로봇액션 스크립트 조정 모드와;각각 특정 로봇 컨텐츠 파일과 특정 파일의 전역적으로 사용되는 파일 인식어와 특정 범위의 시작과 종료 프레임 구간에서만 인식이 활성화 되는 프레임 인식어로 구분되는 로봇의 음성인식 정보를 조정할 수 있도록 하는 음성인식 스크립트 조정모드와;음성의 피치와 속도 파라미터 값의 속성을 활용하여 다양한 감정 변화에 따른 적합한 로봇의 목소리를 표현하도록 하는 음성합성 조정모드; 및얼굴인식 및 대화기술을 포함하는 로봇의 주요 기능으로 구현되어 있는 기술요소를 설계자에 의해 상기 제 1과정에서 로딩되어진 컨텐츠 자료에 부가시키는 특성화 객체 추가모드를 포함하는 것을 특징으로 하는 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법.
- 제 1항에 있어서,상기 제 3과정은 멀티미디어 컨텐츠 저작도구를 활용하여 로봇의 동작 및 음성인식과 합성 등을 로봇제어와 관련된 명령을 스크립트 방식으로 정의하고 로봇과 통신하되, 로봇제어와 관련된 함수를 이용하여 스크립트를 자동으로 생성하고, 이를 컨텐츠 저작도구에 자동으로 입력하며, 로봇제어 명령을 다양한 플랫폼의 범용 로봇에 적용할 수 있도록 하는 것을 특징으로 하는 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법.
- 제 3항에 있어서,상기 로봇에 특성화된 컨텐츠 개발을 위하여, 얼굴인식 판단 여부를 포함하는 입출력 결과에 따라 로봇의 액션이 이루어지도록 하는 과정이 더 포함되는 것을 특징으로 하는 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법.
- 제 3항에 있어서,상기 로봇에 특성화된 컨텐츠 개발을 위하여, 대화기술을 접목시켜 로봇과 사용자의 인터랙션이 용이하게 구현될 수 있도록 하는 과정을 더 포함하는 것을 특징으로 하는 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법.
- 제 1항에 있어서,상기 사용자의 인터페이스를 개선하기 위하여 로봇제어와 관련된 함수를 이용하여 스크립트를 자동으로 생성하고, 이를 상용 저작툴에 자동으로 입력하여 주는 것을 특징으로 하는 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법.
- 제 1항에 있어서,상기 다양한 플랫폼과 제어 부위를 가진 로봇에 적용할 수 있는 확장성을 위하여 로봇제어와 관련된 모든 명령을 외부 파일로 정의하는 것을 특징으로 하는 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050059737A KR100738258B1 (ko) | 2005-07-04 | 2005-07-04 | 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050059737A KR100738258B1 (ko) | 2005-07-04 | 2005-07-04 | 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070004268A KR20070004268A (ko) | 2007-01-09 |
KR100738258B1 true KR100738258B1 (ko) | 2007-07-12 |
Family
ID=37870538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050059737A KR100738258B1 (ko) | 2005-07-04 | 2005-07-04 | 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100738258B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9495788B2 (en) | 2013-03-22 | 2016-11-15 | Kt Corporation | Apparatus and method for developing robot contents |
KR20200097896A (ko) | 2019-02-11 | 2020-08-20 | 경희대학교 산학협력단 | 매니퓰레이터 urdf파일 생성장치 및 방법 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100738052B1 (ko) * | 2006-12-26 | 2007-07-12 | 주식회사 이디 | 지능형 로봇 제어 시뮬레이션 시스템 |
KR100889918B1 (ko) * | 2007-05-10 | 2009-03-24 | 주식회사 케이티 | 지능형 로봇을 위한 콘텐츠/서비스 시나리오 개발 차트모델링 방법 |
KR100893758B1 (ko) * | 2007-10-16 | 2009-04-20 | 한국전자통신연구원 | 로봇의 감성 표현 제어 시스템 및 방법 |
US8265789B2 (en) | 2007-12-03 | 2012-09-11 | Electronics And Telecommunications Research Institute | Network-based robot system and method for action execution of robot |
KR100988597B1 (ko) * | 2008-01-14 | 2010-10-18 | 주식회사 유진로봇 | 웹 환경에서의 사용자 친화형 로봇 컨텐츠 저작시스템 |
KR100928417B1 (ko) * | 2009-04-01 | 2009-11-26 | 주식회사 로보메이션 | 로봇 시스템용 동작 포함 멀티미디어 콘텐츠를 제작하는 콘텐츠 개발 시스템의 처리방법 |
CN108238396B (zh) * | 2017-11-07 | 2019-04-12 | 北京翰宁智能科技有限责任公司 | 移动搬运机器人基于平板显示卡牌的动作命令学习方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040061903A (ko) * | 2002-12-31 | 2004-07-07 | 이지로보틱스 주식회사 | 로봇 장치 및 그 제어 방법 |
KR20050031525A (ko) * | 2003-09-30 | 2005-04-06 | 주식회사유진로보틱스 | 지능형 로봇의 컨텐츠 제작용 저작툴 및 이를 이용한지능형 로봇의 컨텐츠 제작 방법 |
-
2005
- 2005-07-04 KR KR1020050059737A patent/KR100738258B1/ko not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040061903A (ko) * | 2002-12-31 | 2004-07-07 | 이지로보틱스 주식회사 | 로봇 장치 및 그 제어 방법 |
KR20050031525A (ko) * | 2003-09-30 | 2005-04-06 | 주식회사유진로보틱스 | 지능형 로봇의 컨텐츠 제작용 저작툴 및 이를 이용한지능형 로봇의 컨텐츠 제작 방법 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9495788B2 (en) | 2013-03-22 | 2016-11-15 | Kt Corporation | Apparatus and method for developing robot contents |
KR20200097896A (ko) | 2019-02-11 | 2020-08-20 | 경희대학교 산학협력단 | 매니퓰레이터 urdf파일 생성장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20070004268A (ko) | 2007-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100738258B1 (ko) | 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법 | |
Noble | Programming interactivity | |
US6879862B2 (en) | Selection and control of motion data | |
US9984724B2 (en) | System, apparatus and method for formatting a manuscript automatically | |
US9348488B1 (en) | Methods for blatant auxiliary activation inputs, initial and second individual real-time directions, and personally moving, interactive experiences and presentations | |
US20060181535A1 (en) | Apparatus for controlling a virtual environment | |
KR20140000189A (ko) | 자연스러운 대화 인터페이스가 장착된 인간형 로봇, 이러한 로봇의 제어 방법 및 대응 프로그램 | |
Jochum et al. | Sequence and chance: Design and control methods for entertainment robots | |
CN104470686A (zh) | 用于生成被实时地执行的移动机器人的上下文行为的系统和方法 | |
KR102095951B1 (ko) | 로봇 제어 어플리케이션 생성을 이용한 코딩 교육 시스템 | |
Zeglin et al. | HERB's Sure Thing: A rapid drama system for rehearsing and performing live robot theater | |
KR20240038941A (ko) | 텍스트 기반 아바타 생성 방법 및 시스템 | |
Nakaoka et al. | Creating facial motions of Cybernetic Human HRP-4C | |
KR100572683B1 (ko) | 지능형 로봇의 컨텐츠 제작용 저작툴 및 이를 이용한지능형 로봇의 컨텐츠 제작 방법 | |
EP1381027A1 (en) | Language processor | |
Giunchi et al. | DreamCodeVR: Towards Democratizing Behavior Design in Virtual Reality with Speech-Driven Programming | |
CN112843683A (zh) | 虚拟角色的控制方法、装置、电子设备及存储介质 | |
Yang et al. | Hierarchical animation control of avatars in 3-d virtual environments | |
KR20200003437A (ko) | 로봇 제어 어플리케이션 생성을 이용한 코딩 교육 시스템 | |
TW200849049A (en) | Speech IC simulation method, system and storage medium thereof | |
Jeong et al. | AutomataStage: An AR-mediated creativity support tool for hands-on multidisciplinary learning | |
KR20130093186A (ko) | 인터랙티브 캐릭터를 활용한 동영상 제작 장치 | |
Hanser et al. | Scenemaker: Intelligent multimodal visualisation of natural language scripts | |
KR101626966B1 (ko) | 로봇 컨텐츠 저작 장치 및 방법 | |
KR20110130850A (ko) | 인형극 공연장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130529 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20140704 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20150706 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20160701 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20170703 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |