Har någon testat denna typ av reglering på en Multicopter?

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Har någon testat denna typ av reglering på en Multicopter?

Inlägg av Korken »

Godagens!

Jag satt idag och hade alldeles för lite att göra så jag tog och modellerade en Quadcopter i Simulink (en axel).
Det jag sedan gjorde var att testa lite olika typer av regulatorer och kollade på hur systemet svarade.
Det som används i CopterControll med kaskad-PI-PI regulator fungerade riktigt bra efter lite tuning, men jag tog och testade något lite mer avancerat.

Jag testade Tillståndsåterkoppling och vilken skillnad!
Tillståndsåterkopplingen med en Kalman-observatör har en otroligt stabil respons. Jag ska testa detta lite mer innan jag säger för mycket, men har någon testat att använda tillståndsåterkoppling någon gång för detta?
För preliminära resultat visar att det ser ut att bli riktigt bra!
thebolt
Inlägg: 248
Blev medlem: 10 februari 2008, 17:41:40
Ort: Taipei Taiwan

Re: Har någon testat denna typ av reglering på en Multicopte

Inlägg av thebolt »

Ja, har också testat lite med tillståndsåterkoppling, men det finns ju rätt många olika sätt att göra det (baserat på vilka tillstånd man återkopplar på, vilka man observerar och hur) osv. Sitter liksom du med en modell i Simulink (full med 6 frihetsgrader)... du känner inte för att dela med dig lite mer av vad du testade för tillstånd och observabler?
danei
EF Sponsor
Inlägg: 27904
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Re: Har någon testat denna typ av reglering på en Multicopte

Inlägg av danei »

Har du lagt in något brus i signalerna? Det ä lätt att få extremt bra prestanda i med tillståndsåterkoppling i en modell, men när verklighetens mätbrus kommer in blir det en helt annan sak.
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Re: Har någon testat denna typ av reglering på en Multicopte

Inlägg av Korken »

thebolt: I mina första test körde jag väldigt enkelt, min Kalman observatör tar in normerad gravitationsvektor samt vinkelhastighet, detta görs om till vinklar så min state blir:

Kod: Markera allt

_   |     vinkel      |
X = | vinkelhastighet |
    |      bias       |
och detta körde jag min första tillståndsåterkoppling på. Vinkel-reglering tar in hela state-vektorn i återkopplingen medan vinkelhastighetsreglering bara tar in vinkelhastigheten samt bias.

Nu hade jag tänkt generalisera detta och implementera min nya observatör jag arbetar på för att se hur det reagerar när den får en hel DCM in. Hur gör du med dina states och återkopplingen?

danei: Japp, det har jag. Har ställt in observatören rätt så bra, så majoriteten av allt brus försvinner.
thebolt
Inlägg: 248
Blev medlem: 10 februari 2008, 17:41:40
Ort: Taipei Taiwan

Re: Har någon testat denna typ av reglering på en Multicopte

Inlägg av thebolt »

Ah, oaky, då är jag med.. det var lite mer "standardmässig" metod än vad jag trodde ;) Att köra ett observatorfilter på gravitationsvektor + vinkelhastighet för att estimera nuvarande state är ju rätt "rakt fram" oavsett vilken reglering man gör. Jag har i dagsläget främst ett komplementärt filter för state estimation, men kan byta runt mellan ett par olika. Exakt tillståndsvektor i estimeringen beror lite på vilken algoritm jag switchar in.

Återkopplingen, vilken form av tillståndsåterkoppling kör du? Det finns ju ett par olika metoder, jag testade tidigare en direkt Lyapunov-redesign samt diverse linjära metoder på en linjäriserad modell, funkade sådär.. tittar just nu på lite mer avancerade metoder. För regleringen är ju den intressanta tillståndsvektorn [vinkel vinkelhastighet] (6-dimensionell), som dock också beroende på metod utökas med mer eller mindre "virtuella" tillstånd.
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Re: Har någon testat denna typ av reglering på en Multicopte

Inlägg av Korken »

Hehe, jo. Den första ska vara enkel, annars blir det ofta fel. ;)
Den nya jag arbetar på kommer det bli mer jobb på då den har en 3x3 matris (DCM) samt en 6x1 vektor (vinkelhastighet + bias). Sedan hur detta ska kopplas har jag inte riktigt funderat klart på än, men det lutar mot att använda olika produkter av vektorerna I DCMen för att ta ut Attitude och sedan använda detta med vinkelhastighetsvektorn för att skapa återkopplingen.
Men som sagt så är det filtret inte riktigt klart än. Slåss lite med hur jag ska ha mina states då jag har kaskad-Kalmanfilter som behöver lite info från varandra.

Jag kör just nu vanlig tillståndsåterkoppling där jag multiplicerar min state med en vektor Lu för att få min styrsignal, sedan har jag en integral som också verkar utan på det för att få bort steady-state errors.
Simpelt och bra. :)
Användarvisningsbild
Walle
Moderator
Inlägg: 7701
Blev medlem: 14 december 2004, 10:32:18
Ort: Stockholm

Re: Har någon testat denna typ av reglering på en Multicopte

Inlägg av Walle »

Lite OT, men jag måste bara passa på att fråga om du vet om det finns något liknande Simulink som är gratis? Vore kul att komma igång och labba lite med sånt här, men att köpa en programvara som jag ännu inte ens har en aning om hur man använder, eller om jag ens kommer använda den mer än någon enstaka gång, är ju inte så kul.
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Re: Har någon testat denna typ av reglering på en Multicopte

Inlägg av Korken »

Octave ska ha alla funktioner som Matlab vad jag vet, vet dock inte om det har Simulink.
Men annars är det exakt samma sak. Matlab kod fungerar i Octave. :)

Annars finns *HOSTThePrateBayHOST* också
Skriv svar