Vielen Dank paul53 und Cinimod,
Das Programm läuft super!
Das ist zudem auch ein sehr mächtiges Programm, da nicht viele Hersteller keinen langsamen Farbwechsel her geben, aber es die Hardware zulässt.
Vielen Dank paul53 und Cinimod,
Das Programm läuft super!
Das ist zudem auch ein sehr mächtiges Programm, da nicht viele Hersteller keinen langsamen Farbwechsel her geben, aber es die Hardware zulässt.
Vielen Dank paul53 und Cinimod,
Das Programm läuft super!
Das ist zudem auch ein sehr mächtiges Programm, da nicht viele Hersteller keinen langsamen Farbwechsel her geben, aber es die Hardware zulässt.
Hallo Forum,
kann mir jemand die Blockade in meinem Hirn lösen und mir bitte bei meinem Blockly helfen?
Folgendes habe ich vor:
Eine RGBW GU10 von Shelly soll bei Ereigniss X (Schlater oder Astro funktion) angehen.
Nachdem sie angeht soll Farbe X über den HUE Datenpunkt eingestellt werden.
Start ist bei HUE 180.
Diese RGBW Lampe soll den HUE Datenpunkt alle 5 Sekunden um 5 erhöhen und bei 250 stoppen.
Bis zu diesem Punkt habe ich es hinbekommen.
Nachdem der Datenpunkt HUE 250 errreicht hat soll das ganze Rückwärts laufen bis 180.
Das soll in einer Endloss schleife laufen bis mein Ereigniss X weg ist.
Mein erster versuch war jetzt ein neuer Datenpunkt mit dem Namen Richtung.
Wenn HUE=180 Richtung=1
Wenn HUE=250 Richtung =2
Bitte sagt mir auch wo meine Fehler sind.
Vielen Dank für die Antwort, habe es gerade eingefügt.
// Original-Datenpunkt, der zu schreibende, der Taster
const idStatus = 's7.0.DBs.DB1.U002_1';
const idAuf = 's7.0.DBs.DB1.NI9';
const idAb = 's7.0.DBs.DB1.NI7';
const idSonne = 's7.0.DBs.DB1.NI8';
// Optional: Status-Datenpunkt, wenn Kommando und Status getrennt, der zu lesende, der shellly
// Bei Nicht-Verwendung Leerstring '' zuweisen
on({id: idStatus, change: 'ne', ack: false}, function(dp) {
if(dp.state.val == 0) setState(idAb, true);
else if(dp.state.val == 1) setState(idSonne, true);
else if(dp.state.val == 2) setState(idAuf, true);
});
// Name des neuen Alias-Datenpunkt
const idAlias = 'Jal Test';
//Name des Alias
nameAlias = 'Jal Test';
var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom, raum, gewerk;
desc = 'per Script erstellt';
// Folgende befehle auskommentieren, wenn keine Änderung der Eigenschaft erforderlich
// typeAlias = 'boolean'; // oder 'number'
// read = "val < 0 ? -val : 0"; // Erkennung "Aus" --> false erfolgt automatisch
write = "val ? true : true"; //wichtig bei Tastern
// role = 'value';
// min = 0; // nur Zahlen
// max = 100; // nur Zahlen
// unit = '%'; // nur für Zahlen
// states = {0: 'Aus', 1: 'Auto', 2: 'Ein'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein)
// custom = []; // verhindert doppelte Ausführung von history, ...
// raum = 'EG_Flur'; // Groß-/Kleinschreibung in der ID beachten !
// gewerk = 'Licht'; // Groß-/Kleinschreibung in der ID beachten !
// Ab hier nichts ändern !!
function createAlias(idDst, idSrc, idRd) {
if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn');
else {
var obj = {};
obj.type = 'state';
obj.common = getObject(idSrc).common;
obj.common.alias = {};
if(idRd) {
obj.common.alias.id = {};
obj.common.alias.id.read = idRd;
obj.common.alias.id.write = idSrc;
obj.common.read = true;
} else obj.common.alias.id = idSrc;
if(typeAlias) obj.common.type = typeAlias;
if(obj.common.read !== false && read) obj.common.alias.read = read;
if(obj.common.write !== false && write) obj.common.alias.write = write;
if(nameAlias) obj.common.name = nameAlias;
if(role) obj.common.role = role;
if(desc) obj.common.desc = desc;
if(obj.common.type == 'number') {
if(min !== undefined) obj.common.min = min;
if(max !== undefined) obj.common.max = max;
if(unit) obj.common.unit = unit;
} else {
if(obj.common.min !== undefined) delete obj.common.min;
if(obj.common.max !== undefined) delete obj.common.max;
if(obj.common.unit) delete obj.common.unit;
}
if(states) obj.common.states = states;
if(custom && obj.common.custom) obj.common.custom = custom;
obj.native = {};
setObject(idDst, obj, function() {
if(idRd) setState(idRd, getState(idRd).val, true);
else setState(idSrc, getState(idSrc).val, true);
});
if(raum && existsObject('enum.rooms.' + raum)) {
let obj = getObject('enum.rooms.' + raum)
obj.common.members.push(idDst);
setObject('enum.rooms.' + raum, obj);
}
if(gewerk && existsObject('enum.functions.' + gewerk)) {
let obj = getObject('enum.functions.' + gewerk)
obj.common.members.push(idDst);
setObject('enum.functions.' + gewerk, obj);
}
}
}
createAlias('alias.0.' + idAlias, idStatus, idAuf, idAb, idSonne);
So sieht das ganze Script jetzt aus, habe diesen Alias probiert bei Yahka einzufügen, aber da tat sich leider bei der bedineung nichts.
Habe es unter Position state eingefügt.
Irgendetwas mache ich doch falsch, weil warum kann man bei Yahka unter Jalousie so viele Punkte einfügen ?
Noch ein kleiner Nachtrag von mir:
Habe den WORD Wert falsch definiert: Offen= 2 Sonnenschutz=1 Geschlossen=0
Habe es aber schon im script richtig geschriben (denke ich zumindest)
Hallo Zusammnen,
Habe jetzt Yahka für mich entdeckt und finde die kombination mit iobroker super.
So kann ich alle Geräte Zentral Verbinden und von einem Gerät mit einer App steuern.
Habe mein ganzes Licht eingefügt mit hilfe von der Alias funktion.
Da hat mich folgender Beitrag weiter gebracht:
Jetzt würde ich auch gerne meine Jalousie in Yahka bekommen.
Miene Jalousien laufen über LOGO 8 und dem S7 Adapter. Habe für meine Jalousie 3 Netzwerkeingänge (Buttons) die ich ansteuern kann.
AUF; AB und Sonnenschutz
Bei betätigung des jeweiligen Buttons fährt das Programm in der LOGO Zeit X ab.
Eine Rückmeldung kriege ich über den UDF Baustein als WORD. 1=ZU 2=Sonnenschutz 3=Offen
Dieser Word Wert ist ebenfalls im S7 Adapter vorhanden.
Habe viel im forum gesehn dass Leute ihre Jalousien von 0-100% fahren können, das wäre natürlich ein Traum, aber so wie es jetzt ist, reicht es mir aus.
Vielen Dank
Hallo,
ich klinke mich hier mal ein.
Vielen Dank ertsmal für das Script, das hat mir sehr weiter geholfen und bringt mein smart Home voran.
Ich habe im Haus auch Siemens Logo Verbaut für Licht und Jalousie.
Wie würde diese Alias funktion für meine Jalousie Steuerung aussehen ?
Habe 3 Netzwerkeingänge für meine Jalousie, Auf, Ab, Sonnenschutz (50%).
Außen ist es so dass ich 2 Taster habe für auf und ab, wenn ich einen der beiden taster gedrückt halte, dann fährt die Jalousie auf 50%.
2 Ausgänge natürlich auch: Auf, Ab
Der UDF Baustein gibt mir einen WORD wert raus. ZU=1 Sonnenschutz=2 Auf=3
(Es ist die UDF von Frickelzeugs)
Diese Alias funktion brauche ich um auch die Jalousien in Yahka rein zu kriegen.
Über eine lösung wäre ich sehr dankbar.
Hallo Zusammen,
Ich brauche Hilfe zu meiner Visualisierungen.
Ausgangssituation ist dass ich im Haus 2 Siemens Logo 8 verbaut habe. Meine Jalousie kann ich über 3 Netzwerkeingänge über den ioBroker steuern. (Auf, zu, Sonnenschutz) als Rückmeldung der Jalousie Stellung kriege ich vom UDF Baustein einen WORD Wert. (Auf=2 Zu=0 Sonnenschutz=1)
Jetzt möchte ich in der Visualisierung gerne 3 Button haben mit Auf, Zu, Sonnenschutz. Das kriege ich soweit hin.
Nur wie schaffe ich es dass wenn die Jalousie Offen ist, dass auch der Auf Button Grün ist, und das gleiche bei Zu und Sonnenschutz ?
Hoffe es ist verständlich formuliert.