KR20060079832A - 임베디드 시스템기반의 감정표현 휴먼노이드 로봇 - Google Patents

임베디드 시스템기반의 감정표현 휴먼노이드 로봇 Download PDF

Info

Publication number
KR20060079832A
KR20060079832A KR1020050031624A KR20050031624A KR20060079832A KR 20060079832 A KR20060079832 A KR 20060079832A KR 1020050031624 A KR1020050031624 A KR 1020050031624A KR 20050031624 A KR20050031624 A KR 20050031624A KR 20060079832 A KR20060079832 A KR 20060079832A
Authority
KR
South Korea
Prior art keywords
robot
video
board
voice
emotion
Prior art date
Application number
KR1020050031624A
Other languages
English (en)
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 KR1020050031624A priority Critical patent/KR20060079832A/ko
Publication of KR20060079832A publication Critical patent/KR20060079832A/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A44HABERDASHERY; JEWELLERY
    • A44CPERSONAL ADORNMENTS, e.g. JEWELLERY; COINS
    • A44C3/00Medals; Badges
    • A44C3/004Medals
    • A44C3/005Medals made of one piece
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B44DECORATIVE ARTS
    • B44CPRODUCING DECORATIVE EFFECTS; MOSAICS; TARSIA WORK; PAPERHANGING
    • B44C1/00Processes, not specifically provided for elsewhere, for producing decorative surface effects
    • B44C1/22Removing surface-material, e.g. by engraving, by etching
    • B44C1/228Removing surface-material, e.g. by engraving, by etching by laser radiation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B44DECORATIVE ARTS
    • B44CPRODUCING DECORATIVE EFFECTS; MOSAICS; TARSIA WORK; PAPERHANGING
    • B44C1/00Processes, not specifically provided for elsewhere, for producing decorative surface effects
    • B44C1/24Pressing or stamping ornamental designs on surfaces

Abstract

본 고안은 임베디드 시스템기반에 인공지능 및 엔터테인먼트기능을 이용하여 사람에게 감정 표현 및 자율 이동이 가능하며 다양한 서비스를 제공하는 임베디드 시스템기반의 감정표현 휴먼노이드 로봇에 관한 것으로 더욱 상세하게는, 임베디드 OS 환경에서 음성, 영상, 초음파, 적외선 등 외부의 다양한 센서 등에 반응하여 감정 상태를 결정 한 후 서보모터로 구성된 기구학적인 머리 구조를 제어 혹은 외부 LED 및 LCD 화면에 감정 표현이 가능하며 엔터테인먼트 기능 즉 뮤직 비디오, MP3, 디지털 카메라, 무선 이더넷 통신, 동영상녹화 기능, TV 기능 등을 추가 하였으며 청소 기능을 추가 하였으며 초음파 센서를 이용해 자율 이동을 통한 장애물 회피가 가능하므로 써 사용자 간에 침 밀도 및 사용자의 편의성을 도모 할 수 있으며 가정에서 사용 할 수 있게 무선기기로 로봇을 제어하며 다양한 서비스를 제공 할 수 있는 효과가 있다.
감정, 표현, 인식, 엔터테인먼트, 로봇, 임베디드, 음성, 영상, 카메라, 마이크, 센서, 초음파, 영상보드, 카메라, 무선기기, 인터넷, 무선 이더넷, 청소

Description

