Rollladen-Steuerung per modifizierter FB


  • Die gemeinsame Masse: Wenn du den Batt - der FB mit dem 0V der Raspberrypi verbindest .....

  • Hallo zusammen,


    ich stehe vor dem gleichen Problem... und das was ich hier sehe könnte eine günstige Lösung sein!


    Leider habe ich in dem Thread noch keine Antwort auf die Frage nach dem 16-fach Sender (mit Display) gefunden. Wäre es theoretisch möglich eine solchen auch so umzubauen?


    Ich habe 16 Jarolift Rollläden, wenn es nicht mit 16er geht, könnte man doch theoretisch 4 * die 4er nehmen, oder seh ich das falsch?


    Gruß Nils


  • Leider habe ich in dem Thread noch keine Antwort auf die Frage nach dem 16-fach Sender (mit Display) gefunden. Wäre es theoretisch möglich eine solchen auch so umzubauen?


    Ich habe 16 Jarolift Rollläden, wenn es nicht mit 16er geht, könnte man doch theoretisch 4 * die 4er nehmen, oder seh ich das falsch?


    Ich habe heute die Umsetzung mit einer 16er Fernbedienung gewagt und es funktioniert super. Zur Steuerung in FHEM habe ich das Modul ROLLO eingebunden. Jetzt muss innerhalb des Moduls nur noch die Homekit-Anbidung gefixt werden und das Homebridgemapping angepasst werden, dann läuft es!


    Die Ansteuerung der GPIOs habe ich mit einem Python-Script realisiert. Dieses wird dann via Notify aus FHEM aufgerufen.


    Schöne Grüße
    Simon

  • hi,


    hab dies vor einiger Zeit auch mit der 16er gelöst, läuft auch bei mir ohne Probleme.


    Habe das Ganze mit OpenHab 2, dem GPIO Binding und entsprechenden Regeln realisiert. Wenn jemand Intresse hat stelle ich das gerne zur Verfügung.


  • hi,


    hab dies vor einiger Zeit auch mit der 16er gelöst, läuft auch bei mir ohne Probleme.


    Habe das Ganze mit OpenHab 2, dem GPIO Binding und entsprechenden Regeln realisiert. Wenn jemand Intresse hat stelle ich das gerne zur Verfügung.


    Hallo,


    zunächst mal vielen Dank für die Vorarbeit, ich konnte erfolgreich einen Prototypen mit einem 4 Kanal Handsender auf einem Breadboard aufbauen. Das ganze habe ich so simpel wie möglich mit einem Shellskript realisiert. Es "drückt" solange die Select Taste, bis die gewünschte Kanal-LED der Fernbedienung leuchtet bzw. zwei LED leuchten, will man alle Kanäle gleichzeitig schalten. Das Skript für ich dann mit FHEM einfach mit

    Code
    1. "/opt/fhem/rollo.sh 4 1"

    aus. 4 steht für GPIO 4 und 1 für GPIO 1, gemäß des Schaltplans von Strunz, wird also der erste Rolladen hochgefahren.
    Bei einer 16 Kanal Fernbedienung mit LCD Display ist das ja so nicht möglich.Da ich aber 7 Rolläden habe, soll es nun doch der 8 Kanal Handsender werden.
    Kann man diesen nach Eurer Erfahrung denn durch Abzählen (mit Modulo?) zuverlässig schalten?


    Vielen Dank und
    viele Grüße!
    Stefan



    Edited once, last by elvis ().

  • Ich habe heute die Umsetzung mit einer 16er Fernbedienung gewagt und es funktioniert super. Zur Steuerung in FHEM habe ich das Modul ROLLO eingebunden. Jetzt muss innerhalb des Moduls nur noch die Homekit-Anbidung gefixt werden und das Homebridgemapping angepasst werden, dann läuft es!


    Die Ansteuerung der GPIOs habe ich mit einem Python-Script realisiert. Dieses wird dann via Notify aus FHEM aufgerufen.


    Guten Morgen,


    wollte mal fragen stehe vor dem gleichen Problem mit der 16-fach FB, kann mir da mal jemand helfen wie er es umgesetzt hat, habe ja gelesen das Simon das ganze ja schon gelöst hat.


    Danke schon mal.


    Gruß


    Markus

  • Guten Morgen,


    eine 8 Kanal Fernbedienung kann ich nun zuverlässig mittels Shellskript ansteuern.


    Für 16 Kanäle muss es nur ganz leicht modifiziert werden (ungetestet).



    Die Skripte speicher den aktuell ausgewählten Kanal in einer Datei namens channel.


    Aufgerufen wird das ganze mit:

    Code
    1. ./rollo.sh <kanalnummer> <tastennummer>



    Also zum Beispiel mit:

    Code
    1. ./rollo.sh 1 2   (Das Rollo auf Kanal 1 herunterlassen)
    2. ./rollo.sh 2 1   (Das Rollo auf Kanal 2 hochfahren)
    3. ./rollo.sh 3 3   (Das Rollo auf Kanal 3 stoppen)
    4. ./rollo.sh 9 2   (Alle Rollos hochfahren)


    Das Skript sollte mit

    Code
    1. chmod +x rollo.sh

    ausführbar gemacht werden.
    Zudem habe ich es dem FHEM user "geschenkt":

    Code
    1. chown fhem:dialout rollo.sh


    In FHEM sieht das Ganze dann so aus:

    Code
    1. define RolloArbeitszimmerRunter notify RolloArbeitszimmer:runter "/opt/fhem/rollo.sh 6 2"


    Im übrigen habe ich anstelle der Einzeltransistoren und Einzelwiderstände ein Transistorarray ULN2003A verwendet. Die GPIO Nummern weichen von denen von Strunz ab, da ich GPIO 0 und 1 für Infrarotfernbdienung mittels LIRC nutzen möchte.
    GPIO 4 entspricht im Übrigen der "Select up" Taste.


    Viele Grüße
    Stefan

    Edited once, last by elvis ().


  • habe ja gelesen das Simon das ganze ja schon gelöst hat.



    Der Aufruf erfolgt dann über die Nummer und Aktion der Rollade aus Fhem.


    Interessant ist sicherlich die folgende Steuerung, zur Prüfung, ob gerade noch eine andere Aktion ausgeführt wird. Anderenfalls würde der Zähler durch einen parallelen Aufruf durcheinander kommen.


    Die Lösung die aktuelle Position in einer Datei zu speichern finde ich super, somit müsste ich nicht immer auf die Position 1 zurückschalten. Damit erhöht sich die Reaktionszeit beim Schalten mehrerer Rolladen.



    Schöne Grüße
    Simon

    Edited once, last by Tombra ().

  • Guten Morgen,


    Ein Semaphor / Mutex ist eine gute Idee, Simon. Evtl. werde ich das noch umsetzten, ggf. mit MKDIR. Derzeit habe ich die Rollläden in FHEM in einer structure zusammengefasst und dort mit dem Attribut async_delay eine Aufrufverzögerung von 3 Sekunden eingestellt. Sicherlich gibts aber Szenarien, bei denen eine Mutex besser geeignet ist.


    Ist es eigentlich möglich die Fernbedienungsbatterien wegzulassen und die Fernbedienung
    über 3,3V des GPIO Ports zu powern? Es wären ja vielleicht 0,3V zuviel und mir ist unklar, ob beim Senden nicht kurzeitig zu hohe Ströme fließen.


    Hier ist ein Foto meiner Umsetzung mittles ULN2003AN Transistorarray.


    Viele Grüße!



    Edited once, last by elvis ().

  • Vielen Dank schon mal für die Antworten.


    Habe bezüglich der Lösung von Simon noch eine Frage: Du hast ja bestimmt folgende Fernbedienung benutzt, gibt ja prinzipiell nur 2 Modelle:
    [IMG:https://www.jalousiescout.de/media/images/info/10050223-jarolift-funk-handsender-tdrc16.jpg]


    Hast du die nach dem Schaltplan im Post #4 angeschlossen?
    [IMG:http://www.forum-raspberrypi.de/attachment.php?thumbnail=4102]


    Soweit ich richtig gesehen habe hast du ja die Tasten folgendermaßen belegt:
    Pin12 > Taste Hoch
    Pin13 > Taste Stopp
    Pin15 > Taste Runter


    Was mir noch nicht ganz klar ist sind folgende Anschlüsse:
    Pin11 > denke wahrscheinlich die Taste nach rechts für nächsten Kanal
    Pin16 > keine Ahnung


    Eine weitere Frage wäre wie hast du das mit dem Modul "ROLLO" gelöst, habe ich da viel zu ändern oder kann ich das Modul so wie es ist verwenden und wie läuft das mit dem Notify-Aufruf ab?


    Sorry für die vielen Fragen bin aber recht neu in dem Thema FHEM und den dazugehörigen Scripten.


    Gruß


    Markus

  • Hallo Markus,


    genau, ich habe ROLLO als Modul genutzt. Viel ändern musste ich eigentlich nicht, nur hat das Modul aktuell noch einen Fehler, sodass ich in Zeile 415 (gem. [url=https://forum.fhem.de/index.php/topic,47202.msg498833.html#msg498833]https://forum.fhem.de/index.ph….msg498833.html#msg498833[/url]) folgendes ergänzt habe:


    Code
    1. readingsSingleUpdate($hash,"position",$state,1);


    Der Type muss im Anschluss auf "Normal" stehen, sonst funktioniert die Steuerung vom iPhone nicht korrekt.



    Die folgende Notify-Steuerung kann man bestimmt auch schöner lösen, funktioniert so aber zumindest :)


    Code
    1. define RolladeBuero_drive_up notify RolladeBuero:drive-up {system('python /opt/fhem/elro.py 1 drive-up&');;;;}
    2. define RolladeBuero_drive_down notify RolladeBuero:drive-down {system('python /opt/fhem/elro.py 1 drive-down&');;;;}
    3. define RolladeBuero_stop notify RolladeBuero:position-10|RolladeBuero:position-20|RolladeBuero:position-30|RolladeBuero:position-40|RolladeBuero:half|RolladeBuero:position-60|RolladeBuero:position-70|RolladeBuero:position-80|RolladeBuero:position-90 {system('python /opt/fhem/elro.py 1 stop&');;;;}


    Mit Pin 16 wird die Kanalauswahltaste (-) bedient. Also um wieder auf eine kleinere Kanalzahl zu kommen.


    Schöne Grüße
    Simon

  • Hallo Simon,


    soweit habe ich mal alles verstanden (denke ich), den Code den du ROLLO Modul geändert hast


    Code
    1. readingsSingleUpdate($hash,"position",$state,1);


    hast du den dazugefügt oder die Zeile 415 wie bei dir angegeben angepasst, im Original steht da ja


    Code
    1. readingsSingleUpdate($hash,"state",$state,1);



    Zur Verdrahtung hast du das ganze ja wahrscheinlich wie zu Anfang des Posts angeschlossen über Transistoren, da werde ich mich nämlich jetzt mal dranmachen das ganze aufzubauen.


    Danke dir vielmals.


    Gruß


    Markus

  • Die Zeile habe ich hinzugefügt und den Schaltplan aus dem Anfangsbeitrag verwendet.


    Läuft eigentlich alles ziemlich gut! Viel Erfolg und schöne Grüße
    Simon


  • Kann mir von euch eventuell jemand mit dem Code von Tombra helfen, er meckert mir ständig ein fehlerhaftes Einrücken des Codes an, hab das zur Zeit wie folgt gemacht, weiß aber nicht ob das so richtig ist, erhalte immernoch eine Fehlermeldung:



    Danke schon mal. Markus

  • Wollte nur Bescheid geben das Problem mit dem Einrücken in dem Python-Script hat sich erledigt, habe selbst ein wenig probiert und es funktioniert jetzt.


    Gruß


    Markus

  • Hallo zusammen,


    gibt es hier irgendwo eine Anleitung wie ich das ganze mit der Fernbedingung löten muss und welches Zubehör ich brauche?


    Aktuell habe ich folgendes:


    • Raspberry Pi 3 Model B
    • Jarolift TDRC 16 Fernbedinung
    • Programmier und grundlegendes Elektro Wissen

    Wäre demjenigen sehr Dankbar.


    Gruß, vljgre

    Edited once, last by vljgre ().


  • Hallo,


    habe softwareseitig soweit alles zusammen, habe ja auch erst neu damit angefangen. Bin gerade am Hardwareaufbau, falls dies auch funktioniert stelle ich dir meinen Schaltplan und die Softwareeinträge gerne zur Verfügung. Denke werde die Woche dazu kommen die Hardware zu testen.


    Gruß


    Markus


  • hi,


    hab dies vor einiger Zeit auch mit der 16er gelöst, läuft auch bei mir ohne Probleme.


    Habe das Ganze mit OpenHab 2, dem GPIO Binding und entsprechenden Regeln realisiert. Wenn jemand Intresse hat stelle ich das gerne zur Verfügung.



    Das wäre super. Vor allem würde mich die hardwareseitige Implementierung interessieren, am besten mit Fotos. Die Software würde ich alleine hinbekommen.
    Gruß :)

  • Mein Problem aktuell:
    Ich habe einen Transistor dessen Basis ich an eine GPIO des Raspberrys anschließen kann. Nur wie muss ich nun den Collector und Emitter an die Fernbediegung anschließen um den Stromkreis am Schalter der Fernbedienung zu schließen?

  • So,
    mein Hardwareaufbau funktioniert und ich habe nun ein paar Bilder meines Aufbaus gemacht und den Stromlaufplan gezeichnet.


    Anbei ein paar Bilder, habe auch ein Transistorarray benutzt, funktioniert wirklich gut.


    Ich habe an die Fernbedienung ein Netzwerkkabel angelötet, da das Kabel zum einen 8 Adern hat und das auch die Maximalbelegung der Fernbedienung ist (6 Tasten und + und -) und zudem steht mein Raspberry im Keller im Multimediafeld, da ist der Empfang nicht sonderlich gut.
    Da ich aber in jedem Raum eine doppelte Netzwerkdose habe und diese natürlich auch im Multimediafeld endet habe ich mir dies zu Nutze gemacht und so kann ich die Fernbedienung irgendwo im Haus positionieren wo der Empfang gut ist.


    Gruß


    Markus


    [hr]