Anzeige 
RC-Network Hangflugführer
Seite 1 von 25 1234567891011 ... LetzteLetzte
Ergebnis 1 bis 15 von 365

Thema: Graupner HoTT Telemetrie-Sensoren Eigenbau DIY | Telemetrie-Protokoll entschlüsselt

  1. #1
    User
    Registriert seit
    31.07.2011
    Ort
    Berlin (Mitte / Alexanderplatz)
    Beiträge
    40
    Daumen erhalten
    0/0
    Daumen vergeben
    0/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard Graupner HoTT Telemetrie-Sensoren Eigenbau DIY | Telemetrie-Protokoll entschlüsselt

    Graupner-Telemetrie-Protokoll "entschlüsselt":
    Die gute Nachricht zuerst: die serielle Kommunikation ist seit gestern abend klar! :-)
    Leider bin ich E-Technik-Laie. Kann nur etwas programmieren, aber kenne mich mit Hardware nicht so gut aus. Daher suche ich Mitmacher für ein spannendes Gemeinschaftsprojekt! Lust?


    Zusammenfassung / Abstract:
    Es soll ein sehr leichter Spannungssensor und evtl. Höhensensor entwickelt werden, der an den Empfänger GR-16/12 angeschlossen werden kann. Innerhalb der nächsten Wochen/Monate soll ein funktionierender Prototyp entstehen und im Flug getestet werden.

    Die Ausgangslage / Ziele:
    Die Firma Graupner bietet mit ihrer HoTT(R)-Technologie meines Erachtens eine exzellente Fernsteuerung an. Die Sensoren sind prima, ich setze sie seit April oft ein.

    Es gibt nur leider ein Problem: Für kleine Slowflyer, Shockies, Merlin & Co. sind die im Augenblick angebotenen Sensoren leider zu groß und zu schwer. Darum möchte ich gerne
    selbst einen einfachen Spannungssensor für bis zu 3 Lipozellen entwickeln. Das Ganze soll mit Kabeln, Schrumpfschlauch und Vorwiderständen höchstens 8-10 Gramm wiegen. Realistisch ist ein robuster, alltagstauglicher Sensor unter 20 €. Ich sehe das als Übergangslösung solange, bis die Firma Graupner selbst einen kleineren Sensor ins Angebot nimmt. Verkaufen möchte ich nichts, sondern das zu entwickelnde Sensorboard als Open Source der Allgemeinheit kostenlos zur Verfügung stellen


    Vorschlag für einen Projektnamen:
    Ein Projekt braucht einen Namen
    "open tecodino-Sensor".
    Dies steht für telemetry compatible arduino sensor
    Da die Markenrechte der Firma Graupner auf keinen Fall geschädigt werden dürfen, möchte ich darauf hinweisen, dass hier Markennamen wie HoTT oder Graupner schützenswert sind und in diesem Thread nicht weiter verwendet werden sollten! Außer, um darauf hinzuweisen, dass man zum Betrieb des tecodino-sensors noch einen original HoTT-Empfänger von Graupner kaufen sollte!

    Anschluss des Tecodinos an den Empfänger:
    Die Graupnermodule z.B. GAM, wird mit einem üblichen Servokabel an einen Empfänger z.B. GR-16 angeschlossen. Über die rote Litze des servokabels wird das Modul mit +4,8 V (?)Spannung versorgt. Die Sensoren liefern seriell diverse Messdaten über 2 Leitungen an das Empfängermodul (Braun = GND, Orange = Signal)

    Schema: General-Air-Modul <------> GR-16/GR-12 - - - - 2,4 Ghz > MX-16/12-Fernsteuerung/Sender

    Der neu zu entwickelnde Sensor soll genau so an die Empfänger angeschlossen werden:
    Tecodino-Sensor <------> GR-16/GR-12 - - - - 2,4 Ghz > MX-16/12-Fernsteuerung/Sender

    Das bedeutet, dass der Tecodino die serielle Kommunikation zum GR-16/GR-12 imitieren muss.
    Like it!

  2. #2
    User
    Registriert seit
    31.07.2011
    Ort
    Berlin (Mitte / Alexanderplatz)
    Beiträge
    40
    Daumen erhalten
    0/0
    Daumen vergeben
    0/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard Reverse-Engineering der Kommunikation

    Entschlüsseln der seriellen Kommunikation:
    Letzte Woche habe ich einen IKALOGIC-Logic-Analyzer mit 4 Kanälen bestellt
    und eine Freeduino-Experiermentierplatine zum Imitieren des herausgefundenen Protokolls.
    Am Sonntag wurde gleich probiert, die Kommunikation mitzulesen... sniffing
    Das Revers-Engineering verlief sehr easy.



    Ich habe nur die Signalkabel zum Sensor mit dem Logicanalyzer verbunden
    und versucht, die Signale bei 19200 Baud, 8 Bit als seriellen Datenstrom zu dekodieren.
    Die Versuchsanordnung ist hier abgebildet. Weil mir der GAM-Sensor bereits seit längerem zu schwer war, hatte ich im Mai das Gehäuse entfernt...also nicht wundern, wie komisch da aussieht...

    Nach 3 Stunden tüfteln (mein erstes Mal....), ergaben die Daten einen Sinn.
    Mit systematischem Verändern der Variablen konnte ich leicht sehen,
    wie sich die Sensordaten verändern, wenn man Spannung oder Höhe verändert.
    Drehzahl und Temperatursensor habe ich nicht, wurde nicht getestet.


    mit 3 Einzelzellen-Lipo
    Frage des Empfängers (request) 80 8d:
    Antwort des General-Air-Modul: 00 7c 8d 00 d0 cf cf 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f2 01 30 75 78 00 00 00 00 00 00 00 80 7d 84 00

    ohne Einzelzellen Lipos
    Frage des Empfängers (request) 80 8d:
    Antwort des General-Air-Modul: 00 7c 8d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f1 01 30 75 78 00 00 00 00 00 00 00 80 7d 15 00


    Man sieht deutlich dass Byte 5, 6 und 7 die Spannung der Lipozellen kodieren

    Volt: 4.12, 4.12, 4.12
    Bytes: CE, CE, CE

    Volt: 0.3, 4.12, 0.0
    Bytes: 0f, ce, 00

    Volt: 0.0, 0.0, 4.04
    Bytes: 00,00,ca

    Man kann also sagen: der Hexwert ist die Hälfte der Spannung.
    CA (dezimal 202) entspricht 10 x 2 x 202 mV = 4.04 V
    OF (dezimal 15) entspricht 10 x 2 x 202 mV = 0.30 V

    Interessant ist, dass die Graupner-Telemetrie offenbar nur 0.2 mV-Schritte kodieren kann.


    Im nächsten Schritt wurde der Logicanalyzer nicht im record-Modus verwendet,
    sondern zum Playback. Wenn die gespeicherten Daten zurück gesendet wurden,
    wurde auf dem Telemetrie-Display und die korrekte Spannung und Höhe angezeigt.

    Die Höhe -10 bis 234 Meter wird im vierten Byte kodiert.
    Ich schätze, dass ein weiteres Byte irgendwo die Zehnmeter-Stufen kodiert,
    so dass ca. 2700 Meter abgebildet werden können. [?? stimmt das so ??]

    Nun müsste man dieses Protokoll mit dem Arduino nachahmen
    und am Arduinoboard gemessene Spannungen korrekt kodieren.... ;-)
    Angehängte Grafiken          
    Like it!

  3. #3
    User
    Registriert seit
    31.07.2011
    Ort
    Berlin (Mitte / Alexanderplatz)
    Beiträge
    40
    Daumen erhalten
    0/0
    Daumen vergeben
    0/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard Anschluss der Spannungssensorik, Hilfe

    Jetzt geht's ans Programmieren....
    Dazu brauche ich Hilfe von jemanden, der sich mit Widerständen & Co.
    auskennt, ich habe Angst, das Board zu zerstören....


    Frage: ist das, was unten steht ok??


    Ausgangslage:
    Der superleichte und kleine Arduino Pro Mini hat nur
    eine Größe von 18x33x4 mm und wiegt ca. 2 Gramm
    (Quelle: http://www.watterott.com/index.php?p...duino+pro+mini)
    Es gibt Versionen für 3,3 oder 5 Volt, so dass die normale Spannung ausreicht,
    die regulär aus dem Telemetrieanschluss des GR-16-Empfängers kommt.
    Ich hoffe, dass die kleinen Arduinos relativ akku-sparend arbeiten.

    Grundsätzlich kann man angeblich einen Analogeingang des Arduino mit
    mit einer LiPo-Zelle verbinden, um die Spannung zu messen.
    Der User GeKoch hat dazu folgenden Vorschlag:


    Vbattery
    |
    R1
    |
    -------------- Arduino analog pin
    |
    R2
    |
    Ground

    (Quelle: http://www.arduino.cc/cgi-bin/yabb2/...num=1222109476, 22.09.2008)
    Like it!

  4. #4
    User
    Registriert seit
    13.08.2007
    Ort
    NRW
    Beiträge
    618
    Daumen erhalten
    2/0
    Daumen vergeben
    1/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard

    Hi,

    für die Lipo Überwachung solltest du schon die einzelnen Zellen messen. wenn Du bei Pro mini bleiben willst, am besten ein Sensor spezifisches Basis Board zum aufstecken machen.

    Bei den Daten ist sicher noch eine Checksum oder CRC dabei, schon überprüft?

    Gruß Ingo
    Like it!

  5. #5
    User
    Registriert seit
    31.07.2011
    Ort
    Berlin (Mitte / Alexanderplatz)
    Beiträge
    40
    Daumen erhalten
    0/0
    Daumen vergeben
    0/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard

    Hi Ingo,


    Heute Abend experimentiere ich weiter.
    Bin totaler Anfänger beim µicrocomputer-Entwickeln
    Vielleicht ist ATTiny oder eine andere Plattform besser geeignet.
    Ich bin erstmal ganz froh gewesen, dass ich Arduino entdeckt hatte
    (kann bisschen C/C++ und Java besser, Assembler leider nur in Grundzügen)
    Will aber lernen!!

    Es scheint für die Antwort des Sensor keine Prüfsumme zu geben.
    Muss das nachher nochmal systematisch prüfen, bevor ich die ersten
    Sensordaten nachahme.

    Der Empfänger sendet alle 200 ms einen Request.
    Und der Sensor antwortet mit einer Gruppe von 36 Bytes,
    wenn ich mich nicht verzählt hab. Offenbar unterscheidet
    sich die Antwort nur in den Datenbits.

    Vielleicht reicht es dem Empfänger-"Bus",
    wenn ein fester Datenrahmen nur "sinnvolle" Werte enthält?

    LG Stefan
    Like it!

  6. #6
    User
    Registriert seit
    23.01.2003
    Ort
    Bermatingen
    Beiträge
    105
    Daumen erhalten
    0/0
    Daumen vergeben
    0/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard

    Zitat Zitat von flying-doctor Beitrag anzeigen
    Entschlüsseln der seriellen Kommunikation:

    Interessant ist, dass die Graupner-Telemetrie offenbar nur 0.2 mV-Schritte kodieren kann.

    Hallo,
    interessante Sache !
    Du möchtest ein Sensor für Anschluss am Balancer?
    Zu Berüchsichtigen ist:
    Die Spannungen am Balancerstecker sind nicht die Einzelzellenspannungen sondern:

    Pin
    1 - Masse (-)
    2 - Spannung Zelle 1
    3 - Spannung Zelle 1+2
    4 - Spannung Zelle 1+2+3
    5 - u.s.w.....

    Da der Andurio nur ein Massepotenzial hat muss er die Differenzspannungen berechnen.
    Offensichtlich werden die Spannungswerte an den Empfänger mit 8 Bit (256) Auflösung gesendet.
    Somit sollte der Sender jede Zelle bis 5,12V anzeigen können.
    Der Andurio hat doch Analogeingänge mit 12 Bit , bei welcher Spannung am Eingang gibt er 4096 ( 12Bit ) aus ?

    Mich würde eher ein Sensor für die Gesammtakkuspannung interessieren. Würde diesen dann am Regler anlöten. Am GAM wird die Gesammtspannung ( bis 30 V ) ja auch ohne Balancerstecker ausgegeben, vermutlich mit 12 Bit Auflösung).
    Ich möchte nicht jedesmal den Balancerstecker in Flieger einstecken.

    Die Warnschwellen sollte man auch einstellen können, ich hoffe diese werden nicht im Sensor gespeichert, müsste man prüfen, einfach Schwelle am Sender einstellen und mit dem Simulator entsprechende Werte an den Empfänger schicken.

    Danke für deine Bemühungen
    Freue mich schon auf einen "Minisensor für die Akkugesammtspannung"
    Andi
    Like it!

  7. #7
    User
    Registriert seit
    31.07.2011
    Ort
    Berlin (Mitte / Alexanderplatz)
    Beiträge
    40
    Daumen erhalten
    0/0
    Daumen vergeben
    0/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard

    Zitat Zitat von ingo_s Beitrag anzeigen
    für die Lipo Überwachung solltest du schon die einzelnen Zellen messen.
    Ja! Stimme Dir voll zu! Unddrei Zellen sollten für kleine Flieger reichen.
    Graupner bietet Überwachung von 6 Zellen und Strommessung bis 40 A.

    Zitat Zitat von ingo_s Beitrag anzeigen
    wenn Du bei Pro mini bleiben willst, am besten ein Sensor spezifisches Basis Board zum aufstecken machen.
    Mir schwebt eher ein eingeschrumpftes Modul vor. Nur mit einem Servostecker
    und einem Lipo-Balancer-Anschluss. Einfach, leicht und trotzdem robust.

    Die Frage ist:
    wird man die Analog-Inputs mit Vorwiederständen als Spannungssensor missbrauchen können? Glaube schon, brauche nur noch Bestätigung von einem Elektriker/E-Technicker.
    Die Inputs verkraften nur < 50 mA...

    Mir mit maximal 4.1 Volt Lipospannung und 1 KOhm müsste man doch
    auf der sicheren Seite sein, oder?
    Like it!

  8. #8
    User
    Registriert seit
    20.10.2006
    Ort
    südl. München
    Beiträge
    2.680
    Daumen erhalten
    0/0
    Daumen vergeben
    0/1
    0 Nicht erlaubt! Nicht erlaubt!

    Standard

    Moin Stefan,

    einen Teil der Arbeit kannst Du Dir vereinfachen indem Du Graupner eine freundliche Mail mit der Bitte um übersendung der Protokollspec schickst.

    OK - das hat dann den Nachteil des NDA ...

    Gruß

    gecko
    Like it!

  9. #9
    User
    Registriert seit
    31.07.2011
    Ort
    Berlin (Mitte / Alexanderplatz)
    Beiträge
    40
    Daumen erhalten
    0/0
    Daumen vergeben
    0/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard

    Zitat Zitat von gecko_749 Beitrag anzeigen
    Moin Stefan,
    einen Teil der Arbeit kannst Du Dir vereinfachen indem Du Graupner eine freundliche Mail mit der Bitte um übersendung der Protokollspec schickst. OK - das hat dann den Nachteil des NDA ... Gruß, gecko

    Gute Empfehlung; Hast Du da Erfahrungen?
    Mit offizieller Anfrage habe ich auch schon überlegt, aber mich dann
    nicht getraut und durch selber entschlüsseln lernt man bestimmt mehr, oder?

    Reverse-engineering ist hier auch nicht verboten, weil solche einfachen Protokoll-Implementierungen keinen Schutz genießen. Außerdem funktionieren wahrscheinlich alle Sensor-Verbindungen ähnlich. Verboten ist es (zurecht), das Modell-Matching zu kopieren!
    Tun wir aber nicht!

    Selbstverständlich möchte ich der Firma Graupner in keinster Weise schaden!!
    Ganz im Gegenteil: ich kaufe bewusst ganz viele Sachen von Graupner und mache
    Werbung dafür, weil mich die gute Qualität wirklich überzeugt. Möchte ja keine gewerbliche Konkurrenz zu den ausgereiften Originalsensoren etablieren! Will für mich und ein paar Interessierte Sachen basteln, die ein mittelständisches Unternehmen nicht herstellt.
    Kann Graupner auch gar nicht, ohne gleichzeitig den Entwicklungs- und Wartungsaufwand aufzublähen.
    Like it!

  10. #10
    User
    Registriert seit
    20.10.2006
    Ort
    südl. München
    Beiträge
    2.680
    Daumen erhalten
    0/0
    Daumen vergeben
    0/1
    0 Nicht erlaubt! Nicht erlaubt!

    Standard

    Moin,

    ja ich hab da Erfahrungen - und zwar gute.

    Die Spec liegt hier - aber wie gesagt mit NDA.

    Ob ich aber damit etwas machen werde ist noch fraglich da sich inzwischen rausgestellt hat das die Nachrüstmodule keine Sprache können. Damit ist ein großer Vorteil für mich dahin.

    Gruß

    gecko
    Like it!

  11. #11
    User
    Registriert seit
    31.07.2011
    Ort
    Berlin (Mitte / Alexanderplatz)
    Beiträge
    40
    Daumen erhalten
    0/0
    Daumen vergeben
    0/0
    0 Nicht erlaubt! Nicht erlaubt!

    Frage

    Zitat Zitat von Elektro-Andi Beitrag anzeigen
    Hallo,
    Die Spannungen am Balancerstecker sind nicht die Einzelzellenspannungen sondern:

    Pin
    1 - Masse (-)
    2 - Spannung Zelle 1
    3 - Spannung Zelle 1+2
    4 - Spannung Zelle 1+2+3
    5 - u.s.w.....
    Könnte man nicht Pin z.B. 3 über einen sehr hohen Widerstand auf Masse legen
    und dann dahinter z.B. zwischen Pin 3 und Pin 4 die Differenz messen?
    Mit meinem Mulitmeter kann ich ja auch zwischen den Pins messen! ?
    oder irre ich?


    Zitat Zitat von Elektro-Andi Beitrag anzeigen
    Somit sollte der Sender jede Zelle bis 5,12V anzeigen können!
    Der Andurio hat doch Analogeingänge mit 12 Bit , bei welcher Spannung am Eingang gibt er 4096 ( 12Bit ) aus ? [...]
    Mich würde eher ein Sensor für die Gesamtakkuspannung interessieren. [...]
    Mit meinem GAM fliege ich auch immer nur mit Einzelzellspannung (erste Zelle),
    das ist sehr aussagekräftig. Bei 4,1 Volt geh ich fliegen und bei 3,4 Volt wird gelandet

    Man könnte doch auch "Spannungsteiler" z.B. 1:6 nutzen?
    Oder?? dann nur noch das Byte herausfinden, mit dem Graupner die
    Gesamtspannung kodiert? mit rund 5 Volt am Analoginput gingen
    Akkugesamtspannungen bis 30 Volt.

    Weiß jemand, wie man so einen Spannungsteiler auslegt?
    Widerstände? Wie groß? Wo die Spannung zum Analog-Input abgreifen?
    Kenn mich leider (noch) nicht aus

    Die AD-Wandlung schaff ich dann wieder alleine
    Like it!

  12. #12
    User
    Registriert seit
    13.08.2007
    Ort
    NRW
    Beiträge
    618
    Daumen erhalten
    2/0
    Daumen vergeben
    1/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard

    Hi,

    Du musst von der ADC Referenzspannung ausgehend einen Spannungsteiler berechnen mit dem du die maximal anliegende Spannung noch auflösen kannst. Bei mir 3.3V URef bis 4 Zellen gibt 47k zu 11k. Das ganze 4mal für jeden Pin und dann in der Weichware aus der Differenz die einzelne Zellenspannung berechnen. Den GND Pin sollte man 200 bis 300mV vorspannen um auch den Spannungsabfall auf den Zuleitungen (Lipo-Minus -> Regler -> Empfänger) mit berücksichtigen zu können. Die Störimpulse an den Spannungsteilern müssen per Ko. oder per Software gefiltert wrden.

    Gruß Ingo
    Like it!

  13. #13
    User
    Registriert seit
    31.07.2011
    Ort
    Berlin (Mitte / Alexanderplatz)
    Beiträge
    40
    Daumen erhalten
    0/0
    Daumen vergeben
    0/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard

    >>Bei mir 3.3V URef bis 4 Zellen gibt 47k zu 11k. Das ganze 4mal für jeden Pin und dann in >>der Weichware aus der Differenz die einzelne Zellenspannung berechnen.

    Das wird hinhauen. Hab gerade solche Schaltungen gegoogelt.
    Deine Anhaltspunkte für Widerstände helfen mir sehr, um das nachzuvollziehen!
    Danke.

    >>Den GND Pin sollte man 200 bis 300 mV vorspannen um auch den Spannungsabfall
    >> auf den Zuleitungen (Lipo-Minus -> Regler -> Empfänger) mit berücksichtigen zu
    >>können. Die Störimpulse an den Spannungsteilern müssen per Ko. oder per Software >>gefiltert wrden.

    Ok, Danke! das muss ich dann wohl mit einem E-Techniker vor Ort basteln:
    Also GND auf 0.3 Volt und kleine Kondesatoren, damit Störimpulse
    Spannungsteilern nicht zu vielen Schwankungen führen, oder eine Art von
    gleitendem Durchschnitt als Filter.

    Eilt ja nicht, wenn wieder Tage, wo man nicht fliegen kann,
    werd ich das schon lernen.
    Like it!

  14. #14
    User
    Registriert seit
    23.01.2003
    Ort
    Bermatingen
    Beiträge
    105
    Daumen erhalten
    0/0
    Daumen vergeben
    0/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard

    Zitat Zitat von flying-doctor Beitrag anzeigen


    Man könnte doch auch "Spannungsteiler" z.B. 1:6 nutzen?
    Oder?? dann nur noch das Byte herausfinden, mit dem Graupner die
    Gesamtspannung kodiert? mit rund 5 Volt am Analoginput gingen
    Akkugesamtspannungen bis 30 Volt.
    Hallo,
    habe mir den Atmega mal angeschaut: Analogeingänge mit 10 Bit aufgelöst. Eine Interne Referenzspannung mit 1,1V könnte man verwenden.

    Für bis zu 4 Zellen sollte der Spannungsteiler bei den 1,1V am Eingang auf 20V am Akku ausgelegt werden.
    Also:
    ADC Eingang gegen - (Masse) = 10K
    ADC Eingang gegen Akku + = 189K ( Einen änlichen nehmen und softwareseitig eichen )
    Metallfilmwiederstände 1% Toleranz.
    Grüße
    Andi
    Geändert von Gregor Toedte (16.08.2011 um 13:42 Uhr) Grund: formale Berichtigung Zitat
    Like it!

  15. #15
    User
    Registriert seit
    23.01.2003
    Ort
    Bermatingen
    Beiträge
    105
    Daumen erhalten
    0/0
    Daumen vergeben
    0/0
    0 Nicht erlaubt! Nicht erlaubt!

    Standard

    Hallo,
    bevor es einer merkt: Widerstand schreibt man natürlich ohne ie !
    Andi
    Like it!

Seite 1 von 25 1234567891011 ... LetzteLetzte

Ähnliche Themen

  1. Probleme mit Graupner HoTT Telemetrie
    Von Aeddche im Forum Fernsteuerungstechnik
    Antworten: 27
    Letzter Beitrag: 08.01.2012, 19:26
  2. DX8 Telemetrie Sensoren - DIY
    Von JST im Forum Fernsteuerungstechnik
    Antworten: 1
    Letzter Beitrag: 05.11.2010, 17:21
  3. Telemetrie für Graupner-IFS ??
    Von rmmx im Forum Fernsteuerungstechnik
    Antworten: 9
    Letzter Beitrag: 31.05.2008, 10:21

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •