Phoenix Contact PLCnext

Für Phoenix Contact PLCnext Steuerungen stellt SQL4automation zwei Beispielprojekte und eine dedizierte Bibliothek (SQL4PLCnext) bereit. Sowohl die Standard- als auch die UTF-16-Protokollvariante sind verfügbar, jeweils mit Unterstützung für unverschlüsselte und TLS/SSL-verschlüsselte Verbindungen. Die Bibliothek integriert sich direkt in PLCnext Engineer und läuft auf allen PLCnext Steuerungen mit Ethernet-Schnittstelle.

Phoenix Contact PLCnext mit SQL-Datenbanken, MES und ERP verbinden

Für Phoenix Contact PLCnext Steuerungen stellt SQL4automation zwei Beispielprojekte und die SQL4PLCnext-Bibliothek bereit. Ein Beispiel kommuniziert über das Standard-Protokoll, das andere über UTF-16. Beide unterstützen unverschlüsselte und TLS/SSL-verschlüsselte Verbindungen. Die Bibliothek basiert auf IEC 61131-3 und integriert sich direkt in PLCnext Engineer -- direkte SPS-Datenbank-Kommunikation ohne Middleware oder zusätzliche Hardware.

Integration der SQL4PLCnext-Bibliothek

Der zentrale Funktionsbaustein fbSQL4PLCnext verwaltet die Verbindung zum SQL4automation Connector. Er wird zyklisch in einem dedizierten Niedrigprioritäts-Task aufgerufen (empfohlen: 10 ms Intervall, Priorität 10) und empfängt Parameter wie Connector-IP-Adresse, Port, Timeout und TLS-Einstellungen. Anfrageergebnisse werden über die gemeinsame utSQL4PLCnextInterface-Datenstruktur zurückgegeben, auf die alle Tasks im PLCnext-Programm zugreifen können.

SQL4automation Link Settings

Der SQL4automation Connector wird für PLCnext Steuerungen mit der Zieleinstellung "Standard" betrieben (bzw. "UTF-16" für die UTF-16-Variante). Die projektspezifischen Anpassungen sind in wenigen Klicks erledigt. Für verschlüsselte Verbindungen wird TLS direkt im fbSQL4PLCnext-Baustein aktiviert (erfordert Connector V5.1.0.0 oder höher).

Unter Verwendung der "UTF-16" Target-Einstellungen

Für verschlüsselte Verbindungen wählen Sie das Ziel „Standard" und aktivieren Sie TLS im fbSQL4PLCnext-Block, indem Sie xUseTLS = TRUE setzen und die entsprechenden Namen für Identity Store und Trust Store angeben. Für verschlüsselte Kommunikation ist eine Connector-Version V5.1.0.0 oder neuer erforderlich.

FAQ's

Häufig gestellte Fragen zu Phoenix Contact PLCnext

Kann eine Phoenix Contact PLCnext Steuerung direkt mit einer SQL-Datenbank verbunden werden?

Ja. SQL4automation stellt die SQL4PLCnext-Bibliothek bereit, die eine direkte TCP/IP-Verbindung von der PLCnext Steuerung zum SQL4automation Connector auf einem Windows-PC herstellt. Der Connector übernimmt die ODBC-Kommunikation mit der Datenbank. Es werden kein OPC-UA-Server, keine Middleware und keine zusätzliche Hardware benötigt.

Welche PLCnext Engineer Version wird für SQL4automation benötigt?

PLCnext Engineer 2026.0 oder höher ist erforderlich. Außerdem müssen vor der Integration von SQL4PLCnext folgende Phoenix Contact Herstellerbibliotheken installiert sein: PLCnextBase_1_7_2.pcwlx (inkl. PLCnextBase.pcwlx und PLCnextBaseServices.pcwlx). Empfohlener Installationspfad: C:\Users\<Benutzer>\Documents\PLCnext Engineer\Libraries.

Unterstützt SQL4automation TLS-verschlüsselte Kommunikation mit PLCnext?

Ja, ab Connector-Version V5.1.0.0. Die Verschlüsselung wird durch xUseTLS = TRUE im fbSQL4PLCnext-Baustein aktiviert, ergänzt durch den Namen des Identity Store und Trust Store, die über das PLCnext-Webinterface konfiguriert werden. Zertifikate werden mit OpenSSL erzeugt und müssen für PLCnext im PEM-Format vorliegen. Verbindung immer zuerst ohne Verschlüsselung testen.

