-         
Seite 1 von 4 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 37

Thema: Kabelfernbedienung mit Arduino?

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    31.03.2014
    Beiträge
    62

    Kabelfernbedienung mit Arduino?

    Anzeige

    Hallo,

    ich habe verschiedene Geräte gebaut, die teilweise per Kabel fernbedient werden. Im Prinzip simple Schaltvorgänge, indem aus einem Nachbarzimmer per Kabel verschiedene Relais geschaltet werden. Da es auch noch eine Rückmeldung gibt (auf den Fernbedienungen leuchtet dann jeweils eine LED bei aktivierter Funktion), kommen da einige "Drähte" zusammen, die ich aktuell mit SubD-15 oder sogar SubD-25 Steckern beschaltet habe. Die passenden Kabel sind dann entsprechend dick und nur wenig flexibel. Nun möchte ich das etwas eleganter lösen. 8 Taster (on/off) sowie 8 Rückmeldungen per LED über eine 2- oder 4-Draht Fernbedienung. Dabei muss es möglich sein, dass mehrere Taster gleichzeitig gedrückt werden und auf der Gegenseite diese Schaltimpulse auch entsprechend richtig interpretiert werden und den zugehörigen Relais zugeordnet werden. Letztlich funktioniert jede Computertastatur per USB auf diese Art, nur dass hier über 100 Tasten gemanaget werden.
    Ich kann das selbst nicht, habe aber auch nichts entsprechendes gefunden beim googeln. Allerdings denke ich, dass sowas möglich ist mit z.B. Arduino UNO.
    Kann mir von Euch evt. jemand Tips, Hinweise, weiterführende Links, ggf. Bauanleitungen incl. Arduino-Sketch geben, wie ich das realisieren könnte?

    Andi

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.09.2011
    Ort
    Hessen
    Beiträge
    694
    Hallo,

    da würden sich einige verbreitete Technologien anbieten: z.B. DMX (aus der Beleuchtungs- und Bühnentechnik) was hardwaremäßig auf RS485 basiert. Oder der aus dem Auto stammende CAN-Bus. Beides ist mit Arduino machbar.

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    35
    Beiträge
    3.416
    Möglichkeiten gibt es mannigfaltig viele

    Du könntest bei deinem Stecker System bleiben und einfach die Eingänge und Ausgänge serialisiert übertragen, das ging e theoretisch auch ohne Arduino auf reiner Chiplogik (Mux und DeMux oder Multiplexer als Stichwort)
    Mit Arduino (und irgend einem Funkboard) kannst du sogar auf die Kabel verzichten
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    31.03.2014
    Beiträge
    62
    Danke für die Antworten.

    Es soll/muss eine Kabelfernbedienung sein, Funksteuerung soll es nicht werden, besonders nicht diese 433MHz-Module. Die werden auch bei z.B. Homematic verwendet, wenn ich richtig informiert bin. Und da ist mir die Zuverlässigkeit und die Reaktionszeit zu ungenau.

    Der 74HC595 wäre so ein Kandidat. Den hab ich schon im Auge gehabt. Der wäre sozusagen der Decoder, der im Empfänger verbaut wird, stellt also 8 Ausgänge bereit. Welcher IC kommt dann auf der Sonderseite in Frage? Hier müssten ja die 8 Schaltimpulse der einzelnen Taster zunächst auf 3 PINs kodiert werden. Welcher IC macht das? Aber da komme ich mit meinen gewünschten 4 Kabeln nicht hin, oder? Wenn es in eine Richtung schon 3 codierte Kabel sind, benötige ich ja für die Rückmeldung nochmal 3 Kabel, das wären dann schon 6. Hinzu kommt noch die Stromversorgung, damit bin ich dann bei 8 Kabeln.

    Ich hatte noch vergessen: Es sollen 3 Fernbedienungen gleichzeitig (parallel) an einen Empfänger angeschlossen werden, wobei alle 3 identische Funktionen haben und auch immer den Status ("Rückmeldung") anzeigen, auch wenn eine Funktion z.B. von Fernbedienung 1 ausgelöst wurde, sollen FB 2 und 3 das übernehmen und entsprechend anzeigen. RS485 ist ja "nur" ein Übertragungsprotokoll. Da findet kein Codieren von 8 auf 3 (oder weniger) Drähte statt. Sofern der RS485 in Frage kommt, dann käme hier nur der Half-Duplex-Betrieb in Betracht. Bei Voll-Duplex gibt es ja nur einen Master, bei Halb-Duplex sind die Geräte identisch, sofern ich das richtig lese... (?)

    Andi

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    35
    Beiträge
    3.416
    Es soll/muss eine Kabelfernbedienung sein, Funksteuerung soll es nicht werden, besonders nicht diese 433MHz-Module. Die werden auch bei z.B. Homematic verwendet, wenn ich richtig informiert bin. Und da ist mir die Zuverlässigkeit und die Reaktionszeit zu ungenau.
    Gibt auch elaboriertere und stabilere Varianten, Wifi (ESP32/8266), Bluetooth (grusel) und viele andere Funkprotokolle die auch absolut stabil sind (bei Heise haben sie gerade erst ein "neues" Konzept präsentiert ^^)
    Wenn Stabilität also das Kriterium ist würde ich deswegen nciht auf Funk verzichten!

    der 74HC595 scheint mir ein wenig überzogen (aber konfigurierbar) .. ich hatte jetzt schon an den gaaaanz einfachen clocked Mux-DeMux gedacht so ausm E-Technik Unterricht halt, aber wenn ich einfach 2 µController nehme und SPI oder sowas dazwischen hänge ist das wohl wesentlich simpler

    Wenn du mehrere Fernbedienungen am selben Ausgang betreiben willst wäre das sogar noch ein Argument für Funk!

    Dein Empfänger macht einen Wifi AccessPoint auf und die Fernbedienung (oder dein Smartphone/PC sogar :P) kann darauf verbinden und dann Befehle senden und Status Informationen abrufen.

    Oder du hängst alles direkt in dein normales WLAN und musst dann nur an die IP deines Empfänger kommen (Stichwort Multicast/UDP Discovery)

    Ich würde bei einer Kabellösung nicht unbedingt auf reines RS485 setzen sondern (wie schon empfohlen) auf ein bestehendes Protokoll wie DMX setzen und dann einen Empfänger schreiben der auf bestimmte Befehle eben Ausgänge setzt oder einließt oder den Zustand ausgibt. Die Fernbedienung muss dann nur deine Eingabe entgegennehmen (Knöpfe? Joystick? Schalter?) und in den passenden Befehl über das Protokoll umsetzen.

    Problematisch von meiner Seite hier ist nur dass ich mit den Protokollen und Techniken auf Kabelseite (jenseits von SPI/I2C und anderen kurzstrecken PCB Verbindungen) keine Ahnung habe und nur auf der Wifi/Ethernet Schiene Erfahrung habe.

    edit: deine Fernbedienung kann auch ein beliebiges Wifi-fähiges Gerät mit einem Browser sein wenn du auf deinem Empfänger einfach einen kleinen Webserver mit einer Steueroberfläche platzierst (smart TV sogar XD)
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.09.2011
    Ort
    Hessen
    Beiträge
    694
    Also die normalen 5V Logikpegel, wie bei 74HC..., sind eigentlich nicht dafür gedacht über lange Kabel versendet zu werden. Selbst sowas wie RS232 ist von der Leitungslänge beschränkt, könnte in deinem Falle aber eventuell gehen. RS485 und CAN arbeiten mit differentiellen Signalen und können lange Strecken zurücklegen.

    Bei mehreren Empfängern und Sendern, Rückmeldungen usw. würde ich zu CAN tendieren.

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    35
    Beiträge
    3.416
    sind eigentlich nicht dafür gedacht über lange Kabel versendet zu werden
    Zur maximalen Kabellänge hat er sich ja nicht geäußert, aber da es "von Zimmer zu Zimmer" geht, denke ich sind 5V ausreichend, solange man die Taktrate nicht zu hoch wählt wegen der Kapazität des Kabels.

    Für nennenswerten Spannungsverlust braucht es schon deutlich längere Kabel, die Signalverschleifung (eben wegen der Kapazität) ist bei langen Kabeln eher ein Problem

    (ich hab schon I2C auf 5V mit 100kHz auf 10m mit einfach verdrilltem Kabel stabil hinbekommen, je niedriger die Frequenz desto stabiler)

    und da wir auch keine Anforderung an die Reaktionsgeschwindigkeit haben würde ich sagen 1kHz reicht hier vollkommen aus ... (1000/9)bytes pro sekunde, davon ~30% Overhead (wenn ich I2C annehme) mach immernoch ~100bytes/sekunde und wir brauchen hier vll. maximal 4Bytes pro Aktualisierung also reichlich schnell IMHO

    wifi ist für dieAnwendung wahrscheinlich totaler overkill aber elegant
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.09.2011
    Ort
    Hessen
    Beiträge
    694
    Hm, ja, I2C hätte zumindest auch den Vorteil einer eleganten Rückmeldung in Form von ACK und NACK. Wäre allerdings eine sehr "kopflastige" Geschichte, wo der Master alles regelt.

    74HC595 wäre eher so eine Art SPI für Arme. Wenn da Übertragungsfehler auftauchen wird die Fehlersucher sicher lustig.

    CAN wäre eher dezentral und hat, aufgrund des Botschaftskonzeptes, schon vieles eingebaut, was man sonst programmieren müsste. Wichtig ist nur, dass es nie zwei Teilnehmer gibt, die die gleiche Message ID verwenden. Das kann man aber einfach sicherstellen, in dem man eine Gerätenummer vergibt, z.B. über Codierschalter oder Mäuseklavier einstellbar, die beim Senden in die Message ID aufgenommen wird.

    Weitere Bits der Message ID kann man dann verwenden, um Gruppen von Empfängern zu definieren, z.B. "das ist eine Nachricht für alle Lampen" oder "das ist für die Ventilatoren". Jeder Empfänger, der sich da zugehörig fühlt, macht dann was damit. Wenn man beide Bits setzt, kann man dann auch einfach "alle Ventilatoren und Lampen" ansprechen, usw. Empfänger können die Botschaften dann wieder mit eigenen Botschaften quittieren, so kann das Netzwerk erfahren, wer alles da ist. Geräte können also einfach entfernt und hinzugefügt werden, Fragen wie "welche Lampen sind da ?" lassen sich einfach realisieren.

    Es wird ja z.B. auch bei manchen Modelleisenbahnen verwendet. Da hat man ja auch viele Teilnehmer zu koordinieren.

    Aber für den Anfang kann man es ja mal mit I2C versuchen, halte ich immer noch für besser als diskrete Logik ICs.

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    31.03.2014
    Beiträge
    62
    "...einfach 2 µController nehme und SPI oder sowas dazwischen hänge ist das wohl wesentlich simpler..."
    Und das könnte ich dann über das DMX-Protokoll senden/empfangen?

    CAN-Bus... Hab ich da einen Denkfehler? Ich dachte, CAN ist dasselbe, wie RS485...? Muss ich nachsehen.

    Was die "Reaktionsgeschwindigkeit" betrifft: da sind 1kHz völlig ausreichend.

  10. #10
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    35
    Beiträge
    3.416
    Ich dachte, CAN ist dasselbe, wie RS485
    Jein, RS485 ist eine Übertragungstechnik (differentiell, stromschleife um induktive Störung zu minimieren), CAN ist das Protokoll, welches RS485 (unter anderem) einsetzt

    Ich kann CAN auch nur mit 5V und ohne differentielle Übertragung machen. Es ginge aber auch ein Zeilenbasiertes UART Protokoll wie HART (welches man, der Stabilität wegen, auch über RS485 übertragen kann)

    Ich denke du solltest dich mit den beannten Technologien mal befassen und deinen favoriten finden, jeder Ansatz hat seinen gewissen Aufwand und seine Schwächen, da entscheidet mehr die Lust und die Affinität was einem gefällt und einfacher scheint (mir persönlich gefällt der Wifi weg am besten)
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

Seite 1 von 4 123 ... LetzteLetzte

Ähnliche Themen

  1. Arduino: Die IoT Cloud richtet Arduino-Boards aus der Ferne ein
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 8
    Letzter Beitrag: 08.02.2019, 10:56
  2. STM32 contra ARM Cortex M3 (Arduino Due, Teensy): Performance per Arduino vs. nativ C
    Von HaWe im Forum ARM - 32-bit-Mikrocontroller-Architektur
    Antworten: 14
    Letzter Beitrag: 22.11.2017, 12:53
  3. Arduino vs. Arduino: Marke und Produktion wieder unter Kontrolle der Gründer
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 29.07.2017, 11:00
  4. Antworten: 13
    Letzter Beitrag: 07.11.2015, 02:21
  5. Rosenkrieg: Arduino zahlt Arduino keine Lizenzgebühren
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 20.03.2015, 09:00

Berechtigungen

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