-
지능형 드론 개발 프로젝트를 전체진행 과정 요약
2023. 4. 17.
이 모든 진행과정은 요약된 과정이다. 상세내용은 다음장부터 기록한다.
지금부터 지능형 드론 개발 프로젝트 시작합니다.
1. 라즈베리파이 4B에 우분투 설치
라즈베리파이 4B에 마이크로SD 카드를 삽입하고, SD 카드 리더기를 컴퓨터에 연결한다.
Raspberry Pi Imager를 다운로드하고 실행한 다음,"Raspberry Pi OS (other)" > "Ubuntu" > "Ubuntu 20.04 LTS (64-bit)"을 선택하고 설치한다.
이로써 마이크로SD 카드에 우분투가 설치가 완료된다.
2. 라즈베리파이 4B에 ROS 설치라즈베리파이에 우분투를 설치한 후 터미널을 열고 다음 명령어를 실행하여 ROS Noetic을 설치한다.
sudo apt update sudo apt upgrade sudo apt install ros-noetic-desktop-full
ROS 환경 변수를 설정하고 자동으로 실행되도록 설정한다.
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc source ~/.bashrc
3. Gazebo 및 MAVROS 패키지 설치
Gazebo는 ROS Noetic 설치 시 기본적으로 포함되어 있다. 따라서 추가적인 설치 과정은 필요하지 않다.
MAVROS 패키지를 설치하려면 다음 명령어를 실행한다.sudo apt install ros-noetic-mavros ros-noetic-mavros-extras
4. 드론 하드웨어 구성
Navio2, 라즈베리파이, 초음파 센서, 라즈베리카메라2 등 구성품을 드론 프레임에 설치한다.
드론 프레임에 모터와 ESC를 설치한 다음, 배터리를 연결한다.
GPS 모듈과 조종기 수신기를 연결한다.5. 드론 소프트웨어 개발
라즈베리카메라2를 사용하여 사물 인식 알고리즘을 개발한다.
TensorFlow, PyTorch 등 딥러닝 프레임워크를 활용 할 수 있다.
ROS에서는 cv_bridge 패키지를 사용하여 OpenCV와 연동할 수 있다.
초음파 센서를 사용하여 장애물 감지 및 회피 알고리즘을 개발한다. 이를 위해 ROS에서는 sensor_msgs/Range 메시지를 사용하며, rospy를 사용하여 적절한 처리를 수행하고 드론 명령을 발행한다.
드론 제어를 위해 MAVROS를 사용하고, Gazebo를 통해 시뮬레이션을 수행한다.이를 위해 드론 모델과 환경을 설정하고, 시뮬레이션에서 테스트를 수행한 후 실제 드론에서 실행해본다.
6. Gazebo 시뮬레이션 환경 구성Gazebo에서 사용할 드론 모델을 생성하거나, 이미 있는 모델을 사용해본다.
이를 위해 SDF (Simulation Description Format) 또는 URDF (Unified Robot Description Format) 파일을 작성한다.
Gazebo 월드 파일을 생성하여 드론이 시뮬레이션에서 움직일 수 있는 환경을 구성해본다.월드 파일은 환경 구조물, 물리 속성, 조명 등을 포함한다.
생성한 드론 모델과 월드 파일을 사용하여 ROS 런치 파일을 작성하고, 시뮬레이션을 실행해본다.이 과정에서 드론 제어를 위한 MAVROS 노드를 포함하고, 사물 인식 및 장애물 회피 알고리즘을 테스트 할 수 있다.
7. 실제 드론에서 테스트 및 튜닝Gazebo 시뮬레이션에서 확인한 알고리즘을 실제 드론에서 테스트 해본다.
이때 시뮬레이션과 실제 환경의 차이점을 고려하여 알고리즘을 튜닝해야 할 수도 있다.
테스트를 통해 문제점을 발견하면 수정하고, 필요한 경우 Gazebo 시뮬레이션에서 다시 테스트를 수행한 후실제 드론에서 테스트를 반복해본다. 드론이 원하는대로 작동할 때까지 테스트와 튜닝 과정을 반복한다.
이때, 안전을 위해 테스트를 수행할 때 충분한 공간과 드론 비행에 대한 이해가 필요하다.
드론의 성능과 안정성을 높이기 위해 필요한 경우 PID 제어 알고리즘을 적용하고 튜닝을 해본다.이 과정에서는 각 제어 루프에 대한 적절한 P, I, D 계수를 찾아서 드론의 응답을 최적화 한다.
드론의 전원을 관리하고, 배터리 수명을 연장하며, 비행 시간을 최적화하는 방법을 찾아 적용해본다.8. 최종 완성 및 검증
모든 테스트와 튜닝이 완료되면, 완성된 지능형 드론을 테스트하여 기능과 성능을 검증해본다.
문서화를 통해 프로젝트를 정리하고, 추후 개선사항이나 개발 과정을 기록한다.
마지막으로 피드백을 받아 더 나은 버전의 지능형 드론을 개발하도록 계획을 세운다.프로젝트에 성공하길 바란다! 쉬운 과정이 아닐것이라 판단된다.
그리고, 프로젝트의 진행은 계속 된다.
오늘은 여기까지...
반응형'프로젝트정보' 카테고리의 다른 글
ROS 패키지 MAVROS기반 사물인식과 장애물 자동 회피가 가능한 지능형 드론 제작 프로젝트 (0) 2023.04.16