smsreach.io

SPS-Stoermeldungen per SMS: Siemens S7, Beckhoff TwinCAT und Wago anbinden

Eine SPS meldet Stoerungen ueber digitale Ausgaenge, Modbus-Register oder Ethernet-Funktionsbausteine. Damit die Meldung als SMS aufs Handy kommt, braucht jede dieser Strecken einen anderen Weg zum Gateway. Dieser Artikel zeigt fuer Siemens S7-1200 und S7-1500, Beckhoff TwinCAT und Wago 750 sowie PFC, welcher Weg am schnellsten funktioniert und welche Konfiguration dazu noetig ist.

14. September 2026 10 Min. Lesezeit smsreach.io Redaktion
Stilisiertes SPS-Steuergeraet mit Ethernet-Verbindung zum SMSEagle-Gateway sendet SMS-Alarm auf ein Smartphone

SPS-Stoermeldungen gelangen per SMS aufs Handy der Bereitschaft, indem das SMS-Gateway die Signalkette zwischen Steuerung und Mobilfunknetz schliesst. Fuer Siemens S7-1200 und S7-1500 ist der TMAIL_C-Funktionsbaustein in TIA Portal der schnellste Weg, fuer Beckhoff TwinCAT empfiehlt sich IotHttpRequest als aktiver HTTP-Push, und fuer Wago 750 Feldbuscontroller genuegt ein einziger Konfigurationsschritt am SMSEagle, weil der Modbus-TCP-Slave bereits werksseitig aktiv ist.

Warum SMS fuer SPS-Stoermeldungen der zuverlaessigste Alarmkanal ist

Eine Hebeanlage faellt nachts aus, eine Kompressorsteuerung meldet Druckverlust, eine Abwasserpumpe steht still. Ob jemand die Meldung sieht, haengt davon ab, wie der Alarmweg aufgebaut ist. E-Mail landet im Posteingang, Scada-Fenster sind nachts unbeobachtet, und App-Benachrichtigungen scheitern, wenn kein Internet im Buero verfuegbar ist. SMS kommt auch auf dem Sperrbildschirm an, ohne App und ohne Internetverbindung auf Empfaengerseite, solange der Empfaenger Mobilfunknetz hat. Laut Branchenerhebungen liegt die Oeffnungsrate von SMS-Nachrichten bei ueber 90 Prozent, weit vor E-Mail. Fuer industrielle Anwendungen kommt hinzu, dass das SMS-Gateway im eigenen Netz sitzt und nicht von einem externen Clouddienst abhaengt.

Vier Wege von der SPS zur SMS: ein Ueberblick

Zwischen einer SPS und dem SMSEagle-Gateway gibt es vier technische Wege, die je nach vorhandener Hardware und Programmierkenntnissen unterschiedlich gut passen:

WegVoraussetzung SPS-seitigKonfigurationsaufwandBewertung
Digitaleingang am SMSEaglePotenzialfreier DO-Ausgang der SPS auf DI-Eingang des GatewaysKabel legen, Trigger-Regel am Gateway anlegenSehr einfach, kein Netzwerk
E-Mail (Email-to-SMS)SPS-Programm oder CP kann SMTP senden (z. B. TMAIL_C)SMTP-Ziel auf SMSEagle-IP setzenEinfach, push-basiert
Modbus-TCP-PollingMB_SERVER (Siemens) oder eingebauter Slave (Wago) auf Port 502Probe am SMSEagle anlegen, Register konfigurierenGut, kein SPS-Code-Aenderung bei Wago
HTTP-REST-API (aktiver Push)SPS-Programm kann HTTP senden (TwinCAT IotHttpRequest, Wago CODESYS)API-Baustein oder Skript im SPS-ProgrammSehr gut, sofortiger Push
Integrationswege von SPS zu SMSEagle im Vergleich

Siemens S7-1200 und S7-1500: welcher Weg funktioniert wie?

