Hinweise zur Dokumentation

Diese Beschreibung wendet sich ausschließlich an ausgebildetes Fachpersonal der Steuerungs- und Automatisierungstechnik, das mit den geltenden nationalen Normen vertraut ist.
Zur Installation und Inbetriebnahme der Komponenten ist die Beachtung der Dokumentation und der nachfolgenden Hinweise und Erklärungen unbedingt notwendig.
Das Fachpersonal ist verpflichtet, für jede Installation und Inbetriebnahme die zu dem Zeitpunkt veröffentlichte Dokumentation zu verwenden.

Das Fachpersonal hat sicherzustellen, dass die Anwendung bzw. der Einsatz der beschriebenen Produkte alle Sicherheitsanforderungen, einschließlich sämtlicher anwendbaren Gesetze, Vorschriften, Bestimmungen und Normen erfüllt.

Disclaimer

Diese Dokumentation wurde sorgfältig erstellt. Die beschriebenen Produkte werden jedoch ständig weiter entwickelt.
Wir behalten uns das Recht vor, die Dokumentation jederzeit und ohne Ankündigung zu überarbeiten und zu ändern.
Aus den Angaben, Abbildungen und Beschreibungen in dieser Dokumentation können keine Ansprüche auf Änderung bereits gelieferter Produkte geltend gemacht werden.

Marken

Beckhoff®, TwinCAT®, EtherCAT®, EtherCAT G®, EtherCAT G10®, EtherCAT P®, Safety over EtherCAT®, TwinSAFE®, XFC®, XTS® und XPlanar® sind eingetragene und lizenzierte Marken der Beckhoff Automation GmbH.
Die Verwendung anderer in dieser Dokumentation enthaltenen Marken oder Kennzeichen durch Dritte kann zu einer Verletzung von Rechten der Inhaber der entsprechenden Bezeichnungen führen.

Patente

Die EtherCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und Patente:
EP1590927, EP1789857, EP1456722, EP2137893, DE102015105702
mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern.

EtherCAT® ist eine eingetragene Marke und patentierte Technologie lizenziert durch die Beckhoff Automation GmbH, Deutschland.

Copyright

© Beckhoff Automation GmbH & Co. KG, Deutschland.
Weitergabe sowie Vervielfältigung dieses Dokuments, Verwertung und Mitteilung seines Inhalts sind verboten, soweit nicht ausdrücklich gestattet.
Zuwiderhandlungen verpflichten zu Schadenersatz. Alle Rechte für den Fall der Patent-, Gebrauchsmuster- oder Geschmacksmustereintragung vorbehalten.


Einleitung

Die folgende Dokumentation zeigt anhand eines Beispieles, wie eine Kommunikation zwischen TwinCAT und dem Maestro100Lite-Modem hergestellt werden kann. Das Programmbeispiel beschränkt sich dabei auf einige Beispielfunktionen:
  • Einloggen auf die SIM-Karte mit der gültigen PIN
  • Versenden einer SMS
  • Lesen einer SMS von der SIM-Karte
  • Löschen einer SMS von der SIM-Karte

Die Befehle an das Modem erfolgen dabei im so genannten AT-Format. In der Beschreibung sind die jeweiligen verwendeten Befehle kurz erläutert, jedoch kann aus urheberrechtlichen Gründen keine komplette Auflistung aller AT-Befehle gegeben werden. Eine Übersicht ist jedoch im Internet leicht zu finden. Die Grundbausteine, welche die oben aufgeführten Funktionen erfüllen sind offen und analog strukturiert, so dass sie leicht abgeändert und eigenen Bedürfnissen angepasst werden können.

Voraussetzungen

  • Microsoft Windows mit TwinCAT PLC (ab Version 2.10) für die Programmierung und Inbetriebnahme
  • TwinCAT PLC Serial Communication Library
  • BK9000 mit KL6031 und KL9010 oder Embedded-PC (z.B. CX9000) mit N030-Schnittstelle (RS232)
  • Programmierkenntnisse in IEC 61131-3 unter TwinCAT
  • gültige SIM-Karte mit zugehöriger PIN-Nummer
  • Maestro 100 Lite GMS/GPRS Modem


