CONCEITO E DESENVOLVIMENTODESPORTO NÃO TRIPULADO · #bezpiLOTa · KAIROS DRONE AGENTDocumentação
#bezpiLOTa→Primeiros passos→Mission Control
INÍCIO RÁPIDO / MISSION CONTROL

O cenário previsto começa num modo local de demonstração: Dashboard, Plan, Configure, Flight Control e Simulate são explorados com dados sintéticos. O FC real só é ligado após publicação do componente e verificação de contexto seguro, fluxo série e condições de segurança.

PREVISTO

#bezpiLOTa Mission Control é um componente associado do ecossistema, não parte de KairOS Drone Agent; o repositório executável ainda não foi publicado.

Repositório KairOS ↗
NODE 20+requisito de execução
4000porta de desenvolvimento predefinida
07perfis de demonstração previstos
NO FCrequisito de demonstração
01
PRÉ-REQUISITOS

Ambiente de desenvolvimento e navegador

  • Node.js 20 ou posterior.
  • npm 9 ou posterior.
  • Git para clonar e atualizar o código-fonte após a publicação do repositório.
  • Chrome, Edge ou Firefox para a interface normal; WebSerial/WebUSB exigem navegador Chromium.
  • Cabo USB com linhas de dados se ligar posteriormente um FC real.
bashVerificação das ferramentas
node --version
npm --version
git --version
02
OPÇÃO A

Ambiente de demonstração seguro sem FC

O modo de demonstração permite conhecer a interface em segurança sem ligar um veículo real. Usa telemetria simulada e não apresenta uma bancada como sistema de voo operacional.

03
OPÇÃO B

Modo local de demonstração

bashFluxo local de demonstração previsto
# Отдельный репозиторий #bezpiLOTa Mission Control ещё не опубликован
# После выпуска ожидаемый поток будет таким:
npm install
NEXT_PUBLIC_DEMO_MODE=true npm run dev
Interface prevista KairOS: o comando só será executável após o lançamento do componente correspondente.

A interface prevista deverá abrir em http://localhost:4000. Com NEXT_PUBLIC_DEMO_MODE=true não são necessários base de dados externa, SITL nem hardware físico. Este bloco define o contrato de arranque, não afirma que o comando exista no repositório atual KairOS Drone Agent.

04
EXPLORE A INTERFACE

Cinco superfícies de trabalho principais

01

Painel

Atitude, GPS/altitude, bateria, modo de voo, caminho de ligação e alertas do sistema.

02

Planeamento

Pontos de rota, sete geradores, altitude/velocidade/disparo da câmara, geocercas, pontos de reunião e QGC WPL/KML/CSV.

03

Configuração

Failsafe, PID, alimentação, OSD, portas, sensores, gimbal e painéis específicos do firmware.

04

Controlo de voo

Armamento/desarmamento, mais de 25 modos ArduPilot, comando/HOTAS a 50 Hz, teclado e ponto de rota guiado.

05

Simulação

Trajetória 3D de missão, acompanhamento do terreno, marcadores de câmara, tempos e perfil de altitude.

Cabina de vídeo #bezpilOta GCS: imagem da câmara, HUD, minimapa, bateria, GPS, progresso da missão e comandos de voo.
INTERFACE / EXEMPLO VISUALCabina de vídeo e comandos de voo

HUD, telemetria, minimapa e progresso da missão surgem junto aos comandos de controlo. O exemplo ajuda os utilizadores a orientar-se nas áreas de trabalho do operador.

05
LIGAR UM FC REAL

Fluxo WebSerial em localhost

bashInício do servidor de desenvolvimento
npm run dev
Interface prevista KairOS: o comando só será executável após o lançamento do componente correspondente.
01

Abrir localhost

Abra http://localhost:4000 num navegador Chromium.

02

Ligar o FC

Use cabo USB de dados, clique em Ligar e selecione a porta série no diálogo do navegador.

03

Abertura da porta série

O navegador obtém permissão através de uma ação do utilizador e abre a porta.

04

Heartbeat

