본문 바로가기

[패스트캠퍼스 11월 환급 챌린지]

패스트캠퍼스 환급 챌린지 21일차 : Nav2 Lifecycle Manager

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다. ]

https://fastcampus.info/4oKQD6b

 

커리어 성장을 위한 최고의 실무교육 아카데미 | 패스트캠퍼스

성인 교육 서비스 기업, 패스트캠퍼스는 개인과 조직의 실질적인 '업(業)'의 성장을 돕고자 모든 종류의 교육 콘텐츠 서비스를 제공하는 대한민국 No. 1 교육 서비스 회사입니다.

fastcampus.co.kr

 

 

 

https://fastcampus.co.kr/data_online_selfdriving

 

자율주행 로봇을 위한 ROS 2 & SLAM & Nav2 한번에 끝내기 | 패스트캠퍼스

로봇 입문 시작점 ROS 2부터 자율주행 로봇을 위한 SLAM & Navigation2 와 시뮬레이터를 활용한 자율주행 로봇 실습까지 한번에

fastcampus.co.kr

본 글은 위 강의를 참고하여 작성되었습니다

 

 

[강의시작 | 강의종료]

 

 

 

[완강 인증]

 

 

 

[학습 내용]

 

 

 

 

[강의 후기]

Lifecycle_manager에 대해 학습했습니다.

 

Lifecycle_manager

: 노드의 상태를 체계적으로 관리하기 위한 시스템입니다. 4가지 상태를 조절합니다.

  • unconfigured : 초기화 되지 않은 상태
  • inactive : 활성화 되지 않은 상태
  • active : 활성화 된 상태
  • finalized : 제거가 될 준비가 된 상태

nav2_lifecycle_manager 패키지를 사용합니다.

 

-Lifecycle_manager를 사용하는 이유-

  • 노드 관리 및 조정
  • 상태 기반 관리
  • 자동 복구 및 오류 처리
  • 효율적인 자원 사용
  • 시스템의 투명성

-생각 해볼 점-

이번 강의에서는 Lifecycle_manager에 대해 학습했습니다. 로봇에 연결되어있는 많은 노드들을 일일이 신경을 쓰긴 힘듭니다. 따라서 노드들의 상태를 체계적으로 관리하기 위해 Lifecycle_manager를 사용합니다. Lifecycle_manager는 unconfigured, inactive, active, finalized 총 4가지의 상태를 조절하여 관리합니다. Lifecycle_manager를 사용하면 노드 관리 및 조정이 수월해집니다. 켜짐/꺼짐 상태를 관리하는 ROS 1 스타일 노드와는 다르게 여러 상태를 사용하기 때문에 보다 더 정확한 관리 및 통제가 가능합니다. 자동 복구 및 오류 처리를 지원하여 문제가 생겨도 손쉽게 복구 할 수 있습니다. 다수의 노드를 다루며 모든 노드를 한번에 관리해 자원을 효율적으로 사용할 수 있습니다. 시스템이 어떤 일을 하는지 모니터링이 가능해 다루기가 편합니다. 이전에 배웠던 내용 중 생길 수 있는 문제를 lifecycle_manager를 통해 해결할 수 있습니다. 로봇이 부팅되자마자 센서들이 동시에 켜지며 순서가 꼬이고 이로인해 SLAM/Localization이 빈 데이터로 시작하거나 오류가 발생 할 수 있습니다. Lifecycle_manager는 노드 간 실행 순서를 관리할 수 있어 순서 충돌 문제를 해결할 수 있습니다. 또 로봇이 갑자기 정지하는 문제가 생길 수 있습니다. 이때 현재 로봇의 상태를 업데이트 하고 복구해야합니다. 사용자가 직접 문제를 찾고 업데이트한다면 시간도 오래 걸리고 번거로운 작업이 될 것입니다. Lifecycle_manager는 현재 상태를 업데이트하고 문제 있는 노드를 파악할 수 있어 디버깅 시간을 줄일 수 있습니다. 코드를 잘 짜는 것 만큼 문제를 잘 고치는 것도 중요합니다. Lifecycle_manager는 이 두 부분 모두에 큰 도움이 될 수 있으므로 앞으로 진행하는 프로젝트들에서 유용하게 사용하면 되겠습니다.