Die Siemens SIMATIC S7-1200 und S7-1500 sind die aktuellen Baureihen fuer den Einstiegs- bis Hochleistungsbereich. Beide werden in TIA Portal programmiert und haben eine integrierte PROFINET/Ethernet-Schnittstelle, ueber die TCP/IP-basierte Kommunikation ohne CP-Modul moeglich ist. Drei Wege fuehren von dort zum SMSEagle:

Weg 1: TMAIL_C sendet E-Mail an SMSEagle

Ab TIA Portal V13 steht der Funktionsbaustein TMAIL_C fuer S7-1200 (CPU-Firmware V4.0 und hoeher) und S7-1500 zur Verfuegung. TMAIL_C oeffnet eine SMTP-Verbindung zum angegebenen Mailserver und versendet eine E-Mail. Der interne SMTP-Server des SMSEagle akzeptiert diese E-Mail und wandelt sie sofort in eine SMS um. Die Empfaengeradresse folgt dem Format +4915112345678@IP-DES-SMSEAGLE, also zum Beispiel +491511234@192.168.1.100. So landet die Rufnummer automatisch im Empfaengerfeld.

  • TMAIL_C im TIA Portal unter Kommunikation, Weitere, E-Mail einbinden
  • Verbindungsparameter SMTP_Server auf IP-Adresse des SMSEagle setzen, Port 25 (oder 587 mit TLS)
  • SENDER und TO gemaess Format RUFNUMMER@SMSEAGLE-IP befuellen
  • Baustein in OB1 oder im Stoerfall-OB (OB82, OB86) aufrufen
  • Flankengetriggert ausloesen, damit nicht bei jeder SPS-Zykluszeit eine SMS entsteht
Beispiel: Drucksensor an I 0.3 signalisiert Unterschreitung. OB82 wird ausgeloest, TMAIL_C sendet an +49151@192.168.10.50. SMSEagle sendet binnen Sekunden die SMS.

Weg 2: MB_SERVER macht die S7 zum Modbus-TCP-Slave

Ab TIA Portal V12 steht der Funktionsbaustein MB_SERVER fuer die S7-1200 bereit, die S7-1500 unterstuetzt ihn ab TIA Portal V13. MB_SERVER aktiviert einen Modbus-TCP-Listener auf Port 502 und exponiert einen frei definierbaren Datenbereich (MB_HOLD_REG) als Holding-Register. Das SPS-Programm beschreibt diese Register mit Stoerbits oder Messwerten. SMSEagle fragt die Register ab Version 6.30 direkt ab, ohne Middleware.

  • MB_SERVER in OB1 einbinden, PORT auf eine freie TCP-Verbindungsnummer setzen (z. B. 255)
  • MB_HOLD_REG zeigt auf einen Datenblock, der die Stoerbits enthaelt, z. B. DB10.DBX0.0 fuer Bit 0
  • SMSEagle: unter Network Monitoring neue Modbus-TCP-Probe anlegen, Ziel-IP und Port 502 der S7 eintragen
  • Funktionscode 3 (Read Holding Registers) oder 1 (Read Coils) waehlen, Registeradresse des Stoerbits eintragen
  • Alarmbedingung festlegen, z. B. Register 0 gleich 1, SMS-Text und Empfaengernummer hinterlegen

Beckhoff TwinCAT: aktiver HTTP-Push oder passives Modbus-Polling

Beckhoff TwinCAT laeuft auf Windows-basierten Industrial PCs und hat deshalb Zugriff auf den vollen TCP/IP-Stack der Windows-Netzwerkschicht. Das erleichtert den aktiven HTTP-Push erheblich, weil keine serielle oder proprietaere Verbindung noetig ist.

Weg 1: IotHttpRequest sendet HTTP-POST an SMSEagle-API

