×
Siemens Industry Online Support
Siemens AG
Beitragstyp: FAQ Beitrags-ID: 8736315, Beitragsdatum: 20.11.2008
(0)
Bewerten

Wie kann ein Timer für die "S7" gebildet werden, ohne einen "S7-Timer" zu verwenden?

  • Beitrag
  • Betrifft Produkt(e)

Anleitung:
Die "S7 CPUs" haben eine Zeitzelle (TIMETICK), die zyklisch in [ms] von 0x0 bis 0x7FFFFFFF zählt. Die "S7-400-CPUs" und "CPU-318" tun dies in "ms-Auflösung" und sehr genau. Die anderen "S7-300-CPUs" (außer CPU-318) zählen in 10ms-Auflösung.
Der "TIMETICK" ist ebenfalls in der "WinAC" Basic (SoftPLC) vorhanden und zählt in 10ms-Auflösung.
Das nachfolgende Konzept basiert auf dem "SFC64"(TIMETICK), der den aktuellen "TIMETICK" der "CPU" ausliest. Dadurch wird es möglich, beliebig viele Zeiten zu bilden ohne die "TIMER-Ressorucen" der "CPU" zu verbrauchen.

Das Prinzip der Zeitbildung ist einfach. Soll eine Zeit gestartet werden, wird der aktuelle "TIMETICK" aus der "CPU" ausgelesen und gespeichert. Soll zu einem späteren Zeitpunkt der Timer abgefragt werden, brauchen Sie eine Funktion, um die vergangene Zeit seit dem Start des Timers zu berechnen
Auf Basis dieser einfachen Funktionalität können beliebig komplexe Impuls- und Zeitfunktionen realisiert werden.

In vielen Anwendungen genügt eine zyklusgenaue Zeitbildung; sie ist sogar aus Konsistenzgründen oft gefordert. Das Konzept berücksichtigt diese Forderung, ist aber auch für Aufruf-genaue Zeitbildung im ms-Bereich geeignet.

Die Vorteile dieses Konzeptes sind im einzelnen:

  • Laufzeitoptimal
  • Die Systemressource "TIMER" wird nicht verbraucht
  • scalierbare Genauigkeit (Zyklus genau wie im Beispiel, oder Aufruf genau wenn die "SFC64" bei Start und Abfrage der Zeit aufgerufen wird.
  • Anwendung stellt Speicher-Ressource (DW) für den FC zur Verfügung; dadurch sind beliebig viele Timer möglich.

Infrastruktur für den zyklusgenauen TIMER

Basis für die Zeitbildung ist der "TIMETICK" der "CPU". Für zyklusgenaue Zeiten reicht es aus, wenn Sie den "TIMETICK" einmal pro Zyklus auslesen, abspeichern und für alle Anwendungen (FB, FC) zugänglich machen. Das zentrale, zyklische Auslesen spart Zykluszeit. Der "SFC64" muss nicht für jeden Timer in jedem Zyklus aufgerufen werden.

Ein Anwendungsbeispiel für den "TIMETICK" finden Sie unter Beitrags-ID 8736822

Hinweis:
Alle S7-300 CPU-Baugruppen ab dem Firmwarestand V2.4 haben eine Granularität von 1ms.

Suchbegriffe:
Timer, Ressourcen

Securityhinweise
Um technische Infrastruktur, Systeme, Maschinen und Netzwerke gegen Cyber-Bedrohungen zu sichern, ist es erforderlich, ein ganzheitliches IT Security-Konzept zu implementieren (und kontinuierlich aufrechtzuerhalten), das dem aktuellen Stand der Technik entspricht. Die Produkte und Lösungen von Siemens formen nur einen Bestandteil eines solchen Konzepts. Weitergehende Informationen über Cyber Security finden Sie unter
https://www.siemens.com/cybersecurity#Ouraspiration.