Beruflich Dokumente
Kultur Dokumente
com
Inbetriebnahme Funktionsbaustein
IDENTControl IC-KP2-2HBxx
Standard Funktionsbaustein TIA Portal
mit SingleFrame Protokoll
Profinet und Profibus
Karsten Reinhardt 22.07.2020 www.pepperl-fuchs.com 2
IC-KP2-2HB SingleFrame TIA Portal
Diese Dokumentation ist mit folgender Spezifikation gültig:
• Siemens S7-1200/1500 SPS und TIA Portal V14
• Single Frame Protokoll
• Gültig für die Systeme IP (125kHz) und IQ (13,56MHz)
• Gültig für das System IU (868MHz) bei Konfiguration Protokollmodus
„SingleFrame“
• IDENTControl IC-KP2-2HB17-2V1D (Profinet)
• IDENTControl IC-KP2-2HB6-V15B (Profibus)
Bibliothek dearchivieren:
• Extras Globale Bibliotheken Bibliothek dearchivieren
• Archivierte Bibliothek (.zal14) auswählen
• Zielverzeichnis auswählen
• Die Bibliothek enthält unter „Kopiervorlagen“ verschiedene Elemente für die Erstellung eines Programms
• Es muss mindestens der Funktionsbaustein „IC-KP2-2H_SingleFrame“ sowie die UDT „IC-KP2-
2H_SF_Data_UDT“ in das Projekt übernommen werden
• Alle anderen Elemente können innerhalb des Projektes auch erzeugt werden und müssen nicht
zwangsläufig aus der Bibliothek übernommen werden
• Nachfolgende Dokumentation basiert auf der vollständigen Übernahme aller Elemente aus der Bibliothek
Steuerung einfügen:
• Neues Gerät hinzufügen Controller (CPU)
• Passende CPU aus Menü auswählen
Steuerung konfigurieren:
• Neues Subnetz
hinzufügen
• Subnetz: PN/IE_1
• Netzwerkparameter (IP-
Adresse und
Subnetzmaske) der
Steuerung einstellen
IDENTControl konfigurieren:
• Data Hold Time ist eine Haltezeit für Antworttelegramme der Auswerteeinheit in den Prozessdaten
• Die Haltezeit sollte mindestens so groß sein wie die Zykluszeit der SPS
• Empfohlen ist die Einstellung des doppelten Wertes der Zykluszeit
• Sehr große Werte führen zu einer langsameren Datenübertragung; zu kleine Werte führen zu
Telegrammverlusten
Alternativ:
• Bei der Auswahl IC-KP2-
2H_SingleFrame_DB wird der
Instanz-Datenbaustein neu
erstellt
I_i_Head1WordNum
Int Anzahl adressierter Datenblöcke à 4 Byte; Wertebereich: 1…15
I_i_Head2WordNum
I_w_Head1WordAddress Startadresse auf Datenträger; Wertebereich: beginnend ab 16#00;
Word
I_w_Head2WordAddress Größe abhängig vom Datenträger
Datenträgertyp; Wertebereich:
Default = 16#3939
IQC21 = 16#3231
IQC22 = 16#3233
I_w_Head1TagType
Word IQC33 = 16#3333
I_w_Head2TagType
IPC02 = 16#3032
IPC03 = 16#3033
IUCxx = 16#3830
Usw.
TRUE (Flanke positiv) = Start Ausführung Initialisierungsroutine;
IO_b_SetRestart BOOL
Eingang nach einen Zyklus wieder auf False setzen
TRUE = Initialisierung erfolgreich ausgeführt; Funktionsbaustein
IO_b_InitFinish BOOL
betriebsbereit
Head1Data
UDT IDENTControl_Data_UDT
Head2Data
Datenbaustein • IC-KP2-2H_SingleFrame
Funktionsbaustein = Funktionsbaustein für
SingleFrame
DB1
FB802
• IC-KP2-2H_SF_DB =
IC-KP2-2H_SF_DB Instanz-Datenbaustein
IC-KP2-
2H_SingleFrame • Head1Data und
Head2Data = Parameter
zur Anbindung
Datenbaustein DB2
Datenbaustein UserData
DB2
Head1Data UserData • UserData.Head1 und
UserData.Head2 =
Datenbaustein mit der
Head2Data UserData.Head1 UDT; enthält die
UserData.Head2 Nutzdaten und keine
Headerinformationen
IPC02 EM4102 (Unique) 16#3032 IPH-…-V1 (125kHz) Single / Enhanced Read Fixcode
Eingangsdatenfeld:
• Byte[0] Befehlscode; ChangeTag-Befehl;
Ausgangsdatenfeld: 16#04
• Byte[0] Befehlscode; ChangeTag-Befehl; • Byte[1] Kanalnummer; Kanal 1 = 16#02
16#04 oder 16#03
• Byte[1] Kanalnummer; Kanal 1 = 16#02 • Byte[2] Status; Befehl korrekt ausgeführt
oder 16#03 = 16#00
• Byte[2] und Byte [3] TagType; 16#3939 • Byte[3] Ausführungszähler; inkrementiert
für Default TagType für jede neue Antwort
Lesen nicht erfolgreich, Datenträger nicht erkannt und Fixcode nicht eingelesen
• HeadXNoDataCarrier wird nach Ende der Befehlsausführung auf True gesetzt
• Bevor ein erneuter Lesevorgang gestartet werden kann muss der Eingang
HeadXRead auf False gesetzt werden
• Ein erneuter Lesevorgang wird durch setzen von HeadXRead auf True gestartet
Lesen nicht erfolgreich, Datenträger nicht erkannt und Daten nicht eingelesen
• Bevor ein erneuter Lesevorgang gestartet werden kann muss der Eingang HeadXRead auf
False gesetzt werden
• Ein erneuter Lesevorgang wird durch setzen von HeadXRead auf True gestartet
Ausgangsdatenfeld:
DB „IC-KP2-2H_SF_DB“
Byte[0] Befehlscode; Single Read Data -Befehl; 16#10
Byte[1] Blockanzahl (16#2 = 2 Datenblöcke); Kanalnummer; Kanal 1 = 16#02 oder
16#03
Byte[2]…[3] Startadresse 16#0000
Byte[4]…[63] 16#00
Schreiben nicht erfolgreich, Datenträger nicht erkannt und Daten nicht geschrieben
• Bevor ein erneuter Schreibvorgang gestartet werden kann muss der Eingang HeadXWrite
auf False gesetzt werden
• Ein erneuter Schreibvorgang wird durch setzen von HeadXWrite auf True gestartet
Schreibdaten:
• Zuweisung vor Beginn der Befehlsausführung
• Zuweisung innerhalb des DB „UserData“
• Byte[0] bis [59] Schreibdaten
• Schreibdaten bis Byte[59] parametrierbar
• Anzahl der Schreibdaten abhängig von Parameter Head1/2WordNum
• Wertebereich von Head1/2WordNum von 1…15
Byte[2]…[3] Startadresse
16#0000
Byte[4]…[11] Schreibdaten
Byte[12]…[63] 16#00
Die Länge des Fixcodes ist abhängig vom Datenträger. Alle Kein Datenträger erkannt bzw. Datenträger hat
ISO15693 Datenträger haben einen Fixcode mit der Länge von 8 Erfassungszone verlassen
Byte. IPC02 hat einen Fixcode mit der Länge von 5 Byte. IPC03 DB „UserData“
hat einen Fixcode mit der Länge von 4 Byte. Byte[0]…[59] 16#00
Eingangsdatenfeld: Fixcode eingelesen: Eingangsdatenfeld: Kein Datenträger erkannt bzw. Datenträger hat
DB „IC-KP2-2H_SF_DB“ Erfassungszone verlassen
Byte[0] Befehlscode; Enhanced Read Fixcode = 16#1D DB „IC-KP2-2H_SF_DB“
Byte[1] Kanalnummer; Kanal 1 = 16#02 oder 16#03 Byte[0] Befehlscode; Enhanced Read Fixcode = 16#1D
Byte[2] Status; Fixcode eingelesen = 16#00 Byte[1] Kanalnummer; Kanal 1 = 16#02 oder 16#03
Byte[3] Ausführungszähler Byte[2] Status; kein Datenträger erkannt = 16#05
Byte[4]…[11] eingelesener Fixcode Byte[3] Ausführungszähler
Byte[12]…[63] 16#00 Byte[4]…[63] 16#00
Ausgangsdatenfeld:
• Byte[0] Befehlscode; Enhanced Read Fixcode -Befehl; 16#1D
• Byte[1] Kanalnummer; Kanal 1 = 16#02 oder 16#03
• Byte[2] bis [63] keine Relevanz
Datenträger erkannt und Daten eingelesen Kein Datenträger erkannt bzw. Datenträger hat die
DB „UserData“ Erfassungszone verlassen
Byte[0]…[7] eingelesene Daten DB „UserData“
Byte[8]…[59] 16#00 Byte[0]…[59] 16#00
Schreibdaten:
• Zuweisung vor Beginn der Befehlsausführung
• Zuweisung innerhalb des DB „UserData“
• Byte[0] bis [59] Schreibdaten
• Schreibdaten bis Byte[59] parametrierbar
• Anzahl der Schreibdaten abhängig von Parameter Head1/2WordNum
• Wertebereich von Head1/2WordNum von 1…15
Byte[4]…[11] Schreibdaten
Byte[12]…[63] 16#00
Quit ausgeführt:
• HeadXDone = True Quit Befehl beendet
• Head1Status = 16#00
Lesen nicht erfolgreich, Datenträger nicht erkannt und EPC nicht eingelesen
• HeadXNoDataCarrier wird nach Ende der Befehlsausführung auf True gesetzt
• Bevor ein erneuter Lesevorgang gestartet werden kann muss der Eingang
HeadXRead auf False gesetzt werden
• Ein erneuter Lesevorgang wird durch setzen von HeadXRead auf True gestartet
Schreiben nicht erfolgreich, Datenträger nicht erkannt und Daten nicht geschrieben
• Bevor ein erneuter Schreibvorgang gestartet werden kann muss der Eingang HeadXWrite
auf False gesetzt werden
• Ein erneuter Schreibvorgang wird durch setzen von HeadXWrite auf True gestartet
• Der Parameter
Head1WordNum gibt die Länge
des PC-Words zuzüglich des
EPC Codes an
• Bei 12 Byte EPC Code und 2
Byte PC-Word hat
Head1WordNum den Wert 14
V1.0 22.07.2020
- Initiale Version
- Basierend auf Dokumentation von IC-KP2-1HBxx SingleFrame