Este é apenas um rastreador de bug e recurso, use-o
para relatar bugs ou solicitar recursos.
Olá a todos,
Estou trabalhando em um projeto de drones internos e recentemente percebi algo ruim:
os tópicos estão sendo atualizados em uma taxa muito baixa (menos de 1 Hz) (incluindo o tópico mavros / local_position / pose que é importante para controlar o drone no modo OFFBOARD).
Está dificultando o controle de vôo pelo tópico setposition porque o drone não sabe sua altitude correta em tempo real. Quando eu testo este algoritmo de teste (voar 1 metro e manter sua posição), no Simulador Gazebo, os tópicos do Mavros estão sendo atualizados em um bom ritmo.
Para verificar se o problema é o sistema de telemetria, testei a taxa de atualização das informações no QGroundControl e quando movo o drone, as informações são atualizadas instantaneamente. Então, suponho que o sistema de telemetria (3DR Radio Link) não seja o problema.
Estou iniciando mavros por este comando:
roslaunch mavros px4.launch fcu_url: = / dev / ttyUSB0: 57600
Se houver uma maneira de resolver este problema (alta latência na atualização do tópico usando telemetria), por favor me diga.
Mavros: 0.18.4
ROS: Lunar 1.13.7
Ubuntu: 16.04
[] ArduPilot
[X] PX4
Versão: 3.7.1 (PX4FMU_V3) Pixhawk 2
servidor roslaunch iniciado http: // lucas-Inspiron-7460 : 40689 /
PARÂMETROS CLAROS
PARÂMETROS
NODES
/
mavros (mavros / mavros_node)
auto-iniciar novo mestre
processo [master]: iniciado com pid [2541]
ROS_MASTER_URI = http: // localhost : 11311
configuração / run_id para 9a6d39f0-3495-11e9-b342-d80f99bfeedd
processo [rosout-1]: iniciado com pid [2554]
iniciou o serviço principal [/ rosout]
processo [mavros-2]: iniciado com pid [2558]
`` `
cabeçalho:
seq: 2138
carimbo:
segs: 1550618079
nsecs: 476350000
frame_id: ''
status:
OK. Recebi mensagens de 1: 1.
Recebeu 371 mensagens, de 1 endereço
sys: comp lista de mensagens
Obrigado pela ajuda!
Com essa taxa de transmissão nesse link de telemetria, parece perfeitamente normal que você esteja obtendo os dados nessas taxas, considerando que os perfis de taxa de link do PX4 para esse tipo de link são bastante baixos. Eu seguiria https://docs.px4.io/en/peripherals/serial_configuration.html e tentaria configurar a taxa de transmissão do link para 115200.
Caro TSC21,
Obrigado por me responder.
Segui o que você me recomendou, mas não tive sucesso. Quando eu mudo a taxa de transmissão do link para 115200, não consigo acessar o drone via telemetria. O QGroundControl exibe apenas: "Aguardando conexão do veículo". Tentei seguir aquele link que você postou aqui e alterei esses parâmetros (com o objetivo de alterar o link da taxa de transmissão):
SER_TEL1_BAUD - de "57600" a "115200"
MAV_0_RATE - de "1200" a "115200"
MAV_0_MODE - de "0" a "1" (normal -> personalizado)
Se houver algo errado neste procedimento, por favor, me avise.
Muito obrigado.
Traga este assunto para o Slack PX4.
Resolvi esse problema apenas alterando o parâmetro "MAV_0_RATE" (de 1200 (padrão) para 57600) sem alterar os parâmetros de taxa de transmissão. Anteriormente, eu estava tentando alterar o parâmetro SER_TEL1_BAUD (de 57600 para 115200), mas não resolveu o problema e a telemetria não funcionava com essa taxa de transmissão. Então testei apenas o MAV_0_RATE e funcionou bem.
Resolvi esse problema apenas alterando o parâmetro "MAV_0_RATE" (de 1200 (padrão) para 57600) sem alterar os parâmetros de taxa de transmissão. Anteriormente, eu estava tentando alterar o parâmetro SER_TEL1_BAUD (de 57600 para 115200), mas não resolveu o problema e a telemetria não funcionava com essa taxa de transmissão. Então testei apenas o MAV_0_RATE e funcionou bem.
Olá, como você alterou o MAV_0_RATE? Procurei na lista de parâmetros do Mission Planner, mas não consigo encontrar.
Resolvi esse problema apenas alterando o parâmetro "MAV_0_RATE" (de 1200 (padrão) para 57600) sem alterar os parâmetros de taxa de transmissão. Anteriormente, eu estava tentando alterar o parâmetro SER_TEL1_BAUD (de 57600 para 115200), mas não resolveu o problema e a telemetria não funcionava com essa taxa de transmissão. Então testei apenas o MAV_0_RATE e funcionou bem.
Olá, como você alterou o MAV_0_RATE? Procurei na lista de parâmetros do Mission Planner, mas não consigo encontrar.
Depende da versão do PX4 que você está executando. Eu acessei este parâmetro por QGroundControl. Você pode verificar os parâmetros aqui:
https://docs.px4.io/v1.9.0/en/advanced_config/parameter_reference.html
Se você não está encontrando o parâmetro por QGroundControl, eu recomendo que você defina este parâmetro pela linha de comando PX4
Para quem ainda procura uma solução.
Eu queria aumentar a taxa de publicação de mensagens de Odometria e HIGHRES_IMU.
Veja como resolvi esse problema:
1- Aumente a taxa de transmissão da comunicação serial alterando esses parâmetros PX4 no QGroundControl e reinicie o UAV.
SER_TEL1_BAUD - from "57600" to "115200"
MAV_0_RATE - from "1200" to "115200"
MAV_0_MODE - from "0" to "1" (normal -> custom)
Referências:
https://docs.px4.io/master/en/peripherals/serial_configuration.html#how -to-configure-a-port
https://github.com/mavlink/mavros/issues/1182#issuecomment -465672331
2- Altere a taxa com que o Mavlink publica as mensagens ODOMETRY / HIGHRES_IMU. Isso pode ser feito escrevendo este comando no cartão microSD no PX4. Como?
Remova o cartão do Pixhawk e conecte ao seu PC. Em seguida, vá para ./fs/etc/extras.txt
Se este diretório (ou parte dele) não existir, crie-o. Então, dentro de extras.txt, devemos escrever:
mavlink stream -d /dev/ttyS0 -s HIGHRES_IMU -r 200
mavlink stream -d /dev/ttyS0 -s ODOMETRY -r 200
Referência:
https://dev.px4.io/v1.9.0/en/concept/system_startup.html#starting -additional-applications
Para completar, aqui estão os meus detalhes de configuração:
Mavros: 1.4
ROS: melódico
Ubuntu: 18.04
PX4
Versão: v1.10.1
PX4_FMU_V5 (V500)
NuttX, v7.29.0
Comentários muito úteis
Resolvi esse problema apenas alterando o parâmetro "MAV_0_RATE" (de 1200 (padrão) para 57600) sem alterar os parâmetros de taxa de transmissão. Anteriormente, eu estava tentando alterar o parâmetro SER_TEL1_BAUD (de 57600 para 115200), mas não resolveu o problema e a telemetria não funcionava com essa taxa de transmissão. Então testei apenas o MAV_0_RATE e funcionou bem.