Frage zu Uhrzeitalarm

Insane

Level-1
Beiträge
202
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen

Ich versuche mir grade einen Uhrzeitalarm zusammen zu basteln. Ich will den OB17 aufrufen und damit minütlich nur einen Ausgang A4.0 für 2 sec. anschalten.

So also hab ich mir erst mal den OB17 alngelegt in dem ich einfach eine ODER Verknüpfung habe E0.0 oder E0.1 = A4.0

Im OB1 rufe ich mir den SFC28"Set Tint" auf

U E 0.0
SPBNB _001
CALL SFC 28
OB_NR :=17
SDT :="Zeiten_Zähler_Merker".Uhrzeit
PERIOD :=W#16#201
RET_VAL:=MW44
_001: U BIE
= A 4.1


AM SDT bin ich mir nicht sicher was ich angeben muss und auch das Format bekomme ich nicht so hin wie es sein soll

dann rufe ich auch noch im OB1 den SFC30"ACT Tint" auf
diesen habe ich wie folgt beschrieben

CALL SFC 30
OB_NR :=17
RET_VAL:=MW48
NOP 0


Also hauptsächlich interresiert mich -> Funktioniert das überhaupt so ? oder wie macht man das anders ? dann was bei SCF 28 SDT hin muss und auf was ich noch achten muss.

Über ein BSP Projekt oder ein paar Tipps wär ich ziemlich dankbar ;-)
 
Zum SDT-Eingang vom SFC28 schreibt Siemens folgendes
...
Hier das Startdatum und Startuhrzeit eingeben; aber nicht als DT-Format sondern über eine Variable, die im aufrufenden Baustein definiert werden muss und vom Typ "DT" ist
...
SDT: #zeitpunkt1
...
 
Also bisher bin ich noch am PLCSIM testen. Muss ich denn irgendwo in der HW noch "aktiv" schalten ??

Ist es ok das ich die beiden SFc'S im OB 1 aufrufe. Das mit dem SDT versteh ich immer noch nicht =)

ich les mir jetzt mal durch was ich unter deinem Link finde


Ich habe jetzt den OB10 ausgewählt da er der einzige ist der in meiner HW konfig nicht grau hinterlegt ist.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Jap den hab ich jetzt ausgewählt. In der HW konfig auf minütlich gestellt.

kannst du mir das mit dem SDT nochmal erklären oder mir einfach mal genau sagen was ich absolut hinschreiben kann
 
Stop wenn ich das über de HW konfig mache sind doch SFC28 und SFC 30 überflüssig ??

Wenn ich ne Startzeit in der HW konfig angebe von 08:30 und das heutige datum fängt der an jede minute ab dann den OB10 zu bearbeiten ??

Somit brauch ich dei beiden SFC's die ich im Ob1 habe nicht ???
 
Noch als Hinweis, hatte ich oben nicht ganz richtig erklärt. Wenn du den SFC 28 und SFC 30 benutzt, brauchst du in der HW-Konfig nichts einstellen. Also entweder in der HW-Konfig oder über SFC28 und 30
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Jap den hab ich jetzt ausgewählt. In der HW konfig auf minütlich gestellt.

kannst du mir das mit dem SDT nochmal erklären oder mir einfach mal genau sagen was ich absolut hinschreiben kann
Du deklarierst z.B. in dem Baustein wo du die Funktion aufrufst eine temp Variable vom Typ DT die du am SFC28 schreibst. Diese Variable beschreibst du dann mit deinem Zeitwert
 
Ja hab die beiden SFC's jetzt rausgeschmissen =)

udn habs so gemacht wie in deinem Link erklärt ( Wenn man es nur über die HW Konfig macht )

OB10 Aktiv , Täglich , 03.09.2009 , 8:15

Wenn ich dann meinen Eingang 0.1 im PLC Sim auf 1 habe wird praktisch jede minute die Anweisung nach dem E0.1 ( der A4.0 ) setzt bearbeitet ??
 
Ja hab die beiden SFC's jetzt rausgeschmissen =)

udn habs so gemacht wie in deinem Link erklärt ( Wenn man es nur über die HW Konfig macht )

OB10 Aktiv , Täglich , 03.09.2009 , 8:15

Wenn ich dann meinen Eingang 0.1 im PLC Sim auf 1 habe wird praktisch jede minute die Anweisung nach dem E0.1 ( der A4.0 ) setzt bearbeitet ??
Ich weiss jetzt nicht was du wo und wie genau programmiert hast, aber der OB10 wird einmal täglich und nicht minütlich aufgerufen
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich hatte aber in der HW-Konfig die möglichkeit den auf minütlich zu stellen und es funktioniert auch.

Wenn ich ein Signal sagen wir mal eine Stunde lang anstehen habe (E0.0)

und der OB10 wird minütlich bearbeitet ... dann wird doch die zuweisung nach dem E0.0 nur einmal auf True gesetzt oder ??

Wie kann ich das machen das der bei jedem zyklus neu auf True geschaltet wird.

Jede minute soll A4.0 für 2 sec leuchten

U E0.0
= A4.0
 
Du hattest oben geschrieben das du den täglich aufrufst ;-)
Setze in deinem Zeit-OB doch einen Merker.
Mit diesem Merker startest du in deinem Hauptprogramm eine Zeit von 2s und setzt nach Ablauf dieser Zeit den Merker wieder zurück. Beim nächsten Aufruf vom OB10 geht das Spielchen dann von vorne los ;-)
 
Zurück
Oben