Mit der Lizenz TF6760 (TC3 IoT Communicator) steht in TwinCAT 3 der Funktionsbaustein FB_IotHttpRequest zur Verfuegung. Dieser Baustein baut eine HTTP-Verbindung zum SMSEagle auf und sendet einen HTTP-POST an den API-Endpunkt /api/v1/alarm mit dem Bearer-Token des Gateways. Die Nachricht wird als JSON im Requestbody uebergeben. Das Ergebnis ist ein sofortiger Push ohne Polling-Verzoegerung.

  • TF6760-Lizenz auf dem TwinCAT-Rechner aktivieren, Bibliothek Tc2_IotBase einbinden
  • FB_IotHttpRequest-Instanz anlegen, URI auf http://SMSEAGLE-IP/api/v1/alarm setzen
  • HTTP-Method auf POST setzen, Authorization-Header mit Bearer-Token befuellen
  • RequestBody als JSON: { "to": "+4915112345678", "message": "Stoerung: Pumpe P1 ausgefallen" }
  • Baustein flankengesteuert aus dem Stoerfall-Taskkontext aufrufen
  • Alternativ ohne TF6760: TF6310 (TC3 TCP/IP) und FB_SocketConnect/FB_SocketSend fuer rohes HTTP, mehr Implementierungsaufwand

Weg 2: Modbus-TCP-Server, passiv von Connect oder SMSEagle gepollt

Wer keine TF6760-Lizenz einsetzen moechte, kann in TwinCAT 3 einen Modbus-TCP-Server aktivieren. Mit der Bibliothek TF6250 (TC3 Modbus TCP) ist das in wenigen Schritten erledigt. TwinCAT exponiert dann Prozessvariablen als Modbus-Register, die SMSEagle oder die smsreach-Plattform zyklisch abfragen. Stoerbits werden als Coils oder Holding-Register abgebildet.

Wago 750 und PFC: Modbus-TCP-Polling ohne einen Programmierungsschritt

Wago 750 Feldbuscontroller wie der 750-841, 750-880 oder 750-852 bringen Modbus-TCP-Slave-Funktionalitaet ohne zusaetzliche Programmierung mit. Die am I/O-Knoten gesteckten Eingangs- und Ausgangsmodule werden automatisch als Modbus-Register gemappt. Die digitalen Eingaenge liegen ab Adresse 0x0000 als Read Discrete Inputs (Funktionscode 2), die Ausgaenge ab 0x0200 als Read Coils (Funktionscode 1).

SMSEagle muss nur wissen, an welcher Registeradresse das Stoerbit liegt. Eine Probe im Webinterface genuegt:

  • SMSEagle Webinterface oeffnen, unter Network Monitoring neue Modbus-TCP-Probe anlegen
  • Ziel-IP des Wago-Controllers eintragen, Port 502, Unit ID 1 (Standard bei Wago TCP)
  • Funktionscode 2 (Read Discrete Inputs) fuer digitale Eingaenge waehlen
  • Registeradresse des Stoerbits eintragen, zum Beispiel 0 fuer den ersten digitalen Eingang (DI 1)
  • Alarmbedingung Wert gleich 1 setzen, SMS-Text und Empfaengernummer hinterlegen, Abfrageintervall 10 Sekunden
  • Kein einziger Schritt am Wago oder in e!COCKPIT noetig

Die Wago PFC100 und PFC200 (Linux-basiert, CODESYS 3.5) erlauben darueber hinaus einen aktiven E-Mail- oder HTTP-Push aus dem CODESYS-Programm. Die CODESYS-Standardbibliothek bietet SmtpClient-Bausteine, WAGO veroeffentlicht auf GitHub unter dem Account WAGO eigene IEC-61131-3-Bibliotheken fuer E-Mail, HTTP und MQTT, die kostenfrei verfuegbar sind.

Einfachester Weg fuer aeltere SPS und LOGO!: Digitaleingang am SMSEagle

Fuer Siemens LOGO!, S7-300/400 ohne TCP/IP-faehige CPU oder aeltere Beckhoff- und Wago-Geraete ohne Ethernet ist ein Netzwerkweg manchmal nicht praktikabel. In solchen Faellen genuegt ein potenzialfreier Relaiskontakt: Ein Digitalausgang der SPS schliesst bei Stoerung einen Kontakt, der auf einen der vier Digitaleingaenge des SMSEagle-NXS-Gateways gefuehrt wird. Das Gateway erkennt den Pegelwechsel und loest sofort eine SMS aus.

  • Zwei Kabeladern von einem DO-Relaisausgang der SPS zum DI-Klemmanschluss des SMSEagle legen
  • Im SMSEagle-Webinterface unter I/O Control, Digital Inputs den entsprechenden Eingang auswaehlen
  • Trigger-Bedingung auf steigende Flanke oder High-Pegel setzen
  • SMS-Text und Empfaengernummern hinterlegen
  • Kein Netzwerk, keine IP-Adresse, keine Programmaenderung in der SPS noetig
