Hi @ all, ich habe mir den brushless- Regler von hier http://mikrokopter.de/ucwiki/BrushlessCtrl nachgebaut sozusagen. Der Regler ist an einen LiPo 11,1V Akku und einem brushless Motor angeschlossen. Von der Verkabelung des Reglers, Motors, Akkus her dürfe alles passen, da zb durch das Testprogramm "Test_Schub_BruchLess-Ctrl_V0_32.hex" von http://svn.mikrokopter.de/listing.php?repname=BL-Ctrl&path=%2Ftags%2FV0.42%2FHex-Files%2FBL-Ctrl_V1_0%2F&#Ac50525c7f1f29a8b3dc643c5e00fa52b der Motor ordentlich auf Touren kommt. Nun möchte ich aber testweise die Original Software aufspielen von hier http://svn.mikrokopter.de/listing.php?repname=BL-Ctrl&path=%2Ftags%2FV0.42%2F&#A4bfcc0886576e3118d94460220fa558a und den Regler dann mit einem selbst erzeugtem PPM Signal ansteuern. Dazu bastelte ich mir einen recht simplen Testcode, der zunächst 10 Sekunden lang einen 1ms Puls (+5V) erzeugt, gefolgt von 19ms LOW, immer hintereinander (sozusagen 0% Gas). Nach diesen ersten 10 Sekunden soll der Regler dann "Gas" geben ;) dazu werden ca. 1,3ms HIGH gefolgt von ca. 18,7ms LOW als PPM Signal erzeugt (also ca 30% Gas). Wäre nett wenn jemand sich mal den C-Code im Anhang anschauen würde, ist nicht umfangreich. Jetzt meine Frage, ist dieser Code geeignet um ein korrektes PPM Signal für den Regler zu erzeugen? Bislang zeigt der Regler keine Reaktion, wenn ich dieses PPM Signal auf den PPM- Anschluss (PB0) des Reglers gebe. Das PPM Signal meines Codes wird von einem Mega8 mit 8Mhz externem Quarzoszillator erzeugt. Hoffe jemand kann mir weiterhelfen, was ich falsch mache. Danke schonmal!! MfG Christian
Was verstehst du unter PPM ? Ich kenne das als Puls Position Modulation und das ist eher eine Kodierung um Daten zu übertragen, bei der der Dutycycle möglichst immer gleich bleibt. Gruß Hagen
mmh, ich hab letztens so ein Signal für einen Brushless-Regler mit einem Frequenzgenerator erzeugt. Den besten Erfolg hatte ich mit einem 10ms Grundsignal, dessen Pulswide ich von 1 ms bis 4 ms veränderte. Ab ca. 2ms startete der Motor und bei 4ms blieb er wieder stehen.
Was möchtest du denn genau wissen ? Ich weiss nicht worauf ich bei deinem Code achten soll...? Fehler bekannt ? PPM wird im Modellbau verwendet. Für die Funkfernsteuerung! Meinst du das oder vielleicht PWM ?
Sieh mal bei sprut.de nach, da ist alles dokumentiert. Da wird wohl auch stehen, daß 1,5ms die "Mitte" also Stillstand ist ... Ich habe keine praktische Erfahrung mit dem Einbau von Fahrtreglern also kann ich auch nicht sagen, ob 1ms oder 2ms dann Vollgas sind. Die Länge der Pause zwischen den Impulsen ist eher Nebensache, die Länge der Pulse wird aber genau vermessen.
Hi! Also soweit ich weiß brauchst Du zur Ansteuerung ein PWM-Signal. Mit dem PPM-Signal werden die Daten mehrere Kanäle übertragen! PWM lässt sich bei den Controllern recht gut realisieren, da viele diese Funktion bereits integriert haben ;-) Da es hierbei wahrscheinlich kein Fahrtregler, sondern ein Flugregler ist, werden die 1,5ms zwar die Mitte sein, aber der Motor dreht nur in eine Richtung, also ist die untere Grenze 1ms! Dies gilt allerdings für Servos! Ich gehe aber davon aus, daß dies bei deinem Regler auch so ist. Das muß eigentlich dokumentiert sein. Also PWM lässt sich sehr gut mit wenig Code realisieren!
Hallo C.S. deine Annahme, dass das PPM Signal das du brauchst ein alle 20ms wiederholter 1-2ms Impuls ist ist korrekt. Das ist für Servos/Brushless-controller etc... halt alles ausm Modellbau. 1ms ist 0 also kein Gas 1,5ms ist "neutralstellung" bei dir Halbgas 2ms ist Full Speed Dein Code sieht allerdings ziemlich daneben/unübersichtlich aus. Normalerweise macht man das mit einem der Timer und den Output Compare Match Registern -> PWM mit 50Hz (aka 20ms) und entsprechend der OCR1 die 1-2ms Pulslaenge. Da brauchst du dann nicht mal ne Interruptroutine. Einfach Register setzen, der Rest geschieht in Hardware. Du musst nur den richtigen Pin (z.B. OC1) als PWM Ausgang dann an deinen Brushless Controller haengen. Mach am besten nen 100Ohm Wiederstand dazwischen. cu Tarzanwiejane
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.