Ini hanya bug dan pelacak fitur, silakan gunakan
untuk melaporkan bug atau meminta fitur.
Halo semuanya,
Saya sedang mengerjakan proyek drone dalam ruangan dan baru-baru ini saya melihat sesuatu yang buruk:
topik sedang diperbarui dalam kecepatan yang sangat rendah (kurang dari 1Hz) (termasuk topik mavros/local_position/pose yang penting untuk mengontrol drone pada mode OFFBOARD).
Ini mengubah kontrol penerbangan menjadi sulit dengan topik setposisi karena drone tidak mengetahui ketinggian yang benar secara real time. Ketika saya menguji algoritma pengujian ini (terbang 1 meter dan menahan posisinya), di Gazebo Simulator, topik Mavros diperbarui dengan kecepatan yang bagus.
Untuk memverifikasi apakah masalahnya adalah sistem telemetri, saya menguji tingkat pembaruan informasi di QGroundControl dan ketika saya memindahkan drone, informasi diperbarui secara instan. Kalau begitu, saya kira sistem telemetri (3DR Radio Link) tidak masalah.
Saya meluncurkan mavros dengan perintah ini:
roslaunch mavros px4.launch fcu_url:=/dev/ttyUSB0:57600
Jika ada cara untuk mengatasi masalah ini (latensi tinggi pada pembaruan topik menggunakan telemetri) tolong beri tahu saya.
Mavros: 0.18.4
ROS: Lunar 1.13.7
Ubuntu: 16.04
[ ] ArduPilot
[X] PX4
Versi: 3.7.1 (PX4FMU_V3) Pixhawk 2
memulai server roslaunch http://lucas-Inspiron-7460 :40689/
PARAMETER BERSIH
PARAMETER
NODA
/
mavros (mavros/mavros_node)
mulai otomatis master baru
proses[master]: dimulai dengan pid [2541]
ROS_MASTER_URI= http://localhost :11311
setel /run_id ke 9a6d39f0-3495-11e9-b342-d80f99bfeedd
proses[rosout-1]: dimulai dengan pid [2554]
memulai layanan inti [/rosout]
proses[mavros-2]: dimulai dengan pid [2558]
```
kepala:
seq: 2138
stempel:
detik: 1550618079
nsecs: 476350000
frame_id: ''
status:
BAIK. Saya mendapat pesan dari 1:1.
Menerima 371 pesan, dari 1 alamat
sys:comp daftar pesan
Terima kasih untuk bantuannya!
Dengan baud rate di tautan telemetri itu, terlihat sangat normal bahwa Anda mendapatkan data dengan kecepatan tersebut, mengingat profil kecepatan tautan PX4 untuk jenis tautan ini cukup rendah. Saya akan mengikuti https://docs.px4.io/en/peripherals/serial_configuration.html dan mencoba mengatur baud rate tautan Anda ke 115200.
TSC21 yang terhormat,
Terima kasih telah membalas saya.
Saya mengikuti apa yang Anda rekomendasikan kepada saya tetapi saya tidak berhasil. Ketika saya mengubah baudrate tautan ke 115200, saya tidak dapat mengakses drone melalui telemetri. QGroundControl hanya menampilkan: "Menunggu Koneksi Kendaraan". Saya mencoba mengikuti tautan yang Anda posting di sini dan saya mengubah parameter ini (bertujuan untuk mengubah tautan baudrate):
SER_TEL1_BAUD - dari "57600" hingga "115200"
MAV_0_RATE - dari "1200" hingga "115200"
MAV_0_MODE - dari "0" hingga "1" (normal -> kustom)
Jika ada yang salah dalam prosedur ini, tolong beri tahu saya.
Terima kasih banyak.
Tolong bawa masalah ini ke PX4 Slack.
Saya memecahkan masalah ini hanya dengan mengubah parameter "MAV_0_RATE" (dari 1200 (default) menjadi 57600) tanpa mengubah parameter baud rate. Sebelumnya saya mencoba mengubah parameter SER_TEL1_BAUD (dari 57600 menjadi 115200) tetapi tidak menyelesaikan masalah dan telemetri tidak berfungsi dengan baud rate ini. Kemudian saya menguji hanya MAV_0_RATE dan itu bekerja dengan baik.
Saya memecahkan masalah ini hanya dengan mengubah parameter "MAV_0_RATE" (dari 1200 (default) menjadi 57600) tanpa mengubah parameter baud rate. Sebelumnya saya mencoba mengubah parameter SER_TEL1_BAUD (dari 57600 menjadi 115200) tetapi tidak menyelesaikan masalah dan telemetri tidak berfungsi dengan baud rate ini. Kemudian saya menguji hanya MAV_0_RATE dan itu bekerja dengan baik.
Hai, bagaimana Anda mengubah MAV_0_RATE? Saya telah mencarinya di daftar parameter di Mission Planner tetapi tidak dapat menemukannya.
Saya memecahkan masalah ini hanya dengan mengubah parameter "MAV_0_RATE" (dari 1200 (default) menjadi 57600) tanpa mengubah parameter baud rate. Sebelumnya saya mencoba mengubah parameter SER_TEL1_BAUD (dari 57600 menjadi 115200) tetapi tidak menyelesaikan masalah dan telemetri tidak berfungsi dengan baud rate ini. Kemudian saya menguji hanya MAV_0_RATE dan itu bekerja dengan baik.
Hai, bagaimana Anda mengubah MAV_0_RATE? Saya telah mencarinya di daftar parameter di Mission Planner tetapi tidak dapat menemukannya.
Itu tergantung pada versi PX4 yang Anda jalankan. Saya mengakses parameter ini dengan QGroundControl. Anda dapat memeriksa parameter di sini:
https://docs.px4.io/v1.9.0/en/advanced_config/parameter_reference.html
Jika Anda tidak menemukan parameter dengan QGroundControl, saya sarankan Anda mengatur parameter ini dengan baris perintah PX4
Bagi yang masih mencari solusi.
Saya ingin meningkatkan tingkat penerbitan pesan Odometry & HIGHRES_IMU.
Inilah cara saya memecahkan masalah ini:
1- Tingkatkan kecepatan baud komunikasi serial dengan mengubah parameter PX4 ini di QGroundControl, lalu reboot UAV.
SER_TEL1_BAUD - from "57600" to "115200"
MAV_0_RATE - from "1200" to "115200"
MAV_0_MODE - from "0" to "1" (normal -> custom)
Referensi:
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- Ubah kecepatan publikasi pesan ODOMETRY/ HIGHRES_IMU Mavlink. Ini dapat dilakukan dengan menulis perintah ini pada kartu microSD di PX4. Bagaimana?
Keluarkan kartu dari Pixhawk dan sambungkan ke PC Anda. Lalu pergi ke ./fs/etc/extras.txt
Jika direktori ini (atau sebagian darinya) tidak ada, buatlah. Kemudian, di dalam extras.txt, kita harus menulis:
mavlink stream -d /dev/ttyS0 -s HIGHRES_IMU -r 200
mavlink stream -d /dev/ttyS0 -s ODOMETRY -r 200
Referensi:
https://dev.px4.io/v1.9.0/en/concept/system_startup.html#starting -additional-applications
Untuk kelengkapan, berikut adalah detail pengaturan saya:
Mavros: 1.4
ROS: Melodi
Ubuntu: 18.04
PX4
Versi: v1.10.1
PX4_FMU_V5 (V500)
NuttX, v7.29.0
Komentar yang paling membantu
Saya memecahkan masalah ini hanya dengan mengubah parameter "MAV_0_RATE" (dari 1200 (default) menjadi 57600) tanpa mengubah parameter baud rate. Sebelumnya saya mencoba mengubah parameter SER_TEL1_BAUD (dari 57600 menjadi 115200) tetapi tidak menyelesaikan masalah dan telemetri tidak berfungsi dengan baud rate ini. Kemudian saya menguji hanya MAV_0_RATE dan itu bekerja dengan baik.