Was ist der Unterschied zwischen dem Standard- und dem UTF-16-Beispielprojekt?

Beide Beispielprojekte bieten identische Funktionalität und verwenden denselben fbSQL4PLCnext-Funktionsbaustein. Der einzige Unterschied liegt in der String-Kodierung im SQL-Telegramm: das Standard-Projekt verwendet die Standard-Kodierung, das UTF-16-Projekt verwendet UTF-16-kodierte Strings. Beide unterstützen verschlüsselte und unverschlüsselte Verbindungen. Die zum Datenbank- oder Middleware-Setup passende Variante wählen.

In welchem PLCnext-Task soll der fbSQL4PLCnext-Baustein aufgerufen werden?

fbSQL4PLCnext in einen dedizierten Niedrigprioritäts-Task platzieren: tskUncritical, Intervall = 10 ms, Priorität = 10. So wird sichergestellt, dass die Datenbankkommunikation zeitkritische Steuerungs-Tasks nicht beeinträchtigt. Für hochfrequente Anwendungen hält der optionale Baustein fbSQL4PLCnextConnectionObserver eine persistente Verbindung aufrecht und sendet Keep-Alive-Anfragen, um Timeout-Fehler während Kommunikationspausen zu verhindern.

Technische Daten

REQUIREMENTS & VERSION INFO
PLCnext Engineer Version 2026.0 oder höher
Bibliotheksdatei S4A_SQL4PLCnext.pcwlx
Hersteller-Pflichtbibliotheken PLCnextBase_1_7_2.pcwlx
PLCnextBase_1_7_2\PLCnextBase.pcwlx
PLCnextBase_1_7_2\PLCnextBaseServices.pcwlx
Bibliotheks-Installationspfad C:\Users\<Benutzer>\Documents\PLCnext Engineer\Libraries
Beispielprojekte S4A_SQL4PLCnext_Example.pcwex (Standard-Protokoll)
S4A_SQL4PLCnext_UTF16_Example.pcwex (UTF-16-Protokoll)
TLS Connector-Version SQL4automation Connector V5.1.0.0 oder höher erforderlich für TLS/SSL-Verschlüsselung
REQUIRED BLOCKS / LIBRARIES
  • S4A_SQL4PLCnext.pcwlx (SQL4PLCnext-Bibliothek)
  • PLCnextBase_1_7_2.pcwlx (Phoenix Contact Herstellerbibliothek)
  • Datentypendefinitionen unter: Lokal > Datentypen > S4A_SQL4PLCnext
  • Bibliotheksreferenz: S4A_SQL4PLCnext
  • fbSQL4PLCnext (Haupt-Kommunikationsbaustein, zyklisch aufrufen)
  • stSQL4PLCnextInterface (als globaler/externer Speicher unter IEC 61131-3 instanziert)
  • fbSQL4PLCnextConnectionObserver (optional, für persistente Verbindungen)