Beispielprogramm

Anhand eines Programm-Beispiels wird ersichtlich, wie der COM-Port im TwinCAT System Manager verknüpft und aus dem PLC-Programm heraus angesprochen wird. Dabei ist zum einen die Variante für die 9-polige D-Sub-Schnittstelle eines CX9000 dargestellt und zum anderen die Lösung mit einer KL6031. Für das Verständnis der Funktionsweise des Modems sind im Programm 4 Bausteine enthalten mit denen sich ein einfacher Sende- und Empfangsbetrieb von SMS-Nachrichten realisieren lässt. Die Kommunikation mit dem Modem erfolgt dabei mit den so genannten AT-Befehlen. In den nachfolgenden Dokumentationen wird auf die Verwendung der jeweiligen AT-Befehle eingegangen. Eine komplette Übersicht aller AT-Befehle kann hier aus urheberrechtlichen Gründen nicht wiedergegeben werden, ist jedoch im Internet zu finden.

Beispielprogramm | PLC-Programm und TwinCAT System Manager als zip-Datei
Anschluss des Modems, CX-Version | Anschluss an die Hardware, TwinCAT System Manager-Einstellungen.
Anschluss des Modems, KL-Version | Anschluss an die Hardware, TwinCAT System Manager-Einstellungen.
Beschreibung Programm, CX-Version | Erläuterung zur Handhabung des Beispielprogramms, CX-Version.
Beschreibung Programm, KL-Version | Erläuterung zur Handhabung des Beispielprogramms, KL-Version.
FB_Maestro100LT_LogIn | Baustein zum Einloggen mit PIN-Nummer.
FB_Maestro100LT_SendSMS | Baustein zum Senden einer SMS.
FB_Maestro100LT_ReadSMS | Baustein zum Auslesen einer SMS.
FB_Maestro100LT_DeleteSMS | Baustein zum Löschen einer SMS.
Fehlercodes | Fehler, die bei der Abarbeitung der Bausteine auftreten können.


Anschluss an einem COM-Port (CX)

Maestro 100 Lite GMS/GPRS Modem

Anschluss an einem COM-Port

Das Modem wird mit dem beigefügten Kabel (15-Pol männlich zum Modem, 9-Pol weiblich zur COM-Schnittstelle) an den COM-Port angeschlossen. Im Bedarfsfall kann die Verbindung mit einem 1:1-Kabel verlängert werden.

Die Leitungen vom Modem sind dabei wie folgt belegt, wobei die Beschreibung der "Funktion" sich auf den Empfänger - hier der CX - bezieht:

SUB-D 15 (männlich) | Funktion | SUB-D 9 (weiblich)
1 | DCD | 1
2 | TX | 3
3 | BOOT |
4 | Mikrofon+ |
5 | Mikrofon- |
6 | Rx | 2
7 | DSR | 6
8 | DTR | 4
9 | GND | 5
10 | Lautsprecher+ |
11 | CTS | 8
12 | RTS | 7
13 | RI | 9
14 | Reset |
15 | Lautsprecher- |

Im TwinCAT System Manager wird die COM-Schnittstelle, falls noch nicht vorhanden, eingefügt und auf den richtigen Port gestellt. In der TwinCAT System Manager-Datei des Beispielprogramms ist der COM-Port natürlich schon vorhanden und entsprechend verknüpft.

Danach wird der Port wie folgt konfiguriert:

  • KL6xx1 Betrieb
  • 64 Datenbytes im Prozessabbild
  • RS232
  • 9600 Baudrate
  • 8 Datenbits
  • keine Parität
  • 1 Stoppbit


Anschluss an einer KL6031

Im Gegensatz zum Anschluss an einem COM-Port mit D-SUB-Steckerleiste muss bei der KL-Variante die Verbindung selbst gefertigt werden:

Die Leitungen vom Modem sind dabei wie folgt belegt, wobei die Beschreibung der "Funktion" sich auf den Empfänger - hier die KL6031 - bezieht:

