Verschicken einer SMS über den Beckhoff 4G-Stick
Der installierte 4G-Stick wird als virtuelle serielle Schnittstelle verbunden, worüber sich die SPS per ADS verbinden kann. Durch den Aufruf des Funktionsbausteins „SendSMS“ wird die SMS an einen Empfänger versandt.
- Tragen Sie in der Datenstruktur stSerialCfg ein.
- Tragen Sie in der Stringvariable sNumber des Empfängers ein.
- Versenden Sie eine SMS über eine steigende Flanke an bConnect.
Programmvariablen
(*
COM_VCOM_SMS
Sends a SMS over a connected GSM Device especially over a virtual serial com port
*)
PROGRAM MAIN
VAR
(* function-block for sending a SMS *)
fbSendSMS : SendSMS;
sText : STRING := 'Please check machine #5, threshold is reached';
sSend : BOOL;
sNumber : STRING := '';
sBusy : BOOL;
sError : INT;
(* communication buffer between application and SerialLineControl *)
RxBuffer : ComBuffer;
TxBuffer : ComBuffer;
(* serial line control *)
fbLineCtrlAds : SerialLineControlADS;
bAdsError : BOOL;
nAdsErrorID : UDINT;
bConnect : BOOL;
sNetId : T_AmsNetId;
stSerialCfg : ComSerialConfig;
END_VAR
Programm-Code
(*~~~~~~~~~~~~~~~~ cyclic call of serial background comm. ~~~~~~~~~~~~~~~~~*)
fbLineCtrlAds(
Connect := bConnect, //bConnect has to be set to true, after the
stSerialCfg is checked
SerialCfg := stSerialCfg, //stSerialCfg has to be filled with your
Com-Settings (Com-Port, Baudrate, etc.)
NetId := sNetId,
Timeout := ,
TxBuffer := TxBuffer,
RxBuffer := RxBuffer,
Busy => ,
Error => bAdsError,
ErrorID => nAdsErrorID,
PortOpened =>
);
fbSendSMS(
Send:= sSend, //sSend has to be set to true, when the message is ready
Number:= sNumber, //sNumber is the number of the recipient
Text:= sText, //sText is the text you would like to send to the recipient
Busy=> sBusy,
Error=> sError,
RXbuffer:= RxBuffer,
TXbuffer:= TxBuffer);
Voraussetzungen
Entwicklungsumgebung |
Zielplattform |
Einzubindende SPS-Bibliotheken |
---|---|---|
TwinCAT v3.0.0 |
PC or CX (x86) |
Tc2_Sms, Tc2_SerialCom |