About me
home
Portfolio
home

6조 09/13 발표

발표자
날짜
2023/09/13

프로젝트명 : 안내봇 이루멍

교내에서 사람들에게 서울 시립대학교를 소개하는 사족보행 로봇 이루멍
Unitree사의 GO1 Edu

주요 기능

1.
학교 투어 서비스
학교 탐방을 온 고등학생 등 처음 학교를 방문한 사람들을 대상으로 학교 투어를 제공한다!
이루멍이 앞장서면 사람들이 따라오면서 학교와 지나가고 있는(도착한) 건물에 대한 설명을 듣는다
투어가 끝나면 질의응답 서비스를 이용할 수 있다
2.
학교 길 안내 서비스
학교의 방문객이나 길을 잘 못찾는 학생들을 대상으로 길안내 서비스를 제공한다!
이루멍이 앞장서면 사람들이 따라온다
학교에 대한 설명은 없지만 길 안내 도중과 길 안내가 끝난 뒤 질의응답 서비스를 이용할 수 있다
3.
질의응답 서비스
사람들이 질문한것에 대해 이루멍이 대답한다 (ex 시립대에는 재학생이 몇명정도야?)
“이봐 이루멍” 등의 호출 명령어를 말한 뒤의 질문에만 반응한다.
딥러닝 모델을 사용하기 때문에 정해지지 않은 질문에도 대답할 수 있다.

주요 기능 동작 시나리오

학교 투어 서비스
학교 길 안내 서비스

특징

1.
기존 제품과의 차별성1-대화
현재 제공되는 다양한 안내로봇이 있지만 실내에서만 작동가능하거나, 정해진 질문에만 답을 할 수 있는것이 대부분
인천공항의 에어스타
2018년 7월부터 14대가 운영중
편의시설, 입국시설, 화장실, 정류장 등 공항 내의 시설을 직접 해당 위치까지 안내
키오스크와 음성인식으로 사람들과 소통
하지만 에어스타는 안내원보다는 “움직이는 키오스크”에 가깝다는 비평을 받기도 함 그 이유는 무엇이든 물을 수 있는 사람 안내원과 달리 질문할 수 있는 선택지를 늘어놓고 고르게 하기 때문이다
반면 이루멍은 정해지지 않은 질문에 대해서도 대답을 할 수 있고, 시립대학교 관련 웹페이지에서 업데이트되는 소식을 스스로 학습할 수 있기 때문에 사람과 보다 자유롭게 소통할 수 있다.
2.
기존 제품과의 차별성2-활동 지역
안내 로봇은 보통 바퀴형 로봇으로 제작되어 바닥면이 평평하고 고른 실내에서 주로 사용이 가능하다.
반면 이루멍은 계단, 비탈길, 단차가 있는 길 등 사람이 지나다닐 수 있는 다양한 지형을 이동 가능하기 때문에 실외에서 사람과 같이 이동하며 안내하는 역할에 적합하다
Go1 계단 오르는 영상

활용할 기술들

1.
자율주행 기술 (Autonomous Navigation)
ROS navigation stack

Global planner

현재위치부터 도착위치까지 전체 경로를 생성하는 역할
학교의 주요 건물과 갈림길등을 주요 노드(node)으로 하여 그래프(graph) 제작 간선(edge)는 실제 그 위치를 갈 수 있는 길들로 이루어지게 됨 edge의 cost는 노드끼리 이동할때 소요되는 시간 또는 거리가 됨
각 edge들마다 로봇이 이동할 수 있는 gps waypoint들이 일대일 매치되어있음 waypoint들은 일정 간격으로 저장되어 있음 (ex 10cm) waypoint들은 gps를 들고 학교를 돌아다니며 수집할 예정
도착노드 : 목표하는 학교의 주요건물과 가장 가까운노드로 설정(ex 과학기술관) 시작노드 : 현재 위치에서 가장 가까운 edge탐색 → 현재 위치에서 그 edge까지 도달하는 임시 노드 생성 → 그 임시 노드가 시작 노드가 됨
이후 시작노드에서 도착노드까지 dijkstra 알고리즘을 사용하여 경로 탐색
경로로 선택된 edge들에 따라 gps waypoint들을 순서대로 이어 붙여서 global path생성

Local planner

global path를 추종 + 실시간으로 센서로 인식한 장애물 회피
a.
보통 바퀴형 로봇에 많이 사용하는 DWA(dynamic window approach)나 TEB(Time Elastic Band) 을 사용
b.
사족 보행용 local planner등을 사용 (아직 어떤 알고리즘인지 모름)
그리고 장애물 회피 기능 이외에도 계단임을 인식하여 로봇의 모드를 바꾸는 기능이 필요함
stair climbing mode (계단을 오르는 모드)

Sensor Sources

로봇 위에 설치할 수 있는 2D라이다와 아래쪽을 보는 depth camera를 활용하여 local planner가 이를 회피할 수 있도록 함

tf / odometry

RTK-GPS를 사용하여 로봇이 스스로 어디 있는 지 파악하도록 한다.
2.
블루투스 거리 측정 → 거리를 유지하며 주행
블루투스 모듈간 통신 세기를 이용하여 거리를 측정하여 로봇이 너무 빨리 주행하여 사람과 멀리 떨어졌을 때는 잠시 멈추어서 사람이 따라오기를 기다린다.
3.
딥러닝 챗봇
a.
안내 메세지 전달 (정적)
인사 및 캠퍼스 소개에서 처럼 일방적인 메세지 전달 단계에서는 미리 저장한 mp3 파일을 재생
로봇의 위치를 파악해 해당 위치에 따라 재생할 mp3 파일을 callback 함수 호출하는 방식
b. 상호작용 대화 (동적)
사용자의 질문에 답하기 위해 우선 음성 인식(Speech-to-Text, STT) 모듈이 사용자의 목소리를 듣고 텍스트로 변환한다. 이 텍스트는 언어 모델(Language Model, LLM)의 입력이 되며 언어 모델은 적절한 응답을 생성한다. 생성된 응답은 텍스트를 음성으로 변환하는 텍스트-투-스피치(Text-to-Speech, TTS) 모듈로 전달되어 스피커를 통해 출력된다.
호출명령어(Wake-up Word)
“시리야”, ”하이 빅스비” 처럼 호출명령어(Wake-up Word)를 설정
호출 명령어 트리거 이후 마이크로 음성 녹음
딥러닝 모델 구현
질문에 대한 답변을 생성하는 모델 구현
직접 구현보다는 LLM 모델을 fine-tuning하여 사용
Langchain 라이브러리를 활용하여 시립대 관련 문서를 추가 학습

예상 하드웨어 및 센서 구성

사람은 블루투스 모듈과 무선 마이크를 결합한 장치를 들고 로봇을 따라간다.