Beiträge anzeigen

Diese Sektion erlaubt es ihnen alle Beiträge dieses Mitglieds zu sehen. Beachten sie, dass sie nur solche Beiträge sehen können, zu denen sie auch Zugriffsrechte haben.


Themen - almot89

Seiten: [1]
1
Hier mal mein geänderter Baustein Dimm_I

Der Baustein dimmt im Gegensatz zum original, bei gerücktem Taster bis 255 hoch und bis zum eingestellten min wird wieder runter.

die Tastererkennung (positiv/negativ schaltend) und entprellung wurde entfernt.

(* the input is first sent through auto reconfiguration and debouncing *)
//config(IN := IN, TD := T_DEBOUNCE, TR := T_RECONFIG);
decode(in := IN, T_LONG := T_DIMM_START);

IF RST THEN
IF rst_out THEN out := 0; END_IF;
Q := FALSE;
dir := out > 127;
ELSIF set THEN
out := val;
Q := TRUE;
(* set direction to up when value < 127 otherwise set dir down dir is reversed because next action will reverse again *)
dir := out > 127;
ELSIF decode.SINGLE THEN
(* a single click reverses output Q *)
Q := NOT Q;
(* when dimmer is turned on we need to limit out to min and max limits *)
IF Q THEN out := LIMIT(MAX(MIN_ON,1), out, MAX_ON); END_IF;
(* set the appropriate direction of dimmer dir is reversed because next action will reverse again *)
dir := out > 127;
ELSIF decode.TP_LONG THEN
IF NOT Q THEN
IF SOFT_DIMM THEN
OUT := 1;
dir := TRUE;
ELSE
OUT := LIMIT(MAX(MIN_ON,1), out, MAX_ON);
DIR := out < 127;
END_IF;
Q := TRUE;
ELSE
(* reverse direction with every long click *)
dir := NOT dir;
END_IF;
END_IF;

(* set the double click output *)
IF NOT dbl_toggle THEN dbl := FALSE; END_IF;
IF decode.DOUBLE THEN dbl := NOT dbl; END_IF;

(* while dimming is active ramp the output out up or down *)
dim(DIR := dir, e := decode.LONG AND Q, TR := T_DIMM, rmp := out);

(* reverse direction when limits are reached *)
//IF out < 30 THEN
//dir := TRUE;
//ELSIF out = 255 THEN
//dir := FALSE;
//END_IF;

(* Sperre für minimum*)
IF  Q AND out < MIN_ON THEN
out := MIN_ON;
END_IF
(* limit the maximum runtime *)
IF t_ON_MAX > t#0s THEN
t3(in := q, pt := T_ON_MAX);
Q := Q XOR t3.Q;
END_IF;


vieleicht hat ja jemand ähnliche vorstellungen.

getestet mit codesys v3.5 (Raspberry pi, wago 750-342, wago 0-10V Ausgangskarte und Finder slave Dimmer 15.11 0-10V)

2
oscat.lib fuer CoDeSys 3 / problem mit dem Baustein Switch_I
« am: 08. Oktober 2016, 01:22:53 »
Hallo,

Ich habe jetzt 1 Jahr mein haus mit codesys, Raspberry pi und Oscat libs automatisiert. Ich hatte jetzt schon ein paar mal das Problem, das der Baustein Switch_i (der mir als Stromstoßrelais für die Beleuchtung dient) um 0.00Uhr bis Sonnenaufgang nicht funktionierte. Der Ausgang wird nicht True obwohl "IN" über die den Schalter oder Visu getriggert wird. Nach Sonnenaufgang funktioniert das ganze wieder.

hat jemand eine Idee warum das so ist?

am RST Eingang ist alles FALSE.

Ich benutze den Baustein sehr oft. ca. 4 von 30 funktionierten nicht zuverlässig

[gelöscht durch Administrator]

Seiten: [1]