Appendix A – Additional libraries
WAGO-I/O-PRO 32 Library
Modem_01.lib
The library „Modem_01.lib“ provides the function block
“MODEM_INTERFACE”, this covers the complied modem
handling necessary to create and close a transparent modem
connection.
Contents
Modem_01.lib
3
MODEM_INTERFACE .............................................................................. 3
MODEM_CONNECT ................................................................................. 6
typMODEM_STATUS (ENUM)................................................................. 8
typMODEM_ERROR (ENUM) .................................................................. 8
WAGO-I/O-PRO 32
Version 1.0.3
Modem_01.lib - 1
MODEM_INTERFACE
2 – Modem_01.lib
ml00200e
WAGO-I/O-PRO 32
Appendix A – Additional libraries
Modem_01.lib
MODEM_INTERFACE
WAGO-I/O-PRO 32 Library elements
Category:
Name:
Type:
Library name:
Used libraries
Applicable to:
Input parameter
xOPEN_CONNECTION
Data type:
BOOL
bCOM_PORT_NR
BYTE
cbBAUDRATE
strMODEM_INT
COM_
BAUDRATE
COM_
PARITY
COM_
STOPBITS
COM_
BYTESIZE
COM_
FLOW_CONTROL
STRING
strMODEM_DIAL
STRING
cpPARITY
csSTOPBITS
cbsBYTESIZE
cfFLOW_CONTROL
WAGO-I/O-PRO 32
Communication
MODEM_INTERFACE
Function block X Program
Function
Modem_01.lib
Serial_Interface_01.LIB
SerComm.LIB
STANDARD.LIB
All programmable fieldbus controllers
(except 750-812/814/815/816)
Version 1.0.3
Comments:
TRUE: set up and hold a transparent
modem connection .
FALSE shut down an established
modem connection.
Used COM-port
1: internal Service interface COM1
2: 1th plugged 750-65x COM2
3: 2nd plugged 750-65x COM3
4: – etc.
Modem specific (max. 19200)
Modem specific
Modem specific
Modem specific
Modem specific
Initialisation string for the modem.
This string will be transmitted first to
the modem while set up.
Following strings have a special
meaning:
/ :=1 sec pause;the string / will not be
transmitted
| := will be replaced by (0x0D)
The dial string contains the dial
sequence
Following strings have a special
meaning:
/ :=1 sec pause;the string / will not be
transmitted
| := will be replaced by (0x0D)
Modem_01.lib - 3
MODEM_INTERFACE
WAGO-I/O-PRO 32 Library elements
strMODEM_HANG_UP
STRING
strPHONE_No
STRING
tCONNECTION_TIMEOUT
TIME
iBYTES_TO_SEND
ptSEND_BUFFER
INT
POINTER
Output parameter:
Data type:
xCONNECTION_READY BOOL
bERROR
BYTE
utMODEM_STATUS
typMODEM_
STATUS
The Hang-Up-string contains the
sequence needed by the modem to
close the connection.
Following strings have a special
meaning:
/ :=1 sec pause;the string / will not be
transmitted
| := will be replaced by (0x0D)
Telefon number of the communication
partner
Maximum period of time to set up the
modem connection.
Number of bytes to be send
Pointer to the transmitt buffer
TRUE: A rising edge signaling the end
of the requested operation.
Subsequent the result of the
requested operation should be
checked by bERROR, utMODEM_ERROR and utMODEM_STATUS.
FALSE: a requested operation like set
up or close is in progress.
Errorcodes of the serial interface
(see SERIAL_INTERFACE from
Library Serial_Interface_01.lib)
Actual status of the connection
MODEM_DISCONNECT
:= 0,
MODEM_INITIALIZE
:= 1,
MODEM_IS_CONNECTING := 2,
MODEM_CONNECTED
:= 3,
MODEM_DATA_EXCHANGE := 4
Status MODEM_DATA_EXCHANGE
is needed for data transfer with a
partner.
utMODEM_ERROR
typMODEM_
ERROR
In/Output parameter:
xSTART_SEND
Data type:
BOOL
utRECEIVE_BUFFER
xINIT
4 – Modem_01.lib
MODEM_NO_ERROR
MODEM_CONNECT_ERROR
MODEM_DISCONNECT_ERROR
MODEM_INIT_ERROR
:= 0,
:= -1,
:= -2,
:= -3
Comments
Parameter to start a transparent data
transfer.(utMODEM_STATUS must be
in state MODEM_DATA_EXCHANGE)
typRING_BUFFER Buffer for the received data
BOOL
ml00200e
WAGO-I/O-PRO 32
Appendix A – Additional libraries
Graphic display:
Function description:
This function block provide the complied modem handling over a serial interface to
create a transparent modem connection.
All necessary system calls like
- Open a COM-Port
- The modem initalisation.
- Set up a modem connection,
- Transparent data exchange
- Close the modem connection
- Close the COM-Port
are covered inside this function block.
In the end it is enough to call this function block every cycle.
This function block use internal the following FB’s:
„MODEM_CONNECT“ from this library and
„SERIAL_INTERFACE“ from the library „Serial_Interface_01.lib
WAGO-I/O-PRO 32
Version 1.0.3
Modem_01.lib - 5
MODEM_CONNECT
MODEM_CONNECT
WAGO-I/O-PRO 32 Library elements
Category:
Name:
Type:
Library name:
Used libraries
Applicable to:
6 – Modem_01.lib
Communication
MODEM_CONNECT
Function block X Program
Function
Modem_01.lib
Serial_Interface_01.LIB (Data types only)
SerComm.LIB
STANDARD.LIB
All programmable fieldbus controller
(except 750-812/814/815/816)
Input parameter:
xCONNECT
Data type:
BOOL
strMODEM_INT
STRING
strMODEM_DIAL
STRING
strMODEM_HANG_UP
STRING
strPHONE_No
STRING
ptSEND_BUFFER
tTIMEOUT
POINTER
TIME
Output parameter:
xREADY
Data type:
BOOL
ml00200e
Comments:
A TRUE sets up the modem
connection.
A FALSE closes the actual modem
connection.
Initialisation string for the modem.
This string will be transmitted first to
the modem while set up.
Following strings have a special
meaning:
/ :=1 sec pause;the string / will not be
transmitted
| := will be replaced by (0x0D)
The dial string contains the dial
sequence
Following strings have a special
meaning:
/ :=1 sec pause;the string / will not be
transmitted
| := will be replaced by (0x0D)
The Hang-Up-string contains the
sequence needed by the modem to
close the connection.
Following strings have a special
meaning:
/ :=1 sec pause;the string / will not be
transmitted
| := will be replaced by (0x0D)
Telephone number of the
communication partner
Pointer to the transmit buffer.
Maximum period of time to establish a
connection.
Comments
A TRUE indicates,that the function
block has finished the job. Outputs
STATUS and ERROR gives detailed
information.
xREADY is FALSE while set up and
close of the connection.
WAGO-I/O-PRO 32
Appendix A – Additional libraries
WAGO-I/O-PRO 32 Library elements
xOPEN_COMPORT
BOOL
Opens the appropriate serial port.
Needs to stay TRUE during modem
operation.
STATUS
typMODEM_
STATUS
Actual status of the connection
MODEM_DISCONNECT
:= 0,
MODEM_INITIALIZE
:= 1,
MODEM_IS_CONNECTING := 2,
MODEM_CONNECTED
:= 3,
MODEM_DATA_EXCHANGE := 4
Status MODEM_DATA_EXCHANGE
is needed to communicate with a
partner.
ERROR
typMODEM_
ERROR
MODEM_NO_ERROR
MODEM_CONNECT_ERROR
MODEM_DISCONNECT_ERROR
MODEM_INIT_ERROR
In/Output parameter:
utRECEIVE_BUFFER
Comments
Buffer for the received data
iCOUNT
Data type:
typRING_
BUFFER
INT
xSTART_SIO
xINIT_SIO
BOOL
BOOL
:= 0,
:= -1,
:= -2,
:= -3
Information to the interface about the
number of transmitted data.
Parameter for interface control.
Parameter for interface initialisation.
Graphic display:
Function description:
This function block is not designed to act as a stand alone function block in user
application, this function block is used internal by „MODEM_INTERFACE“.
The function block implements the functions necessary for modem initialisation and
dialing and hang up.
This function block need an additional interface driver for communication.
WAGO-I/O-PRO 32
Version 1.0.3
Modem_01.lib - 7
typMODEM_STATUS (ENUM)
typMODEM_STATUS (ENUM)
WAGO-I/O-PRO 32 Library elements
Category:
Name:
Type:
Library name:
typMODEM_STATUS
Enumeration X
Data type
Modem_01.lib
Header:
TYPE typMODEM_STATUS : (
MODEM_DISCONNECT
MODEM_INITIALIZE
MODEM_IS_CONNECTING
MODEM_CONNECTED
MODEM_DATA_EXCHANGE
MODEM_IS_DISCONNECTING
END_TYPE
:=
:=
:=
:=
:=
:=
0,
1,
2,
3,
4,
5);
typMODEM_ERROR (ENUM)
WAGO-I/O-PRO 32 Library elements
Category:
Name:
Type:
Library name:
typMODEM_ERROR
Enumeration X
Data type
Modem_01.lib
Header:
TYPE typMODEM_ERROR : (
MODEM_NO_ERROR
MODEM_CONNECT_ERROR
MODEM_DISCONNECT_ERROR
MODEM_INIT_ERROR
END_TYPE
8 – Modem_01.lib
ml00200e
:=
:=
:=
:=
0,
-1,
-2,
-3);
WAGO-I/O-PRO 32