Mission Control espera pelo heartbeat do FC e identifica piloto automático e veículo.

05

Capacidades

Solicita AUTOPILOT_VERSION e capacidades do protocolo.

06

Fluxos + parâmetros

Solicita fluxos de telemetria e descarrega parâmetros; a referência de projeto para negociação inicial é 2–5 segundos.

06
SEGURANÇA DO NAVEGADOR

WebSerial só funciona num contexto seguro

WebSerial, WebUSB e Web Bluetooth exigem HTTPS ou a confiança especial de localhost. Por isso http://localhost:4000 é permitido, mas http://<lan-ip>:4000 a partir de outro dispositivo não obtém estas API. O acesso ao hardware noutro dispositivo precisa de HTTPS ou compilação desktop/Electron.

A ligação a Drone Agent por WebSocket e REST comuns não usa permissão WebSerial, mas as regras de conteúdo misto continuam importantes: uma página HTTPS pode bloquear um agente HTTP/WS sem encriptação. Num modo totalmente local com HTTP simples, GCS e agente devem estar disponíveis em contextos coerentes.

07
ALOJAMENTO PRÓPRIO EM LAN

Servidor local e agente na mesma rede

textEndereços LAN
npm run dev

# GCS on this machine
http://localhost:4000

# GCS from another LAN client
http://<your-lan-ip>:4000

# Example KairOS Agent address
http://kairos.local:8080
http://192.168.1.50:8080
Interface prevista KairOS: o comando só será executável após o lançamento do componente correspondente.
08
SITL

Física e protocolo sem veículo real

bashPonte SITL prevista, após publicação do componente
cd KairOS_Drone-Agent/tools/sitl
npm install
npm start

ArduPilot SITL deve ser instalado separadamente; o binário costuma estar em ~/.ardupilot/. A ponte liga telemetria do simulador ao transporte do navegador. É mais seguro que a primeira experiência de protocolo no veículo, mas ainda exige verificar versões, parâmetros e comportamento de missão.

Ecrã de simulação SOFTWARE SITL: mapa do trajeto, passagem pelos pontos de rota, telemetria, vídeo e registo de eventos da missão.
INTERFACE / EXEMPLO VISUALMissão no contexto SOFTWARE SITL

O ecrã de simulação mostra mapa, passagem pelos pontos de rota, telemetria e transições entre pontos. O registo fornece contexto para verificar o comportamento da missão.

09
APLICAÇÃO DE COMPUTADOR

Electron para API de hardware e pacote autónomo

bashScripts desktop KairOS
npm run desktop:dev
npm run desktop:demo
npm run desktop:build:mac
npm run desktop:build
Interface prevista KairOS: o comando só será executável após o lançamento do componente correspondente.

Para planeamento, prevêem-se cerca de 200 MB em disco e 200–300 MB de RAM. Os requisitos reais dependem da plataforma e versão do ambiente de execução e serão publicados com a compilação Mission Control.

10
AMBIENTE

Variáveis de modo e infraestrutura externa

VariávelPredefiniçãoFinalidade
NEXT_PUBLIC_DEMO_MODEfalseSete drones simulados em vez de fontes reais
PORT4000Porta do servidor de desenvolvimento
NEXT_PUBLIC_CONVEX_URLnenhumBackend Convex opcional
NEXT_PUBLIC_MQTT_URLnenhumBroker MQTT opcional

O modo local/direto não precisa de variáveis de nuvem. A ausência de Convex ou MQTT não deve bloquear USB direto, descoberta do agente local ou planeamento de missões offline.

11
ESTRUTURA DO PROJETO

Estrutura prevista de um GCS separado

textEstrutura prevista do repositório
KairOS_Drone-Agent/
├── agent/                onboard runtime
├── api/                  local control surface
├── protocols/            MAVLink and MSP adapters
├── media/                video transports
├── extensions/           sandbox runtime and SDK
├── tools/sitl/           simulator bridge
├── deploy/systemd/       Linux services
├── docs/                 project documentation
└── tests/                contracts and hardware profiles