SUB-D 15 (männlich) | Funktion | SUB-D 9 (weiblich)
1 | DCD | 1
2 | TX | 3
3 | BOOT |
4 | Mikrofon+ |
5 | Mikrofon- |
6 | Rx | 2
7 | DSR | 6
8 | DTR | 4
9 | GND | 5
10 | Lautsprecher+ |
11 | CTS | 8
12 | RTS | 7
13 | RI | 9
14 | Reset |
15 | Lautsprecher- |

Im TwinCAT System Manager wird dann die RS-232-Klemme eingefügt. In der TwinCAT System Manager Datei des Beispielprogramms ist die Klemme natürlich schon vorhanden und entsprechend verknüpft. Die Konfiguration der Klemme erfolgt aus der PLC heraus.


Programmbeschreibung CX

Maestro 100 Lite GMS/GPRS Modem

Beschreibung

Dieses Programm soll anhand von 4 Funktionsbausteinen veranschaulichen wie die serielle Kommunikation zwischen einem SPS-Programm und dem Modem funktionieren kann. Diese vier Bausteine ermöglichen das Einloggen, Senden, Empfangen und Löschen von SMS-Nachrichten. Zuvor jedoch muss eine Instanz des Bausteines SerialLineControl am Anfang des Programmteiles MAIN aufgerufen werden. Dieser Funktionsbaustein ist Bestandteil der Bibliothek COMlibV2.lib und regelt den Datenaustausch zwischen der SPS und der seriellen Schnittstelle.

Die beiden Struktur-Variablen stPCComInData (Eingang) und stPCComOutData (Ausgang) stellen dabei die Verbindung zur seriellen Schnittstelle dar und werden entsprechend im TwinCAT System Manager verknüpft, hier am Beispiel von stPCComInData.SerStatus:

Danach werden in der MAIN-Routine jeweils eine Instanz der 4 Beispielbausteine aufgerufen: fbLogOn, fbSendSMS, fbReadSMS und fbDeleteSMS, diese lassen sich online mit Hilfe von Hilfsvariablen im Deklarationsteil parametrieren und starten. Die entsprechenden Variablen-Werte werden dabei mit "STRG+F7" geschrieben.

Hinweis: Vor dem ersten Start (alle elektronischen Verbindungen sind hergestellt) müssen sie Steuerung und das Modem einmal spannungslos sein.

Da die Bausteinstarts nur Flanken benötigen, werden alle Startvariablen am Ende des MAIN-Programmes wieder auf FALSE gesetzt.

Interner Aufbau der Funktionsbausteine

Die vier Bausteine sind intern analog aufgebaut: Es erfolgt bei dem Login- und dem Send-Baustein zunächst eine Überprüfung auf Plausibilität der eingegebenen Werte. Hiernach werden die notwendigen AT-Befehle zusammengesetzt - erst als String, da die meisten Bausteineingaben wie Telefonnummer oder Sendetext so am einfachsten zu behandeln sind. Danach erfolgt die Umkopierung auf ein ARRAY von BYTE. In diesem Format lassen sich die nötigen Steuerzeichen wie <CR> ($0D) einfach einfügen. Anschließend werden die Befehle gesendet, auf Antworten gewartet und diese analysiert. Fehlerfälle, die nicht eindeutig zu analysieren sind werden in einem der letzten Schritte, dem Timeout enden. Der Timer dazu wird ganz am Anfang durch die Startflanke initiiert.


Programmbeschreibung KL6031

Maestro 100 Lite GMS/GPRS Modem

Beschreibung

Dieses Programm soll anhand von 4 Funktionsbausteinen veranschaulichen wie die serielle Kommunikation zwischen einem SPS-Programm und dem Modem funktionieren kann. Diese vier Bausteine ermöglichen das Einloggen, Senden, Empfangen und Löschen von SMS-Nachrichten. Zuvor jedoch müssen jeweils eine Instanz des Bausteines KL6configuration und SerialLineControl am Anfang des Programmteiles MAIN aufgerufen werden. Diese Funktionsbausteine sind Bestandteil der Bibliothek COMlibV2.lib und parametrieren zum einen die Kommunikation der Klemme und regeln zum anderen den Datenaustausch zwischen der SPS und der seriellen Schnittstelle.

