mqtt:// 는 기본적으로 포트 1883을 사용하고, mqtts:// 는 포트 8883을 사용한다
ㅇMQTT(Message Queuing Telemetry Transport) 프로토콜: 경량 메시지 프로토콜로, 주로 사물인터넷(IoT) 환경에서 장치 간 데이터를 전송하는 데 사용된다. MQTT는 저전력, 저비용의 제한된 대역폭 환경에서 신뢰할 수 있는 통신을 제공하기 위해 설계되었다.(L5: application layer 프로토콜)
ㅇGCS(Ground Control Station): 지상 관제소
ㅇMC(Mission Computer): 드론의 핵심 컴퓨터 시스템으로 드론 내부에 내장
ㅇFC(Flight Controller): 드론의 두뇌
ㅇPixhawk: 오픈소스 비행 컨트롤러(FC)인 하드웨어
ㅇoneM2M: 다양한 IoT 디바이스와 애플리케이션 간의 상호 운용성을 지원하기 위한 국제 표준
ㅇmobius broker: oneM2M 표준 기반 오픈소스 loT 서버 플랫폼(중앙 통신 관리 시스템)
ㅇLRF(Laser Range Finder): 레이저 거리 측정기
물체에 반사된 빔이 되돌아오는 시간을 측정하고, 이를 바탕으로 그 물체까지의 거리를 계산하는 장치
ㅇMAVLink(Micro Air Vehicle Link): 드론 및 무인 항공기(UAV)와 지상 통제 시스템(gcs) 간의 통신을 위한 경량 메시지 프로토콜 (L4: transport layer 프로토콜)
ㅇSITL(Software In The Loop): 실제 하드웨어 없이 소프트웨어를 시뮬레이션하여 테스트하는 방법
- SITL의 비행 제어 소프트웨어: PX4, ArduPilot
[MAVLink와 SITL의 통합] SITL은 MAVLink 프로토콜을 사용하여 시뮬레이션된 드론과 통신할 수 있다. 이를 통해 실제 드론 환경과 유사한 조건에서 소프트웨어를 검증하는 게 가능하다.
[드론 시뮬레이터 툴]
1. 에어심 - 윈도우, 리눅스 환경 (Unreal Engine 기반)
easy
gRPC로 파이썬, C++, 자바 등 다양한 언어 사용 가능
기본 시뮬레이션은 언리얼엔진에 대한 깊은 이해가 필요하지 않다
[언리얼엔진에 대한 이해도가 높을수록 좋은 경우]
- 사용자 정의 맵 생성: 자신만의 환경을 만들기 위해 언리얼 엔진 에디터를 사용하여 지형, 건물, 오브젝트 등을 배치하고 편집
- 플러그인 및 기능 추가: 특정 센서나 기능을 추가하기 위해 언리얼 엔진의 블루프린트(Blueprint)나 C++을 사용하여 플러그인을 개발
- 시뮬레이션 최적화: 시뮬레이션의 성능을 향상시키거나, 특정 물리적 특성을 조정하기 위해 언리얼 엔진의 설정을 변경
2. 가제보 - 우분투, 리눅스 환경
hard (ROS 활용)
+
**Collision Course**(충돌 경로)
**Collision Avoidance**(충돌 회피)
**Collision Avoidance Path**(충돌 회피 경로)
드론에서는 특히 자율 비행 시스템이나 센서 기술이 발달하면서, 이러한 충돌 회피 기동이 중요한 요소로 작용하고 있다. LIDAR, 카메라, 초음파 센서 등을 이용해 주변 환경을 감지하고 충돌을 피하는 시스템이 주로 사용된다.
'etc > 드론 시스템' 카테고리의 다른 글
[MAVLink 메시지 → JSON] 파싱 후 Flask 서버 전송 코드 (3) | 2024.10.20 |
---|---|
행정안전부의 SW 개발보안 가이드 (1) | 2024.10.05 |
드론 서버 개발 관련 유용한 링크들 (0) | 2024.10.04 |