Die TimeSync-Bibliothek implementiert die SNTP-Clientfunktion (Simple Network Time Protocol). Diese Funktion ermöglicht Ihrer Steuerung den Aufbau einer Verbindung zu einem NTP- (Network Time Protocol) oder SNTP-Zeitserver, um die interne Echtzeituhr RTC (Real-Time Clock) der Steuerung mit der koordinierten Weltzeit UTC (Universal Time Coordinated), dem primären Zeitstandard, zu synchronisieren.
Der SNTP-Client entspricht Version 4 des in SNTP-Protokolls.
Er stellt folgende Funktionen bereit:
oGenerierung eines Requests für einen (S)NTP-Server
oEmpfang und Strukturierung der Antwort des (S)NTP-Servers
oBerechnung der Umlaufverzögerung und der Zeitverschiebung
oBereitstellung des synchronisierten Zeitstempels für die Synchronisierung der RTC der Steuerung und Berücksichtigung der Zeitverschiebung zwischen der lokalen RTC- und der (S)NTP-Server-Zeit
oVerwaltung erkannter Fehler
1 Zeitserver: SNTP- oder NTP-Server
2 Steuerung X: SNTP-Client
3 Steuerung Y: SNTP-Client
In der nachstehenden Tabelle werden die Merkmale der Bibliothek aufgeführt:
Merkmal |
Wert |
---|---|
Bibliothekstitel |
TimeSync |
Firma |
Schneider Electric |
Kategorie |
Kommunikation |
Standard-Namespace |
TIMS |
Sprachmodell-Attribut |
qualified-access-only (Nur qualifizierter Zugriff) |
Aufwärtskompatible Bibliothek |
Ja (AWK) |
HINWEIS: Für diese Bibliothek wurde das Attribut „qualified-access-only“ für die Beschränkung auf einen qualifizierten Zugriff eingestellt. Das bedeutet, dass für den Zugriff auf die POUs, Datenstrukturen, Enumerationen (Aufzählungen) und Konstanten der Namespace der Bibliothek erforderlich ist. Der Standard-Namespace der Bibliothek lautet TIMS.
Mit der Bibliothek wird das Beispielprojekt FB_SntpClient.project bereitgestellt. Dieses Beispielprojekt veranschaulicht die Implementierung der verschiedenen Komponenten der Bibliothek TimeSync.
Schritt |
Aktion |
Kommentar |
---|---|---|
1 |
Führen Sie in EcoStruxure Machine Expert Logic Builder den Befehl Neues Projekt aus. |
– |
2 |
Wählen Sie im Dialogfeld Neues Projekt die Option Aus Beispiel in der Liste Projekttyp aus. |
– |
3 |
Wählen Sie am rechten Rand des Dialogfelds Neues Projekt die Steuerung (1) in der Liste Steuerung aus. |
Ergebnis: Im Textfeld Passende Beispiele werden die verfügbaren Beispiele aufgelistet. |
4 |
Wählen Sie in der Liste Passende Beispiele Ihr Beispiel aus. |
– |
5 |
Geben Sie einen Namen für das neue Projekt ein und wählen Sie den Dateipfad aus. |
– |
6 |
Klicken Sie auf die Schaltfläche OK. |
Ergebnis: Es wird ein neues Projekt auf der Grundlage des ausgewählten Beispiels erstellt. |
HINWEIS: Bei der Einstellung der RTC der Steuerung werden entsprechende Einträge in der steuerungsspezifischen Logdatei generiert. Verwenden Sie diese Funktion wegen der automatischen Anpassungen nicht häufiger als einmal am Tag.
Der zulässige Wertebereich für die Einstellung der internen RTC (Echtzeituhr) der Steuerung durch den Funktionsbaustein ist auf Werte zwischen 01.01.1970 und 01.01.2100 begrenzt. Die Genauigkeit ist vom verwendeten (S)NTP-Server abhängig. Für die UTC-Synchronisierung kann eine maximale Genauigkeit von 1 s erzielt werden.
HINWEIS: Die Einträge in der Logdatei der Steuerung werden mit Zeitstempel gespeichert. Beachten Sie, dass bei der Rückstellung der internen RTC (Echtzeituhr) der Steuerung ggf. zwei unterschiedliche Logeinträge mit einem scheinbar unzutreffenden Zeitstempel gespeichert werden.
Für die (S)NMP-Kommunikation gelten folgende Einschränkungen:
oNur IPv4 (Internetprotokoll Version 4) wird unterstützt.
oEs ist nur jeweils ein Request an einen (S)NTP-Zeitserver zulässig.
oDie TimeSync-Bibliothek beinhaltet Zeiger für Adressen.
oVerwenden Sie kein Abfrageintervall unter 15 Sekunden.
oVerwenden Sie lokale Server, sofern verwendbar, um unnötigen Datenverkehr im Backbone-Netzwerk zu vermeiden.
Die Ausführung des Befehls Online Change kann zu einer Änderung des Inhalts von Adressen führen.
|
UNGÜLTIGER ZEIGER |
Überprüfen Sie die Gültigkeit der Zeiger, wenn Sie Zeiger für Adressen verwenden und den Befehl „Online Change“ ausführen. |
Die Nichtbeachtung dieser Anweisungen kann Verletzungen oder Sachschäden zur Folge haben. |
Die in diesem Dokument beschriebene Bibliothek verwendet intern die TcpUdpCommunication-Bibliothek.
Die Bibliotheken TcpUdpCommunication (Schneider Electric) und CAA Net Base Services (CAA Technical Workgroup) greifen auf dieselben Systemressourcen in der Steuerung zurück. Die gleichzeitige Verwendung beider Bibliotheken in derselben Anwendung kann deshalb eine Störung des Steuerungsbetriebs zur Folge haben.
|
UNBEABSICHTIGTER GERÄTEBETRIEB |
Verwenden Sie die Bibliothek TcpUdpCommunication (Schneider Electric) nicht gemeinsam mit der Bibliothek CAA Net Base Services (CAA Technical Workgroup) in derselben Anwendung. |
Die Nichtbeachtung dieser Anweisungen kann Tod, schwere Verletzungen oder Sachschäden zur Folge haben. |
Die Funktionen der TimeSync-Bibliothek unterstützen keine sicheren Verbindungen, wie beispielsweise TLS (Transport Layer Security) oder SSL (Secure Socket Layer). SNTP-Telegramme werden nicht verschlüsselt und es ist keine Authentifizierung erforderlich, um Informationen von einem Agent abzurufen (Get) bzw. an einen Agent zu übertragen (Set). Aus diesem Grund sollte die Kommunikation nur innerhalb Ihres industriellen Netzwerks erfolgen, das von anderen Netzwerken Ihres Unternehmens getrennt und vom Internet geschützt ist.
HINWEIS: Schneider Electric operiert unter den Industriestandards bei der Entwicklung und Implementierung von Steuerungssystemen. Dies beinhaltet ein „Defense-in-Depth-Konzept“ zum Schutz industrieller Steuerungssysteme. Bei diesem Verfahren werden die Steuerungen hinter einer oder mehreren Firewalls platziert, um den Zugriff auf autorisierte Personen und Protokolle zu beschränken.
|
UNBERECHTIGTER ZUGRIFF MIT UNBERECHTIGTEM MASCHINENBETRIEB |
oBeurteilen Sie, ob Ihre Betriebsumgebung bzw. Ihre Maschinen mit Ihrer kritischen Infrastruktur verbunden sind. Ist das der Fall, dann ergreifen Sie angemessene Präventivmaßnahmen auf der Basis des Defense-in-Depth-Konzepts, bevor Sie das Automatisierungssystem mit einem Netzwerk verbinden. oBegrenzen Sie die Anzahl der mit einem Netzwerk verbundenen Geräte auf das strikte Minimum. oIsolieren Sie Ihr Industrienetzwerk von anderen Netzwerken in Ihrer Firma. oSchützen Sie alle Netzwerke vor unberechtigtem Zugriff mithilfe von Firewalls, VPNs oder anderen bewährten Schutzmaßnahmen. oÜberwachen Sie die Aktivität in Ihren Systemen. oVerhindern Sie jeden direkten Zugriff bzw. jede direkte Verbindung von Fachgeräten durch unberechtigte Personen oder nicht autorisierte Vorgänge. oStellen Sie einen Wiederherstellungsplan für den Notfall auf. Dazu gehört ebenfalls der Backup Ihrer System- und Prozessdaten. |
Die Nichtbeachtung dieser Anweisungen kann Tod, schwere Verletzungen oder Sachschäden zur Folge haben. |
Weitere Informationen zu organisatorischen Maßnahmen und Regeln für den Zugriff auf Infrastrukturen finden Sie in der Normenserie ISO/IEC 27000, „Common Criteria for Information Technology Security Evaluation“, sowie in den Normen ISO/IEC 15408, IEC 62351, ISA/IEC 62443 und im NIST Cybersecurity Framework, Information Security Forum - „Standard of Good Practice for Information Security“.
Die Bibliothek umfasst folgende Funktionen zur Vermeidung von Kommunikationsfehlern:
oPrüfung des ursprünglich an den Server gesendeten Zeitstempels, um Übertragungsfehler zu identifizieren.
oPrüfung, dass die Definition des Protokolls dem Standard entspricht.
oPrüfung der Serverversion und Ausgabe einer Diagnosemeldung im Fall einer Nicht-Übereinstimmung.
Funktionsbaustein/Funktion |
Verwendung |
---|---|
Stellt SNTP-Clientfunktionen bereit. |
|
Konvertiert ein Enumerationselement vom Typ ET_Result in einen Zeichenfolgenwert. |
Überblick über die Strukturen der modulspezifischen Schnittstelle
Struktur |
Verwendung |
---|---|
Enthält spezifische Informationen für das Senden eines SNTP-Requests an einen (S)NTP-Zeitserver. |
|
Enthält die Zeitstempel und kann zur Synchronisierung der RTC verwendet werden. |
Übersicht über die Enumerationen
Enumeration |
Verwendung |
---|---|
Definiert den Kommunikationsmodus des SNTP-Clients. |
|
Enthält die möglichen Werte, die auf das Ergebnis der vom Funktionsbaustein durchgeführten Operationen verweisen. |