# Fehler im TIMER\_P4

**URL:** <https://oscat.discourse.group/t/fehler-im-timer-p4/949>\
**Category:** Bestehende Module / Existing Modules\
**Created:** [7. Dezember 2010 um 11:51 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949 "2010-12-07T11:51:06Z")\
**Posts on this page:** 18\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tom](https://avatars.discourse-cdn.com/v4/letter/t/3d9bf3/32.png) [@Tom](https://oscat.discourse.group/u/Tom)\
**Post date:** [7. Dezember 2010 um 11:51 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/1 "2010-12-07T11:51:06Z")

</div>

Hallo,

ich hatte letztens in einem anderen Thread gepostet [Zeitschaltuhr für Tor und Schranke programmieren - Seite 2](http://www.oscat.de/community/index.php/topic,1030.15.html) und bin nicht sicher, ob das Problem untergegangen ist. Der TIMER\_P4 scheint nicht richtig zu funktionieren, wenn mehrere Ereignisse pro Kanal definiert sind. Kann das jemand bestätigen?

---

<div class="post-metadata">

**Author:** ![NetFritz](https://avatars.discourse-cdn.com/v4/letter/n/6f9a4e/32.png) [@NetFritz](https://oscat.discourse.group/u/NetFritz)\
**Post date:** [7. Dezember 2010 um 20:24 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/2 "2010-12-07T20:24:10Z")

</div>

Hallo  
Ich habe jetzt festgestellt wenn ich das Array so erstelle:

```auto
PRGN : ARRAY[0..63] OF TIMER_EVENT := (TYP := 1, CHANNEL := 0, DAY := 1, START := TOD#22:00,DURATION := T#8h, LAND:=1,LAST:=1),
                                                                  (TYP := 1, CHANNEL := 1, DAY := 1, START := TOD#20:00,DURATION := T#2h, LAND:=1,LAST:=1) ,
                                                                  (TYP := 1, CHANNEL := 2, DAY := 1, START := TOD#10:30,DURATION := T#2h, LAND:=1,LAST:=1) ;

```

dann wird CHANNEL0 nur von 22:00 bis 00:00 eingeschaltet.  
Ist das ein Fehler oder muss bei DAY was anderes stehen?  
Gruß NetFritz

---

<div class="post-metadata">

**Author:** ![Tom](https://avatars.discourse-cdn.com/v4/letter/t/3d9bf3/32.png) [@Tom](https://oscat.discourse.group/u/Tom)\
**Post date:** [8. Dezember 2010 um 06:37 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/3 "2010-12-08T06:37:53Z")

</div>

Ich hab grad noch mal in den Baustein reingeschaut. Da dort mit TOD gearbeitet wird, sind tagesübergreifende Zeiten ein Problem. Z.B. 23:00 + 8 h ergibt TOD#31:00. Klingt komisch, ist aber so. Damit kann das nicht funktionieren. Ab 00:00 wird der Ausgang false, da 00:00 nicht zwischen 23:00 und 31:00 liegt. Das Problem hatte ich bei meiner Schaltuhr auch und hab die interne Berechnung auf DT umgstellt.

Das kommt zu dem Problem bei mehreren Ereignissen pro Kanal hinzu.

---

<div class="post-metadata">

**Author:** ![NetFritz](https://avatars.discourse-cdn.com/v4/letter/n/6f9a4e/32.png) [@NetFritz](https://oscat.discourse.group/u/NetFritz)\
**Post date:** [27. Dezember 2010 um 13:53 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/4 "2010-12-27T13:53:07Z")

</div>

Hallo  
Schon was neues vom TIMER\_P4 ?  
Ich glaube hugo hat den TIMER\_P4 erstellt.  
Gruß NetFritz

---

<div class="post-metadata">

**Author:** ![hugo](https://yyz2.discourse-cdn.com/free1/user_avatar/oscat.discourse.group/hugo/32/133_2.png) [@hugo](https://oscat.discourse.group/u/hugo)\
**Post date:** [17. Januar 2011 um 19:12 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/5 "2011-01-17T19:12:49Z")

</div>

wir werden das in der nächsten release berücksichtigen

---

<div class="post-metadata">

**Author:** ![NetFritz](https://avatars.discourse-cdn.com/v4/letter/n/6f9a4e/32.png) [@NetFritz](https://oscat.discourse.group/u/NetFritz)\
**Post date:** [28. März 2014 um 15:48 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/6 "2014-03-28T15:48:26Z")

</div>

Hallo

Ich habe meine oscat320.lib auf oscat\_basic\_333.lib aktualisiert  
und die oscat\_building\_100.lib installiert .  
Ich war überrascht das es fast reibungslos funktioniert.  
2 Probleme habe ich aber noch und keine Lösung gefunden.

1. TIMER\_P4  
Fehler 3760 SCHALTUHR(3) Fehlerhafter Initalwert.  
PRGN : ARRAY[0..63] OF TIMER\_EVENT := (TYP := 1, CHANNEL := 0, DAY := 1, START := TOD#04:00,DURATION := T#2h, LAND:=1,LAST:=1),  
(TYP := 1, CHANNEL := 1, DAY := 1, START := TOD#20:00,DURATION := T#2h, LAND:=1,LAST:=1) ;

2. 

Fehler 3760 GLOBALE VARIABLEN(29) Fehlerhafter Initalwert.  
ldt: CALENDAR:=(OFFSET:=60,DST\_EN:=TRUE,LOCATION:=1,LONGITUDE:=9.123,LATITUDE:=52.55);

Wie kann ich diese Fehler abstellen?

Gruß NetFritz

---

<div class="post-metadata">

**Author:** ![peewit](https://avatars.discourse-cdn.com/v4/letter/p/ecc23a/32.png) [@peewit](https://oscat.discourse.group/u/peewit)\
**Post date:** [28. März 2014 um 18:59 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/7 "2014-03-28T18:59:31Z")

</div>

hast du eventuell auch deine programmiersoftware aktualisiert ?

ohne deine programmierumgebung zu haben ist es schwierig das problem ein zugrenzen

vergleiche doch mal den baustein timer\_p4 der neue lib mit der alten lib

am besten einen text-export machen und vergleichen  
vermutlich hat sich hier etwas bei der variablen-deklaration verändert

---

<div class="post-metadata">

**Author:** ![NetFritz](https://avatars.discourse-cdn.com/v4/letter/n/6f9a4e/32.png) [@NetFritz](https://oscat.discourse.group/u/NetFritz)\
**Post date:** [29. März 2014 um 15:29 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/8 "2014-03-29T15:29:58Z")

</div>

Hallo

Ich habe in einem neu aufgesetzten Win8.1-Pro 64Bit  
von Wago Codesys 2.3.9.42 installiert und dabei auch neue libs von Wago und oscat installiert.

Ich hatte das auch schon mal Fehlerfrei am laufen, leider habe ich dann das wohl nicht gespeichert  
als ich Codesys beendet habe.

Gruß NetFritz

---

<div class="post-metadata">

**Author:** ![NetFritz](https://avatars.discourse-cdn.com/v4/letter/n/6f9a4e/32.png) [@NetFritz](https://oscat.discourse.group/u/NetFritz)\
**Post date:** [4. April 2014 um 17:08 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/9 "2014-04-04T17:08:01Z")

</div>

Hallo  
Den TIMER\_P4 habe ich sauber.

Ich komme aber nicht weiter mit :  
Fehler 3760 GLOBALE VARIABLEN(29) Fehlerhafter Initalwert.  
ldt: CALENDAR:=(OFFSET:=60,DST\_EN:=TRUE,LOCATION:=1,LONGITUDE:=9.123,LATITUDE:=52.55);

Das muss doch richtig sein?  
Was kann ich machen?

Gruß NetFritz

---

<div class="post-metadata">

**Author:** ![peewit](https://avatars.discourse-cdn.com/v4/letter/p/ecc23a/32.png) [@peewit](https://oscat.discourse.group/u/peewit)\
**Post date:** [5. April 2014 um 05:12 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/10 "2014-04-05T05:12:21Z")

</div>

nimm dich mal die initialwerte einzeln raus  
irgendwann wirds gehen, dann ist klar welcher parameter das problem macht

---

<div class="post-metadata">

**Author:** ![NetFritz](https://avatars.discourse-cdn.com/v4/letter/n/6f9a4e/32.png) [@NetFritz](https://oscat.discourse.group/u/NetFritz)\
**Post date:** [5. April 2014 um 20:07 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/11 "2014-04-05T20:07:04Z")

</div>

Hallo

Heute habe ich gesehen, das am Baustein “CALENDAR\_CALC” die Variable “ldt” auf den neuen Eingang H gelegt ist. ???  
Nach Änderung auf “XCAL” aber keine Änderung in der Fehlermeldung.  
Werde deinen Ratschlag mal befolgen.

Gruß NetFritz

---

<div class="post-metadata">

**Author:** ![NetFritz](https://avatars.discourse-cdn.com/v4/letter/n/6f9a4e/32.png) [@NetFritz](https://oscat.discourse.group/u/NetFritz)\
**Post date:** [6. April 2014 um 08:48 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/12 "2014-04-06T08:48:53Z")

</div>

Hallo  
Mit Fehlermeldung : " ldt: CALENDAR:=(OFFSET:=60,DST\_EN:=TRUE,LOCATION:=1,LONGITUDE:=9.123,LATITUDE:=52.55);"  
ohne Fehlermeldg : " ldt: CALENDAR:=(OFFSET:=60,DST\_EN:=TRUE,LONGITUDE:=9.123,LATITUDE:=52.55);  
LOCATION mag er nicht.  
Gruß NetFritz

---

<div class="post-metadata">

**Author:** ![peewit](https://avatars.discourse-cdn.com/v4/letter/p/ecc23a/32.png) [@peewit](https://oscat.discourse.group/u/peewit)\
**Post date:** [6. April 2014 um 15:06 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/13 "2014-04-06T15:06:32Z")

</div>

überprüfe mal in deiner osacat basic ob deine datentype genau so aussieht

```auto
TYPE CALENDAR :
STRUCT
	UTC : DT; (* world time UTC *)
	LDT : DT; (* local time *)
	LDATE : DATE; (* local date *)
	LTOD : TOD; (* local time of day *)
	YEAR : INT; (* year of LDATE *)
	MONTH : INT; (* month of LDATE *)
	DAY : INT; (* day of LDATE *)
	WEEKDAY : INT; (* weekday of LDATE *)
	OFFSET : INT; (* Time Zone Offset for Local time in minutes *)
	DST_EN : BOOL; (* daylight savings time enable *)
	DST_ON : BOOL; (* true when daylight savings time os on *)
	NAME : STRING(5); (* name of time zone *)
	LANGUAGE : INT; (* location number pls see location setup *)
	LONGITUDE : REAL; (* longitude of current location *)
	LATITUDE : REAL; (* latitude of current location *)
	SUN_RISE : TOD; (* sun_rise for current location *)
	SUN_SET : TOD; (* sun_set for current location *)
	SUN_MIDDAY : TOD; (* worldtime when sun stands at south position *)
	SUN_HEIGTH : REAL	; (* suns heigth at midday, south position *)
	SUN_HOR : REAL; (* sun angle horizontal 0 = north in degrees *)
	SUN_VER : REAL; (* sun angle vertical above horizon in degrees *)
	NIGHT : BOOL; (* true between sun_set and sun_rise *)
	HOLIDAY : BOOL; (* true when holiday *)
	HOLY_NAME : STRING(30);	(* name of holiday *)
	WORK_WEEK : INT; (* current work week *)
END_STRUCT
END_TYPE

```

wenn ja dann tippe ich eher auf ein ganz anderes problem

du kannst ja mal ein ganz neues projekt machen und nur die calendar datenstruktur importieren  
und dann versuche nur die eine codezeile zu integrieren

was passiert dann …

---

<div class="post-metadata">

**Author:** ![NetFritz](https://avatars.discourse-cdn.com/v4/letter/n/6f9a4e/32.png) [@NetFritz](https://oscat.discourse.group/u/NetFritz)\
**Post date:** [7. April 2014 um 17:12 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/14 "2014-04-07T17:12:21Z")

</div>

Hallo

Habe die Struktur verglichen.  
Meine ist genauso.

Wenn ich ein neues Projekt erstelle und nur die oscat\_basic\_333.lib importiere habe ich die gleiche Fehlermeldung.  
ldt: CALENDAR:=(OFFSET:=60,DST\_EN:=TRUE,LOCATION:=1,LONGITUDE:=9.123,LATITUDE:=52.55);

Nehme ich Location;=1 raus läuft es ohne Fehlermeldung durch.

Ich habe nochmal in meinen alten Projekt nachgesehen da ist LOCATION:=1 drin.

Gruß NetFritz

---

<div class="post-metadata">

**Author:** ![peewit](https://avatars.discourse-cdn.com/v4/letter/p/ecc23a/32.png) [@peewit](https://oscat.discourse.group/u/peewit)\
**Post date:** [7. April 2014 um 17:20 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/15 "2014-04-07T17:20:22Z")

</div>

nicht die ganze basic lib importieren sondern nur die datenstruktur…

es kann sein das die groesse der bibliothek das eigentliche problem ist, und deine fehlermeldung nur ein seiteneffekt ist  
und in wirklichkeit kein direkter fehler ist.

---

<div class="post-metadata">

**Author:** ![NetFritz](https://avatars.discourse-cdn.com/v4/letter/n/6f9a4e/32.png) [@NetFritz](https://oscat.discourse.group/u/NetFritz)\
**Post date:** [7. April 2014 um 19:02 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/16 "2014-04-07T19:02:07Z")

</div>

Hallo

> @peewit nicht die ganze basic lib importieren sondern nur die datenstruktur....

Und wie mache ich das ?

Ist LOCATION:=1 den in der Struktur CALENDAR drin?

Gruß NetFritz

---

<div class="post-metadata">

**Author:** ![peewit](https://avatars.discourse-cdn.com/v4/letter/p/ecc23a/32.png) [@peewit](https://oscat.discourse.group/u/peewit)\
**Post date:** [8. April 2014 um 04:45 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/17 "2014-04-08T04:45:13Z")

</div>

öffnest die lib als projekt und gehst auch exportieren und wählst diese datenstruktur aus

in deinen neuen nackten projekt importierst du die datenstruktur wieder

---

<div class="post-metadata">

**Author:** ![mattsches](https://avatars.discourse-cdn.com/v4/letter/m/d78d45/32.png) [@mattsches](https://oscat.discourse.group/u/mattsches)\
**Post date:** [8. April 2014 um 07:36 UTC](https://oscat.discourse.group/t/fehler-im-timer-p4/949/18 "2014-04-08T07:36:06Z")

</div>

> [@NetFritz post:16](#):
>
> Ist LOCATION:=1 den in der Struktur CALENDAR drin?

Also wenn ich mir den Code für CALENDAR oben anschaue (den du bestätigt hast), nein. Und auch wenn ich in meine Basic 3.33 reinschaue, finde ich LOCATION nicht als Element der CALENDAR-Struktur.

Ergo: Die Initialisierung kann nicht funktionieren.

Nimm mal stattdessen LANGUAGE:=1. Sieht mir so aus, als sei die Variable irgendwann umbenannt worden.
