Wie programiere ich einen Dimmer mit S7

Rossi

Level-1
Beiträge
21
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Tach Leute und Frohes neues Jahr
ich möchte gerne eine Lampe dimmen ( O-10 Volt analog output ) .
Mein problemm ist ich möchte das der dimmvorgang ca 10 secunden dauert von 0 auf 100 %. Wie programiere ich das ?? Hab echt kein plan ... :???:
 
Da gibt es mehrere Möglichkeiten:
Entweder die Zeit abfragen und je nach Zeitwert bzw. Zeitdifferenz den Ausgabewert ermitteln
Oder einfach OB 35 verwenden und alle x Millisekunden den Ausgabewert anpassen
Beides natürlich in beide Richtungen und nur wenn gewünscht.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,
zum Skalieren kannst Du FC_Scale aus der Siemens Bibliothek verwenden.
OB35 kann ich an dieser Stelle auch empfehlen.
Der Baustein überwacht den Analogwert auf Gülltigkeit. Falls ich mich recht entsinne 0 - 10V entspricht einem Analogen Wert von 0 - 28672.
Der Bereich von 28672-32768 ist Überlauf bzw. ein Wert über 10V.

Was für ein Dimmer willst Du benutzen? Ich bin nämlich gerade auf der Suche nach einem Dimmer mit 0..10V(oder 0 bzw. 4..20mA) als Stellwert der nicht gerade in der gleichen Presklasse mit EIB-Geräten mitspielt.

Gruß
Alex
 
Hallo,
der FC105 (SCALE, oder Wert skalieren) arbeitet bei einer Spannung von 0 bis 10V (unipolar) im Bereich von 0 bis 27648.
Um den Wert von 0 bis 27648 hoch- oder runterzuzählen dafür gibt es viele Möglichkeiten.
Eine einfache Möglichkeit ist die Verwendung des SFB 2 "CTUD". Den Zählbereich von 0 bis 27648 begrenzen und zum hoch- oder runterzählen einen Taktmerker (je nach Geschwindigkeit) verwenden.

Gruß Rayk
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich bin nämlich gerade auf der Suche nach einem Dimmer mit 0..10V(oder 0 bzw. 4..20mA) als Stellwert der nicht gerade in der gleichen Presklasse mit EIB-Geräten mitspielt.


Hast du schon mal im Bereich der Showtechnik gesucht? 0-10V war da lange Zeit Standard in der Lichtsteuerung, bis das DMX-Protokoll entwickelt wurde. Die meisten Dimmer arbeiten zwar mittlerweile mit DMX, aber viele kleine Single-Chanel-Geräte haben noch eine 0-10V-Schnittstelle für externe Steuerungen.


Gruß Tobi
 
Das 170€-Teil ist - hm, suboptimal :rolleyes: Würde ich die Finger von lassen. Ich habe früher in der Veranstaltungstechnik gearbeitet und ein paar von diesen Billigheimern repariert. Die Entstörung taugte nicht wirklich was und die Leiterbahnen auf der Endstufenplatine waren etwas knapp bemessen. Da gibts schon bessere Geräte für das Geld.


Gruß Tobi
 
dimmer

und hier noch ein code zum anschauen

der code entstammt der freien lib unter www.oscat.de

FUNCTION_BLOCK dimm_i
VAR_INPUT
set : BOOL;
in : BOOL;
rst : BOOL;
END_VAR
VAR_INPUT CONSTANT
T_debounce : TIME := T#10ms;
T_reconfig : TIME := T#10s;
T_on_max : TIME := T#0h;
T_dimm_start : TIME := T#1s;
T_dimm: TIME := T#3s;
END_VAR
VAR_OUTPUT
Q : BOOL := 0;
out : BYTE := 0;
END_VAR
VAR
tx : TIME := T#0s;
last_edge : BOOL;
state : BYTE := 0;
edge : BOOL := 0;
r_edge : BOOL := 0;
T_on : TIME;
dimm_up: BOOL;
ramp : rmp_B;
last_step : TIME;
END_VAR

(*
version 1.0 4 aug 2006
programmer hugo
tested by tobias

this is an intelligent dimmer interface with an autoset feature for "in" it will automatically detect the type of switch:
low active pulses or high high active pulses are allowd for in.
a configurable debounce timer will debounce input signals
if t_on_max is set to anything other then 0 the output will be turned off after the max on time is reached.
the times for debounce, dimming ramp, wait time before dimming and max on time are all programmable.

the dimmer has outputs Q for on and off and also out with the analog dimm value.

*)


