www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik IR- Protokoll analysieren


Autor: Mainster (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Mainster (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, sehr schlechter Kontrast das Bild. Hier nochmal!

Autor: Mainster (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guckst Du Link am Ende dieses Thread in der Codesammlung : 
Beitrag "Silverlit Heli IR Fernsteuerung mit AVR"

Autor: Mainster (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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...

Autor: User (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Mainster (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: User (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier hast du halt 0=kurz, 1=mittellang, 2=lang.

Autor: Mainster (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
? 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

Autor: Mainster (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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!

Autor: Jörg G. (joergderxte)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann das eine NRZ-Kodierung ( http://de.wikipedia.org/wiki/NRZ-Code ) 
sein:
1= Pegelwechsel
0= Pegel halten

hth Jörg

Autor: Mainster (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@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!

Autor: Vox (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.