"Eigenbau"-2,4 GHz-Sender

    • Offizieller Beitrag

    Hallo Arne,


    die Generierung von zeitkorrekten Signalen per Timergesteuerten Interrupts ist schon gut, jedoch nicht ideal. Zum einen sorgt die unterschiedliche Ausführungszeit bis zum Setzen der Outputs für Ungenauigkeiten. Schlimmer wirds, wenn ein zweiter Interrupt die gesamte Ausführung verspätet.


    Besser wäre es, die Hardware-PWM-Einheit zu verwenden. Hier kannst du auch per Interrupt, der auf den Timer compare match ausgeführt wird, die nächste Flanke vorprogrammieren, die dann vom Programm unabhängig timergesteuert gesetzt wird. Jenes Timerevent kann dann wieder den Interrupt auslösen. Schau dir mal das (etwa 400 Seiten lange) Datenblatt des auf dem Arduino verwendeten Atmel AVR Prozessors an. Unter 16-bit Timer/Counter ist alles sehr gut dokumentiert. Wenn du Fragen hast, frag ruhig nochmal nach.


    Viele Grüße,
    Stefan

  • Hallo zusammen,


    ich hatte auch mal einen Eigenbausender für Echtdampf-Loks mit Schieberegler... Und ich hatte sowas auch schon mal mit Drehreglern...
    Und ich bin mit großer Freude zurück zum klassischen Kreuzknüppel gekommen.


    Warum? Weil sich nur so der Regler feinfühlig genug steuern läßt um vorbildnah zu fahren.
    Wer nur auf ebener Tischbahn seine Runden ziehen mag, dem mag es vielleicht egal sein und wer lieber etwas flotter unterwegs ist sowieso.


    Wenn es aber darum geht langsam und konstant zu fahren, so hatte ich sowohl mit Schieberegler als auch Drehregler nicht das Gefühl fein genug steuern zu können, allein schon weil der Hebel (Im Sinne von Hebelgesetz) fehlt.


    Beispiele:
    Anfahren einer Lok - Es wird ein gewisser Scheiberkastendruck benötigt bis die Lok sich in Bewegung setzt, unverzüglich danach wird der Regler wieder ein ganzes Stück geschlossen, denn zum reinen rollen/fahren wird weit weniger Dampf benötigt als zum Anfahren.
    Neigungsänderung, Kurven - Wenn ich meine 3,5%-Steigung in Angriff nehme, so muß ich in den Kurven fein nachregulieren können, damit mir der Zug nicht verhungert, gleichzeitig aber beim Übergang in die Gerade wieder zurück regeln könne, damit mir der Zug nicht durch geht. Diese feinen Abstimmungen lassen sich besser mit dem Kreuzknüppel ausführen.


    Meine Ansichten kommen vielleicht aber auch daher, daß ich selber viele Stunden auf meinen 5"-Loks zugebracht habe und somit ein Gefühl dafür habe wie sich Regler Haptik und Fahrverhalten eine Lokomotive anfühlen und ich großen Wert auf Vorbildnahe Betriebsweise lege (was mich leider zu oft zum Hinderniss werden läßt...)


    Aber wie immer gilt - jedem das seine ;)
    Grüße, Gerd

  • Hallo Gerd,


    was du geschrieben hast könnte ich geschrieben haben. Genau so ergeht es mir. Nur glaube ich nicht ganz an den Vorteil von Knüppeln. Ich glaube eher es ist die exaktere Auflösung der industriellen Anlagen. Die überlegene Reichweite sowiso. Bei Dampftreffen sind diese Steuerungen fast unbrauchbar. Was ich möchte das wäre eine Steuerung ohne den ganzen Firlefanz. Was nützen uns Heli-Programme und Loopings ? Aber trotzdem den Komfort moderner Steuerungen .


    Hans

  • Hallo zusammen,


    ich denke, welche Bedienelemente einem am meisten liegen muss jeder für sich entscheiden. Ich für meinen Teil nutzen schon seit 3 Jahren einen Deltang-Sender mit Drehpoti für meine Katie ohne Schwierigkeiten. Die Kreuzknüppel meiner Futaba waren mir stets zu leichtgängig. Ich habe immer eine Ratsche auf den Regler gebaut, damit er sich nicht versehentlich verstellt. Hab grad mal gezählt, die hat ca 30 Stellungen.


    Es wäre natürlich problemlos denkbar, ein Poti mit langem Hebel oder sogar einen Kreuzknüppel aus einer Fernbedienung zu verbauen. Alternativ sollte man bedenken, dass es die Schiebepotis in diversen Längen gibt. Ich habe derzeit 30mm Weg verbaut. Es gibt aber auch 45, 50, 75 und sogar 100mm. Das ist mehr als man mit jedem Standardknüppel hat.


    Hallo Hans,

    Zitat von damoba

    Ich glaube eher es ist die exaktere Auflösung der industriellen Anlagen.


    Das Transmittermodul unterstützt pro Kanal 2048 (11bit) Schritte. Mir ist keine Hobby-Anlage bekannt, die eine höhere Auflösung hat. Was meinst du mit "industriellen Anlagen"? Welche Auflösung haben die? Allerdings löst mein uC nur mit 10 bit auf. Hinzu kommt natürlich, dass die meisten analog-Servos ohnehin maximal 10bit verarbeiten.
    Tests haben ergeben, dass eine Änderung meines internen Variablenwertes für einen Kanal um 1bit zu wenigstens einer akustischen Tätigkeit am Servo führen. Somit scheint mir die Auflösung auch zur Verfügung zu stehen. Genauere Tests lassen sich eigentlich nur mit einem Oszilloskop am Empfänger durchführen.


    Zitat von damoba

    Die überlegene Reichweite sowiso.


    Zumindest bei meinem Sender scheint die Reichweite kein Problem (für unsere Anwendungen) darzustellen. Ich wage zu bezweifeln, dass sie meinen Futaba-Anlagen unterlegen ist. Ob die durch andere Sender beeinträchtigt wird, müssen Tests auf Veranstaltungen ergeben. Mir ist es eigentlich auch egal, ob die Reichweite 1 oder 2km beträgt. Hauptsache die Verbindung reißt nicht ab, wenn ich die Lok steuere. Und meine Empfänger sind immer ganz brav und absolut nicht Förderlich für den Empfang inklusive der Antenne von Messing umhaust. Und da reißt derzeit die "optische Verbindung" durch meine Augen zuerst ab.
    Das gute an meinem Orange-Empfänger ist, dass er nach 1 Sekunde ohne Empfang in die Failsafeposition geht und durch eine rote LED auch bei wieder bestehender Verbindung signalisiert, wie häufig die Verbindung seit Einschalten unterbrochen war. Damit kann man am Ende des Spielens mit Sicherheit feststellen, ob man Empfangsprobleme hatte oder nicht.


    Zitat von damoba

    Bei Dampftreffen sind diese Steuerungen fast unbrauchbar.


    Welche Steuerungen genau meinst du nun?


    Viele Grüße
    Arne

  • Hallo Stefan


    Zitat von stth

    Besser wäre es, die Hardware-PWM-Einheit zu verwenden. Hier kannst du auch per Interrupt, der auf den Timer compare match ausgeführt wird, die nächste Flanke vorprogrammieren, die dann vom Programm unabhängig timergesteuert gesetzt wird. Jenes Timerevent kann dann wieder den Interrupt auslösen.


    Danke für diesen Hinweis. Seitdem ich sichergestellt habe, dass während meiner ISR-Methode keine Interrupts auf Input-Pins und auch sonst kein Code aus der Loop-Methode ausgeführt wird (letztere beschäftigt sich mit delay). Hab ich eigentlich keine Probleme mehr.


    Zitat von stth

    etwa 400 Seiten lange


    Genau deswegen werde ich anstelle dieser Lektüre mit meinen Loks spielen gehen und erst dann darauf zurückkommen, wenn mir entweder langweilig ist oder ich Verbesserungsbedarf sehe :flt: Trotzdem Danke, habe mich zumindest kurz mit der Materie beschäftigt und sie für interessant befunden :BT


    Viele Grüße
    Arne

  • Hallo Arno,


    in meiner HG 4/4 wurde die Graupner Anlage gegen eben eine solche Deltang-Steuerung ausgetauscht. Kollegen und ich selbst stellten danach fest dass die Lok nicht mehr so feinfühlig zu fahren war.
    Beim vorletzten Dampftreffen in Schramberg zeigten sich unerklärliche Fehlfunktionen. Dazu war hinter jeder Stützsäule kein Funkkontakt. Die Reichweite an sich ist nicht das Problem, aber die Zuverlässigkeit.


    Hans

  • Hallo Hans,


    ok, jetzt verstehe ich. Dein Problem bezogen auf den Empfang kenne ich und es war der Auslöser für dieses Projekt: Ich möchte meine Deltangsender durch was geeigneteres ersetzen. Derzeit habe ich im Garten mit meinen Deltang-Sendern das Problem, dass ab etwa 5m der Empfang abreißt.


    In Bezug auf die Feinfühligkeit habe ich bei Deltang noch nicht drauf geachtet. Um das zu untersuche wäre es wirklich eine Überlegung, die PWM-Signale empfängerseitig mal mit einem Oszilloskop zu überwachen. Nur sowas hab ich nicht und damit kenne ich mich nicht aus. :WN
    Was für einen Empfänger hast du in deiner HG 4/4 verwendet? Deltang? Spektrum?


    Ich werde auf jeden Fall weiter testen und berichten. Das EDHT in Köln wird dann der (erste) Veranstaltungstest, im Februar dann in Hamburg. Vielleicht werde ich auch nochmal sämtliche 2,4GHz Anlagen die ich habe in einem Raum einschalten und versuchen den Empfang zu stören. Ich werde weiter berichten. Ihr kennt mich und wisst, dass ich auch nicht funktionierendes nicht für mich behalte :HL


    Viele Grüße
    Arne

  • Ok, interessant. Ich hatte zu Anfang Probleme mit meinem ersten Transmittermodul, dass ich ständig Verbindungsabbrüche bekam, solange es im Auto-Modus selber Entschieden hat, welchen Funkstandard es verwendet:

    • DSM2 1024
    • DSM2 2048
    • DSMX
    • 11 oder 22ms


    Erst als ich den Auto-Modus abgeschaltet habe und DSMX / 22ms festgelegt hatte, war das Problem Vergangenheit. Die gleichen Probleme hatte ich übrigens mit einem 4 Kanal Spektrum-Empfänger den ich mir von Gerd N. geliehen hatte. Vielleicht nutzt ja das Deltang-Modul einen "Dialekt", den die Orange/Spektrum-Empfänger nur unzuverlässig empfangen...

  • Hallo zusammen,


    gestern habe ich einen Sender für eine elektrische Lok aufgebaut. Verwendet habe ich wieder Streifenrasterplatinen. Da die Einbauhöhen von meinem Poti und den Tastern unterschiedlich sind, habe ich einen Versatz durch eine Stift-/Buchsenleiste realisiert. Dabei habe ich nur die Kontakte verbaut, die auch benötigt werden:


    Auch das uC-Board wird auf Buchsenleisten gesteckt.


    Nach dem Einlöten der Bedienelemente, ein paar Unterbrechungen der Leiterbahnen und diversen Drahtbrücken sieht der Sender so aus:


    Das Transmittermodul kann hinter der oberen Platine verschwinden. Damit wäre die Abmessungen 92 x 67 x 26mm:


    Als Empfänger soll ein Rx61-1 von Deltang verwendet werden. Als Funktionen sind geplant:
    - Geschwindigkeit über das Poti
    - Fahrtrichtung über die beiden Taster darüber (alles zusammen wird dann aber auf Kanal 1 ausgegeben)
    - 2x Licht (2 Taster ein/aus)
    - 1x Hupe (Taster)


    Die beiden LEDs neben den Fahrtrichtungstastern geben Auskunft über die gewählte Fahrtrichtung. Dabei wird bereits durch die Software abgefangen und entsprechend hektisches Blinken signalisiert, dass die Fahrtrichtung nur dann geändert werden kann, wenn das Poti auf 0 gedreht wurde.
    Die Software ist noch nicht ganz fertig, die beiden Lichttaster werden noch nicht ausgewertet. Sobald das der Fall ist würde ich noch einmal den gesamten Quellcode einstellen.


    Theoretisch wäre es sogar denkbar mit diesem Sender eine einfach Echtdampflok mit Regler, Umsteuerung und Pfeife zu steuern, wenn man mit der Umsteuerung lediglich 3 Positionen benötigt und auch die Pfeife mit 2 Positionen auskommt.


    Als nächstes muss ich mir Gedanken machen, wie man mit den zur Verfügung stehenden Mitteln Gehäuse fertigen kann, die exakt zum Innenleben passen, aber auch einigermaßen "geschmeidig" in der Hand liegen. Der EKB-Prototyp ist zwar von der Größe OK, aber eben sehr "kastig". 3D-Druck wäre eine Option, aber da scheue ich etwas die Kosten. Vielleicht bringen wir dem Laser doch noch das Gravieren von Rundungen bei...


    Viele Grüße
    Arne

  • Hallo zusammen,


    um den Exkurs "elektrische Akkulok" zu beenden, hier noch ein kurzes Video zur Verdeutlichung der Funktionen:


    [youtube]

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.
    [/youtube]
    In den Untertitel habe ich ein paar Erklärungen hinterlegt.


    Zwei Taster sind noch ohne Funktion, da der Lok neben diversen Details auch noch das Licht fehlt. Derzeit wird also nur Ch1 (Motor) und Ch5 (Hupe) verwendet. Geplant ist das Licht vorne über Ch2 (P3 am Rx61-1) und hinten über Ch4 / P4 zu schalten. Mal sehen wann es da weiter geht.


    Neben einem Gehäuse für diesen Sender muss ich nun erstmal praktische Erfahrungen mit den Sendern und Echtdampf sammeln bevor ich da weiter baue. Ich habe den Verdacht, die Schiebepotis werden weitestgehend durch Drehpotis ersetzt werden. Mal sehen...


    Viele Grüße
    Arne

  • Hallo zusammen,


    ich versuche derzeit einen "Standard-Sender" für meine Echtdampfloks zu entwickeln:

    • Zwei Drehpotis
    • 4 Taster
    • 1 LED
    • 0,96" OLED-Display


    Da die Potis immer recht viel Platz brauchen, will ich versuchen mit nur zwei auszukommen und ggf. Funktionen über die Taster umzuschalten. Ansonsten reicht der Sender wenigstens für meine Roundhouse Katie, die hat ohnehin nur zwei Servos. Die EKB derzeit auch nur (noch keine Pfeife)


    Das Gehäuse soll 3D-gedruckt werden, ob das was wird muss ich zeigen (doch nur Wurstsalat?).
    Die Außenabmessungen sind 103 x 70 x 30mm.


    Einen weiteren enorm wichtigen Punkt von meinem Lastenheft konnte ich eben auch abhaken: Auf dem Display soll bitte kein Flugzeug oder Hubschrauber angezeigt werden:



    Im oberen Bereich fehlt hier noch das 2. Poti (warte auf Lieferung) und die LED.


    Viele Grüße
    Arne

  • Hallo Zoltan und alle anderen Interessierten,


    auch wenn wir damit schon wieder das Thema verlassen erlaube ich mir noch ein paar Kommentare zum Display:
    Ich habe mit dem gestern verlinkten Beispiel angefangen. Das Display hat mich 4,23€ bei Amazon gekostet und das Beispiel war schnell nachgebaut. Hier ein einfachstes Code-Beispiel:


    Nur leider verbraucht selbst dieser Sketch schon 1338 Bytes Arbeitsspeicher. Und davon hat der ATMega328 (Arduino Nano) nur 2048 zur Verfügung. Wenn man dann zu Debug-Zwecken noch eine serielle Schnittstelle startet und ein paar longs zum jonglieren mit Zeiten verwendet, kommt schnell die Warnung, dass der Speicher fast voll ist. Somit war die Adafruit_SSD1306-Bibliothek für mich unbrauchbar. Alternativen sind SSD1306Ascii, die nur Textausgaben unterstützt oder u8g2. Mit letzterer habe ich mein Bild unter Verwendung von 602 Bytes auf das Display bekommen.


    Viele Grüße
    Arne

  • Hallo Stefan,


    das habe ich getan (PROGMEM). Die Lok ist eine Pixelgrafik. Hat also allein schon von den Bilddaten bei 128 x 64 Pixel 1024 Byte. Aber das hilft alles nix, wenn schon nach dem Laden der Library der RAM voll ist, siehe meinen Code - da ist keine Lok drin :roll:


    Gruß
    Arne

  • Danke für die Info über das Display, Arne!


    Ja, der Nano ist klein. Deshalb baue ich alles auf die ESP. Ist billiger und kann mehr. Und es ist auch codecompatibel.


    Ich machte Projekte für einfache Akkuloks (nur vorwärts-stop-rückwärts), für 3 servos (bis 6 möglich) in LUA für Echtdampfer, und auf meine Wifi-DCC-Akkuloks laufen Arduino sketches. (Full DCC, ohne Zentrale, alles im ESP in der Lok!)


    Natürlich ist das nicht RC sondern WLAN über Handysteuerung... also nicht dein Projektlauf. Aber ich meine nur, dass du für dein Projekt evtl. statt Arduino eine NodeMCU oder eine andere ESP-Variante nehmen könntest?


    LG Zoltan

    LG Zoltan
    Somestaler Eisenbahn-Aktiengesellschaft
    BW Traktion Langkatzenhofen
    SzvVT - Szamosvölgyi Vaspálya Társaság
    877_2015080444_bahnhofhosszumacskasvontatasitelepkicsi.jpg
    http://www.lokteam.at/