임베디드 시스템기반의 감정표현 휴먼노이드 로봇 {Humanoid Robot using Emotion Expression based on the Embedded System}
도 1은 본 고안에 의한 따른 로봇의 실제 모습
도 2는 본 고안에 의한 로봇의 머리를 SolidWorks2000 프로그램으로 프레임을 디자인한 모습
도 3은 본 고안에 의한 로봇 내부 하드웨어 구성도
도 4는 본 고안에 의한 로봇의 눈에 해당 하는 CCD 카메라와 메인 프로세서의 하드웨어 구성도
도 5는 본 고안에 의한 로봇의 카메라에서 입력 받은 영상 데이터를 처리하는 구성도
도 6은 본 고안에 의한 센서에서 입력 받은 후 현재의 감정 및 행동 패턴을 결정 한 후 로봇의 얼굴, 팔, 다리 등을 제어
도 7은 본 고안에 의한 이동로봇의 충돌 회피
도 8은 본 고안에 의한 로봇의 소프트웨어 구성도
도 9는 본 고안에 의한 멀티미디어 프로그램의 실행 구성도
본 고안은 임베디드 시스템기반에 감정표현과 같은 인공지능 및 엔터테인먼트기능을 제공하며, 더욱 상세하게는 사람과 상호 인터페이스 할 수 있으며 다양한 서비스를 제공하는 임베디드 시스템기반의 감정표현 휴먼노이드 로봇에 관한이다.
종래의 로봇은 딱딱하다는 인식과 함께 사람과 로봇과의 관계가 종속적인 경우가 많았다. 사람이 일방적으로 로봇에게 명령을 하달하면 로봇은 단순히 그 명령에 따라 움직이는 방식이었으며, 또한 인공지능 로봇 구현을 위해 음성 및 영상 처리가 필요한데 이를 위해서 PC(personal computer)기반의 하드웨어 인터페이스를 구성 하게 된다. 이때 PC기반의 로봇을 구성 시 필요 없는 기능이 첨가되므로 하드웨어 구성이 복잡해지고 CISC(Complex Instruction Set Computer) 방식의 CPU를 사용 하므로 전력 소비가 크며 이동 로봇으로 구성 시 PC를 장착 하게 되므로 로봇의 크기가 커지며 모터의 토크가 커야 하므로 배터리의 부담이 커지는 문제점이 있다.
상기와 같은 문제점을 해결하기 위한 것으로, 임베디드 시스템기반으로 구성 하였으며, 감성표현과 같은 인공지능 기술을 이용해 사람과 상호 인터페이스가 가능 하며 영상, 음성 정보를 통해 로봇에 명령을 내릴 수 있으며 엔터테인먼트기능과 자율 이동 주행을 제공하므로 써 다양한 서비스를 제공하는 임베디드 시스템기반의 감정 표현 휴먼노이드 로봇 시스템을 제공 하는데 목적이 있다.
본 고안은 사람과 로봇과의 친구관계가 성립할 수 있도록 초점을 두고 설계 및 개발하였다. 사람과 커뮤니케이션을 통해 감정을 표현하게 되며 사람에게 기쁨을 주는 역할을 하게 된다. 본 고안은 내부에 행동과 인식을 한 쌍으로 한 여러 모듈을 가지고 있으며 이러한 모듈끼리의 링크구조를 가지고 있다. 모듈과 모듈과의 연결 관계를 통해 로봇은 다양한 행동을 하게 된다. 기존의 로봇들은 감정을 표현할 때 단순히 LED(23d)나 LCD(16)의 화면을 이용해서 감정을 표현한다. 본 고안의 경우 상기 로봇과 같이 LED(23b)와 LCD(16)를 통해 감성 표현이 가능하며 인체의 각 근육들을 응용하여 각각의 감정 표정을 표현하고, 여러 가지 동적인 환경과 변화 값들에 대해 적절한 행동을 할 수 있어 인간 친화적인 감정 표현이 가능하도록 한다.
또한, 본 고안에 따른 컴퓨터 시스템은 PC를 사용하지 않고 현재 휴대용 장치에 사용되는 고속 MCU 보드 및 임베디드 OS 기반에서 로봇 제어를 하므로 시스템 구성이 간단해 지고 전력 소모도 줄일 수 있어 배터리의 부담을 줄일 수 있으며, 외부 자극 즉 영상, 음성, 각종 근접 센서(초음파(23b), 적외선(23d), 인제감지 센서(23c), 등)를 처리하는 데 있어 효과 적이다. 그 예로 영상 입력을 담당하는 카메라(10)의 경우 기존의 PC 카메라(USB) 접속이 불가능 하다. 따라서 CCD 카메라(10) 혹은 CMOS카메라 등을 자체 인터페이스 회로를 구성 하여 메인 MCU와 연결된다. 또한 각종 멀티미디어 기능을 제공하기 위해 사운드, LCD(16), 등과도 접속이 가능해야 한다. 이때 사용되는 MCU는 ARM계열의 칩을 사용 하게 된다. 대부분의 ARM 칩은 LCD Controller, UART, USB, 사운드와 같은 다양한 기능의 모듈들이 SOC 형태로 칩 내에서 재공 된다. 음성 및 영상 처리를 위해서는 메인 프로세서인 ARM 칩에서 할 수 있지만 그것 보다 DSP 칩을 사용하여 고속의 연산을 처리하는데 목적이 있다.
또한, 종래의 임베디드 로봇 시스템의 경우 OS 기반이 아니므로 다중 프로세싱이 불가능하며 그러한 기반으로 로봇에서 다양한 기능을 재공 할 수 없다. 본 로봇은 임베디드 OS 환경에서 로봇 제어를 하므로 감정 표현, 각종 엔터테인먼트 기능 즉 뮤직 비디오, MP3 플레이어, 디지털 카메라, 말하는 로봇, 인터넷 통신, 동영상 녹화, TV 수신 등을 제공 하는데 그 목적이 있다.
또한, 본 고안은 가정에서 쉽게 적용 할 수 있는 청소 기능을 추가 하며 장애물 회피 및 현재 위치를 확인하기 위해 초음파 와 비전 센서를 적용 한다.
이하, 첨부된 도면들을 참고 하여 본 고안의 바람직한 실시 예를 상세하게 설명하면 다음과 같다.
도 1은 본 고안의 실물 모습을 보고 있으며 눈(10)에는 CCD 카메라가 장착되어 있으며 로봇 머리 뒤 부분(20)에는 얼굴의 근육 조직을 움직일 수 있는 18개의 서버 모터 제어를 위한 서보1 프로세서 보드(Sub1 Pricessor)(20)가 장착된다. 그리고 로봇 목 바로 밑 부분에 메인 프로세서 보드(Main Processor)(15), DSP 보드(14), 서보2 프로세서 보드(Sub2 Pricessor)(22), TV 튜너(11)가 장착되어 있다. 또한 스피커(17), 로봇 팔 (50), LCD(16), 초음파 센서(23b), DC 모터 및 바퀴(21b), 청소기 및 LED(21c), 등이 장착 된다.
도 2는 로봇의 감정을 기구학적으로 나타내기 위해 솔리드워크2000(SolidWorks 2000) 프로그램을 이용하여 프레임을 디자인한 모습이다. 로봇의 근육을 동작하는 서보 모터(21a)와 프레임 골격(60)을 보여 준다.
도 3은 본 발명의 로봇 시스템 전체 하드웨어 구성도이다. 현재 개발된 DMB(digital multimedia broadcasting) 수진 모듈을 통해 TV 수신 및 다양한 영상 데이터 수신이 가능하도록 설계한다. DMB 모듈 채널 선택을 위해서는 적외선 리모콘과 같은 무선 장치를 사용하여 제어 한다. CCD(Charge Coupled Device) 카메라(10)에서 출력된 아날로그 신호를 영상 보드(13)를 통해 디지털 데이터로 변환 한 후 DSP 보드(14) 및 메인 프로세서 보드(15)에 전달한다. DSP 보드에서는 영상처리를 하여 그 결과 값을 메인 프로세서 보드(15)에 전달되며 메인 프로세서 보드(15)는 영상 보드(13)를 통해 변환된 디지털 데이터와 영상처리 결과 값을 LCD(16)에 디스플레이 하게 된다. 또한 서보 1, 2 프로세서 보드(20, 22)를 통해 각종 센서 값(초음파, 적외선, CDS, 가스, 인체감지, 박수, 터치, 온도 센서)(23)을 시리얼 통신(RS232)을 통해 입력받고 그 결과 값을 각종 모터, LED 및 청소기(21)를 제어하게 된다. 그리고 마이크(12)를 통해 외부의 소리 즉 사람의 말 등을 인식하기 위하여 A/D 변환한(13) 후 DSP보드(14)에서 그 데이터를 처리하고 그 결과 값을 시리얼 통신(RS232)을 통해 메인 프로세서 보드(15)에 전송하게 되며 로봇의 음성 역시 스피커(17)를 통해 출력된다. 또한 메인 프로세서 보드를 제어를 위해 무선 장치(14) 즉 적외선 리모콘, 휴대용 단말기 혹은 무선 랜 망 통해 인터넷(30)으로 본 로봇을 제어하게 된다.
도 4는 도 3의 영상 보드(13a)를 상세하게 나타낸 것으로 로봇의 눈에 해당되는 CCD 카메라와 현재 개발된 DMB(digital multimedia broadcasting) 수진 모듈에서 출력되는 아날로그 신호는 A/D 변환(13b) 칩을 통해 필드(1/2 프레임)의 디지털 데이터(13e)로 변환되고 그 데이터는 FIFO(First In First Out)(13c) 메모리에 저장하게 된다. 그 후 메인 프로세서 보드(15)는 FIFO(First In First Out)(13c) 메모리에서 영상 데이터(13e)를 가져온다. 이때 A/D 변환(13b) 칩과 FIFO(First In First Out)(13c) 메모리의 동작 제어는 메인 프로세서 보드(15)에서 제어 한다.
A/D 변환 칩(13b)의 경우 NTSC/PAL 방식의 아날로그 신호를 디지털로 변환 하게 되며 현재 TI, 필립스, 아날로그 로직 사 등 여러 회사에서 생산 된다. FIFO(First In First Out)(13c) 메모리는 데이터의 입력단과 출력 단이 다르므로 데이털 입출력이 실시간으로 이루어진다. 본 시스템에 적용한 FIFO(First In First Out)(13c) 메모리는 TI, 필립스, AVER LOGIC 사 등에서 생산 된다.
프로세서 보드(15)는 영상을 실시간으로 영상 데이터를 가져 올 수 없으므로 FIFO(First In First Out)(13c) 메모리를 사용 하여 순차적으로 한 필드(1/2 프레임) 형식의 영상 데이터(13e)를 임시 보간 한 후 프로세서 보드(15)는 다른 작업을 끝내고 영상 데이터(13e)를 순차적으로 가져온다.
도 5는 디지털 영상 데이터를 이용하여 DSP 보드(14)에서 영상 처리 과정을 통해 로봇의 행동 모델(180)을 결정하는 모습을 보여준다. 로봇은 대부분의 감정처리 자극을 영상, 음성 정보를 통해 인식한다. 그러므로 영상, 음성 신호처리를 위해 고속의 CPU를 사용해야 하므로 DSP 프로세서(14)가 적당하다고 생각한다.
본 고안에서는 영상 처리를 위해 해당 물체 추적(130), 문자 인식(140), 악보 인식(150), 사람 얼굴 인식(160) 등을 한다.
상기 특정 물체 추적(130)에 사용되는 알고리즘에는 여러 가지가 있다. 그중 요즘 일반 대중에게 관심을 일으키고 있는 로봇축구에서 쓰인 특정 칼라를 추적하는 방법을 응용한다. 로봇 축구 시스템은 CCD 카메라(10)에 들어온 영상신호를 2진 화상처리 (임계값 처리, 라벨링, 크기필터링)의 영상처리로 목표물을 인식함으로서 로봇의 위치 및 공의 위치를 판별하고 지령을 내리는 구조로 구성된다. 본 고안의 비전 시스템은 기본적으로 로봇 축구 시스템과 유사한다. 단, 로봇 축구 시스템은 고정된 카메라와 이를 PC 기반으로 영상처리를 했지만 본 고안은 움직이는 로봇에서 모든 영상처리가 이루어지는 즉, 임베드디 시스템 기반(Stand-alone 방식)으로 구현 한다.
상기 문자 인식(140)은 백프로퍼게이션(Backpropagation) 오류역전파 학습 알고리즘을 사용한다. 실제 백프로파게이션을 이용하여 문자인식을 하려면 문자의 패턴 인식을 위한 트레인 셋과 백프로퍼게이션 수행 후 가중치(Weight) 구해져야 한다. 트레인셋을 대표패턴이미지를 만들고 이진화한 다음 세그멘테이션하여 규격화된 각 글자들의 패턴을 입력 값으로 주었으며 출력 값으로는 총 글자의 개수만큼 만들어 각 순서에 따라 출력이 1이 나오도록 학습시켰다. 웨이트를 계산하기 위해서 따로 프로그램을 만들었는데 기본적인 C++ 코드는 "Pattern Recognition with Neural Networks in C++"를 참고하였는데 DOS용인데다 여러 가지 문제점이 있어 다소 수정하였다. 이 코드를 기본으로 하여 따로 웨이트를 구할 수 있고 테스트할 수 있는 프로그램을 작성하였다. 실제 웨이트를 구하는 데는 많은 변수들이 있는데 이 설정값에 따라 많은 차이가 있다. 그러나 이것은 패턴이 다양하므로 이론적으로 최적화된 값을 알아낼 수가 없어 경험에 의해 조정해서 웨이트를 구해야하므로 많은 시간이 걸렸고 변수를 이해하는 데 많은 어려움이 있다. 이렇게 해서 구해진 웨이트는 파일로 저장되어서 실제 문자인식을 할 때 불려지는데 10ㅧ10으로 규격화된 이미지를 1차원 배열로 총 100개의 입력 값으로 신경망에 들어가서 거기서 나온 출력 값을 보고 문자를 인식하게 된다.
상기 악보인식(150)은 인공적인 2차원 다이어그램 인식의 일종으로서 현대 사회 회로도, 플로차트 인식 및 문서인식과 더불어 중요한 인식분야이다. 악보인식은 연주하는 시스템을 구성하기 위한 것으로 높은 인식률을 얻기 위하여 음악기호에 대한 문제영역지식을 이용한 인식방법의 사용과 다양한 음악기호를 인식하여 좀 더 다양한 엔터테인먼트 기능을 제공한다.
상기 얼굴인식(160)은 차 영상을 사용하여 조명의 변화에 강한 얼굴 영역을 탐지하고 가변 라디오 템플릿(Ratio Template)을 이용하여 얼굴의 크기와 기울기 변화에 구애받지 않고 얼굴 구성 요소를 추출 할 수 있게 된다. CCD 카메라(10)를 통해 들어온 영상에서 사람의 피부색깔과 유사한 영역을 찾고, 그 부분이 이동하면 하드 시스템(Head System)의 자유도 기능을 통해 트래킹(Tracking)한다. 미리 사용자들의 얼굴영상 데이터베이스(Data Base)를 구축하고, 현재 탐색된 얼굴과 비교하여 누구인지 알아낸다. 만약 기존 얼굴 영상들과 많이 다를 경우에는 외부 손님으로 인식하게 된다.
상기 음성인식(170)은 대화를 통한 지능형 상호작용 기술 등을 포함한다. 이 분야의 기술은 사람의 음성에 반응하여 현재의 시각을 합성된 음성으로 알려 주는 시계장치(US 4408096 83년 Sharp)같이 간단한 응용에서 시작하여 지금 보편적으로 활용되고 있는, 전화선의 톤 방식 신호에 대응한 합성 음성정보 제공 시스템(US 4489438 84년 National Data Corporation)으로 발전 하였다. 로봇과의 대화를 실현하기 위한 더 진보된 기술로서 신경 회로망을 이용하여 빠른 음성인식이 가능한 방법(KR 202424 95년 정호선), 음성의 스펙트럼 분석으로 텍스트로 변환하거나 저장된 음성패턴을 이용하여 텍스트를 음성으로 변환하여 통신을 수행하는 기술(US 6173250 2000년 AT&T Corporation), 음성인식 기반 작동완구 세트 및 그 작동 방법 등이 제안되었다. 본 고안에 사용된 음성 인식 역시 위와 같은 것으로 외부 마이크(12)에서 입력 받은 데이터를 A/D 변환(13) 하여 로봇 음성 인식에 사용 한다.
이와 같은 물체추적(130), 문자(140), 악보(150), 얼굴(160), 음성(170) 인식을 이용하여 로봇의 행동 모델(180)을 구성 하게 된다. 그 후 얼굴 모터 제어(Face Motor Control)(190)를 이용해 실제 로봇의 얼굴에 장착된 서보 모터(21)를 이용해 기구학적인 움직임이 이루어진다. 예를 들면 문자 인식(140)을 했을 때 해당 문자를 이해했다는 의미로 얼굴의 기구학적인 동작을 통해 말을 한다든지 혹은 악보 등을 인식해 노래를 한다. 로봇이 좋아 하는 물체/사람 얼굴을 보며 움직이면 로봇의 감성 변화 곡선이 높아지는 등 영상 데이터만으로 로봇의 감정 표현이 가능 하다.
도 6은 외부의 여러 센서 자극 즉 음성, 영상, 초음파, 적외선, CDS, 가스, 인체감지, 박수, 터치, 온도 센서(210)를 통해 입력 받은 데이터와 행동 시스템(Behavior System)(162)즉 사회적인(Social), 감지(Sensor), 피곤(Fatigue), 자극(Stimulation) 통하여 로봇의 감정을(161) 도식화 하고 모터를 제어 하여 행동 오브젝트(220)를 생성하는 것을 보여 준다.
상기와 같이 로봇이 감정을 표현하는 문제에는 많은 심리학적, 해부학적, 공학적 문제가 관련된다. 심리학에서 얼굴 표정은 오랫동안 연구돼 왔지만, 사람이 어떻게 감정의 얼굴 표정을 이해하는지에 대해서는 아직도 많은 의문이 해결되지 않고 있다. 얼굴 표정은 상황이나 사람에 따라 다르게 이해되며 경험이나 친숙성, 특정 부분에 대한 집중 등에 따라 다르게 이해된다. 그리고 나이, 남녀노소, 인종, 성장 과정, 경험 등에 따라 얼굴이 해부학적으로 다양하기 때문에 매우 복잡한 신호 특성을 나타내고 있으며, 감정뿐만 아니라 신원, 성, 연령, 인종 구별, 지능, 성격 등이 얼굴에서 표현되는 등 매우 다양한 정보를 추출한다. 그러므로 표현하는 사람의 해부학적 얼굴 구조 및 경험과 성장 발달 과정 등의 영향으로 표현 양식에서 개별성을 나타내고 있고, 개인별로 다른 인식 규칙을 가지고 있다. 이러한 사실에도 불구하고 심리학자인 Ekman과 Friesen에 의해 사람의 여섯 가지 기본 표정이 놀람, 공포, 혐오, 행복감, 두려움, 슬픔은 각 문화에 영향을 받지 않고 공통적으로 인식되는 보편성을 가지고 있는 것으로 연구됐다. 다음은 이러한 여섯 가지 기본 표정을 나타낸다.
[표] 감정 표현
감 정 표 현
놀 람 -눈썹 : 곡선처럼 굽어 올라간다. -눈 : 놀라는 동안에 넓게 뜨고 아래쪽 눈꺼풀이 풀어지고 위 눈꺼풀은 올라간다. 눈동자 위에 눈의 흰 부분이 많이 나타난다. -아래쪽 부분 : 턱이 아래로 떨어져 입술과 이빨이 벌어진다. 벌린 입은 긴장되지 않고 힘이 빠져 있다. 턱이 아래로 향할수록 놀람의 정도는 더 강하다.
공 포 -눈썹 : 눈썹은 올라가고 쫙 뻗어 있다. -눈 : 눈은 열려있고 긴장돼 있다. 위 눈꺼풀은 올라가고 아래 눈꺼풀은 긴장돼 있다. 이 부분은 놀람에서 아래쪽 눈꺼풀이 풀어졌던 것과는 대비되는 현상이다. 공포의 세기는 아래 눈꺼풀이 위로 올라감과 함께 눈에서 잘 나타난다. -입 : 입은 벌어지고 입술은 긴장되고 탄탄히 입술이 당겨진다. 공포의 정도가 증가함에 따라 입을 벌리고 쫙 편 정도가 증가한다.
혐 오 -아래 영역 : 윗입술이 올라간다. 혐오가 강할수록 윗입술이 점점 많이 올라간다. 아랫입술이 올라가면서 약간 앞으로 내밀거나 아래로 내리면서 약간 앞으로 내민다. -위쪽 영역 : 눈을 작게 뜬다. 눈썹은 보통 아래로 내려온다.
분 노 -눈썹 : 눈썹은 아래로 미간 사이로 뜬다. -눈 : 눈꺼풀이 긴장된다. 눈은 시선이 집중돼 돌출되는 듯한 모양이 된다. -입 : 입은 입술을 다문다. 분노의 세기는 입술이 얼마나 긴장되어 있는지에 의해 나타난다.
행 복 -입술의 끝점이 끌려 뒤와 위로 약간 올라간다. -입은 다물 수도 벌릴 수도 있다. -크게 미소를 지을 때는 볼이 올라간다. -행복감이 강할수록 주로 입술 끝의 위치가 올라간다.
슬 픔 -눈썹 : 눈썹의 안쪽 끝이 올라가고 보통 미간이 좁혀진다. 위 눈꺼풀이 안쪽 끝에서 올라가거나 눈꺼풀의 위쪽이 위로 올라간다. -입 : 입술의 끝이 아래로 내려간다. -슬픔이 매우 강하면 근육이 풀어져 약간 멍한 표정을 짓기도 한다. -슬픔이 강하면 눈물이나 입술을 떠는 움직임으로 표현된다.
본 고안의 감정엔진(181)은 인간과 휴먼노이드 로봇의 상호작용을 위해, 동기(motivation)와 계층화된 감정(hierarchical emotion)에 기반을 둔 행동모델(180)을 설계한다. 감정모델(181)은 계층화되고 학습 가능하도록 하여, 인간의 행동결정과 유사하게 동작하도록 한다. 감정모델(181)을 통해 로봇의 행동에 대한 인간의 반응이 학습되는데, 그 결과가 행동결정에 영향을 주어 로봇의 행동에 반영되도록 한다. 감정모델(181)과 함께 동기가 행동모델(180) 결정에 영향을 주는데, 초기에는 외부에서 주어지는 동기가 주로 행동을 결정하고, 감정모델(181)이 학습될수록 점차 감정의 영향이 증가하여 동기와 계층화된 감정을 함께 고려하여 행동을 결정하도록 한다. 그럼으로써, 인간과의 상호작용을 통해 정보를 축적하고 인간의 반응에 적응해나갈 수 있게 한다. 사람과 로봇의 상호작용은 로봇의 행동과 이에 대한 사람의 반응을 통해 이루어진다. 외부/내부적인 자극은 내부에 동기(motivation)라는 내부 신호를 유발시키고, 동기에 따라 행동 시스템(Behavior System)(182)이 선택된다. 센서를 통해 얻어지는 사람과 환경에 대한 정보는 외부적인 자극이고, 하드웨어의 상태, 예를 들어 충전지의 상태 등은 내부적인 자극이 된다. 로봇은 인간의 반응에 따라 적절한 행동을 선택하게 되고, 사람은 로봇의 행동을 원하는 방향으로 이끌기 위한 자극을 가함으로써 상호작용이 이루어진다. 일반적으로 이러한 상호작용은 반사적인 행동(reactive behavior)에 해당한다. 자극이 주어지면 이에 대해 미리 결정된 어떤 미리 행동이 고정적으로 선택되는 것이다. 그러나 상대방에 따라 이러한 행동의 선택은 적절하지 않을 수 있다. 어떤 사람의 경우는 보다 친근한 동작을 선호할 수 있고, 어떤 사람은 로봇이 가급적 조용하게 있는 것을 선호할 수 있다. 이러한 상대방에 대한 정보를 행동결정에 반영하기 위해 감정(emotion)을 도입할 필요가 있다. 사람이 무서운 상대방에게는 보다 조심스럽게 반응하는 것처럼, 로봇의 감정은 동기와 더불어 보다 상황에 적합한 행동모델(180) 결정에 영향을 준다.
상기와 같이 본 고안에서는 보다 적절하게 로봇과 인간의 상호작용이 가능하도록 한다. 우선 감정이 외부의 (행동, 반응)이라는 입력 쌍에 의해 영향을 받도록 한다. 또한 감정이 동기와 함께 행동모델(180) 결정에 영향을 주도록 한다. 그럼으로써, 감정에 대응되지 않는 행동들에 대해서도 모델을 적용할 수 있게 한다.
본 고안에서는 3차원 감정 상태 전이도를 구성하였다. 3개의 축은 각각 자극(Arousal), 밸런스(Valence), 자세(stance)를 이다. 4분면에 각각 29개의 감정을 정의한다. 또한 미세한 감정 표현을 위해 120여 가지의 동적 표정 변화가 나타나도록 설계 및 제작한다.
상기 자극(Arousal)은 각성 상태 각성이 가장 높은 상태는 놀라움(Surprise) 이고 그 다음이 (흥미)Interest 상태가 된다. 상기 밸런스(Valence)는 행복함 정도를 나타낸다. 높을수록 행복(Happy) 상태가 된다. 상기 자세(Stance)는 자세 혹은 태도, 태세, 기라고 표현할 수 있는데 기가 세면 불쾌(Displeasure) 상태에서 화를 내게 되고 기가 약하면 무서움(Fear)의 상태가 된다. 아래의 식을 통해 감정 곡선이 변화된다.
Mood(n) = λ * Emotion(n) + Mood(n-1) ± ε Personality(n) = μ * Mood(n) + Personality(n-1) Feeling(n) = α * Emotion(n) + β * Mood(n) + γ * Personality(n)
즉. 감정(Emotion), 기분(Mood), 개성(Personality)을 구성요소로 하는 인공감정 모델을 만들어, 29개의 감정(Emotion)에 따라 기분(Mood)이 구성되고, 이런 기분(Mood)이 일정한 시간 지연되면 로봇의 개성(Personality)이 되도록 하였다. 로봇은 느낌(Feeling)에 따라 A, V, S 모델의 좌표를 보간 이동하며 각각의 감정상태에 알맞은 행동을 하게 된다. 예를 들면 놀라움(Surprise) 상태라면 로봇이 귀와 눈썹이 올라가고 입술이 모아진다. 이상에서 정의된 일시적인 감정, 기분, 태도, 성격의 세 가지는 그것이 변하는 시간간격에 따라 구분되며 함께 결합되어 계층화된 감정을 구성한다. 일시적인 감정은 짧은 시간에 변하고, 기분과 태도는 장시간에 걸쳐 변하며, 성격은 처음부터 결정되며 변하지 않는다.
다음 그림은 본 고안의 감성표현을 보여준다.
Figure 112005019814473-PAT00001
[그림] 감정표현
행동 시스템(Behavior System0(182)에서 크게 네 가지로 구분한다. 첫 번째로 사회적 드라이버(Social Drive)(162a) 사람 인식에 대해 3가지 패턴을 가지게 된다. 사람이 없는 경우 사람을 찾게 되고, 사람이 있으면 네 가지 모드를 적용하여 로봇의 행동 패턴을 결정하게 된다. 둘 번째로 센서 드라이버(Sensor Drive) 높은 수준의 지각 능력 시스템(High Level Perceptual System)의 지각 센서 중 초음파, 적외선, 인체감지, 압력 센서, 영상, 음성 신호 등(210)을 이용하여 로봇의 행동 패턴을 결정한다. 세 번째로 피로 드라이버(Fatigue Drive)는 로봇이 피곤한 상태이거나 주위의 자극이 없을 때 로봇은 "Sleep" 모드를 적용한다. 주위의 자극이 발생하면 "Quite Down"모드로 다음 행동 상태에 대해 예비 동작을 준비하게 된다. 네 번째로 자극 드라이버(Stimulation Drive)는 장난감을 이용하여 로봇의 행동 패턴을 결정한다. 사회 드라이버(Social Drive)의 사람이 없을 경우와 같이 장난감이 없을 경우 장남 감을 찾게 되고, 장남감이 있으면 소리가 나는 장남감인지 아닌지를 판단하여 두 가지 모드를 적용하고 로봇의 행동 패턴을 결정하게 된다.
모터 스킬(Motor Skills)(190)은 서버 모터 제어(Servo Controller)를 위해 서버 1 프로세서보드(20) 사용한다. 기본적으로 메인 프로세서 보드(15)와 통신을 위해 RS-232C 시리얼 통신을 라이브러리로 구성하였고, 모터 펄스 구성을 위한 인터럽트 동작에 문제가 없도록 인터럽트 기반의 통신 구조를 가지도록 프로그램 했다. 본 고안의 얼굴 근육 제어에 사용된 RC 서버 모터(Servo Motor)는 RC 조향장치용으로 최초 개발되었으나, 내부에 위치 제어기가 내장되어 있어 조작이 편리한 장점으로 인해 현재 소형 로봇에 많이 이용되고 있다. 본 고안의 얼굴과 팔의 모든 모터는 RC 서버 모터(Servo Motor)이며, 많은 수의 모터 제어를 위해서 제어 주기인 20ms 당 6개의 모터 펄스가 순차적으로 발생하도록 하는 방법으로 펌웨어를 구성했다. 한 개의 RC 서버 모터(Servo Motor)의 제어를 위해서는 20ms 주기로 0.5~2.7ms 폭의 하이(High) 신호를 넣어주어야 한다. 여기서 하이(High) 신호의 시간이 모터의 각 위치를 결정하게 된다. 본 로봇의 모터 제어 펌웨어는 모두 36개의 모터 컨트롤이 가능하도록 설계한다. RC 서보 모터(Servo Motor) 속도를 그대로 사용하기에는 얼굴 표정 변화의 유연함을 보여주지 못하고 딱딱한 움직임만을 보여줄 수밖에 없다. 따라서 속도를 제어할 필요가 있는데, 기본적으로 RC 서보 모터(Servo Motor)는 속도 제어를 위한 별도의 제어 방법을 제공하지는 않는다. 따라서 본 로봇에서는 펄스 폭(각 위치) 변화율을 사용자가 설정할 수 있도록 프로그램 하여 속도 제어가 가능하도록 한다.
다음 그림은 Timer Compare Match를 이용한 펄스 생성의 모습을 보여준다.
Figure 112005019814473-PAT00002
[그림] Timer Compare Match를 이용한 펄스 생성
RC 서보 모터(Servo Motor)는 피드백(Feedback) 할 수 있는 특별한 방법을 제공하지 않는다. 그렇지만 위의 방법을 이용함으로서 정확하지는 않지만, 대략 현재 모터의 각 위치를 파악할 수 있을 뿐만 아니라, 명령한 위치에 도달했는지에 대한 정보도 얻는다. 본 고안은 이러한 정보를 이용하여 모터 사용 여부를 판단하기 위해 Compare 값이 목표 값에 도달했을 때 메인 프로세서로 완료 플래그를 보낸다.
다음 그림은 펄스 폭 변화를 이용한 속도제어의 모습을 보여준다.
Figure 112005019814473-PAT00003
[그림] 펄스 폭 변화를 이용한 속도제어
도 6은 이동로봇의 충돌 회피에 있어서 전형적인 방법은 초음파센서(23b), 적외선센서(23d), 비전 센서(10) 등을 로봇에 장착한 뒤 장애물을 검출하고 장애물과 로봇간의 상대적인 거리를 이용하여 충돌을 회피하는 것을 보여 준다. 이 때 가장 핵심적인 사항은 센서의 신호처리와 상대거리 개념이다. 센서의 신호처리는 각 센서들의 반응시간, 검출영역, 분해능, 센서의 배치 등 센서 자체에 대한 이해와 검출하는 대상 및 환경에 대한 고려가 이루어져야 한다. 센서에 의한 정보 검출은 비교적 쉬운 작업이지만 검출 대상 및 환경의 변화에 대한 고려를 한다는 것은 일반적인 상황까지 고려할 때 상당히 어려운 작업이라 사료된다. 따라서 이러한 문제들을 극복하기 위해 선행연구자들은 센서들을 복합적으로 사용하여 각 센서들의 장점들을 최대한 부각한 센서(sensor fusion) 방법을 적용하고 있다. 본 고안에서는 기존 시스템에서 많이 적용되고 있는 방식으로 로봇의 앞부분에 7조의 초음파 센서와 2조의 적외선 센서를 달아 충돌 회피 및 바닥 감지를 하게 된다.
자율이동로봇의 경로계획(path planning)이란 로봇의 초기위치로부터 목적지까지 무 충돌 경로(collision-free)를 생성하는 것으로 그 동안 연구된 접근방법으로는 크게 전역적 방법(global method)과 지역적 방법(local method) 두 가지로 분류된다. 전역적 방법은 환경에 대한 정보를 사전에 완전히 기술 할 수 있을 때 사용되고 있고, 지역적 방법은 직각 좌표계에서 장애물에 대한 위치, 모양, 크기 등 등 환경에 대한 정보를 부분적으로 가지고 있거나 센서에 기반을 둔 정보 획득에 의존하는 방법이다.
본 고안은 후자의 방법으로 상대거리 개념을 두어 자율 주행하게 된다. 상대거리 개념은 각 센서들이 로봇의 바디에 부착되어있고 개별 로봇에서 장애물까지의 거리를 상대적인 거리로 인식하는 것을 말한다. 따라서 상대거리는 로봇에 장착되어 있는 센서의 성능에 좌우되며, 센서 신호처리의 정밀도에 좌우된다. 장애물 회피를 위해 본 로봇은 모두 7개의 초음파 센서(23b)를 사용한다. 전방 180도를 이러한 초음파 센서(23b)로 구성되어 있다. 각 센서는 0, 30, 60, 90, 120, 150, 180의 가중치가 부여되게 된다. 추종 방향 벡터를 구하기 위해서 초음파 센서 값이 크게 나오는 방향을 선택해야 하는데 이는 값이 작게 나오는 지역은 장애물이 가까이에 존재하는 부분이기 때문이다. 여기서 확실히 장애물이 없는 구간을 구하기 위해 3개의 초음파 센서 값( n-1, n, n+1 )이 최대가 되는 그룹을 먼저 찾아낸다. 다른 센서 값의 영향을 없애기 위해 최대가 되는 그룹만을 남기고 다른 센서는 방향 벡터를 구하는데 영향을 주지 않도록 한다.
다음은 그림은 본 로봇의 주행에 사용된 퍼지 제어기의 구성을 보여준다.
Figure 112005019814473-PAT00004
[그림] 퍼지제어기의 구성
퍼지 제어기의 구체적인 원리는 범위를 벗어나므로 생략하도록 하겠다. 위에서 언급한 장애물의 위치와 거리에 따른 규칙을 Knowledge Base에서 구성해 줌으로 해서 퍼지화, 퍼지 추론, 비퍼지화 과정을 거쳐 적절한 출력값(모터 속도)을 얻는다. 퍼지 제어기의 사용은 환경에 따라 두 바퀴의 모터 제어에 대한 비선형적인 문제를 해결하기 위해 고안된 것이지만, 일반적인 규칙 기반 코딩으로도 구현될 수 있다. 본 고안은 퍼지 제어기와 규칙 기반 코딩 모두 구현된다.
도 8은 본 로봇 시스템에 적용된 소프트웨어 구성도이다. 본 로봇 시스템은 임베디드 OS가 포팅되어 있어 다중 처리 프로세싱이 가능 하므로 행동 스레드(Behavior Thread)(340), 행동 스레드(Emotion Thread)(350), 다이내믹 스레드(Dynamic Thread)(360), 시리얼 & TCP/IP 스레드(Serial & TCP/IP Thread)(310), 이미지 처리 스레드(ImageProcess Thread)(320), 립싱크 스레드(LipSync Thread)(370), 멀티미디어 스레드(Multimedia Thread)(380)와 같은 스레드 등이 각각의 시그널을 이용하여 다중 작업이 가능하다.
상기 시리얼 & TCP/IP 스레드(Serial & TCP/IP Thread)(310)는 외부의 다른 기종의 컴퓨터들과 비동기 통신을 하는 부분이다. 대표적인 통신으로 RS232 시리얼 통신과 무선 인터넷 망을 이용한 UDP 혹은 TCP/IP 통신 방식이다. RS232 시리얼 통신은 메인 프로세서를 중심으로 서버 1,2 프로세서와 통신 방법으로 데이터를 주고받도록 설계되었다. 그리고 무선 인터넷 혹은 블루투스를 이용하여 외부에서 원격으로 로봇을 제어 할 수 있으며 본 로봇과 영상, 음성 등을 전송 할 수 있다.
또한, 상기 행동 스레드(Behavior Thread)(340)는 인간과의 상호 작용에 대한 반응이나 자율적인 행동 시스템이 구현되어 스레드로 동작된다. 본 로봇의 상태에 따라서 IDLE & SEARCH, SURPISE, TRACKING, CLAB, OBSTACLE AVOID, FREE RUNNING로 구성 된다. 상기 IDLE & SEARCH 상태는 OBJECT TRACKING 상태로 세팅되었을 때의 동작이다. OBJECT로는 특정 색 계열의 임의의 물체로 설정하였으며, 이에 대한 처리는 영상 처리 스레드(Image Process Thread)에서 처리하여 트레킹 이벤트 스레드(Tracking Event Signal)로 행동 스레드(Behavior Thread)로 전달된다. 특히, IDLE&SEARCH는 본 시스템이 물체를 찾지 못했을 경우 주위 환경을 검색하기 위해 배회 동작을 수행하도록 하는 부분이다. 랜덤한 좌표로 본 로봇의 시야 동작 모터 (눈, 목)를 동작시켜 물체(Object)를 찾도록 한다. 상기 TRACKING은 IDLE & SEARCH 과정 중에 물체(Object)가 발견되었을 경우에 이를 추적한다. 본 로봇의 눈에 해당하는 CCD 카메라(10)는 시야각이 약 30도로 한정되어 있다. 따라서 영상 처리 스레드(Image Process Thread)로부터 전달 받은 입력 영상에서의 좌표를 해당 각도로 매핑(Mapping) 시켜 적절한 비례 제어 상수를 구하고, 이를 이용해 트래킹(Tracking)에 사용되는 눈과 목의 모터의 위치값(각도)으로 비례 제어하여 물체를 트래킹(Tracking) 하게 된다. 이 때 눈의 좌우 트래킹(Tracking)이 우선시 되며, 일정 각도 이상으로 회전 시에는 목이 회전되도록 한다. 이 때 중요한 감성 변화 과정도 함께 일어난다. 즉, TRACKING 동작은 곧, 외부 자극으로 처리된다. 단, 영상 처리 스레드(Image Process Thread)는 메인 프로세서보드(15)에서 자체 영상 처리를 할 경우에 만 동작하고 그 외 DSP 보드(14)에서 영상 처리를 할 경우 동작 하지 않는다. 상기 SURPRISE은 IDLE&SEARCH 동작 중에 본 로봇의 코에 장착된 초음파 센서 값이 작게 측정되었을 경우, 가까운 곳에 물체가 있는 것으로 판단 깜짝 놀라는 동작(눈이 모아지며 놀람)을 하도록 하였다. 초음파 센서 처리는 센서 스레드(Sensor Thread)(330)에서 이루어지며, SURPRISE 동작이 요구될 시에 행동 스레드(Behavior Thread)(340)로 이벤트 시그널(Event Signal)을 보낸다. 상기 CLAP은 좌우로 박수 소리를 감지했을 경우 해당 방향으로 눈과 머리를 돌리도록 하는 행동을 하도록 한다. 박수 소리에 대한 시그널은 역시 센서 스레드(Sensor Thread)(330)로부터 받는다. 상기 OBSTACLE AVOID은 현재 모드가 주행 모드일 경우에 행동이다. 본 로봇의 하체에 장착된 7개의 초음파 센서(23b)의 값을 적절하게 처리하여 장애물을 회피하는 동작을 수행하도록 한다. 상기 FREE RUNNING은 장애물 회피를 포함하여, 리모컨을 이용한 수동 조작으로 본 고안의 각종 모터(서버, DC 모터)를 구동 시키도록 한다.
또한, 상기 감정 스레드(Emotion Thread)(350)는 본 로봇의 가장 큰 특징 중 하나로써 내부 감성 변화를 자연스럽게 표현하는 능력이 가능 하도록 한다. 언제 어떠한 자극에 의해 내부 감성이 변화될지 모르기 때문에 그 때 마다 본 고안의 얼굴 표정이 변화시키는 작업을 담당하는 감정 스레드(Emotion Thread)(350)를 구동한다. 얼굴 표정 변화 뿐 아니라, 감정 보간(Emotion Interpolation)이라고 정의한 미묘한 감정 변화 기능을 제공한다. 즉, 행복(HAPPY)과 슬픔(SAD)의 각각의 비중에 따른 애매한 표정을 표현할 수 있도록 하며, 이에 대한 감성 변화 상태를 처리하는 기능을 구현하였다. 다음과 같이 감정 보간에 따라서 두 감정 비율 var_ratio에 따라서 표정을 결정짓는 모터 각도를 결정짓는다.
Pulse=(float)(new_pulse[i]-current_pulse[i])*var_ratio+(float)current_pulse[i];
본 고안의 외부 자극에 대한 전달은 외부 센서의 데이터를 수집하는 서버 2 프로세서 보드(22)와 이미지처리 스레드(Image Process Thread)(320)혹은 DSP 보드(14)에서 이루어진다. 외부 자극에 대한 처리는 구조상 각각 처리하도록 구현하였으며 이에 대한 감성 변화에 대한 자극을 감정 스레드(Emotion Thread)(350)에서 전달받게 되며 실제적인 본 로봇의 내부 감성은 A. V. S 모델과 자극 정보에 따라 스스로 감성이 변화되도록 설계되었다. 현재는 정의된 자극 수의 한계로 범용적인 감성 결정 부분은 완벽하지 못하지만, 애매한 감정에 대한 얼굴 표정 변화 부분은 국내에서 찾기 어려울 정도로 좋은 편이다.
또한 상기 다이내믹 스레드(Dynamic Thread)(360)는 본 공안이 마치 살아있는 것과 같은 움직임을 보여주기 위해 핵심이 되는 스레드 이다. 눈을 깜빡이고, 입술과 눈썹이 고정되지 않고 때때로 움직여 줌으로서 단순히 표정을 짓기 보다는 좀 더 생동감 있는 표정이 가능하도록 임의의 시간 간격마다 다이내믹 패턴(Dynamic Pattern)으로 설정한 특정 얼굴 부분의 동작들이 수행된다. 다이내믹(Dynamic) 동작의 부분은 표정과 연관되는 부분으로 모두 4개 부분으로 분류하여 동작된다. 4개 부분은 눈썹, 눈꺼풀, 귀, 입술이며 각각 다이내믹 패턴(Dynamic Pattern)을 4개 정도 정의를 해 두었다. 물론 얼마든지 추가 가능하다. 이러한 조합을 통하며 얼굴 표정은 100가지 이상의 다양한 표정이 나올 수 있다. 일부 특정 모드, 특히 영상 처리 모드에서는 눈이 깜빡이는 행동은 영상 처리에 방해가 되기 때문에 모드 특성에 따라서 동작이 제한되도록 하였다.
이미지처리 스레드(ImageProcess Thread)(320) 영상 처리, LCD 프레임 버퍼 디스플레이(Frame Buffer Display) 작업을 처리하는 쓰레드이다. 본 로봇 시스템의 영상처리는 외부의 DSP 보드에서 담당하나 LCD 디스플레이 등을 위해 약간의 가공을 위해 영상처리 시 몇 가지 미흡한 부분을 보강 하게 된다. 영상 처리를 통해 본 로봇의 감성을 변화 시키는 외부 자극으로 물체 추적 영상 처리를 이용하게 된다. 특성 색상의 라벨링이 가능하지만, 영상 처리의 정확성을 위해 특정 색의 물체를 찾고 이에 대한 좌표 변화에 따라서 점차 감정 변화가 이루어지도록 설계했다. 물체를 찾을 경우 이에 대한 트래킹을 위해서 해당 좌표를 행동 스레드(Behavior Thread)(340)로 전달한다. 행동 스레드(Behavior Thread)(340)에서는 앞에서 언급한 바와 같이 적절한 모터 각도와 펄스, 속도를 산출, 이를 서버 모터 제어 즉 서보 1 프로세서에게 시리얼 통신으로 전송하여 서보 모터를 통해 트래킹 작업을 수행하게 된다.
본 고안은 물체를 흔들어 주었을 경우 긍정적인 감정(CONTENT, HAPPY)으로 치우치도록 함으로서 얼굴 표정이 웃도록 하였다. 그리고 흔들어 주던 물체를 멈추고 가만히 있으면 점차적으로 보통의 감정 또는 지루한 감정으로 흐르도록 하였다. 이는 감정 스레드(Emotion Thread)(350)의 감성 보간 기능을 활용한다. 흔들어주는지에 대한 판단은 물체의 좌표 변화를 통해 구분을 하며 이에 대한 반응은 표정과 음성 출력으로 보여준다. (예를 들어 CONTENT 감정으로 완전히 변화되면 기분이 좋다는 음성을 출력한다. 물론, 표정 변화는 감성 보간에 따라서 유연하게 변화되고 있는 상태이다.)
또한 상기 립싱크 스레드(LipSync Thread)(370)는 본 로봇의 입술 동작과 보이스 출력을 담당하는 쓰레드이다. 립싱크(LipSync)가 필요한 시기에 이벤트 시그널을 보내게 되면, 활성화 되어 본 로봇의 입술 부위 서보 모터에 대한 패턴 동작을 수행하고, 해당 음성이나 음악이 담긴 MP3 파일을 재생하도록 한다. 본 로봇의 유연한 표정 동작을 위한 패턴 기반의 모션 제어 구조는 입술 동작에서도 매우 유연하게 활용되어 구현된다. 좀 더 사실감 넘치는 입술 동작을 위해 기본 패턴의 입술 모양은 최대한 모음 발음(예를 들어 ㅏ, ㅑ, ㅓ )시의 입술 모양을 본 떠 구성을 했으며, 입술을 열고 닫는 시간 등을 고려하여 부드럽고 사실감 넘치는 동작을 표현해 내도록 한다.
또한 상기 멀티 미디어 스레드(Multimedia Thread)(380)는 본 로봇의 멀티미디어 기능으로 TV 보기, 홈 캅스 (Home Caps), 포토(photo), 뮤직 비디오(Music Video), 동화 읽어주기 모드 기능 등을 제공한다. 동화 읽어주기와 뮤직 비디오(Music Video) 기능의 경우 현재 출력되는 음성과 함께 기구학적인 로봇의 입출을 립싱크(LipSync) 형태로 동작하도록 한다.
도 9는 상기의 멀티미디어 스레드(Multimedia Thread)(410)를 더욱 구체적으로 나타낸 것이다.
상기 뮤직 비디오(Music Video)와 동화 읽기 모드에서는 소리가 출력되므로 로봇의 감성을 처리 하는 스레드에서는 소리 출력을 금한다.
상기 포토/홈 캅스 모드(Photo /Home caps Mode)는 현재 판매되는 디지털 카메라 기능을 제공한다. 사진 및 음성과 동영상 촬영기능은 JPEG/MPEG 압축(422a)을 하여 메인 프로세서 보드의 Ramdisk 혹은 USB 메모리 스틱(422b) 등과 같은 소형 메모리 장치에 파일형식으로 저장된다.
상기 홈캅스 모드(Home caps Mode)는 MPEG 압축(422a)을 통해 외부의 인터넷 망을 이용하여 영상 및 음성 전송이 가능 하다. 이때 외부의 많은 컴퓨터들이 인터넷상으로 본 시스템에 접속 하게 되면 로봇이 구성하는 임베디드 OS기반에서 많은 부하가 생기므로 본 시스템을 클라이언트로 설정하고 해당 서버 컴퓨터(423)에 해당 데이터를 관리하는 역할을 재공 할 수 있다. 혹은 영상 및 음성 데이터를 요구하는 사용자가 한명이라면 본 시스템은 서버가 되고 사용자 컴퓨터(424)는 클라이언트가 된다.
상기 TV모드는 아날로그 TV Tuner(11)를 통해 TV 신호를 입력 받아 로봇의 LCD(16)와 스피커(17)에 출력한다. 현재 로봇은 감성인식 모드와 멀티미디어 모드(Multimedia Mode)로 구별 되며 메인 프로세서(Main Processor)(15)의 부하를 줄이기 위해 두개의 동작이 동시에 이루어지지 않는다. 멀티미디어 모드(Multimedia Mode)일 경우 행동 스레드(Behavior Thread)(350)와 이미지 스레드(Image Thread)(320)를 죽이고 감정 인식 모드 일 경우에는 행동 스레드(Behavior Thread)(340)와 이미지 스레드(Image Thread)(320)를 되살린다.
상기와 같은 스레드 제어를 위해 외부의 무선 기기 즉 IR적외선 리모콘, 블루투스 모듈, 외부 인터넷 망을 이용 하여 제어를 하게 된다.
이상 상세히 설명한 바와 같이, 본 고안의 로봇 시스템은 임베디드 기반이므로 PC를 탐재 하지 않아도 되므로 크기를 줄일 수 있으며 최적의 보드 설계를 통해 전력 소모를 줄 일 수 있으며, 감성표현, 인식 및 엔터테인먼트 기능을 제공 하므로 써 사용자 간에 침 밀도 및 사용자의 편의성을 도모 할 수 있다. 그리고 무선 인터넷 망 및 무선 기기를 이용하여 로봇을 원격 제어가 가능하며 로봇에서 수집한 영상 및 음성 데이터를 실시간으로 모니터가 가능하다. 앞서 설명한 로봇의 상세한 설명은 실질적으로 한정적이지 않으며, 본 고안은 시스템의 범위를 상세한 설명에 의해서가 아닌, 첨부한 청구 항에 의해 정의 된다. 또한 모든 변형은 청구항의 범위 내에 있으며, 그러한 범위의 등가성 역시 청구 항에 포함 되도록 의도 한다.

Claims (16)

  1. 본 로봇 시스템은 CCD 카메라(10), DMB 수신 모듈(11), 마이크(12)에서 아날로그 신호를 영상보드(13)와 오디오 A/D(18)에서 디지털 변환을 하며, 그 디지털 데이터를 DSP 보드(14) 혹은 Main Processor 보드(15)에서 입력 받아 데이터 처리 후 LCD(16)와 스피커(17)에 출력하고, 또한 Sub 1 Processor(20)와 Sub 2 Processor(22)는 모터(21) 및 센서(23)처리를 하고 이 두 프로세스 제어는 Main Processor 보드(15)에서 적용
  2. 제1 항에서 Main Processor 보드(15)의 CPU는 ARM 칩만을 국한 하는 것은 아니며, SOC 형태로 임베디드 시스템의 적합한 칩이여 하며, LCD, 시리얼, USB, 사운드, PCMCIA, Ethernet 등의 부가적인 기능
  3. 제1 항에서 Sub 1, 2 Processor(20),(22)은 모터(21) 및 센서(23) 처리가 가능해야 하므로 타이머 기능이 강화된 8bit, 16bit MCU 사용을 특징
  4. 제 1항에서 영상보드 시스템은 CCD 카메라(10), DMB 수신 모듈(11)에서 입력 받은 아날로그신호를 A/D(13b)를 이용하여 디지털변환 후 FIFO 메모리(13c)에 저장하고 DSP보드(14), Main Processor보드(15)는 디지털 영상 데이터를 FIFO 메모리(13c)에서 가져오는 것을 특징
  5. 제1 항에서 영상/음성 처리위해서는 고속의 연산처리가 가능한 DSP보드(14)를 적용 하나 영상처리 시 엔터테인먼트 기능 및 그 밖의 효율적인 측면을 따져 Main Process 보드(15)에서 동작하는 Image Process Thread(320)에서도 처리가 가능
  6. 제 1항에서 무선 장치(40)는 핸드폰, PDA, 적외선 리모콘, 블루투스, R/F 모듈 기기 다수를 의미하며 무선 장치(40)는 Main Processor보드(15)와 DMB 수신 모듈(11) 제어가 가능한 것을 특징
  7. 로봇 시스템에 있어서, 영상(10), 음성(12) 및 초음파, 적외선, CDS, 가스, 인체감지, 박수, 터치, 온도 센서(23)를 이용하여 감정을 표현 하여 사람과 로봇이 상호 인터페이스를 이용
  8. 제 7항에서 감정 인식을 위한 표현 방식이 기계적인 구조만을 지칭하는 젓이 아니라 LCD(6) 혹은 LED(9)와 같은 장치를 통해 그래픽과 같은 시각적인 효과로 표현 가능하며 얼굴 근육을 제어하기 위해서 현재 상용으로 판매 하는 RC 서보 모터 이 외에 기타 DC 서보 모터를 이용
  9. 본 고안에서는 청소기능 및 자율 주행이 가능한 로봇 시스템을 구성하여 가정 혹은 건물 안, 전시관에서 로봇의 자유로운 이동이 가능한 것을 특징
  10. 엔터테인먼트 기능에 있어서는 구현 동화 읽기, 뮤직 비디오 상향, 동영상 혹은 사진 촬영, 음성 혹은 영상을 사용자 컴퓨터와 양 방향 통신이 가능을 특징
  11. 제 10항에서 동화 읽기 기능은 기존에 MP3 파일로 음성을 저장 해두고 MP3 재생기는 음성 출력 및 음성인 나오는 시점에 시그널을 발행 하여 상기 로봇의 입술을 움직이는 Lip Sync Thread를 구동하는 것을 특징
  12. 제 10항에서 뮤직 비디오 기능은 압축되어 있는 동영상 파일을 영상 재생기를 통해 재생하고 음악에 따라 로봇의 입을 통해 사람과 같이 노래도 하며 바디를 구동하는 DC 모터 혹은 팔을 제어하는 서보 모터를 통해 춤 동작 구현하는 것을 특징
  13. 제 10항에서 동영상 혹은 사진 촬영은 로봇에 장착된 CCD 카메라 혹은 마이크를 통해 JPEG/MPEG 방식으로 압축을 하며 그 파일을 임베디드 환경의 대용량 메모리 장치 즉 플래시 메모리에 저장하는 것을 특징
  14. 제 10항에서 음성/영상 데이터를 사용자 컴퓨터와 양 방향 통신 기능은 외부의 컴퓨터에서 인터넷상으로 로봇이 현재 보는 화면 혹은 음성을 모니터링 가능 하며 상기 로봇 역시 외부의 사용자 컴퓨터에서 입력 받은 영상/음성 데이터를 자신의 스피커, LCD 화면에 출력이 가능하며, 음성/ 영상 데이터 전송 시 MPEG4와 같은 압축 방식을 이용
  15. 상기 로봇 시스템은 임베디드 시스템으로 구성되며 현재 상용화 되어 있는 Wince, Vxwork, linux등이 적용하는 것을 특징으로 하는 임베디드 시스템기반의 감정표현 휴먼노이드 로봇
  16. 상기 로봇 시스템은 TCP/IP 프로토콜을 통하여 인터넷에서 제어가 가능
KR1020050031624A 2005-04-15 2005-04-15 임베디드 시스템기반의 감정표현 휴먼노이드 로봇 KR20060079832A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050031624A KR20060079832A (ko) 2005-04-15 2005-04-15 임베디드 시스템기반의 감정표현 휴먼노이드 로봇

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050031624A KR20060079832A (ko) 2005-04-15 2005-04-15 임베디드 시스템기반의 감정표현 휴먼노이드 로봇

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR20-2005-0000007U Division KR200386045Y1 (ko) 2005-01-03 2005-01-03 임베디드 시스템기반의 감정표현 휴먼노이드 로봇

Publications (1)

Publication Number Publication Date
KR20060079832A true KR20060079832A (ko) 2006-07-06

Family

ID=37171367

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050031624A KR20060079832A (ko) 2005-04-15 2005-04-15 임베디드 시스템기반의 감정표현 휴먼노이드 로봇

Country Status (1)

Country Link
KR (1) KR20060079832A (ko)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100806126B1 (ko) * 2006-12-27 2008-02-22 주식회사 서보산전 감정표현 휴먼 로봇
KR100813668B1 (ko) * 2006-12-20 2008-03-14 한국생산기술연구원 안드로이드 로봇의 감정표현 방법
KR100853424B1 (ko) * 2006-12-20 2008-08-21 한국생산기술연구원 인간형 로봇의 동작 및 표정 합성 장치 및 방법
KR100893758B1 (ko) * 2007-10-16 2009-04-20 한국전자통신연구원 로봇의 감성 표현 제어 시스템 및 방법
KR100901690B1 (ko) * 2007-11-20 2009-06-08 한국전자통신연구원 표정 인식을 위한 얼굴 영상 입력 장치 및 그의 동작 방법
KR100956134B1 (ko) * 2008-01-21 2010-05-06 주식회사 유진로봇 웹 환경 내에서 이루어지는 완구용 로봇의 활용시스템
KR101281806B1 (ko) * 2012-12-28 2013-07-04 (주) 퓨처로봇 퍼스널 로봇
CN110164439A (zh) * 2019-05-29 2019-08-23 姚英泽 智能服务机器人
CN110977994A (zh) * 2019-11-07 2020-04-10 山东大未来人工智能研究院有限公司 一种具有面部表情沟通功能的智能机器人
KR20200132694A (ko) * 2020-04-27 2020-11-25 군산대학교산학협력단 로봇 및 자율이동체 정밀 모션 제어를 위한 단독형 음성인식 기반 에이전트 모듈의 작동방법
KR20200132693A (ko) * 2020-04-27 2020-11-25 군산대학교산학협력단 로봇 및 자율이동체 정밀 모션 제어를 위한 단독형 음성인식 기반 에이전트 모듈
WO2020097061A3 (en) * 2018-11-05 2021-03-25 DMAI, Inc. Configurable and interactive robotic systems

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100813668B1 (ko) * 2006-12-20 2008-03-14 한국생산기술연구원 안드로이드 로봇의 감정표현 방법
KR100853424B1 (ko) * 2006-12-20 2008-08-21 한국생산기술연구원 인간형 로봇의 동작 및 표정 합성 장치 및 방법
KR100806126B1 (ko) * 2006-12-27 2008-02-22 주식회사 서보산전 감정표현 휴먼 로봇
KR100893758B1 (ko) * 2007-10-16 2009-04-20 한국전자통신연구원 로봇의 감성 표현 제어 시스템 및 방법
KR100901690B1 (ko) * 2007-11-20 2009-06-08 한국전자통신연구원 표정 인식을 위한 얼굴 영상 입력 장치 및 그의 동작 방법
KR100956134B1 (ko) * 2008-01-21 2010-05-06 주식회사 유진로봇 웹 환경 내에서 이루어지는 완구용 로봇의 활용시스템
KR101281806B1 (ko) * 2012-12-28 2013-07-04 (주) 퓨처로봇 퍼스널 로봇
WO2014104531A1 (ko) * 2012-12-28 2014-07-03 (주) 퓨처로봇 퍼스널 로봇
US9873200B2 (en) 2012-12-28 2018-01-23 Future Robot Co., Ltd. Personal robot
WO2020097061A3 (en) * 2018-11-05 2021-03-25 DMAI, Inc. Configurable and interactive robotic systems
CN112823083A (zh) * 2018-11-05 2021-05-18 得麦股份有限公司 可配置和交互式的机器人系统
CN110164439A (zh) * 2019-05-29 2019-08-23 姚英泽 智能服务机器人
CN110977994A (zh) * 2019-11-07 2020-04-10 山东大未来人工智能研究院有限公司 一种具有面部表情沟通功能的智能机器人
KR20200132694A (ko) * 2020-04-27 2020-11-25 군산대학교산학협력단 로봇 및 자율이동체 정밀 모션 제어를 위한 단독형 음성인식 기반 에이전트 모듈의 작동방법
KR20200132693A (ko) * 2020-04-27 2020-11-25 군산대학교산학협력단 로봇 및 자율이동체 정밀 모션 제어를 위한 단독형 음성인식 기반 에이전트 모듈

Similar Documents

Publication Publication Date Title
KR20060079832A (ko) 임베디드 시스템기반의 감정표현 휴먼노이드 로봇
JP7400923B2 (ja) 情報処理装置および情報処理方法
KR102328959B1 (ko) 로봇, 서버 및 인간-기계 상호 작용 방법
KR100864339B1 (ko) 로봇 장치 및 로봇 장치의 행동 제어 방법
US8538750B2 (en) Speech communication system and method, and robot apparatus
Breazeal Designing sociable robots
CN102470273B (zh) 基于玩家表情的视觉表示表情
JP5120745B2 (ja) コミュニケーションロボット
KR100813668B1 (ko) 안드로이드 로봇의 감정표현 방법
WO2002076687A1 (en) Robot device and control method therefor, and storage medium
US20230173683A1 (en) Behavior control device, behavior control method, and program
TWI665658B (zh) 智慧型機器人
WO2018000267A1 (zh) 一种机器人交互内容的生成方法、系统及机器人
WO2019087478A1 (ja) 情報処理装置、情報処理方法、およびプログラム
US20200269421A1 (en) Information processing device, information processing method, and program
Van Breemen et al. A user-interface robot for ambient intelligent environments
JP7363809B2 (ja) 情報処理装置、情報処理方法、およびプログラム
KR200386045Y1 (ko) 임베디드 시스템기반의 감정표현 휴먼노이드 로봇
US20220371178A1 (en) Information processing apparatus, information processing method, and program
Lee et al. Semi-autonomous robot avatar as a medium for family communication and education
KR20230095470A (ko) 애완 로봇
Geiger et al. The robot ALIAS as a gaming platform for elderly persons
Oh et al. Automatic emotional expression of a face robot by using a reactive behavior decision model
Farinelli Design and implementation of a multi-modal framework for scenic actions classification in autonomous actor-robot theatre improvisations
WO2023037608A1 (ja) 自律移動体、情報処理方法、及び、プログラム

Legal Events

Date Code Title Description
A108 Dual application of patent
WITN Withdrawal due to no request for examination