अवधारणा और विकासमानवरहित खेल · #bezpiLOTa · KAIROS DRONE AGENTदस्तावेज़
#bezpiLOTa→शुरुआत करें→यह कैसे काम करता है
शुरुआत / architecture

Flight controller real-time flight loop चलाता है। Companion SBC वीडियो, routing, API और बाहरी communication संभालता है। Mission Control direct USB, LAN path या remote relay चुनता है, उनकी जिम्मेदारियाँ नहीं मिलाता।

अवधारणा

End-to-end flow लक्षित architecture है; KairOS measurements तक latency और rates design targets हैं।

KairOS repository ↗
03Connection modes
1 HzCompanion heartbeat
2 Hzलक्षित cloud telemetry
MAVLINKमुख्य protocol
01
व्यापक दृष्टि

Onboard दो computers — अलग जिम्मेदारियाँ

Flight controller motors, stabilization, GPS और sensors संभालता है। Raspberry Pi, Radxa, Jetson या अन्य Linux SBC companion computer KairOS Drone Agent चलाता है और FC की जगह नहीं लेता: यह वीडियो, telemetry relay, cloud connectivity, radio, REST API और extensions जोड़ता है।

Ground पर Mission Control ब्राउज़र में चलता है। वह WebSerial से सीधे FC, LAN से Drone Agent या MQTT/Convex और WebRTC signaling से remote relay तक पहुँच सकता है। WFB-ng उपयोग में Ground Agent जोड़ा जाता है और radio reception को समझने योग्य local web system में बदलता है।

02
Data flow

Telemetry, command और वीडियो का पूरा चक्र

01

FC → Agent

MAVLink UART सामान्यतः 115200–921600 baud पर चलता है; agent heartbeat की प्रतीक्षा करके firmware पहचानता है।

02

Agent → स्थानीय consumers

Router raw MAVLink को IPC socket, WebSocket, cloud service और health state में वितरित करता है।

03

Agent → cloud परत

लक्षित प्रणाली लगभग 2 Hz पर telemetry और HTTP/MQTT paths से status प्रकाशित करती है।

04

Camera → ब्राउज़र

V4L2 capture H.264 encode, MediaMTX/RTSP और चुने WHEP, WebRTC या WFB-ng transport से गुजरता है।

05

GCS → FC

Arm, mode, mission और अन्य commands उसी चुने path से लौटती हैं; FC pre-arm rules लागू करता है।

06

ACK → UI

Command acknowledgement और नया heartbeat/state लौटने पर UI status बदलता है।

03
Connection के तीन modes

Direct USB, local network और remote P2P

ModeTransportकब उपयोग करेंलक्षित मान
सीधा USBWebSerial → FC, agent आवश्यक नहींBench, सेटअप, calibration, firmwareDesign target <10 ms
सीधा LANREST :8080, MAVLink WS :8765, WHEP :8889Indoor, कम दूरी, development, field LANलक्ष्य: वीडियो 50–150 ms; telemetry <100 ms
दूरस्थ P2P4G/Internet, MQTT SDP signaling, WebRTC, Convexदूरस्थ निगरानी और दूसरा pathलक्ष्य: वीडियो 100–300 ms; telemetry 2–5 Hz

Auto transport पहले लगभग चार seconds LAN path खोजेगा, फिर लगभग चौदह seconds की window में P2P signaling पर जाएगा। ये design intervals हैं: network पर निर्भर हैं और KairOS SLA नहीं हैं।

05
वीडियो pipeline

V4L2 capture से native H.264 playback तक

01

कैप्चर

USB UVC या MIPI CSI V4L2 से खुलता है; launch से पहले उपलब्ध format और resolution जाँचे जाते हैं।

02

एन्कोड

ffmpeg H.264 high profile, level 4.1, yuv420p और low-latency flags उपयोग करता है; उपलब्ध होने पर hardware encoder चुना जाता है।

03

प्रकाशित करें

Encoded stream MediaMTX/RTSP में प्रकाशित होती है और आगे के transports का source बनती है।

04

LAN

WHEP सीधे local browser को WebRTC देता है।

