Hallo liebes Forum Vorweg ich und mein Mitstreiter sind nicht ganz neu im Mikrocontrollern. wir haben schon diverse Schaltungen und basstelleien probiert und erfolgreich abgeschlossen. Zurzeit Tasten wir uns langsam aber sicher an den Bau eines quadrocopter. Nein ich möchte nicht wissen das es schwierig is... Wir haben schon ein pwm Signa(rc-Empfänger) l eingelesen und anhand dessen ein anderes pwm Signal ausgegeben (Brushless motorregler) , war nicht ganz leicht der weg dahin aber gut. Nun leider reicht ein Kanal nicht um irgendwas sinnig zu steuern. Wir würden gerne mehrere pwm Signal empfangen und auswerten können. (Ausgabe klappt schon ) Nun verfügt der atmega8 leider nur über einen Interrupt pin und wir haben 6 Kanäle die wir lesen wollen. Internet schon wild durchforstet Foren zerstückelt und finger wund gegooglet. Leider ohne Ergebnis Kann uns irgendwer auf die Sprünge helfen? Wir schreiben in C nutzen Linux und usbasp Liebe grüße Robert
Tipp Fehler... Das kommt davon wenn einer programmieren und der andere löten kann Nicht Interrupt pin sondern natürlich den input compare pin haben wir genutzt.
Ihr habt einen RC-Sender und RC-Empfänger mit mehreren Kanälen. Werden da nicht die PWM-Vorgaben "eine nach der anderen" übertragen?
Wenn ihr das Signal des Emfpängers vor dem internen Schieberegister des Empfängers abgreift, habe ihr alle Servosignale auf einer Leitung und nicht einzeln wie an den Servoausgängen. Der Abstand zwischen den Pulsen entspricht dann der Servostellung. Warum nehmt ihr übrigens die alte Mega8 Grotte? Mega48/88/168/328 sind pinkompatibel und haben alles, was der Siedler braucht, inklusive BLDC mit PWM.
:
Bearbeitet durch User
@Oldie nee das sind 6 Anschlüsse mit je ein PWM Signal. Das wäre sonst PPM glaube ich... @Matthias: das, mit dem anderes Signal abgreifen, was ja dann PPM(?) wäre hab ich auch schon überlegt hatte aber Angst vor der Kombi Deletanz und Empfänger... den Mega88 haben wir auch da. Wegen der 6(?) pwm Kanäle hatten wir den mal auf Vorrat bestellt, hat der mehr input compare pins? ich durchforste gleich das Datenblatt wenn ja dann danke für den Wink wenn "nein" dann: Brauche ich nen Oszilloskope um die PPM Stelle vom RC-Empfänger zu finden? vielen Dank schonmal [EDIT] wofür steht BLDC?
:
Bearbeitet durch User
Im RC-Bereich spricht man in dem Zusammenhang vom Summensignal. Bei älteren Empfängern (35MHz Ära) konnte das bei fast jedem Empfänger abgegriffen werden. Bei aktuellen Empfängern (2.4GHz) gibt es dieses Signal idR nicht mehr. Hinzu kommt, dass die einzelnen Servoimpulse bei manchen Herstellern gruppenweise synchron und manchmal auch öfter als mit 50Hz ausgegeben werden. Die Rekonstruktion des Summensignals ist daher oftmals nicht so trivial. Die meisten Hersteller bieten aber Empfänger an, die auch ein Summensignal ausgeben können. Womit ihr euch derzeit beschäftigt, ist daher eher eine unnötige Übung. der Link könnte euch weiterhelfen: http://jreise.de/PPM/R617FS.html zu dem Thema vielleicht auch gut zu wissen - es gibt positive und negaitve PPM Codierungen. Spektrum Satelitenempfänger kommunizieren per UART. Sourcecode findet ihr auch beim MultiWii Projekt.
Robert M. schrieb: > den Mega88 haben wir auch da. Wegen der 6(?) pwm Kanäle hatten wir den > mal auf Vorrat bestellt, hat der mehr input compare pins? ich > durchforste gleich das Datenblatt wenn ja dann danke für den Wink Der ATmega88 hat PCINT-Eingänge, an denen jede Flanke einen Interrupt auslösen kann. In Verbindung mit Timer1 kann man damit PWM-Signale vermessen, allerdings nicht so genau und hoch aufgelöst wie mit dem ICP1-Eingang. Bei geschickter Programmierung sollte eine Auflösung von 1-3 µs möglich sein.
.. schrieb: > Bei aktuellen Empfängern (2.4GHz) gibt es dieses Signal idR nicht mehr. In meinem Empfänger gibts intern den EmpfängerIC und den PPMGeneratorIC. Beide sind per UART verbunden. Ganz praktisch kann man das Signal abgreifen. Das sind immer 2-Byte-Werte mit 10Bit Auflösung - ohne Gefummel
Vielen dank für eure Hilfe wir werden es wahrscheinlich einfach mit dem Mega88 machen die Möglichkeit Adapter werden wir auch nicht aus dem Auge lassen einfach um es mal gemacht zuhaben =) wenn wir weiter sind werde ich hier nochmal schreiben
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.