In der heutigen Welt der industriellen Automatisierung sind Daten ein sehr wichtiger Bestandteil. Sofortige Daten aus Quellen zu erhalten und sie für verschiedene Zwecke zu verwenden, ist genauso wichtig wie das Ausführen eines Systems.
Normalerweise weiß jeder, wie man SCADA in verschiedene Datenbanksysteme wie SQL-Server integriert. Viele ignorieren jedoch die Leistungsfähigkeit von SPS bei der Integration in Datenbanken. Auch sie können für diesen Zweck verwendet werden.
SPS mit SQL-Datenbank
Wenn wir SPS verwenden, können Programmierer in Notfallsituationen wie SCADA-Ausfällen damit arbeiten und ihre Arbeit erledigen, indem sie sie entsprechend codieren. In diesem Beitrag erfahren Sie, wie man SPS mit SQL-Datenbank verwendet.
Für diejenigen, die mit SQL Server nicht vertraut sind: Es handelt sich um ein Datenbankverwaltungstool, das eine große Menge an Daten sequenziell in Echtzeitformat speichert, und Abfragen werden entweder über eine externe Quelle wie eine SPS geschrieben, um Daten abzurufen.
Um Daten darin zu speichern, wird Logik in die SPS geschrieben, die bei Ausführung Daten in SQL speichert. Dies ist ein einfaches Konzept, dessen Vorteile im weiteren Verlauf des Beitrags näher erläutert werden.
Scheduler PLC
Nehmen wir an, Sie haben ein sehr großes System, in das der Bediener täglich Hunderte von Zeitplänen für die Ausführung bestimmter Funktionen eingeben muss. Anstatt umfangreiche Codierungen und Variablen in der SPS zu verwenden, um in SCADA eingegebene Daten zu speichern und sie zu verwenden, sobald die Zeit gekommen ist, geben Sie einfach alle variablen Daten jedes Mal, wenn ein neues Rezept erstellt wird, über die SPS an den SQL-Server weiter.
SQL speichert Datum und Uhrzeit der eingegebenen Werte in Echtzeit und gibt den Bedienern die Möglichkeit, sie nach Datum und Uhrzeit gefiltert auszuwählen. Beispielsweise hat SQL fünf Einträge vom 1. bis 5. Oktober für verschiedene Arten von eingegebenen Plänen. Der Vorteil besteht darin, dass der Bediener einen beliebigen Eintrag auswählen und dann das System ausführen kann.
Wenn SQL nicht vorhanden wäre, müsste er nur eine Option ausführen, entweder den 1. Oktober oder ein anderes Datum. Oder er müsste den Speicher von SCADA oder PLC nutzen, was eine Verschwendung von Daten und Codierung wäre. Dasselbe wird durch SQL Server einfacher.
Ein weiterer Vorteil ist, dass die SCADA-Codegröße reduziert wird und für andere Zwecke verwendet werden kann. Die Planung wird in vielen Anwendungen verwendet und die Verwendung von PLC dafür zusammen mit SQL macht das System effizienter.
Sequenzierung
Stellen Sie sich eine Anlage mit 10 Sequenzen vor. Jede Sequenz verfügt über einen Barcodeleser, um die Aktion für das gewünschte Produkt zu starten. Wenn der Barcode in SCADA gelesen wird, dann wird der entsprechende Datenfeed an PLC oder kurz SCADA gesendet, was das Medium zum Einleiten der Kommunikation zwischen PLC und Daten ist; dann verbinden Sie PLC einfach direkt mit SQL.
SQL kommuniziert direkt mit PLC, um Barcodes und andere Daten zum Starten oder Stoppen einer Sequenz zu bestimmen. Solche Massendaten aus Anlagensequenzen helfen, die Codierung in SCADA zu reduzieren und machen das System schneller bedienbar. Da PLC mit Codierung für Sequenzoperationen geschrieben ist, warum verbinden Sie es nicht direkt mit SQL und verwenden das System?
Mehrere PLCs synchronisieren
Es gibt viele Anwendungen, bei denen eine PLC an einem Standort Daten von einem anderen PLC-Standort benötigt, um eine Arbeit zu erledigen. Auch in diesem Fall wird traditionell SCADA verwendet, um alle SPS zu integrieren und zu verwalten.
In diesem Fall werden die Daten über Datum und Uhrzeit von SQL synchronisiert, wenn die SPS direkt mit dem SQL-Server verbunden sind. Dadurch werden die Probleme der Synchronisierung mehrerer SPS über RTC (Echtzeituhr) eliminiert.
Außerdem kommuniziert die SPS direkt mit anderen SPS, um Daten anzufordern oder über den SQL-Server bereitzustellen. Jeder Alarm oder jedes Ereignis in einer SPS wird auch an andere SPS übermittelt und hilft bei der Verfolgung von Echtzeitaufzeichnungen.
Handshaking
Beim Handshaking wird eine Partei von der anderen Partei bestätigt, dass der Auftrag abgeschlossen wurde. Im Grunde ist dies eine erforderliche Antwort, damit die Partei mit ihrer anderen Arbeit beginnen kann. Diese Methode funktioniert gut mit SPS und SQL-Servern.
Der SQL-Server kann direkt mit der SPS kommunizieren, indem er Ereignisbenachrichtigungen in Echtzeit oder Alarmbenachrichtigungsdaten in Echtzeit sendet. Das bedeutet, dass die Fertigstellung des Auftrags 3 Tage gedauert hat.
Anschließend wird die Abschlussbestätigung als separates Ereignis an die SPS gesendet. Da sie auch 3 Tage an Daten enthält, kann der Bediener den gesamten Vorgang problemlos in SCADA-Berichten anzeigen. Handshake ist also ein wichtiger Grund für die direkte Kommunikation zwischen SPS und SQL.
Grundlagen der SPS-Datenbank
- Stellen Sie mithilfe einer Middleware oder eines Gateways eine Verbindung zwischen der SPS und der SQL-Datenbank her, die die Kommunikation zwischen industriellen Netzwerkprotokollen und Datenbanksprachen erleichtert.
- Wählen Sie ein Kommunikationsprotokoll aus, das sowohl die SPS als auch die SQL-Datenbank verstehen, z. B. OPC UA, Modbus TCP oder ein anderes von Ihrer SPS und Middleware unterstütztes Protokoll.
- Konfigurieren Sie die SPS zum Senden und Empfangen von Daten, indem Sie die erforderlichen Parameter, Register oder Tags einrichten, aus denen gelesen oder in die geschrieben wird. Dies kann die Programmierung der SPS mithilfe der entsprechenden Software umfassen, um sicherzustellen, dass sie für den Datenaustausch bereit ist.
- Richten Sie die SQL-Datenbank ein, indem Sie eine neue Datenbank erstellen oder eine vorhandene konfigurieren, um Daten von der SPS zu speichern. Definieren Sie Tabellen, Spalten und Datentypen, die mit der von der SPS gesendeten Datenstruktur übereinstimmen.
- Ordnen Sie jeden SPS-Datenpunkt dem entsprechenden Feld in der SQL-Datenbank zu. Stellen Sie sicher, dass die Datentypen kompatibel sind und dass die Zuordnung für die Anforderungen der Anwendung logisch ist.
- Implementieren Sie die Datenübertragungslogik mithilfe von Skripten oder in der Datenbank gespeicherten Prozeduren. Bestimmen Sie, wie oft Daten übertragen werden sollen, unter welchen Bedingungen und ob die Übertragung durch Ereignisse oder nach einem Zeitplan ausgelöst werden soll.
- Testen Sie die Kommunikation zwischen der SPS und der SQL-Datenbank gründlich. Suchen Sie nach Fehlern oder Datenabweichungen und stellen Sie sicher, dass sich das System unter verschiedenen Bedingungen wie erwartet verhält.
- Überwachen Sie das System kontinuierlich auf Betriebsintegrität, Datengenauigkeit und Anomalien. Richten Sie Warnungen oder Benachrichtigungen für Systemfehler oder wichtige Ereignisse ein.
- Überprüfen und aktualisieren Sie das System regelmäßig nach Bedarf, um Änderungen im SPS-Setup, der Datenbankstruktur oder zusätzlichen Anforderungen Rechnung zu tragen. Halten Sie die Dokumentation für alle Systemänderungen auf dem neuesten Stand.
- Stellen Sie sicher, dass sowohl für die SPS als auch für die SQL-Datenbank Sicherheitsmaßnahmen vorhanden sind, um sie vor unbefugtem Zugriff und Datenlecks zu schützen. Erwägen Sie die Implementierung von Verschlüsselung, Firewalls und sicheren Zugriffsprotokollen.