Die vier Digitaleingaenge des SMSEagle NXS koennen vier unabhaengige Stoerquellen abbilden, zum Beispiel Pumpe P1, Pumpe P2, Lueftung und Heizung, jeder mit eigenem SMS-Text und eigener Empfaengerliste.

Hersteller und Protokolle im direkten Vergleich

SPS / HerstellerEmpfohlener WegVoraussetzungAlternativweg
Siemens S7-1200 (V4.0+)TMAIL_C in TIA Portal, E-Mail an SMSEagle-SMTPIntegriertes PROFINET, kein CP-ModulMB_SERVER, Modbus-TCP-Polling durch SMSEagle
Siemens S7-1500TMAIL_C oder MB_SERVERIntegriertes PROFINET, TIA Portal V13+Digitaleingang am SMSEagle
Siemens LOGO! 0BA8Potenzialfreier Kontakt an SMSEagle DIRelaisausgang am LOGO!E-Mail wenn LOGO! 8.FS4 mit Ethernet
Beckhoff TwinCAT 3IotHttpRequest (TF6760), HTTP-POST an APITF6760-Lizenz, TwinCAT 3.1 Build 4022+Modbus-TCP-Server (TF6250), passives Polling
Wago 750 FeldbusModbus-TCP-Polling, kein ProgrammieraufwandIP-Adresse am Wago, SMSEagle v6.30+Potenzialfreier DO-Kontakt an SMSEagle DI
Wago PFC100/PFC200Modbus-TCP-Polling oder CODESYS SmtpClientEthernet, CODESYS 3.5WAGO Open-Source HTTP-Bibliothek auf GitHub
Integrationswege je SPS-Hersteller und Modell

Wann reicht SMSEagle direkt, wann braucht man eine Alarmierungsplattform?

Die direkte Anbindung von SPS an SMSEagle sendet die Stoermeldung an eine oder mehrere feste Rufnummern. Was sie nicht leistet: nachpruefen, ob jemand reagiert hat, bei fehlender Reaktion an die naechste Person eskalieren oder einen rotierenden Bereitschaftsplan beruecksichtigen. Sobald diese Anforderungen bestehen, schaltet man eine Alarmierungsplattform zwischen SPS und Gateway.

SMSEagle direktSMSEagle mit smsreach Connect
EmpfaengerFeste Rufnummern pro AlarmBereitschaftsplan mit Rotation und Lueckenwarnung
QuittierungKeine, SMS ist EinbahnstrassePer SMS-Antwort mit Quittierungscode, Reaktionszeitmessung
EskalationWeitere Rufnummern im selben AlertAutomatisch bei fehlender Quittierung, mehrstufig
ProtokollVersandlog am GatewayLueckenloses Protokoll mit Delivery-Reports und PDF-Export
Mehrere SPS und StandorteJe SPS und Gateway einzeln konfigurierenZentrale Plattform fuer alle Quellen
Stoerungsquellen differenzierenBis zu 16 Modbus-Proben oder 4 DI am GatewayBeliebig viele Quellen ueber API oder Connect
Direktanbindung oder Alarmierungsplattform: was wann genuegt

Wie SMS-Alarm und Quittierung in der Praxis aussehen, zeigt die Live-Demo unter smsreach.io/demo: Ein echter Alarm geht aufs Handy, die Quittierung laeuft per SMS-Antwort, die Plattform zeigt den Eingang in Echtzeit. Geeignete SMSEagle-Hardware fuer SPS-Anbindungen, vom NXS-9700 mit vier Digitaleingaengen bis zum NXS-9750 mit zwei Mobilfunkmodulen fuer Redundanz, gibt es mit Beratung vom autorisierten SMSEagle Gold Partner unter smsreach.io/geraete. Was die Plattform hinter dem Gateway fuer Dienstplan, Eskalation und Protokollierung leistet, beschreibt smsreach.io/plattform.

