Pitanje:
Što radi Feed Forward i kako to radi?
Klystrom
2020-04-18 16:13:18 UTC
view on stackexchange narkive permalink

PID podešavanje uključuje dobitke P, I i D kako bi četverokut slijedio RC naredbe.

Kad god dođe do pogreške, P bi "gurnuo" četverokut kako bi smanjio pogrešku. Pa kako se Feed Forward dolazi igrati?

Tri odgovori:
#1
+12
FlashCactus
2020-04-18 18:07:08 UTC
view on stackexchange narkive permalink

Način na koji PID regulator radi je kad god stvarna brzina rotacije quadcopter-a nije jednaka zadanoj vrijednosti ili željenoj brzini rotacije (koju ste postavili pomicanjem palica), on šalje signal motorima za kompenzaciju i približavanje brzine zadanoj vrijednosti.

Ovaj signal je zbroj četiri pojma : P, I, D i FF. Budući da je riječ o zbroju, možete ih smatrati kao da svaki gura četverokut u određenom smjeru neovisno, neki se izrazi zbrajaju, a drugi suprotstavljaju jedni drugima.

P-izraz je razlika između zadane vrijednosti i stvarne brzine , pomnoženo s P dobitkom . Dakle, količina sile koju primjenjuje P izraz izravno je proporcionalna toj razlici. Možete ga smatrati oprugom koja pokušava četverokut pomaknuti natrag kad god se izbaci iz položaja. Što se dalje pomiče (veća razlika između zadane vrijednosti i stvarne brzine) i što je tvrđa opruga (veće P pojačanje), to će jača povući.

Razlog zašto je potreban pojam FF je taj što signal koji izlazi PID regulatora utječu na ubrzanje , a ne izravno na brzinu. To znači da četverocikl neće odmah ubrzati, već treba neko vrijeme, ovisno o tome koliko se snažno gura. Dakle, kada želite oštro započeti manevar, želite da četverostruk primijeni puno sile u tom smjeru da krene i zatim održi rotaciju manjom silom.

Međutim, PID kontroler namijenjen je stabilizaciji. Ne razlikuje između naleta palicom i četverocikla koji je izbačen iz položaja preprekom ili naletom vjetra. Dakle, kad pomičete palicu, on se "stabilizira" novom brzinom kao da palicu uopće niste pomaknuli i umjesto toga je nešto naišlo na nju. Pomicanje štapa možete zamisliti kao pomicanje drugog kraja opruge na koji je pričvršćen četverokut. Proljeće ne zanima koji je kraj pomaknut, samo što se njegova duljina promijenila. To znači da PID regulator neće primijeniti toliko snage da pokrene rotaciju koliko bi potencijalno mogao, što znači da je pomalo polako ubrzati kada pomičete palicu i, što je još važnije, sporije usporavati kad pomičete zalijepite se natrag u središte (pa čak možete i preletjeti).

Možete ubrzati reakciju povećavanjem P pojačanja, ali do točke, jer veći P dobici dovode do oscilacija, kada pokreti četvorke dovode do velikih P izrazi koji zauzvrat uzrokuju veća kretanja i tako dalje.

Dakle, umjesto toga dodan je izraz FF. Izraz FF uopće ne uzima u obzir trenutnu brzinu rotacije, tako da ne pridonosi stabilizacijskom djelovanju PID petlje i stoga nije u stanju izazvati oscilacije. Jedino što gleda je štapiće. Sila koju primjenjuje pojam FF proporcionalna je brzini kojom pomičete štap (pomnožena s dobitkom FF). Dakle, kada, na primjer, pokrenete bacanje i udarite štap udesno, pojam FF detektirat će brzo kretanje štapa i dati rafalnu silu da pokrene četverokut. Zatim, kada završite valjanje i vratite štap natrag u središte, pojam FF detektirat će suprotno brzo kretanje štapa i primijeniti odgovarajuću silu, pomažući PID regulatoru da brže zaustavi rotaciju četverocikla i izbjegne pretjerivanje.

#2
+11
Kenn Sebesta
2020-04-18 19:58:17 UTC
view on stackexchange narkive permalink

Pogled na daljinu od 30.000 stopa kao opći koncept

  • Povratnik : Predajem vam zatvorenu kutiju i pretpostavljate da će biti težak sebe u pripremi. Vaša kontrola okvira je brza i precizna.

  • Neuspjeh prosljeđivanja : Predajem vam kutiju i ona je mnogo teža nego što ste očekivali. Vaša kontrola kutije je traljava dok ne kalibrirate i shvatite koliko je težak.

  • Nema prosljeđivanja : kad su vam oči zatvorene i svi vi znaj da ću ti nešto predati. Mogao bi biti helijev balon, mogao bi biti perilica posuđa. Ne znate hoće li vam ruke biti povučene gore ili dolje, pa tako sporo reagirate.

Povratni signal u bespilotnim letjelicama

U u slučaju drona koji se kotrlja, povratni pojam omogućuje vam da predvidite da će vam trebati neka kontrola kotrljanja, čak i ako još ne znate precizno koliko . Tako popularni kontroleri leta omogućuju vam dodavanje neke količine prosljeđivanja kako biste imali brži odgovor na unose.

