Hi,
ich will hier auch mal ein bisschen berichten was ich so mache in dem Projekt... im WiiCopter-Riesen-Thread hab ich ja immer wieder mal ein bisschen was geschrieben...
Ich habe mir ein Arduino Pro Mini, einen Wii Motion + und einen Nunchuck gekauft und die Software dafür ein bisschen umgeschrieben. Mit einem kleinen Lochraster-Breakout-Board habe ich 4 Servos angeschlossen, um die Taumelscheibe und das Heck entsprechend anzusteuern. Das alles hängt an meinem 450er Sonix, auf dem ein 3-Blatt-Kopf von Mirko drauf ist und mit dem das alles erst mal ausprobiert werden soll ob die "MultiWii"-Technik für unser Projekt umgestrickt werden kann...
Dabei habe ich folgende Dinge am Code geändert:
- Regelung ist sofort nach dem Einschalten aktiv
- Servos werden in Mittelstellung gefahren nach dem Einschalten
- Servos werden mit einem Offset belegt um die Mittelstellung einzustellen und die TS 90° ausrichten zu können
- Wirkrichtung für Pitch, Roll, und Nick kann verändert werden
- Min- und Max-Pitchwerte werden über einen Faktor eingestellt
- "MinThrottle" eingeführt, damit Regelungverhalten wie bei "MaxThrottle" funktioniert
- "Mittelstellung ohne Regelung" eingebaut damit man die Rotorblätter einstellen kann
Nachdem ich die Servos ne ganze Weile mit 488Hz angesteuert habe (danke Arnd für den Hinweis...

) habe ich erst die ISR Routine geändert, sodass die Servos mit 50Hz angesteuert werden. Das hatte allerdings den unerwünschten Nebeneffekt, dass beim Initialisieren alle Servos in eine Endstellung gefahren sind, wo blöderweise was im Weg war und so alle Servos auf "Block" liefen... nun habe ich die servo.h Library eingebunden und steuere die Servos so an, die Cycletime ging so von 3000 auf 6000 hoch, ich denke aber nicht dass das ein Problem werden wird da beim FBL-System die Regelung eh nicht so schnell und feinfühlig sein muss wie beim Multicopter... jedenfalls bleiben die Servos nun in der Mittelstellung beim Einschalten, was erst mal wichtiger war...

Die Regelparameter P, I und D müssen drastisch verkleinert werden, damit die Taumelscheibe nicht zu hektisch auf Bewegungen reagiert. Ich habe hierbei ein bisschen bei meinem 500er mit Microbeast abgeschaut, sodass sich die TS nun ungefähr so "träge" bewegt wie bei diesem Heli.
Und weil mir Programmieren inzwischen so viel Spaß macht

hab ich den Code jetzt "bereinigt", d.h. "TRI" wurde zu "FBL" und "QUADX" wurde zu "TILTROTOR", und alles andere ist rausgeflogen (auch alles was mit GIMBAL, SERVO-TILT, FLYING-WING und CAMTRIG zu tun hat) um den Code übersichtlicher zu machen... Leider habe ich dabei immer ein wenig zu viel rausgeworfen, jedenfalls haben danach einige Dinge nicht mehr funktioniert, hier bin ich noch dabei damit ich einen übersichtlicheren Code habe, der auch die Heli-spezifischen, korrekten Bezeichnungen für Roll, Nick, Pitch und Yaw hat... gestern Abend lief jedenfalls schon mal die erste Vorab-Version des "Kurz-Codes"
Und nebenher habe ich auch noch den Flieger mit einem NACA2412 und hinten einem NACA0010 ausgelegt, ich arbeite immer wieder mal ein bisschen am Rotorkopf und an der Schwenkmechanik und am Riementrieb... allerdings fesselt mich die Programmiererei doch sehr, sodass ich zum konstruieren momentan nicht viel Zeit habe... aber die Elektronik muss für das Projekt funktionieren, sonst haben wir einen Tilt-Rotor der sich nicht steuern lässt...
Gruß, Alex