Sunteți pe pagina 1din 4

QUESTION:

How do you program the communication blocks SFB14 ("GET") and SFB15 ("PUT") for data communication on the S7-400?

ANSWER:
In order to be able to communicate data between two S7-400 stations via an S7 connection configured in NetPro, you have to invoke communication
functions in the S7 program. SFB14 ("GET") is for reading out the data from a remote CPU and SFB15 ("PUT") for w riting data to a remote CPU.

Features of the communication blocks SFB14 ("GET") and SFB15 ("PUT")

 SFB14 / SFB15 are system function blocks and therefore included in the firmware of the CPU.
 SFB14 and SFB15 are asynchronous communication functions.
 They can run over several OB1 cycles.
 SFB14 and SFB15 are enabled with the input parameter ("REQ").
 The end of job is indicated by "DONE", "NDR" or "ERROR".

The sample program includes an S7 connection via which data is read from a remote CPU with SFB14 and read to a remote CPU with SFB15.

Description of the sample program

The STEP 7 project includes two S7-400 stations with CPU 416-2DP and CP 443-1 for communication via Industrial Ethernet. The basis for communication is
an S7 connection set up between the two stations. If you open the properties of the S7 connection in NetPro via "Right -click > Object Properties", you can
view the block parameter "ID" of the communication function blocks. You must observe the specification accordingly when invoking SFB14 or SFB15 in order
to permit data communication via the S7 connection.

Fig. 1: Properties of the S7 connection


The STEP 7 program consists of the blocks OB100, OB1, FB100, DB100, DB200, DB201, SFB14 and SFB15.

 OB100
OB100 is a startup OB and is run when the CPU is restarted. In this OB the enable signal for triggering the
first communication is given with M1.0 and M0.1.

Fig. 2: OB100

 OB1
OB1 is invoked cyclically. This OB contains the call of the FB100 (instance DB: DB100) with M1.0 and M0.1.
Once FB100 has run, M1.0 is reset.

Fig. 3: OB1

 FB100
FB100 is invoked in the OB1 cycle. This FB contains the call of SFB14 ("GET") and SFB15 ("PUT"). SFB14 is
enabled via input parameter "REQ" when clock marker M10.6 has a positive edge and there is no job running.
This blocking of the function call is important, because the function is asynchronous and can last several
cycles. Constant enabling of the system function block without waiting for the active job to finish can cause a
communication overload. The input parameter "ID" from the Properties dialog of the S7 connection in NetPro
has to be adopted (see Fig.1). The parameter "ADDR_1" specifies the data area to be read from the remote
CPU. For parameter "RD_1" you have to specify the data area for the data read. The output parameters
"NDR", "ERROR" and "STATUS" are required for evaluating the job and are valid only in the same cycle.
Fig. 4: FB100: invoking SFB14

If the block is run with an error, the status word of the block is saved for error analysis.

Fig. 5: FB100: saving the status word

SFB15 is enabled via the input parameter "REQ" when the clock marker M10.6 has a positive edge and no job is running. This bl ocking of the function call is
important, because the function is asynchronous and can last several cycles. Constant enabling of the system function block without waiting for the active job
to finish can cause a communication overload. The input parameter "ID" has to be adopted from the Properties dialog of the S7 connection in NetPro (see
Fig. 1). For the parameter "ADDR_1" you have to specify the data area in the remote CPU to which the values are to be written. For the parameter "SD_1"
you must specify the address of the data to be sent. The output parameters "DONE", "ERROR" and "STATUS" are required for eval uating the job and are
valid only in the same cycle.
Fig. 6: FB100: invoking SFB15

If the block is run with an error, the status word of the block is saved for error analysis.

Fig. 7: FB100: saving the status word

The STEP 7 project for downloading:


The STEP 7 project contains a sample program for invoking SFB14 and the call of SFB15 with status evaluation. It was created with STEP 7 V5.2.

Sample_S7-400_PUT-GET-01.exe ( 389 KB )

Copy the "Sample_S7-400_PUT-GET-01.exe" file into a separate directory and then start the file with a double-click. The STEP 7 project unpacks with all the
associated subdirectories. Now you can use the SIMATIC Manager to open and process the project.

S-ar putea să vă placă și