Berapa frekuensi yang diperlukan loop pembaruan keluaran-akal-kalkulasi-keluaran-quadcopter saya agar tetap stabil?

20

Dengan quadcopter motor-ke-motor 600 mm (2 kaki), frekuensi apa yang diperlukan loop pembaruan output-sense-menghitung-output saya agar tetap stabil?

Saya memperkirakan berat total tinggal landas sekitar 2 pon (0,9 kg), yang saya perkirakan sebagian besar motor dan baterai.

David Cary
sumber
1
Saya menduga bahwa hanya jawaban yang sangat kasar akan dimungkinkan di sini, karena ada banyak variabel yang akan mempengaruhi respons sistem. Mungkin lihat: Bagaimana cara menghitung frekuensi loop yang diperlukan untuk pengontrol servo?
Rocketmagnet

Jawaban:

17

Seperti yang disarankan Rocketmagnet, frekuensi apa yang Anda "butuhkan" akan tergantung pada banyak hal. Semakin responsif rotor Anda, semakin sensitif kepekaan Anda terhadap paku acak dalam perintah motor. Lonjakan acak ini mungkin disebabkan oleh pembacaan sensor bising yang disebabkan oleh ketidaksempurnaan fisik, yang berarti Anda harus menurunkan perolehan pengontrol Anda, yang pada gilirannya mungkin berarti quadrotor Anda menjadi lebih tidak stabil. Beberapa faktor lain termasuk inersi rotasi quadrotor, pitch blade baling-baling, lokasi pusat massa, dan jarak motor-ke-motor.

Saya memprogram pengendali penerbangan dari awal untuk 2 kg tricopter saya yang berjalan pada ATmega1280 dan menemukan bahwa di:

  • 50 Hz: Itu akan tetap di udara tetapi hampir tidak mungkin untuk dikendalikan.
  • 100 Hz: Setidaknya itu akan menghindari tip langsung ke satu sisi.
  • 200 Hz: Saya bisa melepaskannya di dalam ruangan dengan melayang-layang throttle dan itu akan tetap lebih atau kurang di satu tempat.

Mungkin menarik untuk dicatat bahwa semakin tinggi frekuensi kontrol, semakin efektif inersi rotor Anda menjadi peredam fisik, yang membantu menghilangkan kebisingan IMU dan meningkatkan stabilitas penerbangan.

Tetapi jika saya harus memberikan angka keras untuk frekuensi pembaruan pengendali penerbangan minimum untuk quadrotor yang ukurannya cocok untuk navigasi dalam ruangan, berdasarkan pengalaman pribadi ...

Saya akan mengatakan 80 Hz.

yoo
sumber
1
Saya tidak mengerti mengapa Anda menyarankan 80Hz ketika Anda harus menggunakan 200Hz pada kerajinan yang jauh lebih besar, jika ada sesuatu ketika sistem lebih kecil Anda memerlukan waktu pengambilan sampel lebih cepat karena frekuensi alami lebih tinggi karena ada sedikit kelembaman.
goncalo luis
Apakah ada manfaat untuk berjalan di atas 200 Hz? Saya memiliki sistem yang berjalan pada 2KHz saat ini, tetapi dengan biaya beberapa berat tambahan.
tuskiomi
(Wow ini adalah utas lama, tapi) @ goncaloluis saya menyarankan 80Hz sebagai minimum keras. Anda benar-benar benar tentang membutuhkan tingkat pengambilan sampel yang lebih cepat untuk kerajinan yang lebih kecil. :)
yoos
1
@tuskiomi ke titik tertentu .. Aplikasi Anda dan bandwidth yang diinginkan harus mendorong frekuensi loop kontrol yang diperlukan, tetapi seperti yang telah dicatat, kelembaman menjadi faktor pembatas pada akhirnya.
yoo
2

50-200Hz cukup normal seperti yang dapat kita lihat dalam proyek open source. Anda harus mempertimbangkan bahwa dalam banyak kasus, kelambanan motor dan komunikasi dengan ESC adalah faktor pembatas.

pengguna65
sumber
2
@ Shahbaz: Menjadi "open source" memengaruhi pengetahuan kita tentang frekuensi loop kontrol. Jika bukan open source, kita biasanya tidak tahu apa frekuensi loop kontrol.
David Cary
Tidak sepenuhnya benar. Pengendali penerbangan sumber tertutup biasanya menerbitkan frekuensi kendali mereka. Sebagian besar dari mereka kontrol output pada 400 hz untuk membuat mereka kompatibel dengan pengendali kecepatan elektronik standar (ESC). Misalnya DJI Wookong-M yang populer: dji-innovations.com/tech-spec/wookong-m-sepc
foobarbecue
1

Untuk dapat ke angka yang sulit Anda harus memiliki model matematika kerajinan Anda dan menganalisanya. Ada dua opsi untuk mendapatkan model sistem:

1) Anda datang dengan representasi matematis dari quadcopter melalui diagram benda bebas;

2) Anda membuat pertunjukan untuk menguji quadcopter tanpa sistem kontrol dan menggunakan teori identifikasi untuk menemukan model;

Maka Anda harus membuat linier model Anda, quadcopter secara inheren non linier. Buat plot pertanda sistem, frekuensi yang Anda butuhkan adalah sekitar dua kali frekuensi tertinggi sistem Anda.

Ini adalah cara "pro" untuk melakukannya. Jika Anda tidak ingin melalui semua ini, gunakan nilai seperti apa yang disarankan user65 dan yoos (baca komentar saya tentang jawaban yoos) dan lakukan iterate sampai Anda mendapatkan yang Anda inginkan. Anda juga tidak ingin waktu sampel terlalu tinggi, karena Anda akan mulai mengalami masalah ketika sistem kontrol merespons kebisingan.

goncalo luis
sumber
1

Pertanyaan Anda hanya dapat dijawab secara khusus jika kami memiliki parameter model sistem Anda. Pendekatan yang paling berprinsip untuk menjawab pertanyaan Anda adalah dengan mewakili dinamika sistem Anda yang sangat nonlinier dalam waktu yang terpisah; kemudian menggunakan representasi ini, ukuran langkah maksimum yang stabilitasnya dapat ditentukan - ini akan menjadi nilai maksimum yang sistem Anda dapat berhasil gunakan. Ukuran langkah minimum akan ditentukan bukan oleh dinamika sistem, tetapi oleh perangkat keras yang Anda gunakan - keterlaluan adalah apa yang menjadi perhatian saya dalam kasus ini.

JSycamore
sumber