refigo / DAP-AD-Robot

회피경로 판단 자율주행 로봇 소프트웨어 (Determining Avoidance path Autonomous Driving Robot Software)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DAP-AD Robot (Determining Avoidance Path Autonomous Driving Robot)

회피경로 판단 자율주행 로봇 소프트웨어 (Determining Avoidance Path Autonomous Driving Robot Software)

지정된 미션을 완수하는 자율주행 로봇 소프트웨어. 주행 중에 방해물을 인식하면 회피 경로를 판단해서 이동한다.

서울로봇아카데미에서 진행한 자율주행 경진대회(핑크랩 주관)에서 1등을 수상하였다.

(발표 당시 사진)

(민형기 박사님과 한컷 ^^)

(상장과 고퀄리티의 상품)

소프트웨어 구조

  • Robotics SW in Laptop
  • Pinklab_minibot_robot
  • Same ROS_DOMAIN_ID

주요 기능

  • 자율 주행 (Autonomous Driving)
  • 객체 검출을 통한 물체 인식 (Object Detection)
  • 회피 경로 판단 (Avoidance path Determination)
  • 지정된 미션 달성 (Mission Accomplishment)

미션 설명

  1. A, B, C, D 지역으로 구분되는 맵 만들기
  2. A 지점에서 출발한 로봇이 B 지점에 도착하면 오른쪽을 보게 만들기
    • 오른쪽의 기준은 로봇이 주행하던 방향 기준으로 대략 90도
  3. 2번 완료 후, C 지점으로 이동시키고 도착 후에는 한 바퀴 회전하기
  4. 3번 완료 후, D 지점으로 이동하여 미션 완료
  • 중간에 장애물이 발생하는 상황에 적절하게 대처하며 진행
    • ex. 장애물 인식 시 잠시 멈추었다 회피하여 가기 등

맵과 의사코드(Pseudo Code)

작동 방법

  • 라즈베리파이에서 로봇(미니봇) 기동
ros2 launch minibot_bringup bringup_robot.launch.py
  • Laptop에서 Navigation2 실행
ros2 launch minibot_navigation2 bringup_launch.py map:=`ros2 pkg prefix minibot_navigation2`/share/minibot_navigation2/maps/<map-name>.yaml
(venv) python3 DAP_AD_Robot.py

사용 기술

  • ROS2
  • Navigation2
  • OpenCV
  • YOLO
  • Python

작동 영상 & 발표 자료

작동 영상

IMAGE ALT TEXT HERE

IMAGE ALT TEXT HERE

발표 자료

Contact

Mijong Go - dev.mijonggo@gmail.com

About

회피경로 판단 자율주행 로봇 소프트웨어 (Determining Avoidance path Autonomous Driving Robot Software)


Languages

Language:Jupyter Notebook 69.2%Language:Makefile 10.7%Language:C 6.3%Language:CMake 5.2%Language:C++ 4.3%Language:Python 3.2%Language:Shell 0.9%Language:PowerShell 0.2%Language:TypeScript 0.0%