Povratna informacija vrlo dobro djeluje u odgovarajućim količinama. U sustavu poput drona, gdje se neprestano kreće i nema stvarne dugoročne stabilne stabilnosti, povratno usmjeravanje može stvarno ubrzati vrijeme odziva i povećati točnost. Vrag je u detaljima, jer će svaka kombinacija konstrukcije motora, elisa i atmosferskih uvjeta imati drugačiji optimalni povratni signal.

Kao posljedicu, postoji bezbroj načina za implementaciju unaprijedenja, tako da ne postoji općeniti savjet za pravilno podešavanje. Još jedan poster povezan s https://github.com/betaflight/betaflight/wiki/Feed-Forward-2.0, i smatrao bih da je to dobar izvor o patologijama koje se mogu iskusiti s Beta Flightom. Ostali FC će imati svoje patologije, morat ćete eksperimentirati.


Pozadina

Ovo je u osnovi pitanje kontrole. U svijetu klasične kontrole [*] PID je bio kralj. Ispostavilo se da jednostavne stvari odbijaju umrijeti, i na veliku žalost istraživača kontrola širom svijeta, PID je i dalje kralj. Kredirajte ga tako da bude lako razumljiv i jednostavan za podešavanje za mnoge sustave, čak i ako nije baš dobar.

Bez povratne informacije

Evo dijagrama > PID kotrljajte bez prosljeđivanja .

Feedback example

  1. Imate neku zadanu vrijednost kotrljanja (tj. željeni kolut)
  2. Vi usporedite zadanu vrijednost s izmjerenim kotrljanjem, dobivajući pogrešku
  3. Pomnožite tu pogrešku podešavanjem vrijednosti (K_p, K_i i K_d) da biste generirali kontrolni odgovor
  4. Primjenjujete taj kontrolni odgovor na sustav i pogledajte kako sustav reagira
  5. GOTO (1)

Uz feedforward

Feedforward ima sve te dijelove, osim što dodaje novi element, a to je predviđena kontrola na temelju očekivanog bacanja. Evo dijagrama kotrljanja PID-a s prosljeđivanjem .

Feedforward example

Primijetite da postoji novi put do kontrole, koji je potpuno neovisan o pogrešci. Zbog toga se zove feedforward . Ovaj put jednostavno uzima u obzir željeni ishod i slijepo primjenjuje kontrolni ulaz temeljen na tome.


[*] Era modernih kontrola započela je 1958. objavljivanjem Pontryaginove revolucionarne teorije o optimizaciji praćen R. Kalmanovim sada sveprisutnim filtrom procjene. Za cjelovitu povijest pročitajte http://www.uta.edu/utari/acs/history.htm.

Izvedeni izraz u Betaflightu izračunava se ne iz signala pogreške u gornjem dijagramu, već iz žiroskopa ili povratnog signala. Gornji dijagram je netočan u tom pogledu. Gore navedeni signal pogreške već uključuje promjenu zadane vrijednosti; u gornjem dijagramu, i ako se Feed Forward stvarno implementira kao gore, promjena zadane vrijednosti primijenit će se dva puta. Dakle, ne radimo to tako. U ranim verzijama Betaflight-a izvedenica se izračunavala iz pogreške, ali sada se izračunava isključivo iz žiroskopskog ili povratnog signala.
Dijagram nije povezan s Betaflightom. To je jednostavno pogled na visokoj razini onoga što generički FF radi. Postoji velik dio posla koji se bavi problemima koji proizlaze iz korištenja termina D, a kako kažete, zvuči kao da su rane verzije Betaflight-a naletjele na te klasične probleme. Svaka čast programerima za pronalaženje optimiziranijeg rješenja.
#3
+3
anonymous2
2020-04-18 17:22:29 UTC
view on stackexchange narkive permalink

Daleko sam od stručnjaka za ovu temu ... ali postoji dobar članak ovdje na Githubu za koji smatram da to dobro objašnjava.

U osnovi je povratna informacija faktor što povećava reaktivnost štapa - pomalo poput P, ​​osim što FF ne stvara trutovi na nesnalaženju na visokim razinama. Citiram:

FeedForward (FF) je pogonski čimbenik koji povećava odziv palice. Proporcionalna je trenutnoj izvedenici ili "brzini promjene" kretanja štapa. Što se brže palice kreću, dobivamo više FeedForwarda. FeedForward pomaže P-u da vozi četverokut u zavoje. Za razliku od P, FeedForward ne može uzrokovati oscilacije, bez obzira na to koliko se dodaje FF.

S FeedForwardom dobivamo bolju reakciju palice bez pritiskanja P toliko visoko da izaziva klimavost. Također smanjuje vrijeme kašnjenja između ulaza i odgovora. Manje kašnjenje znači manje pogrešaka i manje prelaska / prelaska. Izvrstan je za trke, LOS i radikalno letenje slobodnim stilom. Nije sjajno za kinematografski HD.


Nadam se da pomaže!



Ova pitanja su automatski prevedena s engleskog jezika.Izvorni sadržaj dostupan je na stackexchange-u, što zahvaljujemo na cc by-sa 4.0 licenci pod kojom se distribuira.
Loading...