IF rst THEN
state := 0;
Q := 0;
dimm_up := TRUE;
ELSIF set THEN
state := 0;
Q := TRUE;
out := 255;
dimm_up := FALSE;
T_on := TIME();
ELSE
CASE state OF
(* state 0 wait for activity *)
0 : IF (r_edge AND in AND NOT edge) OR (NOT r_edge AND NOT in AND edge) THEN
state := 1;
tx := TIME();
last_edge := in;
END_IF

(* state 1 debouncing *)
1: IF TIME() - T_debounce >= tx THEN
state := 2;
tx := TIME();
END_IF;

(* state 2 wait for second edge to toggle output *)
2: IF TIME() - T_dimm_start >= tx THEN
state := 3;
tx := TIME();
(* time to switch elapsed without switching if Q = 0 turn on output and start dimming at 1 *)
IF NOT Q THEN
Q := TRUE;
t_on := tx;
out := 1;
dimm_up := TRUE;
ELSE
IF out =255 THEN dimm_up := FALSE; END_IF;
END_IF;
ELSIF in XOR edge THEN
(* wait for edge to toggle output and stop all activity *)
IF Q THEN
Q := FALSE;
state := 0;
ELSE
Q := TRUE;
state := 3;
IF out = 0 THEN out := 255; END_IF
IF out = 255 THEN dimm_up := FALSE; END_IF;
tx := TIME();
t_on := tx;
END_IF;
END_IF;

(* state 3 entered dimming phase *)
3: IF in AND r_edge THEN
(* generate ramp *)
tx := TIME();
IF tx >= last_step + T_dimm / 255 THEN
last_step := tx;
IF dimm_up AND out < 255 THEN
out := out + 1;
IF out = 255 THEN
dimm_up := FALSE;
state := 0;
END_IF;
ELSIF NOT dimm_up AND out > 0 THEN
out := out -1;
IF out = 0 THEN
Q := FALSE;
state := 0;
dimm_up := TRUE;
END_IF;
END_IF;
END_IF;
ELSE
dimm_up := NOT dimm_up;
state := 0;
END_IF;

END_CASE;
(* check for max t_on time and reset output if too long *)
IF Q AND t_on_max > T#0s AND TIME() - t_on_max >= T_on THEN Q := 0; END_IF;

(* check for reconfig and set R_edge to high for rising edge sensitivity *)
IF TIME() - T_reconfig >= tx THEN R_edge := NOT in; END_IF;

(* set edge to follow in for next edge detection *)
edge := in;
END_IF;
 
Das ist ja schön. Jetzt hättest Du aber auch noch verraten können wo.

Unter anderem bei Prolighting. Das DPX 620 II von Botex ist z.b. wesentlich besser verarbeitet als die Stairville-Krücke, auch die Entstörung ist besser. Ohne genaue Informationen über den geforderten Einsatzzweck des Dimmers lässt sich allerdings nur schwer eine Empfehlung abgeben.


Gruß Tobi
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Unter anderem bei Prolighting. Das DPX 620 II von Botex ist z.b. wesentlich besser verarbeitet als die Stairville-Krücke, auch die Entstörung ist besser. Ohne genaue Informationen über den geforderten Einsatzzweck des Dimmers lässt sich allerdings nur schwer eine Empfehlung abgeben.


Gruß Tobi

Hallo Tobi,
das ist aber für den Suchenden schon mal ein Anhaltspunkt. Ich denke das zu der Aussage "Da gibts schon bessere Geräte für das Geld." auch ein Tipp dazu gehört welche denn die besseren sind.

Mein Kommentar war nicht böse gemeint. Es ist gut das Du helfen willst.
 
Kein Problem. War nur schon so spät und mir ist auf Anhieb nichts eingefallen ;) Ich hab vorhin noch mal alte Kataloge gesucht, scheinen aber schon weg zu sein. Naja, ist mittlerweile vier Jahre her, seit ich zuletzt in der Branche gearbeitet habe und viele der Geräte, die ich kannte, gibts anscheinend nicht mehr.


Gruß Tobi
 
Zurück
Oben