FAQ

Häufig gestellte Fragen

Kann ich eine Siemens S7-1200 ohne CP-Modul an SMSEagle anbinden?

Ja. Die S7-1200 hat ab CPU-Firmware V4.0 eine integrierte PROFINET/Ethernet-Schnittstelle, ueber die zwei Wege moeglich sind. Erstens: Der TMAIL_C-Funktionsbaustein sendet eine E-Mail an den internen SMTP-Server des SMSEagle, das Gateway wandelt sie in eine SMS um. Zweitens: Der MB_SERVER-Baustein aktiviert einen Modbus-TCP-Server auf Port 502, den das SMSEagle ab Version 6.30 direkt pollt. Beide Wege benoetigen kein CP-Modul und keinen Cloud-Dienst.

Welche TwinCAT-Lizenz brauche ich fuer den HTTP-Alarm an SMSEagle?

Fuer den IotHttpRequest-Funktionsbaustein benoetigen Sie die Lizenz TF6760 (TC3 IoT Communicator), die neben HTTP auch MQTT abdeckt. Ohne diese Lizenz ist der Weg ueber TF6310 (TC3 TCP/IP) moeglich: Dabei baut der Baustein FB_SocketConnect, FB_SocketSend und FB_SocketClose eine eigene HTTP-Verbindung auf, was mehr Implementierungsaufwand bedeutet. Die einfachere Alternative ohne Lizenzkosten ist der passive Modbus-TCP-Weg, bei dem Connect oder SMSEagle die TwinCAT-Register pollt.

Wie verbinde ich einen Wago 750 ohne Programmierkenntnisse mit SMSEagle?

Wago 750 Feldbuscontroller (z. B. 750-841, 750-880, 750-852) haben Modbus-TCP-Slave-Funktionalitaet werksseitig aktiv. Die digitalen Eingangs- und Ausgangsmodule des I/O-Knotens sind automatisch als Modbus-Register gemappt. Im SMSEagle oeffnen Sie unter Network Monitoring eine neue Modbus-TCP-Probe, tragen IP-Adresse und Port 502 des Wago ein und waehlen die Registeradresse des Stoerbits. Kein einziger Programmierschritt am Wago noetig.

Wann reicht der Digitaleingang am SMSEagle, wann brauche ich Modbus TCP?

Der Digitaleingang genuegt fuer einen Sammelstoermelder: ein Ausgang der SPS schliesst einen potenzialfreien Kontakt, der auf einen der vier DI-Eingaenge des SMSEagle-Gateways liegt. Das Gateway loest bei jedem Pegelwechsel eine SMS aus. Modbus TCP ist die bessere Wahl, wenn mehrere Stoerbits einzeln unterschieden werden muessen, Messwerte wie Druck, Temperatur oder Drehzahl mit ueberwacht werden sollen oder die SPS kein Feld-I/O zum Gateway fuehren kann. Ab SMSEagle Version 6.30 lassen sich bis zu 16 Modbus-Proben parallel abfragen.

Wann ist eine Alarmierungsplattform sinnvoll, wann reicht SMSEagle direkt?

SMSEagle direkt genuegt fuer feste Rufnummern und einfache Stoerbitkombinationen. Sobald ein rotierender Bereitschaftsplan besteht, automatische Eskalation bei fehlender Quittierung gefordert ist oder ein lueckenloses Protokoll zum Nachweis benoetigt wird, schaltet man eine Alarmierungsplattform dazwischen. Die Plattform ermittelt, wer Dienst hat, sendet die SMS ueber das SMSEagle, wartet auf Quittierung per SMS-Antwort und eskaliert bei Ausbleiben automatisch an die naechste Stufe.

// Nächster Schritt

Welches SMSEagle Gerät passt zu Ihnen?

Zwei Minuten Quiz oder direkter Blick in die Geräte­übersicht.