Die beiden Struktur-Variablen stPCComInData (Eingang) und stPCComOutData (Ausgang) stellen dabei die Verbindung zur seriellen Schnittstelle dar und werden entsprechend im TwinCAT System Manager verknüpft, hier am Beispiel von stPCComInData.SerStatus:

Danach werden in der MAIN-Routine jeweils eine Instanz der 4 Beispielbausteine aufgerufen: fbLogIn, fbSendSMS, fbReadSMS und fbDeleteSMS, diese lassen sich online mit Hilfe von Hilfsvariablen im Deklarationsteil parametrieren und starten. Die entsprechenden Variablen-Werte werden dabei mit "STRG+F7" geschrieben.

Hinweis: Vor den ersten Start (alle elektronischen Verbindungen sind hergestellt) müssen die Steuerung und das Modem einmal spannungslos sein.

Da die Bausteinstarts nur Flanken benötigen, werden alle Startvariablen am Ende des MAIN-Programmes wieder auf FALSE gesetzt.

Interner Aufbau der Funktionsbausteine

Die vier Bausteine sind intern analog aufgebaut: Es erfolgt bei dem Login- und dem Send-Baustein zunächst eine Überprüfung auf Plausibilität der eingegebenen Werte. Hiernach werden die notwendigen AT-Befehle zusammengesetzt - erst als String, da die meisten Bausteineingaben wie Telefonnummer oder Sendetext so am einfachsten zu behandeln sind. Danach erfolgt die Umkopierung auf ein ARRAY von BYTE. In diesem Format lassen sich die nötigen Steuerzeichen wie <CR> ($0D) einfach einfügen. Dann werden die Befehle gesendet, auf Antworten gewartet und diese analysiert. Fehlerfälle, die nicht eindeutig zu analysieren sind werden in einem der letzten Schritte, dem Timeout enden. Der Timer dazu wird ganz am Anfang durch die Startflanke initiiert.


FB_Maestro100LT_LogIn

Beschreibung

Mit Hilfe dieses Bausteines wird auf das in der SIM-Karte eingerichtete Mobil-Konto eingeloggt. Um die Programmierung zu erleichtern, schaltet dieser Baustein, vor dem Login-Vorgang die Echo-Funktion ab. Bei der Echo- Funktion wird, wenn sie aktiviert ist, der gesendete Befehl vom Modem wiederholt. Damit wird das empfangene Telegramm unnötig lang und die Analyse unnötig erschwert.

Eine positive Flanke an bStart startet den Login-Vorgang mit der PIN-Nummer, welche als STRING an sPinNumber anliegt. Eine Eingabe der PIN-Nummer im Zahlenformat ist deswegen nicht möglich, weil Zahlenformate eine anfängliche "0" unterdrücken würden.

Intern verwendete AT-Befehle

ATE0 | Schaltet die Echo-Funktion aus
AT+CPIN=<Pin> | Aktiviert das Mobil-Konto mit der PIN-Nummer <Pin>

VAR_INPUT

bStart    : BOOL;
sPinNumber : STRING(15);

bStart: Eine positive Flanke startet den Login-Baustein.

sPinNumber : PIN-Nummer des Mobil-Telefon-Kontos.

VAR_OUTPUT

bBusy    : BOOL;
bError   : BOOL;
nErrorID : UINT;

bBusy: Dieser Ausgang ist immer dann aktiv, solange ein Löschvorgang aktiv ist.

bError: Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in nErrorId enthalten. Wird durch das erneute Starten des Bausteines zurückgesetzt.

nErrorId: Enthält den spezifischen Fehlercode. Siehe Fehlercodes.

VAR_IN_OUT

stTxBuffer : ComBuffer;
stRxBuffer : ComBuffer;

stTxBuffer: Verweis auf den Puffer mit Sendedaten für die serielle Schnittstelle.

stRxBuffer: Verweis auf den Puffer mit Empfangsdaten für die serielle Schnittstelle.


FB_Maestro100LT_SendSMS

Beschreibung

Mit Hilfe dieses Bausteines wird eine SMS an die am Eingang sPhoneNumber anliegende Telefonnummer verschickt. Das Versenden der Nachricht erfolgt dabei im Text-Modus, der im Vergleich zum PDU-Modus (Versenden binärer Daten) für Text einfacher zu handhaben ist. Da bei dem Maestro-Modem voreingestellt der PDU-Modus aktiv ist, wird vor jedem Senden auf Textmodus umgeschaltet.

Intern verwendete AT-Befehle

AT+CMGF=1 | Umschalten auf den Text-Modus (=1)
AT+CMGS=<DestinationAddress><CR><text><ctrl-z> | Senden eines Textes <text> an die Telefonnummer <DestinationAddress>

Der AT-Befehl für das Senden untergliedert sich in 2 Teile: Senden der Telefonnummer mit <CR> (16#0D) am Ende, Warten auf die Rückmeldung ">" (16#3E) und dann das Senden des Textes, welches mit "ctrl-z" (16#1A) abgeschlossen wird.

VAR_INPUT

bStart       : BOOL;
sPhoneNumber : STRING(30);
sSMSText     : STRING(160);

bStart: Eine positive Flanke startet den Sendebaustein.

sPhoneNumber : Nummer an die die SMS geschickt werden soll. Die Eingabe erfolgt im STRING-Format - eine Eingabe im Zahlenformat ist deswegen nicht möglich, weil Zahlenformate eine anfängliche "0" unterdrücken würden.

sSMSText : Nummer an die die SMS geschickt werden soll.

VAR_OUTPUT

bBusy    : BOOL;
bError   : BOOL;
nErrorID : UINT;

bBusy: Dieser Ausgang ist immer dann aktiv, solange ein Löschvorgang aktiv ist.

bError: Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in nErrorId enthalten. Wird durch das erneute Starten des Bausteines zurückgesetzt.

nErrorId: Enthält den spezifischen Fehlercode. Siehe Fehlercodes.

VAR_IN_OUT

stTxBuffer : ComBuffer;
stRxBuffer : ComBuffer;

stTxBuffer: Verweis auf den Puffer mit Sendedaten für die serielle Schnittstelle.

stRxBuffer: Verweis auf den Puffer mit Empfangsdaten für die serielle Schnittstelle.


FB_Maestro100LT_ReadSMS

Beschreibung

Dieser Baustein dient dazu, eine bestimmte SMS von den 15 SMS-Plätzen, die auf der SIM-Karte zur Verfügung stehen, zu lesen. Eine positive Flanke an bStart liest dabei die SMS auf Platz nIndex und gibt den Inhalt an sMessageText aus. Die SMS wird dabei nicht von der SIM-Karte gelöscht.

Intern verwendete AT-Befehle

AT+CMGR=<Index> Lesen der SMS auf dem Platz <Index>

VAR_INPUT

bStart : BOOL;
nIndex : USINT;

bStart: Eine positive Flanke startet den Lesebaustein.

nIndex: Nummer der SMS, die gelesen werden soll.

VAR_OUTPUT

sMessageText : STRING(240);
bBusy        : BOOL;
bError       : BOOL;
nErrorID     : UINT;

sMessageText: Ausgabe des Inhaltes des zu lesenden SMS-Platz (1-15) auf der SIM-Karte.

bBusy: Dieser Ausgang ist immer dann aktiv, solange ein Löschvorgang aktiv ist.

bError: Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in nErrorId enthalten. Wird durch das erneute Starten des Bausteines zurückgesetzt.

nErrorId: Enthält den spezifischen Fehlercode. Siehe Fehlercodes.

VAR_IN_OUT

stTxBuffer : ComBuffer;
stRxBuffer : ComBuffer;

stTxBuffer: Verweis auf den Puffer mit Sendedaten für die serielle Schnittstelle.

stRxBuffer: Verweis auf den Puffer mit Empfangsdaten für die serielle Schnittstelle.


FB_Maestro100LT_DeleteSMS

Beschreibung

Dieser Baustein dient dazu, eine bestimmte SMS von den 15 SMS-Plätzen, die auf der SIM-Karte zur Verfügung stehen, zu löschen. Eine positive Flanke an bStart löscht dabei die SMS auf Platz nIndex. Alle anderen Plätze bleiben unangetastet - es erfolgt kein Aufrücken.

Intern verwendete AT-Befehle

AT+CMGD=<Index> Löschen der SMS auf dem Platz <Index>

VAR_INPUT

bStart : BOOL;
nIndex : USINT;

bStart: Eine positive Flanke startet den Löschbaustein.

nIndex: Nummer der SMS, die gelöscht werden soll.

VAR_OUTPUT

bBusy    : BOOL;
bError   : BOOL;
nErrorID : UINT;

bBusy: Dieser Ausgang ist immer dann aktiv, solange ein Löschvorgang aktiv ist.

bError: Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in nErrorId enthalten. Wird durch das erneute Starten des Bausteines zurückgesetzt.

nErrorId: Enthält den spezifischen Fehlercode. Siehe Fehlercodes.

VAR_IN_OUT

stTxBuffer : ComBuffer;
stRxBuffer : ComBuffer;

stTxBuffer: Verweis auf den Puffer mit Sendedaten für die serielle Schnittstelle.

stRxBuffer: Verweis auf den Puffer mit Empfangsdaten für die serielle Schnittstelle.


Fehlercodes

Wert (hex) | Wert (dez) | Beschreibung
0x0000 | 0 | kein Fehler.
0x8001 | 32769 | Timeout-Fehler.
0x8002 | 32770 | FB_Maestro100LT_LogIn: Eingegebene PIN-Nummer enthält weniger als eine oder mehr als zehn Stellen.
0x8003 | 32771 | FB_Maestro100LT_LogIn: Eingegebene PIN-Nummer enthält nicht-numerische Zeichen.
0x8004 | 32772 | FB_Maestro100LT_LogIn: Das Einloggen wurde vom Modem mit einer Fehlerrückmeldung quittiert. Mögliche Ursachen: Falscher PIN-Code, keine SIM-Karte oder bereits eingeloggt.
0x8005 | 32773 | FB_Maestro100LT_LogIn: Die Rückmeldeantwort vom Modem beim Einloggen ist undefiniert.
0x8006 | 32774 | FB_Maestro100LT_SendSMS: Eingegebene Telefonnummer-Nummer enthält weniger als ein oder mehr als 25 Zeichen.
0x8007 | 32775 | FB_Maestro100LT_SendSMS: Eingegebene Telefonnummer-Nummer enthält nicht-numerische Zeichen (das "+"-Zeichen ist hierbei gültig).
0x8008 | 32776 | FB_Maestro100LT_SendSMS: Der eingegebene SMS-Text enthält weniger als ein oder mehr als 160 Zeichen.
0x8009 | 32777 | FB_Maestro100LT_SendSMS: Der intern abgesendete Befehl ATE0 (Umschalten auf Text-Format) ergibt eine Fehlerrückmeldung vom Modem.
0x800A | 32778 | FB_Maestro100LT_SendSMS: Der intern abgesendete Befehl ATE0 (Umschalten auf Text-Format) ergibt eine undefinierte Rückmeldung vom Modem.
0x800B | 32779 | FB_Maestro100LT_SendSMS: Der intern abgesendete Befehl AT+CMGS (Senden einer SMS) ergibt eine Fehlerrückmeldung vom Modem.
0x800C | 32780 | FB_Maestro100LT_SendSMS: Der intern abgesendete Befehl AT+CMGS (Senden einer SMS) ergibt eine undefinierte Rückmeldung vom Modem.
0x800D | 32781 | FB_Maestro100LT_ReadSMS: Der intern abgesendete Befehl AT+CMGR (Lesen einer SMS) ergibt eine Fehlerrückmeldung vom Modem.
0x800E | 32782 | FB_Maestro100LT_ReadSMS: Der intern abgesendete Befehl AT+CMGR (Lesen einer SMS) ergibt eine undefinierte Rückmeldung vom Modem.
0x800F | 32783 | FB_Maestro100LT_DeleteSMS: Der intern abgesendete Befehl AT+CMGD (Löschen einer SMS) ergibt eine Fehlerrückmeldung vom Modem.
0x8010 | 32784 | FB_Maestro100LT_DeleteSMS: Der intern abgesendete Befehl AT+CMGD (Löschen einer SMS) ergibt eine undefinierte Rückmeldung vom Modem.