Hallo,
ich hab einige Stunden erfolglos damit zugebracht, das Infrarot-
Protokoll (Ferngesteuerter 3- Kanal- Mini Helikopter) zu analysieren um
es nach zu programmieren.
Anfangs war ich der Meinung, es sei so eine Art RC5- Code mit nem
anderen Timing. Dass scheint aber nicht der Fall zu sein da die
Übertragung eines RC5- Codes unabhängig vom Inhalt immer gleichlang ist
(0- Bit braucht gleichlang wie 1- Bit). Bei mir ändert sich die
Gesamtlänge des demodulierten Signals wenn ich den
Gashebel betätige!
Dass es sich um ein RC5- ähnliches biphasenkodiertes Protokoll handelt,
erkenne ich ja daran, dass es sowohl lange high- wie auch lange low-
Pegel gibt oder lieg
ich da falsch?
Mit dem Projekt "infrared multi-protocol decoder" von Frank Meyer bin
ich auch nicht weiter gekommen, es ist also definitiev was HErsteller-
Spezifisches.
Ich hatte vor, die korrekte Zeit zu ermitteln die ich zum Abtasten
benötige, also z.B. alle 1,2ms prüfen ob high oder low anliegt. Die
Zeiten die ich ermittelt hab, passen aber alle nur einen Teilabschnitt
des Signals. Auch wenn ich in meinem Sample- Fenster die Flanken und
nicht den Pegel prüfe, komm ich auf keinen grünen Zweig.
Oszi- Screenshot im Anhang, invertierter Kanal am IR- Demodulator!
Hat jemand einen Denkanstoß für mich?
Oh man, und nochmal Sorry. Ich hab gestern Abend noch gesucht ob ich was
passendes im Forum finde.
Kann jemand meinen Post in den Thread von Phillip verschieben?
Der passt wie angegossen schähm
Interessante Seite!
Leider passt meiner Meinung nach keins von den vorgestellten
Protokollen. Ich weiß nicht warum ich bei dem Signal nichts brauchbares
finden kann. So trickreich sollte die ir- Übertragung ja nicht sein...
alle 130ms ein komplettes telegram mit 2 Startbits, Hauptrotor 1,
Hauptrotor 2, Heckrotor und noch zwei- drei bits für die Korrektur-
Taste. Achso, und natürlich noch zwei bits für den Kanal (A,B,C)
Ich klemm mich wieder hinters scop...
Ist die Anzahl der steigenden Flanken bei allen Paketen gleich? Dann
würde ich einfach den Abstand zwischen diesen messen und mit einer
vorgefertigten Tabelle vergleichen bzw. mit einer solchen anfertigen.
Steigende Flanken sind es immer gleichviel.
Mir ist nicht klar wie du das meinst. Also die Dauer zwischen pos - pos
Flanken messen, lange = logisch 1, kurz = logisch 0 bringts hier ja
nicht. So hast du es aber auch nicht gemeint??!
Oder meinst du mit Tabelle erst mal raus finden welches die Nutzdaten
sind?
? ALso mehr sowas wie ein analoges Signal?
Also am Heli werden eben drei motoren über pwm gesteuert.
Da es ein billig- flugobjekt ist (~40 euro) gehe ich davon aus dass die
PWMs nicht alzu hoch aufgelöst sind (muss mal messen).
Wenn ich dich richtig verstehe, würden die PWMs dann nur drei Stufen
haben, dass kann nicht sein.
Ich steh immer noch aufnm Schlauch!!
Genau diese Sache, dass es vier unterschiedliche Pulslängen im ir-
signal gibt, macht mich stuzig. kurz LOW lang LOW kurz HIGH lang HIGH
ok, langsam kann ich ein Muster erkennen.
Wenn ich das "startbit" nicht mitzähle, hab ich genau 16 abschnitte (16
mal fallende - fallende flanke)
Jeder dieser abschnitte kann 4 Werte annehmen
(kurz-kurz | kurz-lang | lang-kurz | lang-lang).
Ok, ich glaub damit kann ich was anfangen, nächstes Jahr :-))
Vielen dank schonmal für die Hilfe.
Ich Berichte dann über erfolg oder misserfolg, Guten Rutsch!
@user: Nochmal danke!
Ich hab jetzt ne kleine routine geschrieben:
- Pulslängen (high und low) des IR- Signal in ein array einlesen, sind
genau 32 zeiten.
- auswerten: immer ein Low- und das darauf folgende High- timing
vergleichen:
- LOW kurz | HIGH kurz --> 0
- LOW kurz | HIGH lang --> 1
- LOW lang | HIGH kurz --> 2
- LOW lang | HIGH lang --> 3
... ergibt 16 x 4-Bit Werte...
Wenn ich im uart der 0=A, 1=B, 2=C, 3=D zuordne und an der fernbedienung
spiel, ist klar zu erkennen welche bereiche für beschleunigung, vor-
zurück, links- rechts sind!!!
BAB BABA BAB ACA ADA
| | | | |___ Checksumme (verändert sich bei egal welcher
taste)
| | | |_______ Frequenz und Korrekturtaste
| | |___________ Vorwärts - Rückwärts
| |________________ Drehzahl Hauptrotoren
|____________________ Links - Rechts
Ähm, es handelt sich übrigens um einen Mini- Hubschrauber der Firma
AMEWI Modell Firestorm.
@Jörg: NZR funktioniert meines erachtens auch nur wenn man feste
samplezeiten hat. Meine Signal- länge ändert sich aber!
Thanks!
Hi Mainster,
ich habe das für einen Graupner Nano Star mit Infrarot Fernbedienung
auch schon mal analysiert, eventuell kannst Du Dir vom Graupner Code
etwas brauchbares verwenden und auf Deinen Code übertragen.
http://www.voxsoft.de/fprojekt.htm
Hallo,
ich habe ebenfalls einen Hubschrauber der Marke AMEWI Modell Firestorm.
Bei mir sieht der Code jedoch etwas anderst aus als auf deinem Bild.
Hast du den IR Code schon erfolgreich entschlüsselt und zum laufen
bekommen?
Gruß Max