-
-
Neuer Benutzer
Öfters hier
RC Fernsteuerung mit AtMega auswerten
Ich Suche gerade nach einem passendem Board für die Steuerung eines ferngesteuerten Models. Ich habe das Arduino im Auge, da es sehr günstig ist und ich keine Features wie Motortreiber brauche, es sollen nur Servos und Fahrtenregler angeschlossen werden.
Meine Fragen sind:
1. Ich habe gelesen, dass man wenn man den Empfänger von einer RC Fernbedienung auswerten möchte, das Summsignal benötigt. Kann man auch die 4 einzelnen Kanäle des Empfängers auswerten?
2. Der Arduino wird über GCC programmiert und läuft mit 16mhz (AtMega8 oder AtMega16. Gibt es schon Beispiele, woran ich sehen kann, wie eine Fernsteuerung ausgelesen wird?
3. Benötige ich noch weitere Hardware oder kann ich den PW-Kanal direkt an die AtMega Pins anschließen? Ich habe in einem Board gelesen, dass noch ein Signalverstärker nötig ist.
-
Erfahrener Benutzer
Roboter Genie
Ich kann dir nur die erste Frage beantworten.
Du kannst natürlich auch alle Kanäle einzeln auswerten, aber da verschwendest du doch Pin, die Stelle zu finden, wo das Summensignal anliegt, ist garnicht so schwierig und die Software ist auch leicht.
MfG Christopher \
/
-
Neuer Benutzer
Öfters hier
Aber nicht jeder Empfänger unterstützt so ein Summsignal oder?
-
Erfahrener Benutzer
Roboter Genie
Doch schon, dahinter ist dann ein Chip, der das auswertet.
MfG Christopher \
/
-
Neuer Benutzer
Öfters hier
Muss ich dazu den Empfänger öffnen oder ist der an einem der Ausgänge? Bei dem Mikrokopter musste man extra einen speziellen Empfänger kaufen, der das Summensignal nach draußen führt, so wie ich das auf deren Homepage verstanden habe.
Edit: Ich habe eine Liste der kompatiblen Empfänger gefunden: http://www.mikrokopter.de/ucwiki/RC-Empf%C3%A4nger
Dann brauche ich jetzt nur noch den Code, der das Summensignal verarbeiten kann...
-
Erfahrener Benutzer
Roboter Genie
Du musst den Empfänger öffnen.
Es gehen nicht nur die Empfänger, die dort aufgelistet sind, es geht jeder billige Chinaempfänger, man muss halt nur die richtige Stelle finden.
Stimmt also nicht, dass man extra einen speziellen Empfänger kaufen muss, aber die meisten die sich dort dieses Fertigzeug kaufen, sind wohl nicht dazu in der Lage, desshalb...
Welche Programmiersprache?
MfG Christopher \
/
-
Neuer Benutzer
Öfters hier
Dann werde ich mir bei Ebay einen günstigen Empfänger ersteigern. Ich hab hier noch so eine 4 Kanalfernsteuerung von einem Modellhelicopter mit 35Mhz. Sie stammt von einem dieser kleinen Helis für 130-150€. Die sollte doch wohl mit jedem Empfänger dann kompatibel sein oder?
Die Programmiersprache ist C. Ich benutze als ein speziell für AVRs gebautes GCC.
-
Erfahrener Benutzer
Roboter Genie
Ok.
Bei der Umsetzung in C kann ich dir wohl nicht helfen, aber ich kann ja mal meine Auswertung bescheiben.
Empfänger mit 5Vversorgen, PPM signal suchen (Empfänger öffnen-> Datenblatt vom IC suchen->PPM rausführen; wenn du es nicht selbst findest, kannst du ja die Bezeichnung hier posten).
Das PPM Signal am AVR auf INT0/1/2 legen.
Nun Timer und Interrupt konfigurieren. Variable für Kanal und für die einzelnden Kanäle.
Wenn der Interrupt ausgelöst wird, guckst du ob Kanal 1 (usw.) ist, wenn ja, dann schreibst du den Timerwert in die Variable für den Kanal (Kanal_1) danach erhöhst du die Variable um 1, damits weiter geht.
Danach frag ich ab ob der Timerwert größer als 3ms ist, wenn ja setz ich Kanal auf 1 (Pausenerkennung) und das wars.
Vielleicht verstehst du, wie ich das meine und kannst was mit anfangen
MfG Christopher \
/
-
Neuer Benutzer
Öfters hier
Gut, danke. Ich denke mal, dass das hier das richtige sein wird: http://www.ulrichradig.de/home/index.php/avr/avr_-_rc
Jetzt verstehe ich auch die Theorie dahinter
-
Neuer Benutzer
Öfters hier
Ich habe mir jetzt ein ACT Pico 4 bei Ebay gekauft. Läuft alles super. Ich werte mit diesem Code http://www.arduino.cc/cgi-bin/yabb2/...020386/156#156 den Empfänger aus. Jedoch habe ich wenn ich den Empfänger mit dem Arduino Board verbinde ein leichtes Zittern der Servos an allen Kanälen (wenn ich die Servos direkt an den Empfänger anschließe). Auch schwanken die ausgelesenen Werte ein wenig. Wenn ich vom Netzgerät auf Batterie umstelle, wird es ein wenig besser. Ich denke mal, dass man irgendwie die Strom und Signalleitung entstören sollte, der Empfänger selbst scheint in Ordnung zu sein. Habe ihn mal unangeschlossen ausprobiert, nur mit einem Servo und Batterie. Hat irgendwer eine Idee/Schaltung? Zwischen Pin und der Signalleitung habe ich schon einen 180 Ohm Widerstand gelötet, was eine kleine Verbesserung gegeben hat.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen