APP-NOTE 600004 Beckhoff Application Note Date: 8/28/2006 Document Status: First Draft Beckhoff Automation Aps Naverland 2, DK-2600 Glostrup Phone +45 43 46 76 20 Fax +45 43 46 63 35 Adressering af ind- og ud gange på BCxxxx IEC1131 PLC uden TC system manager OVERVIEW Denne applications note, beskriver hvordan man adresserer ind- og udgange udfra klemmers placering på bussen Program filer brugt sammen med dette dokument File navne Hvordan bruges filerne BCxxxx/BCxx50 Bus Control Udgangspunkt og Procedure
2 PLC Variabler Introduktion til adressering Når man taler om adressering af en bus controller, er der for hvert indgangs område og udgangs område en lokal tabel samt en global tabel. Den lokale tabel bruges til det PLC program som kører på BCxxxx Controlleren IEC1131 PLC en. Fieldbus tabel bruges til signaler til og fra PLC en til netværket, altså en netværks variabel. Illustration fig. 1.1 viser en skematisk fordelingen af lokal og global fordeling af ind- samt udgange. Fig. 1.1
3 Local process image På bus controlleren tilknyttes en interface med klemmerne til et lokal image. Dette image har 128 kanaler for input og 128 kanaler for output. Adresseringen af input starter ved %IB0 og output ved %QB0. Har vi for eksempel 5 indgangs klemmer som er fordelt på 1 stk. 2 kanal samt 1 stk. 1 kanal analoge indgange samt 3 stk. 4 kanal indgange og de er placeret som vist på skitsen Fig. 1.2. Fig. 1.2 Så skal man ind og kigge i manualen for den enkelte klemme som er bruget. I manualen står der om klemmen har et status ord og hvor mange byte hver kanal bruger. På Fig. 1.3 er vist et udklip fra manualen til KL3152 Fig. 1.3
4 Som man kan se på den foregående side er der et Status byte pr kanal samt et data Word pr. Kanal samt Control out og Data out per kanal.. Adresseringen af denne klemme vil så være: Term_5_KL3152_1_State AT %IB0: USINT; Term_5_KL3152_1_Data_In AT %IB2: INT; Term_5_KL3152_1_Ctrl AT %QB0: USINT; Term_5_KL3152_1_Data_Out AT %QB2: INT; Term_5_KL3152_2_State AT %IB4: USINT; Term_5_KL3152_2_Data_In AT %IB6: INT; Term_5_KL3152_2_Ctrl AT %QB4: USINT; Term_5_KL3152_2_Data_Out AT %QB6: INT; Det er derfor altid vigtigt at undersøge hvilke adresser som hver enkelt klemme bruger for status og control. En anden vigtig ting er at alle system klemmer og analoge klemmer, bliver altid adresseret først. Så selvom at man placere alle sine digitale ind og output nærmest controlleren, bliver de adresseret efter system samt analoge klemmer. Nedenfor er vist den komplette adressering på den tidliger viste konfiguration Fig. 1.2. Term_5_KL3152_1_State AT %IB0: USINT; Term_5_KL3152_1_Data_In AT %IB2: INT; Term_5_KL3152_1_Ctrl AT %QB0: USINT; Term_5_KL3152_1_Data_Out AT %QB2: INT; Term_5_KL3152_2_State AT %IB4: USINT; Term_5_KL3152_2_Data_In AT %IB6: INT; Term_5_KL3152_2_Ctrl AT %QB4: USINT; Term_5_KL3152_2_Data_Out AT %QB6: INT; Term_6_KL3152_1_State AT %IB8: USINT; Term_6_KL3152_1_Data_In AT %IB10: INT; Term_6_KL3152_1_Ctrl AT %QB8: USINT; Term_6_KL3152_1_Data_Out AT %QB1: INT; Term_6_KL3152_2_State AT %IB12: USINT; Term_6_KL3152_2_Data_In AT %IB14: INT; Term_6_KL3152_2_Ctrl AT %QB12: USINT; Term_6_KL3152_2_Data_Out AT %QB14: INT; Term_2_KL1104_1_Input AT %IX16.0: BOOL; Term_2_KL1104_2_Input AT %IX16.1: BOOL; Term_2_KL1104_3_Input AT %IX16.2: BOOL; Term_2_KL1104_4_Input AT %IX16.3: BOOL; Term_3_KL1104_1_Input AT %IX16.4: BOOL; Term_3_KL1104_2_Input AT %IX16.5: BOOL; Term_3_KL1104_3_Input AT %IX16.6: BOOL; Term_3_KL1104_4_Input AT %IX16.7: BOOL; Term_4_KL1104_1_Input AT %IX17.0: BOOL; Term_4_KL1104_2_Input AT %IX17.1: BOOL; Term_4_KL1104_3_Input AT %IX17.2: BOOL; Term_4_KL1104_4_Input AT %IX17.3: BOOL; Nu laver vi en ny konfiguration med følgende komponenter: 1 stk. KL1104 Digital indgang 1 stk. KL2602 Digital udgang 1 stk. KL3152 Analog indgang 1 stk. KL4022 Analog udgang 1 stk. KL6021 Seriel kommunikation RS485 (5 Byte) 1 stk. KL9010 Ende terminal
5 Konfigurationen er vist på Fig. 1.4. Fig. 1.4 Adresseringen er vist nedenfor: Term_4_KL3152_1_State AT %IB0: USINT; Term_4_KL3152_1_Data_In AT %IB2: INT; Term_4_KL3152_1_Ctrl AT %QB0: USINT; Term_4_KL3152_1_Data_Out AT %QB2: INT; Term_4_KL3152_2_State AT %IB4: USINT; Term_4_KL3152_2_Data_In AT %IB6: INT; Term_4_KL3152_2_Ctrl AT %QB4: USINT; Term_4_KL3152_2_Data_Out AT %QB6: INT; Term_5_KL4022_1_State AT %IB8: USINT; Term_5_KL4022_1_Data_In AT %IB10: INT; Term_5_KL4022_1_Ctrl AT %QB8: USINT; Term_5_KL4022_1_Data_Out AT %QB10: INT; Term_5_KL4022_2_State AT %IB12: USINT; Term_5_KL4022_2_Data_In AT %IB14: INT; Term_5_KL4022_2_Ctrl AT %QB12: USINT; Term_5_KL4022_2_Data_Out AT %QB14: INT; Term_6_KL6021_S_State AT %IB16: USINT; Term_6_KL6021_S_Data_In_0 AT %IB17: USINT; Term_6_KL6021_S_Data_In_1 AT %IB18: USINT; Term_6_KL6021_S_Data_In_2 AT %IB19: USINT; Term_6_KL6021_S_Data_In_3 AT %IB20: USINT; Term_6_KL6021_S_Data_In_4 AT %IB21: USINT; Term_6_KL6021_S_Ctrl AT %QB16: USINT; Term_6_KL6021_S_Data_Out_0 AT %QB17: USINT; Term_6_KL6021_S_Data_Out_1 AT %QB18: USINT; Term_6_KL6021_S_Data_Out_2 AT %QB19: USINT; Term_6_KL6021_S_Data_Out_3 AT %QB20: USINT; Term_6_KL6021_S_Data_Out_4 AT %QB21: USINT; Term_2_KL1104_1_Input AT %IX22.0: BOOL; Term_2_KL1104_2_Input AT %IX22.1: BOOL; Term_2_KL1104_3_Input AT %IX22.2: BOOL; Term_2_KL1104_4_Input AT %IX22.3: BOOL; Term_3_KL2602_1_Output AT %QX22.0: BOOL; Term_3_KL2602_2_Output AT %QX22.1: BOOL;
6 Fieldbus process image Fieldbus variablerne er default 8 byte ind og 8 byte ud. Som slave af et netværk er Fieldbus variablerne placeret i %I* samt %Q*. Masteren på netværket skriver værdier i sit output område, området er defineret for slaven via slave adressen. Slaven modtager værdien i sit input felt. Slaven skriver i ouput og modtages i master I input området. En BCxxxx har default dette område i %IB128..%IB135 samt %QB128..%QB135 En BCxx50 har default dette område i %IB1000..%IB1007 samt %QB1000..%QB1007
7 SUPPORT DOKUMENTER OG REFERENCER http://www.beckhoff.dk/english/busterm/buscontr.htm http://www.beckhoff.dk/english/busterm/overview.htm http://www.beckhoff.dk/english/busterm/digout.htm http://www.beckhoff.dk/english/busterm/analog.htm http://www.beckhoff.dk/english/busterm/anaout.htm http://www.beckhoff.dk/english/busterm/sonder.htm http://www.beckhoff.dk/english/busterm/system.htm