Professional Documents
Culture Documents
com
Start-up function block
IDENTControl IC-KP-Bxx
Standard function block TIA Portal
with SingleFrame protocol
Profinet and Profibus
Karsten Reinhardt 02.09.2020 www.pepperl-fuchs.com 2
IC-KP-Bxx SingleFrame TIA Portal
This documentation is valid with the following specification:
• Siemens S7-1200/1500 SPS and TIA Portal V14
• Single Frame protocol
• Valid for the IP (125kHz) and IQ (13,56MHz) systems
• Valid for the system IU (868MHz) with configuration protocol mode “SingleFrame”
• IDENTControl IC-KP-B17-AIDA1 (Profinet)
• IDENTControl IC-KP-B6-V15B (Profibus)
• IDENTControl IC-KP-B6-2V15B (Profibus)
• IDENTControl IC-KP-B6-SUBD (Profibus)
Retrieve library:
• Options Global libraries Retrieve library
• Select library archive (.zal14)
• Select destination directory
• Under “Master copies”, the library contains various elements for creating a program
• At least the function module "IC-KP-B17_SingleFrame" and the UDT "IC-KP-B17_SF_Data_UDT" must be
transferred to the project
• All other elements can also be created within the project and do not necessarily have to be taken from the
library
• The following documentation is based on the complete transfer of all elements from the library
Add PLC:
• Add new device Controllers (PLC)
• Select suitable CPU from menu
Configuring controller:
• Evaluation unit is
connected to subnet
PN/IE_1
• Setting network
parameters (IP address
and subnet mask)
• Setting Profinet Name
• The Profinet name in the
hardware configuration
must be identical to the
Profinet name stored
within the device
• Check via website
IDENTControl or
assignment of Profinet
Name
Configuring IDENTControl:
• Data Hold Time is a holding time for response telegrams from the evaluation unit in the process data
• The holding time should be at least as long as the cycle time of the PLC
• It is recommended to set twice the value of the cycle time
• Very large values lead to slower data transmission; too small values lead to telegram losses
• IC-KP-B17_SF_DB is the
instance data block from the
library
Alternative:
• If you select IC-KP-
B17_SingleFrame_DB, the
instance data block is created
again
I_b_HeadXQuit BOOL TRUE (edge positive) = Start execution Quit command; abort running Enhanced command
I_i_HeadXWordNum Int Number of addressed data blocks of 4 bytes each; value range: 1...15
I_w_HeadXWordAddress Word Start address on data carrier; value range: starting from 16#00; size depends on data carrier
IO_b_InitFinish BOOL TRUE = Initialization successfully executed; function block ready for operation
• IC-KP-
Function block Data block B17_SingleFrame =
function block for
FB803 DB1 SingleFrame
• IC-KP-B17_SF_DB =
IC-KP- IC-KP-B17_SF_DB Instance data block
B17_SingleFrame
• HeadXData =
Parameter for
Head1Data Data block connection data block
DB2 DB2 UserData.HeadX
Head2Data
• UserData = data block
UserData.Head1 with the UDT; contains
Head3Data UserData.Head2 the user data and no
UserData.Head3 header information
Head4Data UserData.Head4
IPC02 EM4102 (Unique) 16#3032 IPH-…-V1 (125kHz) Single / Enhanced Read Fixcode
IQH1-…-V1
IQC20 all ISO15693 data carrier 16#3230 Single / Enhanced Read Fixcode
(13,56MHz; ISO15693)
Reading not successful; data carrier not detected and Fixcode not read
• HeadXNoDataCarrier after the end of the command execution this output is set to
True
• Before starting a new reading command the input HeadXRead has to reset back to
False
• A new reading command starts by setting HeadXRead to True
Reading not successful; data carrier not detected and user data not read
• HeadXNoDataCarrier after the end of the command execution this output is set to True
• Before starting a new reading command the input HeadXRead has to reset back to False
• A new reading command starts by setting HeadXRead to True
Data carrier recognized and data read in: No data carrier detected:
Head1Busy = FALSE Head1Busy = FALSE
Head1Done = TRUE Head1Done = TRUE
Head1NoDataCarrier = FALSE Head1NoDataCarrier = TRUE
Head1Status = 16#00 Head1Status = 16#05
Writing not successful; data carrier not detected and user data not write
• HeadXNoDataCarrier after the end of the command execution this output is set to True
• Before starting a new writing command the input HeadXWrite has to reset back to False
• A new writing command starts by setting HeadXWrite to True
Input data field: Data written: DB "IC-KP-B17_SF_DB“ Input data field: No data carrier detected: DB "IC-KP-B17_SF_DB“
Byte[0] Command code; Single Write Words = 16#40 Byte[0] Command code; Single Write Words = 16#40
Byte[1] channel number; channel 1 = 16#02 or 16#03 Byte[1] channel number; channel 1 = 16#02 or 16#03
Byte[2] Status; data written = 16#00 Byte[2] Status; no data carrier detected = 16#05
Byte[3] Execution counter Byte[3] Execution counter
Byte[4]…[63] 16#00 Byte[4]…[63] 16#00
Byte[12]…[63] 16#00
Data carrier recognized and Fixcode read: No data carrier detected or data carrier has left the detection zone:
Head1Busy = TRUE Head1Busy = TRUE
Head1Done = TRUE Head1Done = FALSE
Head1NoDataCarrier = FALSE Head1NoDataCarrier = TRUE
Head1Status = 16#00 Head1Status = 16#05
Input data field: Fixcode read: DB "IC-KP-B17_SF_DB“ Input data field: No data carrier detected or data carrier has left the
Byte[0] Command code; Enhanced Read Fixcode = 16#1D detection zone DB "IC-KP-B17_SF_DB"
Byte[1] channel number; channel 1 = 16#02 or 16#03 Byte[0] Command code; Enhanced Read Fixcode = 16#1D
Byte[2] Status; fixcode read = 16#00 Byte[1] channel number; channel 1 = 16#02 or 16#03
Byte[3] Execution counter Byte[2] Status; no data carrier detected = 16#05
Byte[4]…[11] read fixcode Byte[3] Execution counter
Byte[12]…[63] 16#00 Byte[4]…[63] 16#00
Data carrier recognized and data read: No data carrier detected or data carrier has left the detection zone:
Head1Busy = TRUE Head1Busy = TRUE
Head1Done = TRUE Head1Done = FALSE
Head1NoDataCarrier = FALSE Head1NoDataCarrier = TRUE
Head1Status = 16#00 Head1Status = 16#05
Write data:
• Assignment before the start of instruction execution
• Assignment within the DB "UserData”
• Byte [0] to [59] Write data
• Write data parametrize up to Byte [59]
• Number of write data depending on parameter Head1WordNum
• Value range of HeadXWordNum from 1...15
Data carrier recognized and data written: No data carrier detected or data carrier has left the detection zone
Head1Busy = TRUE Head1Busy = TRUE
Head1Done = TRUE Head1Done = FALSE
Head1NoDataCarrier = FALSE Head1NoDataCarrier = TRUE
Head1Status = 16#00 Head1Status = 16#05
Input data field: Data carrier recognized and data written: Input data field: No data carrier recognized or data carrier has left the
DB "IC-KP-B17_SF_DB“ detection zone DB "IC-KP-B17_SF_DB“
Byte[0] Command code; Enhanced Write Words = 16#1A Byte[0] Command code; Enhanced Write Words = 16#1A
Byte[1] channel number; channel 1 = 16#02 or 16#03 Byte[1] channel number; channel 1 = 16#02 or 16#03
Byte[2] Status; data written = 16#00 Byte[2] Status; no data carrier detected = 16#05
Byte[3] Execution counter Byte[3] Execution counter
Byte[4]…[63] 16#00 Byte[4]…[63] 16#00
Byte[12]…[63] 16#00
Quit executed:
• HeadXDone = True Quit Command terminated
• Head1Status = 16#00
Read not successful, data carrier not recognized and EPC not read in
• HeadXNoDataCarrier is set to True at the end of the command execution.
• Before a new reading process can be started, the input HeadXRead must be set to
False.
• A new reading process is started by setting HeadXRead to True.
Writing not successful; data carrier not detected and user data not write
• HeadXNoDataCarrier after the end of the command execution this output is set to True
• Before starting a new writing command the input HeadXWrite has to reset back to False
• A new writing command starts by setting HeadXWrite to True
Data carrier recognized and EPC written: DB "IC-KP-B17_SF_DB“ No data carrier detected: DB "IC-KP-B17_SF_DB“
Byte[0] Command code; Single Program Special Byte[0] Command code; Single Program Special
Fixcode = 16#0D Fixcode = 16#0D
Byte[1] channel number; channel 1 = 16#02 or 16#03 Byte[1] channel number; channel 1 = 16#02 or 16#03
Byte[2] Status; data written = 16#00 Byte[2] Status; no data carrier detected = 16#05
Byte[3] Execution counter Byte[3] Execution counter
Byte[4]…[63] 16#00 Byte[4]…[63] 16#00
Byte[2]…[3] 16#00
Byte[2] 16#00
Byte[2] 16#00
V1.0 02.09.2020
- Initial Version