GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… ·...

38
Anhang A - Weitere Bibliotheken WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 1 WAGO-I/O-PRO 32 Bibliothek GSM_SMS_01.lib Diese Biblothek enthält Bausteine zum SMS-Versand und Empfang über ein GSM-Modem. Es wird der PDU-Mode des Modems unterstützt. Weiterhin enthält diese Bibliothek einen Baustein zum Parsen eines Strings. Durch die Kombination dieser beiden Bausteine kann ein einfaches RPC- Interface in einem programmierbaren Controller realisiert werden. ACHTUNG ! Beachten Sie das die Bausteine GSM_SMS und GSM_SMS_V3 veraltet sind und nur noch zur Kompatibilität mit alten Projekten mitgeführt werden. In neuen Projekten sollte auf dem aktuellen Baustein GSM_SMS_V4 b.z.w. SIMPLE_SMS_8207 aufgesetzt werden. Die Bausteine GSM_SMS_V4 und SIMPLE_SMS_8207 unterstützen ab Bibliotheksversion 4.10 alle Zeichen des GSM 3.38 Basiszeichensatzes und der Standardzeichensatzerweiterung. Es ist zu beachten das die Maximallänge einer Nachricht 160 Zeichen nicht überschreiten darf. Hierbei zählt ein Zeichen aus der Standardzeichensatzerweiterung doppelt.

Transcript of GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… ·...

Page 1: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 1

WAGO-I/O-PRO 32 Bibliothek

GSM_SMS_01.lib

Diese Biblothek enthält Bausteine zum SMS-Versand und Empfang über ein GSM-Modem.

Es wird der PDU-Mode des Modems unterstützt.

Weiterhin enthält diese Bibliothek einen Baustein zum Parsen eines Strings.

Durch die Kombination dieser beiden Bausteine kann ein einfaches RPC-Interface in einem programmierbaren Controller realisiert werden.

ACHTUNG !

Beachten Sie das die Bausteine GSM_SMS und GSM_SMS_V3 veraltet sind und nur noch zur Kompatibilität mit alten Projekten mitgeführt werden.

In neuen Projekten sollte auf dem aktuellen Baustein GSM_SMS_V4 b.z.w. SIMPLE_SMS_8207 aufgesetzt werden.

Die Bausteine GSM_SMS_V4 und SIMPLE_SMS_8207 unterstützen ab Bibliotheksversion 4.10 alle Zeichen des GSM 3.38 Basiszeichensatzes und der Standardzeichensatzerweiterung.

Es ist zu beachten das die Maximallänge einer Nachricht 160 Zeichen nicht überschreiten darf.

Hierbei zählt ein Zeichen aus der Standardzeichensatzerweiterung doppelt.

Page 2: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

GSM_SMS_01.lib

2 – GSM_SMS_01.lib Version 1.0.3 WAGO-I/O- PRO 32

+================================================== ====+ | Character Set for SMS (Basic Table) | +======+========================================== =====+ | Code | Character | +======+=====+=====+=====+=====+=====+=====+=====+ =====+ | 0x00 | @ | £ | $ | ¥ | è | é | ù | ì | | 0x08 | ò | Ç | LF | Ø | ø | CR | Å | å | | 0x10 | | _ | | | | | | | | 0x18 | | | | ESC | Æ | æ | ß | È | | 0x20 | SP | ! | " | # | * | % | & | ' | | 0x28 | ( | ) | * | + | , | - | . | / | | 0x30 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | | 0x38 | 8 | 9 | : | ; | < | = | > | ? | | 0x40 | ¡ | A | B | C | D | E | F | G | | 0x48 | H | I | J | K | L | M | N | O | | 0x50 | P | Q | R | S | T | U | V | W | | 0x58 | X | Y | Z | Ä | Ö | Ñ | Ü | § | | 0x60 | ¿ | a | b | c | d | e | f | g | | 0x68 | h | i | j | k | l | m | n | o | | 0x70 | p | q | r | s | t | u | v | w | | 0x78 | x | y | z | ä | ö | ñ | ü | à | +------+-----+-----+-----+-----+-----+-----+-----+ -----+

+================================================= =====+ | Character Set for SMS (Extended Table) | +======+========================================== =====+ | Code | Character | +======+=====+=====+=====+=====+=====+=====+=====+ =====+ | 0x00 | | | | | | | | | | 0x08 | | | | | | | | | | 0x10 | | | | | ^ | | | | | 0x18 | | | | | | | | | | 0x20 | | | | | | | | | | 0x28 | { | } | | | | | | \ | | 0x30 | | | | | | | | | | 0x38 | | | | | [ | ~ | ] | | | 0x40 | | | | | | | | | | | 0x48 | | | | | | | | | | 0x50 | | | | | | | | | | 0x58 | | | | | | € | | | | 0x60 | | | | | | | | | | 0x68 | | | | | | | | | | 0x70 | | | | | | | | | | 0x78 | | | | | | | | | +------+-----+-----+-----+-----+-----+-----+-----+ -----+

Page 3: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

SIMPLE_SMS_8207

2 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

Inhalt

GSM_SMS_01.lib 3

SIMPLE_SMS_8207 ................................................................................... 3 GSM_SMS_V4............................................................................................6 GSM_SMS (obsolete)................................................................................ 12 GSM_SMS_V3 (obsolete) ......................................................................... 15

PARSE_SMS_MESSAGE ........................................................................ 19 eGSM_PollMode (Enum) .......................................................................... 20 eGSM_DeleteMode (Enum) ...................................................................... 21 eGSM_ResultCodes (Enum)...................................................................... 22 typGSM_RxSms (Datentyp)...................................................................... 23

typGSM_TxSms (Datentyp) ...................................................................... 24 typGSM_DeliverSms (Datentyp)............................................................... 25 typGSM_StatusSms (Datentyp)................................................................. 26 typGSM_RECEIVE_SMS (Datentyp)....................................................... 28 typGSM_SEND_SMS (Datentyp) ............................................................. 29 typGSM_NUMBER (Datentyp) ................................................................ 30 typGSM_TIME_STAMP (Datentyp) ........................................................ 31

GSM_ERROR (Enum) .............................................................................. 32 typGSM_RESPONSE (Datentyp) ............................................................. 33

typMSG_PARSE (Datentyp) ..................................................................... 34 typGSM_BUFFER (Datentyp) .................................................................. 35 typGSM_PDU (Datentyp) ......................................................................... 36

Page 4: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente
Page 5: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 3

GSM_SMS_01.lib

SIMPLE_SMS_8207

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Kommunikationsbausteine Name: SIMPLE_SMS_8207 Typ: Funktion Funktionsblock X Programm Name der Bibliothek: GSM_SMS_01.lib Verwendete Bibliotheken Anwendbar für: 750-8207 / xxx Eingangsparameter:

Datentyp: Kommentar:

sNumber STRING Nummer des Nachrichten-Empängers xInternational STRING TRUE -> Die Nummer des Empfänges startet

