[논문 리뷰] Towards a distributed and real-time framework for robots: Evaluation of ROS 2.0 communications for real-time robotic applications
이 논문은 다양한 네트워크 및 계산 부하 조건 하에서 ROS 2.0의 실시간 성능을 평가하며, Linux PREEMPT-RT 커널과 DDS 기반 통신을 사용한다. 적절한 설정—특히 ksoftirqd의 우선순위를 높이고 RT 설정을 적용할 경우—ROS 2.0은 중간 수준의 부하에서 경계가 명확한 종단 간 지연 시간을 달성하고 미리 정한 마감 시간을 위반하지 않지만, 높은 페이로드 또는 지속적인 트래픽은 심각한 지연 상승과 메시지 손실을 유발한다.
In this work we present an experimental setup to show the suitability of ROS 2.0 for real-time robotic applications. We disclose an evaluation of ROS 2.0 communications in a robotic inter-component (hardware) communication case on top of Linux. We benchmark and study the worst case latencies and missed deadlines to characterize ROS 2.0 communications for real-time applications. We demonstrate experimentally how computation and network congestion impacts the communication latencies and ultimately, propose a setup that, under certain conditions, mitigates these delays and obtains bounded traffic.
연구 동기 및 목표
- 분산 임베디드 시스템에서 실시간 로봇 응용 프로그램에 적합한 ROS 2.0의 적합성을 평가하기 위해.
- 다양한 네트워크 및 계산 부하 조건 하에서 최악의 종단 간 통신 지연 시간과 마감 시간 위반 여부를 평가하기 위해.
- 네트워크 혼잡도, 페이로드 크기, 시스템 부하가 ROS 2.0 통신의 결정론성에 미치는 영향을 분석하기 위해.
- 실시간 성능 향상과 지연 시간의 변동성 감소에 기여하는 설정 파rameter를 규명하기 위해.
- 임베디드 로봇 플랫폼에서 결정론적 ROS 2.0 통신의 실용적 한계를 설정하기 위해.
제안 방법
- 실시간 스케줄링을 위해 PREEMPT-RT 커널을 사용하여 두 개의 임베디드 리눅스 시스템에 ROS 2.0 노드를 구축하였다.
- 노드 간 통신을 위해 UDP 기반 RTPS를 사용하는 데이터 분포 서비스(DDS)를 사용하였으며, 구성 가능한 품질의 서비스(QoS) 설정을 적용하였다.
- 네트워크 트래픽(1 Mbps에서 80 Mbps)과 페이로드 크기(32 KB, 128 KB)를 다양하게 설정한 여러 테스트 시나리오에서 종단 간 지연 시간을 측정하였다.
- iperf3를 사용하여 동시 트래픽으로 시스템을 과부하 상태로 만들고, 지연 시간, 마감 시간 위반, 메시지 손실을 모니터링하였다.
- 소프트 인터럽트 처리 지연을 줄이고 인터럽트 처리의 결정론성을 향상시키기 위해 ksoftirqd 스레드에 실시간 우선순위를 적용하였다.
- 지속적인 부하 조건 하에서의 안정성과 장기적인 지연 시간 행동을 평가하기 위해 최대 12시간 동안의 장기 테스트를 수행하였다.
실험 결과
연구 질문
- RQ1일반적이고 과부하 상태의 네트워크 조건 하에서 ROS 2.0 통신의 최악의 종단 간 지연 시간은 얼마인가?
- RQ2다양한 QoS 설정(예: RT 설정)이 ROS 2.0의 지연 시간과 마감 시간 위반에 어떤 영향을 미치는가?
- RQ3페이로드 크기나 네트워크 트래픽을 증가시킬 경우 ROS 2.0의 통신 결정론성에 어떤 영향을 미치는가?
- RQ4ksoftirqd 스레드의 우선순위를 높이면 지연 상승을 크게 줄이고 실시간 성능을 향상시킬 수 있는가?
- RQ5지속적인 부하 조건 하에서 임베디드 로봇 플랫폼에서 ROS 2.0의 경계가 명확한 지연 시간의 실용적 한계는 무엇인가?
주요 결과
- RT QoS 설정과 ksoftirqd 우선순위 설정을 통해 ROS 2.0은 80 Mbps 동시 트래픽 하에서도 최대 종단 간 지연 시간 3,509 µs를 기록했으며, 마감 시간 위반은 없었다.
- ksoftirqd 우선순위 설정 없이 80 Mbps 부하 조건에서 최대 지연 시간은 59,762 µs에 달했고, 총 36,315개 메시지 중 240개가 마감 시간을 위반하였다.
- 12시간 동안 지속적인 40 Mbps 트래픽 하에서 최상의 설정(DDS 1)은 최대 지연 시간 4,942 µs를 기록했고, 메시지 손실은 3건 뿐이었다.
- 80 Mbps 부하 조건에서 128 KB 페이로드를 사용할 경우 최대 지연 시간은 176,074 µs에 달했고, 1,991개의 메시지가 마감 시간을 위반하여 대량의 성능 저하가 발생하였다.
- ksoftirqd 우선순위 설정은 최악의 지연 시간을 기본 설정 대비 50% 이상 감소시켰으며, 특히 고부하 조건에서 두드러진 성능 향상을 보였다. 최상의 시나리오에서는 마감 시간 위반을 완전히 제거하였다.
- 32 KB 페이로드와 RT 설정을 사용하면서 ksoftirqd 우선순위 설정을 적용한 경우, 80 Mbps 지속적 트래픽 조건에서도 마감 시간 위반 없이 최소한의 메시지 손실을 기록하였다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.