In früheren Artikeln haben wir über Timer in SPS, verschiedene Typen und ihre Verwendung gesprochen. Timer benötigen nicht unbedingt Echtzeit, um zu funktionieren, da sie je nach Ihren Einstellungen nur Sekunden oder Millisekunden zählen.
Für einige Anwendungen müssen Sie jedoch das tatsächliche Datum und die tatsächliche Uhrzeit des SPS-Programms kennen, beispielsweise zu Diagnosezwecken.
In diesem Artikel sprechen wir über die System- und Ortszeit einer SPS.
Inhalt:
- Warum brauche ich Echtzeit in der SPS?
- Beispielprogramm und Simulation
- Was ist Systemzeit?
- Was ist Ortszeit?
- Schlussfolgerungen.
Warum brauche ich Echtzeit in der SPS?
In vielen Anwendungen von SPS müssen Sie aus vielen verschiedenen Gründen die Echtzeit kennen, während der Prozess ausgeführt wird.
Im Folgenden sind einige dieser Gründe aufgeführt:
- Sicherung der SPS auf dem Hauptserver.
- Für die Diagnose der SPS benötigen Sie eine Zeitaufzeichnung, um zu wissen, zu welcher Zeit ein bestimmtes Ereignis aufgetreten ist. Andernfalls wären die Diagnoseinformationen nicht sehr nützlich.
- Für Anwendungen, bei denen Sie mit den Tageszeitinterrupts OB10 arbeiten müssen, müssen Sie die tatsächliche Uhrzeit kennen.
- Möglicherweise müssen Sie in Teilen Ihrer Logik, in denen Sie Echtzeitanwendungen verarbeiten müssen, die Ortszeit oder die Systemzeit verwenden.
- Für die Datenprotokollierung: Wenn Sie wichtige Daten speichern müssen und den Zeitstempel für jede Datenaufzeichnung benötigen, müssen Sie die richtige Zeiteinstellung für Ihre SPS haben, damit die gespeicherten Daten sinnvoll sind.
Beispielprogramm und Simulation einer SPS
Um besser zu verstehen, was Systemzeit und Ortszeit in einer SPS sind, erstellen wir zunächst ein sehr einfaches Programm und erklären damit das Konzept der Echtzeit in SPSen.
Überprüfen Sie den folgenden Schritt:
In diesem Artikel erstellen wir keine SPS-Logik, sondern zeigen einige Konfigurationen, die sich auf die System- und Ortszeit in der SPS beziehen, wie diese eingestellt werden und was die Unterschiede sind.
Öffnen Sie das Siemens Tia Portal, fügen Sie ein neues Gerät hinzu und dieses Mal verwenden wir die CPU 1512C-1 PN. Siehe Bild 1.
Bild 1 – Neue SPS hinzufügen
Kompilieren und starten Sie eine neue SPS-Simulation. Öffnen Sie die Online- und Diagnoseseite und überprüfen Sie die eingestellte Zeit der SPS. Siehe Bild 2.
Bild 2 – Onlinezeit der SPS
Aus dem vorherigen Bild können Sie erkennen, dass es zwei verschiedene Zeiten gibt:
- Die PG/PC-Zeit – dies ist die lokale Zeit Ihres PCs selbst.
- Die Modulzeit – dies ist die tatsächliche Zeit innerhalb der SPS selbst.
Beide Zeiten können auf denselben Wert eingestellt werden oder sie können unterschiedlich sein. Am besten ist es, sie gleich zu machen, es ist besser, die Modulzeit ähnlich Ihrer lokalen Zeit zu machen, oder genauer gesagt ähnlich der lokalen Zeit des Gebiets, in dem die SPS verwendet wird. Siehe Bild 3.
Bild 3 – Zeit der SPS einstellen
Wenn Sie möchten, dass die Modulzeit mit der Ortszeit übereinstimmt, wählen Sie „Von PG/PC übernehmen“ und drücken Sie „Anwenden“.
Ziehen Sie in Ihrem Haupt-OB1 die Anweisungen RD_SYS_T und RD_LOC_T per Drag & Drop.
Dies sind die Anweisungen zum Lesen der Systemzeit und zum Lesen der Ortszeit. Diese Anweisungen sind integrierte Funktions-FCs in der SPS und werden verwendet, um die Ortszeit und die Systemzeit der SPS an das von Ihnen im Ausgang OUT der Anweisung gewählte Ziel zu schreiben. Siehe Bild 4.
Bild 4 – Anweisungen zum Lesen der System- und Ortszeit hinzufügen
Fügen Sie einen neuen globalen Datenblock hinzu und definieren Sie einige Tags, mit denen gearbeitet werden soll. Siehe Bild 5.
Bild 5 – Einen neuen globalen Datenblock erstellen
Führen Sie Ihre Simulation erneut aus und überprüfen Sie beide Male. Siehe Bild 6
Bild 6 – Online-Lokalzeit und Systemzeit der SPS
Sie sehen im vorherigen Bild, dass die Lokalzeit und die Systemzeit der SPS gleich sind, sich aber von der tatsächlichen Lokalzeit Ihres PCs unterscheiden.
Wie Sie sich erinnern, haben wir die Modulzeit der SPS so eingestellt, dass sie der PG/PC-Zeit ähnelt, also Ihrer Lokalzeit. Siehe Bild 7.
Bild 7 – Modulzeit und PG/PC-Zeit
Wie Sie sehen, wird auf der Seite „Zeit einstellen“ die Modulzeit so gewählt, dass sie der PG/PC-Zeit entspricht. In tatsächlichen Fällen sind sie jedoch unterschiedlich. Warum?
Warum sind die Zeiten unterschiedlich? Da die Standardeinstellung der Lokalzeit der SPS UTC+0 oder Zulu-Zeit ist, wenn Sie mit diesem Begriff vertraut sind, ändern Sie sie nicht auf der Online- und Diagnoseseite, sondern in den Eigenschaften der SPS selbst. Siehe Bild 8.
Bild 8 – Tageszeitkonfiguration in einer SPS
Wie Sie sehen, ist die Standardeinstellung der SPS-Tageszeit auf UTC+0 eingestellt, und deshalb unterschied sich die Zeit des SPS-Moduls von Ihrer tatsächlichen Ortszeit. Außer wenn Sie tatsächlich in London wären, hätten Sie dieses Problem nicht.
Um die lokale SPS-Zeit zu korrigieren, müssen wir das in der Konfiguration ändern, wir müssen die Zeitzone auf die Zeitzone ändern, die wir haben, was in meinem Fall UTC+02:00 ist. Siehe Bild 9.
Bild 9 – Anpassen der lokalen SPS-Zeit an Ihre Zeitzone
Sie können auch sehen, dass die Sommerzeitoption deaktiviert wurde, da sie in meinem Land nicht verwendet wird. Sie müssen sie aktivieren, wenn sie in Ihrer Region verwendet wird.
Nachdem nun alle Konfigurationen richtig eingestellt sind, gehen Sie zurück und sehen Sie sich die lokale Zeit und die Systemzeit erneut in der Simulation an. Siehe Abbildung 10.
Abbildung 10 – Die lokale Zeit der SPS ist jetzt dieselbe wie die des PCs
Sie sehen nun, dass nach dem Anpassen der SPS-Zeitzone die lokale Zeit der SPS und die tatsächliche lokale Zeit Ihrer Region identisch sind.
Wie wir bereits gesagt haben, ist es aus den vielen oben genannten Gründen sehr wichtig, die richtige lokale Zeit der SPS einzustellen. Können Sie nun definieren, was die Systemzeit und die lokale Zeit der SPS ist?
Systemzeit in der SPS
Ist die Modulzeit der CPU-Uhr.
Die CPU-Uhr interpretiert die Modulzeit als koordinierte Weltzeit (UTC). Dementsprechend wird die Modulzeit immer ohne die Faktoren „lokale Zeitzone“ oder „Sommerzeit“ in der CPU-Uhr gespeichert. Die CPU-Uhr berechnet dann aus der Modulzeit die lokale Zeit der CPU-Uhr.
Die Modulzeit der CPU-Uhr dient als Vorlage für alle Zeitprozesse, die von der CPU ausgehen.
Anwendungsbeispiele:
- Berechnung der lokalen Zeit der CPU-Uhr aus der Modulzeit
- Darstellung der Modulzeit in lokaler Zeit unter „Online & Diagnose“
- Einträge im Diagnosepuffer der CPU
Lokale Zeit in der SPS
Informationen über die Zeitzone und den Beginn von Sommer- und Winterzeit, die Sie in der Konfiguration der CPU-Uhr eingestellt haben, werden zur Ausgabe der lokalen Zeit verwendet.
Die lokale Zeit ist die Zeit, die Sie auf Ihrem PC oder in Ihrem Land haben und die von Region zu Region unterschiedlich sein kann.
Fazit
Viele Anwendungen erfordern, dass die SPS die Echtzeit oder lokale Zeit des Prozesses kennt, damit sie bestimmte Aufgaben ausführen kann, z. B. Datenprotokollierung und Diagnoseaufgaben. In einem zukünftigen Artikel zeigen wir einige Anwendungen, bei denen Echtzeit für Ihre Logik erforderlich ist.
Die lokale Zeit der SPS sollte manuell konfiguriert werden, damit sie mit dem Bereich übereinstimmt, in dem die SPS verwendet wird.