You are on page 1of 20
APPENDIX ETHERNETIIP TO SBC-2000 INTERFACING Overview This section is @ guide to aid in interfacing Acrison’s SBC-2000 CM and DSP Feeder Controllers to a ‘host’ supporting Allen Bradley's EthernetIP. The guide should be used in conjunction with the actual Operating and Instruction manual supplied with the Host Because of the complex nature of the subject matter, a certain level of knowledge regarding Local Area Networks (LAN), TCPIIP and Ethemet is required Additionally the user should be familiar with the Alen Bradley Ethernet/IP and DF1(PCCC) protocols. In general, this manual wil: + Give an overview of the interface topology and the major interface components, + Provide a synopsis of the EthemeUIP, CIP and PCCC protocols. + Show network device configurafon and give host examples. Users requiring information on any third-party software, equipment or software protocols should reference the appropriate specification and/or vendor manual Note: The Acrison SBC-2000 controller family does not require an EDS file, General Network Acrison’s SBC-2000 DSP and CM assemblies have built in RJ-46 jacks and can be connected directly to an Ethernet LAN. The basic SBC-2000 module requires an Ethernet gateway to connect to a LAN. The figure below is a general Ethernet! IP network diagram showing some connectons between a *host’ PC or PLC and various Acrison setups. The diagram shows the PC and PLC connected to a corporate LAN. Often Automation Engineers will spec an Ethernet Router or ‘Switch to keep the Control LAN Ethernet trafic separate from corporate traffic. 2 spc-2000 Figure D-1_ Example—Ethemet Configuration (5) EtheretP interfacing Ethornet Port Specifications Parameter Description [Hardware Interface Ethernet 2.01EEE 802.3 Transmission Speed ToMBaud [Connectors Rua5(10BaeeT) Ethernet/IP Ethernet networking has become a prominent communication protocol worldwide, Its low cost, high reliability and high speed has induced Allen Bradley to develop an automation industry “standard” called Ethernet/IP (where IP stands for Industrial Protocol). This protocol rides on top of TCP/IP, which uses Ethernet as the hardware/datalink media. Allen Bradley has made the Ethernel/IP protocol an “open Protocol’. Details of the protocol are available from the Open DeviceNet Vendor Association website (www.ODVA.com) and from Allen Bradiey. Allen Bradley's EthernevIP protocol was designed around the “CIP” (Control and Information Protocol) that is used on ControlNet and Devicenet. Additionally, messaging capability was added to support PCCC encapsulation. This manual assumes that the reader is familiar with Ethernet! IP and the PCCC. and CIP protocols. Acrison supports the following error messages STS CODE No CODE (No error) 0x00 Address doesn't point to something usable Ox0F 0x08 File is wrong size ox0F 0x07 Transaction size too large ox0F Ox0A Bad condition/Resource NIA OxOF oxoc Megal Command Ox0F x10 egal Data type Ox0F oxt4 HOST Configuration Examples (ControlLogix) The following pages provide several screen examples illustrating some key actions associated with configuring the Host PLC, DCS or PC. The example screens were developed using RSLogix 6000 and are associated with both PCCC and CIP protocols When examining these screens please refer to Appendix B of the SBC-2000 Family User Guide. Within the charts provided in Appendix B four columns are applicable to Ethernet/IP (see excerpt below): 1) Column 4 (Feeder and/or System Parameters) This column contains the ame of the parameter or function. A complate description of each parameter can be found in the SBC-2000 Family User Guide in Appendix A 2) Column 3 (Type): Specifies the data type for the parameter. The data type for PCCC and CIP protocols is always floating point so this column can be ignored. 3) Column 4 (Read/Write). Specifies whether this parameter's value can be modified (R/W), or whether itis read-only (R), or write-only (W). 4) Column § (SDLC . . . Hex). This is the Attribute Code for use in accessing this Particular parameter in CIP protocol. 5) Column 9 (A-B Data Highway) The Ethemet/IP PCCC Codes follow the same Index values as this column. The only exceptions are the Commands (83:24) that have different bit values than those in this column. See "PCCC: ‘Typed Write Binary on page 7 Figure D-2. Excerpt From Appendix B; Table B-2 far am ama nt ta || SE a AS na ae a Pay ES locas] eae) th ROR Mes ait ferns Ce eR MR Frsererter omy ba fog) ee ena] erage ree emda ferme rere evar |e ma] [ena me] a roe [emt ao ee RR = sie re [sa aaa rae | eae) fro sa FE [eo eine a [os mt) Faroe ae [rae] ea [| oe [a we De [| Fass ere |e | em scam ea or wine) en [ve [ea sara ee sa] a wm fscemens re [ree ea cn rn [rs wet) Foren soi A ea Joreriesnwieas ror || mere] or _foie| wera eval [era | ares) faerie a Message Examples PCCC: Typed Read (16 parameters, Floating Point) (ini a isle) 2 Ca ore a pp ree o Stee Tremere sales renters Fé Cninetine FTate ena oe ae \ertncarasan ae hae rent] © |) SS SA eal wm my af | [SISSIES ir Using a PLC-5, SLC500 or ControLogix PLC as a master, the message instruction should be used. Above is an example of a Typed Read as setup in RSLogix 5000 The message instruction reads‘6 floating point parameters from the Acrison controller starting at parameter number 68 (This will read the 16 remap parameters). The destination table address is F8:68. The F indicates that it is Floating point data type. The adjacent 8 also indicates this. Sixteen parameters are the maximum number of parameters that can be read at a time. + spc-2000 PCCC: Typed Read (Binary) Dae cai ‘slsiel 8) lee) “17 _—— lala is] ala es, Sp fe enone cl sal) salle ele ale se wltel 1) a aaiaiel Crete cnet 50 —— =) sen 5 Mmtltemte [3h sien Beinn. 3} ost. ‘are SED Lteuieen Seay Seaman _Ooa wee tevin 7 theres Secs omar ke Tia cot fi |e ‘evrcetormnt fants vet) | DeO SO || 6 A lt oe tl 2h a wy 8) yl BEAR UN ABOTAS iam The above example is also a Typed read. The destination table address is 83:64, The B indicates that it is Binary data type. There are four word parameters that are available to be read as Binary, they are (Status 1) parameter numbers 154 & 155 and Status 2 (parameter numbers 102 & 103). ‘Some Hosts, RSView as an example, will allow reading binary data in the form of bits or ‘coils’ in the form B3:154/1. This will return bit + of the Status register (the ON indicator in series 400 controllers) fusing RSView be aware that the driver will attempt to read a full block of data of the same type. So a request of 83:102 and B3:154 will be an attempt to read 52 parameters which is beyond the Acrison drivers size restrictions. Altomativaly, the Remapped Status request can be used. Reference Appendix B. PCCC: Typed Write (Floating Point) | ausin) a cUstel 1c =] dial) le Gis) ala) © gees 8) SLR TORT ee ice [erertorimit 3] stew froret | | 21> sel fe Sil ol] ea io : E oo eon i i xf ra ——— [rontéreseh ‘oc Te -) aoe a ScuseEleret FORO] sd New Toa. i ee cone = pee oe Ee ee Re | ee as | i Se ‘oF ear ce 7 fe encom GumidGoa Cte OHO Tae Tweet toe AEE TF facet eon leeoy fist tres Susan eee rea Ee Beane ae see) O S| RAE) hilt ww al oh ow i (RESRUECBOTAT tim ‘The message instruction above writes the floating point value as defined by FdrArray(0] (in this case 2222) to the Acrison controller parameter number 92 (This is the feed rate setpoint 6 spc-2000 PCCC: Typed Write (Binary) Se rs ee a “A tle ba aan ofa 4 [sere [erred a] Show tows | elicit] selma] else] Wf lid ol Hove = a aia somstrort— FF = tev te dtteete [Fad Detsentinee IS Tense eae vain 8a 0ee — Dowl eon S | ESA) ANF ow tl a ho wl coud ip CAVE ZEAL emo ‘The above example is also a Typed write. This time the parameter quantity is one and the data type is Binary. The destination table address is B3:224. The B indicates that it is Binary data type. The 224 is the Coil Command word. The bit values of the commands are as follows: Hex Decimal [Operation 7 T Taternal Grav z 2 Exiernal Grav 7 z Tatamal Var @ a External Vol 7 % Cniinuous Ed a Batch w cy Sat w 128 [Stop 00 2B Raknowiedge 20 Biz Batch Abort 700, Tod ___| Auta Refil B00 2048 [Man Ret TOOT FOS [RenT On "2000 wa2__ [Rel OF CIP: Read A Parameter oe La als [a ini isl ala) he ee a Y fulatel olclolelel |) Ferortoe ITZ Tea RIT Nea A CMBaD | alee] ale abel whe We) E rowabrde ae Terns SSS ren oR weone ~—By wets | Srigantce|coxmmnosin| Ta | — bom J 2 Bye 0 ae ey eT ie Ta. Deak eaters OSa Ome Domine Sank Sina F vewause evtncovorancig Using a ControlLogix PLC as the master, the message instruction is configured as type "CIP Generic.” ‘The Service Type is set as "Got Attribute Single,” which is Service Code Ox0E. For all CIP operations. The CLASS is set to 0x64, the INSTANCE is set to 1, and the ATTRIBUTE is set to the specific Acrison parameter the user wishes to read ‘The DESTINATION is set to a tay of type REAL. Upon execution of the message instruction, the tag will contain the desired value. In the example, ATTRIBUTE is set as Ox5D, which is the parameter code for Ratio Set Point. “8 spc-2000 CIP: Write A Parameter a— te, (eee ete Bahan Mf SifiotLie| ae] ae [4 Her] 29] af Dl SL Nerte SE LT LTE sci) te wie oe sie) al nf sles : Rents meng BEe} Cotot| mvc Tal oe SeS/S/e/sane =) Sentech: [3 2 | Se Totem eet Sr tre an ste. Seah GenweHans Osa 0m twaLegH 0 Gute nce F rmio (ret J ce | te a al Using a ControlLogix PLC as the master, the message instruction is configured as type "CIP Generic.” The Service Type is set as "Set Attribute Single," which is Service Code 0x10. For all CIP operations, The CLASS is set to 0x64, the INSTANCE is set to 1, and the ATTRIBUTE is set to the specific Acrison parameter the user wishes to write. The SOURCE ELEMENT is set to a tag of type REAL, with a SOURCE LENGTH of Four (4) bytes. Upon execution of the message instruction, the tag will be set to the Acrison Controller and will be set to the value contained in the tag. In the example, ATTRIBUTE is sot as Ox6C, which i the parameter code for Feed Rate t Point. (Blsiel 6) ia) [—__) aisialle 2m] a ol i a iofes Besme hte ilies 2] e] ofan] LNs ASAT RIT AT Sexe forint) Safron——sl se stern ro 4 bein fons [tw 2 (sa) ASHER antetietPopan ‘HERE Hc itunes a (coh AHERN Sree Sane ura 3 ues mal Egon x c eure z ' EAH Sabet I jo Sibcaryran mE ese ee ‘Shown is an example of the tag used in the previous examples. Controller tag "fr_UP" is declared as type REAL, which mekes the style floating point. The value, 250, would have been read from the controller using the "Get Attribute Single" method, or written to the controller using the "Set Attribute Single" method, -10 SBC-2000 Creating a Background Scanning Job on ControlLogix Background Scanning allows the ControlLogix PLC to automatically read and write 16 parameters with no intervention or program logic on the user's part Values are automaticaly transferred from an array of 46 tags (46 each in and out, 92 total), The block of data is remapable, and can be any value the Acrison SBC- 2000 controller provides (except text parameters), and stalusicommands, In the following examples, an Allen Bradley 1766-ENBT Ethemet/IP Communications Bridge was used as the Ethernet Device. Use of third party devices may require a different configuration. ee al ebste ainiotoiel | [Aire reat With your project defined, and the ControlLogix in an OFFLINE condition, scroll down in the left pane until you reach /O CONFIGURATION. The branch should either be open, or if not, open it by clicking on the "+ sign. With the branch open, select the 1756 module, and right click on in. A fly-out menu will appear, click "New Module...” Eien ate en coe ‘ins hor nok poe nimi Tatcterneneriadene eget ‘Rati tors we ies {Btmoves terse ene Enema Sublets 4 [usseerinera tex Jone: 10 ec. wee Die BOM ia OCOHN fst tera toa tare ae a he Flame amano sn Fann 7 Dold commen Fen 7 Cate Cheb ne From the "Select Module Type" window that appears, scroll down the list and select module type "ETHERNET-MODULE”, which will have the description "Generic Ethernet Module. Click OK. “12 sBc-2000 Fe id hea ark botol Pitty eccrrow emer Sa gaan Mae: icra; Someta nein F — Sa Geen ue ft fe cay 2 Salonen |? | Crain [Ee Oe) estes tate | se s010¢ fot At this point. a new branch will appear under the 1756-ENBT, shown as ETHERNET-MODULE. Double-click this device, and a properties ‘window will appear. At this point, the user should enter data into the following fields Name: This is a "name" you associate with the scanner. This name will then be used to create the tags used by the scanner. Typically the name of the controller is used in this field Description: This is a text box used to give any description you want to the device. It will show in the "Descriation” field of the device. Typically you can use the IP address as the description, as shown in the example images, It is sometimes helpful to use the name of the feeder controller in this field, Comm Format: Select "Data - REAL". The values to be transferred are floating point IP Address: Enter the IP Address of the SBC-2000 controller you will be communicating with Under "Connection Parameters", the Assembly Instance for Input is 100, length 16. For Output itis 112, length 16. For Configuration 150, length 0. Click "Next>>" “13 ‘alsigl o) xiale) off =) aiolal i> ie! le a ea ee cai ol ra Bl Ai] ene eae OE Sram Bimary z Bereta raetescbtoes tr [ —B0EHne (0-m F wean ana OnCoel ements Sco 2B ifscomane ae ‘SD eveverncouteacn 3 a J 1 re | The "Requested Packet Interval" should be set to 260ms or greater. The SBC- 2000 Controller has an internal period of 260ms. Setting this value to less than 250ms will give a connection error. Values of 250ms - 500ms would be typical. If it is desired to inhibit communications on this channel for whatever reason, check the "Inhibit Module" box, otherwise leave it unchecked Click "Finish>>" This completes the configuration for background scanning, “14 sBc-2000 Blea 6) Ale) ole|[ salsa fe (vl) TC |) “4 bebe abbot fee DB) sbi \iovorses (SA Tesrcenee Arma [erase | [PSenticen ——d (Beem Beem rat inde ous [Fsetortdel =] Shorts] tine =] [Buca a Hee, (mba nba) (a1 ‘GLHa) IDA). Gir ontyonee mba) Fr} Syren ne ate al 1) Ere oa Scan eT ay [cree oro ETE Da sa coal Ha aa Da 2 Da amt Da . Once the scanner is configured, the ContolLogix will automatically create three (8) arrays using the "name" you assigned to the scanner. As shown in the example image, the scanner was named "SBC2000_1", so three arrays, named "SBC2000_1:1", "SBC2000_1:0", and "SBC2000_1:C" are created. Of these, only the "I" and™0" arrays are used. The "I" and "0" arrays each contain 16 data fields of type "Real" ( Data[0] thraugh Data[18)). The "I" array is data being read from the controller, the "O" array is data being written to the controller. The values presented are controled by the Remap parameters for "Serial Channe! O/Ethernet. Any numerical value may be remapped (no text parameters Tay be remapped, such as Feeder Name) and all parameters are presented as floating point values. One special exception to this is Feeder Status on the 'l" side and Commands on the "O" side. The remap parameter code for Feeder Status! ‘Commands is 162 and is typically used in position .Data[16] (Remap 16 on the $BC2000) “is -16 SBC-2000 Remapped Feeder Status & Commands ‘Rewmunped Feeder Status RemappedFeoder Status i binary encoded decimal mamber nea” format Since the format of the ‘ales presented in the remap block areal ofthe same type. hat being IEEE Floating Point status could rote tase inary Fach block teow represents a decimal “weshtng” hase om the pots af wo. Iter a host device ‘an cther converted the real back oa binary Form and ts ia nvidia bis, or subtractive method at besed on th Resting vlc an TT TH TI TT Dribble ] Barer | patch(ay | Gravely | taecty | Autoray f Retin | Runcry complete | Contio) | vary | Ext(o) J Retsil’ | ONC) J Stop(o) Mani) | OFF BERT] eT | TT | ao ST TT ST Aeniok | Over | Empty | General | General | Overtilor | Low Messuze | Alarm | Empty" | Level TIS ]_TeSS30T Deviation [Wo Seale For example, the following uenbe, 21, would represent the following conditions 256- High Level 16- Grav Mode Teal (Vol mode sine {16} =) 1 Running 2864 16+ 8+ 19281 Nove that ony Status | (ode 152) may be remapped Feeder Stes? (code 3) may ot be remapped Commands, ‘When writing othe Remapped Feeder Sits aise res this takes onthe finesion of Command Wee. The binary enooded deine format s iden. The host device rete a IEEE Flat valu based cn the abe shown below tw perio cored ction TI] a) TT TH Ty TT AlamAck} Refill | Refill | Bach | Bateh(1) | Man(1) | Ranch) OFF | ON | bot | Com) | Refill | Stop(0) Mode Auto (0) Ta Extemal)| Intel (0) Init’ simplest farm, sending a1" to the commend write register would tart the feeder, but keepin mind it would aso perform the fllowing: Refill to Auto mode, Continuous Mowe, Gravinssric Moe Ineral Mode. [ths ws no What was insended (say the feeders in eral Volumetric Mode, Mangal Ref Feder Start comand valu would he [31 stop would be 130.12 mode in Volumetric and Manual Refill + I Run then 2 keep the Status and Commands Example The following example program demonstrates how to properly use the status data coming from the feeder, and to send a commands to the feeder. In this example, to start and stop it, and to initiate a refill The example uses what is referred to as “scanning” on the Ethemet channel, since the PLC handles al ofthis by itself “in the background” and makes the data available in predefined tags for program use. Figure D-3 shows the ladder diagram for this program. Note the status data arrives as a REAL value in "SBC2000:1.Datal 15)" (which is the Ethernet Input Data Array). The MOV instruction on line Oconverts this REAL value to a 32 bit DINT called “int_Status”. Once this is done “int_Status” can be bit addressed throughout the ladder. The run status bitis at “Int_Status.0", which you can see being referenced on lines 1 and 3. "Int_Status is expanded on Figure D-5to show its individual bits, and what they represent, Lines 2 and 4 of Figure D-3 show a method of starting and stopping the feeder by setting and clearing bit 0 of the INT command word "Command _Bits.” Line 5 monitors the Low Level Status Bit at "Int_Status.6", and if the controller isin Manual Refil Mode (‘int_Status.2') If this is true, it sets bit 4 of "Command _Bits’ which initiates a Refill “Ccmmand_Bits” is expanded on Figure D-4to show its individual bits and what they represent. On line 6, a MOV instruction is used to convert the INT value of "Command_Bits" to the REAL value at "SBC2000:0. Data 14" (The command value in the Ethemet Output Array). Figures D-4and D-5 show the expanded contents of the various controller tags containing the input data, output data, status, and command bits. “aT Figure D-3 Example—Ladder Diagram Figure D4 Example—Command Tags fi EE BBEBEEEEE! i i 18 SBC-2000 Figure D-5 Example—Data & Status Tags Sac 65621 Fo 25.0 /Poe [Drone Drone [Drona Drona [Drona Drona [Drona Sob ai RE sate sro unt 800 inva ila bien Eee oso sri ania sere esses noms esvines oo sere -20 SBC-2000

You might also like