INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Timer



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

28.05.2009, 14:50
Beitrag #1

NafeZ Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 95
Registriert seit: Apr 2009

8.5.1
2008
en

12345
Deutschland
Timer
Hallo,

ich möchte gerne eine Timerfunktion schreiben, mit der man den Zeitwert sowohl incrementieren als auch decrementieren kann. Es geht dabei um die Ansteuerung eines Ventils.
D.h. wenn das Ventil geschlossen ist, dann sendet der Endschalter dafür das Signal "1" (Zeitwert ist in dem Fall 0 Sekunden). Sobald das AUF-Signal kommt soll der Timer solange laufen, bis es wieder weggenommen wird. Hier haben beide Endschalter den Signalwert "0". Die Zeit soll an dieser Stelle angehalten werden können. Angenommen das Ventil ist jetzt in der Mittelstellung und von meiner SPS kommt das Signal ZU, dann soll die Zeit wieder, solange der Befehl ansteht, zurücklaufen.

Mit anderen Worten: Ist der Zweitwert 0 sek, dann ist das Ventil GESCHLOSSEN (Endschalter ZU=true). Ist der Zeitwert bswp. 10 sek, dann ist das Ventil OFFEN (Endschalter AUF=true). Bei Zeitwerten die dazwischen haben beide Endschalter den Wert "false"
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.05.2009, 16:30
Beitrag #2

NafeZ Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 95
Registriert seit: Apr 2009

8.5.1
2008
en

12345
Deutschland
Timer
Ich habe mich gerade 2h lang an der Lösung des Problems versucht, allerdings mit nur wenigen Erfolgserlebnissen. Es passiert was, aber noch nicht das was passieren soll. Der Code ist relativ wirr, aber ich hoffe, dass jemand gaaaaaaanz viel Langeweile hat und sich den Krautsalat mal anschaut.

Danke schonmal im voraus!Smile

LV Version 8.5.1
Sonstige .vi  automatiksteuerung_3_4_6_7.vi (Größe: 19,63 KB / Downloads: 228)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.05.2009, 18:39
Beitrag #3

Kvasir Offline
LVF-Freak
****


Beiträge: 642
Registriert seit: May 2006

10
2004
DE_EN

0000
Oesterreich
Timer
Ich verstehs nicht.

Du hast einen Wert der steigen soll? Ab wann, wie lange?
Dann soll er zurücklaufen? Ab wann, wie lange?

Triggern soll der Wert auch was?

A few weeks of developement and testing can save a WHOLE afternoon in the library!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.05.2009, 07:30 (Dieser Beitrag wurde zuletzt bearbeitet: 29.05.2009 07:31 von NafeZ.)
Beitrag #4

NafeZ Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 95
Registriert seit: Apr 2009

8.5.1
2008
en

12345
Deutschland
Timer
So ein Ventil hat ja ne bestimmte Zeit, die es braucht um von OFFEN zu GESCHLOSSEN zu kommen. Da die Ansteuerung binär erfolgt, muss ich also mit der Zeit arbeiten.

' schrieb:Du hast einen Wert der steigen soll? Ab wann, wie lange?
Der Zeitwert soll steigen, wenn der Befehl ÖFFNEN von der SPS kommt. Sobald der Befehl weggenommen wird oder der Endwert (Maximaldauer von ÖFFNEN nach SCHLIESSEN) erreicht wurde, z.B. 10 Sekunden, bleibt die Uhr sozusagen stehen. (Der aktuelle Zeitwert entspricht dann der momentanen Stellung des Ventils)

' schrieb:Dann soll er zurücklaufen? Ab wann, wie lange?
Zurücklaufen kann er nur dann, wenn der Zeitwert nicht 0 Sekunden ist. Er soll dann, beginnend vom momentanen Zeitwert der Ventilstellung, solange zurück laufen, bis entweder der Zeitwert 0 Sekunden enspricht oder der Befehl SCHLIESSEN nicht mehr ansteht.

' schrieb:Triggern soll der Wert auch was?
Triggern soll er die Beiden Endschalter! Ist der Zeitwert 0 Sekunden, dann soll der Endschalter (LED) für das GESCHLOSSENE VENTIL aufleuchten. Ist der Zeitwert, wie in diesem Beispiel, 10 Sekunden, dann soll der Endschalter (LED) für das OFFENE VENTIL aufleuchten.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.05.2009, 10:45
Beitrag #5

NafeZ Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 95
Registriert seit: Apr 2009

8.5.1
2008
en

12345
Deutschland
Timer
So ich habe mich nochmal dran gesetzt und bin ein gutes Stück weiter gekommen. Allerdings habsch ein Problem mit den Schleifen. Die Incrementierung meines Ausgangswertes ist immer wieder verfälscht. Schauts euch mal an. Wies funktionieren soll steht ja oben ...

LV 8.5.1
Sonstige .vi  automatiksteuerung_3_4_6_7.vi (Größe: 18,64 KB / Downloads: 213)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.05.2009, 13:33 (Dieser Beitrag wurde zuletzt bearbeitet: 29.05.2009 13:37 von NafeZ.)
Beitrag #6

NafeZ Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 95
Registriert seit: Apr 2009

8.5.1
2008
en

12345
Deutschland
Timer
So Leute,

