Scripts für Hausautomation
normahl 25.07.2020 - 09:49 11303 12
normahl
Here to stay
|
Ich nehme an ich bin nicht der Einzige der keine oder kaum Programmierkenntnisse hat. Wäre doch toll wenn wir hier eine kleine Sammlung schaffen könnten. Welche scripts habt ihr denn am Laufen bzw selbst porgrammiert? Ich hab hier eine Taupunktsteuerung per Blockly realisiert. Ein Sensor im Keller einer draußen, 2 Lüfter. Glücklich bin ich damit aber noch nicht, tut aber fürs erste was es soll: Wenn jemand was besseres mit Lua oder dzvents realisiert hat, wär ich nicht böse über euren code toll wäre natürlich eine maximale laufzeit, delta des taupunktes zu definieren usw... aber das kenn weder ich noch blockly (glaub ich)
|
banjoe
Addicted
|
@normahl machnoch eine hysterese dazu, damit du ein eventuelles prellen verhindern kannst
|
normahl
Here to stay
|
@normahl machnoch eine hysterese dazu, damit du ein eventuelles prellen verhindern kannst bitte vergiss nicht das du hier mit jemanden redest der ein kompletter depp ist was das anbelangt. wie realisiere ich das? vorallem wäre für dieses script wohl jede andere sprache besser geeignet...
|
Viper780
Er ist tot, Jim!
|
Einfach Ein- und Ausschalt Schwelle ein wenig auseinander ziehen.
ZB ein bei 66% und aus bei 64% (ca die doppelte Abweichung vom Sensor)
Und jeden schaltvorgang etwas verzögern oder schauen wann der letzte war und min 5min Pause erzwingen. Damit der Lüfter min 5min rennt oder aus ist.
Sonst kanns sein dass er um die Schwelle die ganze Zeit schwankt.
Bearbeitet von Viper780 am 25.07.2020, 10:55
|
normahl
Here to stay
|
hier stand blödsinn
Bearbeitet von normahl am 25.07.2020, 12:27
|
Captain Kirk
Fanboy von sich selbst
|
DIY KNX GeräteWarum: zum einen sehr teuer (wobei das bei der Anzahl an verbauten Geräten auch nicht mehr ins Gewicht fällt), zum anderen aber die Möglichkeit zu basteln und etwas individuelles zu gestalten. Möglichkeiten gibts unendlich. Man kann quasi alles günstig bauen. Vom BWM bis zum CO2 Sensor. In meinem Fall ist es eine Statusanzeige: Und zwar nehme ich einen KNX Busankoppler mit seriellem Interface, eine Arduino Pro Micro und ein paar LEDs. Ziel ist es ein Übersichtsboard zu machen wo ich auf einen Blick (und ohne App) die Stati meiner Ausshülle sehen kann. Sprich ob und welches Fenster bzw. Tür offen ist. Das Ganze war für mich absolutes Neuland. Also Ardiuno und, abgesehen davon was ich mal vor 100 Jahren in der Schule gemacht hab, Programmierung eigentlich auch. Hat erstaunlicherweise aber auf Anhieb funktioniert #include <Arduino.h>
#include <KnxTpUart.h>
#define PHYSICAL_ADDRESS "1.1.49"
#define LED1_GROUP_ADDRESS "5/2/22"
#define LED1 2 // Green=HIGH
KnxTpUart knx(&Serial1, PHYSICAL_ADDRESS);
void setup() {
Serial.begin(9600);
// LED config
pinMode(LED1, OUTPUT);
digitalWrite(LED1, LOW);
// KNX config
Serial1.begin(19200, SERIAL_8E1);
knx.uartReset();
knx.addListenGroupAddress(LED1_GROUP_ADDRESS);
}
void maintainKnxSerial() {
if (Serial1.available() > 0) {
KnxTpUartSerialEventType eType = knx.serialEvent();
if (eType == KNX_TELEGRAM) {
KnxTelegram* telegram = knx.getReceivedTelegram();
String target =
String(0 + telegram->getTargetMainGroup()) + "/" +
String(0 + telegram->getTargetMiddleGroup()) + "/" +
String(0 + telegram->getTargetSubGroup());
{
// Write commands
if (target == LED1_GROUP_ADDRESS) {
digitalWrite(LED1, telegram->getBool() ? HIGH : LOW);
}
}
}
}
}
Die notwendigen Bibliotheken gibts hier: klickKurze Erklärung zum Skript selbst: Dem Busankoppler gibt man eine freie Adresse (1/1/49 bei mir) und die LED hört in dem Bsp. auf den Status einer Tür (5/5/22). Am Breadboard hab ich das so gemacht, dass ich auf den definierten Ausgang (LED1 2) 2 LEDs mit Vorwiderstand hängen. einmal gegen Plus und einmal gegen Minus. Bei Ausgang High leuchtet somit die grüne und bei Low die Rote LED. Kleines Problem hab ich hier noch wo mir vielleicht jemand unter die Arme greifen könnte. Und zwar stimmt der Initialstatus nicht. Es scheint als würde beim Verbinden der Ausgang per Standard auf Low gesetzt und nicht eingelesen. Dh erst beim erstmaligen manuellen öffnen/schließen stimmts. Das ist natürlich unschön. Help welcome.
Bearbeitet von Captain Kirk am 28.07.2020, 09:13
|
Gegi
Here to stay
|
Vermutlich sendet dein Tür/Fenster Sensor nur bei Change. Sollte aber am Binäreingang (?) u.U. die Option geben den Status regelmäßig auf den Bus zu senden.
|
Captain Kirk
Fanboy von sich selbst
|
Vermutlich sendet dein Tür/Fenster Sensor nur bei Change. Sollte aber am Binäreingang (?) u.U. die Option geben den Status regelmäßig auf den Bus zu senden. Stimmt das kann ich sicher in der ets konfigurieren. Check ich gleich am Abend, thx.
|
Snoop
Here to stay
|
Genau aus dem Grund bin ich am überlegen, ob ich hier nicht eine Brücke zu MQTT bei unserer KNX Anlage bauen werde. Denn ansonsten glaub ich dass der aktuelle Status eher "zufall" ist bei den meisten Reaktoren nach einem Neustart.
|
Gegi
Here to stay
|
Genau aus dem Grund bin ich am überlegen, ob ich hier nicht eine Brücke zu MQTT bei unserer KNX Anlage bauen werde. Denn ansonsten glaub ich dass der aktuelle Status eher "zufall" ist bei den meisten Reaktoren nach einem Neustart. Initialstatus sollte konfigurierbar sein.
|
Snoop
Here to stay
|
Ich glaube aber, dass der Initialstatus nur dann was bringt, wenn alle aktoren gleich schnell booten und erst den status durchschicken, wenn alle am Netz sind. ALso wie gesagt ich kenne mich noch nicht aus und bekomme das system erst, aber aus meiner sonstigen programmiererfahrung ist ein EventBus halt am geschicktesten, wenn alle akteure von einer zentrale die befehle der reihe nach zugestellt bekommen. In meinem fall denke ich hier vor allem eben an so ein szenario wie es captain kirk vor hat, so dass man zwei verschiedene hausautomatisierungssysteme mit einander verbindet. aber mal gucken. hab ja noch vieeeelll zeit mich damit zu spielen, sobalds mal installiert ist
|
normahl
Here to stay
|
Ich hab das Setup jetzt von domoticz zu home assistant portiert und soweit läuft es auch.
Würde mir bitte jemand helfen das script vom ersten post in home assistant zu realisieren?
|
Gegi
Here to stay
|
Was du in HA brauchst ist eine Automation, da gibts mittlerweile eh auch einen GUI editor. https://www.home-assistant.io/docs/automation/Bei Detailfragen oder Problemen einfach Bescheid geben. Ich hab das Setup jetzt von domoticz zu home assistant portiert und soweit läuft es auch.
Würde mir bitte jemand helfen das script vom ersten post in home assistant zu realisieren?
|