Combinar o mapa e as direções
É preciso combinar o que significa esquerda, direita, cima e baixo. O drone também tem de distinguir a posição no planeta da posição dentro de um edifício.
Imagina que o sinal dos satélites desaparece dentro de um edifício. Como continua o drone a orientar-se? Vamos ver que pistas usa, como o erro cresce e o que ajuda a corrigi-lo.
Localização sem depender de terceiros ↓Desliga o GNSS e avança alguns segundos. Observa o erro. Volta a ligar o sinal e vê como a estimativa é corrigida. Se estiver em pausa, usa “Retomar” ou “Avançar 1 s”.
O desenho mostra uma experiência visual. Os controlos podem ser usados com o teclado; as explicações descrevem o comportamento. Usa “Ler resultados” para ouvir as métricas atuais sem anúncios contínuos.
Este gráfico considera apenas um erro constante na aceleração de 0,04 m/s², começando com posição e velocidade corretas. É o mesmo exemplo idealizado da demonstração inercial.
A IMU fornece aceleração e velocidade angular, não coordenadas. Integrar a aceleração estima velocidade e posição, mas pequenos erros acumulam-se. Uma referência externa ajuda a corrigir essa deriva.
É preciso combinar o que significa esquerda, direita, cima e baixo. O drone também tem de distinguir a posição no planeta da posição dentro de um edifício.
O sistema combina pistas em vez de confiar sempre numa só. Uma medição com mais erro tende a ter menos influência. Experimenta aumentar o erro do GNSS e observa a diferença.
Sem uma referência para corrigir o movimento, pequenos erros acumulam-se cada vez mais. A margem calculada também pode ser demasiado otimista se o modelo não conhecer a causa do erro.
GPS e Galileo são sistemas de satélites que ajudam a saber onde estamos no planeta. Em céu aberto, o erro costuma ser de alguns metros. RTK usa correções adicionais e pode chegar a centímetros quando as condições são boas.
Dentro de edifícios, junto a paredes ou com sinal fraco, a posição pode ser pouco fiável. Ter uma coordenada não significa que esteja correta.
A IMU é um conjunto de sensores que sente acelerações e rotações. Ajuda o drone a acompanhar o movimento entre outras medições.
Pequenos erros acumulam-se ao longo do tempo. Por isso, a IMU sozinha não mantém uma posição precisa durante muito tempo.
Comparando imagens, o drone acompanha pontos como cantos de paredes e marcas no chão. Juntar essas imagens aos sensores de movimento chama-se VIO. SLAM acrescenta a construção de um mapa.
Escuridão, paredes lisas e imagens desfocadas dificultam o trabalho. Uma só câmara também pode ter dificuldade em perceber o tamanho real das distâncias.
UWB usa pequenos rádios fixos, chamados âncoras. O drone mede distâncias a vários deles para calcular onde está no espaço. Em boas condições, o erro pode ser da ordem de dezenas de centímetros.
As âncoras precisam de posições conhecidas. Paredes e uma distribuição desfavorável dos rádios podem piorar muito o resultado.
O LiDAR mede distâncias com luz e cria uma representação das superfícies. Comparando essas formas, o drone acompanha o movimento ou encontra a sua posição num mapa.
Espaços muito vazios ou repetitivos são difíceis de reconhecer. A posição num mapa local não dá automaticamente latitude e longitude.
Um barómetro ajuda a acompanhar mudanças de altura. Um sensor de distância mede a separação do chão. Uma bússola eletrónica pode ajudar a saber para onde o drone aponta.
Cada sensor responde a uma pergunta diferente. Saber a altura ou a direção não basta para saber a posição completa.
Os satélites dão uma posição no planeta e os sensores de movimento ajudam entre medições. RTK pode melhorar a precisão quando recebe boas correções.
Câmaras acompanham o percurso e rádios UWB próprios podem indicar a posição no edifício. A escolha depende da luz e do espaço preparado.
Para trocar posições, os drones precisam de usar o mesmo mapa, unidades e relógios compatíveis. Também devem dizer quando mediram e quanto erro pode existir.
O drone pode estimar a localização com sensores e processamento a bordo, sem internet ou GNSS. A pergunta decisiva é: localização em relação a quê? Sem uma referência conhecida, obtém uma trajetória relativa ao ponto de partida, não latitude e longitude.
O drone define a origem ao arrancar. O mapa e a trajetória podem acumular deriva.
Reconhece um mapa ou referências com posições conhecidas. A origem pertence ao teu espaço.
Exige ligar o mapa a uma referência geográfica. Pode ser preparado offline, mas os sensores não inventam essa ligação.
Câmaras e sensores de movimento trabalham juntos para acompanhar o percurso desde o ponto de partida. Com duas câmaras, é mais fácil medir profundidade; com uma, é preciso mais cuidado para estimar distâncias.
Exemplo: voar num armazém e acompanhar o deslocamento, com todos os cálculos feitos no drone.
Limite: o erro cresce com o percurso. Pouca luz ou poucas marcas visíveis tornam a estimativa pior.
SLAM significa construir um mapa e localizar-se nele ao mesmo tempo. Ao reconhecer um sítio já visitado, o drone pode corrigir parte do erro acumulado.
Exemplo: explorar um edifício e reconhecer a sala de entrada quando regressa.
Limite: corredores muito parecidos podem ser confundidos. Reconhecer corretamente o local exige boas medições e processamento.
Podes guardar um mapa no drone antes do voo. Durante a missão, ele compara o que vê com esse mapa para encontrar a sua posição, sem consultar a internet.
Exemplo: inspecionar várias vezes a mesma instalação com um mapa criado por ti.
Limite: mudanças no espaço ou na iluminação podem dificultar o reconhecimento. Um mapa local precisa de uma ligação conhecida ao planeta para dar coordenadas globais.
AprilTag e ArUco são padrões visuais, parecidos com etiquetas. Se o drone souber o tamanho e a posição dessas etiquetas, pode usá-las para se localizar.
Exemplo: colocar etiquetas nas paredes e numa plataforma de aterragem.
Limite: a câmara precisa de ver as etiquetas com clareza. É uma solução sem cloud, mas exige preparar o espaço.
Podes instalar os teus próprios rádios UWB e fazer os cálculos localmente. Várias âncoras bem distribuídas ajudam a encontrar a posição e a altura.
Exemplo: localizar drones dentro de um hangar, sem satélites nem operadora.
Limite: é preciso medir onde ficam as âncoras e testar o efeito das paredes. As necessidades de sincronização dependem do sistema escolhido.
Uma câmara virada para baixo observa como o chão se desloca na imagem. Com a altura e o movimento do drone, estima a velocidade horizontal.
Exemplo: manter posição a baixa altura sobre um chão com textura.
Limite: chão liso, pouca luz e superfícies móveis dificultam a leitura. O erro de posição continua a acumular-se.
A IMU ajuda durante curtos períodos, mas não oferece uma posição precisa para sempre. Erros de movimento e de inclinação acumulam-se. Desliga o GNSS na demonstração para observar esse efeito; ela não simula câmaras, SLAM ou UWB.
Para explorar sem instalar etiquetas ou rádios. O drone precisa de reconhecer quando está perdido e de voltar a encontrar a sua posição.
Para usar sempre o mesmo espaço com uma referência conhecida. É preciso medir onde estão as etiquetas ou rádios e testar o erro em diferentes zonas.
Os drones precisam de combinar onde fica a origem do mapa e para que lado ele aponta. Saber apenas a distância entre drones não basta para saber onde o grupo está no planeta.
Projetos para quem quiser aprofundar a implementação. Podem funcionar localmente, mas é preciso verificar os requisitos do computador e a licença.
ORB-SLAM3 — SLAM visual e visual-inercial (em inglês) →OpenVINS — estimação visual-inercial (em inglês) →FAST-LIO — odometria LiDAR-inercial (em inglês) →AprilTag — deteção de marcadores (em inglês) →PX4 — sensores de fluxo ótico (em inglês) →Os sensores de movimento ajudam entre medições. Uma nova referência pode corrigir a estimativa. A verificação de qualidade abaixo é uma etapa desejável num sistema real, não uma função completa da demonstração.
estimativa = posição_e_velocidade_iniciais
para cada intervalo de tempo:
movimento = ler_sensores_de_movimento()
estimativa = prever(estimativa, movimento, intervalo)
aumentar_incerteza_da_previsão()
se chegou_uma_referência_de_posição:
se referência_tem_qualidade_aceitável:
estimativa = combinar_previsão_e_referência()
atualizar_incerteza()
publicar(estimativa, incerteza, hora_da_medição)
# Um sistema real precisa de verificar sensores e referenciais.Pseudocódigo descreve a lógica. As funções com nomes como “ler sensores” representam trabalho que teria de ser implementado. Este exemplo não é código pronto a executar num robô.
A linha branca mostra o percurso verdadeiro, conhecido apenas pela simulação. A estimativa não recebe essa resposta: usa movimento e medições GNSS. O modelo deixa de fora muitos efeitos do voo real e serve apenas para aprender.
Estas leituras ajudam a aprofundar o tema. As nossas experiências são simplificações educativas: não são reproduções dos resultados dos artigos.
Ligação ao laboratório: A base para combinar uma previsão com medições que têm erro, como fazemos na experiência de localização.
O que não devemos concluir: O nosso modelo linear é pequeno e não estima orientação 3D nem o erro constante do acelerómetro. Não é um EKF completo de autopiloto.
DOI: 10.1115/1.3662552 · em inglês · acesso ao texto completo pode ser pago
Ver na biblioteca científica →Ligação ao laboratório: Mostra como imagens e sensores de movimento podem ajudar a construir mapas e localizar-se, sem depender continuamente de satélites.
O que não devemos concluir: Não implementamos ORB-SLAM3 no site. A nossa experiência GNSS não demonstra visão, reconhecimento de lugares ou mapas múltiplos.
DOI: 10.1109/TRO.2021.3075644 · em inglês · acesso ao texto completo pode ser pago
Ver na biblioteca científica →Ligação ao laboratório: Um exemplo concreto de combinação de uma câmara com sensores de movimento para estimar o percurso.
O que não devemos concluir: Exige calibração, imagens e movimento adequados. É uma referência para aprofundar VIO, não uma promessa de precisão para qualquer ambiente.
DOI: 10.1109/TRO.2018.2853729 · em inglês · acesso ao texto completo pode ser pago
Ver na biblioteca científica →Ligação ao laboratório: Relaciona medições LiDAR com estimativa de movimento e criação de mapa.
O que não devemos concluir: LOAM não deve ser confundido com todos os métodos LiDAR-inerciais. O site apenas ilustra distâncias; não executa o algoritmo.
DOI: 10.15607/RSS.2014.X.007 · em inglês · acesso ao texto completo pode ser pago
Ver na biblioteca científica →Ligação ao laboratório: Ajuda a compreender etiquetas visuais usadas como referências para posição e aproximação a plataformas.
O que não devemos concluir: Detetar uma etiqueta não resolve sozinho a navegação. São necessários dados da câmara, dimensão conhecida e uma referência adequada.
DOI: 10.1109/ICRA.2011.5979561 · em inglês · acesso ao texto completo pode ser pago
Ver na biblioteca científica →