nach ca. 8 h Arbeitszeit habsch die Lösung gefunden. Allerdings gibts da nochn Problem. Und zwar musste ich den Zeitwert (den das Ventil von ZU nach AUF braucht) durch 2 Teilen und dann wieder mit 2 Multiplizieren, um erstens die richtigen Werte angezeigt zu bekommen und zum anderen die korrekte Zeit ablaufen zu lassen. Ohne diese Division bzw. Multiplikation würde das ganze nämlich doppelt solange laufen.

Konkret heißt das, wenn ich 3000 ms eingebe, dann läuft er 6000 ms.

Ich glaube aber, dass meine momentane Lösung zu Ungenauigkeiten führt. Was meint ihr?

   



Obwohl ich nicht glaube, dass jemand mal ein ähnliches Problem haben wird, gebe den Spaß dennoch mal für die Allgemeinheit frei. Denjenigen, die ernsthaft zu helfen versucht haben, sei hiermit gedankt.

LV Version 8.5.1
Sonstige .vi  automatiksteuerung_3_4_6_7.vi (Größe: 22,11 KB / Downloads: 212)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.05.2009, 22:34
Beitrag #7

schrotti Offline
LVF-Freak
****


Beiträge: 842
Registriert seit: Feb 2008

2009 - 2011
2006
kA

70180
Deutschland
Timer
' schrieb:Ich glaube aber, dass meine momentane Lösung zu Ungenauigkeiten führt. Was meint ihr?

Da bin ich mir sogar sicher.

Anbei noch ein Vorschlag von mir.

Lv85_img
Sonstige .zip  Ventil_85.zip (Größe: 22,62 KB / Downloads: 249)

Gruß Julius
Empfehlungen: expressionflow, LavaG , mooregoodideas, OpenG, JKI Blog
Tipp
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.06.2009, 07:25 (Dieser Beitrag wurde zuletzt bearbeitet: 02.06.2009 07:25 von NafeZ.)
Beitrag #8

NafeZ Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 95
Registriert seit: Apr 2009

8.5.1
2008
en

12345
Deutschland
Timer
' schrieb:Da bin ich mir sogar sicher.

Anbei noch ein Vorschlag von mir.

Lv85_img [attachment=46618:Ventil_85.zip]

Na da danke ich Dir doch vielmals für deine Mühe! Dein VI kommt dann wohl zum Einsatz und meins in den Sondermüll.Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.06.2009, 09:07 (Dieser Beitrag wurde zuletzt bearbeitet: 02.06.2009 13:26 von Kvasir.)
Beitrag #9

Kvasir Offline
LVF-Freak
****


Beiträge: 642
Registriert seit: May 2006

10
2004
DE_EN

0000
Oesterreich
Timer
Auch wenn das Problem eigentlich schon gelöst ist, erlaube ich mir hier meinen Vorschlag anzubringen (nachdem ich ja auch schon Anfangs ganz neunmalklug eine detaillierte Beschreibung gefordert habe).

Ich komme auch gänzlich ohne SubVis und komplizierter Logik aus. Denke aber dennoch, dass das Programm tut, was gefordert wurde.

Grüße


Sonstige .vi  Steuerung.vi (Größe: 14,13 KB / Downloads: 203)
Lv85_img1


Angehängte Datei(en) Thumbnail(s)
   

A few weeks of developement and testing can save a WHOLE afternoon in the library!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.06.2009, 12:40
Beitrag #10

NafeZ Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 95
Registriert seit: Apr 2009

8.5.1
2008
en

12345
Deutschland
Timer
Ich danke dir Kvasir. Das VI würd ich noch lieber verwenden. Nur habsch jetzt das Problem, dass ich es als SubVI einbinden möchte und zwar so, dass es mir kontinuierlich die Werte an mein MainVI liefert. Ich habs versucht nur hängt sich das MainVI dabei auf ...

Gelesen habe ich zu diesem Thema schon mehrere Beiträge aus diesem Forum, nur haben die mich nicht wirklich weitergebacht... Die While-Schleife in deinem VI wirkt fürs MainVI wie eine Endlosschleife und deshalb kommt nix zurück. Wie kann ich das erreichen?

MainVI:
Sonstige .vi  SubVI_drive01_2.vi (Größe: 51,02 KB / Downloads: 191)

SubVI:
Sonstige .vi  steuerung_SubVI_.vi (Größe: 16,07 KB / Downloads: 205)


LV-Version 8.5.1
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  2 Parallele While-Schleifen mit unterschiedlichen Timer beenden Tomate27 3 2.662 18.08.2020 13:29
Letzter Beitrag: GerdW
  Timer macht was er will :-) Natalie1984 6 3.578 04.07.2019 12:49
Letzter Beitrag: IchSelbst
  While-Schleife anhalten ohne Timer valerian 2 3.944 04.10.2017 09:28
Letzter Beitrag: valerian
  Timer in [s] grba123 9 7.671 18.08.2015 15:14
Letzter Beitrag: Lucki
  Bedingung mit Timer verknüpfen ETechnik 7 5.945 28.05.2015 19:31
Letzter Beitrag: ETechnik
  (Absoluter) Bezug des VIs Timer-Wert RadioactiveMan 1 3.831 22.07.2014 13:17
Letzter Beitrag: jg

Gehe zu: