Jeg har laget meg en enkel quadrocopter flight controller. Den bruker en ATMega48 på 8 MHz, og har få deler.
Software og skjema er vedlagt, hvis du vil prøve selv. Greit vinterprosjekt
Softwaren er enkel, og har bare en loop og ingen interrupts. CPU bruken er ca 80%. Mere CPU tid kan frigjøres ved å lage pulsavlesningen og genereringen interruptdrevet.
Softwaren er skrevet i assembly (Jeg liker å lide!
, og jeg bruker et 16.16bit (16bit integer, 16bit fractional) math library, som jeg også har laget selv
Den bruker et array av 16.16bit registre, som brukes på samme måte som ATMega48 sine 32 8bit registre, og kan gies navn.
Gyroene er tatt fra noen 2rotors helikoptervrak som jeg fikk engang.
Man kan bruke en vanlig mottaker som gir ut kanalene på vanlig måte.
jeg bruker en Futaba R606FS, som heldigvis har en framerate på 16ms i stedet for 20ms som er vanlig. Dette gir en kontroll-loop frekvens på 62.5Hz.
Kontrollalgoritmen er enkel rate dampening. Jeg prøvde å lage "heading hold", men ble ikke kvitt all vinglingen.
Kretsen er enkel nok til å lages på et stykke "stripboard".
Her er en video:
Software og skjema er vedlagt, hvis du vil prøve selv. Greit vinterprosjekt

Softwaren er enkel, og har bare en loop og ingen interrupts. CPU bruken er ca 80%. Mere CPU tid kan frigjøres ved å lage pulsavlesningen og genereringen interruptdrevet.
Softwaren er skrevet i assembly (Jeg liker å lide!


Gyroene er tatt fra noen 2rotors helikoptervrak som jeg fikk engang.
Man kan bruke en vanlig mottaker som gir ut kanalene på vanlig måte.
jeg bruker en Futaba R606FS, som heldigvis har en framerate på 16ms i stedet for 20ms som er vanlig. Dette gir en kontroll-loop frekvens på 62.5Hz.
Kontrollalgoritmen er enkel rate dampening. Jeg prøvde å lage "heading hold", men ble ikke kvitt all vinglingen.
Kretsen er enkel nok til å lages på et stykke "stripboard".
Her er en video:
Comment