NEWS
PWM Steuerung mit Fade
-
@paul53 sagte in PWM Steuerung mit Fade:
@Aphofis
Weshalb schaltest Du das Intervall 2 mal aus (nach 10 s und 5 s) ? Wozu dienen die stop timeout und stop timeout2 ?Sequenzial wird sofort nach dem Einschalten wieder ausgeschalten ?
Du sagtest zwischen den steuerungen müssen 5 sek pause sein und die 10 sek waren nur als Test nachher sollen die einzelnen steuerungen zw 10 bis 30 min laufen.
-
@paul53 sagte in PWM Steuerung mit Fade:
@Aphofis sagte:
Dann gibt es diese Datenpunkte:
Der Datenpunkt "Tunze Wellen Auswahl" ist keine Werteliste, denn der Wert einer Werteliste sieht so aus:
Poste mal die RAW-Daten des Datenpunktes in Code Tags.Man kann nicht auf Werte bzw. Vergleiche triggern, sondern nur auf Datenpunkt-IDs ! Der Vergleich muss mit einem falls-Logik-Baustein innerhalb des Triggers erfolgen.
Hatte jetzt Zeichenkette genommen.
Wo soll denn werteliste sein !?{ "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1568470775091, "common": { "name": "Tunze Wellen Auswahl", "role": "value", "type": "string", "desc": "0:Aus;1:Sequenzial;2:Intervall;3:Pulse;4:Wellengang", "min": 0, "max": 4, "def": 0, "read": true, "write": true }, "native": {}, "acl": { "object": 1632, "owner": "system.user.iobroker", "ownerGroup": "system.group.administrator", "state": 1632 }, "_id": "Aqua_Control.0.Tunze_Steuerung.Tunze_Wellen_Auswahl", "type": "state" }
-
@Aphofis sagte:
Wo soll denn werteliste sein !?
Nicht "desc", sondern "states" und "type": "number".
"type": "state", "common": { "name": "Tunze Wellen Auswahl", "role": "", "type": "number", "desc": "Auswahl Wellen", "states": "0:Aus;1:Sequenzial;2:Intervall;3:Pulse;4:Wellengang", "min": 0, "max": 4, "def": 0, "read": true, "write": true },
-
@Aphofis sagte:
Hatte jetzt Zeichenkette genommen.
Ich schrieb "Werteliste", die man auswählen kann.
-
@paul53
Warteliste ist also Logikwert!
Ok hab ich geändert und was kommt in Role rein ? -
@Aphofis sagte:
Warteliste ist also Logikwert!
Nein, Werteliste ist "Werteliste" (5. Auswahl von oben) mit type: "number".
@Aphofis sagte in PWM Steuerung mit Fade:
was kommt in Role rein ?
Bin mir nicht sicher, da in den Regeln nicht aufgeführt. Am ehesten "level" oder "level.mode", denn "value" ist für "read only" Datenpunkte.
-
@paul53 sagte in PWM Steuerung mit Fade:
@Aphofis sagte:
Hatte jetzt Zeichenkette genommen.
Ich schrieb "Werteliste", die man auswählen kann.
Ich habe nur diese Werte zur Auswahl
-
@paul53 sagte in PWM Steuerung mit Fade:
@Aphofis sagte:
Warteliste ist also Logikwert!
Nein, Werteliste ist "Werteliste" (5. Auswahl von oben) mit type: "number".
@Aphofis sagte in PWM Steuerung mit Fade:
was kommt in Role rein ?
Bin mir nicht sicher, da in den Regeln nicht aufgeführt. Am ehesten "level" oder "level.mode", denn "value" ist für "read only" Datenpunkte.
Ich habe einiges an verschiedenen Level und nur Level aber Level.mode gibt es nicht
-
Wie bekomme ich denn nun die werteliste
Wie sieht denn bei dir ram aus wenn du den datenpunkt als werteliste erstellst -
@Aphofis sagte:
wenn du den datenpunkt als werteliste erstellst
Habe ich schon gepostet
{ "_id": "javascript.1.test.Wellen", "type": "state", "common": { "name": "Wellen", "role": "", "type": "number", "desc": "Auswahl Wellen", "states": "0:Aus;1:Sequenzial;2:Intervall;3:Pulse;4:Wellengang", "min": 0, "max": 4, "def": 0, "read": true, "write": true }, "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1568377978546, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 } }
-
@paul53 sagte in PWM Steuerung mit Fade:
@Aphofis sagte:
wenn du den datenpunkt als werteliste erstellst
Habe ich schon gepostet
{ "_id": "javascript.1.test.Wellen", "type": "state", "common": { "name": "Wellen", "role": "", "type": "number", "desc": "Auswahl Wellen", "states": "0:Aus;1:Sequenzial;2:Intervall;3:Pulse;4:Wellengang", "min": 0, "max": 4, "def": 0, "read": true, "write": true }, "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1568377978546, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 } }
Hab jetzt deine RAM genommen und in meinen Datenpunkt eingebunden.
Jetzt habe ich ein Dropdown Menü mit einer 0 in Klammern dahinter. -
@paul53
Also habe jetzt den Datenpunkt so wie beschrieben.
Die Steuerung ist so richtig?var inc, dec, sequenzial, spannung, delta, Intervall; inc = 1750 / getState("Aqua_Control.0.Tunze_Steuerung.Sequenzial_Wave_Up").val; dec = -1750 / getState("Aqua_Control.0.Tunze_Steuerung.Sequenzial_Wave_Down").val; on({id: 'Aqua_Control.0.Tunze_Steuerung.Tunze_Wellen_Auswahl', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if ((obj.state ? obj.state.val : "") == 1) { sequenzial = true; // Aktionen } else { sequenzial = false; } sequenzial = (obj.state ? obj.state.val : ""); if (sequenzial) { spannung = 30; setState("sonoff.0.Aqua_Wave.Channel1"/*Aqua_Wave_Pump_1*/, spannung); delta = inc; Intervall = setInterval(function () { spannung = (typeof spannung == 'number' ? spannung : 0) + delta; setState("sonoff.0.Aqua_Wave.Channel1"/*Aqua_Wave_Pump_1*/, spannung); if (spannung >= 100) { delta = dec; } if (spannung <= 30) { delta = inc; if (!sequenzial) { (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})(); } } }, 25); } }); // Sequenzial_Up (ms) on({id: 'Aqua_Control.0.Tunze_Steuerung.Sequenzial_Wave_Up', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; inc = 1750 / (obj.state ? obj.state.val : ""); }); // Sequenzial_Down (ms) on({id: 'Aqua_Control.0.Tunze_Steuerung.Sequenzial_Wave_Down', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; dec = -1750 + (obj.state ? obj.state.val : ""); });
-
Hatte die Steuerung mal getestet, der Channel 1 vom Sonoff Aqua_Wave rennt auch los was ich sehen kann sind auch minus werte dabei und ich kann den Datenpunkt wieder nicht auf aus setzen oder stoppen.
Kann man die Steuerung nicht irgendwie anders programmieren das nicht so viele Rechenschritte sind!? Ich denke der Pi ist damit überfordert oder bzw iobroker. -
@Aphofis sagte:
Die Steuerung ist so richtig?
Nein. Zeile 15 (setze sequenzial auf Wert) muss raus und Zeilen 16 bis 33 sind die Aktionen, die anstelle des Kommentars "Aktionen" einzusetzen sind. Etwa so:
-
@paul53
und das um die Uhrzeit !
Ne ne ne ich mache morgen weiter! -
@Aphofis
Was bedeutet Pulse_Wave_Stop (30 s) ? Dauer für 30 % oder für 100 % ? -
@paul53
Also:Sequenzial Wellenverlauf
von 30% Wave_Up rauf in 1,9 sek und runter mit Wave_Down in 2 sek dann von vorneIntervall Wellenverlauf
von 100% mit Wave_Down runter auf 30% dort mit Wave_Hold gehalten für 1 sek dann wieder von vorne sofort 100%.Pule Wellenverlauf
von 30% mit Wave_Up in 2,5 sek hoch auf 100% dann mit Wave_Stop sofort runter auf 30% dann wieder von vorne.Wellengang Wellenverlauf
von 30% mit Wave_Up hoch auf 100% in 0,53 sek dann sofort mit Wave_Stop halten bei 30% für 0,6 sek dann wieder hoch -
@Aphofis sagte:
Pule Wellenverlauf
von 30% mit Wave_Up in 2,5 sek hoch auf 100% dann mit Wave_Stop sofort runter auf 30% dann wieder von vorne.Du hast bei Pulse_Wave_Stop eine Zeit (30 s) eingegeben. Bedeutet das: 30 s lang auf 30 %, bevor es wieder von vorne los geht ?
-
@paul53 sagte in PWM Steuerung mit Fade:
@Aphofis sagte:
Pule Wellenverlauf
von 30% mit Wave_Up in 2,5 sek hoch auf 100% dann mit Wave_Stop sofort runter auf 30% dann wieder von vorne.Du hast bei Pulse_Wave_Stop eine Zeit (30 s) eingegeben. Bedeutet das: 30 s lang auf 30 %, bevor es wieder von vorne los geht ?
Nein 2,5 Sek hoch auf 100% dann sofort runter auf 30% dort gehts dann sofort wieder hoch auf 100% eigntl kann dem entsprechend Wave_Stop raus
-
@Aphofis sagte:
Nein 2,5 Sek hoch auf 100% dann sofort runter auf 30% dort gehts dann sofort wieder hoch
Also ein Sägezahn-Verlauf.
@Aphofis sagte in PWM Steuerung mit Fade:
eigntl kann dem entsprechend Wave_Stop raus
Ja, das hatte mich irritiert.