multi-robot missions, process mining
본 논문에 관한 3번째 리뷰입니다. 이만하면 리뷰가 아닌 논문 하나를 완전히 파헤치는 것 같습니다. 그 이유는 제가 이쪽 분야에 몸을 담고 있고, 프로세스 마이닝 방법과 학문을 통해 데이터를 분석하여 논문을 쓰려고 하기 때문입니다.
본 논문은 제가 기술하려는 모든 내용을 포함하고 있습니다. 비록 목적과 목표, 사용하는 로봇과 시나리오는 전혀 다르지만 방법은 동일해서, 논문을 읽는 내내 제가 써야 할 논문을 머릿속으로 써보며 기획하게 됩니다.
3번째 리뷰는 실험 방법(section.5)에 대한 내용을 상세히 보려고 한다.
•가치 있는 데이터를 생성하기 위해 다중 로봇-단일 운영자 시나리오를 재현하는 데 목적을 두고 설계
•미션의 성능, 운영자의 명령, 에이전트의 행동 및 그들 간의 상호 작용을 연구에 적용 가능
•총 36회의 실험이 진행. 전체 미션을 분석하기 위한 20회와 두 가지 명령 방법을 분석하기 위한 16회 실험.
•모든 미션은 동일한 운영자에 의해 수행되었으며 해당 운영자는 미션을 모니터링 하고 로봇에게 간단한 인터페이스를 통해 명령을 내리는 역할 진행.
•그림 3은 다양한 구성 요소를 (시나리오, 로봇, 컴퓨터 및 인터페이스) 사용한 실험 레이아웃
본 논문은 드론의 기능을 하는 로봇과 정찰을 하는 로봇으로 구성되어 화재 모니터링, 칩입자 감시, 화재 진압을 목표로 한다. 로봇의 임무에 관련해서는 5.1에 자세히 기술한다.
•미션의 목적은 화재를 찾아 끄고 침입자를 감지하고 추적하는 것
•이를 위해 실험실에서는 축소된 크기이지만 관련성 있는 시나리오가 재현
•그림 4 이 시나리오에는 세 개의 관심 영역이 있음
•1) 로봇이 미션을 시작하고 완료하는 기지를 나타내는 고정 원
•2) 로봇이 물을 얻을 수 있는 저장소를 나타내는 고정된 정사각형
•3) 미션에 따라 위치가 변경되며 감지 및 소화해야 하는 화재 위치
미션 및 간단한 설명이 포함된 순서대로 정렬된 작업 목록
Begin : 로봇은 높은 고도(1.6m)로 영역을 왕복하며 잠재적인 화재 찾기
Surveillance : 로봇은 낮은 고도(0.8m)로 지점 목록을 따라 날아가 잠재적인 화재 확인
Capture : 로봇은 저장소로 날아가 (0.6m) 내려가 물을 적재
Release : 로봇은 화재 지점으로 날아가 (1.2m) 상승하고 물을 방출
Go to WP : 로봇은 다른 목적을 위해 웨이포인트로 이동
Tracking : 로봇은 시나리오 전체를 낮은 고도(0.8m)로 목표를 추적함
Finish : 로봇이 착륙하고 전원 off
위의 작업 목록은 필자가 전에 분석 시에 사용한 프로세스 마이닝에 들어가는 이벤트, 액티비티에 들어가는 요소라고 볼 수 있다.
•Parrot AR.Drone 2.0 쿼드콥터 2대, KUKA Youbot 로봇 1대가 침입자로 미션 수행.
•이 방식으로 공중 로봇은 미션 오퍼레이터에 의해 제어, 그 정보는 미션 실행 및 분석에 사용.
•반면에 지상 로봇은 미션에 참여하지 않은 다른 사람에 의해 제어되었고, 그 정보는 공중 로봇에 의해 획득.
•Parrot AR.Drone 2.0 쿼드콥터는 실내 비행에 적합한 저렴하고 소형의 드론으로 무게는 420g, 1500mAh 배터리 약 18분의 운행 가능.
•쿼드로터는 로봇 컨트롤러에서 생성된 속도 명령(선형 및 각속도 참조)을 수신.
•이 컨트롤러는 현재 위치 및 목표 포즈를 사용하여 적절한 속도 명령을 생성하는 PID 조절기.
•실험에서는 두 가지 명령 방식을 사용 1) 직접 로봇 컨트롤러로 보내지는 웨이포인트 명령 2) 통신 노드에 의해 웨이포인트로 변환되는 태스크 명령.
•그림 3. 이 노드는 로봇(Ubuntu ROS)과 인터페이스(Windows) 사이의 인터페이스로 작동하며 텔레메트리에서 정보를 추출하고 고수준 명령을 저수준 명령으로 변환.
•반면, KUKA Youbot 로봇은, 무게는 20 kg이며 하중은 20 kg으로 이 로봇에는 채널이 있어서 텔레메트리 및 명령을 교환하기 위해 다른 컴퓨터와 통신할 수 있음. 내장된 PC에서 안내, 탐색 및 제어 알고리즘을 실행 가능.
•지상 로봇은 로봇 팀의 일부가 아님. 미션에 참여하지 않은 사람이 조이패드로 원격으로 제어. 이 지상 로봇의 정보는 공중 로봇에 의해 획득되어야 하며, 이는 미션 계획, 모니터링 및 분석에 대한 도전 과제임
•Optitrack 모션 캡처 시스템이 사용되어 로봇의 정확한 위치 및 방향을 수집 가능. 이 시스템은 방에 위치한 카메라 및 일련의 마커가 부착된 로봇의 특정 패턴을 사용하여 6 자유도(DoF) 공간에서 로봇을 캡처하고 추적
•미션의 정보를 수신하고 로봇에 명령을 보내기 위한 직관적인 운영자 인터페이스 개발
•이 인터페이스는 UAV(무인항공기)의 정보뿐만 아니라
그들의 카메라 이미지도 실시간으로 표시 가능
•그림 5 미션 및 로봇 그룹의 정보를 제공하는 주요 윈도우 창과
운영자가 다양한 유형의 명령을 생성할 수 있는 명령 창임
•이 인터페이스는 미션 중에 모든 정보와 명령을 기록할 수 있음
•로봇이 있는 시나리오의 지도로 사용자가 가장 흥미로운 것을 선택할 수 있으며
선택된 로봇의 정보(방향, 속도, 가속도, 배터리 등)와 페이로드(카메라 이미지)를
보여주는 패널
•명령 창은 두 가지 명령 방법 허용
웨이포인트 명령 방식에서는 운영자가 UAV가 하나씩 도달해야 하는 웨이포인트를 보내고,
태스크 명령 방식에서는 운영자가 작업(예: 감시, 정찰, 캡처 및 해제)을 보내고 시스템이 이러한 작업을 웨이포인트로 분할하여 하나씩 보냄.
•로봇, 모션 캡처 시스템 및 인터페이스는 Robot Operating System (ROS)를 통해 통합.
•구체적으로 다음 네 가지 노드를 갖춘 ROS 아키텍처가 개발.
•Information node : 로봇 및 모션 캡처 시스템으로부터의 메시지를 ROS 토픽을 통해 받아와 이를 TCP 소켓을 통해 인터페이스로 전송
•Commanding node : 인터페이스로부터 TCP 소켓을 통해 명령을 받아와 ROS 토픽을 통해 이를 로봇에게 전송
•Task node :고수준 명령(작업)을 받아와 중간 수준 명령(웨이포인트)으로 분할하고 컨트롤러 노드에 전송. 이 노드는 미션을 작업 명령을 통해 제어할 때 작동
•Controller node : 로봇의 현재 위치 및 목표 위치를 받아와 PID 컨트롤러를 통해 속도 명령을 생성하고 로봇에게 전송
이쯤 되니 논문의 내용을 거의 70~80% 이상 이해가 되고, 로봇의 목적 및 그 방법들에 대해 완벽하게 숙지가 되었다. 그래서 자연스럽게 그 결과가 어떻게 될지 궁금하다. 결과에 대한 내용은 다음 글 #4에서 정리하고자 한다.