05

दूरस्थ

MQTT SDP signaling ले जाता है, जिसके बाद media P2P WebRTC या आवश्यकता होने पर relay से जाता है।

06

रेडियो

wfb_tx WFB-ng से H.264 भेजता है; Ground Agent प्राप्त करके locally फिर प्रकाशित करता है।

nobuffer, low_delay और छोटे probe size queues घटाते हैं, लेकिन वास्तविक latency capture, encoder, bitrate, FEC, radio, network और browser decode से तय होती है। KairOS specific profiles के measurements प्रकाशित करेगा, एक universal संख्या नहीं।

H.264 stream वाला video cockpit: heading, speed, altitude, GPS, battery, mini-map, recording indicator और flight commands।
INTERFACE / दृश्य उदाहरणOperator interface पर वीडियो stream

Camera image के साथ HUD, mini-map, flight mode और recording indicator हैं। H.264 format screen पर अलग दर्शाया गया है।

06
Cloud relay

Real-time के लिए MQTT, state और command queue के लिए Convex

लक्षित KairOS Agent लगभग 2 Hz पर MQTT में telemetry प्रकाशित करता है। MQTT-to-Convex bridge प्रति device लगभग तीन seconds debounce के साथ state aggregate करता है और browser reactive queries प्राप्त करता है। Commands Convex में लिखी जाती हैं; agent polling pending item लेकर MAVLink में बदलता है और ACK लौटाता है।

textदूरस्थ data paths
Telemetry: FC → Agent → MQTT → bridge → Convex → Mission Control
Commands: Mission Control → Convex queue → Agent poll → MAVLink → FC
Video: Camera → Agent → MQTT SDP → P2P WebRTC → Browser
07
Ground Agent की भूमिका

फील्ड node radio reception को local interfaces में बदलता है

Clientमार्ग
लैपटॉपWi‑Fi AP, Ethernet या USB CDC-NCM tether
फ़ोन / tabletउसी स्थानीय network में browser या KairOS Android track
फील्ड monitorHDMI + Chromium kiosk
Mission Controlवीडियो/telemetry sources वाला ground-station profile

Profile literal ground-station है। Drone Agent के साथ codebase एक है, लेकिन enabled services अलग हैं: onboard encode के बजाय receive, FC-centric onboarding के बजाय AP/tether/kiosk।

08
Mission Control की स्थिति

Stores vehicle, telemetry, mission और transport अलग रखते हैं

State storeज़िम्मेदारी
drone-managerNodes, connection paths और active vehicle
telemetry-storeLive state और 300 samples का ring buffer
mission-storeWaypoints, patterns, validation और upload स्थिति
video-storeSources, transport, playback और errors
settings-storeIndexedDB persistence और migrations
ground-station-storeReceivers, relay path, sources और field IO
छह agents का fleet overview: वीडियो, telemetry और resources वाले cards; online, stale और offline filters।
INTERFACE / दृश्य उदाहरणFleet overview में individual nodes की स्थितियाँ

हर agent के अपने वीडियो, telemetry और resource metrics हैं। Filters और statuses बताते हैं कि node availability और data freshness का अंतर क्यों आवश्यक है।

09
Arm करने पर क्या होता है

Arm पुष्ट sequence है, केवल local switch नहीं

01

Operator का निर्णय

स्पष्ट confirmation के बाद Mission Control protocol.arm() बुलाता है।

02

प्रोटोकॉल

MAV_CMD_COMPONENT_ARM_DISARM, command #400 बनाई जाती है।

03

डेटा परिवहन

Frame WebSocket/LAN या Convex/cloud path से Agent तक जाता है।

04

Serial

Agent command FC को भेजता है और स्वयं को pre-arm checks का निर्णायक नहीं मानता।

05

FC सत्यापन

Firmware sensors, GPS, battery, safety switch, EKF और configured failsafes जाँचता है।

06

स्थिति की पुष्टि

HEARTBEAT base_mode bit 7 और ACK IPC/MQTT से लौटते हैं; UI confirmation के बाद ही ARMED दिखाता है।