Wertübergabe von TP 170B an S5 95U

Soccer

Level-1
Beiträge
3
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Kurze Einleitung zum (naja nicht direkt ein) Problem!

Beim koppeln einer S5 95U mit dem genannten TP soll der Wert für die Einförderzeit eines Förderbands übergeben werden.
Der Wert wird im TP über ein Eingabefeld eingegeben und dann in einen FB (Funktionsbaustein) übergeben. Dieser Wert wird auch wie
erwartet in den DB geschrieben. Allerdings wird der Wert immer als xxx.0 (Format "KT" Zeitwert) übergeben.
Im folgenden ist der Programmtext im FB notiert:

A DB 10 (aufruf von DB 10)
L DW 0 (Laden des Datenwortes 0)
SA T1 (Eine Zeit, die im AKKU1 abgelegt wurde, wird ausschaltverzögert gestartet)
BE (Baustein ende)

Es ist nicht möglich das Zeitformat xxx.1 oder xxx.2 oder xxx.3 zu übergeben.
xxx = Zeitfaktor
Zeitbasis
.0 = x 0.01s
.1 = x 0.1s
.2 = x 1s
.3 = x 10s
Der Wert aus dem DB soll dann an einen Timer übergeben werden (siehe Befehl SA T1)!
Ist das überhaupt möglich?
Was mache ich falsch?
:confused:
 
Der Wert wird natürlich in einen DB übertragen. ;)

Das Problem ist eher weniger die Übertragung vom TP zur SPS, es geht viel mehr um das Problem das der Wert der im DW0 des DB´s hinterlegt worden ist nicht zum Timer übertragen wird.
Mit dem oben genannten Quellcode sollte das evtl unserer Meinung nach gehen. ODer doch nicht?? :confused:


Ich hab mal die Var.aus Prootoll als Bild angehängt.

Gruss
SVen
 
Kurze Einleitung zum (naja nicht direkt ein) Problem!

Beim koppeln einer S5 95U mit dem genannten TP soll der Wert für die Einförderzeit eines Förderbands übergeben werden.
Der Wert wird im TP über ein Eingabefeld eingegeben und dann in einen FB (Funktionsbaustein) übergeben. Dieser Wert wird auch wie
erwartet in den DB geschrieben. Allerdings wird der Wert immer als xxx.0 (Format "KT" Zeitwert) übergeben.
Im folgenden ist der Programmtext im FB notiert:

A DB 10 (aufruf von DB 10)
L DW 0 (Laden des Datenwortes 0)
SA T1 (Eine Zeit, die im AKKU1 abgelegt wurde, wird ausschaltverzögert gestartet)
BE (Baustein ende)

Es ist nicht möglich das Zeitformat xxx.1 oder xxx.2 oder xxx.3 zu übergeben.
xxx = Zeitfaktor
Zeitbasis
.0 = x 0.01s
.1 = x 0.1s
.2 = x 1s
.3 = x 10s
Der Wert aus dem DB soll dann an einen Timer übergeben werden (siehe Befehl SA T1)!
Ist das überhaupt möglich?
Was mache ich falsch?
:confused:

Der Timer braucht am Eingang eine Flanke.
Hier ein Auszug aus dem Handbuch:
Starten einer Zeit als Ausschaltverzögerung
Die Zeit wird bei fallender Flanke des VKE gestartet.
Bei VKE ”1” wird die Zeit auf den Anfangswert gesetzt.
Abfragen liefern Signalzustand ”1”, solange das VKE am Eingang
”1” ist oder die Zeit läuft.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ist schon was her, aber ich glaube das OP gibt die Werte für die Zeitbasis selber vor, probier mal bei der Eingabe mit Nachkommastellen aus.
Wichtig zum starten der Zeit ist das VKE wie schon beschrieben.

A DB10
U E 0.0
L DW 0
SA T 1
 
Ist schon was her, aber ich glaube das OP gibt die Werte für die Zeitbasis selber vor, probier mal bei der Eingabe mit Nachkommastellen aus.
Wichtig zum starten der Zeit ist das VKE wie schon beschrieben.

A DB10
U E 0.0
L DW 0
SA T 1


Ach jetzt versteh ich was Ihr meint. Man soll also den Eingang der kommen muss um den Timer zu starten auch direkt im FB abfragen.
Wie schaut es denn dann mit den Ausgängen aus? Muss ich die dann auch noch hier einfügen?

Der Timer an sich existiert ja an andere Stelle im Programm. Dort ist ja alles angegeben was EIn/Ausgänge angeht.

Gruß
Sven
 
Ich denke mal , du meinst die Abfrage vom Timer steht woanders

Warum eigentlich ein FB, dann würd ich Parameter übergeben wie z.B.
Start , DB, Datenwort
Ausgang Benär-Signal der Zeit

U T1
==Out

Den dann auf einen Merker, und den Abfragen

Oder Du fragst dann in dem anderen Baustein direkt auf "U T1" ab.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Zeitbasis

Hallo,

laut Handbuch werden Zeiten für Timer immer in Sekunden dargestellt und mit dem richtigen Zeitfaktor an die Steuerung übergeben. Ob das mit allen Steuerungen der S5-Reihe und allen S/-200,300,400 und allen möglichen OP's von OP3 bis OP37 , TP's und MP's funktioniert, weiß der grüne Geier. Einfach probieren, mal mehr als 99 Sekunden einzugeben.
 
Hallo.

Ersetzt der SA-Befehl im FB eigentlich einen Timer?? Oder dient er nur dazu den Timer anlaufen zu lassen?

Gruß
Sven
 
Zurück
Oben