Velux Dachrollo Steuerung

spicer

Administrator
Teammitglied
Administrator
Hab die mit einem alten Raspberry A Rev2 realisiert.
Auf diesem läuft ein aktuelles Raspbian (stretch).

Als Aussensensor habe ich einen FWS-90 von pearl genommen.
Als Empfänger dient ein RF-5V.

Angesteuert wird das Velux Solar Rollo mit einer original KUX100 3-Tasten-Fernbedienung (wegen Rolling Code), welche ich auseinander genommen habe.
Die Tasten (welche gegen Masse schalten) werden mittels 2N7000 Kleinleistungs-FETs betätigt.
Anstelle der zwei 1.5V Batterien speise ich die FB-Platine mit den 3.3V des RPI.

Habe mit Target3001 eine 2-seitige Platine layoutet. Die Datei ist angefügt und auch 3D Ansichten davon.
Des Weitern habe ich 2 Videos vom fräsen und div Fotos angehängt.


Einen zweiten Kanal für eine weitere FB habe ich auch vorgesehn (RPI GPIO 3 und 4).


Notizen für die Installation der Aussensensor-Abfrage:



Code:
Bitte, Anmelden oder Registrieren to view codes content!

Div Infos:



Code:
Bitte, Anmelden oder Registrieren to view codes content!

auswerte.sh in /home/pi (777 Rechte):


Code:
Bitte, Anmelden oder Registrieren to view codes content!

Achtung. Ist noch nicht sauber:
te=`cat /home/pi/r-log |grep '"id": 7,' -a --text -C 3|tail -n3|awk '{ print $2; }'|sed 's/,//g'` #Pearl Sender ändert Id (hier 7) nach Batteriewechsel! Muss dann hier angepasst werden!!!
So sieht der Log aus (nun mit Id 29):

Code:
Bitte, Anmelden oder Registrieren to view codes content!
Nehme Hilfe gerne entgegen, um die uuid abzufragen und nicht die Id.




sensor.py Steuerprogramm in /home/pi (644 Rechte):
Je nachdem wo der Aussenfühler montiert ist (Schattenseite oder an der prallen Sonne) ist in dieser Zeile die Temperatur einzustellen.
if float(inhalt) > 21 and sunrise < akttime and sunset > akttime: # Temperaturen (21 Grad anpassen)
Bei mir ist der Fühler auf der Ostseite und damit bereits vor Mittag im Schatten.



Code:
Bitte, Anmelden oder Registrieren to view codes content!


signal.sh Script in /home/pi (774 Rechte):




Code:
Bitte, Anmelden oder Registrieren to view codes content!


auf.sh Script in /home/pi (777 Rechte):



Code:
Bitte, Anmelden oder Registrieren to view codes content!

ab.sh Script in /home/pi (777 Rechte):




Code:
Bitte, Anmelden oder Registrieren to view codes content!

man_auf.sh Script in /home/pi (775 Rechte):




Code:
Bitte, Anmelden oder Registrieren to view codes content!

man_ab.sh Script in /home/pi (775 Rechte):




Code:
Bitte, Anmelden oder Registrieren to view codes content!

man_auf2.sh Script in /home/pi (775 Rechte):




Code:
Bitte, Anmelden oder Registrieren to view codes content!

man_ab2.sh Script in /home/pi (775 Rechte):




Code:
Bitte, Anmelden oder Registrieren to view codes content!


Wenn alle Scripte in /home/pi sind, erst mal sh auf.sh in Terminal eingeben, damit alle Dateien für sensor.py vorhanden/verfügbar sind.


Über das webIF kann man von ausswärts auf die Steuerung zugreiffen.
Von da werden dann die Scripte man_ab.sh bzw man_auf.sh ausgeführt.
So wird das Rollo nicht beim nächsten Durchlauf von sensor.py wieder in die alte Position gerückt.
Mit den Scripts man_ab2.sh bzw man_auf2.sh wird das zweite Rollo angesteuert.
 

Anhänge

spicer

Administrator
Teammitglied
Administrator
Hier mal ein php. Ist aber noch im beta Status.
Verbesserungsvorschläge sind natürlich immer willkommen.

Zuerst Webserver installieren:

sudo apt update
sudo apt upgrade
sudo apt install apache2 php

sudo chown -R pi:www-data /var/www/html/
sudo chmod -R 770 /var/www/html/


Bei Zugriff von Aussen, unbedingt eine .htaccess im Verzeichnis /var/www/html anlegen.
favicon.ico und favicon.png ins Verzeichnis /var/www/html


index.php (ins Verzeichnis /var/www/html)


Code:
Bitte, Anmelden oder Registrieren to view codes content!


Ich behandle das Dachfenster2 etwas stiefmütterlich hier, zumal ich selber da nichts angeschlossen habe.
Auch wird in meinem Scripts bei dem nichts automatisch gesteuert.
 

Anhänge

spicer

Administrator
Teammitglied
Administrator
Weiss jemand, was ich an der Antenne verbessern könnte?
Der 173mm Draht empfängt den Aussensensor nur in einem Radius von ca 2m durch das Fenster.


Tests mit einem anderen Receiver-Modul ergeben einen viel besseren Empfang sogar ohne Antenne.
Scheinbar haben nicht alle Module die gleiche Qualität.
 

spicer

Administrator
Teammitglied
Administrator
Da der Empfang des Aussenfühlers manchmal falsche oder unkomplette Daten liefert, habe ich die höchst Temperatur auf 55 °C abgefangen. Darüber wird nichts an den gespeicherten Werten geändert.

In diesem Zusammenhang auch, wenn die Batterie als tief erkannt wird. Bei Falschdaten geht dieser Status temporär auf tief und es werden keine Aktionen durchgeführt. So fährt das Dachrollo nicht plötzlich in die andere Richtung, um 2 Minuten später wieder zurückzukehren.

"Signal ok" wird alle 4h abgefragt. Wenn der Temperaturwert nach diesen 4h immer noch gleich ist, wird der Status auf "kein Signal" gesetzt.



Für alle, die schon etwas runtergeladen haben: Letzte Anpassungen waren am 18.7.2019.
Also bitte nochmal laden. Vorallem die sh und py Scripts!
 

spicer

Administrator
Teammitglied
Administrator
Info für "Nachbauer":
Diese Steuerung läuft extrem stabil. Immer noch!
Natürlich können Aussendaten von anderen Sensoren eingebunden werden.
Ich arbeite gerade selbst an einem ESP8266 Projekt.
Aber Hardwaremässig lässt sich das allemal weiter verwenden.
Die genannten PCBs versende ich übrigens gratis.
 

Benutzer welche diesen Thread betrachten (Mitglieder: 0, Gäste: 1)

Oben