Autor Thema: TIMER_2 Verhalten bei Programmstart  (Gelesen 12717 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

dieter

  • Gast
TIMER_2 Verhalten bei Programmstart
« am: 16. November 2007, 14:54:06 »
Hallo,

nach Einspielen eines neuen Programms in den WAGO 857-870 und anschliessendem Programmstart wird bei TIMER_2 immer der Output TRUE. Ich betreibe den Baustein mit mode=11 (every day) und brauche Q nur für einen Zyklus, um einen Tageswechsel zu bemerken.
Was kann ich dagegen tun ?

Grüsse,
Dieter

Offline hugo

  • Global Moderator
  • *****
  • Beiträge: 2 150
    • Profil anzeigen
Re: TIMER_2 Verhalten bei Programmstart
« Antwort #1 am: 16. November 2007, 15:21:16 »
welche uhrzeit hat du eingestellt und welche pulsdauer?

Offline hugo

  • Global Moderator
  • *****
  • Beiträge: 2 150
    • Profil anzeigen
Re: TIMER_2 Verhalten bei Programmstart
« Antwort #2 am: 16. November 2007, 15:43:38 »
ich habe timer_2 nochmals getestet,
uhrzeit tod#00:00
dauer t#0ms (einstellung für einen zyklus)

der baustein schaltet exact um 0:00 jeden tag einen zyklus und kein puls bei programmstart

welche revision der lib hast du welches target? probiers mal in der codesys simulation

dieter

  • Gast
Re: TIMER_2 Verhalten bei Programmstart
« Antwort #3 am: 16. November 2007, 22:59:17 »
benutze oscat 2.2 mit wago 758-870
uhrzeit tod#01:00
dauer t#0ms (einstellung für einen zyklus)

kann es vielleicht sein, dass die Uhrzeit noch nicht komplett initialisiert ist, obwohl dies im ersten Baustein der Task gemacht wird, und TIMER_2 erst in einem späteren Baustein aufgerufen wird ?
Aber dann dürfte trotzdem kein Puls ausgelöst werden, da die Uhr ja auf 1970 steht, was ja in der Vergangenheit liegt.

Offline hugo

  • Global Moderator
  • *****
  • Beiträge: 2 150
    • Profil anzeigen
Re: TIMER_2 Verhalten bei Programmstart
« Antwort #4 am: 16. November 2007, 23:26:35 »
richtig, ich teste auch mit manualler zeit und die steht beim start auch auf 1.1.1970
mein ausgang ist beim start low.

Offline hugo

  • Global Moderator
  • *****
  • Beiträge: 2 150
    • Profil anzeigen
Re: TIMER_2 Verhalten bei Programmstart
« Antwort #5 am: 16. November 2007, 23:30:04 »
checke bitte mal in der simulation unter codesys

Offline hugo

  • Global Moderator
  • *****
  • Beiträge: 2 150
    • Profil anzeigen
Re: TIMER_2 Verhalten bei Programmstart
« Antwort #6 am: 17. November 2007, 00:33:46 »
kann es sein das deine datumzeit bei programmstart einen undefinerten zustand hat?
oder ist es definitiv 1.1.1970 ?

dieter

  • Gast
Re: TIMER_2 Verhalten bei Programmstart
« Antwort #7 am: 18. November 2007, 01:22:04 »
Ich habe da wo der puls gesetzt wird beim programmstart einmal testweise die Uhrzeit in eine Variable geschrieben.
Es ist die richtige aktuelle Zeit.
Ich werde am Montag mal in der Simulation testen.

dieter

  • Gast
Re: TIMER_2 Verhalten bei Programmstart
« Antwort #8 am: 20. November 2007, 23:13:24 »
Ich glaub ich hab den Fehler gefunden:

Im Gegensatz zu persistenten Variablen werden Retain-Variablen allerdings bei einem erneuten
Programm-Download neu initialisiert.


teht so im Codesys-Handbuch.

Und in timer_2 ist die Variable run_date nur als RETAIN definiert:
VAR RETAIN
   run_date : DATE;
END_VAR

Offline hugo

  • Global Moderator
  • *****
  • Beiträge: 2 150
    • Profil anzeigen
Re: TIMER_2 Verhalten bei Programmstart
« Antwort #9 am: 21. November 2007, 01:18:19 »
ja das ist richtig wir haben persisitent rausgenommen weil etliche sps controller kein filesystem haben und persistent nicht unterstützen

dieter

  • Gast
Re: TIMER_2 Verhalten bei Programmstart
« Antwort #10 am: 21. November 2007, 08:40:48 »
dann wird das wohl auch so bleiben schätze ich, oder ?
mach ich zwar nicht gerne, aber dann werd ich wohl in der LIB editieren müssen
bei einem LIB-Update muss ich dann aufpassen