CONNECTOR-SIDE SETTINGS
Zieleinstellung Standard (oder UTF-16 für das UTF-16-Beispielprojekt)
Task-Konfiguration fbSQL4PLCnext in einen Niedrigprioritäts-Task platzieren: tskUncritical, Intervall = 10 ms, Priorität = 10
Standard SPS-IP 192.168.1.10 (neue oder zurückgesetzte Steuerung); Benutzername: admin; Passwort: auf dem Geräteaufkleber aufgedruckt
TLS / SSL ENCRYPTION
Connector-Version TLS/SSL erfordert SQL4automation Connector V5.1.0.0 oder höher
Zertifikatspfade C:\ProgramData\SQL4automation\certs\CA (RootCA)
C:\ProgramData\SQL4automation\certs\S4AConnector (Server-Zertifikat)
C:\ProgramData\SQL4automation\certs\S4AQueryTool (Query-Tool-Zertifikat)
PLCnext Zertifikatsformat PLCnext Steuerungen benötigen das PEM-Format. Das Tool XCA (V2.9.0 oder höher) zum Konvertieren und Exportieren der Zertifikate verwenden.
PLCnext Zertifikatseinrichtung Im Webbrowser mit der Steuerung verbinden und einloggen. Neuen Trust Store erstellen und Root-Zertifikat importieren. Neuen Identity Store erstellen und Client-Zertifikat samt Schlüssel importieren.
Bausteinparameter fuer TLS xUseTLS: TRUE
sTlsIdentityStoreName: <Name des im Browser konfigurierten Identity Store>
sTlsTrustStoreName: <Name des im Browser konfigurierten Trust Store>
Inbetriebnahme-Reihenfolge Verbindung immer OHNE TLS zuerst testen. Verschlüsselung erst aktivieren, wenn die unverschlüsselte Kommunikation funktioniert. Systemzeit vor TLS-Aktivierung prüfen.
FUNCTION BLOCK PARAMETERS
Parameter Type Description
sIP STRING IP-Adresse des SQL4automation Connectors
iPort INT Portnummer des SQL4automation Connectors
tTimeout TIME Kommunikations-Timeout (Standard: 10 s)
tFbExecTimeLimit TIME Maximal nutzbare Verarbeitungszeit pro SPS-Zyklus
xUseTLS BOOL TLS/SSL-Verschlüsselung aktivieren
sTlsIdentityStoreName STRING Name des Identity Store für die verschlüsselte Kommunikation
sTlsTrustStoreName STRING Name des Trust Store für die verschlüsselte Kommunikation
stSql4PLCnextInterface utSql4PLCnextInterface Anfrage-/Antwort-Datenstruktur (Verbindung zum Connector)
BUFFER & GLOBAL CONSTANTS
Constant Default Description
SQL4PLCNEXT_USE_MRP_PARAMETER True Aktiviert Rückgabeparameter aus Stored Procedures (erfordert Connector >= V4.0.0.0; für ältere Connectoren auf FALSE setzen)
SQL4PLCNEXT_REQUEST_BUFFER_SIZE 8192.0 Größe des Sendepuffers (Bytes)
SQL4PLCNEXT_RESPONSE_BUFFER_SIZE 8192.0 Größe des Empfangspuffers (Bytes)
SQL4PLCNEXT_RESPONSE_RETURNPARAM_SIZE 5.0 Maximale Anzahl Rückgabeparameter in der Antworttabelle
SQL4PLCNEXT_RESPONSE_ROW_SIZE 20.0 Maximale Anzahl Zeilen in der Antworttabelle
SQL4PLCNEXT_RESPONSE_COL_SIZE 10.0 Maximale Anzahl Spalten in der Antworttabelle
SQL4PLCNEXT_RESPONSE_MAX_STRING_SIZE 255.0 Maximale Länge der Antwort-Strings (Zeichen)
SQL4PLCNEXT_RCVARRAY_SIZE 200.0 Größe des Empfangs-Arrays (Bytes pro SPS-Zyklus)
ERROR CODES (diResultState)
Error Code Description
1 Unbekannter SQL-Befehl
2 Anfrage liefert mehr Datensätze als MaxRows. Anfrage anpassen oder MaxRows erhöhen.
3 Anfrage liefert mehr Spalten als MaxColumns. Anfrage anpassen oder MaxColumns erhöhen.
4 Anfrage liefert mehr Daten als der definierte Puffer fasst. Anfrage anpassen oder Puffergröße im Connector und in der Steuerung erhöhen.
5 Anfrage liefert mindestens einen Wert größer als MaxStringLength. Anfrage anpassen oder MaxStringLength erhöhen.
10 Interner Connector-Fehler
11 Interner Connector-Fehler; Datenbank kann nicht geöffnet werden
21 Keine IP-Adresse definiert
22 Keine Portnummer definiert
23 Anfrage-String ist leer
29 MaxStringLength-Größe ist ungültig
41 Keine Verbindung zum SQL4automation Connector. Firewall, IP-Adresse und Port prüfen.
51 Fehler beim Senden der Anfrage. Firewall, IP-Adresse und Port prüfen.
91 Timeout: Keine Antwort vom Connector innerhalb des Zeitfensters
95 Fehler beim Empfangen der Daten
>100 Fehlercodes der ODBC-Datenbankverbindung
40002 Allgemeiner Fehler in der SQL-Anfrage; Anfrage-String ist ungültig

Steigen Sie jetzt auf SQL4automation um.

Industrie­steuerungen direkt mit SQL-Datenbanken verbinden. Praxiserprobt seit 2007 für maximale Leistung und Sicherheit, ganz ohne Middleware.

Phoenix Contact PLCnext
nach Industrie
No items found.