mit der Ländervorwahl z.B `49171123456‘ für Deutschland FALSE -> Die Nummer beinhaltet keine Ländervorwahl z.B. `0171123456`

sMessage STRING Zu versendende Nachricht sPin STRING Dieser Eingang ist obsolete und wird seit

Bibliotheksversion 4.10 ignoriert da der 8207 die Pineingabe nur über das WBM unterstützt.

Ein-/ Ausgangsparam.:

Datentyp: Kommentar:

xRxNewSms BOOL Dieser Durchgangsparameter wird vom Treiber autom. nach jedem Eintreffen einer Nachricht gesetzt. Ein Anwenderprogramm sollte diesen Parameter auf TRUE prüfen und anschl. löschen um bei einem erneuten TRUE eine neue Nachricht erkennen zu können.

xTxTriggerSms BOOL Durch einmaliges setzen dieses Parameters wird ein Sendeauftrag angestossen. Nach Beendigung des Auftrages wird dieser Parameter autom. vom Treiber gelöscht.

Page 6: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

SIMPLE_SMS_8207

4 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

Ausgangsparameter: Datentyp: Kommentar: eFbStatus eGSM_ResultCodes GSM_RESULT_OK := 0,

GSM_RESULT_EAGAIN := 1, GSM_RESULT_ENOKEY := 2, (*--- State messages -----------------*) GSM_STATE_DISCONNECTED := 101, GSM_STATE_CHECKPIN := 102, GSM_STATE_INIT := 103, GSM_STATE_LISTEN := 104, GSM_STATE_SEND_SMS := 105, GSM_STATE_RECEIVE_SMS := 106, GSM_STATE_POLL_SIG_QUALITY := 107, GSM_STATE_DELETE_SMS := 108, GSM_STATE_POLL_UNREAD_MSG := 109, (*--- Error messages -----------------*) GSM_ERROR_INIT_ERROR := 200, GSM_ERROR_PARSE_ERROR := 201, GSM_ERROR_CHANNEL_TIMEOUT_ERROR:=202, GSM_ERROR_DATA_TIMEOUT_ERROR :=203, GSM_ERROR_DATA_VALID_ERROR := 204, GSM_ERROR_DATA_PDU_ERROR := 205, GSM_ERROR_ACK_TIMEOUT_ERROR:=206, GSM_ERROR_SEND_ERROR := 207, GSM_ERROR_PORT_OPEN_TIMEOUT:=208, GSM_ERROR_POLL_ERROR := 209, GSM_ERROR_PIN_ERROR := 210, GSM_ERROR_PIN_TIMEOUT_ERROR := 211, GSM_ERROR_MODEM_ERROR := 212, GSM_ERROR_QUEUE_OVERFLOW := 213, GSM_ERROR_DELETE_TIMEOUT_ERROR := 214, GSM_ERROR_LOCK_TIMEOUT_ERROR := 215

utRxSms typGSM_RxSms In dieser Struktur wird eine

eintreffende Nachricht eingetragen. Diese Struktur enthält neben der eigentlichen Nachricht auch den Zeitstempel sowie die Absendernummer und die Nummer des verwendeten SMSC.

eLastSendState eGSM_ResultCodes Status der zuletzt gesendeten Nachricht.

iTxMsgRefNo INT Message Reference Number Referenznummer der zuletzt gesendeten Nachricht.

iSignalQuality INT Empfangspegel [0..100%]

Page 7: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 5

Grafische Darstellung:

Funktionsbeschreibung: Dieser Baustein kapselt den Baustein GSM_SMS_V4 und reduziert ihn auf die wesentlichen Einstellungen speziell für das integrierte Modem des 750-8207. Für andere Modems sollte direkt der Baustein GSM_SMS_V4 benutzt werden. Nachrichtenempfang: Ankommende Nachrichten werden vom Treiber in der Ausgangsstruktur utRxSms eingetragen und der Durchgangsparameter xRxNewSms gesetzt. Neue Nachrichten überschreiben alte Nachrichten sofort nach dem Eintreffen. Der Durchgangsparameter xRxNewSms sollte daher vom Anwender abgefragt werden und bei einem TRUE die eingetroffene Nachricht sofort vom Anwender in einen eigenen Buffer übernommen werden. Anschließend sollte xRxNewSms gelöscht werden um das neuerliche Eintreffen einer Nachricht zu erkennen. Nachrichtenversand: Durch einmaliges setzen des Parameters xTxTriggerSms wird der Sendevorgang ausgelöst. Das GSM-Modem wird nun versuchen eine Verbindung zum SMSC aufzubauen und die Nachricht zu übertragen. Nach Beendigung des Sendevorganges wird der Parameter xTxTriggerSms automatisch vom Treiber gelöscht. Der Sendevorgang wird durch einen „Time Out“ überwacht. Sollte nach der Überwachungszeit keine Quittung vom SMSC eingetroffen sein, dann wird der Sendeauftrag abgebrochen. Es sollte daher nach einem Sendeauftrag der Parameter eLastSendState geprüft werden. Der Ausgangsparameter eFbStatus zeigt den aktuellen Zustand des Bausteins an. Der Baustein muß vom Anwender zyklisch aufgerufen werden.

Page 8: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

GSM_SMS_V4

6 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

GSM_SMS_V4

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Kommunikationsbausteine Name: GSM_SMS_V4 Typ: Funktion Funktionsblock X Programm Name der Bibliothek: GSM_SMS_01.lib Verwendete Bibliotheken Anwendbar für: Programmierbare Koppler

(nicht für 750-812/814/815/816) Eingangsparameter:

Datentyp: Kommentar:

xConnect BOOL Durch ein TRUE an diesem Eingangsparameter wird der Treiber in den Zustand “Listen” versetzt. Nur im Zustand “Listen” können Nachrichten empfangen werden.

bComPortNr BYTE Nr. der verwendeten ser. Schnittstelle 1 -> interne Serviceschnittstelle 2 -> 1.gestecktes Modul 750-65x 3 -> 2.gestecktes Modul 750-65x u.s.w.

eBaudrate COM_BAUDRATE je nach benutzter Schnittstelle siehe SerComm.lib

eParity COM_PARITY je nach benutzter Schnittstelle siehe SerComm.lib

eStopBits COM_STOPBITS je nach benutzter Schnittstelle siehe SerComm.lib

eFlowControl COM_FLOW_ CONTROL

je nach benutzter Schnittstelle siehe SerComm.lib

sPin STRING Pin der Simkarte wenn keine Pin auf der Simkarte eingestellt ist, dann ist dieser Eingang nicht zu beschalten oder mit einem Leerstring zu beschalten

sModemInit STRING Initialisierungsstring für das ver-wendete Modem. Dieser String wird beim Verbindungsaufbau als erstes an das Modem gesendet. Folgende Zeichen in diesem String haben eine Sonderbedeutung: / => 1 sec Pause das Zeichen / wird nicht gesendet. | => wird durch Return (0x0D) ersetzt

Page 9: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 7

WAGO-I/O-PRO 32 Elemente der Bibliothek

ePollMode eGSM_PollMode GSM_SMS_NO_POLL Kein Pollen GSM_SMS_POLL_SIGNAL_QUALITY Nur die Signalqualität wird gepollt GSM_SMS_POLL_UNREAD_MSG Nur die ungelesenen Nachrichten werden gepollt. GSM_SMS_POLL_SQ_OR_UNREAD_MSG Signalqualität und ungelesene Nachrichten werden gepollt.

eDeletMode eGSM_DeleteMode Bestimmt den Umgang mit Nachrichten im Modemspeicher. Die Funktion wird nach jedem Empfang einer Nachricht ausgeführt. GSM_SMS_NO_DELETE Kein Löschen von Nachrichten GSM_SMS_DELETE_MODE_0 Nur die zuletzt gelesene Nachricht wird gelöscht GSM_SMS_DELETE_MODE_1 Alle gelesenen Nachrichten werden gelöscht GSM_SMS_DELETE_MODE_2 Alle gelesenen und gesendeten Nachrichten werden gelöscht GSM_SMS_DELETE_MODE_3 Alle gelesenen, gesendeten und nicht gesendeten Nachrichten werden gelöscht GSM_SMS_DELETE_MODE_4 Alle Nachrichten werden gelöscht

tPollInterval TIME Intervall in dem das Modem abgepollt wird. Defaulteinstellung T#2s

Page 10: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

GSM_SMS_V4

8 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

Ein-/ Ausgangsparam.:

Datentyp: Kommentar:

xRxNewSms BOOL Dieser Durchgangsparameter wird vom Treiber autom. nach jedem Eintreffen einer Nachricht gesetzt. Ein Anwenderprogramm sollte diesen Parameter auf TRUE prüfen und anschl. löschen um bei einem erneuten TRUE eine neue Nachricht erkennen zu können.

utTxSms typGSM_TxSms Struktur in die die Daten einer zu sendenden Nachricht eingetragen werden können. Die Struktur (Msg) enthält folgende Elemente (siehe auch Strukturbeschreibung) : Msg. SMSC_NO. International Msg. SMSC_NO. Number Msg. Dest_No. International Msg. Dest_No. Number Msg. Msg Msg. xStatusRequest Ist das Element Msg. SMSC_NO. Number bei einem Sendeauftrag leer, dann wird das im GSM-Modem gespeicherte SMSC verwendet.

xTxTriggerSms BOOL Durch einmaliges setzen dieses Parameters wird ein Sendeauftrag angestossen. Nach Beendigung des Auftrages wird dieser Parameter autom. vom Treiber gelöscht.

Page 11: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 9

Ausgangsparameter: Datentyp: Kommentar: xIsConnected BOOL TRUE zeigt das erfolgreiche Öffnen

des seriellen Ports an. eStatus eGSM_ResultCodes GSM_RESULT_OK := 0,

GSM_RESULT_EAGAIN := 1, GSM_RESULT_ENOKEY := 2, (*--- State messages -----------------*) GSM_STATE_DISCONNECTED := 101, GSM_STATE_CHECKPIN := 102, GSM_STATE_INIT := 103, GSM_STATE_LISTEN := 104, GSM_STATE_SEND_SMS := 105, GSM_STATE_RECEIVE_SMS := 106, GSM_STATE_POLL_SIG_QUALITY := 107, GSM_STATE_DELETE_SMS := 108, GSM_STATE_POLL_UNREAD_MSG := 109, (*--- Error messages -----------------*) GSM_ERROR_INIT_ERROR := 200, GSM_ERROR_PARSE_ERROR := 201, GSM_ERROR_CHANNEL_TIMEOUT_ERROR:=202, GSM_ERROR_DATA_TIMEOUT_ERROR :=203, GSM_ERROR_DATA_VALID_ERROR := 204, GSM_ERROR_DATA_PDU_ERROR := 205, GSM_ERROR_ACK_TIMEOUT_ERROR:=206, GSM_ERROR_SEND_ERROR := 207, GSM_ERROR_PORT_OPEN_TIMEOUT:=208, GSM_ERROR_POLL_ERROR := 209, GSM_ERROR_PIN_ERROR := 210, GSM_ERROR_PIN_TIMEOUT_ERROR := 211, GSM_ERROR_MODEM_ERROR := 212, GSM_ERROR_QUEUE_OVERFLOW := 213, GSM_ERROR_DELETE_TIMEOUT_ERROR := 214, GSM_ERROR_LOCK_TIMEOUT_ERROR := 215

utRxSms typGSM_RxSms In dieser Struktur wird eine

eintreffende Nachricht eingetragen. Diese Struktur enthält neben der eigentlichen Nachricht auch den Zeitstempel sowie die Absendernummer und die Nummer des verwendeten SMSC.

eLastSendState eGSM_ResultCodes Status der zuletzt gesendeten Nachricht.

iTxMsgRefNo INT Message Reference Number Referenznummer der zuletzt gesendeten Nachricht.

iSignalQuality INT Empfangspegel [%] sRequest STRING Die letzte Anfrage an das Modem sResponse STRING Die letzte Antwort vom Modem

Page 12: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

GSM_SMS_V4

10 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

Grafische Darstellung:

Page 13: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 11

Funktionsbeschreibung: Dieser Baustein ermöglicht sowohl den Empfang als auch das Versenden von Kurzmitteilungen. Nachrichtenempfang: Durch setzen des Parameters xConnect auf TRUE wird die parametrierte Schnittstelle geöffnet, der Initialisierungsstring an das GSM-Modem gesendet und der Treiber im fehlerfreien Fall in den Zustand „Listen“ versetzt. Ankommende Nachrichten werden nun vom Treiber in der Ausgangsstruktur utRxSms eingetragen und der Durchgangsparameter xRxNewSms gesetzt. Neue Nachrichten überschreiben alte Nachrichten sofort nach dem Eintreffen. Der Durchgangsparameter xRxNewSms sollte daher vom Anwender abgefragt werden und bei einem TRUE die eingetroffene Nachricht sofort vom Anwender in einen eigenen Buffer übernommen werden. Anschließend sollte xRxNewSms gelöscht werden um das neuerliche Eintreffen einer Nachricht zu erkennen. Nachrichten können auf zwei Arten vom Modem an die SPS übermittelt werden.

1. Durch setzen des mt- Parameters im AT-Befehl AT+CNMI= <mode>,<mt>,<bm>,<ds>,<bfr> Durch eine 1 an der Stelle <mt> wird das eintreffen einer Nachricht selbstständig vom Modem der SPS mitgeteilt. Die SPS kann dann diese Nachricht vom Modem anfordern. Die SPS löscht anschließend entsprechend der Einstellung am Eingang eDeleteMode diese Nachrichten.

2. Durch anlegen der Enumeration GSM_SMS_POLL_UNREAD_MSG oder GSM_SMS_POLL_SQ_OR_UNREAD_MSG an den Bausteineingang ePollMode. Hierdurch erhält das Modem von der SPS im Abstand tPollIntervall Anfragen ob noch ungelesene Nachrichten vorliegen. Wenn das Modem entsprechende Nachrichten im Speicher hat, dann werden diese an die SPS übertragen. Die SPS löscht anschließend entsprechend der Einstellung am Eingang eDeleteMode diese Nachrichten.

Wenn möglich, dann ist die zweite Variante zu bevorzugen. Prüfen Sie welche Variante das verwendete Modem optimal unterstützt. Nachrichtenversand: Zunächst muß die Struktur utTxSms mit den zu sendenden Informationen gefüllt werden. Anschließend kann durch einmaliges setzen des Parameters xTxTriggerSms der Sendevorgang ausgelöst werden. Das GSM-Modem wird nun versuchen eine Verbindung zum SMSC aufzubauen und die Nachricht zu übertragen. Ist das Element Msg. SMSC_NO. Number leer, so wird die im Modem gespeicherte SMSC-Nummer verwendet. Nach Beendigung des Sendevorganges wird der Parameter xTxTriggerSms automatisch vom Treiber gelöscht. Der Sendevorgang wird durch einen „Time Out“ überwacht. Sollte nach der Überwachungszeit keine Quittung vom SMSC eingetroffen sein, dann wird der Sendeauftrag abgebrochen. Es sollte daher nach einem Sendeauftrag der Parameter eStatus geprüft werden. Der Baustein muß vom Anwender zyklisch aufgerufen werden.

Page 14: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

GSM_SMS (obsolete)

12 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

GSM_SMS (obsolete)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Kommunikationsbausteine Name: GSM_SMS Typ: Funktion Funktionsblock X Programm Name der Bibliothek: GSM_SMS_01.lib Verwendete Bibliotheken Anwendbar für: Programmierbare Koppler

(nicht für 750-812/814/815/816) Eingangsparameter: Datentyp: Kommentar: xLISTEN BOOL Durch ein TRUE an diesem

Eingangsparameter wird der Treiber in den Zustand “Listen” versetzt. Nur im Zustand “Listen” können Nachrichten empfangen werden.

bCOM_PORT_NR BYTE Nr. der verwendeten ser. Schnittstelle 1 -> interne Serviceschnittstelle 2 -> 1.gestecktes Modul 750-65x 3 -> 2.gestecktes Modul 750-65x u.s.w.

cbBAUDRATE COM_BAUDRATE je nach benutzter Schnittstelle siehe SerComm.lib

cpPARITY COM_PARITY je nach benutzter Schnittstelle siehe SerComm.lib

csSTOPBITS COM_STOPBITS je nach benutzter Schnittstelle siehe SerComm.lib

cfFLOW_CONTROL COM_FLOW_ CONTROL

je nach benutzter Schnittstelle siehe SerComm.lib

sGSM_MODEM_INT STRING Initialisierungsstring für das ver-wendete Modem. Dieser String wird beim Verbindungsaufbau als erstes an das Modem gesendet. Folgende Zeichen in diesem String haben eine Sonderbedeutung: / => 1 sec Pause das Zeichen / wird nicht gesendet. | => wird durch Return (0x0D) ersetzt

xDELETE_AFTER_ READ

BOOL Bei einem TRUE an diesem Eingang werden eingehende Nachrichten nach dem Empfang im Treiber vom Treiber aus dem Speicher des GSM-Modems automatisch gelöscht und somit ein Speicherüberlauf im Modem verhindert.

tACK_TIME_OUT TIME max. erlaubte Zeit zum Übermitteln einer Nachricht an das SMSC. Wenn innerhalb dieser Zeit keine Übernahmequittung vom SMSC gesendet wird, dann wird die Übertragung abgebrochen.

Page 15: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 13

WAGO-I/O-PRO 32 Elemente der Bibliothek

Ein-/Ausgangsparam.: Datentyp: Kommentar: xNEW_SMS_RECEIVED BOOL Dieser Durchgangsparameter wird

vom Treiber autom. nach jedem Eintreffen einer Nachricht gesetzt. Ein Anwenderprogramm sollte diesen Parameter auf TRUE prüfen und anschl. löschen um bei einem erneuten TRUE eine neue Nachricht erkennen zu können.

utSMS_MESSAGE typGSM_SEND_ SMS

Struktur in die die Daten einer zu sendenden Nachricht eingetragen werden können. Die Struktur (Msg) enthält folgende Elemente (siehe auch Strukturbeschreibung) : Msg. SMSC_NO. International Msg. SMSC_NO. Number Msg. Dest_No. International Msg. Dest_No. Number Msg. Msg Ist das Element Msg. SMSC_NO. Number bei einem Sendeauftrag leer, dann wird das im GSM-Modem gespeicherte SMSC verwendet.

xSEND_SMS BOOL Durch einmaliges setzen dieses Parameters wird ein Sendeauftrag angestossen. Nach Beendigung des Auftrages wird dieser Parameter autom. vom Treiber gelöscht.

Page 16: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

14 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

Ausgangsparameter: Datentyp: Kommentar: utRECEIVED_SMS typGSM_RECEIVE_

SMS In dieser Struktur wird eine eintreffende Nachricht eingetragen. Diese Struktur enthält neben der eigentlichen Nachricht auch den Zeitstempel sowie die Absendernummer und die Nummer des verwendeten SMSC.

RECEIVE_ERROR GSM_ERROR GSM_NO_ERROR := 0, GSM_PARSE_ERROR := 1, GSM_SIO_TIMEOUT_ERROR := 2, GSM_DATA_TIMEOUT_ERROR := 3, GSM_DATA_VALID_ERROR := 4, GSM_DATA_PDU_ERROR := 5, GSM_ACK_TIMEOUT_ERROR := 6, GSM_SEND_ERROR := 7

SEND_ERROR GSM_ERROR GSM_NO_ERROR := 0, GSM_PARSE_ERROR := 1, GSM_SIO_TIMEOUT_ERROR := 2, GSM_DATA_TIMEOUT_ERROR := 3, GSM_DATA_VALID_ERROR := 4, GSM_DATA_PDU_ERROR := 5, GSM_ACK_TIMEOUT_ERROR := 6, GSM_SEND_ERROR := 7

sSTATUS STRING Dieser Parameter enthält nach einem Sendevorgang den vom SMSC gesendeten Quittierungsstring.

Grafische Darstellung:

Page 17: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 15

GSM_SMS_V3 (obsolete)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Kommunikationsbausteine Name: GSM_SMS_V3 Typ: Funktion Funktionsblock X Programm Name der Bibliothek: GSM_SMS_01.lib Verwendete Bibliotheken Anwendbar für: Programmierbare Koppler

(nicht für 750-812/814/815/816) Eingangsparameter: Datentyp: Kommentar: xLISTEN BOOL Durch ein TRUE an diesem

Eingangsparameter wird der Treiber in den Zustand “Listen” versetzt. Nur im Zustand “Listen” können Nachrichten empfangen werden.

bCOM_PORT_NR BYTE Nr. der verwendeten ser. Schnittstelle 1 -> interne Serviceschnittstelle 2 -> 1.gestecktes Modul 750-65x 3 -> 2.gestecktes Modul 750-65x u.s.w.

cbBAUDRATE COM_BAUDRATE je nach benutzter Schnittstelle siehe SerComm.lib

cpPARITY COM_PARITY je nach benutzter Schnittstelle siehe SerComm.lib

csSTOPBITS COM_STOPBITS je nach benutzter Schnittstelle siehe SerComm.lib

cfFLOW_CONTROL COM_FLOW_ CONTROL

je nach benutzter Schnittstelle siehe SerComm.lib

sGSM_MODEM_INT STRING Initialisierungsstring für das ver-wendete Modem. Dieser String wird beim Verbindungsaufbau als erstes an das Modem gesendet. Folgende Zeichen in diesem String haben eine Sonderbedeutung: / => 1 sec Pause das Zeichen / wird nicht gesendet. | => wird durch Return (0x0D) ersetzt

xDELETE_AFTER_ READ

BOOL Bei einem TRUE an diesem Eingang werden eingehende Nachrichten nach dem Empfang im Treiber vom Treiber aus dem Speicher des GSM-Modems automatisch gelöscht und somit ein Speicherüberlauf im Modem verhindert.

tACK_TIME_OUT TIME max. erlaubte Zeit zum Übermitteln einer Nachricht an das SMSC. Wenn innerhalb dieser Zeit keine Übernahmequittung vom SMSC gesendet wird, dann wird die Übertragung abgebrochen.

Page 18: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

GSM_SMS_V3 (obsolete)

16 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

WAGO-I/O-PRO 32 Elemente der Bibliothek

xPOLL_SIGNAL BOOL TRUE an diesem Eingang aktiviert ein regelmäßiges abpollen des angeschlossenen GSM-Modems mit dem Intervall tPOLL_TIME und das Auslesen der Signalstärke

tPOLL_TIME TIME Intervall in dem die Signalstärke des Modems abgepollt wird Deafaulteinstellung T#20s

sPIN STRING Pin der Simkarte wenn keine Pin auf der Simkarte eingestellt ist, dann ist dieser Eingang nicht zu beschalten oder mit einem Leerstring zu beschalten

Ein-/Ausgangsparam.: Datentyp: Kommentar: xNEW_SMS_RECEIVED BOOL Dieser Durchgangsparameter wird

vom Treiber autom. nach jedem Eintreffen einer Nachricht gesetzt. Ein Anwenderprogramm sollte diesen Parameter auf TRUE prüfen und anschl. löschen um bei einem erneuten TRUE eine neue Nachricht erkennen zu können.

utSMS_MESSAGE typGSM_SEND_ SMS

Struktur in die die Daten einer zu sendenden Nachricht eingetragen werden können. Die Struktur (Msg) enthält folgende Elemente (siehe auch Strukturbeschreibung) : Msg. SMSC_NO. International Msg. SMSC_NO. Number Msg. Dest_No. International Msg. Dest_No. Number Msg. Msg Ist das Element Msg. SMSC_NO. Number bei einem Sendeauftrag leer, dann wird das im GSM-Modem gespeicherte SMSC verwendet.

xSEND_SMS BOOL Durch einmaliges setzen dieses Parameters wird ein Sendeauftrag angestossen. Nach Beendigung des Auftrages wird dieser Parameter autom. vom Treiber gelöscht.

Page 19: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 17

Ausgangsparameter: Datentyp: Kommentar: utRECEIVED_SMS typGSM_RECEIVE_

SMS In dieser Struktur wird eine eintreffende Nachricht eingetragen. Diese Struktur enthält neben der eigentlichen Nachricht auch den Zeitstempel sowie die Absendernummer und die Nummer des verwendeten SMSC.

RECEIVE_ERROR GSM_ERROR GSM_NO_ERROR := 0, GSM_PARSE_ERROR := 1, GSM_SIO_TIMEOUT_ERROR := 2, GSM_DATA_TIMEOUT_ERROR := 3, GSM_DATA_VALID_ERROR := 4, GSM_DATA_PDU_ERROR := 5, GSM_ACK_TIMEOUT_ERROR := 6, GSM_SEND_ERROR := 7, GSM_SIO_OPEN_ERROR := 8, GSM_POLL_ERROR := 9, GSM_PIN_ERROR := 10

SEND_ERROR GSM_ERROR GSM_NO_ERROR := 0, GSM_PARSE_ERROR := 1, GSM_SIO_TIMEOUT_ERROR := 2, GSM_DATA_TIMEOUT_ERROR := 3, GSM_DATA_VALID_ERROR := 4, GSM_DATA_PDU_ERROR := 5, GSM_ACK_TIMEOUT_ERROR := 6, GSM_SEND_ERROR := 7, GSM_SIO_OPEN_ERROR := 8, GSM_POLL_ERROR := 9, GSM_PIN_ERROR := 10

POLL_ERROR GSM_ERROR GSM_NO_ERROR := 0, GSM_PARSE_ERROR := 1, GSM_SIO_TIMEOUT_ERROR := 2, GSM_DATA_TIMEOUT_ERROR := 3, GSM_DATA_VALID_ERROR := 4, GSM_DATA_PDU_ERROR := 5, GSM_ACK_TIMEOUT_ERROR := 6, GSM_SEND_ERROR := 7, GSM_SIO_OPEN_ERROR := 8, GSM_POLL_ERROR := 9, GSM_PIN_ERROR := 10

STATUS STRING Dieser Parameter enthält nach einem Sendevorgang den vom SMSC gesendeten Quittierungsstring.

SIGNAL_QUALITY INT Empfangspegel : siehe Handbuch des jeweiligen Modems unter dem AT-Command AT+CSQ z.B. Werte für das WAGO Modem 761-510 0 : -113 dBm oder weniger 1 : -111 dBm 2...30 : -109...-53 dBm 99 : unbekannt oder nicht messbar

Page 20: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

GSM_SMS_V3 (obsolete)

18 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

Grafische Darstellung:

Funktionsbeschreibung: Dieser Baustein ermöglicht sowohl den Empfang als auch das Versenden von Kurzmitteilungen. Nachrichtenempfang: Durch setzen des Parameters xLISTEN auf TRUE wird die parametrierte Schnittstelle geöffnet, der Initialisierungsstring an das GSM-Modem gesendet und der Treiber im fehlerfreien Fall in den Zustand „Listen“ versetzt. Ankommende Nachrichten werden nun vom Treiber in der Ausgangsstruktur utRECEIVED_SMS eingetragen und der Durchgangsparameter xNEW_SMS_RECEIVED gesetzt. Neue Nachrichten überschreiben alte Nachrichten sofort nach dem Eintreffen. Der Durchgangsparameter xNEW_SMS_RECEIVED sollte daher vom Anwender abgefragt werden und bei einem TRUE die eingetroffene Nachricht sofort vom Anwender in einen eigenen Buffer übernommen werden. Anschließend sollte xNEW_SMS_RECEIVED gelöscht werden um das neuerliche Eintreffen einer Nachricht zu erkennen. Nachrichtenversand: Zunächst muß die Struktur utSMS_MESSAGE mit den zu sendenden Informationen gefüllt werden. Anschließend kann durch einmaliges setzen des Parameters xSEND_SMS der Sendevorgang ausgelöst werden. Das GSM-Modem wird nun versuchen eine Verbindung zum SMSC aufzubauen und die Nachricht zu übertragen. Ist das Element Msg. SMSC_NO. Number leer, so wird die im Modem gespeicherte SMSC-Nummer verwendet. Nach Beendigung des Sendevorganges wird der Parameter xSEND_SMS automatisch vom Treiber gelöscht. Der Sendevorgang wird durch die Zeit tACK_TIME_OUT überwacht. Sollte nach der Überwachungszeit keine Quittung vom SMSC eingetroffen sein, dann wird der Sendeauftrag abgebrochen. Es sollte daher nach einem Sendeauftrag der Parameter SEND_ERROR geprüft werden. Der Baustein muß vom Anwender zyklisch aufgerufen werden.

Page 21: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 19

PARSE_SMS_MESSAGE

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Kommunikationsbausteine Name: PARSE_SMS_MESSAGE Typ: Funktion X Funktionsblock Programm Name der Bibliothek: GSM_SMS_01.lib Verwendete Bibliotheken Anwendbar für: Programmierbare Koppler Eingangsparameter: Datentyp: Kommentar: MSG STRING(GSM_SMS_MSG

_MAX_LENGTH) Nachricht die zerlegt werden soll

TRENNER BYTE := 0x2C Trennzeichen zwischen den Komponenten (default 0x2C => Komma).

Rückgabewert: Kommentar: typMSG_PARSE Struktur in der der zerlegte Eingangsstring abgelegt wird. Grafische Darstellung:

Funktionsbeschreibung: Diese Funktion zerlegt einen String in einzelne Komponenten. Die einzelnen Komponenten müßen im String durch das Zeichen das mit TRENNER vorgegeben wird, getrennt sein. Der zerlegte String wird in einer Struktur vom Typ typMSG_PARSE zurückgegeben. ASCII-Zeichen werden als Großbuchstaben in der Rückgabestruktur abgelegt (UPPERCASE).

Page 22: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

eGSM_PollMode (Enum)

20 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

eGSM_PollMode (Enum)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: eGSM_PollMode Typ: Datentyp Enumeration X Name der Bibliothek: GSM_SMS_01.lib Deklaration: TYPE eGSM_PollMode :

(

GSM_SMS_NO_POLL := 16#00,

GSM_SMS_POLL_SIGNAL_QUALITY := 16#01, (* poll si gnal quality only *)

GSM_SMS_POLL_UNREAD_MSG := 16#02, (* poll unread m essages only*)

GSM_SMS_POLL_SQ_OR_UNREAD_MSG := 16#03 (* poll si gnal quality and u nread messages *)

);

END_TYPE

Beschreibung: . (Version 4)

• GSM_SMS_NO_POLL Kein Pollen

• GSM_SMS_POLL_SIGNAL_QUALITY Nur die Signalqualität wird gepollt

• GSM_SMS_POLL_UNREAD_MSG

Nur die ungelesenen Nachrichten werden gepollt

• GSM_SMS_POLL_SQ_OR_UNREAD_MSG Signalqualität und ungelesene Nachrichten werden gepollt

Page 23: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 21

eGSM_DeleteMode (Enum)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: eGSM_DeleteMode Typ: Datentyp Enumeration X Name der Bibliothek: GSM_SMS_01.lib Deklaration: TYPE eGSM_DeleteMode :

( GSM_SMS_NO_DELETE := -1,

GSM_SMS_DELETE_MODE_0 := 0,

GSM_SMS_DELETE_MODE_1 := 1,

GSM_SMS_DELETE_MODE_2 := 2,

GSM_SMS_DELETE_MODE_3 := 3,

GSM_SMS_DELETE_MODE_4 := 4

);

END_TYPE

Beschreibung: . Dieser Aufzählungstyp beschreibt den Umgang mit Nachrichten im Speicher des Modems. (Version 4)

• GSM_SMS_NO_DELETE Kein Löschen von Nachrichten

• GSM_SMS_DELETE_MODE_0

Nur die zuletzt gelesene Nachricht wird gelöscht

• GSM_SMS_DELETE_MODE_1 Alle gelesenen Nachrichten werden gelöscht

• GSM_SMS_DELETE_MODE_2

Alle gelesenen und gesendeten Nachrichten werden gelöscht

• GSM_SMS_DELETE_MODE_3 Alle gelesenen, gesendeten und nicht gesendeten Nachrichten werden gelöscht

• GSM_SMS_DELETE_MODE_4

Alle Nachrichten werden gelöscht

Page 24: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

eGSM_ResultCodes (Enum)

22 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

eGSM_ResultCodes (Enum)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: eGSM_ResultCodes Typ: Datentyp Enumeration X Name der Bibliothek: GSM_SMS_01.lib Deklaration: TYPE eGSM_ResultCodes :

(

GSM_RESULT_OK := 0,

GSM_RESULT_EAGAIN := 1,

GSM_RESULT_ENOKEY := 2,

(*--- State messages ----------------------*)

GSM_STATE_DISCONNECTED := 101,

GSM_STATE_CHECKPIN := 102,

GSM_STATE_INIT := 103,

GSM_STATE_LISTEN := 104,

GSM_STATE_SEND_SMS := 105,

GSM_STATE_RECEIVE_SMS := 106,

GSM_STATE_POLL_SIG_QUALITY := 107,

GSM_STATE_DELETE_SMS := 108,

GSM_STATE_POLL_UNREAD_MSG := 109,

(*--- Error messages ----------------------*)

GSM_ERROR_INIT_ERROR := 200, (* first error *) GSM_ERROR_PARSE_ERROR := 201,

GSM_ERROR_CHANNEL_TIMEOUT_ERROR := 202,

GSM_ERROR_DATA_TIMEOUT_ERROR := 203,

GSM_ERROR_DATA_VALID_ERROR := 204,

GSM_ERROR_DATA_PDU_ERROR := 205,

GSM_ERROR_ACK_TIMEOUT_ERROR := 206,

GSM_ERROR_SEND_ERROR := 207,

GSM_ERROR_PORT_OPEN_TIMEOUT := 208,

GSM_ERROR_POLL_ERROR := 209,

GSM_ERROR_PIN_ERROR := 210,

GSM_ERROR_PIN_TIMEOUT_ERROR := 211,

GSM_ERROR_MODEM_ERROR := 212,

GSM_ERROR_QUEUE_OVERFLOW := 213,

GSM_ERROR_DELETE_TIMEOUT_ERROR := 214,

GSM_ERROR_LOCK_TIMEOUT_ERROR := 215

);

END_TYPE

Beschreibung: . Dieser Aufzählungstyp beschreibt Fehler und Statusmeldungen. (Version 4)

Page 25: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 23

typGSM_RxSms (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typGSM_RxSms Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Struktur: Element: Datentyp: Beschreibung: Valid BOOL Ein TRUE zeigt an das diese

Nachricht gültig ist. xIsDeliverSms BOOL TRUE zeigt an das es sich um

eine Nachricht handelt und somit das Element DeliverSms ausgewertet werden kann. FALSE zeigt an das es sich um eine Statusmeldung handelt und somit das Element StatusSms ausgewertet werden kann.

DeliverSms typGSM_DeliverSms Struktur mit der Nachricht StatusSms typGSM_StatusSms Struktur mit dem Status Deklaration: TYPE typGSM_RxSms :

STRUCT

Valid : BOOL;

xIsDeliverSms : BOOL;

DeliverSms : typGSM_DeliverSms;

StatusSms : typGSM_StatusSms;

END_STRUCT

END_TYPE

Beschreibung: . Dieser Datentyp beschreibt den Aufbau einer eintreffenden Nachricht. (Version 4)

Page 26: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

typGSM_TxSms (Datentyp)

24 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

typGSM_TxSms (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typGSM_TxSms Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Struktur: Element: Datentyp: Beschreibung: SMSC_No typGSM_NUMBER Nummer des SMSC über das

diese Nachricht vesendet werden soll.

Dest_No typGSM_NUMBER Nummer des Empfängers Msg STRING(GSM_SMS_

MSG_MAX_LENGTH) Nachrichtentext

xStatusRequest BOOL Anforderung einer StatusSms. ACHTUNG! In der Initialisierung +CNMI=… Ist das Routing von Statusmeldungen entsprechend freizugeben. Das Modem muss diese Option unterstützen.

Deklaration: TYPE typGSM_SEND_SMS :

STRUCT

SMSC_No : typGSM_NUMBER;

Dest_No : typGSM_NUMBER;

Msg : STRING(GSM_SMS_MSG_MAX_LENGTH);

xStatusRequest : BOOL;

END_STRUCT

END_TYPE

Beschreibung: Dieser Datentyp beschreibt den Aufbau einer zu versendenden Nachricht. (Version 4) ACHTUNG : Bei Verwendung des Feature xStatusRequest beachten Sie auch die Einstellungen des Nachrichtenroutings im Init-String (+CNMI=<mode>,<mt>,<bm>,<ds>,<bfr>). Zum Routen von Stausmeldungen muss das Modem eine Einstellung von <ds> > 0 unterstützen. Prüfen Sie mit einem Terminalprogramm und dem Kommando AT+CNMI=? welche Einstellungen ihr Modem unterstützt.

Page 27: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 25

typGSM_DeliverSms (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typGSM_DeliverSms Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Struktur: Element: Datentyp: Beschreibung: SMSC_No typGSM_NUMBER Nummer des SMSC über das

diese Nachricht vesendet wurde,

Sender_No typGSM_NUMBER Nummer des Absenders Time_Stamp typGSM_TIME_STAMP Zeitstempel des SMSC Msg STRING(GSM_SMS_

MSG_MAX_LENGTH) Nachrichtentext

Deklaration: TYPE typGSM_RECEIVE_SMS :

STRUCT

Valid : BOOL;

SMSC_No : typGSM_NUMBER;

Sender_No : typGSM_NUMBER;

Time_Stamp : typGSM_TIME_STAMP;

Msg : STRING(GSM_SMS_MSG_MAX_LENGTH);

END_STRUCT

END_TYPE

Beschreibung: . Dieser Datentyp beschreibt den Aufbau einer eintreffenden Nachricht. (Version 4)

Page 28: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

typGSM_StatusSms (Datentyp)

26 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

typGSM_StatusSms (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typGSM_StatusSms Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Struktur: Element: Datentyp: Beschreibung: SMSC_No typGSM_NUMBER Nummer des SMSC über das

diese Nachricht vesendet wurde,

MsgRefNo BYTE Referenznummer der Nachricht auf die sich dieser Status bezieht.

Recipient_No typGSM_NUMBER Nummer des Empfängers SmcTimeStamp typGSM_TIME_STAMP Zeitstempel des SMSC DischargeTimeStamp typGSM_TIME_STAMP Zeitstempel der Gültigkeit Status BYTE Deklaration: TYPE typGSM_StatusSms :

STRUCT

SMSC_No : typGSM_NUMBER;

MsgRefNo : BYTE;

Recipient_No : typGSM_NUMBER;

SmscTimeStamp : typGSM_TIME_STAMP;

DischargeTimeStamp : typGSM_TIME_STAMP;

Status : BYTE;

END_STRUCT

END_TYPE

Beschreibung: .

Page 29: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 27

WAGO-I/O-PRO 32 Elemente der Bibliothek

Dieser Datentyp beschreibt den Aufbau einer eintreffenden Statusmitteilung. (Version 4)

Status Codes Short messge transaction completed

16#00 Short message received successfully 16#01 Short message forwarded to the mobile phone 16#02 Short message replaced by the service center 16#03..16#0F Reserved 16#10..16#1F Values specific to each service center Temporary error, Service center still trying to tra nsfer SMS

16#20 Congestion 16#21 Short Message Entity (SME) busy 16#22 No response from SME 16#23 Service rejected 16#24 Quality of service not available 16#25 Error in SME 16#26..16#2F Reserved 16#30..16#3F Values specific to each service center Permanent error, Service center is not making any mo re transfer attempts

16#40 Remote procedure error 16#41 Incompatible destination 16#42 Connection rejected by SME 16#43 Not obtainable 16#44 Quality of service not available 16#45 No interworking available 16#46 SM validity period expired 16#47 SM deleted by originating SME 16#48 SM deleted by service center administration 16#49 SM does not exist 16#4A..16#4F Reserved 16#50..16#5F Values specific to each service center Temporary error, Service center is not making any m ore transfer attempts

16#60 Congestion 16#61 SME busy 16#62 No response from SME 16#63 Service rejected 16#64 Quality of service not available 16#65 Error in SME 16#66..16#6F Reserved 16#70..16#7F Values specific to each service center

Page 30: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

typGSM_RECEIVE_SMS (Datentyp)

28 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

typGSM_RECEIVE_SMS (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typGSM_RECEIVE_SMS Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Struktur: Element: Datentyp: Beschreibung: Valid BOOL Ein TRUE zeigt an das diese

Nachricht gültig ist. SMSC_No typGSM_NUMBER Nummer des SMSC über das

diese Nachricht vesendet wurde,

Sender_No typGSM_NUMBER Nummer des Absenders Prot_ID BYTE Data_Coding BYTE Time_Stamp typGSM_TIME_STAMP Zeitstempel des SMSC Msg STRING(GSM_SMS_

MSG_MAX_LENGTH) Nachrichtentext

Deklaration: TYPE typGSM_RECEIVE_SMS :

STRUCT

Valid : BOOL;

SMSC_No : typGSM_NUMBER;

Sender_No : typGSM_NUMBER;

Prot_ID : BYTE;

Data_Coding : BYTE;

Time_Stamp : typGSM_TIME_STAMP;

Msg : STRING(GSM_SMS_MSG_MAX_LENGTH);

END_STRUCT

END_TYPE

Beschreibung: . Dieser Datentyp beschreibt den Aufbau einer eintreffenden Nachricht.

Page 31: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 29

typGSM_SEND_SMS (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typGSM_SEND_SMS Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Struktur: Element: Datentyp: Beschreibung: SMSC_No typGSM_NUMBER Nummer des SMSC über das

diese Nachricht vesendet werden soll.

Dest_No typGSM_NUMBER Nummer des Empfängers Msg STRING(GSM_SMS_

MSG_MAX_LENGTH) Nachrichtentext

Deklaration: TYPE typGSM_SEND_SMS :

STRUCT

SMSC_No : typGSM_NUMBER;

Dest_No : typGSM_NUMBER;

Msg : STRING(GSM_SMS_MSG_MAX_LENGTH);

END_STRUCT

END_TYPE

Beschreibung: Dieser Datentyp beschreibt den Aufbau einer zu versendenden Nachricht.

Page 32: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

typGSM_NUMBER (Datentyp)

30 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

typGSM_NUMBER (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typGSM_NUMBER Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Struktur: Element: Datentyp: Beschreibung: International BOOL Gibt an ob die Nummer im

internationalen Format zu interpretieren ist, also z.B. mit 49 für Deutschland beginnt.

Number STRING(GSM_PHONE_NO_MAX_LENGTH)

Telefonnummer

Deklaration: TYPE typGSM_NUMBER :

STRUCT

International : BOOL := FALSE;

Number : STRING(GSM_PHONE_NO_MAX_LENGTH) := '';

END_STRUCT

END_TYPE

Beschreibung: . Dieser Datentyp beschreibt den Aufbau einer Telefonnummer für den SMS-Versand

Page 33: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 31

typGSM_TIME_STAMP (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typGSM_ TIME_STAMP Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Struktur: Element: Datentyp: Beschreibung: Year BYTE Jahr BCD-Codiert Month BYTE Monat BCD-Codiert Day BYTE Tag BCD-Codiert Hour BYTE Stunde BCD-Codiert Minute BYTE Minute BCD-Codiert Timezone BYTE Zeitzone 15min / digit Deklaration: TYPE typGSM_TIME_STAMP :

STRUCT

Year : BYTE;

Month : BYTE;

Day : BYTE;

Hour : BYTE;

Minute : BYTE;

Second : BYTE;

Timezone : BYTE;

END_STRUCT

END_TYPE

Beschreibung: . Dieser Datentyp beschreibt den Aufbau einer Telefonnummer für den SMS-Versand

Page 34: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

GSM_ERROR (Enum)

32 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

GSM_ERROR (Enum)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: GSM_ERROR Typ: Datentyp Enumeration X Name der Bibliothek: GSM_SMS_01.lib Deklaration: TYPE GSM_ERROR :

(

GSM_NO_ERROR := 0,

GSM_PARSE_ERROR := 1,

GSM_SIO_TIMEOUT_ERROR := 2,

GSM_DATA_TIMEOUT_ERROR := 3,

GSM_DATA_VALID_ERROR := 4,

GSM_DATA_PDU_ERROR := 5,

GSM_ACK_TIMEOUT_ERROR := 6,

GSM_SEND_ERROR := 7,

GSM_SIO_OPEN_ERROR := 8,

GSM_POLL_ERROR := 9, (* modem not ready *)

GSM_PIN_ERROR := 10);

END_TYPE

Beschreibung: . Dieser Aufzählungstyp beschreibt mögliche Fehlergründe.

Page 35: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 33

typGSM_RESPONSE (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typGSM_RESPONSE Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Struktur: Element: Datentyp: Beschreibung: Command STRING Count INT Parameter ARRAY

[1..GSM_RESPONSE_MAX_PARAMETER]

OF STRING

PDU_Index INT Deklaration: TYPE typGSM_RESPONSE :

STRUCT

Command : STRING;

Count : INT;

Parameter : ARRAY[1..GSM_RESPONSE_MAX_PARAMETER] O F STRING;

PDU_Index : INT;

END_STRUCT

END_TYPE

Beschreibung: .

Page 36: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

typMSG_PARSE (Datentyp)

34 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

typMSG_PARSE (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typMSG_PARSE Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Struktur: Element: Datentyp: Beschreibung: Count INT Anzahl gültiger Parameter in der

Struktur Parameter ARRAY

[1..GSM_PARSE_MAX_PARAMETER] OF STRING

Array mit den Einzelkomponenten

Deklaration: TYPE typMSG_PARSE :

STRUCT

Count : INT;

Parameter : ARRAY[1..GSM_PARSE_MAX_PARAMETER] OF S TRING;

END_STRUCT

END_TYPE

Beschreibung: .

Page 37: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

Anhang A - Weitere Bibliotheken

WAGO-I/O-PRO 32 Version 1.0.3 GSM_SMS_01.lib - 35

typGSM_BUFFER (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typGSM_BUFFER Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Struktur: Element: Datentyp: Beschreibung: Index INT Länge der aktuellen Response Data ARRAY

[0..GSM_RESPONSE_MAX_LENGTH] OF BYTE

Empfangsbuffer für die Response

Deklaration: TYPE typGSM_BUFFER :

STRUCT

Index : INT;

Data : ARRAY[0..GSM_RESPONSE_MAX_LENGTH] OF BYTE;

END_STRUCT

END_TYPE

Beschreibung: Dieser Datentyp wird nur Bausteinintern verwendet

Page 38: GSM SMS 01 - en | WAGOglobal.wago.com/appnoteadmin/libraries23/GSM_SMS_01/public/GSM… · GSM_SMS_V4 6 – GSM_SMS_01.lib ml00500d WAGO-I/O-PRO 32 GSM_SMS_V4 WAGO-I/O-PRO 32 Elemente

typGSM_PDU (Datentyp)

36 – GSM_SMS_01.lib ml00500d WAGO-I/O- PRO 32

typGSM_PDU (Datentyp)

WAGO-I/O-PRO 32 Elemente der Bibliothek

Kategorie: Name: typGSM_PDU Typ: Datentyp X Enumeration Name der Bibliothek: GSM_SMS_01.lib Deklaration: TYPE typGSM_PDU :

STRUCT

Length : BYTE;

strLenBody : STRING(10);

Data : ARRAY[0..GSM_PDU_MSG_MAX_LENGTH] OF BYTE;

END_STRUCT

END_TYPE

Beschreibung: . Dieser Datentyp beschreibt den Aufbau einer PDU. Dieser Datentyp wird nur Bausteinintern verwendet