Hallo,
ich bin dabei einen Multi-Kopter zu bauen und möchte dabei die Kamera passend zu meinem Kopf bewegen.
Dazu habe ich einen GY-85 Board mit einem lagesensor (gyroscope), beschleuningungssensor und e-kompass, welches an meinem Kopf kommt.
Die Daten werden per Fernsteuerung an den Kopter gesendet und das funktioniert auch schon einigermaßen, dank dem Projekt von Dennis Frie.
(hier der Code zum direkten Anschauen)
Das Signal wird bei dieser Lösung mittels im Modellbau typischem PPM Verfahren per Funk gesendet.
Dazu wird vom Headtracker (Arduino und Sensorboard) ein PPM Signal generiert und an die Fernbedienung übertragen (die es dann zum Kopter weiterschickt).
Was mir an der Lösung nicht so gefällt ist, dass man ein Kabel vom Kopf/Headtracker zur Fernbedienung hat.
Meine Idee dazu ist, ein nRF24L01 am Headtracker und eines in der Fernsteuerung zur Datenübertragung zu nutzen.
Ich weiß allerdings nicht, wie ich das am Besten mache.
Soll ich die rohen Sensordaten an das Arduino in der Fernsteuerung schicken und dort dann zu PPM umwandeln oder geht das einfacher?
Das PPM Signal selbst zu senden geht ja, soweit ich das verstehe nicht.
Generell ist der Code von Dennis Frie für mich nicht sehr gut verständlich, weil ich nicht genau sehe, wo das PPM Signal wie zusammengebaut wird.
Ein simples Beispiel für meine Orientierungslosigkeit ist das hier:
if ( buttonPressed )
{
if ( !pauseToggled && (buttonDownTime > BUTTON_HOLD_PAUSE_THRESH) )
{
// Pause/unpause
ht_paused = !ht_paused;
resetValues = 1;
pauseToggled = 1;
}
}
Wenn man den Button länger als "BUTTON_HOLD_PAUSE_THRESH" (1500ms) drückt, dann ist pauseToggled = 1.
Bloß sehe ich im gesamten Code nicht, wie dieser Wert irgendwo was "pausiert".
Der Code ist also "zu hoch" für mich und ich hoffe daher auf Hilfe von euch Profis.
Lieben Dank!