TIA Warum läuft der Timer nicht?

El Cattivo

Level-2
Beiträge
177
Reaktionspunkte
11
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,
ich stehe vor einem kleinen Rätsel. Ich habe ein Miniprojekt mit einem Timer der nicht starten will.
1685023224299.png
Es gibt nur den OB1 mit einem Netzwerk. Es funktioniert in der Simulation als auch auf der echten Steuerung nicht.
Woran könnte das liegen?
Anbei lade ich euch das Projekt hoch.
 

Anhänge

Anhang anzeigen 69123


Wow, das wusste ich trotz 10 Jahren Programmiererfahrung nicht das der TON ohne Ausgang nicht läuft. Man lernt immer mal wieder was neues :)

Wobei ich das eigentlich als Bug bezeichnen würde.
Man muss nicht zwingend eine Ausgangsverknüpfung machen, aber mit sieht man das Ergebnis sofort.
Ansonsten wäre es auch möglich via "IEC_Timer_0_DB".Q die Abfrage zu machen ....soll heissen du greifst auf den Instanz DB dieses Timers zu.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Man muss nicht zwingend eine Ausgangsverknüpfung machen, aber mit sieht man das Ergebnis sofort.

Doch muss man. Wenn man den Ausgang nirgendwo verschaltet läuft der Timer überhaupt nicht. Das ist ja genau das Problem.
Es wird auch der Ausgang Q im Instanz-DB nicht aktiv.

Screenshot 2023-05-31 092548.jpg

Wird der Ausgang aber irgendwo im Programm verschaltet (kann auch wie vorher erwähnt als direkter Instanzzugriff erfolgen) läuft der Timer.
Entweder ist das ein Bug oder die SPS ist so intelligent dass sie den Timer zum Ressourcen sparen nicht laufen lässt, weil das Ergebnis eh nicht verwendet wird (wie ich Siemens kenne würde ich eher auf ersteres tippen :)

Screenshot 2023-05-31 092717.jpg
 
Doch muss man. Wenn man den Ausgang nirgendwo verschaltet läuft der Timer überhaupt nicht. Das ist ja genau das Problem.
Es wird auch der Ausgang Q im Instanz-DB nicht aktiv.

Anhang anzeigen 69171

Wird der Ausgang aber irgendwo im Programm verschaltet (kann auch wie vorher erwähnt als direkter Instanzzugriff erfolgen) läuft der Timer.
Entweder ist das ein Bug oder die SPS ist so intelligent dass sie den Timer zum Ressourcen sparen nicht laufen lässt, weil das Ergebnis eh nicht verwendet wird (wie ich Siemens kenne würde ich eher auf ersteres tippen :)

Anhang anzeigen 69172
Tatsächlich startet der Timer ohne Vetrknüpfung an Q nicht an....Das ist mir so nie aufgefallen :(
 
Zuletzt bearbeitet:
Das hat nichts damit zu tun das ich das Verknüpfungergebnis an Q nicht verschaltet habe.
Doch, hat es. Schau dir meine Screenshots an oder probier es selber. Solange der Ausgang Q nicht verschaltet ist passiert bei High auf IN gar nichts.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Steht doch genau in der Hilfe...

TON: Einschaltverzögerung erzeugen (S7-1200, S7-1500)
  • Ausgänge Q und ET
    Die Aktualwerte der Ausgänge Q und ET werden in folgenden Fällen aktualisiert:
    • Bei einem Aufruf der Anweisung, wenn die Ausgänge ET oder Q verschaltet sind.
      Oder
    • Bei einem Zugriff auf Q oder ET.
      Wenn die Ausgänge nicht verschaltet sind und auch nicht abgefragt werden, dann wird der aktuelle Zeitwert an den Ausgängen Q und ET nicht aktualisiert. Auch wenn die Anweisung im Programm übersprungen wird, werden die Ausgänge nicht aktualisiert.
 
Der Q muss nicht zwingend im gleichen Netzwerk beschalten sein, aber halt irgendwo anders im Programm verwendet sein ("Bei einem Zugriff auf...")
 
Der Q muss nicht zwingend im gleichen Netzwerk beschalten sein, aber halt irgendwo anders im Programm verwendet sein ("Bei einem Zugriff auf...")
Mist damit hatte ich auch schon Ärger, vor Allem mit älteren Programmen: Mehrfachverwendung von Timern, Mehrfachbeschreibung von Ausgängen.
Pfui.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Mist damit hatte ich auch schon Ärger, vor Allem mit älteren Programmen: Mehrfachverwendung von Timern, Mehrfachbeschreibung von Ausgängen.
Pfui.
:unsure: Bin mal wieder schwer von Begriff. Zwischen NullfachVerwendung und MehrfachVerwendung klafft aber eine Lücke und genau um diese minimal und gleichzeitig maximal EinfachVerwendung - also den NormalFall - geht es doch hier?
 
:unsure: Bin mal wieder schwer von Begriff. Zwischen NullfachVerwendung und MehrfachVerwendung klafft aber eine Lücke und genau um diese minimal und gleichzeitig maximal EinfachVerwendung - also den NormalFall - geht es doch hier?
Ja wenn jemand sauber programmiert, dann ist das so Heinileini!

10 Jahre Kundendienst u.a. mit Fremdprogrammen haben mich das Fürchten gelehrt!

PS: ich rede es nicht schlecht, wahrscheinlich konnten sie es nicht besser.
 
Zurück
Oben