Problem mit Timer_1 aus der Oscat-Bibliothek

Cornel61

Level-1
Beiträge
30
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Vorweg, ich beschäftige mich noch nicht sehr lange mit Codesys, hatte vor 2 Jahren einen TIA-Lehrgang belegt.
Mit Codesys und einem Raspeberry-Pi 3+, Touchdisplay und Relaiskarte habe ich für meine Heizung eine Aussentemperaturgeführte Steuerung programmiert und gebaut.
Diese läuft auch relativ stabil.
Zusätzlich möchte ich eine zeitliche Schaltung für den Warmwasserspeicher, er soll nicht durchgehend auf Temperatur gehalten werden und weiterhin habe ich eventuell eine zeitliche Nachtabsenkung der Kesseltemperatur geplant.
Für diese zeitliche Schaltung habe ich den Timer_1 aus der Oscat-Bibliothek verwendet. Nach einigen Anfangsschwierigkeiten und dem Hinweis auf die Beschaltung von Timer_2 gelang es mir in CFC die Schaltuhr aufzubauen und auch zum Funktionieren zu bekommen. Danach baute ich sie noch einmal in FUP als FB, da ich ihn mehrfach, wie beschrieben, einsetzen möchte. Auch diese Programmierung war erfolgreich. Am darauf folgenden Tag implementierte ich diesen FB in mein Heizungsprogramm, zuerst für die Nachtabschaltung des Boilers. Nun beginnt es nür mich nicht mehr nachvollziehbar zu werden. Der Timer schaltet nicht. Es ist ein exakter "Nachbau" des FB's vom Vortag.
Noch verrückter ist, dass genau die Schaltungen vom Vortag, jede für sich ist in je einem einzelnen Projekt programmiert, auch nicht mehr schalten. Also, was am Vortag funktionierte, funktioniert nun nicht mehr, ohne das ich etwas geändert habe.
Alles funktioniert...bis zum Timer. Ich möchte jeden Tag zu selben Zeit den Boiler aus (23:00 Uhr) und wieder ein (05:00 Uhr) geschaltet haben. Deshalb habe ich beim Wochentag eine "7" als bit angegben.
Ich füge zwei Bilder hinzu in der Hoffnung, dass jemand den Fehler findet oder mir mit Tipps weiter helfen kann.
 

Anhänge

  • IMG_20200414_195931.jpg
    IMG_20200414_195931.jpg
    534,5 KB · Aufrufe: 45
  • IMG_20200414_195921.jpg
    IMG_20200414_195921.jpg
    468,5 KB · Aufrufe: 33
So, neuer Versuch.
Schau Dir mal die Doku zu Timer_1 an, dann solltest Du Deinen Fehler selber finden. Falls nicht helfe ich gerne weiter.
Was soll denn übrigens "7 als Bit" heißen? In Binärer Schreibweise hast Du am Eingang DAY 00000111 angegeben. Lies mal nach was das bewirkt.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo oliver.tonn,
vielen Dank für deine Antwort. Nachdem ich die Binärzahl 2#0111_1111 an Day angetragen habe, läuft der Zähler. Ich hoffe dass das dein Hinweis war. Leider bin ich schon wieder zu lange aus der Materie raus und hatte nicht erkannt, was in der Dokumentation gemeint ist. Lehrgänge nützen leider nicht viel, wenn die Anwendung fehlt. Vielen Dank noch mal. :)
 
Welches ist denn der Eingang Devault? "...Der Eingang Default ist wenn er nicht beschal-tet wird auf 2#0111_1111 gesetzt und somit ist der Baustein für jeden Tagaktiv. Ein zusätzlicher Enable Eingang E kann den Baustein Freischalten.Dieser Eingang ist TRUE wenn er nicht beschaltet wird...."
Wenn der zusätzliche Eingang E nicht beschaltet wird, würde eine Fehlermeldung erscheinen. Um das zu beheben muss ich entweder die Variable auf Statische Variable ändern und somit den Eingang entfernen oder beschalten, wie ich es getan habe. Verstehe ich das richtig?
 
Welches ist denn der Eingang Devault? "...Der Eingang Default ist wenn er nicht beschal-tet wird auf 2#0111_1111 gesetzt und somit ist der Baustein für jeden Tagaktiv. Ein zusätzlicher Enable Eingang E kann den Baustein Freischalten.Dieser Eingang ist TRUE wenn er nicht beschaltet wird...."
Wenn der zusätzliche Eingang E nicht beschaltet wird, würde eine Fehlermeldung erscheinen. Um das zu beheben muss ich entweder die Variable auf Statische Variable ändern und somit den Eingang entfernen oder beschalten, wie ich es getan habe. Verstehe ich das richtig?
Da hast Du tatsächlich etwas missverstanden. Damit ist kein extra Eingang gemeint, sondern das, wenn der Eingang E nicht mit einer Variable oder einem Wert beschaltet ist er den Default-Wert TRUE bekommt, der Baustein also aktiv ist. Bei DAY ist es ähnlich, hier ist der Default-Wert 2#01111111 oder 127 in dezimaler Schreibweise, bzw. 16#7F in hexadezimaler Schreibweise.
 
Zurück
Oben