Home
User Manual
Contents
1. ControlNel Remote I O cf qa AiO on li al LC 5 Processor k a ie S 1771 ASB Peer en oP Wa Bf i E E M SLC 5 04 Processor Eiis i Ao PLC 5 Processor Block I O P em z ir il E 1747 ASB FLEX I O 336T Drive 30169 1756 6 5 12 March 1999 1 2 Getting Started Installing the Controller 1756 6 5 12 March 1999 The following directions summarize the procedure for installing a Logix5550 controller For details see the Logix5550 Controller Quick Start publication 1756 10 1 which ships with the controller Take these precautions to guard against ESD damage ATTENTION Electrostatic discharge can damage the components Follow these guidelines e touch a grounded object to discharge potential static e wear an approved grounding wriststrap e do not touch connectors or connector on component boards e do not touch circuit components inside the controller e if available use a static safe work station e when not in use store each component in the anti static packaging in which
2. Communicating with a Workstation 9 5 Description Enter connection path 0 8 37 1 0 2 42 1 3 0 DH port of the KT communications card in the workstation 8 37 octal DH node of the 1756 DHRIO module in slot 2 of the local chassis 1 backplane port of the 1756 DHRIO module in slot 2 of the local chassis 0 slot number of the 1756 CNB module in the local chassis 2 ControlNet port of the 1756 CNB module in slot 0 of the local chassis Example DH Connect to the local chassis through a DH link Go out Select a DH driver through a ControlNet link to connect to the controller in the remote chassis r I contains 1784 KT card port 0 DH z aS DH link es eee P local chassis l remote chassis DH node 37 u u ControlNet node 42 ControlNet module in slot 0 port 1 backplane ControlNet link 42 ControlNet node of the 1756 CNB module in slot 0 of the remote chassis 1 backplane port of the 1756 CNB module in slot 0 of the remote chassis 3 slot number of the controller in the remote chassis DH Use DH to connect to the controller in the remote chassis contains 1784 KT card port 0 DH m DH link oes Ea f li E local chassis i DH node 37 h
3. Ne A Hl H Slot 1 RPI 5mS o g A 0 0 N U i N U N K pT Slot 2 RPI 50mS prip l U P U P U 5 TU TUTT T Slot 3 RPI 25mS T J J S t t ControlNet t 41020 Owner controller ControlNet bridge module ControlNet bridge module The local controller in this example uses these bidirectional connections Bidirectional Connection Type Module Quantity Connections Total Connections per Module controller to local 1 0 module 2 1 2 controller to remote 1 0 module 3 1 3 controller to remote 1756 CNB module 1 1 1 total 6 When you select the communication format for the I O module the owner and listen only formats are direct connections 1756 6 5 12 March 1999 7 4 Allocating Communication Connections Rack optimized connections for I O modules When a digital I O module is located in a remote chassis with respect to its owner you can select rack optimized communication A rack optimized connection consolidates connection usage between the owner and the digital I O in the remote chassis Rather than having individual direct connections for each I O module there is one connection for the entire chassis In this example the owner controller communicates with all the digital I O in the remote chassis but uses only one connection The data from all three modules is sent together simultaneously at a rate specified by the 1756
4. Because you are executing the power up handler both the MyFaultRecord Type and MyFaultRecord Code members are 1 Qu EQU Equal Equal Source MyFaultRecord Type Source MyFaultRecord Code 0 0 Source B 4 Source B 34 Examine the MyFaultRecord Type and MyFaultRecord Code members to determine the type of major fault This example looks for specific fault types and codes 4 Take appropriate action Develop your own logic to respond to the major fault 5 Ifyou decide to clear the fault A Clear the type and code members of the tag MyFault Record Type and MyFaultRecord Code shown above MOV Move Source 0 Dest MyFaultRecord Type g Move Source 0 Dest MyFaultRecord Code o Use MOV instructions to clear the type and code values 1756 6 5 12 March 1999 13 8 Preparing a Power Up Program B Use an SSV instruction to clear the fault by copying the tag MyFaultRecord TimeLow to the MajorFaultRecord of the PROGRAM object SY Set system value Object class PROGRAM Object name THIS Attribute name MAJORFAULTRECORD Source MyFaultA ecord TimeLow D The Source tag must point to the first member of the structure MyFaultRecord TimeLow This tag is of the structure type you define to hold fault information 1756 6 5 12 March 1999 Using This Appendix Identifying Controller Components Appendix A Troubleshooting For informat
5. remote chassis DH node 24 DH link Select a DH driver Enter connection path 0 8 37 1 2 3 8 24 1 3 0 DH port of the KT communications card in the workstation 8 37 octal DH node of the 1756 DHRIO module in slot 2 of the local chassis 1 backplane port of the 1756 DHRIO module in slot 2 of the local chassis 2 slot number of the other 1756 DHRIO module in the local chassis 3 Channel B of the 1756 DHRIO module in slot 1 of the local chassis configured for DH 8 24 DH node of the 1756 DHRIO module in slot 2 of the remote chassis 1 backplane port of the 1756 DHRIO module in slot 2 of the remote chassis 3 slot number of the controller in the remote chassis Use several network connections across different network bridges ControlNet Ethernet DH ControlNet to the remote chassis Ethernet back to the local chassis DH back to the remote chassis local chassis remote chassis ControlNet node 49 ControlNet node 42 Ethernet IP address 34 34 34 34 port 1 backplane DH node 37 port 2 ControlNet Ethernet IP address 127 127 127 12 port 1 backplane port 2 Ethernet DH node 24 gt port 1 backplane port 2 channel A port 3 channel B e l fe ControlNet link Ethernet link DH link Select a DF1 driver to handle worst case performance Enter connection path 1 0 2 42 1
6. 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 10 instruction execution program watchdog y serial port battery 2 Usea GSV instruction to get the MinorFaultBits record of the FAULTLOG object The Destination should be the DINT tag you created 3 Examine the fault bits to determine the type of fault and take appropriate action You do not need to clear a minor fault The following logic shows one way to check for minor faults other than instruction execution faults Place this logic within a routine within the program not the fault routine checking for other minor faults GSV Get system value Object class FAULTLOG Object name Attribute name MinorFaultBits Dest MinorF aultBits p MinorF aultBits 10 BatteryLowlndicator MinorFaultBits 9 SerialPortF ault MinorF aultBits 4 MinorlnstructionF ault This example uses a GSV instruction to get a copy of the MinorFaultBits record of the FAULTLOG and store it in a DINT tag MinorFaultBits Then this example examines some of the bits in MinorFaultBits to see what type of fault occurred 1756 6 5 12 March 1999 12 8 Handling Controller Faults Minor Fault Types and Codes The minor fault list includes Type Code Cause Recovery Method 4 4 An arithmetic overflow occurred in an instruc
7. Structure Name Member Data Type Style Description Load_Info Height SINT Decima load Height in feet Width SINT Decima load Width in feet Weight REAL Float load Weight in pounds W_Flag BOOL Decima set true if load is stretch wrapped L Flag BOOL Decima set true if load is labeled Location Source INT Decima system source location Destination INT Decima system destination location Info Load_Info none load information structure 1756 6 5 12 March 1999 4 12 Organizing Data 1756 6 5 12 March 1999 Memory is allocated in the order of the members Bit 31 24 23 16 15 8 7 0 data allocation 1 Destination Source data allocation 2 unused unused Width Height data allocation 3 Weight data allocation 4 unused unused unused bit 0 W_Flag bit 1 L_Flag Referencing members within a structure You reference members in a structure by using the tag name and then the member name tag_name member_name For example Example Description timer_1 pre This example references the PRE value of the timer_1 structure This examples references the Height member of the user defined input_load structure input_load as data type load_info input_load height If the structure is embedded in another structure use the tag name of the structure at the highest level followed by a substructure tag name and member name tag_name substructure_name member_name For example Example Description inpu
8. ni or _ a wa Diiis T5 J Canoka Fak horka Pimen ip Harzi i Tai e Ment aah 6 5 12 March 1999 Predefined structures The controller supports these predefined structures each of which stores related information for specific instructions AXIS CONTROL COUNTER MESSAGE MOTION GROUP MOTION_INSTRUCTION PID e TIMER 1 These structures do not support arrays and cannot be nested in user defined structures For more information about the instructions that use these structures see the Logix5550 Controller Instruction Set Reference Manual publication 1756 6 4 1 Module defined structure The Logix5550 controller automatically creates the I O structures needed for each I O module you configure for the system see the previous chapter These structures usually contain members for data status information and fault information User defined structure A user defined structure groups different types of data into a single named entity A user defined structure contains one or more data definitions called members Creating a member in a user defined structure is just like creating an individual tag The data type for each member determines the amount of memory allocated for the member The data type for each member can be a an e atomic data type e predefined structure e user defined structure e single dimension array of an atomic data type e single dimension array of a predefined structure
9. You can modify array dimensions when programming offline without loss of tag data You cannot modify array dimensions when programming online Organizing Data 4 19 Aliasing Tags A tag alias lets you create one tag that represents another tag This is useful for defining simplified tag names for elements of structures or arrays For example Definitions Alias Example Description mylist 10 array of 10 DINT elements half my_list 5 This example uses the tag halfas an alias to my _list 5 cookies 5 array of 5 recipe elements oatmeal cookies 1 This example uses tags referring to oatmeal as data type recipe flour as data type REAL see nae ee na n Eo n elements K the structure in sugaras data type REAL oatmeal_preset cookies 1 timer 2 pre_ the first element of array cookies timer as array timer 5 1 0 structures light_ 1 local 0 1 Data 0 This example uses simpler tags to refer to input point local 0 1 Data 0 motor_1 local 1 0 Data 0 specific 1 0 points output point local 1 0 Data 0 You can use the Tag Editor to create an alias or you can enter the alias tag as you enter logic and define the alias later using the New Tag dialog box 1 Select the tag name in tag editor 2 Right click on the tag name F Contos age p rk_oiat conti Coogee ipai iu ara hapa ale a Sat T Aa Eri Tag akara T i 3 Define the tag Hew Tau 4 Click Alias Hare Coa Qecorphor z p
10. Tags for the input module Local 1 1 Data 0 Local 2 1 Data 0 Local 1 1 Fault 0 Local 2 1 Fault 0 Local 2 0 Data 0 Tags for the output module 40049 The name Local indicates that these tags reference modules that are in the same chassis as the controller 1756 6 5 12 March 1999 3 18 Configuring 1 0 Modules 1756 6 5 12 March 1999 Example of remote addressing This example addresses an I O module in a remote chassis 0123 SwitchesRack name assigned to the 1756 CNB module D SensorRack name assigned to the 1756 CNB module N 40050 for the output module SensorRack 1 1 Data 0 SensorRack 1 1 Fault 0 SensorRack 1 0 Data 0 Configuring I O Modules 3 19 Defining aliases A tag alias lets you create one tag that represents another tag This is useful for defining simplified tag names for I O values For example Example Description 1 0 structure This example uses simpler tags to refer to Local 0 0 Data 0 specific 1 0 points Local 0 1 Fault 0 alias light_on Local 0 0 Data 0 light_ off Local 0 1 Fault 0 Viewing Module Fault Information Each I O module provides indication when a fault occurs The programming software displays this fault information In this location The software displays Controller organizer The I O configuration portion displays the modules configured for the controller If the controller detects a fault with one of these modules the controller organizer
11. Wy Allen Bradley Logix5550 Controller User M a nual Cat No 1756 L1 L1Mx Important User Information Solid state equipment has operational characteristics differing from those of electromechanical equipment Safety Guidelines for the Application Installation and Maintenance of Solid State Controls publication SGI 1 1 describes some important differences between solid state equipment and hard wired electromechanical devices Because of this difference and also because of the wide variety of uses for solid state equipment all persons responsible for applying this equipment must satisfy themselves that each intended application of this equipment is acceptable In no event will the Allen Bradley Company be responsible or liable for indirect or consequential damages resulting from the use or application of this equipment The examples and diagrams in this manual are included solely for illustrative purposes Because of the many variables and requirements associated with any particular installation the Allen Bradley Company cannot assume responsibility or liability for actual use based on the examples and diagrams No patent liability is assumed by Allen Bradley Company with respect to use of information circuits equipment or software described in this manual Reproduction of the contents of this manual in whole or in part without written permission of the Allen Bradley Company is prohibited Throughout this m
12. 0 59g lithium programming cable 1756 CP3 serial cable category 312 agency certification when product or packaging is marked M amp Gi Class Division 2 Hazardous ce marked for all applicable directives 1 Use this conductor category information for planning conductor routing as described in the system level documentation 2 Refer to Programmable Controller Wiring and Grounding Guidelines publication 1770 4 1 3 CSA certification Class Division 2 Group A B C D or nonhazardous locations 1756 6 5 12 March 1999 C 2 Specifications Logix5550 Memory Board 1756 6 5 12 March 1999 You can install one of these memory boards in the controller e 1756 M1 512 Kbytes expansion memory e 1756 M2 1 Mbytes expansion memory e 1756 M3 2 Mbytes expansion memory The 1756 Mx memory boards are designed to work only with the 1756 L1 Logix5550 controller Description backplane current Add this current demand to that of the Logix5550 controller Value 5V dc 1756 M1 0 30A 1756 M2 0 40A 1756 L1 1756 M3 0 554 temperature operating 0 to 60 C 32 to 140 F storage 40 to 85 C 40 to 185 F relative humidity 5 to 95 noncondensing vibration 10 to 500 Hz 2 0 G maximum peak acceleration shock operating 30G peak for 11ms storage 50G peak for 11ms weight 1756 M1 2 5 0z 1756 M2 2 5 0z 1756 M3 2 7 oz agency certification when product or packaging is
13. DINT to REAL Data precision could be lost Both data types store data in 32 bits but the REAL type uses some of its 32 bits to store the exponent value If precision is lost the controller takes it from the least significant portion of the DINT REAL to SINT INT or DINT The controller rounds the fractional part and truncates the upper portion of the non fractional part If data is lost the controller sets the overflow status flag Rounding is to the nearest even number less than 5 round down equal to 5 round to nearest even integer greater than 5 round up For example REAL source DINT result 2 5 2 2 5 2 1 6 2 1 6 2 1 5 2 1 5 2 1 4 1 1 4 1 The controller cannot convert data to or from the BOOL data type Specifying bits In addition to using BOOL type tags to specify a bit you can use bit specifiers within integer type tags SINT INT and DINT The bit specifier identifies a bit within the tag The bit specifier range depends on the data type Data Type Bit Specifier Range SINT 0 7 INT 0 15 DINT 0 31 Using Structures Organizing Data 4 9 To specify a bit within an integer specify x y where This Is X integer tag name specifies that a bit reference follows encloses a bit reference only needed for a non numeric bit reference y bit reference The bit reference can be an immediate number a tag or an expression You can use these operators to sp
14. Data type Description AXIS control structure for an axis CONTROL control structure for array file instructions COUNTER control structure for counter instructions MESSAGE control structure for the MSG instruction MOTION GROUP control structure for a motion group MOTION INSTRUCTION control structure for motion instructions PID control structure for the PID instruction TIMER control structure for timer instructions 1 These structures do not support arrays cannot be nested in user defined structures and cannot be passed to other routines via a J SR instruction These are controller only tags Naming tags Tag names follow IEC 1131 3 identifier rules and e must begin with an alphabetic character A Z or a z or an underscore _ e can contain only alphabetic characters numeric characters and underscores e can have as many as 40 characters e must not have consecutive or trailing underscore characters _ Tag names are not case sensitive You can also add descriptions to tags Descriptions can have as many as 120 characters You can use any printable character Entering tags You use the programming software to create tags You can either create a tag individually or through the Edit Tags tab of the data monitor Organizing Data 4 5 Whichever method you choose to create a tag you define In this field Enter Name Enter the name of the tag Description Enter the description of the tag optional
15. A Place the cursor over the Controller quick_start folder ___yy B Click the right mouse button and select Properties Fe are Wy Conincdies Ful Poanip Har J Trier MisnT sak Pani O Contain Mopani gaich iari Harara Daalia Conners Sarai Part Geid Por Protocol Moos Finis Mie Fouts ad Fie i Era Desn A View Serial Port Protocol Prato iim Epe cpe B Select DF1 Pt to Pt kaen Baker E FF Erabi Dupi ais Dietinis PANE Fiaa Lira E EHO Tresurd irsi E O o J c a l continued 1756 6 5 12 March 1999 Getting Started 1 19 Download a project continued 3 Turn the controller s keyswitch to PROG and then back to REM RUN M a 1 0 mies see chapter 5 and Make sure the keyswitch is in the REM position sa ang chapter 8 This places the controller in Remote Program mode 4 Select Communications Configure I a gt ala a mle mere rA Pa Eii Diri Ere AE DFii Lonel quack otart a Drini Tage Conioka Fut Hardie Pranlip Hanie Tory 5 Select the DF1 communication protocol Wokototen phen Licks Opeien FortiTokt Teg Depis Pdserces Tonanunec stint Lacidier piapia c oF Bent t A Select A B DF1 gt oon pe Leave the connection z path blank z Important The DF1 driver only shows as a communication choice if you have already configured a DF1 driver using RSLinx communication sof
16. Tag Type Select one of these Base normal tag Alias tag that references another tag or part of another tag Consumed tag whose value is produced by another controller Data Type Select the data type The programming software displays a list of the available data types The list consists of the predefined data types and any user defined data types If the tag is to be an array specify the number of elements in each dimension There can be as many as 3 dimensions If the tag is not an array or you do not want all 3 dimensions set the dimension fields to zero 0 Scope Select the scope in which to create the tag You can select controller scope or one of the existing program scopes Display Style Select the display style of the tag The programming software displays a list of the available styles which depends on the data type The style you select becomes the default display type when monitoring that tag with the programming software Produce this tag Select whether to make this tag available to other controllers Specify how many controllers can consume the tag To create a tag individually Select File gt New Component Tag o Hilaga SHAI sampin_pogeam F Ld ieee Geach Loge ormo ro ir Define the tag Tapes Ff Bee i Comune tte lt f oop vrevic_pesp wel cri eis X ae ee Fad 1756 6 5 12 March 1999 4 6 Organizing Data To create a tag from the Edit Tags tab of the da
17. Chapter 7 Using This Chapter oriri vied adatcd iy eedad eee gars 7 1 How the ControlLogix System Uses Connections 7 1 Determining Connections for I O Modules 7 2 Direct connections for I O modules 7 2 Rack optimized connections for I O modules 7 4 Combining direct and rack optimized connections 7 5 Determining Connections for Produced Consumed Tags 7 6 Connections for produced tagS sc evens 7 6 Optimizing produced tagS c0 ccc ee eens 7 7 Connections for consumed tagS eee e eee 7 7 Determining Connections for Messaging 005 7 7 Determining Total Connection Requirements 7 8 Chapter 8 Using This Chapter a sein asuaan aaa 8 1 Using RS 232 a aana a a a aa 8 1 Connecting to the Serial Port nannu naana aa 8 2 Configuring the controller to use the serial port 8 3 Using the DF 1 Serial Protocol v s sis svesssase va saws 8 4 Master slave communication methods 8 5 Configuring Serial Communications 000 8 5 Configuring a DF1 point to point station 8 6 Configuring a DF1 slave station 000 8 7 Configuring a DF1 master station 00 8 8 If you choose one of the standard polling modes 8 9 Chapter 9 Using This Chapters 5 4543 Paes hated tye ieee eas 9 1 Configuring Communications to the Controller 9 1 Defining Connection Paths ccc cece eee 9 2 Connection path exa
18. If you use the power up handler a program is defined and the controller powers up in Run mode the controller sets major fault type 1 code 1 The power up handler must clear the major fault for the controller to operate normally Otherwise the controller enters its faulted mode shuts down If you do not use the power up handler no program is defined the controller stays in Run mode if it powers up in Run mode The controller begins executing logic 1756 6 5 12 March 1999 Preparing a Power Up Program Processing the power up handler power up in Run mode no power up handler program major fault type 1 code 1 occurs controller logs major fault to power up program MajorFaultRecord execute power up handler fault cleared yes l controller begins executing 1756 6 5 12 March 1999 controller powers up correctly controller stays in Run mode and begins executing logic enter faulted mode record FAULTLOG Preparing a Power Up Program 13 3 Creating the Power Up Handler The power up handler is an optional task that executes when the controller powers up in Run mode The power up handler can have only one program That one program can have multiple routines To configure a power up program either create a program for the power up handler or select an unscheduled program For more information about creati
19. T or t Descriptions 10 1 BOOL Data Type Tag variable definition 10 2 SINT Data Type Tag variable definition 10 3 INT Data Type Tag variable definition 10 4 DINT Data Type Tag variable definition 10 10 REAL Data Type Tag variable definition 10 12 Time Tag variable definition TIMER Structure 11 1 Data type Hierarchy none 12 1 Direct Derivation from elementary types User Defined data type structures 12 4 Array data types Tag variable definition 12 5 Structured Data types User defined data type structures 13 1 BOOL SINT INT DINT initial value of 0 Tag variable definition 13 4 REAL LREAL initial value of 0 0 Tag variable definition 13 5 Time initial value of T 0s Tag variable definition reset RES instruction 13 9 Empty String Descriptions 14 1 Initialization of directly derived types Import export 14 4 Initialization of array data types Import export 14 5 Initialization of structured type elements Import export 14 6 Initialization of derived structured data types Import export 20 1 Use of EN and ENO for LD Function present in ladder but not labeled 21 1 Overloaded functions ADD INT DINT or ADD DINT All instructions overloaded types that are supported REAL documented with each instruction 22 1 _TO_ conversion function RAD DEG instructions Radians to from Decimal Others not needed because of instruction overloading 22 3 BCD to INT Convert FRD instruction 22 4 INT to BCD Convert TOD instruction 23 2 Squa
20. Warning This structure is being referenced Modifications will result in loss of data Name FautRecordT ype Size 44 byte s Description R f Members ae elpa Jove __ creep o TimeLow DINT o TimeHigh DINT Decimal T Type INT Decimal Code INT Decimal E ino DINT 8 Decimal The example logic also uses a DINT array named TABLE with 10 elements TABLE 10 1756 6 5 12 March 1999 Troubleshooting A 11 Main Routine ATTENTION THIS RUNG MUST BE PRESENT TO ENSURE THE FAULT ROUTINE ONLY TRAPS THE CONDITION DURING PRESCAN Because this rung is unconditional the bit will always be set while the program is running When the CPU is switched from program to run the prescan resets all bits referenced by OTE instructions The status from this bit is used by the fault routine to determine if the fault occured during prescan or during the normal program scan as long as the fault routine is set up properly This is useful for recovering from prescan errors that can occur when tags used as pointers indirectly reference arrays that have not been initialized yet CPU_Scanning After the first scan you can force this value beyond the array limits and cause the controller to major fault and shutdown S FS MOV Move Source 0 Dest pointer 256 This rung performs an indirect reference using the pointer above Note that this rung does not fault the controller during prescan because inst
21. cr bha mpat rexha For Hha E Coran powaat wan Fa EtctoncEaprg ocra a Click OK Ce et J The tabs that appear depend on the type of module From this tab You can General modify the properties for the current module Connection define controller to module behavior select requested packet interval choose to inhibit the connection to the module e configure the controller so loss of connection generates a major fault e view module faults online only Module Info online only view module identification and status information reset module to power up state Configuration configure the module Backplane online only view information about module s communication over the backplane clear module faults set transmit retry limit 1756 6 5 12 March 1999 1 12 Getting Started Viewing I 0 tags 1 View the module defined tags see chapter 3 Place the cursor on the Controller Tags folder p and double click The 1756 1B16 input module is in slot 1 The 1756 OB16E output module is in slot 2 t Click the Edit Tags tab continued 1756 6 5 12 March 1999 Getting Started 1 13 Creating other tags 1 Create a tag 3 Create tags see chapter 4 Enter the name of the new tag Tab to this column and select the data type 2 Select the data type Click OK Press Enter The software displays the tag Click to display the members O
22. e single dimension array of a user defined structure Organizing Data 4 11 Use the programming software to create your own structures BA Date Tepe Mee LTE C o cees ie For In this field Enter user defined structure Name Enter the name of the structure Description Enter the description of the structure optional each member of the Name Enter the name of the member structure Data Type Select the data type The programming software displays a list of the available data types The list consists of the predefined data types and any user defined data types Style Select the display style of the member The programming software displays a list of the available styles which depends on the data type Description Enter the description of the member optional You can create edit and delete user defined structures only when programming offline If you modify a user defined structure and change its size the existing values of any tags that use the structure are set to zero 0 Memory allocation for user defined structures The memory allocated for a user defined structure depends on the data types for each member within the structure Each member is allocated memory to start on an appropriate byte INT or DINT boundary This is different than tags which are always allocated as DINT You can optimize memory by combining data as members within a structure For example User Defined
23. voltage range voltage resolution oad maximum offset gain error analog voltage 200 kOhms 10V 16 bits 5 6 kOhms resistive minimum 25 mV 4 all other outputs type operating voltage maximum operating current solid state isolated relay contacts 24V dc nominal Class 2 source 26 4V 75 mA RTB screw torque cage clamp 5lb in 0 5 Nm maximum 1756 6 5 12 March 1999 C 6 Specifications Description Value conductors wire size 22 gauge 3 1mm minimum to copper 3 64 inch 1 2 mm insulation maximum category 123 temperature operating 0 to 60 C 32 to 140 F storage 40 to 85 C 40 to 185 F relative humidity 5 to 95 noncondensing agency certification when product or packaging is marked e Gi Class Division 2 Hazardous ce marked for all applicable directives 1 Maximum wire size will require the extended depth RTB housing 1756 TBE 2 Use this conductor category information for planning conductor routing as described in the system level installation manual 3 Refer to Programmable Controller Wiring and Grounding Guidelines publication number 1770 4 1 4 CSA certification Class Division 2 Group A B C D or nonhazardous locations 1756 6 5 12 March 1999 alias tag atomic data type array application base tag bidirectional connection binary bit Glossary This glossary is specific to ControlLogix terms For a c
24. 1 8 16 or 32 bits When displayed every group of three digits is separated by an underscore for legibility See binary decimal hexadecimal The controller that creates the primary configuration and communication connection to a module The owner controller writes configuration data and can establish a connection to the module See listen only connection A description of the devices and networks between one device and another A connection from one device to another follows the specified path See connection A task that is triggered at a specific time interval Whenever the time interval expires the task is triggered and its programs are executed There can be as many as 32 periodic tasks in the controller See continuous task A condition that occurs when an instance of one task is executing and the same task is triggered again The execution time of the task is greater than the periodic rate configured for the task See periodic task A structure data type that stores related information for a specific instruction such as the TIMER structure for timer instructions Predefined structures are always available regardless of the system hardware configuration See product defined structure A function of the controller where the logic is examined prior to execution in order initialize instructions and data The controller performs prescan when you change the controller from Program mode to Run mode 1756 6 4 1 March 1999
25. Communication The programming software displays the current Format communication format You cannot change the selection from here you must delete the module and re create it with a different selection Electronic Keying The programming software displays the current electronic keying method Change this method if necessary Connection Requested The programming software displays the current RPI Packet Interval setting Edit the RPI if necessary You can select from 0 1 750 0 msec Inhibit Module The programming software displays whether or not the module is inhibited Change this selection if necessary Major Fault The programming software displays whether or not the controller generates a major fault if the connection to this module fails Change this selection if necessary Module Info The programming software displays product and status information about the module You can reset the module There are no fields to select or enter data Configuration Enable Change of The programming software displays the current COS State setting for each I O point Change these selections if necessary Input Filter Time The programming software displays the current input filter time settings for the I O module Change these selections if necessary Backplane The programming software displays backplane status information There are no fields to select or enter data You can clear faults and reset the sta
26. Slot Number Enter the slot number where the module is installed Electronic Keying Select an electronic keying method Configure another 1756 CNB communication module this time for the communication module you just configured This module handles communication for the remote chassis Specify Witek Properties enb mahia 17550868 1 1 Ea Comf iach pirri E msn OO E eas oaia E In this field Enter Name Enter a name for the module required Node Enter a ControlNet node number for the module Description Enter a description for the module optional Chassis Size Enter the number of slots in the chassis that contains the module Communication Format Select controller ownership of the module by selecting the communication format Electronic Keying Select an electronic keying method 1756 6 5 12 March 1999 6 12 Communicating with Other Controllers 1 Select the remote communication module 3 Identify a Logix5550 controller processor for the remote 2 Click the right mouse button and select 1756 CNB module This controller can share system data with New Module the local Logix5550 controller Specify Hobel Poaperteed ecto onb PSE 0 4 x face ita o m In this field Enter Name Enter a name for the controller required Description Enter a description for the module optional Slot Number Select the slot number where the module is installed Electronic Keying Electroni
27. destination tag array 1 The PLC 5 PLC 3 and SLC processors support logical ASCII addressing so you do not have to map a compatibility file for MSG instructions initiated by a PLC 5 PLC 3 or SLC processor Place the Logix5550 tag name in double quotes You could optionally map a compatibility file For example if you enter 10 for the compatibility file you enter N10 0 for the destination tag PLC 2 writes to Logix5550 source element 010 destination tag 200 The destination tag is the three digit PLC 2 address you specified for PLC 2 mapping PLC 5 reads from Logix5550 SLC reads from Logix5550 SLC 5 05 SLC 5 04 0S402 and above SLC 5 03 0S303 and above source tag array_1 destination element N7 10 The PLC 5 PLC 3 and SLC processors support logical ASCII addressing so you do not have to map a compatibility file for MSG instructions initiated by a PLC 5 PLC 3 or SLC processor Place the Logix5550 tag name in double quotes You could optionally map a compatibility file For example if you enter 10 for the compatibility file you enter N10 0 for the source tag PLC 2 reads from Logix5550 source tag 200 destination element 010 The source tag is the three digit PLC 2 address you specified for PLC 2 mapping When the Logix5550 controller initiates messages to PLC or SLC controllers you do not have to map compatibility files You enter the data table address of the target device just a
28. or REAL Logix5550 reads from PLC 5 source element N7 10 for PLC 5 typed read S B N or F for PLC 5 word range read S B N F I O A or D for SLC B or N for PLC 5 SINT INT DINT or REAL Logix5550 reads from SLC or MicroLogix1000 destination tag array_1 for SLC INT You can use an alias tag for the destination tag If you want to start at an offset within an array use an alias to point to the offset Logix5550 reads from PLC 2 source element 010 SINT INT DINT or REAL destination tag array_1 1756 6 5 12 March 1999 Typed read command 16 bit words in PLC 5 processor The typed commands mai c gt Communicating with Other Controllers 6 3 The Logix5550 controller can send typed or word range commands to PLC 5 controllers These commands read and write data differently The following diagrams show how the typed and word range commands differ 32 bit words in Logix5550 controller ntain data structure and value Word range read command 16 bit words in PLC 5 processor c gt The word range commands fi structure and value change depending on the destination data type 32 bit words in Logix5550 controller the destination tag contiguously Data The Logix5550 controller can process messages initiated from PLC or SLC processors These messages use data table addresses In order for these processo
29. see chapter 3 D Contnoliea fmk Marae E Poveer U p Harir Tie ad Posi Tak 3 han Peg A Popara Tage T ManFicuins O Uretadusi Progr B aTa ipg Uair z UE Perac i Log bhira zir A Place the cursor over the I O Configuration folder p B Click the right mouse button and select New Module ui cae 2 Select an output module to add Cordell ogo Peogpararsabin Lonkie dai Arai E nailer See ea 1G Road Sy A Cupp TSE 416 16 Pond RE AC broteted Duet TEHA a Pini NR A uiad THD 0 Poni Pie 1 AC D iaga Guipa THAE J Poar Pia E AC Electoral Fund Dapat pny dona Select a catalog number IE OBNED 16 Pond FIDEI DE Di For this quick start example select 1756 0B16E 5 TEEAE1E 18 Pond WAI DE isolated Dapat Sani anen VORE 22 Ped MV OC Dapid Teow A Prini 1 DD ipat Click OK continued 1756 6 5 12 March 1999 1 10 Getting Started Adding a local output module continued 3 Identify the output module These screens are specific to the 1756 OB16E output module om Hew Models Lica 1756 0 ial 2 1 VPA E 16 Pome WS 2 DC E kipiga Fie Alrae Comparg Inc Vt Wend Pont Local Ae rerna pt Ser fF a Caucnipdionc Crem Forat You should enter a name Verify the slot number p Describe the module optional a Bir i he mapai recede Pe the Select the communication format Specify electronic keying py Click Next 4
30. 1 2 34 34 34 34 1 2 2 8 24 1 3 1 backplane port of the Logix5550 controller in slot 3 of the local chassis 0 slot number of the 1756 CNB module in the local chassis 2 ControlNet port of the 1756 CNB module in slot 0 of the local chassis 42 ControlNet node of the 1756 CNB module in slot 0 of the remote chassis 1 backplane port of the 1756 CNB module in slot 0 of the remote chassis 1 slot number of the 1756 ENET module in the remote chassis 2 Ethernet port of the 1756 ENET module in slot 1 of the remote chassis 34 34 34 34 IP address of the 1756 ENET module in slot 1 of the local chassis 1 backplane port of the 1756 ENET module in slot 1 of the local chassis 2 slot number of the 1756 DHRIO module in the local chassis 2 Channel A of the 1756 DHRIO module in slot 2 of the local chassis configured for DH 8 24 DH node of the 1756 DHRIO module in slot 2 of the remote chassis 1 backplane port of the 1756DHRIO in slot 2 of the remote chassis 3 slot number of the controller in the remote chassis 1756 6 5 12 March 1999 9 6 Communicating with a Workstation Notes 1756 6 5 12 March 1999 Using This Chapter Introduction Chapter 10 Integrating Motion For information about See page Developing a Motion Control Application Program 10 2 Writing a Motion Application Program 10 12 The Logix5550 controller 1756 M02AE servo module and RSLogix5000 programming software provide integrat
31. 10 6 Integrating Motion 1756 6 5 12 March 1999 Assign a motion group If Then You want to create a new motion group Go to step 4 You want to use an existing motion group Go to step 6 Integrating Motion 10 7 4 Create anew motion group click New Group Important During configuration you must name and configure a motion group which results ina MOTION GROUP tag After configuring the motion group you can assign your axes to your motion group For more information on the MOTION GROUP tag see appendix C Structures in the Logix5550 Controller Instruction Set Reference Manual publication 1756 6 4 1 5 Specify this information Make sure you enter a group name Hars I Badu thi tagia up in Sf aaa pe ooo Le oOo d we eg r mj In this field Enter Name Enter the name of the motion group Description Enter a description of the motion group optional Click OK Go to step 6 1756 6 5 12 March 1999 10 8 Integrating Motion 6 Assign the axis to a motion group and specify this information foo Wired wojen tul Group Select the motion group ssreiNoxnmmo a gt me Ager igei reion iag Goana Fate Poo e erro peda Peet oo ur Garna Fut Type Hee aes Fink He corcet cme p F In this field Enter Assigned Motion Group Select the motion group Coarse Rate Select the update rate for your axis Servo U
32. 1999 faulted mode float The total time required for the execution of all operations configured within a single task If the controller is configured to run multiple tasks elapsed time includes any time used shared by other tasks performing other operations See execution time A feature of the 1756 I O line where modules can be requested to perform an electronic check to insure that the physical module is consistent with what was configured by the software Enables the user via the software to prevent incorrect modules or incorrect revisions of modules from being inadvertently used See compatible module disable keying exact match An addressable unit of data that is a sub unit of a larger unit of data A single unit of an array See array An electronic keying protection mode that requires that all attributes vendor catalog number major revision and minor revision of the physical module and the module configured in the software match in order to establish a connection to the module The total time required for the execution of a single program Execution time includes only the time used by that single program and excludes any time shared used by programs in other tasks performing other operations See elapsed time Real values displayed and entered in scientific or exponential format The number is always displayed with one digit to the left of the decimal point followed by the decimal portion and then by an exponent See
33. 4 11 memory expansion board 1 3 4 1 C 2 messaging connection 7 7 minor fault description 12 1 logic 12 5 12 7 processing 12 3 types and codes 12 8 mode A 8 module defined structure 4 10 motion adding a module 10 3 autotuning 10 11 configuring an axis 10 5 hookup diagnostics 10 11 integrating 10 1 naming an axis 10 4 selecting CST master 10 2 motion example 10 2 MSG instruction 6 1 multiple controllers 1 3 3 7 naming controller 2 2 I O module 3 5 program 5 9 1 routine 5 12 1 tag 4 4 task 5 6 2 17 13 3 2 19 13 6 Index l 5 0 operating system B 2 organizing data 4 1 organizing project 5 1 owner controller 3 7 ownership 3 7 P periodic task 5 2 5 3 pinouts C 3 power up in Run mode 13 1 power up handler 13 1 predefined structure 4 4 4 10 prescan operations A 9 producer connection 7 6 maximum number of produced and consumed tags 6 8 processing 6 7 system shared tag 6 6 program 13 4 configuring 5 10 configuring controller fault handler 12 18 controller fault handler 12 17 creating 5 9 defining 5 8 developing 5 1 naming 5 9 12 17 13 3 portability B 4 power up handler 13 1 13 3 scan time 1 21 scope 4 20 unscheduled 12 17 13 4 1756 6 5 12 March 1999 l 6 Index programming example coordinated system time 2 6 getting started 1 16 major fault 12 12 minor fault 12 5 monitoring forces 11 6 motion 10 2 power up 13 6 viewing I O module faults 3 22 programming language B 3 project
34. Adjust the value so it is gt 0 4 31 The parameters of the J SR instruction do not match Pass the appropriate number of parameters If too those of the associated SBR or RET instruction many parameters are passed the extra ones are ignored without any error 4 34 A timer instruction has a negative preset or Fix the program to not load a negative value into accumulated value timer preset or accumulated value 4 42 J MP to a label that did not exist or was deleted Correct the MP target or add the missing label 4 83 The data tested was not inside the required limits Modify value to be within limits 4 84 Stack overflow Reduce the subroutine nesting levels or the number of parameters passed 6 1 Task watchdog expired Increase the task watchdog shorten the execution User task has not completed in specified period of vi make the T of this task Hote o time A program error caused an infinite loop or the IGEN priority tas Ks 0f MOVE Some CONE Te NOU ET program is too complex to execute as quickly as controller specified or a higher priority task is keeping this task from finishing 8 1 Attempted to place controller in Run mode with Wait for the download to complete and clear fault keyswitch during download 11 1 Actual position has exceeded positive overtravel Move axis in negative direction until position is limit within overtravel limit and then execute Motion Axis Fault Reset 11 2 Actual position has exceeded negative overtra
35. Defining l O Updates n on u uaaa 3 2 How an I O module uses COS eee eee 3 2 How an I O module uses RPI eee eae 3 3 When an analog module uses RTS 005 3 3 How I O Modules Operate cc cece eee 3 3 1756 6 5 12 March1999 toc ii Table of Contents Organizing Data 1756 6 5 12 March1999 Configuring Local Oscrcha Pathan PatcPa Paha Paha Paha Paces 3 4 Naming modules auna a 3 5 Electronic keying nauau aa 3 6 Configuring communication format 3 7 Selecting controller ownership saaana 3 8 Inhibiting module operation n a aaaea 3 9 Configuring I O in a Remote Chassis 5 3 11 Changing Configuration Information 3 15 ACCESSING ai aa Taaa aaa a RA AAA E AA AAA 3 16 Example of local addressing o n unana 3 17 Example of remote addressing naau 3 18 Defining aliases nunnana a naran 3 19 Viewing Module Fault Information 0005 3 19 Using the programming software to view O faults 3 21 Using logic to monitor I O faults n anaana 3 22 Chapter 4 Using This Chapter soraa a aa aa a a dint 4 1 How the Controller Stores Data 0 cee eae 4 1 Creating TAS verais a a Aa a A A A A A t 4 2 Datatypes aea cadre ee ae dat 4 3 Naming BL eee aa aa 4 4 Entering tags 6 of aah tac at tad al atta dnl ate a 4 4 Using Base Tags nuuanu aaa 4 6 Memory allocation for base tags naana 4 6 Data type CONVErSIONS cee eee eee
36. Eais cat Ea Eea AE eee ees And Then Your controller uses a motion axis Select Make this controller the master Select OK No other controllers in your chassis are configured as the master controller Your controller uses a motion axis Another controller in your chassis is Select OK configured as the master controller Integrating Motion 10 3 Adding a 1756 M02AE module To add a servo module open the new module window and select a 1756 M02AE module To open the new module window 1 Select I O Configuration 2 Click the right mouse button and select In the module properties window specify this information New Module Wobei Properties Local 1756 M0R8E 11 Fie Edi Yew Lak amp r Typ eae bo alja a eej o Paet Local rere 7 i Hare kia k is Eun ty al Deg a Chive AE DFTA N F GS Controle qech ai Duna srone z 2 crt Tap lt 3 d ree Gontncdlies ma Hiari harali nore F Pran p Harde 1 eM Bese Emmen orte 5 2 Hon E hanai a j a e u O Unccthacieed hoger i Die Tre E Uieir Da iaaii In this field Enter airs E Name Enter the name of the servo module p eiman Description Enter a description of the servo module optional Slot Enter the slot number where the module is installed Revision Enter the revision number for this module Depending on the electronic keying option you choose the module checks the revision num
37. Hacks pajla el vai ABk Fa Bi Moe we a TEE Gell ne o M A Carisa Tam 3 pereg Beam h E teteretines ooa E 7 bia E Oe D Peas Tig D Hra irar gaja Prag pea lt i Oi aa L In this field Enter Name Enter a name for the module required Description Enter a description for the module optional Slot Number Enter the slot number where the module is installed Electronic Keying Select an electronic keying method 1 Select the local communication module 2 Confi ee dul Apion eth t 2 Click the right mouse button and select Configure a communication module or adapter for the remote New Module chassis to communicate with the module you just configured This module handles communication for the remote chassis Then specify this information Meelis Propet crb mgiba 15 088 1 17 1756 6 5 12 March 1999 Configuring 1 0 Modules 3 13 In this field Enter Name Enter a name for the module The name of a communication module is required The programming software uses the name to create tag names for I O in the chassis Description Enter a description for the module optional Slot Number Enter the slot number where the module is installed Communication Format Select one of the communication formats supported by the module The format determines the I O communication method For more information on I O communications see chapter 7 Node Enter the node number of th
38. Lakia p r Fonok Teg Dipi Preterea Crna i aire Lakier Dispi e o Bme 1756 6 5 12 March 1999 9 2 Communicating with a Workstation In this field Enter Driver This is a display only field that describes the communication protocol of the selected driver Use the drop down menu to select the driver Only drivers that have been configured using RSLinx software appear The type of driver is reflected in the name of the driver e ControlNet AB_KTC DF1 AB_DF1 DH AB_KT Ethernet TCP Path This is the connection path to the controller you wish to communicate with from the communications card you are connected to The path consists of a sequence of decimal numbers separated by commas The field displays up to three lines for a long path and a scroll bar appears if the entire field cannot be displayed Recent This button navigates to the Recent Configurations dialog where you can choose from the recent configurations stored on the workstation Only those drivers that have been configured in RSLinx software can be used to communicate to the controller Defining Connection Paths For ControlNet and DH communications the connection path starts with the controller or the communications card in the workstation For Ethernet and DF1 communications the connection path starts with the communication module in the chassis The following steps construct a communication path Separate the number or address
39. Link For information about See page Connecting to the serial port 8 2 Using the DF1 serial protocol 8 3 Configuring serial communications 8 5 The controller supports RS 232 on the serial port Use RS 232 when you have e adata transmission range of up to 50 ft 15 2m e an application that requires modems or line drivers The maximum cable length for RS 232 communications is 15 2m 50 ft 1756 6 5 12 March 1999 8 2 Communicating with Devices on a Serial Link Connecting to the Serial Port The controller has a 9 pin serial port on the front panel 0 nVen EN EE Ey N ES taS EAS 1756 CP3 cable workstation end 20884 9 pin female D shell straight cable end controller end 9 pin female D shell i right angle cable end 1756 CP3 cable pinouts 1 CD 1 CD 2 RDX 2 RDX 3 TXD 3 TXD 4 DTR 4 DTR 5 COMMON 5 COMMON 40043 6 DSR 6 DSR j 7 RTS 7 RTS 8 CTS 8 CTS 9 RI 9 RI Note You can also use a 1747 CP3 cable from the SLC product 40046 family but once the cable is connected you cannot close the straight right angle controller door cable end cable end 1756 6 5 12 March 1999 Communicating with Devices on a Serial Link 8 3 Configuring the controller to use the serial port To c
40. Name Enter a name for the tag Description Enter a description for the tag optional Tag Type Select Consumed tag that receives data from a producing tag in another controller Controller Select the name of the other controller You must have already created the controller Remote Tag Name Remote Instance in the controller organizer for the controller name to be available Enter a name for the tag in the other controller you want to consume Important The name must match the name in the remote controller exactly or the connection faults If the remote controller is a ControlNet PLC 5 this field is Remote Instance Select the instance number 1 128 of the data on the remote controller RPI requested packet interval Enter the amount of time in msec between updates of the data from the remote controller The local controller will receive data at least this fast Data Type Select the data type The programming software displays a list of the available data types The list consists of the predefined data types and any user defined data types If the tag is an array specify the number of elements in each dimension There can be as many as 3 dimensions If the tag is not an array or you do not want all 3 dimensions set the dimension fields to zero 0 Display Style Produce this tag If you are creating a consumed tag that refers to a tag whose data type is BOOL SINT INT DINT or REAL you can select a display s
41. OK The software displays ea a Bes SS amera NI 1756 6 5 12 March 1999 1 6 Getting Started Changing project properties 1 View properties for Controller quick_start A Place the cursor over the Controller quick_start folder p i B Click the right mouse button and select Properties 2 View the General tab The screen defaults to the General tab Verify that the controller settings are p correct Make changes if necessary Fie Ed yea pesh Loge powari alle a e ki Edi see chapter 2 emer AE DFii A Cini Tay Ea Conii Fed Poran lip Har l Tri J seri T sak D Carroka Properties quack ulewt BE Ei Send Poi Protocol Mapri Mirci darca Fis Gead Dee Commn O aeia e Wardar Mai diag Company inc Tre 15EL1 Proguarmatia Conircier moppen he q a nope corded gee ba ha oud rig E E Sige Pmi E Chagas Tyne Faas Glo Oh r Fiii 10 es a You can modify the controller name description and controller properties for the current project Click OK From this tab General Date Time online only view and edit the controller s wall clock time and the coordinated system time status Communications configure communication information that is stored with the project file Serial Port view and configure the serial port on the controller Serial Port Protocol configure the serial port for DFI point to poi
42. and controller properties for the current project Date Time view and edit the controller s wall clock time and the coordinated system time status Communications configure communication information that is stored with the project file Serial Port view and configure the serial port on the controller Serial Port Protocol configure the serial port for DFI point to point DFI slave DFI master Major Faults view any major faults that have occurred on the controller Minor Faults view any minor faults that have occurred on the controller Advanced view and edit advanced controller properties which include the system fault program the power loss program and system overhead time slice File view information about the project file 1756 6 5 12 March 1999 A 6 Troubleshooting 1756 6 5 12 March 1999 Keyword S V Status Flag overflow Monitoring status flags The controller supports status keywords you can use in your logic to monitor specific events Description Overflow is set if the value you are storing cannot fit into the destination Either the value is greater than the maximum value for the destination or the value is less than the minimum value for the destination Important Each time S V goes from cleared to set it generates a minor fault type 4 code 4 S Z zero Zero is set if the instruction s destination value is 0 S N sig
43. and produced consumed tags The added memory is dedicated to logic and tag storage Controller with memory expansion board 1756 L1Mx processes O 160 Kbytes processes produced consumed tags added memory stores tags stores program logic Creating Tags The Logix5550 controller uses tags for storing and accessing data A tag is similar to a variable as used by programming languages A tag has a name that describes the data the tag stores and a data type that identifies the size and layout of data the tag can store The controller stores tags as you create them and as they fit into the controller memory There are no pre defined data tables such as in PLC controllers The Logix5550 controller uses its memory more efficiently by storing tags as needed and where they best fit in memory Tags of similar data types are not necessarily grouped together in memory If you want to group data use an array There are three types of tags Tag Type Description base A base tag is a tag that actually defines the memory where a data element is stored alias An alias tag is a tag that references memory defined by another tag An alias tag can refer to a base tag or another alias tag Alias tags are useful for creating standardized programs that can be duplicated without having to readdress instructions By using alias tags each copy of the program can reference different base tags consumed A c
44. appropriate location in it s own big_array After the backup controller finishes copying the packet the backup controller sets the acknowledge word of backup_ack array equal to zero and sets the packet_ID element of backup_ack array equal to the packet_ID of the packet This signals the primary controller that the backup controller has finished copying the packet When the primary controller sees that the packet_ID of backup_ack is equal to the current value of the packet_ID the primary controller then resets the acknowledge word of the packet equal to zero The primary controller can now build the next packet This cycle of building and producing packets continues until the packet_ID value returned in backup_ack added to 123 is greater than or equal to the size of big_array When this is true the packet_ID in the packet is set equal to zero to start rebuilding packets starting at the beginning of big_array Because the final packet might be right at the end of big_array be sure that you create big array to be at least 122 elements larger than the largest amount of data you will ever want to transfer This ensures that you will never end up trying to copy more elements from or into big_array than really exist Produced data over the ControlBus backplane gets sent in 50 byte segments This is asynchronous to the program scan in the controller You need the acknowledge words to make sure that each controller is complete with it s copying bef
45. but routines in other programs cannot access these program tags See routine task Data accessible only within the current program Each program contains a collection of tags that can only be referenced by the routines and alias tags in that program See controller scope The file that the programming software uses to store a controller s logic and configuration See application An I O connection where the 1756 CNB module collects digital I O words into a rack image similar to 1771 ASB A rack optimized connection conserves ControlNet connections and bandwidth however limited status and diagnostic information is available when using this connection type See direct An atomic data type that stores a 32 bit IEEE floating point value A ControlLogix feature that allows a user to install or remove a module while chassis power is applied requested packet interval RPI routine scan time scope SINT structure style system overhead timeslice tag When communicating over a the network this is the maximum amount of time between subsequent production of input data Typically this interval is configured in microseconds The actual production of data is constrained to the largest multiple of the network update time that is smaller than the selected RPI The selected RPI must be greater than or equal to the network update time A routine is a set of logic instructions in a single programming language such as
46. changing properties 2 2 controller organizer 2 3 creating 2 1 developing 5 1 downloading 1 18 5 16 file extension 2 1 getting started 1 5 organizing 5 1 properties 1 6 Saving 2 4 uploading 2 4 R rack optimized connection 7 4 referencing members 4 12 remote example I O addressing 3 18 I O module 3 11 removal and insertion under power 1 2 requested packet interval 3 3 RIUP 1 2 routine configuring 5 12 configuring controller fault handler 12 19 configuring power up handler 13 5 creating 5 11 defining 5 11 naming 5 12 12 19 13 6 program fault 12 9 12 16 RPI 3 3 1756 6 5 12 March 1999 Saving project 2 4 Save vs Save aS 2 4 scan time program 1 21 scope 4 20 Serial 1756 CP3 cable C 3 cable pinouts C 3 communicating 8 1 configuring DF1 protocol 8 5 configuring port 8 3 connecting to controller serial port 8 2 DF1 protocol 8 4 master 8 8 point to point 8 6 RS 232 8 1 Slave 8 7 Slave master communication 8 5 specifications 1756 BA1 C 3 1756 CP3 cable C 3 battery C 3 controller C 1 memory expansion board C 2 serial cable pinouts C 3 specifying bits 4 8 storing data 4 1 structure introduction 4 9 memory allocation 4 11 module defined 4 10 predefined 4 10 referencing members 4 12 user defined 4 10 system overhead 5 15 system shared tag connection for consumed tag 7 7 connection for produced tag 7 6 introduction 6 6 maximum number of produced and consumed tags 6 8 processing 6 7 T tag c
47. data types and sizes must be the same as shown below Name FaultRecord Size 44 byte s oe User Defined Type created to simplify access to fault a Bisesti record information obtained from GS of Program fault record information 7 Members heeel e Description TimeLow DINT Decimal Low 32 bits of fault timestamp value TimeHigh DINT Decimal Upper 32 bits of fault timestamp value Type INT Decimal Fault Type Program 1 0 etc Code INT Decimal Unique by type Code for the fault Info DINT 8 Hex Fault Specific information content varies by type and code 2 Usea GSV instruction to get the MAJORFAULTRECORD of the power up program THIS The destination should be a tag of the user defined structure type you created GSV Get system value Object class PROGRAM Object name THIS Attribute name MAJORFAULTRECORD Dest MyFaultR ecord TimeLow D The Destination tag must point to the first member of the structure MyFaultRecord TimeLow This tag is of the structure type you define to hold fault information 1756 6 5 12 March 1999 Preparing a Power Up Program 13 7 3 Examine the fault type and code to determine which fault occurred and take appropriate action MajorFaultBits record in the FAULTLOG object 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 40 power up
48. default e in polling sequence Normal poll node tag Standard polling modes only An integer array that contains the station addresses of the slave Stations in the order in which to poll the stations Create a single dimension array of data type INT that is large enough to hold all the normal station addresses The minimum size is three elements This tag must be controller scoped The format is list 0 contains total number of stations to poll ist 1 contains address of station currently being polled ist 2 contains address of first slave station to poll ist 3 contains address of second slave station to poll ist n contains address of last slave station to poll _ gt aaa Normal poll group size Standard polling modes only The number of stations the master station polls after polling all the stations in the priority poll array Enter 0 default to poll the entire array 1756 6 5 12 March 1999 Communicating with Devices on a Serial Link 8 9 This field Description Priority poll node tag Standard polling modes only An integer array that contains the station addresses of the slave stations you need to poll more frequently in the order in which to poll the stations Create a single dimension array of data type INT that is large enough to hold all the priority station addresses The minimum size is three elements This tag must be controller scoped The format is list 0 contains total number of st
49. displays a yellow attention symbol over the device and over the I O Configuration folder If the module is inhibited the controller organizer displays an attention symbol only over the device Connection tab from The module fault field displays the fault code returned to the controller related to the module properties module and the text detailing the fault Common categories for module errors are Connection request error The controller is attempting to make a connection to the module and has received an error The connection was not made Service request error The controller is attempting to request a service from the module and has received an error The service was not performed successfully Module configuration The configuration in the module is invalid This is rejected commonly caused by two unmatched owners Module key mismatch Electronic keying is enabled and some part of the keying information differs between the software and the module 1756 6 5 12 March 1999 3 20 Configuring 1 0 Modules Each I O module has status bits that indicate when a fault occurs Your logic should monitor these status bits If any faults exist your application should take appropriate action such as shutting down the system in a controlled manner You can configure modules to generate a major fault in the controller if they lose their connection with the controller iS Module Mopartion Lecat 1750 0010 21 Gene
50. ees 4 8 SUCENVING DIES ereere a A A AAAA 4 8 USING Struct r S oi oth bie bob bid bods bee She 4 9 Predefined structures ccc ceee cence ees 4 10 Module defined structure cc ccc eens 4 10 User defined structure 0 cece eee ees 4 10 Memory allocation for user defined structures 4 11 Referencing members within a structure 4 12 Viewing an Array as a Collection of Elements 4 13 Indexing through arrays s an 0 ccc cece eee eee 4 14 Specifying Bits Within ArrayS 0c cee 4 15 Viewing an Array as a Block of Memory 4 15 How the controller stores array data 4 16 Varying a dimension 0c cece eee ees 4 17 Memory Allocation for ArrayS 0 cece eee 4 17 Aliasing Vad Sictuc ca soat a tata tay tadatadty teas 4 19 SCODING PaCS atiea nade dad iau amma tun EEEE 4 20 Scoping tags local toa program 000 ee 4 21 Scoping tags global to a controller 4 21 Table of Contents toc iii Developing Programs Chapter 5 Using This Chapter aua0 oa cida dia didadienan 5 1 Organizing Projects aaau 5 1 Defining TASKS e rerna ra riaa aA AARAA at 5 2 Using a continuous task a2 a na aaa 5 3 Using a periodic task o a 5 3 Greating tasKSicsi aa a 5 5 Naming tasks nnna a uuaa 5 6 Configuring TASKS aaua 5 6 Setting the task watchdog naana 5 8 Avoiding periodic task overlap aaao 5 8 Defining Programs sitsuesteansah tats kaa 5 8 Cr
51. entered in each step with a comma All numbers are in decimal by default You can enter any number other than an Ethernet IP address in another base by using the IEC 1131 prefix 8 for octal 16 for hexadecimal Ethernet IP addresses are always decimal numbers separated by periods If you are using a DF1 point to point connection directly from the workstation to the serial port of the controller leave the path blank To construct the path you enter one or more path segments that lead to the controller Each path segment takes you from one module to another module over the ControlBus backplane or over a DH ControlNet or Ethernet network 1756 6 5 12 March 1999 Communicating with a Workstation 9 3 Each path segment contains two numbers xy Where This Is X number of the type of port you use to exit from the module you are at 0 DH port from a KT KTx or KTXD card 1 ControlBus backplane from any 1756 module 2 DF1 port from a 1756 L1 controller 2 ControlNet port from a KTC card or a 1756 CNB module 2 Ethernet port from a 1756 ENET module 2 DH port over channel A from a 1756 DHRIO module 3 DH port over channel B from a 1756 DHRIO module separates the starting point and ending point of the path segment y address of the module you are going to For Address means ControlBus backplane slot number DF1 network serial port station address 0 254 ControlNet network node number 1 99 decimal DH network node number
52. how often the local controller consumes the tag 1756 6 5 12 March 1999 producer Communicating with Other Controllers 6 7 Processing produced and consumed tags The producer and consumer must be configured correctly for the specified data to be shared A produced tag in the producer must be specified exactly the same as a consumed tag in the consumer In the following example consumer_2 does not have the correct tags consumer 1 Consumed tag names Produced tag names B o oj wv gt A D consumer 2 Consumed tag names n E B C D consumer 3 Consumed tag names B c D When consumer _2 tries to access the shared tags the connections fail Even though three of the tags are specified correctly B C and D the connections fail for all the consumed tags because one was incorrect E The other consumers consumer_1 and consumer_3 can still access the shared tags as long as their tags are specified correctly One consumer failing to access shared data does not affect other consumers accessing the same data 1756 6 5 12 March 1999 6 8 Communicating with Other Controllers 1756 6 5 12 March 1999 Maximum number of produced and consumed tags The following table shows the total number of produced and consumed tags a controller supports Asa The controller supports consumer
53. is also used for the project file with an ACD extension The name is required Chassis Type Select the type of chassis that contains the controller Use the pull down menu to select from the available types Slot Number Select the slot number where the controller is installed Description Enter a description of the controller optional Create In Select where to store the project file on the hard drive of your workstation You can use the default which was configured when the software was installed or specify a different location 1756 6 5 12 March 1999 2 2 Working with Projects Changing Project Properties 1 Place the cursor over the Controller folder 2 Click the right mouse button and select Properties oS Lege H00 quark siat Ee pd ye Beech Loge paman alale e e Dre E DFii a Dmi Tay Vedy Naming controllers Controller names follow IEC 1131 3 identifier rules and e must begin with an alphabetic character or an underscore _ e can contain only alphabetic characters numeric characters and underscores e can have as many as 40 characters e must not have consecutive or trailing underscore characters _ You can also add a description Descriptions can have as many as 128 characters You can use any printable character To change the properties of a project such as name or controller type specify this information O Cantiolke Propesties quack_slat BE Send Pod Pr
54. marked G G Class Division 2 Hazardous Marked for all applicable directives 4 CSA certification Class Division 2 Group A B C D or nonhazardous locations 1756 CP3 Serial Cable Pinouts 1756 BA1 Battery Specifications C 3 1 CD 1 CD 2 RDX 2 RDX 4 DTR 4 DTR COMMON COMMON 6 DSR 6 DSR 7 RTS lt a 7 RTS 8 CTS 8 CTS 9 RI 9 RI straight right angle cable end cable end 40046 The cable is shielded and tied to the connector housing at both ends The Logix5550 controller uses the 1756 BA1 battery 1756 BA1 Batt alt 0 59g lithium top no connection lt _ middle black lead bottom red lead 30167 Store the lithium battery in a cool dry environment typically 20 C to 25 C 68 F to 77 F and 40 to 60 relative humidity When not installed in the controller store the battery in the original container away from flammable materials 1756 6 5 12 March 1999 C 4 Specifications 1756 MOA2E Motion Module Description Value number of axes per Logix5550 controller 32 axes maximum maximum number of axes per coarse update rate coarse update rate max number of axes The coarse update rates assume that the servo is ae on for each axis and that each axis has an active ime i trapezoidal move For more informatio
55. occur that are not caused by motion instructions For example a loss of encoder feedback or an actual position exceeding an overtravel limit will cause faults The motion faults are considered type 2 faults with error codes from 1 to 32 For more information about handling error codes see chapter 11 Integrating Motion 10 15 Understanding a programming example The following figure shows several rungs of a motion control application program Rung 0 Enables the Feed and Cut axes when you press the servo_on button Rung 1 J ogs the Feed axis in the positive direction when you press the jog_plus button Rung 2 J ogs the Feed axis in the reverse direction when you press the jog_minus button t Rung 3 Stops the Feed axis when you release with the jog_plus button or the jog_minus button Erd 1756 6 5 12 March 1999 10 16 Integrating Motion Notes 1756 6 5 12 March 1999 Using This Chapter Forcing Chapter 11 Forcing I O For information about See page Forcing 11 1 Entering forces 11 2 Enabling forces 11 4 Disabling forces Removing forces 11 5 Monitoring forces 11 6 Forcing lets you override an I O module s values in the controller You can force e astructure member of an I O tag Since an I O tag is a structured tag the force is applied to its structure members of type BOOL SINT INT DINT or REAL You can force all I O data except for configuration data e
56. occurs type 4 code 20 1756 6 5 12 March 1999 4 16 Organizing Data How the controller stores array data The following table shows the sequential order of the elements in the examples on page 4 13 One Dimensional Array Elements Two Dimensional Array Elements Three Dimensional Array Elements ascending order one_d_array 0 one_d_array 1 one_d_array 2 one_d_array 3 one_d_array 4 one_d_array 5 one_d_array 6 For an array with only one dimension tag_name subscript_0 subscript_0 increments to its maximum value ascending order two_d_array 0 0 two_d_array 0 1 two_d_array 0 2 two_d_array 0 3 two_d_array 0 4 two_d_array 1 0 two_d_array 1 1 two_d_array 1 2 two_d_array 1 3 two_d_array 1 4 two_d_array 2 0 two_d_array 2 1 two_d_array 2 2 two_d_array 2 3 two_d_array 2 4 two_d_array 3 0 two_d_array 3 1 two_d_array 3 2 two_d_array 3 3 two_d_array 3 4 ascending order three_d_array 0 0 0 three_d_array 0 0 1 three_d_array 0 0 2 three_d_array 0 0 3 three_d_array 0 1 0 three_d_array 0 1 1 three_d_array 0 1 2 three_d_array 0 1 3 three_d_array 0 2 0 three_d_array 0 2 1 three_d_array 0 2 2 three_d_array 0 2 3 three_d_array 1 0 0 three_d_array 1 0 2 three_d_array 1 0 3 three_d_array 1 1 0 three_d_array 1 1 1 three_d_array 1 1 2 three_d_array 1 1 3 three_d_array 1 2 0 three_d_array 1 2 1 three_d_array 1 2 2 three_d_array 1 2 3 For an array with
57. packet_ID will have values of 0 123 246 etc The second word added element 124 is as acknowledge word 1756 6 5 12 March 1999 6 18 Communicating with Other Controllers 1756 6 5 12 March 1999 The primary controller creates a packet by determining what section of big_array to copy into the packet and setting the packet_ID equal to the first element location of that data section in the big array The primary controller then waits for the acknowledge word of the backup_ack array to be set equal to 999 by the backup controller which indicates that the backup controller has received a new packet The backup controller waits until it sees a value of the packet_ID element of the packet that is not equal to the previous value of the packet_ID This signals the backup controller that a new packet has started to be received The backup controller then sets the acknowledge word of backup_ack array equal to 999 and waits to see this 999 value returned by the primary controller in the acknowledge word of the packet When the primary controller sees that the backup controller has set the acknowledge word of backup_ack to 999 the primary controller moves the value of 999 into the acknowledge word of the packet Once the backup controller sees that the primary controller has set the acknowledge word of the packet to 999 the backup controller knows that it has received a complete copy of the packet and can copy that data into the
58. priority postscan produced tag product defined structure program program scope project rack optimized REAL removal and insertion under power 1756 6 4 1 March 1999 RIUP Specified precedence of task execution If two tasks are triggered at the same time the task with the higher priority executes first Priorities range from 1 15 with 1 being the highest priority If two tasks with the same priority are triggered at the same time the controller switches between the tasks every millisecond A continuous task runs at a fixed priority level that is lower than all the other tasks in the controller A function of the controller where the logic within a program is examined before disabling the program in order reset instructions and data A tag that a controller is making available for use by other controllers Produced tags are always at controller scope See consumed tag A structure data type that is automatically defined by the software and controller By configuring an I O module you add the product defined structure for that module A program contains a set of related routines and a collection of tags When a program is executed by a task execution of logic starts at the configured main routine That routine can in turn execute subroutines using the JSR instruction If a program fault occurs execution jumps to a configured fault routine for the program Any of these routines can access the program tags
59. priority task causing the total time to execute the task to exceed the watchdog timer value the controller generates a major fault The default watchdog timer is 500 msecs Priority If you defined a periodic task specify the priority of the task by entering a number from 1 to 15 The lower the number the higher the priority The number 1 is the highest priority the number 15 is the lowest priority Rate ms If you defined a periodic task enter the rate in msec at which the controller executes the task The valid range is 1 msec to 2 000 000 msec 2000 seconds 1756 6 5 12 March 1999 5 6 Developing Programs Naming tasks Task names follow IEC 1131 3 identifier rules and e must begin with an alphabetic character A Z or a z or an underscore _ e can contain only alphabetic characters numeric characters and underscores e can have as many as 40 characters e must not have consecutive or trailing underscore characters _ Task names are not case sensitive You can also add descriptions to tasks Descriptions can have as many as 128 characters You can use any printable character Configuring tasks Once you create a task there are other properties that you need to configure such as how the programs within the task execute You can prioritize the tasks up to 15 levels e The higher the number the lower the priority 15 is the lowest priority you can select for a periodic task e The continuous task has a non se
60. references bit 4 of the element 1st dimension holds 2 elements array3 1 3 2 2nd dimension holds 4 elements 3rd dimension holds 6 elements MyArray defined as SINT 100 MyArray M ylndex AND NOT 7 This example references a bit within an Mylndex defined as SINT 8 Mylndex AND 7 SINT array MyArray defined as INT 100 MyArray Mylndex AND NOT 15 This example references a bit within an Mylndex defined as INT 16 Myindex AND 15 INT array MyArray defined as DINT 100 MyArray M yindex AND NOT 31 This example references a bit within an Mylndex defined as DINT 32 Mylndex AND 31 DINT array Viewing an Array as a Block of Memory You can also use the operators shown in the table on page 4 14 to specify bits The data in an array is stored contiguously in memory The file array instructions typically require a starting address within an array and a length which determines which elements and how many elements the instruction reads or writes These instructions manipulate array data as a contiguous block of memory the remaining instructions manipulate array data as individual elements BSL FLL BSR LFL COP LFU DDT SQI FBC SQL FFL SQO FFU Important If an instruction attempts to read data beyond the end of an array the instruction reads whatever data happens to be there and processes it as if it were valid data no error occurs If an instruction attempts to write data beyond the end of an array a major fault
61. reset SSV MajorFaultBits GSV Individual bits indicate the type of major fault SSV MinorFaultBits GSV Individual bits indicate the type of minor fault SSV MajorFaultBits structure The MajorFaultBits record in the FAULTLOG identifies the last major fault by setting the bit that corresponds to the fault type 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 j11 10 9 8 7 6 5 4 3 2 1 0 power loss 0 instruction execution program fault handler watchdog Y stack mode change motion MinorFaultBits structure The MinorFaultBits record in the FAULTLOG identifies the last minor fault by setting the bit that corresponds to the fault type 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 10 me execution program watchdog y serial port battery 1756 6 5 12 March 1999 Using This Chapter How the Controller Powers Up in Run Mode Chapter 13 Preparing a Power Up Program For information about See page How the controller powers up in Run mode 13 1 Creating the power up handler 13 3 Clearing the major fault 13 6 You can use the power up handler to determine how the controller powers up in Run mode
62. style The controller generated a major fault could not clear the fault and has shut down Real values displayed and entered in floating point format The number of digits to the left of the decimal point varies according to the magnitude of the number See style hexadecimal immediate value index INT interface module IFM listen only connection major fault major revision Integer values displayed and entered in base 16 each digit represents four bits Prefixed with 16 Padded out to length of the boolean or integer 1 8 16 or 32 bits When displayed every group of four digits is separated by an underscore for legibility See binary decimal octal An actual 32 bit signed real or integer value Not a tag that stores a value A reference used to specify an element within an array An atomic data type that stores a 16 bit integer value 32 768 to 32 767 A prewired I O field wiring arm An I O connection where another controller owns provides the configuration data for the I O module A controller using a listen only connection does not write configuration data and can only maintain a connection to the I O module when the owner controller is actively controlling the I O module See owner controller A malfunction either hardware or instruction that sets a major fault bit and processes fault logic to try to clear the fault condition If the fault logic cannot clear the fault logic ex
63. tee teee tae eae ga ets ea es B 2 Data Definitions sisiiiaoins area B 2 Programming Languages cc cece eee eae B 3 Instruction Setanar sass Se sadeasca tae dote a taseteamnas B 3 IEC1131 3 Program Portability nnana aana B 4 IEC Compliance Tables 0c aaea B 4 Specifications Appendix C Logix5550 Controller n n n nannaa ater C 1 Logix5550 Memory Board naaa a C 2 1756 CP3 Serial Cable Pinouts ee eae C 3 T756 BALBately oe e pue tis bs os Kone Yn nen Oe C 3 1756 MOA2E Motion Module 0000eeees C 4 Glossary 1756 6 5 12 March1999 toc viii Table of Contents Notes 1756 6 5 12 March1999 Chapter 1 Getting Started Using This Chapter This chapter introduces the Logix5550 controller and provides a quick overview on installing the controller and on creating and downloading a project The steps in this chapter introduce the basic aspects of the Logix5550 controller and refer you to later chapters in this manual for more details The Logix5550 controller suits a wide range of control applications by supporting e multiple controllers in one ControlLogix chassis e controllers distributed across multiple chassis e scheduled processor to processor communications e multiple controllers that share the same I O modules and communications modules o OL ele jE p Logix5550 Controller
64. these bidirectional connections Bidirectional Connection Type Module Quantity Connections Total Connections per Module controller to local 1 0 module 2 1 2 controller to remote analog 1 0 module 1 1 1 controller to remote 1756 CNB module 1 1 1 total 5 Determining Connections for The Logix5550 controller supports the ability to produce broadcast Produced and Consumed Tags and consume receive system shared tags System shared data is accessible by multiple controllers over the ControlBus backplane or over a ControlNet network Produced and consumed tags each require connections Connections for produced tags By default a produced tag allows two other controllers to consume the tag which means that as many as two controllers can simultaneously receive the tag data The local controller producing must have one unidirectional connection for each consumer and one more unidirectional connection for the produced tag The default produced tag requires three unidirectional connections You define the number of consumers through the Tag Properties g Tap Properties gt vadee_ii Tag Te T Bes f Air 0 Caed Date fee HT Ta E specify the maximum number of beeps E consumers for this produced tag Style Denisa F Boies tiriphrupio T 2 comua _ tort Joes e As you increase the number of controllers that can consume a produced tag you also reduce the number of connections the contr
65. to group information about logic and configuration 2 MSp SMD pajaci 1 Be Be yer perch Lae pr akele e Firs I lp Fehim Da Wedde Damei B 17 Coig In front of each folder there is an icon with a sign or a sign The sign indicates that the folder is closed Click on it to display the files in the folder The sign indicates that the folder is already open and its contents are visible Click the right mouse button on any item in the controller organizer to display a context sensitive menu for that item These pop up menus are often shortcuts to using options from the menu bar The examples in this manual most often use right click actions on items in the controller organizer 1756 6 5 12 March 1999 2 4 Working with Projects Saving Your Project Uploading From the Controller 1 Select Upload So alegia SAN cpa nivel Fie Edi yea Bewch Loge Do ala j ije lia 1756 6 5 12 March 1999 As you create logic and make configuration changes save your work to the project file If you This is what happens Save The programming software saves programming and configuration changes to the current project file The title bar of the programming software displays the name of the current project file Save As The programming software creates a new project file using the current project file and the name you specify The controller name is independent of the project file name If you
66. you want the controller to send after an ACK timeout Enter a value 0 127 The default is 3 ACK timeout Specifies the amount of time you want the controller to wait for an acknowledgment to its message transmission Enter a value 0 32767 Limits are defined in 20ms intervals The default is 50 1000ms Embedded response Specifies how to enable embedded responses Select Autodetect enabled only after receiving one embedded response or Enabled The default is Autodetect Error detection Select BCC or CRC error detection Configure both stations to use the same type of error checking BCC the controller sends and accepts messages that end with a BCC byte for error checking BCC is quicker and easier to implement in a computer driver This is the default CRC the controller sends and accepts messages with a 2 byte CRC for error checking CRC is a more complete method Enable duplicate detection Select whether or not the controller should detect duplicate messages The default is duplicate detection enabled on Cmk ae Peete eon ice Temi I Chak im l Tan Teni Pusi Pat Pekar jii ieee bead Fis eris Eaim a FEC Co Vises jier EC F Egi lki Denar 1 amini Betis TeePee Co C Br bommi LO J _ m a _ Communicating with Devices on a Serial Link 8 7 Configuring a DF1 slave station This field Station address Description The station address for the serial port
67. 0 77 octal Ethernet network IP address four decimal numbers separated by periods If you have multiple path segments you must also separate each path segment with a comma 1756 6 5 12 March 1999 9 4 Communicating with a Workstation Connection path examples The following examples are based on this system Example Description serial Use DF1 to connect directly to the controller in the Select a DF1 driver local chassis Leave the connection path blank ee link sy serial Use DF1 to connect to the controller in the Select a DF1 driver remote chassis Enter connection path 1 0 2 42 1 3 1 backplane port of the Logix5550 controller in slot 3 of the local chassis a s 0 slot number of the 1756 CNB module in the local chassis a 2 ControlNet port of the 1756 CNB module in slot 0 of the local chassis local chassis zee remote chassis 42 ControlNet node of the 1756 CNB module in slot 0 of the remote chassis ControlNet link 1 backplane port of the 1756 CNB module in slot 0 of the remote chassis 3 slot number of the controller in the remote chassis ControlNet Use ControlNet to connect to the controller in the Select a ControlNet driver remote chassis Enter connection path 2 49 1 0 2 42 1 3 2 Con
68. 0017 40018 The Logix5550 controller can be purchased with a memory expansion board already installed catalog numbers 1756 L1M1 L1 M2 or L1M3 For more information see the Logix5550 Memory Board Installation Instructions publication 1756 5 33 Install the controller You can place the Logix5550 controller in any slot You can use multiple Logix5550 controllers in the same chassis The total number of modules in a chassis depends on power supply capacity x Ph fo 1 Align the circuit board with the top and bottom guides in the chassis NS ha a 2 Slide the module into the chassis 3 Make sure the module properly connects to the chassis backplane The controller is fully installed when it is flush with the power supply or other fully installed modules and the top and bottom latches are engaged 1756 6 5 12 March 1999 1 4 Getting Started Creating and Downloading The following diagram illustrates the steps you follow to create and a Project download a project The remainder of this quick start provides examples of each step with references to other chapters in this manual for more details System setup for this quick start 10 l Create a project To ma goto page 1 5 ES Aa E Lo q 1756 L1 slot 3
69. 1 1 Installing the Controller 0 ccc cece eee ees 1 2 Prepare the controller n nanunua aana 1 3 Install the controller nannan annaa 1 3 Creating and Downloading a Project 00 1 4 Createa projectoren tern de hot E T teste 1 5 Changing project properties cece aes 1 6 Adding a local input module 0 even 1 7 Adding a local output module 000005 1 9 Changing module properties cece eeee 1 11 Viewing I O tagS x20 cen hactaksdatate te da Gada a 1 12 Creating other tags ouaaa aa 1 13 Documenting I O with alias tags cece ee 1 14 Enter logiG apanr ra aa a Gaye ewes 1 16 Download a project naaa aua 1 18 Viewing program scan time saunu aanraai 1 21 Viewing controller memory uSage nsaan 1 22 What To Do Next nnu unaaa nunana anena 1 22 Working with Projects Chapter 2 Using This Chapter shes avian eke sey able aoe 2 1 Creating a Project anaa 2 1 Naming controllers n oot ea eae ees 2 2 Changing Project Properties nunnana cee eeeee 2 2 Working with the Controller Organizer 0005 2 3 SAVING Yo r Project sGttiutiy vivesatuty a s 2 4 Uploading From the Controller 0 0e eee 2 4 Using Coordinated System TIME eee eee ees 2 5 Configuring I O Modules Chapter 3 Using This Chanter oickacal agate caea soe Ga he 3 1 ntrod ctom ee a ached yatta elie EE atid 3s oc ia 3 1 LOGIC SCANNING six rst aa aa a a A 3 2
70. 2 March 1999 Developing a motion control application program involves Step Description See page Select the master Set one controller as the master controller 10 2 controller for coordinated Once you complete this step you can system time synchronize all the motion modules and Logix5550 controllers in your chassis Add a servo module Add a motion module to your application 10 3 program Name an axis Add an axis to your application program 10 4 Configure an axis Configure each axis for motion control 10 5 Run hookup diagnostics Complete hookup diagnostics and auto tuning 10 11 and auto tuning for each axis Develop a motion Create a program for your motion control 10 12 application program application The following sections provide an overview of each of these steps For more information about completing these steps see the ControlLogix Motion Module User Manual publication 1756 6 5 16 Selecting the master controller for coordinated system time Important Only one controller in a chassis can be the CST master To select the master controller for coordinated system time open the controller properties window and select the Date Time tab g Contesiie Pinperiern pei ript Ceia Por Paed Daraa Di Tie Commedia lira I Haka Br conia tha pasim A Ve thas meget TET a wath a reed J upik as reste dateci lt Tma hahaa Lauded If Hired Fouts O beed Fie Mad Fults eT Commamicsion
71. 5 40 using this approach Another way to transfer a large array is to use one PLC S type message to send the data as one large array The problem with this approach is that messages are unscheduled and are executed only during the system overhead portion of the Logix5550 execution Therefore messages can take a fairly long time to complete the data transfer You can improve the transfer time by increasing the amount of system time available to overhead but this also diminishes the performance of the continuous task A better approach to transferring a large array is to use a one produced consumed tag of 125 elements to packetize the array in one controller and send it piecemeal to another controller The following example transfers big_array from a primary controller and creates a backup version on a second controller Primary Controller Backup Controller big_array big_ array packet packet ats 0 123 packet_ID packet_ID 124 acknowledge acknowledge _ backup_ack backup_ack packet_ID packet_ID acknowledge acknowledge In this example the primary controller moves 123 elements from big_array into a packet and appends two words to the end The first word added element 123 contains the packet_ID The packet_ID is the starting offset of big_array from which the first element of the packet is obtained The
72. 6 5 12 March 1999 controller operates If you want to Turn the keyswitch to Run your program RUN Outputs are enabled Equipment being controlled by the I O a7 addressed in the program begins operating ita Enable outputs m sen BAT MEE MEE 0K You cannot create or delete tasks programs or routines You cannot fun Aei enbe create or delete tags or edit online while in Run mode You cannot change the controller mode through the programming software while the keyswitch is in the RUN position 40003 Disable outputs outputs are set to their configured program states PROG Create modify and delete tasks programs or routines n Download projects me The controller does not execute scan tasks mm mo You cannot change the controller mode through the programming T software while the keyswitch is in the PROG position 40004 Change between Remote Program Remote Test and Remote Run REM modes through the programming software Remote Run mE ae Enable outputs m o Edit online limited ermm LOK Remote Program Disable outputs outputs are set to their configured states Create modify and delete tasks programs or routines Download projects Edit online 40002 The controller does not execute scan tasks Remote Test e Execute tasks with outputs disabled Edit online limited Examining Controller Prescan
73. B IEC1131 3 Compliance For information about See page Introduction B 1 Operating system B 2 Data definitions B 2 Programming languages B 3 Instruction set B 3 IEC1131 3 program portability B 4 IEC compliance tables B 4 The International Electrotechnical Commission IEC has developed a series of specifications for programmable controllers These specifications are intended to promote international unification of equipment and programming languages for use in the controls industry These standards provide the foundation for the Logix5550 controller and RSLogix 5000 programming software The IEC programmable controller specification is broken down into five separate parts each focusing on a different aspect of the control system e Part 1 General Information e Part 2 Equipment and Requirements Test e Part3 Programming Languages e Part 4 User Guidelines e Part 5 Messaging Service Specification The controls industry as a whole has focused on part 3 IEC1131 3 Programming Languages because it provides the cornerstone for implementing the other standards and provides the most significant end user benefit by reducing training cost Because of this only IEC1131 3 is addressed here The IEC1131 3 programming language specification addresses numerous aspects of programmable controller including the operating system execution data definitions programming languages and instruction set Components of t
74. CNB connection This option eliminates the need for the three separate connections shown in the previous example Using a Rack Optimized Connection with 1 0 in a Remote Chassis Local chassis Remote chassis pe ao _3 _ 8 oe B Bea A a 6 0 B o N U H Rack optimized i N U N Q Port connection for all 1 0 P ee ag 5 U P 5 U P U 6 TU amp TUT n T ge T I Q 9 ControlNet 41021 Owner controller ControlNet bridge module ControlNet bridge module The local controller in this example uses these bidirectional connections Bidirectional Connection Type Module Quantity Connections Total Connections per Module controller to local I O module 2 1 2 controller to remote 1756 CNB module 1 1 1 total 3 The rack optimized connection conserves ControINet connections and bandwidth but it limits the status and diagnostic information that is available from the I O modules 1756 6 5 12 March 1999 Select Rack Optimized for a rack connection Allocating Communication Connections 7 5 To configure an I O module for a rack optimized connection you select the Rack Optimization communication
75. Click the right mouse button and select Properties fe pi pe jem ham Domar Jie pind Creating the Controller Fault Handler 1756 6 5 12 March 1999 Each program can have one fault routine You specify the fault routine when you configure the program You can only change the fault routine by using the programming software to change the program configuration To specify a fault routine Select the fault routine The controller fault handler is an optional task that executes when the major fault is not an instruction execution fault or the program fault routine e could not clear the major fault e faulted e does not exist The controller fault handler can have only one program That one program can have multiple routines To configure a controller fault program either create a program for the controller fault handler or select an unscheduled program For more information about creating programs and routines see chapter 5 Handling Controller Faults 12 17 Creating a program for the controller fault handler 1 Select the ControllerFaultHandler To create a program as the controller fault program 2 Click the right mouse button and select New Program oo pa ibe RSLecee S000 maisel T Devcon Zz z Fie DH Wea gemd Logie Communications c m alaa a e Erir 1 hal f G Ta T 4 i hEm I f Geren ADF i Controle eregect_1 iP Corte T Paver Up Hance E Tike In th
76. Create a new program and select this program as the controller fault handler program See page 12 16 2 Create a user defined structure to store the fault information This can be the same structure you use for minor fault information The format must be as follows you can change the structure and member names but the data types and sizes must be the same as shown below Name FaultRecord Size aa byte s record information obtained from GS of Program fault record information Members A TimeLow a Low 32 bits of fault timestamp value TimeHigh DINT Decimal Upper 32 bits of fault timestamp value Type INT Decimal Fault Type Program 1 0 etc Code INT Decimal Unique by type Code for the fault Info DINT 8 Hex Fault Specific information content varies by type and code 1756 6 5 12 March 1999 3 Use a GSV instruction to get the MAJORFAULTRECORD of the current program THIS The destination should be a tag of the user defined structure type you created Get system value Object class Object name GSV PROGRAM THIS Attribute name MAJORFAULTRECORD Dest MyFaultRecord TimeLow p The Destination tag must point to the first member of the structure MyFaultRecord TimeLow This tag is of the structure type you define to hold fault information Handling Controller Faults 12 13 4 Examine the fault type and code to determine which fault occurred an
77. LEC 1s l ooo of the TIMER structure You might have to resize the column to see the tag extensions c on in d 1756 6 5 12 March 1999 1 14 Getting Started Documenting 1 0 with alias tags 1 Create an alias tag input_1 for Local 1 1 Data 1 3 Create tags Controller Tags quick_start controller of x Jeuick_stat contolel Ei P 7 E see chapter 4 EA ES E LETT ooo I E timer_1 TIMER C inputi Local 1 1 M Enter the name of the tag Tab here or click in the box Click here to select tag to reference 2 Select an input data word A Click on the input data structure B Click to display the members of the structure C Click the input data word e Click here to select a bit 2 Selecta specific bit Leii ABABA Dat L si T Click on the bit gt Picadas ie 77 11 ate a aa faa a 2432 26 27 28s 35 h Press Enter continued 1756 6 5 12 March 1999 Getting Started 1 15 Documenting 1 0 with alias tags continued 4 Repeat steps 1 and 2 above to create an alias tag output_1 for Local 2 0 Data 1 3 Create tags The software displays the alias tags see chapter 4 a Conds oles Tage quech_nlaat cxeed ofc k _ ABE Big mmi dienian E F s Ereman Sat Tag ara Tra ARITA ARTEI cate Fad berecon Ei j AE 17560001 Fume Eimi ETS Ooo IC Erai TIMER rut Lace iGetel Lect Dai BOD Daca oatpat_1 Lti Gade lac
78. Monitoring Forces Tiar bait cerika Fst hki ih jik ii D 1756 6 5 12 March 1999 If you remove each force individually forces can still be enabled ATTENTION Ifyou have removed forces but forces are still enabled and you set a force value it takes affect immediately Keep personnel away from the machine area Forcing can cause unexpected machine motion that could injure personnel Removing a force on an alias tag also removes the force on the base tag At the controller level you can remove all forces Removing all forces disables forces and clears all force mask values ie View earch Loge Comrisa aar Po Select Remove all forces gt Important The only way to monitor force status is through the programming software or from logic The Logix5550 controller does not have a LED to indicate force status The following example shows how to check whether forces are present and enabled and set your own LED indicator Thay GPM raiki ye the gua ce force nba or doves din DIR sins diiidan Fap Lae Chi nr s The pisia oon be a beet be dele Tha b caro hai aber E a pikad karsi se anaia EN ni iaiia k r a Using This Chapter Understanding Controller Faults If the controller detects a It means Chapter 12 Handling Controller Faults For information about See page Understanding controller faults 12 1 Viewing controller faults 12 2 Monitori
79. Operations Troubleshooting A 9 If unexpected operation occurs when the controller enters Run mode make sure to examine the prescan operation of the instructions Some instructions execute differently during prescan than they do during a normal scan For details on how each instruction operates during prescan see the Logix5550 Controller Instruction Set Reference Manual publication 1756 6 4 1 The prescan operation is an intermediate scan between the transition from Program mode to Run mode The prescan examines all programs and instructions and initializes data based on the results For example a routine that is called infrequently might have a bad indirect address that generates a major fault It might take several normal program scans before this fault occurs Prescan provides the opportunity for the controller to examine the program for errors such as this before changing to Run mode Instructions with unique prescan operations During prescan the controller modifies data associated with some instructions see the following table The following table describes prescan operations that deviate from normal instruction operation Instruction Executes these actions during prescan CTU The CU CD bit is set to prevent a false count when the first CTD Run mode scan begins DTR The reference value is updated regardless of the rung condition FFL The EL bit is set to prevent a false load when the first Run mod
80. SQR square root XOR exclusive OR For example Definitions Example Description my list defined as DINT 10 my_list 5 This example references element 5 in the array The reference is static because the subscript value remains constant my list defined as DINT 10 MOV the value 5 into position This example references element 5 in the array i n The reference is dynamic because the logic can position deine as DINT my letipostion change the subscript by changing the value of position my list defined as DINT 10 MOV the value 2 into position This example references element 7 2 5 in the poston dened as OT oe ee offset defined as DINT ye pesian nae value of position or offset 1756 6 5 12 March 1999 Make sure any array subscript you enter is within the boundaries of the specified array Instructions that view arrays as a collection of elements generate a major fault type 4 code 20 if a subscript exceeds its corresponding dimension Organizing Data 4 15 Specifying Bits Within Arrays You can address bits within elements of arrays For example Definitions Example Description arrayl defined as DINT 5 arrayl 1 2 This example references the bit 2 in element 1 of the array array2 defined as INT 17 36 array2 3 4 15 This example references the bit 15 of the 1st dimension has 17 elements element array2 3 4 2nd dimension has 36 elements array3 defined as SINT 2 4 6 array3 1 3 2 4 This example
81. T 2 This example is an array with 2 elements each of type DINT 4 bytes per element Bit 31 0 data allocation 1 _ big_values 0 data allocation2 big_values 1 timer_list as TIMER 2 Bit data allocation 1 This example is an array with 2 elements each element is a TIMER structure 12 bytes per structure 31 0 timer_list 0 status bits data allocation 2 timer_list 0 pre data allocation 3 timer_list 0 acc data allocation 4 timer_list 1 status bits data allocation 5 timer_list 1 pre data allocation 6 timer_list 1 acc small_ values as SINT 2 2 2 1756 6 5 12 March 1999 Bit data allocation 1 This example is a three dimensional array with 8 elements each of data type SINT 31 24 23 16 15 8 7 0 small_values 0 1 1 small_values 0 1 0 small_ values 0 0 1 small_values 0 0 0 data allocation 2 small_values 1 1 1 small_values 1 1 0 small_values 1 0 1 small_values 1 0 0 big_values as DINT 2 2 2 This example is a three dimensional array with 8 elements each of type DINT Bit 31 0 data allocation 1 big_values 0 0 0 data allocation 2 big_values 0 0 1 data allocation 3 big_values 0 1 0 data allocation 4 big_values 0 1 1 data allocation 5 big_values 1 0 0 data allocation 6 big_values 1 0 1 data allocation 7 big_values 1 1 0 data allocation 8 big_values 1 1 1
82. The following examples show memory allocation for various arrays bit_values as BOOL 32 This example is an array with 32 bit elements each of data type BOOL 1 bit per element Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 data allocation I 131 1301 1291 1281112711126111251 24 23 22 21 20 1191118111711116 Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 JI JO data allocation 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 continued small_values as SINT 8 This example is an array with 8 elements each of data type SINT 1 byte per element Bit 31 24 23 16 15 8 7 0 data allocation small_values 3 small_values 2 small_values 1 small_values 0 data allocation2 small_ values 7 small_values 6 small_values 5 small_values 4 small_ values as SINT 3 This example is an array with 3 elements each of data type SINT 1 byte per element Because the minimum data allocation is 4 bytes the last byte is zero Bit 31 24 23 16 15 8 7 0 data allocation 0 small_values 2 small_values 1 small_values 0 1756 6 5 12 March 1999 4 18 Organizing Data values as INT 4 This example is an array with 4 elements each of data type INT 2 bytes per element Bit 31 16 15 0 data allocation 1 values 1 values 0 data allocation 2 values 3 values 2 big_values as DIN
83. This Chapter faa sata aaa nasi pee area ei tive tee 12 1 Understanding Controller Faults 005 12 1 Viewing Controller FaultS 0 ccc cece eee es 12 2 Monitoring 1 0 Faults nnana anaana ad ca dicted clad stati 12 2 Handling Hardware Faults nananana aeaaaee 12 3 Processing Minor Faults 0 cece ee eens 12 3 Processing instruction execution minor faults 12 4 Writing logic for instruction execution minor faults 12 5 Processing other minor faults 0005 12 6 Writing logic for other minor faults 4 12 7 Minor Fault Types and Codes cee cece v aes 12 8 Processing Major Faults sc sebeiieveietivaawaks 12 9 Writing logic for a major fault 00 12 12 Major Fault Types and Codes 00000e 12 14 Creating a Program Fault Routine 12 16 Creating the Controller Fault Handler 12 16 1756 6 5 12 March1999 toc vi Table of Contents Preparing a Power Up Program Troubleshooting 1756 6 5 12 March1999 Creating a program for the controller fault handler 12 17 Naming PrOGKaMS is citacericiatord bieeeeas 12 17 Selecting an unscheduled program 12 17 Configuring programs sium ae ee 12 18 Creating routines tale telat tata tat tetas 12 19 Naming TOUDNES a665 cake basytadad what alae 12 19 Accessing the FAULTLOG 000 csc eeeee 12 20 MajorFaultBits structure cece eee 12 20 MinorFaultBits stru
84. This method Benefits standard Initiates polling packets to slave stations according This communication method is most often used for point to multipoint communication mode to their position in the polling array s configurations Polling packets are formed based on the contents This method provides these capabilities of the normal poll array and the priority poll array slave stations can send messages to the master station polled report by exception e slave stations can send messages to each other via the master master maintains an active station array The poll array resides in a user designated data file You can configure the master to send messages during its turn in the poll array or e for between station polls master transmits any message that it needs to send before polling the next slave station In either case configure the master to receive multiple messages or a single message per scan from each slave station message based initiates communication to slave stations using only If your application uses satellite transmission or public communication mode user programmed message MSG instructions switched telephone network transmission consider choosing message based communication Communication to a slave station can be initiated on an as needed basis Each request for data from a slave station must be programmed via a MSG instruction Also choose this method if you need to communicate with The master p
85. Use the Create wizard to configure the output module Use default values for this quick start example E Hem bodak Local 2 ITSE DR16E Z i If you do not want to page through each screen in the e aee Create wizard click Finish to create the module using default values femmi Packet taread E igj w jf1 bimj CLET l Hap Fed r inia I Coraci fah Click Next Click Next emegi Creier biatu Ere Courter ehi Bed CRC Bun Tirant Ad uit OFC Erra Click Next J Taro Mule CAC Erm f heatald Bad OF Trarcon Fiai Lan Ler Bia Tanba r Daang Flusirecheng fhe pags CESA Click Next the rake ba olay Ws Daunia Ci thet mih Hay Click Finish continued 1756 6 5 12 March 1999 Changing module properties 1 View properties for the module A Place the cursor over the 1756 IB16 module p B Click the right mouse button and select Properties 2 View the General tab The screen defaults to the General tab Verify that the module settings are py correct Make changes if necessary Getting Started 1 11 see chapter 3 E Coded gu Harda E Prap Harde JH T i en Tok 3 dar Pees b Fangia T age 1 HanPiairs C Ureta Progar E eTa Gy esT reed a Og Pedra i T bieba Dirai 3 0 Gripas i 2 17 SE081 GE a om Mistels Mape Locak 1641 21 Tope PSE 16 Pant 1 O30 2 D Deut Wencios ilmik Company inc Passat Local Hara frum Sit Decan
86. _ack 0 5289 CLA Clear Dest backup_ack 1 9996 EQ MOV Not Equal Move Source packet 124 Source 999 999 Source B 999 Dest backup_ack 1 999 1756 6 5 12 March 1999 Using This Chapter How the ControlLogix System Uses Connections Chapter 7 Allocating Communication Connections For information about See page How the ControlLogix system uses connections 7 1 Determining 1 0 connection requirements 7 2 Determining connections for produced and 7 6 consumed tags Determining connections for messaging 7 7 Determining total connection requirements 1 8 The ControlLogix system uses a connection to establish a communication link between two devices This includes controllers communication modules input output modules produced consumed tags and messages Connections take many forms e controller direct to local I O or local communication module e controller direct to remote I O or remote communication module e controller to remote chassis rack optimized e produced and consumed tags e messaging including block transfers You indirectly determine the number of connections that the Logix5550 controller requires by configuring the controller to communicate with other devices in the system Each module in the ControlLogix system supports a limited number of active connections Take these connection limits into account when designing your system These modules support these number of
87. a higher priority task is running ATTENTION The rate that a periodic task is triggered determines the period by which the logic is executed and the data is manipulated within the task Data and outputs established by the programs in a task retain their values until the next execution of the task or they are manipulated by another task 1756 6 5 12 March 1999 1 Select Tasks 2 Click the right mouse button and select New Task 9 Contos popei_i BA Diiia Tag Canhoku Paak hardu Poveer Lip Hari a Creating tasks Developing Programs 5 5 When you open a new controller project in your programming software the MainTask is already defined as a continuous task You can change this default task to fit your project E Ed ier Seach Lope fo alela a aje Drise ABLOFTA Gonder pak iwi JA Controller Tag Conroe Fri Hoda Fiel Haai j laka The default task is MainTask gt m To create a new task PinPro 2 Prepar Tags Harfi Typa Pei fa Watchdog pj EDC Feine diiras mw fr y paie praaj MEU m In this field Enter Name Enter the name of the task Description Enter a description of the task optional Type Select Continuous or Periodic The controller supports only 1 continuous task The remaining tasks must be periodic Watchdog Enter the time in msec for the watchdog timer If any program scheduled for a task takes too long to scan or is interrupted by a higher
88. a ladder diagram Routines provide the executable code for the project in a controller A routine is similar to a program file ina PLC or SLC processor See program task See elapsed time execution time Defines where you can access a particular set of tags See controller scope program scope An atomic data type that stores an 8 bit signed integer value 128 to 127 A structure stores a group of data each of which can be a different data type The controller has its own predefined structures Each I O module you can configure for the controller has its own predefined structures And you can create specialized user defined structures using any combination of individual tags and most other structures See member user defined structure The format that numeric values are displayed in See binary decimal hexadecimal octal float exponential The percentage of time the controller allocates to perform communication and background functions A named area of the controller s memory where data is stored Tags are the basic mechanism for allocating memory referencing data from logic and monitoring data See alias tag base tag consumed tag 1756 6 4 1 March 1999 10 task timestamp uncached connection unidirectional connection upload user defined structure 1756 6 4 1 March 1999 watchdog A scheduling mechanism for executing a program As many as 32 programs can be schedule to execute when a tas
89. a major controller fault Numerics 1756 BA1 C 3 1756 CP3 cable C 3 1756 MO2AE servo module 10 1 A accessing data 4 2 FAULTLOG 12 20 0 3 16 ACD file extension 2 1 alias defining for I O data 3 19 getting started 1 14 1 15 tag type 4 2 array introduction 4 13 memory allocation 4 17 array concepts indexing 4 14 Specifying bits 4 15 atomic data type 4 3 4 6 axis 10 4 B background function 5 15 base tag 4 2 battery 1 3 C 3 bits within arrays 4 15 branch 5 14 Index C change of state data exchange 3 2 3 3 changing controller mode A 8 O configuration 3 15 module properties 1 11 project properties 2 2 clearing a major fault 13 6 communicating defining connection path 9 2 mapping addresses 6 4 other controllers 6 1 serial 8 1 using MSG instructions 6 1 with another Logix5550 controller 6 1 with PLC and SLC controllers 6 2 with workstation 9 1 communication connection 7 1 compliance tables B 4 components A 1 configuring communication with workstation 9 1 controller fault handler program 12 18 controller fault handler routine 12 19 DF1 master 8 8 DF1 point to point 8 6 DF1 protocol 8 5 DF1 slave 8 7 1756 6 5 12 March 1999 l 2 Index I O modules alias 3 19 changing configuration 3 15 controller ownership 3 7 COS 3 3 electronic keying 3 6 inhibit operation 3 9 local 3 4 logic scan 3 2 naming 3 5 operation 3 3 remote 3 11 RPI 3 3 update 3 2 power up handler 13 4 power up handler pr
90. a program MainProgram in this example Click the right mouse button and select New Routine Developing Programs 5 11 A routine is a set of logic instructions in a single programming language such as ladder logic Routines provide the executable code for the project in a controller A routine is similar to a program file or subroutine in a PLC or SLC processor Each program has a main routine This is the first routine to execute when the controller triggers the associated task and calls the associated program Use logic such as the JSR instruction to call other routines You can also specify an optional program fault routine The controller executes this routine if it encounters an instruction execution fault within any of the routines in the associated program Creating routines When you open a new controller project in your programming software the MainRoutine is already defined for the MainProgram You can modify this routine as well as add other routines To create a new routine s l E ie f In Progrea Haragan fan In this field Enter Name Enter the name of the routine Description Enter a description of the routine optional Type Select the programming language used to create the routine Ladder is the default In Program Select the program in which you plan to run the routine The programming software displays a list of the available programs 1756 6 5 12 M
91. ak hrai Se 1756 6 5 12 March 1999 Configuring programs Once you create a controller fault program there are other properties that you need to configure You must have a main routine The controller fault program does not execute a fault routine If you specify a fault routine for the controller fault program the controller never executes that routine To configure an existing program Be Ei me ng Miopia ange On this tab In this field Enter General Name The programming software displays the current name of the program Edit the name if necessary Description The programming software displays the current description Edit the description if necessary In this field On this tab Configuration Enter Assigned Routine The programming software displays the name of the Main Routine and the Fault Routine if any Change the selections if necessary While online the programming software displays the maximum scan time and the last scan time in usec for the current program These values are execution times for the program and do not include any time spent waiting for other programs or higher priority tasks These values are display only Scan Time us 1 Select a program cntr_fault in this example 2 Click the right mouse button and select New Routine Ee Edt alaa a ee ee penh Loge J Combed Fait harria Pier aren dre in gn Handling Controller Fa
92. an alias to an I O structure member of type BOOL SINT INT DINT or REAL Forcing an input value overrides the actual input value being received from the controller but will not affect the value received by other controllers monitoring that physical input module Forcing an input value overrides the value regardless of the state of the physical input module Forcing an output value overrides the logic for the physical output module Other controllers monitoring that output module in a listen only capacity will also see the forced value Forces are applied to the actual modules at the end of every program scan when data arrives at the module Important Forcing increases logic execution time The more values you force the longer it takes to execute the logic Important Forces are held by the controller and not by the programming workstation Forces remain even if the programming workstation is disconnected ATTENTION If forces are enabled and anything is forced keep personnel away from the machine area Forcing can cause unexpected machine motion that could injure personnel 1756 6 5 12 March 1999 11 2 Forcing 1 0 Entering Forces Enter force values in this column 1756 6 5 12 March 1999 en sis 1 J a a z If the data value is a SINT INT or DINT you can force the entire value or you can force individual bits within the value Individual bits can have a force status of e no force e force on e for
93. and how many controllers are producing and consuming tags For more information see chapter 7 Consuming a tag from a ControlNet PLC 5 processor to a Logix5550 controller To consume a tag from a ControlNet PLC 5 processor follow these steps 1 In RSNetworx communication software in the ControlNet configuration for the PLC 5 controller create a Send Scheduled Message Use an output size of at least 2 for 32 bits In RSLogix5000 programming software create a user defined structure The first member is a DINT The second member is an INT array The size of the INT array should match the output size entered in RSNetworx Create a consumed tag of this user defined type When you specify the tag as consumed specify the instance of the Send Scheduled Data entry as the Remote Instance of the tag The requested packet interval RPT can be as low as the network update time NUT In RSNetworx communication software schedule the link Sending Large Arrays of Data Communicating with Other Controllers 6 17 The Logix5550 controller can send as many as 500 bytes of data over a single scheduled connection This corresponds to 125 DINT or REAL elements of an array To transfer a larger amount of data you could break that data into multiple arrays each with a length of 125 elements The problem with this approach is that the controller only supports 250 connections An array with 5000 elements would take 40 connections 5000 12
94. anual we use notes to make you aware of safety considerations ATTENTION Identifies information about practices or circumstances that can lead to personal injury or death property damage or economic loss Attentions help you e identify a hazard e avoid the hazard recognize the consequences Important Identifies information that is especially important for successful application and understanding of the product 1756 6 5 12 March 1999 Introduction Updated Information Summary of Changes This release of this document contains new and updated information To help you find the new and updated information look for change bars as shown next to this paragraph This document has been updated throughout The most significant changes are For this new updated information See chapter Upload download changes 2 Forcing 11 1756 6 5 12 March 1999 Notes 1756 6 5 12 March 1999 Preface Using This Manual Introduction This manual is one of several ControlLogix documents Task Goal Documents Installing the controller and its components Logix5550 Controller Quick Start publication 1756 10 1 Logix5550 Memory Board Installation Instructions publication 1756 5 33 Logix5550 Controller User Manual publication 1756 6 5 12 Using the controller You are here gt Programming the controller Logix5550 Controller Instruction Set Reference Manual publication 1756 6 4 1 Configuring and communi
95. arch 1999 5 12 Developing Programs Naming routines Routine names follow IEC 1131 3 identifier rules and e must begin with an alphabetic character A Z or a z or an underscore _ e can contain only alphabetic characters numeric characters and underscores e can have as many as 40 characters e must not have consecutive or trailing underscore characters _ Routine names are not case sensitive You can also add descriptions to routines Descriptions can have as many as 128 characters You can use any printable character Configuring routines 1 Select a routine MainRoutine in this example i Are 2 Click the right mouse button and select Properties Once you create a routine you can change the name or the description of the routine Se Fe p jen jeah jaj ja be she amm a Ee To configure an existing routine aes j a Nadia Popia enous In this field Enter Name The programming software displays the current name of _ the routine Edit the name if necessary Description The programming software displays the current description Edit the description if necessary Number of rungs display only Contained in display only 1756 6 5 12 March 1999 Entering Ladder Logic Developing Programs 5 13 The Logix5550 controller supports multiple output instructions per rung of logic The output instructions can be in sequence on the rung serial or input and output instructions can be mixed as long
96. are data that is used exclusively by the routines within a program Other programs cannot access this data D Gander quack dwi Comrsterlies Fut Haraha Poet p Harber Ter A Me Tail Sh BanPro 2 Pogam T ag hFa Mrapi Fig ij program data Scoping tags global to a controller Controller tags consist of data that is available to all the routines within a controller regardless of what tasks or programs contain the routines These tags are global to the controller Tag scope Description controller Controller tags are data that is available to all the tasks programs and routines within a controller project Fie Ed Y ssh o Dormer alaa a Ae E poe S Erie AR DFT D Gardner quack dwi Cinik Fpi Harie Prea p Harley al lait oe Man aii Sh HP 2 Pogan T age J Hanoutrs Urechea Peigi controller tags All I O tags are created as controller scoped tags when you create the module for the controller 1756 6 5 12 March 1999 4 22 Organizing Data Notes 1756 6 5 12 March 1999 Using This Chapter Organizing Projects Developing Programs Chapter 5 For information about See page Organizing projects 5 1 Defining tasks 5 2 Defining programs 5 8 Defining routines 5 11 Entering ladder logic 5 13 Scheduling system overhead 5 15 Downloading a program 5 16 The controller operating system is a preemptive multitasking system that is IEC 1131 3 compliant Th
97. as the last instruction on the rung is an output instruction The controller evaluates ladder instructions based on the rung condition preceding the instruction rung condition in Based on the rung condition in and the instruction the controller sets the rung condition following the instruction rung condition out which in turn affects any subsequent instruction input instruction output instruction li ior ee ae rung in rung out condition condition If the rung condition in to an input instruction is true the controller evaluates the instruction and sets the rung condition out based on the results of the instruction If the instruction evaluates to true the rung condition out is true if the instruction evaluates to false the rung condition out is false An output instruction does not change the rung condition out If the rung condition in to an output instruction is true the rung condition out is set to true If the rung condition in to an output instruction is false the rung condition out is set to false 1756 6 5 12 March 1999 5 14 Developing Programs 1756 6 5 12 March 1999 Entering branches There is no limit to the number of parallel branch levels the controller supports The following figure shows a parallel branch with five levels The main rung is the first branch level followed by four additional branches input instruction output instruction fe N KF C N N F Ce
98. ase and numbers Task program routine structure and tag names 2 2 Identifiers using upper case numbers and Task program routine structure and tag names embedded underlines 2 3 Identifiers using upper and lower case numbers and Task program routine structure and tag names embedded underlines 4 1 Integer litera 12 0 12 4 2 Real literal 12 5 12 5 4 3 Real literal with exponents 1 34E 12 1 234E8 4 4 Base 2 literal 2 0101_0101 4 5 Base 8 literal 8 377 4 6 Base 16 literal 16 FFE0 4 7 Boolean zero and one 0 1 5 1 Empty String Descriptions 5 2 String of length one containing a character A Descriptions 5 3 String of length one containing a space Descriptions 5 4 String of length one containing a single quote Descriptions character 5 5 String of length two containing CR and LF R L Descriptions 6 2 String dollar sign Descriptions 6 3 String single quote Descriptions 6 4 String Line Feed L or I Descriptions 6 5 String New line N or n Descriptions 6 6 String From Feed page P or p Descriptions 6 7 String Carriage return R or r Descriptions 1756 6 5 12 March 1999 IEC1131 3 Compliance B 5 Table Number Feature Number Feature Description Implementation Notes 6 8 String Tab
99. ations to be polled list 1 contains address of station currently being polled list 2 contains address of first slave station to poll list 3 contains address of second slave station to poll listin contains address of last slave station to poll Active station tag Standard polling modes only An array that stores a flag for each of the active stations on the DF1 link Both the normal poll array and the priority poll array can have active and inactive stations A station becomes inactive when it does not respond to the master s poll Create a single dimension array of data type SINT that has 32 elements 256 bits This tag must be controller scoped Error detection Select BCC or CRC error detection Configure both stations to use the same type of error checking BCC the controller sends and accepts messages that end with a BCC byte for error checking BCC is quicker and easier to implement in a computer driver This is the default CRC the controller sends and accepts messages with a 2 byte CRC for error checking CRC is a more complete method Enable duplicate Select whether or not the controller should detect detection duplicate messages The default is duplicate detection enabled If you choose one of the standard polling modes The master station polls the slave stations in this order 1 2 all stations that are active in the priority poll array one station that is inactive in the priority poll array
100. axes see the ControlLogix Motion Module User Manual publication 1756 6 5 16 For more information on individual motion instructions see the Logix5550 Controller Instruction Set Reference Manual publication 1756 6 4 1 Integrating Motion 10 13 Understanding the MOTION_ INSTRUCTION tag Each motion instruction has an operand named Motion control This field uses a MOTION_INSTRUCTION tag to store status information during the execution of motion instructions This status information can include instruction status errors etc MSO Motion Servo On _The Axis DN3 Motion control t Motion control ER operand ATTENTION Tags used for the motion control operand of motion instruction should only be used once Re use of the motion control operand in other instructions can cause unintended operation of the control variables For more information about the MOTION INSTRUCTION tag see appendix C Structures in the Logix5550 Controller Instruction Set Reference Manual publication 1756 6 4 1 Using motion status and configuration parameters You can read motion status and configuration parameters in your logic using two methods Method Example Directly accessing the MOTION_GROUP and AXIS structures e Axis faults e Motion status Servo status Using the GSV instruction e Actual position e Command position e Actual velocity For more information on these methods see the Logix5550 Controller Instructio
101. ber to ensure that the physical module matches the configured module Electronic Keying Select an electronic keying method 1756 6 5 12 March 1999 10 4 Integrating Motion Naming an axis To name an axis click New Axis in the module properties window Hojel Peoperted Loca 156 MORE 11 Typa TEHE 2 door nog rode Serves Mka tier Faden Corg ben Pare Lonel Make sure you have entered gt Hare wk a a servo module name TESS ooo al Anaad dpa zi xt irene zj Har s C a Bese O 2 Eemien ertene toes __ nor Tame _teo_ Specify this information we 7 Ce Gaccoter Cai zi Thie Boe m Corman 1 E I Padua thi tagia up o sora In this field Enter Name Enter the name of the axis Description Enter a description of the axis optional 1756 6 5 12 March 1999 Integrating Motion 10 5 Configuring a servo axis To configure your new axis 1 Click Configure in the new tag window Make sure you have pare f img Oe entered an axis name Lao Sea A d TTE Bow O im Cored osai s r qh a z s a I Badu than tagia up io ora 2 Select the type of axis and axis positioning Houle Durna gt Ine ard Peniiorang Mads ae we cen Fan In this field Enter Type Select the type of axis you want Positioning Mode Select the type of axis positioning you want to use Click Next Go to step 3 1756 6 5 12 March 1999
102. c keying is disabled but you can still select a minor revision of the controller If you want to add a PLC 5 ControlNet processor add it to the local 1756 CNB communication bridge module Producing a Tag Produced data must be of DINT or REAL data type or an array or structure You can use a user defined structure to group BOOL SINT and INT data to be produced 1 In the Tag Editor select the tag A produced tag is a tag that is configured for periodic transmission 2 Click the right mouse button and select from the controller via the ControlBus backplane To create a Tag Properties produced tag create a tag base alias or consumed and specify to produce the tag F Conlicie age daamplaciconalia As Tag Peopestien wolus 1 1756 6 5 12 March 1999 Communicating with Other Controllers 6 13 To specify a produced tag In this field Enter Name Enter a name for the tag Description Enter a description for the tag optional Tag Type Select one of these Base normal tag Alias tag that represents another tag with the same characteristics Consumed tag that is produced by another controller whose data you want to use in this controller Data Type Select the data type The programming software displays a list of the available data types The list consists of the predefined data types and any user defined data types If the tag is to be an array specify the number of elements in each dimension There
103. can be as many as 3 dimensions If the tag is not an array or you do not want all 3 dimensions set the dimension fields to zero 0 Scope All produced tags must have controller scope Style Select the display style of the tag The programming software displays a list of the available styles which depends on the data type The style you select becomes the default display type when monitoring that tag with the programming software Produce this tag Select whether to make this tag available to other controllers Specify the maximum number of other controllers that can consume the tag You can only choose to create a produced tag when programming offline Conticiie age Select Produced Tags gt A produced or consumed tag cannot be larger than 500 bytes You can produce a base alias or consumed tag The consumed tag in a Logix5550 controller must have the same data type as the produced tag in the originating Logix5550 controller The Logix5550 controller performs type checking to ensure proper data is being received You can display a list of produced tags in the tag editor of the current project quack siart coliciin Soop PSone Sapa irae Tagi bat Tg Mes Ta Shere Al 1756 6 5 12 March 1999 6 14 Communicating with Other Controllers Produced tags require connections The number of connections depend on the amount of data and how many controllers are producing and consuming tags For more informa
104. cating with digital Digital Modules User Manual publication 1756 6 5 8 I O modules Configuring and communicating with analog Analog Modules User Manual publication 1756 6 5 9 I O modules Selecting and installing a chassis ControlLogix Chassis Installation Instructions publication 1756 5 69 Selecting and installing a power supply ControlLogix Power Supply Installation Instructions publication 1756 5 1 Who Should Use This Manual This document provides a programmer with information about how the Logix5550 controller e stores and processes data e operates e communicates with other modules e processes and handles fault information 1756 6 5 12 March 1999 ii Using This Manual Purpose of This Manual Conventions and Related Terms 1756 6 5 12 March 1999 This manual is intended to help you design and operate a system using a Logix5550 controller The first chapter in this manual provides the steps and information you need to get started Use the remainder of this manual to help you e work with controller projects e configure I O modules e organize data e develop programs e configure produced and consumed data e account for communication connections communication over a serial network communicate over other networks e identify and process controller faults This manual includes a glossary to define common terms Table of Contents Getting Started Chapter 1 Using This Chapters 4444 sha coals hes eoulyw ses
105. ce off An alias tag shares the same data value as its base tag so forcing an alias tag also forces the associated base tag Removing a force from an alias tag removes the force from the associated base tag Use the data monitor or ladder editor of the programming software to enter forces Entering forces from the data monitor From the data monitor you can force a value in two ways You can e force a whole data value For SINT INT DINT and REAL values you can force all the bits as one entity the entire value e force the individual bits within a SINT INT or DINT value Forcing 1 0 11 3 If you want to Do this force a whole SINT INT DINT or REAL value To force a whole value type a force value in the Force Mask column using a decimal octal hexadecimal or float exponential format For a REAL value you must use a float exponential format To remove a force for a whole value type a space force bits within a value To force an individual bit in a SINT INT or DINT value expand the value and edit the Force Mask column The force value is displayed in binary style where 0 indicates force off 1 indicates force on un indicates no force You can also use the bit pallet to select a bit to force force a BOOL To force a BOOL enter the force value where 0 indicates force off 1 indicates force on To remove a force type a space Entering forc
106. clude any time spent waiting for other programs or higher priority tasks These values are display only Creating routines 1 Select a program power 1 in this example You can create multiple routines for the power up program One l 2 Click the right mouse button and select New routine must be configured as the main routine for the program This routine can call other routines Ee J ym fesh Lope Gewenkeiors To iis ajaa a ae To create a power up routine In this field Enter Name Enter the name of the routine Description Enter a description of the routine optional Type Select the programming language used to create the routine Ladder is the default In Program Leave this selection alone It automatically defaults to the power up program 1756 6 5 12 March 1999 13 6 Preparing a Power Up Program Naming routines Routine names follow IEC 1131 3 identifier rules and e must begin with an alphabetic character A Z or a z or an underscore _ e can contain only alphabetic characters numeric characters and underscores e can have as many as 40 characters e must not have consecutive or trailing underscore characters _ Routine names are not case sensitive Clearing the Major Fault To check and clear the major fault follow these steps 1 Create a user defined structure to store the fault information The format must be as follows you can change the structure and member names but the
107. connections Device Description Connections 1756 L1 Logix5550 Controller 250 bidirectional 500 unidirectional 1756 I O modules ControlLogix I O modules 16 bidirectiona 1756 CNB ControlLogix ControlNet Bridge 64 bidirectiona 1756 CNBR 1756 ENET ControlLogix Ethernet Bridge 16 bidirectiona 1756 DHRIO ControlLogix DH Bridge and 32 bidirectional per DH channel Reman Scanner 32 bidirectional rack connections and 16 bidirectional block transfer connections per remote 1 0 channel 1756 DNB ControlLogix DeviceNet Bridge 2 bidirectional 1756 6 5 12 March 1999 7 2 Allocating Communication Connections Determining Connections for I O Modules 1756 6 5 12 March 1999 All I O modules can have a direct bidirectional connection to the controller A 1756 CNB ControINet bridge module supports the ability to organize a chassis of digital I O modules into one bidirectional connection rack connection rather than requiring a direct bidirectional connection for each individual I O module You can configure these types of connections to these modules A Logix5550 connection to Can use this connection type local 1 0 direct connection only remote 1 0 direct connection or rack optimized connection Direct connections for I O modules A direct connection is a real time data transfer link between the controller and an I O module The controller maintains and monitors the connection between the cont
108. controller and a matching project file with the same name already exists on the hard drive of the workstation the upload process offers two choices If you use Select File and enter a new name the process saves the project to the workstation under a different name If you select Upload Merge the process merges the project image in the controller with the comments and descriptions in the project file on the workstation Using Coordinated System Time 1 Place the cursor over the Controller folder 2 Click the right mouse button and select Properties A Dii Tay Vedy Coniecdies Fed Pranlip Ha Only one controller in a chassis can be the CST master Working with Projects 2 5 The coordinated system time CST property specifies a synchronized time value for all the modules within a single ControlLogix chassis The CST timestamp is a 64 bit value that represents the number of microseconds since the CST master started counting CST data from modules within a single ControlLogix chassis can be compared to determine the relative time between data samples When there is a CST master in the chassis all the I O modules and controllers in that chassis keep their CST clocks synchronized You must have a CST master if you use the 1756 M02AE servo module To define a controller as the master select the check box g Contesiiey Propan pi phat oia Eei Putaka Mina Fits O ee Fonts O aed O File Gerar Daens Corsamicsin GeisPr
109. cribes the feature of the ControlLogix I O line which supports multiple controllers receiving input data from the same I O module at the same time A configuration setup where more than one controller has exactly the same configuration information to simultaneously own the same input module Names identify tags and modules The naming conventions are IEC 1131 3 compliant A name e must begin with an alphabetic character A Z or a z or an underscore _ e can contain only alphabetic characters numeric characters and underscores e can have as many as 40 characters e must not have consecutive or trailing underscore characters _ The repetitive time interval in which data can be sent on a ControlNet network The network update time ranges from 2ms 100ms object octal owner controller path periodic task periodic task overlap predefined structure prescan A structure of data that stores status information When you enter a GSV SSV instruction you specify the object and its attribute that you want to access In some cases there are more than one instance of the same type of object so you might also have to specify the object name For example there can be several tasks in your application Each task has its own TASK object that you access by the task name Integer values displayed and entered in base 8 each digit represents three bits Prefixed with 8 Padded out to the length of the boolean or integer
110. cture cc cece eee ees 12 20 Chapter 13 Using This Chapter author erat er eek oe eee ues be 13 1 How the Controller Powers Up in Run Mode 13 1 Processing the power up handler 13 2 Creating the Power Up Handler nananana 13 3 Creating a program for the power up handler 13 3 Naming programsS i444 tanya cA dees teehee 13 3 Selecting an unscheduled program 4 13 4 Configuring programs iicieraminuire ene cai 13 4 Creating routines aaua 13 5 Naming routines 0 fo Sahokatatatetahata tats 13 6 Clearing the Major Fault cc cece eee 13 6 Appendix A Using This Appendix nasan uaaa aaan A 1 Identifying Controller Components 000 A 1 Monitoring Controller Status LEDS 008 A 2 Determining which modules are not responding A 3 Monitoring Controller Status 00 cee eens A 5 Viewing status through the programming software A 5 Monitoring status flags cc cece eee ees A 6 Using GSV SSV instructionS cece eee A 6 Changing Controller Mod 0 cece eee eee A 8 Examining Controller Prescan Operations A 9 Instructions with unique prescan operations A 9 Recovering from prescan errors 2c eee A 10 Table of Contents toc vii 1EC1131 3 Compliance Appendix B Using This Appendix vivre cons ayes aaa a cok caro B 1 IEC CHGTION eae ienee cv atev aE alee anc stewie ate seven B 1 Op rating System ti tiv
111. d take appropriate action MajorFaultBits record in the FAULTLOG object 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 j11 10 9 8 7 6 5 4 3 2 1 0 power loss 0 instruction execution program fault handler y watchdog Y stack Y mode change Y motion axis Qu EQU Equal Equal Source MyFaultRecord Type Source MyFaultRecord Code 0 0 Source B 4 Source B 34 Examine the MyFaultRecord Type and MyFaultRecord Code members to determine the type of major fault This example looks for specific fault types and codes 5 Take appropriate action Develop your own logic to respond to the major fault 1756 6 5 12 March 1999 12 14 Handling Controller Faults 6 If you decide to clear the fault A Clear the type and code members of the tag MyFaultRecord Type and MyFaultRecord Code shown above Move Source D Dest MyFaultRecord Type g Move Source 0 Dest MyFaultRecord Code o Use MOV instructions to clear the type and code values B Use an SSV instruction to clear the fault by copying the tag MyFaultRecord TimeLow to the MajorFaultRecord of the PROGRAM object Set system value Object class PROGRAM Object name THIS Attribute name MAJORFAULTRECORD Source MyFaultRecord TimeLow p The Source tag must point to the first member of the
112. data it might be more efficient to create a structure instead of an array The following examples show memory allocation for base tags using the atomic data types bool valueas BOOL This example uses one bit of the data allocation Bit 31 1 0 allocation not used bool_value Small_value as SINT This example uses 8 bits of the data allocation Bit 31 8 7 0 allocation not used small_ value value as INT This example uses 16 bits of the data allocation Bit 31 16 15 0 allocation not used value big_value as DINT This example uses all 32 bits of the data allocation Bit 31 0 allocation big_value float_value as REAL This example uses all 32 bits of the data allocation Bit 31 0 allocation float_value 1756 6 5 12 March 1999 4 8 Organizing Data 1756 6 5 12 March 1999 Conversion large integer to small integer Data type conversions If you mix data types for parameters within an instruction some instructions automatically convert data to an optimal data type for that instruction In some cases the controller converts data to fit a new data type in some cases the controller just fits the data as best it can Result The controller truncates the upper portion of the larger integer and generates an overflow For example Decimal Binary DINT 65 665 0000 _0000_0000_0001_0000_0000_1000 0001 INT 129 0000_0000_1000 0001 SINT 127 1000_0001 SINT or INT to REAL No data precision is lost
113. dded out to the length of the boolean or integer 1 8 16 or 32 bits When displayed every group of four digits is separated by an underscore for legibility See decimal hexadecimal octal Binary digit The smallest unit of memory Represented by the digits 0 cleared and 1 set 1756 6 4 1 March 1999 BOOL byte cached connection change of state COS CIP communication format compatible module connection consumed tag continuous task Control and Information Protocol ControlBus 1756 6 4 1 March 1999 An atomic data type that stores the state of a single bit 0 or 1 A unit of memory consisting of 8 bits With the MSG instruction a cached connection instructs the controller to maintain the connection even after the MSG instruction completes This is useful if you repeatedly execute the MSG instruction because initiating the connection each time increases scan time See connection uncached connection Any change in the status of a point or group of points on an 1 O module See Control and Information Protocol Defines how an I O module communicates with the controller Choosing a communication format defines e what configuration tabs are available through the programming software e the tag structure and configuration method An electronic keying protection mode that requires that the vendor catalog number and major revision attributes of the physical module and the module configured in
114. description for the controller optional Slot Number Enter the slot number where the controller is installed Electronic Keying Electronic keying is disabled but you can still select a minor revision of the controller Identifying a remote controller Identifying a remote controller is similar to adding I O modules to the controller organizer You can follows these steps for either a remote Logix5550 controller or a remote ControlINet PLC 5 controller You must use a 1756 CNB or 1756 CNBR module 1756 6 5 12 March 1999 1 Select 1 0 Configuration 1 2 Click the right mouse button and select New Module Ee EE ree Geet be ewe alal ef myer Drem SBTC i Contain quack rat A Conwell Tay Corbais Full Heda Poran Lar Harri Ti Ae aT ah P Jaiki egm J Caa Teper p eHre Up ehini a eg Modir Doire i Hj 1E an 1 Select the 1756 CNB module 2 2 Click the right mouse button and select New Module ic Loge A sehr Fee pi jee jab j Cemented Jem a 2 Tp Hmi Poh ry TPR ep ae iit Communicating with Other Controllers 6 11 Configure a 1756 CNB module for the local chassis This module handles communications between the local controller s chassis and the remote chassis Specify Tp ALONE 154 Lono Bicige Weni BlleyrBluslieg Mapa Sgr fi In this field Enter Name Enter a name for the module required Description Enter a description for the module optional
115. dule SSV_state input_mod_mode 2 r Set system value CIP Object class MODULE CIP Object name input_module Attribute name Mode Source input_mod_mode D Configuring I O in a remote chassis is similar to configuring local 1 O The difference is that you must also configure the communication module in the local chassis and the communication module or adapter in the remote chassis The following example shows how to add the remote chassis and I O to the controller organizer How you configure the communication and I O modules depend on the network For details see Use this module See this publication 1756 DHRIO Data Highway Plus and Remote I O Communication Interface Module User Manual publication 1756 6 5 2 Contro Net network 1756 CNB ControlNet Communication Interface User Manual publication 1756 6 5 3 Device Net network 1756 DNB DeviceNet Scanner Configuration User Manual publication 1756 6 5 15 Ethernet network 1756 ENET Ethernet Communication Interface Module Manual publication 1756 6 5 1 1756 6 5 12 March 1999 3 12 Configuring 1 0 Modules 1 Configure a communication module for the local chassis This module handles communications between the controller chassis and the remote chassis Then specify this information 1 Select I O Configuration 2 Click the right mouse button and select Deer ABA New Module Fil mp WEEE pami i Fa pi pa ee ee pnn Tpm IHN 1754 ont
116. e LFL scan begins FFU The EU bit is set to prevent a false unload when the first LFU Run mode scan begins FOR Ladder instructions within the loop are prescanned J SR The subroutine is invoked and prescanned If recursive calls are made to the subroutine the subroutine is only prescanned the first time it is called ONS The programmed bit address of the instruction is set to inhibit OSR false triggering when the first Run mode scan begins OSF The programmed bit address of the instructions is reset to inhibit false triggering when the first Run mode scan begins SQL The EN bit is set to prevent a false increment of the position 500 when the first Run mode scan begins TOF The TT bit is reset and the ACC is set to equal the PRE See the Logix5550 Controller Instruction Set Reference publication 1756 6 4 1 for specific details on how each instruction is prescanned 1756 6 5 12 March 1999 A 10 Troubleshooting Recovering from prescan errors If an indirect reference is used by one of these instructions and the pointer to this reference is initialized at run time there is a chance that an error might occur during prescan Use a program fault routine to trap the prescan error and reset the error so the controller can continue with the prescan process The following example shows a sample program and fault handler The example logic uses this fault record structure Data Type FaultRecordType OF x
117. e catalog number major revision minor revision ATTENTION Changing the RPI and electronic keying selections may cause the connection to the module to be broken and may result in loss of data ATTENTION Be extremely cautious when using the disable keying option If used incorrectly this option can lead to personal injury death property damage or economic loss communication format input data communication format listen only 2 0000_0000_0000_0000_0000_c000_0000_o000 2 0000_0000_0000_0000_0000_0000_0000_0000 Configuring I O Modules 3 7 Configuring communication format The communication format determines the data structure the I O module uses as well as the type of connection made to the module and the controller ownership of the module Many I O modules support different formats Each format supports a different data structure Use the documentation for the I O module to determine what data format to use The larger data formats use more controller memory and use more bandwidth on the communication network For example the following structures are available for a 1756 IB16 module The communication format determines the predefined tags o 2 0000_0000_0000_0000_1111_1111_1111_1111 2 0000_0000_0000_0000_1111_1111_1111_1111 2 0000_0000_0000_0000_0000_0000_0000_0000 2 0000_0000_0000_0000_0000_0000_0000_0000 1756 6 5 12 March 1999 3 8 Configuring 1 0 Modules Controlling This ownership input modul
118. e 3 2 3 3 changing configuration 3 15 configuring local 3 4 configuring remote 3 11 connection 7 2 controller ownership 3 7 creating sample 1 7 1 9 data structure 4 10 determining if not responding A 3 direct connection 7 2 electronic keying 3 6 inhibit operation 3 9 monitoring fault 12 2 naming 3 5 operation 3 3 properties 1 11 rack optimized connection 7 4 RPI 3 3 updates 3 2 viewing fault information 3 19 I O tags forcing 11 1 IEC 1131 3 compliance data definitions B 2 instruction set B 3 introduction B 1 operating system B 2 program portability B 4 programming language B 3 tables B 4 indexing 4 14 individual tag 4 6 inhibit I O operation 3 9 1756 6 5 12 March 1999 installing controller module 1 3 ESD precautions 1 2 preparing the controller 1 3 instruction set B 3 integrating motion 10 1 introduction 1 1 K keying electronic 3 6 keyswitch A 8 L LED states A 2 listen only 3 7 local example I O addressing 3 17 1 0 module 3 4 logic branch 5 14 entering 1 16 5 13 major fault 12 12 minor fault 12 5 12 7 scan 3 2 M major fault clearing 13 6 controller fault handler 12 9 controller fault handler 12 16 description 12 1 logic 12 12 power up handler 13 1 processing 12 9 program fault routine 12 9 12 16 types and codes 12 14 mapping an address 6 4 master Slave communication 8 5 member 4 12 memory controller 4 1 usage 1 22 memory allocation array 4 17 base tag 4 6 Structure
119. e Powe ala a fe A Place the cursor over the Controller quick_start folder w z z Drie AE DFi B Click the right mouse button and select Properties p lt GB Crinia Tay Way Corio Fl FPomnlip Har E a L oc Select the Major Faults tab or the Minor Faults tab to view ad i Rr sawp current fault information p SerialPort Protoce Mar Fati MiFi agaecsd File He marar Pah meem lar dood i Fiecord Fultr cem o ential Propet e Gead Dastre Cumra Sei Pot Proce Hanfa reata dcaa Fle He reime Puii area bail cleared T as a ee A Monitoring I O Faults Each I O module has status bits that indicate when a fault occurs Your control application should monitor these status bits If any faults exist your application should take appropriate action such as shutting down the system in a controlled manner If the controller detects a fault with one of its I O modules the programming software displays a yellow attention symbol over the device and the I O Configuration folder in the controller organizer You can also view I O faults on the connection tab of the module properties For more information see Viewing Module Fault Information on page 3 19 1756 6 5 12 March 1999 Handling Hardware Faults Processing Minor Faults Handling Controller Faults 12 3 You can configure the controller so that the controller generates a major fault if it loses its connect
120. e module Chassis Size Enter the chassis size number of slots of the remote chassis Electronic Keying Select an electronic keying method When you click on a local communication module and add a remote communication module the local module becomes the parent module to the remote module The controller organizer shows this parent child relationship between local and remote modules If you are configuring a 1756 CNB module for the remote chassis A Add I O to the chassis B Run RSNetworx software to configure the connections C Download the project to the Logix5550 controller 1756 6 5 12 March 1999 3 14 Configuring 1 0 Modules 1 Select the remote communication module 3 Now you can configure the I O modules for the remote chassis by 2 Click the right mouse button and select adding them to the remote communication module Follow the New Module same procedure as you do for configuring local I O modules Se Medel Proposes temete_on U7S4B05 21 fe pE ens ined jap Geers ain i i AL ES ala es CE Co eT Tope FS 1 E Pont 10 5 YE nga al Varnion ikm erip Haga Sot fi In this field Enter Name Enter a name for the module optional Description Enter a description for the module optional Slot Number Enter the slot number where the module is installed Communication Format Select one of the communication formats supported by the module Some formats specify contr
121. e specified amount of time 9 9 Modem contact was lost Correct modem connection to the controller DCD and or DSR control lines are not being received in proper sequence and or state 10 10 Battery not detected or needs to be replaced Install new battery 1756 6 5 12 March 1999 Processing Major Faults Handling Controller Faults 12 9 The controller supports two levels for handling major faults e program fault routine e controller fault handler control application controller fault handler power up handler task 32 task 1 configuration status program 32 program program 1 main routine program local tags fault routine watchdog other routines controller global tags 1 0 data system shared data 40012 Each program can have its own fault routine The controller executes the program s fault routine when an instruction fault occurs Ifthe programs fault routine does not clear the fault or a program fault routine does not exist the controller proceeds to execute the controller fault handler if defined If the controller fault handler does not exist or cannot clear the major fault the controller enters faulted mode and shuts down At this point the FAULTLOG is updated See the ne
122. e uses change of state COS Digital input modules in the local chassis use the change of state method to transfer data This method transfers data whenever an input point changes from ON to OFF or OFF to ON Use change of state data exchange in projects where e data changes rapidly such as counting timing and position referencing applications e data is digitally intensive such as packaging and material handling applications How I O Modules Operate Module Type Placement digital input local chassis Configuring I O Modules 3 3 You must specify an RPI regardless of whether you enable COS Ifa change does not occur within the RPI timeframe the module multicasts data at the rate specified by the RPI How an I O module uses the requested packet interval RPI The requested packet interval is a cyclic data exchange that specifies the rate at which a module multicasts its data Data is updated at a rate that is appropriate to the module and your project You can reserve bandwidth for rapidly changing modules Data updated at precise intervals provides for better determinism Use cyclic data exchange in projects where e data changes slowly such as measuring temperature or flow e data exchange must be predictable and repeatable e you need precision sampling for closed loop control PID e data is needed for trending data logging etc When an analog module uses real time sampling RTS Analog input modules use real ti
123. eating programs oaaao 5 9 Naming DOGS Mat aaa 5 9 Configuring programs nsss auaa aa 5 10 Defining Routines v4 4 45 boos bo ee bons Sos Gals 5 11 Creating TOUNNGS 2 aun anis ets ses inee sia 5 11 Naming routines a cisty sty shy uty gy iu gs hy dulghtahatty 5 12 Configuring routines 00 cece eee ees 5 12 Entering Ladder Logic sit othe ean 5 13 ENtenNG branches v3 5668s aske Saree yo ha aw aed 5 14 Scheduling System Overhead 000c eee naa 5 15 Downloading a Project i cake teen na eee 5 16 Communicating with Other Chapter 6 Controllers Using This Chapter si s 6 1 Using MSG Instructions n annuun aaaea 6 1 Communicating with another Logix5550 controller 6 1 Communicating with other processors 005 6 2 Mapping addresses nuaa 6 4 Using Produced and Consumed Tags 6 6 Processing produced and consumed tags 6 7 Maximum number of produced and consumed tags 6 8 Planning to Support Produced and Consumed Tags 6 9 Identifying another local controller 0 6 10 Identifying a remote controller cc cece eens 6 10 Prod cing AlaGly eke aei ene eee eee ae hed a 6 12 CONSUMING a Tag er garnet wae ews 6 14 Sending Large Arrays of Data 0 rennan 6 17 1756 6 5 12 March1999 toc iv Table of Contents Allocating Communication Connections Communicating with Devices on a Serial Link Communicating with a Workstation 1756 6 5 12 March1999
124. ecify a bit Operator Description add subtract negate multiply l divide AND AND FRD BCD to integer NOT complement OR OR TOD integer to BCD SQR square root XOR exclusive OR For example Example Description value 5 Both of these examples reference the 6 bit in value 5 the integer value When you use an immediate number you do not need the brackets value another_ value This example references the bit identified by another_value within the integer value value control pos This example references a bit identified by control pos within the integer value value control pos number 5 This example uses an expression to identify a bit within the integer value A structure stores a group of data Each member of the structure can be a different data type The controller has its own predefined structures Each I O module has its own predefined structures You can also create specialized user defined structures using any combination of predefined atomic data types and most other structures For information about copying data to a structure see the COP instruction in the Logix5550 Controller Instruction Set Reference Manual publication 1756 6 4 1 1756 6 5 12 March 1999 4 10 1 2 Click the right mouse button and select 1756 Organizing Data Select Data Types New Data Type Ele fal ties garte Loge orrai ajea a e ewer B DFii
125. ecution stops the controller shuts down and outputs go to their configured state See faulted state minor fault The 1756 line of modules have major and minor revision indicators The major revision is updated any time there is a functional change to the module See electronic keying minor revision 1756 6 4 1 March 1999 master CST member memory minor fault minor revision multicast multiple owners name network update time NUT 1756 6 4 1 March 1999 Within a single chassis one and only one controller must be designated as the Coordinated System Time CST master All other modules in the chassis synchronize their CST values to the CST master An element of a structure that has its own data type and name Members can be structures as well creating nested structure data types Each member within a structure can be a different data type See structure Electronic storage media built into a controller used to hold programs and data A malfunction either hardware or instruction that sets a minor fault bit but allows the logic scan to continue See major fault The 1756 line of modules have major and minor revision indicators The minor revision is updated any time there is a change to a module that does not affect its function or interface See electronic keying major revision A mechanism where a module can send data on a network that is simultaneously received by more that one listener Des
126. ed an error The service was not performed successfully Module configuration The configuration in the module is invalid This rejected commonly happens when a second controller tries to share ownership of an input module but the module configuration does not match the configuration already in the input module Module key mismatch Electronic keying is enabled and some part of the keying information differs between the software and the module Module Info tab from module properties This tab displays module and status information about the module You can also reset a module to its power up state You must be online to use this tab Backplane tab from module properties This tab displays diagnostic information about the module s communications over the backplane and the chassis in which itis located You can also clear module faults and reset the transmit retry limit 1756 6 5 12 March 1999 Troubleshooting From the Module Properties tabs you can view and edit 1 Select a module 1756 IB16 in this example 2 Click the right mouse button and select Properties On this tab General Ele Edi jea Gea Loge Dorama alea slee r E ac fka Echt Gere AB DFii Doniol g a 2 Gone Tayi Cirka Iet harek Piran ip Hanie i T a In this field Enter Name The programming software displays the current name of the module Description The programming software displays the current descript
127. ed motion control support The Logix5550 controller contains a high speed motion task which executes the ladder motion commands and generates position and velocity profile information This profile information is sent to one or more 1756 M02AE servo modules Several Logix5550 controllers can be used in each chassis Each controller and chassis can control up to 16 1756 M02AE servo modules The 1756 M02AE servo module connects to a servo drive and closes a high speed position and velocity loop Each Logix5550 controller can support up to 16 1756 M02AE servo modules Each 1756 M02AE module can control up to two axes RSLogix 5000 programming software provides complete axis configuration and motion programming support RSLogix5000 Software Logix5550 Controller 1756 MO2AE Servo Module Drive Integrated Program Execution Position Velocity Axis Motion Motor Configuration Programming l Feedback Motion Trajectory Planner Drive Position Velocity Position Velocity O Motor Feedback 41383 1756 6 5 12 March 1999 10 2 Integrating Motion Developing a Motion Control Application Program To open the controller properties window 1 Place the cursor over the Controller folder 2 Click the right mouse button and select Properties Be EJ ee jesh Loe Powers ala a fe fa ha Esh Erre E DFii aA Dimis Ta Ve Condens Fed Pranlip Ha 1756 6 5 1
128. epresentation of day 1 31 DINT 3 hour 0 23 DINT 4 minutes 0 59 DINT 5 seconds 0 59 DINT 6 microseconds 0 999 999 You could also use a GSV instruction to capture the CurrentValue attribute of the WALCLOCKTIME object into a DINT 2 This provides the number of microseconds that have elapsed since 12 00 am 1 January 1972 This element Contains DINT 0 lower 32 bits of value DINT 1 upper 32 bits of value Using This Chapter Introduction 2 make decisions via a control program ladder logic based on the status of devices 1 read the status of various input devices such as pushbuttons and limit switches Chapter 3 Configuring I O Modules For information about See page How the controller scans 1 0 3 1 Defining I O updates 3 2 How O modules operate 3 3 Configuring local 1 0 3 4 Configuring remote I O 3 11 Accessing 1 0 3 16 Viewing module fault records 3 19 The configuration information for the module depends on the module you selected For more information see the user documentation for the specific module This document Has this publication number Digital Modules User Manual 1756 6 5 8 Analog Modules User Manual 1756 6 5 9 The basic function of a programmable controller is to 3 set the status of output devices such as lights motors and heating coils 40015 T
129. er for each supported network The default communication driver for the controller is the DF1 driver which you would use if the programming terminal is connected directly to the controller through the serial port If the programming terminal is connected to the controller through some other network path configure the necessary communication driver For more information about configuring a connection path see chapter 9 1756 6 5 12 March 1999 1 From the Communications menu item select Configure 2 Select the Communications tab 1 From the Communications menu item select Download Developing Programs 5 17 2 Select the communication driver to use Ytokrhoteon D plier Leder lpkn FontiLokw Tog Depis Preiser Cera art Metin Lier Diagn m Si on Bem In this field Enter Driver Use the drop down menu to select the driver These selections are only available if they have already been configured through RSLinx communication software e ControlNet AB_KTC DF1 AB_DF1 DH AB_KT Ethernet TCP The communication protocol is displayed next to selected driver Path Specify the communication path to the controller from the device that is downloading the project For more information about connection paths see chapter 9 If the programming terminal is directly connected to the serial port of the controller DF1 protocol leave the connection path field empty 3 The contro
130. er or an underscore _ e can contain only alphabetic characters numeric characters and underscores e can have as many as 40 characters e must not have consecutive or trailing underscore characters _ You can also add descriptions to modules Descriptions can have as many as 128 characters You can use any printable character 1756 6 5 12 March 1999 3 6 Configuring 1 0 Modules 1756 6 5 12 March 1999 Electronic keying ATTENTION Becareful when you disable electronic keying If used incorrectly this option can lead to personal injury or death property damage or economic loss Specify electronic keying to ensure that a module being inserted or configured is the proper revision Models Propeties Local i 756 1A16 2 ip Tupa TFSI 16 Pont ERII L Irgat Marski ikm delice Peer Lipa Hara Hot Dimen z Coram Foray irea Dats ram E fi Electors Begg Comcaobie Module Keying Cancel flack Bjt 3 I Frans Heip Description compatible module The module must be compatible with the software configuration These characteristics must match module type catalog number e major revision The minor revision must be equal to or greater than the one specified in the software disable keying No attributes of the software or hardware are required to match exact match The module must match the software configuration exactly These characteristics must match module typ
131. es from the ladder editor From the ladder editor you can set forces only for BOOL tags or integer bit values used in bit instructions Right click on the BOOL tag or bit vattve to Select Force On Force Off or Remove Force Ba a Emas Piebe Fon Tamaddi iin Di Toa ir hmi Merson ie ea i 1756 6 5 12 March 1999 11 4 Forcing 1 0 For forced values in the more complex instructions you can only remove forces You must use the data monitor to set force values for these values Right click on the forced value ___B gt Select Remove Force Enabling Forces ia Th z T m T u Cones Pipes en Lani H te DE Le te Pepsin hrinti hee As F Teal H Once you set which values or bits to force you enable forces for the force values to take affect You can only enable and disable forces at the controller level You cannot enable or disable forces for a specific module tag collection or tag element ATTENTION Enabling forces causes input and output values to change Keep personnel away from the machine area Forcing can cause unexpected machine motion that could injure personnel You enable forces from the Online Bar Forces Installed indicates that force values have been entered iol MSLagia MANO ri alam Ble Ed bea pash Loge owarksksa adi W Bla ole Select Enable all forces fs Eii Foci in E ac Erre AE DFii Conio quick ole Important If you download a project tha
132. es owner Selecting controller ownership The ControlLogix architecture makes it possible for more than one controller to communicate with own one I O module Multiple controllers can own an input module only one controller can own an output module There is a noted difference in controlling input modules versus controlling output modules Description An input module is configured by a controller that establishes a connection as an owner This configuring controller is the first controller to establish an owner connection Once an input module has been configured and owned by a controller other controllers can establish owner connections to that module This allows additional owners to continue to receive multicast data if the original owner controller breaks its connection to the module All other additional owners must have the identical configuration data and identical communications format that the original owner controller has otherwise the connection attempt is rejected listen only Once an input module has been configured and owned by a controller other controllers can establish a listen only connection to that module These controllers can receive multicast data while another controller owns the module If all owner controllers break their connections to the input module all controllers with listen only connections no longer receive multicast data output modules owner An output module is configured by a c
133. ese cases major faults are processed in the order that they occurred You can use the controller fault handler to clear a watchdog fault If the same watchdog fault occurs a second time during the same logic scan the controller enters faulted mode regardless of whether the controller fault handler clears the watchdog fault If any of the multiple reported major faults are not cleared by the controller fault handler the controller goes to faulted mode The fault that was not cleared and up to two additional faults that have not been cleared are logged in the controller fault log You can view this fault information via the programming software by using the major fault tab in the controller properties The controller can handle as many as 32 simultaneous major faults If more than 32 major faults occur at the same time the controller goes to faulted mode and the first three major faults are logged to the controller fault log 1756 6 5 12 March 1999 12 12 Handling Controller Faults Description User Defined Type created to simplify access to fault Writing logic for a major fault To check and clear a major fault follow these steps 1 Depending on the type of major fault do one of the following If you are writing logic for this type of major fault instruction execution Do this Create a routine within the current program and specify this routine as the fault routine for the program See page 12 16 any other
134. ferenced at the beginning of a task s execution can be different when referenced later ATTENTION Take care to ensure that data memory contains the appropriate values throughout a task s execution You can duplicate or buffer data at the beginning of the scan to provide reference values for your logic Developing Programs 5 3 Using a continuous task A continuous task operates in a self triggered mode It restarts itself after each completion You can create one continuous task for the controller The continuous task operates as the lowest priority task in the controller one priority level lower than the lowest periodic task This means that all periodic tasks will interrupt the continuous task The continuous task is a background task because any CPU time not allocated to other operations such as motion communications and periodic tasks is used to execute the programs within the continuous task When you create a project the default MainTask is a continuous task You can leave this task as it is or you can change its characteristics Using a periodic task A periodic task also known as a selectable timed interrupt STI is triggered by the operating system at a repetitive period of time This type of task is useful for projects that require accurate or deterministic execution Periodic tasks always interrupt the continuous task Depending on the priority level a periodic task may interrupt other periodic tasks in the contr
135. for the task The valid range is 1 msec to 2 000 000 msec 2000 seconds The default is 500 msecs Priority If you defined a periodic task specify the priority of the task by entering a number from 1 to 15 The lower the number the higher the priority The number 1 is the highest priority the number 15 is the lowest priority Rate ms If you defined a periodic task enter the rate in msec at which the controller executes the task The valid range is 1 msec to 2 000 000 msec 2000 seconds The default is 10 msecs Scan Time us While online the programming software displays the maximum scan time and the last scan time in usec for the current task These values are elapsed time which includes any time spent waiting for higher priority tasks These values are display only On this tab Program Schedule In this field Unscheduled B lasi Popri Benf cole Geia Configurobirs Pregnan Schecbe Uruchedulet Schmid Enter The programming software displays the programs that have not been scheduled by a task Scheduled Add or remove programs from this list to create a list of programs associated with the current task The task executes programs to completion in order from the top of the list to the bottom of the list 1756 6 5 12 March 1999 5 8 Developing Programs 1 Select a task MainTask in this example 2 Click the right mouse button and select Properties pape po
136. format Most of the discrete I O modules support a rack optimized connection If this option does not appear when you are selecting communication format for an I O module the module does not support the rack optimized connection iS Mew Mogide cb wehea 7 i TDA 2 17518 i Pan TAi EY AL ingat Combining direct and rack optimized connections A remote chassis can have both a rack optimized connection and direct connections In this example the owner controller uses a rack optimized connection to communicate with two digital I O modules The owner controller also uses a direct connection to communicate with an analog module in the same chassis Using a Rack Optimized Connection and a Direct Connection with I O in a Remote Chassis Local chassis Remote chassis J M O 8 po 8 Sta Cleon Rack optimized aoa H E H 0 connection OT A N U N U N i PIT a PETIA 8 UZE P p Uae Pah fe T U S e T U 0 T Slot 3 RPI 25mS TEG 9 9 ContfolNet 41030 Owner controller ControlNet bridge module ControlNet bridge module 1756 6 5 12 March 1999 7 6 Allocating Communication Connections The local controller in this example uses
137. g 8 5 introduction 8 4 master 8 4 8 8 master slave methods 8 5 point to point 8 4 8 6 Slave 8 4 8 7 direct connection 7 2 documenting I O 1 14 1 15 downloading project 1 4 5 16 sample project 1 18 E electronic keying 3 6 entering branch 5 14 logic 5 13 sample logic 1 16 example connection path 9 4 coordinated system time 2 6 getting started 1 16 major fault 12 12 minor fault 12 5 motion 10 2 power up 13 6 viewing 1 0 module faults 3 22 Index l 3 fault controller 12 1 controller fault handler 12 9 12 16 I O module 3 19 logic for major 12 12 logic for minor 12 5 12 7 major types and codes 12 14 minor types and codes 12 8 monitoring I O 12 2 processing major 12 9 processing minor 12 3 program fault routine 12 9 12 16 types 12 1 forcing description 11 1 disabling 11 5 enabling 11 4 entering 11 2 0 tags 11 1 monitoring 11 6 removing 11 5 front plate A 1 G getting started adding an input module 1 7 adding an output module 1 9 changing module properties 1 11 changing project properties 1 6 creating a project 1 5 creating other tags 1 13 documenting I O with alias tags 1 14 1 15 downloading a project 1 18 enter logic 1 16 installing 1 2 introduction 1 1 project 1 4 viewing controller memory usage 1 22 viewing I O tags 1 12 viewing program scan time 1 21 1756 6 5 12 March 1999 l 4 Index H hardware fault 12 1 0 module alias 3 19 change of state data exchang
138. gure an I O module select which module to install Then 1 Select 1 0 Configuration specify this information 2 Click the right mouse button and select Ss Hew Medel Loud RESO 21 New Module Tre 7A ETE 16 Poe MEI DE rga fa Shee S000 pick atat O Vendor Aeneis Corsparg Inc Ee Ed ie Beech Loge pma alale 2 ef Sat I He ai bem Darig ibis canoe Com forat lt Pty Haitio li z Flesciroais eag Torpat Fahd Conioia Flt Haart Poran p Hande par S ss A Haia Bhet Frw gt gt Kelp Urechadusi Progr l Dea Taa In this field Enter pE Ue Tl reed T ee e a nii Name Enter a name for the module optional a Maiani Description Enter a description for the module optional ERRA Slot Number Enter the slot number where the module is installed Communication Format Select one of the communication formats supported by the module Some formats specify controller ownership of the module The communication format can also define the data structure the module uses Electronic Keying Select an electronic keying method After you identify the I O module the programming software displays additional configuration screens which depend on the type of module Once you finish the configuration the I O module appears in the controller organizer Naming modules Module names follow IEC 1331 3 identifier rules and e must begin with an alphabetic charact
139. he IEC113 3 specification are categorized as required by the specification optional or extensions By so doing the IEC113 3 specification provides a minimum set of functionality that can be extended to meet end user application needs The downside of this approach is that each programmable control system vendor may implement different components of the specification or provide different extensions 1756 6 5 12 March 1999 B 2 IEC1131 3 Compliance Operating System Data Definitions 1756 6 5 12 March 1999 The controller s preemptive multitasking operating system OS is compliant with the IEC113 3 definition In IEC1131 3 the programmable controllers OS can contain zero or more tasks that can execute one or more programs each containing one or more functions or routines According to IEC1131 3 the number of each of these components is implementation dependent The Logix5550 provides 32 task each containing 32 programs and an unlimited number of functions or routines IEC1131 3 provides an option for creating different task execution classifications Task may be configured as continuous periodic an event based A continuous task does not need to be scheduled in that it will utilize any left over processing time when other tasks are dormant Periodic tasks are scheduled to operate based on a reoccurring time period The IEC1131 3 specification does not specify a time base for periodic task configuration An IEC1131 3 event based task is
140. he connection tab This information is read from the controller Use this tab if the connection to the module is shut down 1756 6 5 12 March 1999 3 22 Configuring 1 0 Modules You can also monitor the status of the module I O tags in the tag monitor Most modules have status bits to indicate if data is being updated or if the module is inhibited Fie Ed Yea fesch Loge ie lel al Danai Fd Hiri GEI Poras p Hales SS latr Double click on controller tags p S Consin Tage qeich_chetcentralla BEE Sega Poss amie al i Sot Teg Hare Ei ahime Te e De oee eeN AEA ee a Ci AAT 0 H Laca TI Fiat ID TOGO OIO DOO DOD ACDD Caray DNT E Lagat T Das RAOIN MOD Jia G A D Oe ren DRT Big ec AB TEE EGEE ba ABT TRE OF Bigger eat ABATE OOOO ememecel SSS CR E rra coer fl Teen AE CHEIE Using logic to monitor 1 0 faults You can also use logic to monitor I O faults example 1 GSV Get system value CIP Object class MODULE QU alarm_1 Equal Source 4 led_state p CIP Object name Attribute name LedStatus Source B 2 Dest led_state pe This example uses the MODULE object to determine whether any I O module has lost its connection with the controller If the controller I O LED is flashing green LedStatus 2 The EQU example determines whether the I O LED is flashing green 1756 6 5 12 March 1999 Configuri
141. he controller performs two primary functions e executes logic e reads input data and sends output data 1756 6 5 12 March 1999 3 2 Configuring 1 0 Modules Logic Scanning Defining 1 0 Updates 1756 6 5 12 March 1999 If the I O module is digital The controller continually scans the control logic One scan is the time it takes the controller to execute the logic once Input data transfers to the controller asynchronous to the logic scan The controller transfers output data at the end of each and every program scan If you want input data to remain constant throughout one scan make a copy of the input data at the beginning of the scan and use the copy throughout the scan The ControlLogix system follows a producer consumer model Input modules produce data for the system Output modules controllers and intelligent modules produce and consume data The producer consumer model multicasts messages This means that multiple nodes can consume the same data at the same time from a single device Where you place I O modules in the control system determines how the modules exchange data And you place the module here The data exchange method is based on local chassis change of state and requested packet interval remote chassis requested packet interval analog local chassis real time sample and requested packet interval remote chassis real time sample and requested packet interval How an I O modul
142. he owner controller receives the data over the network The RPI also reserves a spot in the stream of data flowing across the ControlNet network The timing of this reserved spot may or may not coincide with the exact value of the RPI but the controller receives data at least as often as the specified RPI analog output local chassis The RPI value specifies when the owner controller broadcasts output data to the module If the module resides in the same chassis as the owner controller the module receives the data almost immediately after the owner controller sends it remote chassis If an output module resides in a chassis other than that of the owner controller i e a remote chassis connected via ControlNet the owner controller sends data to the output module only at the RPI rate The RPI also reserves a spot in the stream of data flowing across the ControlNet network The timing of this reserved spot may or may not coincide with the exact value of the RPI but the output module receives data at least as often as the specified RPI Configuring Local 1 0 1756 6 5 12 March 1999 You use your programming software to configure the I O modules for the controller When you configure an I O module you specify characteristics specific to that module The programming software automatically adds the module defined tags for the module as controller scoped tags Configuring 1 0 Modules 3 5 To confi
143. i Daa PAL Dema 1756 6 5 12 March 1999 1 16 Getting Started Enter logic 1 Use default task program and routine 4 Enter logic When you created the project the software automatically created a MainTask MainProgram and MainRoutine Use these defaults for the quick start see chapter 5 Double click MainRoutine i The software displays an empty routine 2 Enter an XIO instruction Ee ER yer genh Logs Goreme uk e Ee alal ai aye lf do el fe aaj iad fi ud A Hic ae of fade ije ie ho eens TLETT ae Cael Cranes A PRM PEE MamProg aes Hani cere Mi F3 A u z a Eri Drag and drop the XIO instruction on an empty rung 1756 6 5 12 March 1999 Getting Started 1 17 Entering logic continued 3 Assign a tag to the XIC instruction Enter logi Double click the tag area of the instruction 4 sal as see chapter 5 E Haiman Wael eee Use the drop down menu to select the alias tag input_1 BE SE ae The software displays an incomplete rung Hasfiapen biah ome 4 Enter this logic m Made l eerie 4 Select File Save to save the project 1756 6 5 12 March 1999 1 18 Getting Started Download a project 1 Make a serial connection from the workstation to the controller mm A EN ES E E N see chapter 5 and chapter 8 2 Configure the controller s serial port for DF1 point to point
144. i Fim im Cree Dais La eon EJ oe pmt cate wae one Diwa r I Padus thi tagia up in r aaa 1756 6 5 12 March 1999 4 20 Organizing Data In this field Name To create an alias using the New Tag dialog box you define the tag and select the alias tag type Enter Enter the name of the tag This is the alias name Description Enter the description of the tag optional Tag Type Select Alias tag that references another tag with the same characteristics Refers To Enter the name of the tag that you are representing by the alias name The programming software displays a list of the available tags you can reference Data Type This field is automatically selected Displays the data type of the resulting alias tag This is based on the tag you select for the Refers To field described above You cannot specify array dimensions for an alias tag Scope This field is automatically selected Select the scope in which to create the tag You can select controller scope or one of the existing programs Display Style This field is automatically selected Select the display style of the tag The programming software displays a list of the available styles which depends on the data type Produce this tag Select whether to make this tag available to other controllers through controller to controller messaging Specify how many controllers can consume the tag The tag must be a con
145. iJ ia ojo a lo Configure 1 0 modules i 4 goto page 1 7 empty slotO 1756 1B16 1756 0B16E slot 1 slot 2 You need RSLogix5000 programming software RSLinx communication software 3 Create tags DF1 point to point serial connection from the workstation goto page 1 13 to the controller using 1756 CP3 cable If you don t have this hardware you can still follow the steps in this quick start Substitute the I O modules you have for the ones in the quick start and make the appropriate changes A Enter logic goto page 1 16 Download 5 a project goto page 1 18 6 View status goto page 1 21 1756 6 5 12 March 1999 Getting Started 1 5 Create a project To follow the steps in this quick start RSLogix5000 programming software must already be installed and running 1 Select File New to create a project 1 Create aprolect RSLogix 5000 see chapter 2 2 Define the project The software uses the project name you enter with an ACD extension to store your project Youmustenteraname tara ax Select the chassis type and specify Groce iiaa See Chace the slot number of the controller gt gt You will have to change the default values m Dampi Tho c a mp onki pem bo a es r E Describe the project optional gt f Select where to store the project B mssin EAEL T Enan iee typically use the default directory Cm Cancel i J Click
146. individual module s properties to inhibit a module ATTENTION Inhibiting a module causes the connection to the module to be broken and prevents communication of I O data On the Connection tab of the module properties in the programming software you can select to inhibit that specific module Models Foppen Local 1TSR AIG 211 Bquecied Packa Interval PM Era wm t iin p ji I haaf at ih Corio 11 Gerrans f ak ataa n Fiun Mods eta he Fail Ceai ciet b ia e 1756 6 5 12 March 1999 3 10 Configuring 1 0 Modules When you inhibit a communication bridge module such as a 1756 CNB or 1756 DHRIO module the controller shuts down the connections to the bridge module and to all the modules that depend on that bridge module Inhibiting a communication bridge module lets you disable an entire branch of the I O network When you select to inhibit the module the controller organizer displays a yellow attention symbol over the module If you are Inhibit a module to offline put a place holder for a module you are configuring The inhibit status is stored in the project When you download the project the module is still inhibited online stop communication to a module If you inhibit a module while you are connected to the module the connection to the module is closed The modules outputs go to the last configured program mode If you inhibit a module but a connection to the module was not established
147. inued 3 Identify the input module These screens are specific to the 1756 IB16 input module Toe ITARTE 16 Pwd NPIV DE liga erdam Aleni ada Conparg Inc You should enter a name Paint Laal see chapter 3 Verify the slot number pos mse O E Describe the module optional jy Eesmigio f f E Select the communication format p Esma Eam ioes Dats z Specify electronic keying p B F pP a Eksis png Dorrie ma ma j o e j Click Next 4 Use the Create wizard to configure the input module Use default values for this quick start example Hirer Hides meal i UPS 1BIG Zi default values Hequaried Pacat intersal AP ma iii S00 wel ee a lgani timia Weri bap Fp Padua Typar Hra fe Pt lenis bibsik Pooper loco 75618 i5 Fa f Aare Samal Hareber z Priel Hane Fpi Flier Tae ra Cordadh TE F Tie Haha 5 om Rew Heek Lesti PP SSE of 8 Click Next Taser Sred F F F F F Gal Click Next z fue Tirant aa N ubicat OAC Err Connon Parean T Hatta CAC Ena Tharki ga oarerai Hairy Lrt Gun Tira Click Next isnag Pidreching the page rasna the rele ip Glee ts Doe im a a a E Click Finish If you do not want to page through each screen in the Create wizard click Finish to create the module using continued 1756 6 5 12 March 1999 Getting Started 1 9 Adding a local output module pe SEER ene rtenre a stem 3000 yack ae
148. ion Slot Number The programming software automatically displays the current slot number Communication Format The programming software displays the current communication format Electronic Keying The programming software displays the current electronic keying requirement bain nat Connection 3 Hern i Fep Tap E HFE Urodadusd Propers i Dieta T i B asiad 5g Fradairad u Logg Heh FS UT Doigarsby 5 27608 l mirel By piii Poe This tab provides module connection fault data Use this tab to get more detailed information about why a particular module connection is faulted Requested The programming software displays the current Packet Interval RPI setting Inhibit Module The programming software displays whether or not the module is inhibited Major Fault The programming software displays whether or not the controller generates a major fault if the connection to this module fails Dese Module Info Cora Hoiere The programming software displays product and status information about the module There are no fields to select or enter data The identification information and the match status are useful when diagnosing electronic keying problems The configured and owned status is useful for diagnosing multiple owner or multiple listener problems The error and status information provides information from the point of view of the I O modules Configuration Contains mod
149. ion about See page Identifying controller components A 1 Monitoring controller status LEDs A 2 Monitoring controller status A 5 Changing controller mode A 8 Examining controller prescan operations A 9 The controller has these components on the front panel __Loaixssso_ The status LEDs help when as gt troubleshooting the controller ee Use the keyswitch to select gt RUN REM PROG controller mode Install battery here Use a 1756 BAI1 The 9 pin D shell serial port supports standard EIA RS 232C O00O ayy an o 40001 1756 6 5 12 March 1999 A 2 Troubleshooting Monitoring Controller Status LEDs Logix5550 RUN M 1 0 E RS232 BAT EE OK RUN REM PROG 40002 1756 6 5 12 March 1999 The LEDs on the front panel show these states Indicator Color Description off e controller in Program or Test mode RN green controller is in Run mode off e no I O or communications configured green communicating to all configured devices 0 flashi one or more configured devices are green tashning not responding e not communicating to any devices red flashing controller faulted off no activity RS232 green flashing data being received or transmitted red controller faulted off e battery will support memory e battery will n
150. ion products Dodge mechanical power transmission components and Rockwell Software Rockwell Automation s unique flexible approach to helping customers achieve a competitive advantage is supported by thousands of authorized partners distributors and system integrators around the world gt Americas Headquarters 1201 South Second Street Milwaukee WI 53204 USA Tel 1 414 382 2000 Fax 1 414 382 4444 Rockwell European Headquarters SA NV avenue Herrmann Debroux 46 1160 Brussels Belgium Tel 32 2 663 06 00 Fax 32 2 663 06 40 Asia Pacific Headquarters 27 F Citicorp Centre 18 Whitfield Road Causeway Bay Hong Kong Tel 852 2887 4788 Fax 852 2508 1846 Automation Publication 1756 6 5 12 March 1999 PN 955135 85 Supersedes Publication 1756 6 5 12 October 1998 1999 Rockwell International Corporation Printed in the U S A
151. ion with an I O rack or module If you do not configure the controller for this possibility you should monitor the device status within your logic If the connection between a rack or module and the controller is lost and the controller is not configured to generate a major fault all outputs dependent on inputs from the failed connection continue to be controlled based on the now static input The control application continues to make control decisions on data that may or may not be correct A o lge connection failed 6 O The connection between chassis A and B failed so data in chassis B remains at its last values Any outputs in chassis C that are controlled by inputs from chassis B are based on stale data If you encounter a hardware fault 1 Power down then power up the controller 2 Reload the program 3 Run the program again If you continue to encounter a hardware fault call your Allen Bradley representative Minor faults do not impact controller operation The controller continues to execute However to optimize execution time and ensure program accuracy you should identify and correct minor faults There are two main categories of minor faults Category Description instruction execution problem occurs when executing logic other minor problem occurs with the serial port e battery 1756 6 5 12 March 1999 12 4 Handling Controller Faults Processing instruc
152. is environment provides e tasks to configure controller execution programs to group data and logic routines to encapsulate executable code written in a single programming language control application controller fault handler power up handler task 32 task 1 program 32 program program 1 main routine program local tags fault routine other routines configuration status watchdog controller global tags W O data system shared data 40012 The operating system is preemptive in that it provides the ability to interrupt an executing task switch control to a different task and then return control back to the original task once the interrupting tasks completes its execution The controller is single threaded in that only one task can be executing at one time In any given task only one program is executing at one time 1756 6 5 12 March 1999 5 2 Developing Programs Defining Tasks 1756 6 5 12 March 1999 A task provides scheduling and priority information for a set of one or more programs that execute based on specific criteria You can configure tasks as either continuous or periodic i Number Supported by the Taskelype Logix5550 Controller continuous 1 periodic 31 if there is a continuou
153. is field Enter Fy irea Name Enter the name of the program pA Peps Description Enter a description of the program optional Type The type defaults to System Fault Naming programs Program names follow IEC 1131 3 identifier rules and e must begin with an alphabetic character A Z or a z or an underscore _ e can contain only alphabetic characters numeric characters and underscores e can have as many as 40 characters e must not have consecutive or trailing underscore characters _ Program names are not case sensitive Selecting an unscheduled program for the controller fault handler 1 Select the program unscheduled_1 in this example To select an unscheduled program drag and drop the unscheduled 2 Drag and drop the program to the controller program into the controller fault handler folder If a controller fault fault handler program already exists the unscheduled program takes its place The previous controller fault program moves to the unscheduled programs folder Contcder pea dA oninia Tai Pomema Lic H arier M Henini parece TEAC aa Laka 2 Pepan Ia d Cia Types E Ui ted Ug Poedehrad B Hihii heir W Gordian 1756 6 5 12 March 1999 12 18 Handling Controller Faults 1 Select a program cntr_fault in this example 2 Click the right mouse button and select Properties Ee Ed Gee peace Loe former u Fe 6S Conie popi GA Conia Tag J Conninodies I
154. it was shipped You can install or remove ControlLogix system components while chassis power is applied and the system is operating If you remove the controller all the devices owned by the controller go to their configured faulted state ATTENTION When you insert or remove a module while backplane power is on an electrical arc may occur An electrical arc can cause personal injury or property damage by e sending an erroneous signal to your system s actuators causing unintended machine motion or loss of process control causing an explosion in a hazardous environment Repeated electrical arcing causes excessive wear to contacts on both the module and its mating connector Worn contacts may create electrical resistance that can affect module operation Getting Started 1 3 Prepare the controller 1 Install the battery LOGIK 5000 T i top no connection orl E middle black lead wy y bottom red lead Store the lithium battery in a cool dry environment typically 20 C to 25 C 68 F to 77 F and 40 to 30167 60 relative humidity Store the batteries in the original container away from flammable materials Attention Only install a 1756 BA1 battery For more information see Guidelines for Handling Lithium Batteries publication 1756 5 68 Install the memory expansion board if any a Remove the side plate b Attach the memory board Gx 4
155. k is triggered A task can be configured to run as a continuous task or a periodic task As many as 32 tasks can be created to schedule programs See continuous task periodic task A ControlLogix process that records a change in input data with a relative time reference of when that change occurred With the MSG instruction an uncached connection instructs the controller to close the connection upon completion of the mSG instruction Clearing the connection leaves it available for other controller uses See connection cached connection A connection in which data flows in only one direction from the originator to the receiver See connection bidirectional connection The process of transferring the contents of the controller into a project file on the workstation See download A user defined structure groups different types of data into a single named entity A user defined structure contains one or more data definitions called members Creating a member in a user defined structure is just like creating an individual tag The data type for each member determines the amount of memory allocated for the member The data type for each member can be a an e atomic data type e product defined structure e user defined structure e single dimension array of an atomic data type e single dimension array of a product defined structure e single dimension array of a user defined structure Specifies how long a task can run before triggering
156. le within IEC1131 3 is defined through the use of either an elementary data type or an optional derived data type that is created from a group of multiple data types The Logix5550 supports the use of the BOOL 1 bit SINT 8 bit integer INT 16 bit integer DINT 32 bit integer and REAL IEEE floating point number elementary data types Additionally the optional derived data types are supported through the creation of user defined structures and arrays Programming Languages Instruction Set IEC1131 3 Compliance B 3 The IEC113 3 specification defines five 5 different programming languages and a set of common elements All languages are defined as optional but at least one must be supported in order to claim compliance with the specification The IEC1131 3 programming language components are defined as follows e Common Language Elements e Common Graphical Elements e Instruction List IL Language Elements e Structured Text Language ST Elements e Ladder Diagram LD Language Elements e Sequential Function Chart SFC Language Elements e Function Block Diagram FBD Language Elements The controller and RSLogix5000 provide support for the common language elements and the Ladder Diagram language options Additionally the environment utilizes an ASCII import export format based on the Structured Text language The instruction set and program file exchange features are discussed in detail in the sections that follow The i
157. lectable priority that is one lower than the lowest configured periodic task priority e A task at a higher priority such as 1 preempts one at a lower priority such as 15 Tasks at the same priority execute on a time slice basis at lms intervals 1 Select a task MainTask in this example 2 Click the right mouse button and select Properties Fo Nhe S000 pergect e Periodic tasks always interrupt the continuous task Fie Ed Yew pasch Loge amani Sa iD ae a afi o To configure an existing task fe Tack Mopar Han adt Coriroke Fut hardie Poran lip Harde l Ti a E Jhe Mafe GA Copy Urata i Diets Tapes fe Westie E hamn Coon Peleerce fg Pee LD Ganga On this tab In this field Enter General Name The programming software displays the current name of the task Edit the name if necessary Description The programming software displays the current description Edit the description if necessary 1756 6 5 12 March 1999 On this tab Configuration In this field Type Developing Programs 5 7 B lasi Preqectters Benf cpl Gama Canfigunobiny Prager Shikake Tor EE wiog p oa a bia Lari Scan Tires jE Fiere Mn Hiari bra LJ Enter The programming software displays the current type Select another type if necessary The controller supports only 1 continuous task The remaining tasks must be periodic Watchdog ms Specify a watchdog timeout
158. led the SSV instruction sets the specified attribute with data from the source Troubleshooting A 7 When you enter a GSV SSV instruction the programming software displays the valid object classes object names and attribute names for each instruction For the GSV instruction you can get values for all the available attributes For the SSV instruction the software displays only those attributes you can modify ATTENTION Use the SSV instruction carefully Making changes to objects can cause unexpected controller operation or injury to personnel You can access these objects This object Provides status information about AXIS a servo module axis CONTROLLER a controller s execution CONTROLLERDEVICE the physical hardware of a controller CST coordinated system time for the devices in one chassis DF1 the DF1 communication driver for the serial port FAULTLOG fault information for a controller MESSAGE peer to peer communications MODULE a module MOTIONGROUP a group of axes for the servo module PROGRAM a program ROUTINE a routine SERIALPORT the serial communication port TASK a task WALLCLOCKTIME a timestamp the controller can use for scheduling For more information see the Logix5550 Controller Instruction Set Reference Manual publication 1756 6 4 1 1756 6 5 12 March 1999 A 8 Troubleshooting Changing Controller Mode Use the keyswitch to change the mode in which the 1756
159. ll preempt all user tasks Worst case task execution time increases by the time needed for motion planning 1756 6 5 12 March 1999 5 16 Developing Programs Select a percentage of the execution time for the continuous task to use for background functions and system overhead o Coniskn Mepaimi psk _ ihat iof x 1 Select the controller quick_start in this example Be bee e 2 Click the right mouse button and select Properties Geid Peat Pe Met Finds O Hiren Finn Adae Fis Henao Ust ie MSL agir S080 sick mhet Ureed Eis Edi yew Beech Loge Crarwenioptiony Tote ajea Be r Comia reio a Erp Hardie amg r meie PHa D l ee j H On this tab In this field Enter Advanced System Overhead Select the percentage number 10 90 Time Slice Use the default percentage 10 unless your application is communication intensive or communications aren t being completed As you increase the percentage you reduce the time available to execute the continuous task which may impact its overall execution time Increase the percentage if your application has all periodic tasks In this case there is no continuous task to execute Downloading a Project To download a project to the controller 1 Make sure the communication driver you need for the controller is properly configured through RSLinx A communication driver makes sure the controller can communicate over a network There is a different driv
160. ller must be in Program or Remote Program mode to download a project If the controller is in Remote Run or Remote Test you will be prompted for the software to change the mode to Remote Program for the download When the download is complete you will be prompted again for the software to change back to the previous mode 1756 6 5 12 March 1999 5 18 Developing Programs Notes 1756 6 5 12 March 1999 Using This Chapter Using MSG Instructions Type of MSG Instruction Logix5550 writes to Logix5550 CIP Data Table Write Chapter 6 Communicating with Other Controllers For information about See page Using MSG instructions 6 1 Using produced and consumed tags 6 6 Planning your system to support produced and 6 9 consumed tags Producing a tag 6 12 Consuming a tag 6 14 Sending large arrays of data 6 17 You can use MSG instructions to communicate between a Logix5550 controller and another controller Communicating with another Logix5550 controller Logix5550 controllers can use MSG instructions to communicate with each other The following examples show how to use tags in MSG instructions between Logix5550 controllers Example Source and Destination source tag array_1 destination tag array_2 Logix5550 reads from Logix5550 CIP Data Table Read source tag array_1 destination tag array_2 When you enter source and destination tags for a MSG instruction between two Logix5550 controlle
161. m mode This mode is typically used to program the controller through its serial port DF1 master mode control of polling and message transmission between the master and each remote node 8 7 The master slave network includes one controller configured as the master node and as many as 254 slave nodes You link slave nodes using modems or line drivers A master slave network can have node numbers from 0 254 Each node must have a unique node address Also at least 2 nodes must exist to define your link as a network 1 master and 1 slave station are the two nodes DF1 slave mode using a controller as a slave station in a master slave serial communication network 8 8 When there are multiple slave stations on the network you link slave stations using modems or line drivers When you have a single slave station on the network you do not need a modem to connect the slave station to the master you can configure the control parameters for no handshaking You can connect 2 255 nodes to a single link In DF1 slave mode a controller uses DF1 half duplex protocol One node is designated as the master and it controls who has access to the link All the other nodes are slave stations and must wait for permission from the master before transmitting 1756 6 5 12 March 1999 Communicating with Devices on a Serial Link 8 5 Master slave communication methods A master station can communicate with a slave station in two ways Name
162. mal Fault Type Program 1 0 etc Code INT Decimal Unique by type Code for the fault Info DINT 8 Hex Fault Specific information content varies by type and code 2 Monitor S MINOR to determine when a minor fault occurs The S MINOR flag is a status bit that is set if at least one minor fault has been generated The controller sets this bit when a minor fault occurs due to program execution The controller does not set this bit for minor faults that are not related to program execution such as battery low 3 Usea GSV instruction to get the MINORFAULTRECORD of the current program THIS The destination should be a tag of the user defined structure type you specified above In the GSV instruction MINORFAULTRECORD is an attribute of the PROGRAM object class The object name is the name of the PROGRAM Or you can enter THIS which specifies the PROGRAM that contains the GSV instruction 4 Take appropriate action to respond to the minor fault typically correct the logic error You do not need to clear an instruction execution minor fault However the S MINOR bit remains set until the end of the logic scan If you need to detect multiple minor faults in a single scan reset S MINOR with an OTU instruction 1756 6 5 12 March 1999 12 6 Handling Controller Faults The following logic shows one way to check for an instruction execution minor fault Place this logic within a routine in a program not in the fault
163. mation from a specified module In this case you would already know which module to check For more information one handling faults see chapter 11 For more information on using the GSV instruction see the Logix5550 Instruction Set Reference Manual publication 1756 6 4 1 1756 6 5 12 March 1999 3 24 Configuring 1 0 Modules Notes 1756 6 5 12 March 1999 Chapter 4 Organizing Data Using This Chapter For information about See page How the controller stores data 4 1 Creating tags 4 2 Using base tags 4 6 Using structures 4 9 Viewing an array as a collection of elements 4 13 Viewing an array as a block of memory 4 15 Aliasing tags 4 19 Scoping tags 4 20 How the Controller Stores Data The Logix5550 controller memory stores both data and logic There are 160 Kbytes of memory in the base controller Base controller 1756 L1 160 Kbyt processes O SONS lt processes produced consumed tags stores tags stores program logic To increase memory capacity you can add one 1756 Mx memory board You can install a e 1756 M1 512 Kbytes memory expansion board or e 1756 M2 1 Mbytes memory expansion board or e 1756 M3 2 Mbytes memory expansion board 1756 6 5 12 March 1999 4 2 Organizing Data The memory expansion board changes how the controller stores data and logic Once installed the 160 Kbytes of memory of the base controller are dedicated to handling I O
164. me sampling RTS The analog module scans all the input channels but multicasts only the channel data that changed The type of module and where you place the module determines how the module operates Operation The RPI specifies the rate at which a module multicasts its data The time ranges from 200 microseconds to 750 milliseconds When the specified time frame elapses the module will multicast data If a change of state COS does not occur within the RPI timeframe the module multicasts data at the rate specified by the RPI Because the RPI and COS functions are asynchronous to the logic scan it is possible for an input to change state during program scan execution Buffer input data so your logic has a stable copy of data during its scan Copy the input data from your input tags to another structure and use the data from there remote chassis The RPI and COS values still define when the module multicasts data within its own chassis but only the value of the RPI determines when the owner controller receives the data over the network When an RPI value is specified for an input module in a remote chassis in addition to instructing the module to multicast data within its own chassis the RPI also reserves a spot in the stream of data flowing across the ControlNet network The timing of this reserved spot may or may not coincide with the exact value of the RPI but the owner controller will receive data at least a
165. mension array_name subscript_0 subscript_1 three dimension array_name subscript_0 subscript_1 subscript_ 2 An array can have as many as three dimensions The total number of elements in an array is the product of each dimension s size For example one dimension Tag name Type Dimension 0 Dimension1 Dimension 2 one d_array __ DINT 7 7 total number of elements 7 valid subscript range DINT x where x 0 6 two dimension Tag name Type Dimension 0 Dimension1 Dimension 2 two_d_array __ DINT 4 5 4 5 total number of elements 4 5 20 valid subscript range DINT x y where x 0 3 y 0 4 three dimension Tag name Type Dimension 0 Dimension1 Dimension 2 three d_array DINT 2 3 4 2 3 4 total number of elements 2 3 4 24 valid subscript range DINT x y z where x 0 1 y 0 2 z 0 3 1756 6 5 12 March 1999 4 14 Organizing Data Indexing through arrays To dynamically change the array element that your logic references use tag or expression as the subscript to point to the element This is similar to indirect addressing in PLC 5 logic You can use these operators in an expression to specify an array subscript Operator Description add subtract negate multiply l divide AND AND FRD BCD to integer NOT complement OR OR TOD integer to BCD
166. mples ccc cena 9 4 Table of Contents toc v Integrating Motion Chapter 10 Using This Chapter suunnan aaan a bere parte bd 10 1 alagers 0 sluie j Pemeere weer mee Mera Rita AA A 10 1 Developing a Motion Control Application Program 10 2 Selecting the master controller 0005 10 2 Adding a1756 MO2AE module 00e eee 10 3 NAMING AVA tatrlsgrehheehivelguoeebe lacs 10 4 Configuring a servo AXIS eee eee eee 10 5 Running hookup diagnostics and auto tuning 10 11 Writing a Motion Application Program 10 12 Understanding the MOTION_INSTRUCTION tag 10 13 Using motion status and configuration parameters 10 13 Modifying motion configuration parameters 10 14 Handling motion faults saw ata ea aw aa whe ae 10 14 Understanding errors nauuna aaea 10 14 Understanding minor major faults naaa 10 14 Understanding a programming example 10 15 Forcing Chapter 11 Using This Chapter tiereceteranetatata tataa 11 1 BOW I MIs naen Set Sos a e a ees 11 1 Entering FORCOS 5 4 inde eaa tetas soaked ak ais 11 2 Entering forces from the data monitor 11 2 Entering forces from the ladder editor 11 3 Enabling Forces isare 11 4 Disabling Forces nnan arica rua aches Pica A aden Rast bet a 11 5 Removing Forces ah alte ahi hid ahs ald ahs alee whe ERE ce 11 5 Monitoring FORCES eur Peso a ste esas 11 6 Handling Controller Faults Chapter 12 Using
167. n result is negative Sign is set if the instruction s destination value is negative S C carry The carry flag is not actually a part of the data type The carry flag represents the bit that would be in the data type if it were stored to a larger data type S FS first scan The first scan bit is set if this is the first normal scan of the routines in the current program S MINOR minor fault The minor fault bit is set if at least one minor fault has been generated The controller sets this bit when a minor fault occurs due to program execution The controller does not set this bit for minor faults that are not related to program execution such as battery low THIS current item The THIS statement is only valid with the GSV and SSV instructions that refer to a TASK PROGRAM or ROUTINE Use THIS to specify the currently executing TASK PROGRAM or ROUTINE The status keywords are not case sensitive Because the status flags can change so quickly the status keywords are not animated in the programming software to actual show status You cannot define a tag alias to a keyword Using GSV SSV instructions The GSV SSV instructions get and set controller system data that is stored in objects The controller stores system data in objects There is no status file as in the PLC 5 processor When enabled the GSV instruction retrieves the specified information and places it in the destination When enab
168. n see the ControlLogix Motion Module User Manual sms 6 publication 1756 6 5 16 ems l 7 ms 8 8 ms 10 9 ms 11 10 ms 13 11 ms 14 12 ms 15 13 ms 17 14 ms 18 15 ms 20 16 ms 21 17 ms 22 18 ms 24 19 ms 25 20 ms 26 21 ms 28 22 ms 29 23 ms 30 24 ms 32 number of axes per module 2 axes maximum module keying electronic servo loop type nested PI digital position and velocity servo gain resolution 32 bit floating point absolute position range 1 000 000 000 encoder counts rate 5 kHz power dissipation 5 5W maximum backplane current 5V dc 700 mA 24V dc 2 5 mA encoder input type incremental AB quadrature with marker mode 4X quadrature rate 4 MHz counts per second maximum electrical interface optically isolated 5V differential voltage range 3 4V to 5 0V differential input impedance 531 Ohms differential 1756 6 5 12 March 1999 Description registration inputs type 24V input voltage maximum minimum on maximum off 5V input voltage maximum minimum on maximum off input impedance 24V input 5V input response time Specifications C 5 Value optically isolated current sourcing input 24V dc nominal 26 4V 18 5V 35 5V dc nominal 5 5V 3 7V 15V 1 2 kOhms 9 5 kOhms lus all other inputs type input voltage maximum minimum on maximum off input impedance optically isolated current sinking input 24V dc nominal 26 4V 17 0V 8 5V 7 5 kOhms servo output type isolation
169. n Set Reference Manual publication 1756 6 4 1 1756 6 5 12 March 1999 10 14 Integrating Motion 1756 6 5 12 March 1999 Modifying motion configuration parameters In your ladder logic program you can modify motion configuration parameters using the SSV instruction For example you can change position loop gain velocity loop gain and current limits within your program For more information on the SSV instruction see the Logix5550 Controller Instruction Set Reference Manual publication 1756 6 4 1 Handling motion faults Two types of motion faults exist Type Description Example Errors Do not impact controller operation A Motion Axis Move Should be correct to optimize execution MAM instruction with a time and ensure program accuracy parameter out of range Minor Major Caused by a problem with the servo loop The application Can shutdown the controller if you do not amp xceeded the correct the fault condition Tam ErrorTolerance value You can configure a fault as either minor or major by using the Axis Wizard Group window Understanding errors Executing a motion instruction within an application program can generate errors The MOTION_INSTRUCTION tag has a field that contains the error code For more information about error codes for individual instructions see the Logix5550 Controller Instruction Set Reference Manual publication 1756 6 4 1 Understanding minor major faults Several faults can
170. n a task before the controller can scan the program 1 Select a task MainTask in this example 2 Click the right mouse button and select New Program Ele Edi ys pesh Loge Garani alae a otal pee Deere E DFii l Cordresier gr d a Contos Tage Condos ud Harker Pran lip Harda Developing Programs 5 9 Creating programs When you open a new controller project in your programming software the MainProgram is already defined for the MainTask You can modify this program as well as add other programs To create a new program In this field Enter Name Enter the name of the program Description Enter a description of the program optional Schedule In Select the task in which you plan to schedule the program The programming software displays a list of available tasks Type The programming software automatically selects Normal Other valid program types are Fault Handler and Power Up Handler Naming programs Program names follow IEC 1131 3 identifier rules and must begin with an alphabetic character A Z or a z or an underscore _ can contain only alphabetic characters numeric characters and underscores can have as many as 40 characters must not have consecutive or trailing underscore characters _ Program names are not case sensitive You can also add descriptions to programs Descriptions can have as many as 128 characters You can use any printable characte
171. ng 1 0 Modules example 2 Get system value CIP Object class CIP Object name PROGRAM THIS Attribute name MAJORFAULTRECORD Dest fault_record TimeStampLow 0 This example uses the PROGRAM object to determine whether an I O fault has occurred and was logged to the FAULTLOG The fault_record structure is of this user defined data type Member Data Type Style Value Description TimeStampLow DINT Decima XXXXXXXX time of fault lower 32 bits TimeStampHigh DINT Decima XXXXXXXX time of fault upper 32 bits Type INT Decima 0003 I O fault Code INT Decima 0016 I O connection fault ModulePort DINT Decima 00000001 port 1 backplane Modulelnstance DINT Decima XXXXXXXX module instance number ErrorCode DINT Decima XXXXXXXX depends on module Errorinfo DINT Decima XXXXXXXX depends on module Sparel DINT Decimal 00000000 unused Spare2 DINT Decima 00000000 unused Spare3 DINT Decima 00000000 unused spare4 DINT Decima 00000000 unused This would tell you the module that faulted You can determine the Modulelnstance for a module by using a GSV MODULE object name module name INSTANCE attribute example 3 GSV Get system value Object class MODULE Object name input_module FaultCode faulted g Attribute name Dest GSV Get system value Object class MODULE Object name input_module Attribute name FaultInfo Dest specific_info p This example uses the MODULE object to get a specific fault code and fault infor
172. ng 1 0 faults 12 2 Handling hardware faults 12 3 Processing minor faults 12 3 Minor fault types and codes 12 8 Processing major faults 12 9 Major fault types and codes 12 14 Creating a program fault routine 12 16 Creating a controller fault handler 12 16 Accessing the FAULTLOG 12 20 The controller detects three main categories of faults In general The controller major fault A fault condition either hardware or instruction occurred 1 Sets a major fault bit The fault condition is severe enough for the controller to 2 Runs user supplied fault logic if it exists shut down unless the condition is cleared 3 If the user supplied fault logic cannot clear the fault the controller goes to faulted mode 4 Sets outputs according to their output state during program mode 5 OKLED flashes red minor fault A fault condition either hardware or instruction occurred 1 Sets a minor fault bit The fault condition is not severe enough for the controller 2 Continues with the program scan to shut down 3 no LEDs change state hardware fault A fault occurred with the controller hardware The Sets outputs according to their output state during controller shuts down You must repair or replace the controller fault mode The controller OK LED is solid red 1756 6 5 12 March 1999 12 2 Handling Controller Faults Viewing Controller Faults The programming software displays fault information oS lege H00 qe a let fe Ee es fash Lop
173. ng programs and routines see chapter 4 Creating a program for the power up handler 1 Select the PowerUpHandler To create a program as the power up program 2 Click the right mouse button and select New Program oO e_ La Fle Edt Yew Geach Loge Commit Desi I tres eee S E N z oat aE a Ts Je Dre E DFii Contes mopa 2 Conan Tage Conboclias Te hirie i ahe In this field Enter i Geci Name Enter the name of the program D Hania Description Enter a description of the program optional eile Type The type defaults to Power Up Naming programs Program names follow IEC 1131 3 identifier rules and e must begin with an alphabetic character A Z or a z or an underscore _ e can contain only alphabetic characters numeric characters and underscores e can have as many as 40 characters e must not have consecutive or trailing underscore characters _ Program names are not case sensitive 1756 6 5 12 March 1999 13 4 Preparing a Power Up Program 1 Select the program unscheduled_1 in this example 2 Drag and drop the program to the power up handler i Condeier prosect_ 1 A Conirode Togs Pomeme Lic H ariar 1 Select a program power_1 in this example 2 Click the right mouse button and select Properties Be Ee ee eee Loe peenem Tet re aleja al ae ar L Conii 1756 6 5 12 March 1999 Selecting an unscheduled program for the power up handle
174. ng programs in an IEC1131 3 compliant environment is the movement or portability of programs between controllers developed by different vendors This area is a weakness of IEC113 3 because no file exchange format is defined by the specification This means that if any program created in one vendor s environment will require manipulation to move it to another vendor s system In order to minimize the effort involved in performing cross vendor portability the RSLogix 5000 programming software for the controller includes a full ASCH export and import utility Additionally the file format that is utilized by this tool is based on a hybrid of the IEC1131 3 Structured Text language definition Controller operating system and data definitions follow the appropriate IEC1131 3 formats Extensions were implemented in order to convert Ladder Diagram logic into ASCII text since this is not defined by IEC1131 3 The controller and RSLogix5000 complies with the requirements of IEC1131 3 for the following language features Table Number Feature Number Feature Description Implementation Notes 1 1 Required character set none 1 2 Lower case letters none 1 3a Number sign Used for immediate value data type designation 1 4a Dollar sign Used for description and string control character 1 6a Subscript delimiters Array subscripts 2 1 Identifiers using upper c
175. nstruction set specified by IEC1131 3 is entirely optional The specification lists a limited set of instructions that if implemented must conform to the stated execution and visual representation IEC1131 3 however does not limit the instructions set to those listed within the specification Each PLC vendor is free to implement additional functionality in the form of instructions over and above those listed by the specification Examples of such extended instructions are those needed to perform diagnostics PID loop control motion control and data file manipulation Because extended instructions are not defined by the IEC1131 3 specification there is no guarantee that the implementation between different PLC vendors will be compatible Thus utilization of these instructions may preclude the movement of logic between vendors The controller and RSLogix5000 provide a suite of instructions that execute as defined by the IEC1131 3 specification The physical representation of these instructions maintain their look and feel with existing systems so as to reduce the training cost associated with working with the environment In addition to the IEC1131 3 compliant instructions a full range of instructions from existing products have been brought forward into the environment so that no functionality is lost 1756 6 5 12 March 1999 B 4 IEC1131 3 Compliance IEC1131 3 Program Portability IEC Compliance Tables One of the goals of end users creati
176. nt DFI slave DF1 master Major Faults online only iew any major faults that have occurred on the controller Minor Faults nline only iew any minor faults that have occurred on the controller Advanced ome features are online only iew and edit advanced controller properties which include the system fault program the power loss program and system overhead time slice lt uls ojs File view information about the project file 1756 6 5 12 March 1999 Adding a local input module 1 Create a new module A Place the cursor over the I O Configuration folder ____ yy B Click the right mouse button and select New Module 2 Select an input module to add Select a catalog number For this quick start example select 1756 IB16 a 1 7 Getting Started see chapter 3 D Bonds fak Harci E Pover Lp Hardie T Ji Moen Tak Hon GA Fengin Tage LE Pica tires E Urecheduied Progra E Dita Te fa Uos Der E p Peda pl Muskie Lra Mee Fev E 1756 Dorii Eriga Fiedurdan hirda 1786 DH Fede Fil pisn 1E Caracal at 5 career E homa Corernuracation inte ace 16 Pos 79 132 60 bape 1G Poni 7 120 AC lised hyri Pury 79 1 A AC D igerri Irgat 1G Foin W E DC Cispa byad 18 Porn 2 30 DE fooled linpul Srk iou 2 Peed 8 31 2 DE bape 16 Poin I AK DC Irgat Click OK continued 1756 6 5 12 March 1999 1 8 Getting Started Adding a local input module cont
177. number of consumed tags lt 250 If your controller consumes 250 tags these tags must come from more than one controller A controller can only produce as many as 127 tags See the producer numbers in this table producer number of produced tags lt 127 Each produced tag uses one unidirectional connection for the tag and one unidirectional connection for each controller that consumes the tag With these maximum numbers in mind the total combined consumed and produced tags that a controller supports is this is also the maximum number of unidirectional connections see chapter 7 number of produced tags number of consumed tags lt 255 As the number of consumed tags increases the number of available produced tags decreases You increase the number of consumed tags either by creating consumed tags or by adding additional consumers to a produced tag Planning Your System to Support Produced and Consumed Tags You can share data between Logix5550 controller and local Logix5550 controller Communicating with Other Controllers 6 9 Before the Logix5550 controller can share produced or consumed tags the other controllers must be configured in the controller organizer of the consuming controller You can produce and consume data between these controllers Over this network ControlBus backplane ControlBus backplane 0 0 ee ie e id ControlLogix chassis with two Logix5550 controllers Logi
178. oZ CCA oJ C N KF You can nest branches to as many as 6 levels The following figure shows a nested branch The bottom output instruction is on a nested branch that is three levels deep input instruction output instruction Ko vy le ni No Z C y Lal Xe AN S Developing Programs 5 15 Scheduling System Overhead The controller has a system overhead time slice that determines the percentage of controller time that is available for background functions such as communications with programming and MMI devices such as the programming software messaging including block transfers e re establishing and monitoring I O connections such as RIUP conditions this does not include normal I O communications that occur during program execution e bridging communications from the controller s serial port to other ControlLogix devices via the ControlLogix backplane The percentage you select is taken from the time available to execute the continuous task The percentage you select does not take time away from executing periodic tasks total controller execution time time for periodic tasks time for the continuous task ia This time is available for communication functions If there are no communication functions this time is used by the continuous task Motion planning runs at the coarse iteration rate set for the motion group and wi
179. ogram 13 4 power up handler routine 13 5 program 5 10 routine 5 12 serial port 8 3 task 5 6 watchdog 5 8 connecting to controller serial port 8 2 connection allocating 7 1 consumed tag 7 7 direct connection 7 2 for I O module 7 2 messaging 7 7 produced tag 7 6 rack optimized 7 4 requirements 7 8 connection path 9 2 consumer connection 7 7 maximum number of produced and consumed tags 6 8 processing 6 7 system shared tag 6 6 continuous task 5 2 5 3 1756 6 5 12 March 1999 controller fault handler 12 16 faults 12 1 controller fault handler 12 9 controller memory 4 1 controller mode A 8 controller organizer 2 3 3 19 controller ownership 3 7 controller scope 4 20 converting data types 4 8 coordinated system time 2 5 10 2 COS 3 3 creating controller fault handler 12 16 controller fault handler program 12 17 power up handler program 13 3 program 5 9 program fault routine 12 16 project 1 4 2 1 routine 5 11 sample I O module 1 7 1 9 sample project 1 5 tags 1 13 4 2 task 5 5 CST See coordinated system time D data accessing 4 2 array 4 13 atomic type 4 3 4 6 definitions B 2 forcing 11 2 how stored 4 1 organizing 4 1 predefined structures 4 4 specifying bits 4 8 structure I O 3 16 introduction 4 9 member 4 12 module defined 4 10 predefined 4 10 user defined 4 10 type conversion 4 8 types 4 3 data exchange change of state 3 2 devices not responding A 3 DF1 protocol configurin
180. oller Use the programming software to configure the time period from 1 msec to 2000 seconds The default is 10 msecs ATTENTION Ensure that the time period is longer than the sum of the execution times of all the programs assigned to the task If the controller detects that a periodic task trigger occurs for a task that is already operating a major fault occurs When working with multiple periodic tasks make sure that sufficient CPU time is made available to handle task interruption Periodic tasks at the same priority execute on a time slice basis at lms intervals 1756 6 5 12 March 1999 5 4 Developing Programs The following example shows the task execution order for an application with multiple periodic tasks and one continuous task Example Actual Worst Case Task Priority Level Task Type Execution Time Execution Time 1 5 20ms periodic 2ms 2ms 2 10 5 ms periodic lms 3ms 3 15 10ms periodic 4ms 8ms 4 none lowest continuous 24ms 80ms Task 1 Task 2 Task 3 Time elapsed in msec WA Task triggered Task end mmm Tosk execution Task suspended Notes A The continuous task runs at the lowest priority and is interrupted by all other tasks The highest priority task interrupts all lower priority tasks C A lower priority task can be interrupted multiple times by a higher priority task D When the continuous task completes a full scan it restarts immediately unless
181. oller has available for other operations like communications and I O 1756 6 5 12 March 1999 Optimizing produced tags Allocating Communication Connections 7 7 Each produced tag requires connections that can be used for other controller operations To minimize the of produced tags and the number of required connections consider grouping data into an array or a user defined structure and producing only that array or structure as long as the array or structure is not larger than 500 bytes For example Unidirectional Connections Definitions Produced Tags default number of 2 consumers height DINT data type height width DINT data type width 3 weight REAL data type weight 3 W_flag DINT data type W_flag 3 L flag DINT data type L flag 3 total 15 unidirectional connections Load_Info structure of Load_Info 3 height DINT data type total 3 unidirectional connections width DINT data type weight REAL data type W_flag DINT data type L flag DINT data type Determining Connections for Messaging Connections for consumed tags Each consumed tag requires one unidirectional connection for the controller that is consuming the tag The Logix5550 controller uses connections to perform messaging including block transfers When your logic uses a message instruction to read or write information to or from another module that instruction requires one bidirectional connection for the duration of the transmission Depending on how y
182. oller ownership of the module A format can also define the data structure the module uses Electronic Keying Select an electronic keying method 1756 6 5 12 March 1999 Changing Configuration Information 1 Select a module 1756 1B16 in this example 2 Click the right mouse button and select Properties Ele Edi jea Geach Loge Doraemon aleja i see r Dee AE DFI A Controls quack staat A Cons Tayi J Cinku a hrei Poranlip Hanie Z Ta i Hent k 3 Hern WA Prepare Taga EB HE Unechacduled Progra i Daa T pce pi eaters o p Pradairad u Hoshi iaee E LT Coig Hiha E mirei Cu J iii Core Dieser rora Aen Configuring 1 0 Modules 3 15 Once you configure an I O module you can change configuration information The configuration tabs that are available depend on the type of module To change the configuration of an existing module this example is for a 1756 IB16 module Hodela Mape Locale 1 PS04016 2 1 arais Connection Woda iiz Configuration Backplane l THNG 16 Para 101 DE ipi Lesy On this tab In this field Enter General Name The programming software displays the current name of the program Edit the name if necessary Description The programming software displays the current description Edit the description if necessary Slot Number The programming software automatically displays the current slot number Edit the slot number if necessary
183. olls the slave station for a reply to th hee EMOS PE PRS ASS AE RAON taka ER har a non intelligent remote terminal units RTUs message after waiting a user configured period of time The waiting period gives the slave station time to formulate a reply and prepare the reply for transmission After all of the messages in the master s message out queue are transmitted the slave to slave queue is checked for messages to send Configuring Serial You configure the controller for the DF1 protocol on the Serial Port Communications Protocol tab of the Controller Properties Select one of these modes e DFI point to point e DFI master e DF slave 1756 6 5 12 March 1999 8 6 Communicating with Devices on a Serial Link Tew i Dike Tee I Tarr Tand Pest feet Petal ee Me Kee re Cece Chee a ME ee nan ohio bE E ipis hokis Deti Hag Fikiierh Leal f ENG Turami L ALP Tja ii i F Verdin Oe Lae F C J e 1756 6 5 12 March 1999 Configuring a DF1 point to point station This field Station address Description The station address for the serial port on the DF1 point to point network Enter a valid DF1 address 0 254 Address 255 is reserved for broadcast messages The default is 0 NAK receive limit Specifies the number of NAKs the controller can receive in response to a message transmission Enter a value 0 127 The default is 3 ENQ transmit limit Specifies the number of inquiries ENQs
184. omprehensive glossary see the Industrial Automation Glossary publication AG 7 1 A tag that references another tag An alias tag can refer to another alias tag or a base tag An alias tag can also refer to a component of another tag by referencing a member of a structure an array element or a bit within a tag or member See base tag The basic definition used to allocate bits bytes or words of memory and define their numeric interpretation this includes BOOL SINT INT DINT and REAL data types See array structure A numerically indexed sequence of elements each of the same data type In the Logix5550 controller an index starts at 0 and extends to the number of elements minus 1 zero based An array can have as many as three dimensions unless it is a member of a structure where it can have only one dimension An array tag occupies a contiguous block of memory in the controller each element in sequence See atomic data type structure The combination of routines programs tasks and I O configuration used to define the operation of a single controller See project A tag that actually defines the memory where a data element is stored See alias tag A connection in which data flows in both directions from the originator to the receiver and from the receiver to the originator See connection unidirectional connection Integer values displayed and entered in base 2 each digit represents a single bit Prefixed with 2 Pa
185. on the DF1 slave Enter a valid DF1 address 0 254 Address 255 is reserved for broadcast messages The default is 0 Transmit retries The number of times the remote station retries a message after the first attempt before the station declares the message undeliverable Enter a value 0 127 The default is 3 Slave poll timeout Specifies the amount of time the slave station waits to be polled by a master before indicating a fault Enter a value 0 32767 Limits are defined in 20ms intervals The default is 3000 60 000ms EOT suppression Select whether or not to suppress sending EOT packets in response to a poll The default is not to suppress sending EOT packets Error detection Select BCC or CRC error detection Configure both stations to use the same type of error checking BCC the controller sends and accepts messages that end with a BCC byte for error checking BCC is quicker and easier to implement in a computer driver This is the default CRC the controller sends and accepts messages with a 2 byte CRC for error checking CRC is a more complete method Enable duplicate detection Select whether or not the controller should detect duplicate messages The default is duplicate detection enabled 1756 6 5 12 March 1999 8 8 Communicating with Devices on a Serial Link Configuring a DF1 master station This field Station address SSS Description The station address for the serial po
186. onfigure the serial port specify these characteristics default ew Geach Loge values are shown in bold z D Canrroiks Properties quack ulewt BE EI cid mai e Meee Miral are Fie a Da Chote Tie I Cirnea Sonal Poa eos i Pasty Cate Bits Sop Bis Pum iE riu Hos ey Deen Wo CE or Ciam Lene Ha Handira BTS Cela port fu PTS OM Daly p rat 0 EA fi Re Characteristic Description default is shown in bold Baud rate Specifies the communication rate for the serial port Select a baud rate that all devices in your system support Select 110 300 600 1200 2400 4800 9600 or 19200 Kbps Parity Specifies the parity setting for the serial port Parity provides additional message packet error detection Select None or Even Data bits Specifies the number of bits per message packet Select 8 Stop bits Specifies the number of stop bits to the device with which the controller is communicating Select 1 or 2 Control line Specifies the mode in which the serial driver operates Select No Handshake Full Duplex Half Duplex with Continuous Carrier or Half Duplex without Continuous Carrier If you are not using a modem select No Handshake If both modems in a point to point link are full duplex select Full Duplex for both controllers If the master modem is full duplex and the slave modem is half duplex select Full Duplex for the master controller and select Half Du
187. onnection for consumed 7 7 connection for produced 7 6 consumed 6 6 individual 4 6 naming 4 4 predefined O structure 3 16 produced 6 6 sample alias 1 14 1 15 scope 4 20 system shared 6 6 types 4 2 viewing I O 1 12 tags creating 4 2 task configuring 5 6 continuous 5 3 controller fault handler 12 9 12 16 creating 5 5 defining 5 2 naming 5 6 periodic 5 3 system overhead 5 15 watchdog 5 8 time 2 6 troubleshooting controller components A 1 LED states A 2 prescan operations A 9 Index l 7 U unscheduled program 12 17 13 4 update 3 2 uploading 2 4 user defined structure 4 10 using MSG instructions 6 1 V viewing controller memory usage 1 22 I O module fault information 3 19 0 tags 1 12 program scan time 1 21 W WALLCLOCKTIME 2 6 watchdog 5 8 1756 6 5 12 March 1999 l 8 Index Notes 1756 6 5 12 March 1999 ControlLogix Logix5550 PLC 5 PLC 3 PLC 2 SLC DH Allen Bradley RSLinx RSNetworx and Rockwell Software are trademarks of Rockwell Automation ControlNet is a trademark of Contro Net International Ltd DeviceNet is a trademark of the Open DeviceNet Vendor Association Ethernet is a trademark of Digital Equipment Corporation Intel and Xerox Corporation 1756 6 5 12 March 1999 Reach us now at www rockwellautomation com Wherever you need us Rockwell Automation brings together leading brands in industrial automation including Allen Bradley controls Reliance Electric power transmiss
188. onsumed tag is a tag whose data value comes from another controller 1756 6 5 12 March 1999 Organizing Data 4 3 Data types When you develop a project the controller provides a set of predefined data types eRe SO akk set Fle Eat ya Geach Loge Domenia ajae a ee l oricie qr star A Cini Tap Corioku let Harie Pomn ip Harda Urectadusi Pisga r i maT pi eet Hird predefined data types gt Sf Procite fe MESSAGE HOnOH_GRQUP D HOTO RST AUCT N i PD i REAL EEN THER Hep Hokies The controller data types follow the IEC 1131 3 defined data types The predefined atomic data types are Data type Description Range BOOL 1 bit boolean 0 off 1l on SINT 1 byte integer 128 to 127 INT 2 byte integer 32 768 to 32 767 DINT 4 byte integer 2 147 483 648 to 2 147 483 647 REAL 4 byte floating point number 3 402823E78 to 1 1754944E negative values and 0 and 1 1754944E 38 to 3 402823E 8 positive values The REAL data type also stores infinity and NAN but the software display differs based on the display format Display Format Equivalent Real infinite 1 infinite 1 NAN 1 QNAN NAN 1 4QNAN Exponential infinite 1 4NF000e 000 infinite 1 1NFO000e 000 NAN 1 4QNAN00e 000 NAN 1 QNAN00e 000 1756 6 5 12 March 1999 4 4 Organizing Data 1756 6 5 12 March 1999 The predefined structures are
189. ontroller that establishes a connection as an owner Only one owner connection is allowed for an output module If another controller attempts to establish an owner connection the connection attempt is rejected listen only Once an output module has been configured and owned by one controller other controllers can establish listen only connections to that module These controllers can receive multicast data while another controller owns the module If the owner controller breaks its connection to the output module all controllers with listen only connections no longer receive multicast data Pa fr 1756 6 5 12 March 1999 You specify ownership by selecting the communications format when you configure the I O module Models Propao Local 1756 1416 Zip Typ IHA 16 Pont PII a iret Virka iim riep Paer Lena ead tie E Dema cc Ab F Linien Ordy CST T macip beget Daia byes inde kad iia Cancel fact l Pjast 3 I Fran gt gt Hep Configuring I O Modules 3 9 Inhibiting module operation In some situations such as when initially commissioning a system it is useful to disable portions of a control system and enable them as you wire up the control system The controller lets you inhibit individual modules or groups of modules which prevents the controller from trying to communicate with the modules When you configure an I O module it defaults to being not inhibited You can change an
190. ore either controller attempts its next copy Otherwise the primary controller could be building a new packet while the backup controller is still copying the previous packet resulting in inaccurate data Communicating with Other Controllers 6 19 Example programming for the primary controller Contos Tag preeaelcustiolier The following ladder logic uses ios Se SE oie E these tags bys COH TEA WHT DHT WH TES WHT Demm Hami a WHT Deom Imi iaa TALE Use a timer to determine the total time required to transfer the entire big_array up to big_array_size to the backup controller TON Timer On Delay N Timer transfer_timer DN gt Preset 10000000 Accum 1436 If the backup controller has not yet copied the current packet backup_ack 0 does not equal packet 123 but has started to receive the current packet backup_ack 1 is equal to 999 then move 999 into packet 124 to acknowledge to the backup controller that it can now start to copy the packet into its big_array The backup controller only sees this acknowledgement after receipt of a complete second transfer of the packet so you are guaranteed that all of the data in the packet is correct NEQ EQU MOV Equal Move Source 4 backup_ack 1 Source oe Not Equal Source A backup_ack O 984 999 Source B packet 123 Source B 999 Dest packet 124 4551 oe If the backup controller has finished copying the cur
191. ot support memory BAT red no battery present replace the battery off no power applied red flashing recoverable fault OK e controller faulted red clear faults clear memory or replace the controller green controller OK 1 _ If the controller does not contain a project controller memory is empty the 1 0 indicator will be off In this location Controller organizer Troubleshooting A 3 Determining which modules are not responding If the I O status indicator is flashing green or flashing red you can use the programming software to determine which I O devices are not responding Each I O module provides an indication when a fault occurs The programming software displays this fault information The software displays The I O configuration portion displays the modules configured for the controller If the controller detects an error condition or fault with one of these modules the controller organizer displays a yellow attention symbol over the device Connection tab from module properties The module fault field displays the fault code returned to the controller related to the module and the text detailing the fault Common categories for module errors are Connection request error The controller is attempting to make a connection to the module and has received an error The connection was not made Service request error The controller is attempting to request a service from the module and has receiv
192. otocol Mar Peas Mirle darca Fie Bead yemir Mani dig Comparg inc Tp FEEL Progaanmania Conacher Qeeronpeon hona mph conde cytes ba ha ar el z Semne f 2 Diaea Tare FEAE FE is a Fizek i RA tee Hers ee You can modify the controller name description and controller properties for the current project Coik Fl FPranlip Har l Tee Mis T sk From this tab General Date Time online only view and edit the controller s wall clock time and the coordinated system time status Communications configure communication information that is stored with the project file Serial Port view and configure the serial port on the controller Serial Port Protocol configure the serial port for DFI point to point DFI slave DFI master Major Faults online only iew any major faults that have occurred on the controller Minor Faults nline only iew any minor faults that have occurred on the controller Advanced ome features are online only iew and edit advanced controller properties which include the system fault program the power loss program and system overhead time slice lt w ols File view information about the project file 1756 6 5 12 March 1999 Working with the Controller Organizer Working with Projects 2 3 The controller organizer is a graphical representation of the contents of a project The display uses folders and files
193. ou configure the message instruction using the EN_CC enable caching bit the connection remains open until the controller stops executing the logic or the connection is closed after the message transmission Message instructions that execute repeatedly should keep the connection open set the EN_CC bit to optimize execution time Opening a connection each time to execute an instruction would increase execution time Message instructions that operate infrequently can close connections upon completion to free up connections for other uses 1756 6 5 12 March 1999 7 8 Allocating Communication Connections Determining Total The Logix5550 controller supports 250 bidirectional connections Connection Requirements Use the following table to tally connection requirements for a controller This table calculates bidirectional connections Bidirectional Connection Type Module Quantity Connections Total Connections per Module 1 0 modules direct connections 1 to 1756 MO2AE servo module to local 1756 CNB module to remote 1756 CNB module to 1756 DHRIO module to 1756 ENET module to 1756 DNB module to Universal Remote I O adapter module produced tags e N O N O WwW produced tag number of consumers consumed tags block transfer messages other messages total 1756 6 5 12 March 1999 Using This Chapter Using RS 232 Chapter 8 Communicating with Devices ona Serial
194. p diagnostics see the ControlLogix Motion Module User Manual publication 1756 6 5 16 1756 6 5 12 March 1999 10 12 Integrating Motion Writing a Motion Application Program 1756 6 5 12 March 1999 To write a motion application program you can insert motion instructions directly into your ladder logic program The motion instruction set consists of Group Motion state instructions Instruc tions ion Servo On MSO ion Servo Off MSF ion Axis Shutdown MASD ion Axis Shutdown Reset MASR ion Direct Drive On MDO ion Direct Drive Off MDF ion Axis Fault Reset MAFR Motion move instructions ion Axis Stop MAS ion Axis Home MAH ion Axis J og MAJ ion Axis Move MAM ion Axis Gearing MAG ion Change Dynamics MCD ion Redefine Position MRP Motion group instructions ion Group Stop MGS ion Group Program Stop MGPS ion Group Shutdown MGSD ion Group Shutdown Reset MGSR ion Group Strobe Position MGSP Motion event instructions ion Arm Watch MAW ion Disarm Watch MDW ion Arm Registration MAR ion Disarm Registration MDR Motion configuration instructions ion Apply Axis Tuning MAAT ion Run Axis Tuning MRAT e Motion Apply Hookup Diagnostics HD ion Run Hookup Diagnostics MRHD These instructions operate on one or more axes You must identify and configure axes before you can use them For more information about configuring
195. pdate Period Select the closure time interval for your axis General Fault Type Select the fault type for your axis Click Next Go to step 7 1756 6 5 12 March 1999 Integrating Motion 10 9 7 Define units pe cmon emt ei tran lt Click Next 8 To continue configuring your axis complete the entries in each Axis Wizard window To move to the next window click Next Important The Axis Wizard will gray out the online diagnostic testing and auto tuning options until your controller is online Before going online complete the configuration of all your servo modules and download your application program Important There are several Axis Wizard windows When you are finished configuring the axis click Finish 1756 6 5 12 March 1999 10 10 Integrating Motion 1756 6 5 12 March 1999 9 Assign the axis to a channel Huje Pommier Locallt 1756 HOZAE 1 11 Gentil Coreis bindae bai Bactatares Tye TWTREOGKE Iiah dai E node Sov ier dep Company re Local If Then You want to assign your axis to channel O In the Channel 0 field select your axis from the drop down menu You want to assign your axis to channel 1 In the Channel J field select your axis from the drop down menu You want to add another axis Click New Axis See page 10 4 You do not want to add another axis Select Finish Important You can also name and configure axes and motion groups using the controller
196. perhaps due to an error condition or fault the module is inhibited The module status information changes to indicate that the module is inhibited and not faulted If you uninhibit a module clear the checkbox and no fault condition occurs a connection is made to the module and the module is dynamically reconfigured if the controller is the owner controller with the configuration you created for that module If the controller is configured for listen only it cannot reconfigure the module If you uninhibit the module and a fault condition occurs a connection is not made to the module The module status information changes to indicate the fault condition 1756 6 5 12 March 1999 Configuring 1 0 Modules 3 11 To inhibit a module from logic you must first read the Mode attribute for the module using a GSV instruction Set bit 2 to the inhibit status C1 to inhibit or 0 to uninhibit Use a SSV instruction to write the Mode attribute back to the module For example Use the GS instruction to get the current status of the module named input_module Use the SS instruction to set the state of input_module as either inhibited or uninhibited Configuring 1 0 in a Remote Chassis Fora DH or remote I O network GSV Get system value CIP Object class MODULE CIP Object name input_module Attribute name Mode Dest input_mod_mode 0 Use this value to set input_mod_mode 2 to 1 to inhibit the module or to 0 to uninhibit the mo
197. plex with Continuous Carrier for the slave controller If all the modems in the system are half duplex select Half Duplex without Continuous Carrier for the controller 1756 6 5 12 March 1999 8 4 Communicating with Devices on a Serial Link Characteristic Description default is shown in bold RTS send delay Enter a count that represents the number of 20msec periods of time that elapse between the assertion of the RTS signal and the beginning of a message transmission This time delay lets the modem prepare to transmit a message The CTS signal must be high for the transmission to occur The range is 0 32767 periods RTS off delay Enter a count that represents the number of 20msec periods of time that elapse between the end of a message transmission and the de assertion of the RTS signal This time delay is a buffer to make sure the modem successfully transmits the entire message The range is 0 32767 periods Normally leave at zero Using the DF1 Serial Protocol All data is encapsulated inside a DF1 protocol packet The controller Use this mode DF1 point to point can communicate only with peripheral devices that support the DF1 protocol Examples of DF1 peripheral devices are programming terminals communication modules e display terminals The available system modes are For See this page communication between the controller and one other DF1 protocol compatible device 8 6 This is the default syste
198. r 1756 6 5 12 March 1999 5 10 Developing Programs 1 Select a program MainProgram in this example 2 Click the right mouse button and select Properties E pi pe jesa jan bem j aaa a e T F Jf feta ai Pii cote Derer Diii Piara Mi ae ia wia 1756 6 5 12 March 1999 Configuring programs Once you create a program there are other properties that you need to configure You must have a main routine The fault and power up routines are optional To configure an existing program T hapan Mops Haning am Iaf i Gereral Conigpasten Hr HE Darin On this tab General In this field Enter Name The programming software displays the current name of the program Edit the name if necessary Description The programming software displays the current description Edit the description if necessary C J maj On this tab Configuration In this field Assigned Routine Enter The programming software displays the name of the Main Routine and the Fault Routine if any Change the selections if necessary Scan Time us While online the programming software displays the maximum scan time and the last scan time in usec for the current program These values are execution times for the program and do not include any time spent waiting for other programs or higher priority tasks These values are display only Defining Routines 1 2 Select
199. r To select an unscheduled program drag and drop the unscheduled program into the power up handler folder If a power up program already exists the unscheduled program takes it place The previous power up program moves to the unscheduled programs folder Configuring programs Once you create a power up program there are other properties that you need to configure You must have a main routine The power up program does not execute a fault routine If you specify a fault routine for the power up program the controller never executes that routine or the controller fault handler To configure an existing program i lay an I 1opiiien Me nro Hi am i BEI E _ Hm ma Devonian On this tab In this field Enter General Name The programming software displays the current name of the program Edit the name if necessary Description The programming software displays the current description Edit the description if necessary Preparing a Power Up Program 13 5 Pregame Properties Aen St Ceg j On this tab In this field Enter Configuration Assigned Routine The programming software displays the name of the Main Routine and the Fault Routine if any Change the selections if necessary Scan Time us While online the programming software displays the maximum scan time and the last scan time in usec for the current program These values are execution times for the program and do not in
200. r Comacton Hadda rs Conkguston Cisgrcehcr achar DequetedPackal inte Eo nn aam LETA D ha fad De Conil l Conrach Fa whia in Pun iod Meaduie Foul Soke Die im co If you do not configure the major fault to occur you should monitor the module status If a module faults outputs go to their configured faulted state The controller and other I O modules continue to operate based on old data from the faulted module ATTENTION Outputs respond to the last non faulted state of the controlling inputs To avoid potential injury and damage to machinery make sure this does not create unsafe operation Configure critical I O modules to generate a controller major fault when they lose their connections to the controller Or monitor the status of I O modules 1756 6 5 12 March 1999 Configuring 1 0 Modules 3 21 Using the programming software to view 1 0 faults From the programming software you can monitor the status of an I O module The programming software has a module information tab that displays module fault status and other information You must be online to get actual data This information is read from the actual ia a RL module so it s only available if the connection to the module is open aala a lale III 1 Select a module 1756 1B16 in this example 2 Click the right mouse button and select Properties You can also reset the module from this tab You can also view I O information from t
201. r information this tab ae teat HLA betes displays controller memory usage Urmel LEAN lami Tabet LINU bis Cogtalier Fat brader irora j scented Wa L Cerc Hei What To Do Next Once your controller is installed and operating you can begin developing and testing your control application Use RSLogix5000 programming software Use the remaining chapters in this manual as reference material for developing and testing your control application The remaining chapters provide detailed information about how the controller operates 1756 6 5 12 March 1999 Using This Chapter Creating a Project 1 Select File gt New Chapter 2 Working with Projects For information about See page Creating a project 2 1 Changing project properties 2 2 Working with the controller organizer 2 3 Saving your work 2 4 Uploading from the controller 2 4 Using coordinated system time CST 2 5 Before you can begin programming or configuring the controller you must create a project file The project file is the file on the hard drive of your workstation that stores logic and configuration information The project file has an ACD extension To create a project specify this information Maree pas Ghee pe a 10S Char jkiMonber E ferent Tho e m mapik pee a JJ SERN SEL l OF Cancel Heb In this field Enter Name Enter the name of the controller for this application This name
202. rce B max_transfer_time Dest max_transfer_time 326 326 1756 6 5 12 March 1999 6 20 Communicating with Other Controllers Example programming for the backup controller Conteslie Tage beeke The following ladder logic uses these tags Ha becker ach DETG NN F tig nosy orme Decora E ote DRT ZS Decwal Z Haha E per Deena F top hi BOO Cece slr This rung first checks to see if packet 123 received from the primary controller is different than backup_ack Q which was set equal to the packet_ID for the previous packet that was copied into big_array on the backup controller If these values are different you know that a new packet has started to be received Then the rung checks to see if packet 124 is equal to 999 If so then the backup controller has received the entire packet and can begin copying it into the backup controller s big_array set backup_ack 0 equal to packet 123 and reset backup_ack 1 If packet 123 is different than backup_ack O move 999 into backup_ack 1 to indicate to the primary controller that the backup controller has started to receive this new packet NEQ Qu MOV Not Equal Equal Move Source packet 123 Source A packet 124 Source packet 123 2583 999 25836 Source B backup_ack 0 Source B 999 Dest packet_ID 5289 7380 Copy File Source packet 0 Dest big_aray packet_ p Length 123 Move Source packet 123 25836 Dest backup
203. re root SQR instruction 23 3 Natural log LN instruction 23 4 Log base 10 LOG instruction 23 6 Sine in radians SIN instruction 23 7 Cosine in radians COS instruction 23 8 Tangent in radians TAN instruction 23 9 Principal arc sine ASN instruction 23 10 Principal arc cosine ACS instruction 23 11 Principal arc tangent ATN instruction 24 12 Arithmetic add ADD instruction 24 13 Arithmetic multiplication MUL instruction 24 14 Arithmetic subtraction SUB instruction 24 15 Arithmetic divide DIV instruction 24 17 Exponentiation XPY instruction 24 18 Value move MOV instruction 26 5 Bitwise AND AND instruction 26 6 Bitwise OR OR instruction 26 7 Bitwise XOR XOR instruction 26 8 Bitwise NOT NOT instruction 28 5 Comparison greater than GRT instruction 28 6 Comparison greater than or equal GRE instruction 28 7 Comparison equal EQU instruction 28 8 Comparison less than LES instruction 1756 6 5 12 March 1999 B 6 IEC1131 3 Compliance Table Number Feature Number Feature Description Implementation Notes 28 9 Comparison less than or equal LEQ instruction 28 10 Comparison not equal NEQ instruction 57 1 2 Horizontal line for rung Ladder editor 57 3 4 Vertical line Ladder editor 57 5 6 Horizontal Vertical connection Ladder editor 57 9 10 Connection and non connection corners Ladder editor 57 11 12 Blocks with connections Ladder editor 58 2 Unconditional j
204. rent packet backup_ack 0 equals packet 123 then build the next packet If backup_ack Q 123 is less than big_array_size then you need to add 123 to the current value of packet 123 to point at the start of the next packet area of big_array If backup_ack O 123 is greater than or equal to big_array_size then all of the required big_array has been transferred and you start over with the first packet You can then store transfer_timer ACC and reset the timer Once you have the correct packet_ID build the next packet using the instructions on the last branch of this rung Then reset packet 124 to zero to reset the acknowledgement from the backup controller EQU Equal Compare Add Source backup_ack 0 Expression backup_ack 0 123 lt big_array_size SourceA packet 123 984 4551 Source B packet 123 Source B 123 4551 Dest packet_ID 5535 CMP LR Compare Expression backup_ack 0 123 gt big_array_size Dest packet_ID 5535 transfer_timer ACC 1436 Dest transfer_time 302 transfer_timer COP MOV LR Copy File Move Clear Source big_array packet_ID Source packet_ID Dest packet_ID Dest packet 0 5535 5535 Length 123 Dest packet 123 ARRI E This rung gathers the maximum transfer time that is seen by the controller RT MOV Greater Than 4 gt B Move Source transfer_time Source transfer_time 302 302 Sou
205. roller and the I O module Any break in the connection such as a module fault or the removal of a module from the chassis while under power causes the controller to set fault status bits in the data area associated with the module If a controller has a module configuration that references a slot in the control system the controller periodically checks for the presence of a device in that slot When a device s presence is detected there the controller automatically sends the module configuration If the module configuration is appropriate for the I O module found in the slot a connection is made and operation begins If the module configuration is not appropriate the connection is rejected You can view the fault message on the Connection tab of the module s properties Module configuration can be inappropriate for any of a number of reasons For example a mismatch in electronic keying that prevents normal operation Allocating Communication Connections 7 3 In this example the owner controller has three direct connections with I O modules in the remote chassis Using Direct Connections with I O in a Remote Chassis Local chassis 8 8 Remote chassis rey 8
206. routine checking for an instruction execution minor fault S minor Set system value Object class Object name Attribute name PendingPollingMode Source BadValue p Get system value Object class PROGRAM Object name THIS Attribute name MINORFAULTRECORD Dest MyFaultRecord TimeLow D This example monitors S MINOR to determine if a minor fault occurs with the execution of the SSV instruction You could replace this SSV instruction with any instruction or operation that you want to check to see whether it generates a minor fault like checking for an overflow condition with a math instruction The GSV instruction then retrieves the fault information and stores it in a tag that uses the structure type you defined The Destination tag must point to the first DINT of the structure MyFaultRecord TimeLow in this example Processing other minor faults minor fault occurs M controller logs minor fault to FAULTLOG Y controller sets minor fault bit in FAULTLOG continue logic execution When a minor fault occurs the controller logs the minor fault information directly to the FAULTLOG object 1756 6 5 12 March 1999 Handling Controller Faults 12 7 Writing logic for other minor faults To check for other minor faults follow these steps 1 Create a DINT to hold the MinorFaultBits record from the FAULTLOG object MinorFaultBits record in the FAULTLOG object
207. rs e Both the source tag and the destination tag must be controller scoped tags e Both the source tag and the destination tag can be of any data type except for AXIS MESSAGE or MOTION_GROUP e You cannot specify array dimensions or structure members Use an alias instead For example instead of array_1 3 specify mytimer acc which is an alias for that array element e You cannot transfer a portion of an array Either specify the entire array by entering the array name or one element of an array by entering an alias 1756 6 5 12 March 1999 6 2 Communicating with Other Controllers Communicating with other processors The Logix5550 controller also uses MSG instructions to communicate with PLC and SLC processors The MSG instructions differ depending on which controller initiates the instruction For MSG instructions originating from a Logix5550 controller to a PLC or SLC processor Type of MSG Instruction Example Source and Destination Supported File Types Logix5550 writes to PLC 5 source element array 1 for PLC 5 SINT INT DINT or REAL Logix5550 writes to SLC or for SLC INT MicroLogix1000 destination tag N7 10 for PLC 5 typed write S B N or F for PLC 5 word range write S B N F I O A or D for SLC B or N You can use an alias tag for the source tag If you want to start at an offset within an array use an alias to point to the offset Logix5550 writes to PLC 2 array_1 SINT INT DINT
208. rs to access tags within the Logix5550 controller you map tags to data table addresses The programming software includes a PLC SLC mapping tool which allows you to make an existing controller array tag in the local controller available to PLC 2 PLC 3 PLC 5 or SLC processors 1756 6 5 12 March 1999 6 4 Communicating with Other Controllers Mapping addresses To map addresses specify this information Ma 1Slege D0 quick sist mn enter sample AC For In this field Specify For example PLC 3 PLC 5 and File Number Enter the file number of the data table in the 10 SLC processors PLC SLC controller Tag Name Enter the array tag name the local controller uses to array 1 refer to the PLC SLC data table address PLC 2 processors Tag Name Enter the tag name to be the PLC 2 compatibility file 200 The tag in the local controller must be an integer array SINT INT or DINT that is large enough to support the message data You can map as many tags as you want to a PLC 3 PLC 5 or SLC processor You can map only one tag to a PLC 2 processor 1756 6 5 12 March 1999 Type of MSG Instruction PLC 5 writes to Logix5550 SLC writes to Logix5550 SLC 5 05 SLC 5 04 0S402 and above SLC 5 03 0S303 and above Communicating with Other Controllers 6 5 The following examples show example source and destination tags and elements for different controller combinations Example Source and Destination source element N7 10
209. rt on the DF1 master Enter a valid DF1 address 0 254 Address 255 is reserved for broadcast messages The default is 0 Specifies the number of times a message is retried after the first attempt before being declared undeliverable Enter a value 0 127 The default is 3 feed b le bea a Seat Pei Mites a rd j fle ap Pe eer Transmit retries piere I E irii huge Drs Tammi ram AD Pama ie ead E Pari OOO aa ACK timeout File inja SS a Heme Tore s7 ki PHH ag amai ti Romer Hep Pica Cae ate Tg oder i miey Tg Specifies the amount of time you want the controller to wait for an acknowledgment to its message transmission Enter a value 0 32767 Limits are defined in 20ms intervals The default is 50 1000ms Reply message wait Message based polling mode only Specifies the amount of time the master station waits after receiving an ACK to a master initiated message before polling the slave station for a reply Enter a value 0 65535 Limits are defined in 20ms intervals The default is 5 100ms Polling mode Select one of these Message Based slave cannot initiate messages e Message Based slave can initiate messages default Standard multiple message transfer per node scan Standard single message transfer per node scan Master transmit Standard polling modes only Select when the master station sends messages e between station polls
210. ructions like this do not change tag values during prescan Once the controller has completed the prescan this instruction will cause a fault as long as the fault routine is set up properly MOV Move Source 0 Dest table pointer 776 This rung will cause the controller to major fault during prescan if the pointer is not within the size of the array Set up code in a program fault handler to prevent this condition from occuring table pointer 0 1756 6 5 12 March 1999 A 12 Troubleshooting Program Fault Routine This rung grabs the fault record for the program and stores it in a user defined structure GSV Get system value CIP Object class PROGRAM CIP Object name THIS Attribute name MAJORFAULTRECORD Dest fault TimeLow o If the fault code indicates a program error Code 4 and the type indicates an array subscript was out of range Type 20 then clear the fault record and send it back to the PROGRAM MAJORFAULTRECORD object with the SS instruction in order to clear the fault CPU_Scanning Qu EQU CLR i Equal Equal Clear Source fault Type Source fault Code Dest fault TimeLow 0e 0e 0e Source B 4 Source B 20 COP SY Copy File Set system value Source fault TimeLow CIP Object class PROGRAM Dest fault TimeHigh CIP Object name THIS Length 10 Attribute name MAJORFAULTRECORD Source fault TimeLow pe 1756 6 5 12 March 1999 Using This Appendix Introduction Appendix
211. s chassis can safely be compared to determine the relative time between data samples Structure data type that contains status and control information for counter instructions A definition of the memory size and the layout of memory that will be allocated when a tag of the data type is created Data types can be atomic structures or arrays Integer values displayed and entered in base 10 No prefix Not padded to the length of the integer See binary hexadecimal octal Descriptions for tags are as many as 120 characters long descriptions for other objects are as many as 128 characters long Any printable character can be used including carriage return tab and space Specification of the size of an array Arrays can have as many as three dimensions An atomic data type that stores a 32 bit signed integer value 2 147 483 648 to 2 147 483 647 An I O connection where the controller establishes an individual connections with an I O module See rack optimized An electronic keying protection mode that requires no attributes of the physical module and the module configured in the software to match and still establishes a connection to the module See compatible module exact match The process of transferring the contents of a project on the workstation into the controller See upload 1756 6 4 1 March 1999 elapsed time electronic keying element exact match execution time exponential 1756 6 4 1 March
212. s often as the specified RPI digital output local chassis If the module resides in the same chassis as the owner controller the module receives the data almost immediately after the owner controller sends it remote chassis If an output module resides in a chassis other than that of the owner controller i e a remote chassis connected via ControlNet the owner controller sends data to the output module only at the RPI rate The RPI also reserves a spot in the stream of data flowing across the ControlNet network The timing of this reserved spot may or may not coincide with the exact value of the RPI but the output module receives data at least as often as the specified RPI 1756 6 5 12 March 1999 3 4 Configuring 1 0 Modules Module Type Placement analog input local chassis Operation The RTS value specifies when to multicast updated channel data The RPI value specifies when to multicast all its current channel data The module resets the RPI timer each time an RTS transfer occurs If the RTS value is less than or equal to the RPI value each multicast of data from the module has newly updated channel data The module only multicasts at the RTS rate If the RTS value is greater than the RPI the module multicasts at both the RTS rate and the RPI rate remote chassis The RPI and RTS rates still define when the module multicasts data within its own chassis but only the RPI value determines when t
213. s task 32 if there is no continuous task Each task in the controller has a priority level The operating system uses the priority level to determine which task to execute when multiple tasks are triggered There are 15 configurable priority levels for periodic tasks that range from 1 15 with 1 being the highest priority and 15 being the lowest priority A higher priority task will interrupt any lower priority task The continuous task has the lowest priority and is always interrupted by a periodic task A task can have as many as 32 separate programs each with its own executable routines and program scoped tags Once a task is triggered activated all the programs assigned to the task execute in the order in which they are grouped Programs can only appear once in the controller organizer and cannot be shared by multiple tasks Each task has a watchdog timer that monitors the execution of a task The watchdog timer begins to time when the task is initiated and stops when all the programs within the task have executed ATTENTION If the watchdog timer reaches a configurable preset a major fault occurs Depending on the controller fault handler the controller might shut down Programs within a task access input and output data directly from controller scoped memory Logic within any task can modify controller scoped data Data and I O values are asynchronous and can change during the course of a task s execution An input value re
214. s you would a tag name SLC 5 05 processors SLC 5 04 processors OS402 and above and SLC 5 03 processors OS303 and above support logical ASCH addressing and support PLC SLC mapping see the examples above For all other SLC or MicroLogix1000 processors you must map a PLC 2 compatibility file see the PLC 2 examples above 1756 6 5 12 March 1999 6 6 Communicating with Other Controllers Using Produced and The Logix5550 controller supports the ability to produce broadcast Consumed Tags and consume receive system shared tags Produced and consumed data is accessible by multiple controllers over the ControlBus backplane or over a ControlNet network ControlBus backplane 6 a oe a ControlLogix chassis two Logix5550 controllers ControlNet network t ei ControlLogix chassis 1771 chassis one Logix5550 controller one PLC 5C controller 41029 Produced and consumed tags must be controller scoped tags of DINT or REAL data type or in an array or structure Tag type Description Specify produced These are tags that the controller produced for Enabled for producing other controllers to consume How many consumers allowed consumed These are tags whose values are produced by Controller name that owns the tag that the local controller wants another controller to consume Tag name or instance that the controller wants to consume Data type of the tag to consume Update interval of
215. save a current project file as another name the controller names is unchanged Use controller properties to change the controller name to match the project name If you are programming online when you save your project data values are uploaded from the controller and saved as well Important If you do not want the data values uploaded from the controller go offline before saving the project If you do not have the project file for a controller you can upload from the controller and create a project file However not everything that is stored in a project file is available from the controller If you upload from a controller the new project file will not contain rung comments e descriptions for tags tasks programs routines modules or user defined structures e chains of aliases aliases pointing to other aliases Alias chains are not completely reconstructed from the controller If there are several possible names for a data item the firmware and software choose a best fit alias that may not reflect how the alias was specified in the original project If you upload a project from a controller and there is not a matching project on the workstation with the same name use Select File to enter a name This process saves the project to the workstation using the name you enter The project will not have any comments and descriptions because this information is not stored in the controller If you upload a project from a
216. se ea Lal fied Ceda p_i g Coniak Tap Cordier Fai Handa Praveen Handi 3 4 Toi FI nE ann 4 Defining Programs 1756 6 5 12 March 1999 Setting the task watchdog Each task has its own watchdog timer If all the programs scheduled for a task take too long to scan or are interrupted by higher priority tasks and exceed the watchdog timer value the controller executes the fault routine if one exists for the program that was executing when the watchdog expired You can change the watchdog timer by using the programming software via the configuration tab of the task properties To change the task watchdog timer om Taik Propectiea Maia sak Heraral Conkpastice Pega Sched gt te Cearn 2 ah Avoiding periodic task overlap Make sure the watchdog timer is greater than the time it takes to execute all the programs in the task A watchdog timeout fault major fault occurs if a task is executing and it is triggered again This can happen if a lower priority task is interrupted by a higher priority task delaying completion of the lower priority task Each program contains program tags a main executable routine other routines and an optional fault routine Each task can schedule as many as 32 programs The scheduled programs within a task execute to completion from first to last Programs that aren t attached to any task show up as unscheduled programs You must specify schedule a program withi
217. structure MyFaultRecord TimeLow This tag is of the structure type you define to hold fault information You can also clear a major fault by using the keyswitch on the controller Turn the keyswitch to Prog then to Run and then back to Prog Major Fault Types and Codes The major fault list includes Type Code Cause Recovery Method 1 1 The controller powered on in Run mode Execute the power loss handler 3 16 A required I O module connection failed Check that the I O module is in the chassis Check electronic keying requirements View the controller properties Major Fault tab and the module properties Connection tab for more information about the fault 3 20 Possible problem with the ControlBus chassis Not recoverable replace the chassis 3 23 At least one required connection was not established Wait for the controller I O light to turn green before before going to Run mode changing to Run mode 1756 6 5 12 March 1999 Handling Controller Faults 12 15 Type Code Cause Recovery Method 4 16 Unknown instruction encountered Remove the unknown instruction This probably happened due to a program conversion process 4 20 Array subscript too big control structure POS or Adjust the value to be within the valid range Don t LEN is invalid exceed the array size or go beyond dimensions defined 4 21 Control structure LEN or POS lt 0
218. t Dane Tamas Comsat boen lra I Baba Gi condrodar iHa pact er A i hw i TETE a UE TEA Guphcata mata detected d Tier haces Lead SS 2s Sia Se The CST value is stored as an array of two DINT elements The TIMESTAMP 0 element stores the lower 32 bits the TIMESTAMP 1 elements stores the upper 32 bits You can compare the CST clocks of different modules in the same chassis for timekeeping purposes For example knowing when an input bit changed by checking the CST timestamp from the input module you can schedule an output bit to change 4 736 seconds later according to the CST clock in the output module For an example of using timestamped inputs to schedule outputs see the ControlLogix Digital I O Modules User Manual publication 1756 6 5 1756 6 5 12 March 1999 2 6 Working with Projects 1756 6 5 12 March 1999 Not all I O modules support the CST communication format You select CST when you specify the communication format as you add the I O module to the controller organizer The controller also has a WALLCLOCKTIME object that is similar to the CST timestamp The WALLCLOCKTIME object has a DateTime attribute that provides the time that has elapsed since 12 00 am 1 January 1972 Use a GSV instruction to capture the DateTime attribute of the WALLCLOCKTIME object into a DINT 7 array This element Contains DINT 0 year DINT 1 integer representation of month 1 12 DINT 2 integer r
219. t has forces enabled the programming software prompts you to enable or disable forces after the download completes 1756 6 5 12 March 1999 Forcing 1 0 11 5 When forces are enabled a gt appears next to the forced value in the ladder editor Ce When forces are enabled the ladder editor Shes la change corte amiens i s aka indicates which forces are on gt Gi E Tone Ps ee Disabling Forces You can disable forces without removing forces from individual values or from the controller By disabling forces the project can execute as programmed Forces are still entered but they are not executed D NS Loge HHE quick_wlai Ee EF ee Geet ee peruse oe alau e fes a foa a Dire AA FIT Select Disable all forces ju a q ah Praia To Removing Forces You can remove forces from individual values or from the entire controller You can remove individual forces from the data monitor If you want to remove a force from a Do this whole SINT INT DINT or REAL value Right click on the value in the data monitor and select Remove Force _ bits within a value Expand the value and edit the Force Mask column Change the bit value to to indicate no force BOOL value Type a space Ifthe force is on a BOOL tag or bit value you can also remove forces from the ladder editor Right click on the value and select Remove Force 1756 6 5 12 March 1999 11 6 Forcing 1 0
220. t_location as data type location This example references the height member of the load_info structure in the input_location load_info height input location structure If the structure defines an array use the array tag followed by the position in the array and any substructure and member names array_tag position member or array_tag position substructure_name member_name For example Example Description conveyor as array location 100 This specifies a 100 word array Each element in the array is data type location a structure conveyor 10 source This example references the source member of the 11 element in the array array elements are zero based conveyor 10 info height This example references the height member of the info structure in the 11 element of the array array elements are zero based Viewing an Array as a Collection of Elements This array Stores data like Organizing Data 4 13 Arrays let you group a set of data of the same data type by the same name and to use subscripts to identify individual elements An element in an array can be an atomic data type or a structure You specify an element in an array by its subscript s Enter the array tag name followed by the subscript s in square brackets The subscript s must specify a value for each dimension of the array Dimensions are zero based For this array Specify one dimension array_name subscript_0 two di
221. ta monitor 1 Select controller tags or program tags 2 Select Edit Tags 3 Define the tag TACTE Sheer Steed Sat Tng Marsa P Taghewe gt iie You can create tags before entering program logic or you can enter tag names as you enter logic and define the tags later using the New Tag dialog box 1 Select the tag name in tag editor 2 Right click on the tag name Conhoku age perk_oiat cashed ooga ipai a io Sat i ee Tag Hoes Y Edi Tag show 4 Define the tag Howe o COC Qecopter Cancel i m Tay fpe b Cruel Desi EONI E scope z iaiia oe Cece I Praduca thi lagim up in Sf aaa Using Base Tags A base tag stores one value at a time The type of value depends on the data type Use these atomic data types to define base tags e BOOL e SINT e INT DINT e REAL Memory allocation for base tags The amount of memory that a tag uses depends on the data type The minimum allocation within the controller is four bytes Some of the data types are smaller than four bytes BOOL SINT and INT When you create a tag using one of these data types the controller allocates four bytes but the data only fills the part it needs To use memory more efficiently create arrays or structures to hold these smaller data types See the following examples 1756 6 5 12 March 1999 Organizing Data 4 7 Most instructions do not operate on BOOL arrays For BOOL
222. tag editor The tag editor supports copy and paste operations which can make axis naming and configuration easier and faster Integrating Motion 10 11 Running hookup diagnostics and auto tuning To open the module properties window 1 Select the servo module 2 Click the right mouse button and select Properties Once you have added and configured your modules and axes you can download your program After going online you can complete hookup diagnostics and auto tuning 1 Download your project Fire T ae fe Edhi T a Drem AE DFii Ar ER Dorice quech_ start A Tarini Tage E Coniroie suit H ardar E Porse Lis Harde A Taik ra lesa Tk Your program can be a blank program but it must include complete configuration information for all your modules and axes 2 Inthe module properties window select the channel that you assigned to the axis E hiie Preeiiies Local 6 1750 RAE 11 Geel commotion Madde inde Backplane TAS VRAD JAE Diii Araki E nonce Spray Vendor Alene Carpre Fuert Lead nge rem wi If Then You assigned your axis to channel 0 Select the button next to Channel 0 You assigned your axis to channel 1 Select the button next to Channel 1 3 Select the Hookup tab and run the hookup diagnostics 4 Select the Tune Servo tab and run auto tuning 5 When diagnostic testing and auto tuning are complete click OK For more information about hooku
223. the software match in order to establish a connection to the module See disable keying exact match The communication mechanism from the controller to another module in the control system The number of connections that a single controller can have is limited Communications with I O modules consumed tags produced tags and MSG instructions use connections to transfer data A tag that receives its data from another controller Consumed tags are always at controller scope See produced tag A task that runs continuously restarting the execution of its programs when the last one finishes There can be only one continuous task although there does not have to be any See periodic task Messaging protocol used by Allen Bradley s series ControlLogix line of control equipment Native communications protocol used on the ControlNet network The backplane used by the 1756 chassis Acts as a network controller scope Coordinated System Time CST COUNTER data type decimal description dimension DINT direct disable keying download 3 Data accessible anywhere in the controller The controller contains a collection of tags that can be referenced by the routines and alias tags in any program as well as other aliases in the controller scope See program scope A synchronized time value for all the modules within a single ControlBus chassis Data timestamped with CST data from modules within a single ControlBu
224. the specified number normal poll group size of active stations in the normal poll array one inactive station after all the active stations in the normal poll array have been polled Use the programming software to change the display style of the active station array to binary so you can view which stations are active 1756 6 5 12 March 1999 8 10 Communicating with Devices on a Serial Link Notes 1756 6 5 12 March 1999 Using This Chapter Configuring Communications to the Controller from a Workstation 1 From the Communications menu item select Configure 2 Select the Communications tab Ek pE ym ph Loe Ira ynia D s Chapter 9 Communicating with a Workstation For information about See page Configuring communications to the controller from 9 1 a workstation Defining connection paths 9 2 This chapter discusses configuring connection paths so the controller can communicate over networks For information about configuring serial parameters see the previous chapter Communicating with Devices on a Serial Link To communicate from a workstation to a controller you must configure the appropriate communication driver for the network that links the workstation and the controller The communication driver enables the controller to communicate over the network You must configure communication drivers with RSLinx software and then select the appropriate driver in the programming software
225. tion Fix program by examining arithmetic operations order or adjusting values 4 7 The GSV SSV destination tag was too small to hold Fix the destination so it has enough space all of the data 4 35 PID delta time lt 0 Adjust the PID delta time so that it is gt 0 4 36 PID setpoint out of range Adjust the setpoint so that it is within range 6 2 Periodic task overlap Simplify program s or lengthen period or raise Periodic task has not completed before it is time to relative priority etc execute again 9 0 Unknown error while servicing the serial port Contact GTS personnel 9 1 The CTS line is not correct for the current Disconnect and reconnect the serial port cable to configuration the controller Make sure the cable is wired correctly 9 2 Poll list error Check for the following errors in the poll list A problem was detected with the DF1 master s poll total number of stations is greater than the space list such as specifying more stations than the size of in the poll list tag the file specifying more then 255 stations trying to total number of stations is greater than 255 index past the end of the list or polling the broadcast current station pointer is greater than the end of address STN 255 the poll list tag e a station number greater than 254 was encountered 9 5 DF1 slave poll timeout Determine and correct delay for polling The poll watchdog has timed out for slave The master has not polled this controller in th
226. tion execution minor faults minor fault occurs controller sets S MINOR controller logs minor fault to PROGRAM MinorFaultRecord ye controller logs minor fault to FAULTLOG controller sets minor fault bit in FAULTLOG continue logic execution When an instruction execution minor fault occurs the controller logs the minor fault information to the current PROGRAM object Then the controller logs the minor fault information to the FAULTLOG object but this fault information is mainly historical Use the PROGRAM fault information for accurate current fault information 1756 6 5 12 March 1999 Handling Controller Faults 12 5 Writing logic for instruction execution minor faults To check for an instruction execution minor fault follow these steps 1 Create a user defined structure to store the fault information This can be the same structure you use for major fault information The format must be as follows you can change the structure and member names but the data types and sizes must be the same as shown below Name Faun ecard Size 44 byte s Meen User Defined Type created to simplify access to fault a p record information obtained from GSV of Program fault record information Z Members ene eepo tee eae _ TimeLow DINT ae Low 32 bits of fault timestamp value TimeHigh DINT Decimal Upper 32 bits of fault timestamp value Type INT Deci
227. tion see chapter 7 Producing a tag from a Logix5550 controller to a ControlNet PLC 5 processor To produce a tag that a ControlINet PLC 5 processor can consume follow these steps 1 Create a produced tag in the Logix5550 controller 2 In RSNetworx communication software in the ControlNet configuration for the target PLC 5 controller create a Receive Scheduled Message The input size of the scheduled message must match the number of bytes in the Logix5550 tag A produced tag in the Logix5550 controller is always a multiple of 32 bits DINT REAL or structure 3 Schedule the link using RSNetworx software The ControlINet PLC 5 controller does not perform type checking Make sure the PLC 5 data type can correctly receive the Logix5550 produced tag to ensure proper data is being received Consuming a Tag A consumed tag represents data that is produced broadcasted by one controller and received and stored by the consuming controller 1 In the Tag Editor select the tag 2 Click the right mouse button and select Tag Properties Conic age diampah eria Laseme E Loreal Dga nia Sheesh Pap i ke Tag Te Bae C e F fpr C ooo o Ganini AP peit adia Pri Dais Te Fri E Spe Dawa F Bedicettetagtona io E aformon 1756 6 5 12 March 1999 Communicating with Other Controllers 6 15 To create a consumed tag create a tag and select the consumed tag type In this field Enter
228. triggered upon detection of the rising edge of a configured input The Logix5550 provides supports for both continuous and periodic task options Additionally the period for a periodic task is configurable starting as low as 1 millisecond ms The IEC1131 3 specification provides access to memory through the creation of named variables IEC1131 2 names for variables consist of a minimum of six characters RSLogix5000 programming software supports a minimum of 1 character starting with an underscore _ or an alpha character A Z followed by one or more characters consisting of an underscore _ alpha character A Z or a number 0 9 Optionally lower case alpha characters a z can be supported as long as they are case insensitive A a B b C c The controller provides full compliance with this definition supports the lower case option and extends the name to support up to 40 character names Data variables in IEC113 3 may be defined such that they are accessible to all programs within a resource or controller or limited access is provided only to the functions or routines within a single program To pass data between multiple resources or controllers access paths may be configured to define the location of the data within a system The Logix5550 provides compliance by providing program scoped controller scoped data and permits the configuration of access paths using produced consumed data The memory interpretation of a variab
229. trolNet port of the KTC communications card in the workstation E port 2 colar 49 ControlNet node of the 1756 CNB module in slot 1 of the local chassis ControlNet link r 1 backplane port of the 1756 CNB module in slot 1 of the local chassis FREE eae l 0 slot number of the 1756 CNB module in the local chassis contonet on 49 coe rede 4 2 ControlNet port of the 1756 CNB module in slot 0 of the local chassis _ 42 ControlNet node of the 1756 CNB module in slot 0 of the remote chassis ControlNet link 1 backplane port of the 1756 CNB module in slot 0 of the remote chassis 3 slot number of the controller in the remote chassis Ethernet Use Ethernet to connect to the controller in the Select an Ethernet driver remote chassis Enter connection path 1 1 2 127 127 127 12 1 3 contains Ethernet card 1 backplane port of the 1756 ENET module in slot 2 of the local chassis h AO 1 slot number of the other 1756 ENET module in the local chassis ee em 2 Ethernet port of the 1756 ENET module in slot 1 of the local chassis Se He 127 127 127 12 IP address of the 1756 ENET module in the remote chassis local chassis U remote chassis Ethernet module in slot 1 Ethernet module in slot 2 Ethernet link Ethernet module in slot 1 IP address 127 127 127 12 1 backplane port of the 1756 ENET module in slot 1 of the remote chassis 3 slot number of the controller in the remote chassis 1756 6 5 12 March 1999
230. troller scoped tag You can only choose to produce a tag when programming offline Scoping Tags Action referencing the tag You can group scope tags within an individual program or make them available to instructions anywhere in the controller When you define tags you specify them as either program tags local or controller tags global You can have multiple tags with the same name as long as each tag has a different scope one as a controller tag and the others as program tags or all as program tags Certain limitations apply to data in both scopes Controller Scope Tags Program Scope Tags any routine routines within the same program naming a tag within the current program a controller defaults to the program scope tag scope tag is not available if a program scope tag of the same name exists you cannot reference both a controller scope tag and a program scope tag with the same name in a routine messaging no limitation tag cannot be program scope tag must be controller scope producer consumer no limitation tag cannot be program scope tag must be controller scope 1756 6 5 12 March 1999 Organizing Data 4 21 Scoping tags local to a program Program tags consist of data that is used exclusively by the routines within a program These tags are local to a program The routines in other programs cannot access the program tags of another program Tag scope Description program Program tags
231. tus counters 1756 6 5 12 March 1999 3 16 Configuring 1 0 Modules Accessing 1 0 1756 6 5 12 March 1999 T O information is presented as a structure of multiple fields which depend on the specific features of the I O module The name of the structure information is based on the location of the I O module in the system Each I O tag is automatically created when you configure the 1 O module through the programming software Each tag name follows this format Location SlotNumber Type Member Name SubMember Name Bit where This address variable Is Location Identifies network location LOCAL local chassis ADAPTER_NAME identifies remote chassis communication adapter or bridge module SlotNumber Slot number of I O module in its chassis Type Type of data input O output C configuration S status MemberName Specific data from the I O module depends on what type of data the module can store For example Data and Fault are possible fields of data for an I O module Data is the common name for values the are sent to or received from I O points SubMemberName Specific data related to a MemberName Bit optional Specific point on the 1 0 module depends on the size of the I O module 0 31 for a 32 point module For more information on tags see chapter 4 Configuring I O Modules 3 17 Example of local addressing This example addresses a bit in an I O module that resides in the local chassis
232. tware Click OK C oma a 1756 6 5 12 March 1999 1 20 Getting Started Download a project continued 6 Select Download Ee Ee yes pah Loge fo Bjala ale see chapter 5 and aj fere chapter 8 Ea j j mit Hari N Tapaka bo e pri Fane Urien Tape TATELA LOGS Uying ihig comrmanacaiann conbpastion Diar A8 _DFi i Pah creer omen eee z Click Download 7 Put the controller in Run mode 1756 6 5 12 March 1999 Getting Started 1 21 Viewing program scan time 1 View properties for the MainProgram bela a e COG View see chapter 5 A Place the cursor over the MainProgram folder p B Click the right mouse button and select Properties 2 Select the Configuration tab Papam Preeti This tab displays the maximum and last y_ scan times for the program 1756 6 5 12 March 1999 1 22 Getting Started Viewing controller memory usage 1 View properties for Controller quick_start 6 View Fe Nstege smo ak at status Ee Ed ieee par Loge eens Cir F hEm ener B DFii r Waiiy Drikk Tay A Place the cursor over the Controller quick_ start folder a Corti Fs HE B Click the right mouse button and select Properties pe o c magm rh 3 ia Hena C 2 Select the Advanced tab Conte Mopani gaich octet Geral Gites Corre Ser Pont Gea Pot Feaci Mago Fans HFa Adnod e In addition to othe
233. two dimensions tag_name subscript_0 subscript_1 subscript_0 is held fixed at 0 while subscript_1 increments from 0 to its maximum value Subscript 0 then increments by 1 if For an array with three dimensions dimension 0 is greater than 1 and is held fixed tag_name subscript_0 subscript_1 while subscript 1 increments through its subscript_2 subscript_0 is held fixed at 0 range again This pattern continues until both while subscript_1 and subscript_2 increment subscripts reach their maximum values just like a two dimensional array Subscript_0 then increments by 1 if dimension 0 is greater than 1 and is held fixed until subscript 1 and subscript_2 reach their maximum values This pattern continues until all three subscripts reach their maximum values 1756 6 5 12 March 1999 Organizing Data 4 17 Varying a dimension The AVE SRT and STD instructions have a Dimension to vary operand The instruction uses this operand to calculate an offset that the instruction uses to determine which elements of the Array to read or write Array re 9 Offset one dimension 0 1 two dimension 0 dimension_1 1 1 three dimension 0 dimension_1 dimension_2 1 dimension_2 2 1 Memory Allocation for Arrays The amount of memory that an array uses depends on the data type used to create the array The minimum allocation within the controller is four bytes which is the same as 32 BOOLs 4 SINTs 2 INTs or 1 DINT
234. tyle This display style defines how the tag value will be displayed in the data monitor and ladder editor The display style does not have to match the display style of the tag in the remote controller Select whether to make this tag available to other controllers Specify how many controllers can consume the tag You can only create a produced tag when programming offline Important All consumed tags are automatically controller scope A produced or consumed tag cannot be larger than 500 bytes You can only create a consumed tag when programming offline If a consumed tag is configured over a ControlNet network you must use RSNetworx to schedule its connection over the network The produced tag in the originating Logix5550 controller must have the same data type as the consumed tag in the other Logix5550 controller The Logix5550 controller performs type checking to ensure proper data is being received Important If a consumed tag connection fails all of the other tags being consumed from that remote controller stop receiving data as well 1756 6 5 12 March 1999 6 16 Communicating with Other Controllers Select Consumed Tags gt 1756 6 5 12 March 1999 Scape Tag You can display a list of consumed tags in the tag editor of the current project Er Sitges orare T Sat im E AET g IHT Ce AETH C Cra Produced tags require connections The number of connections depend on the amount of data
235. ule specific configuration information The available fields depend on the module For example this tab for the 1756 1B16 module has fields for enable change of state and input filter time settings Backplane The programming software displays backplane status information There are no fields to select or enter data You can clear faults and reset the status counters 1756 6 5 12 March 1999 Monitoring Controller Status 1 Place the cursor over the controller folder Controller quick_start in this example 2 Click the right mouse button and select Properties Fle dl yes Geach Logo Dormanistion alela a e r hEm Derm E DFii B Crida Tay Corinda leh Pii Prralip Hark From this tab General Troubleshooting A 5 The Logix5550 controller offers different levels of status information that you can view through the programming software and access through logic Viewing status through the programming software The controller properties dialog displays controller configuration information for the open project and when online for the attached controller o Conibale Moparts quick iai Uerarad i sa lres l Comare EEE baa Port Geia Popia Ho Fouts MPs Adnod Fi Hamag Ikat LE bis Unasi LEDGE bim Tan LINA bisa Cogia Faak Harder iro a a ee From the controller properties you can edit and view this information You can modify the controller name description
236. ults 12 19 Creating routines You can create multiple routines for the controller fault program One routine must be configured as the main routine for the program This routine can call other routines To create a controller fault routine lee Leics B Progra ierit fa In this field Enter Name Enter the name of the routine Description Enter a description of the routine optional Type Select the programming language used to create the routine Ladder is the default In Program Leave this selection alone It automatically defaults to the controller fault program Naming routines Routine names follow IEC 1131 3 identifier rules and e must begin with an alphabetic character A Z or a z or an underscore _ e can contain only alphabetic characters numeric characters and underscores e can have as many as 40 characters e must not have consecutive or trailing underscore characters _ Routine names are not case sensitive 1756 6 5 12 March 1999 12 20 Handling Controller Faults Accessing the FAULTLOG You access controller status through the GSV SSV instructions Status information is stored in objects One such object is the FAULTLOG The FAULTLOG contains Attribute Instruction Description MajorEvents GSV How many major faults have occurred since the last time this counter was reset SSV MinorEvents GSV How many minor faults have occurred since the last time this counter was
237. ump J MP instruction 58 3 J ump target LBL Instruction 58 4 Conditional jump J MP instruction 58 5 Conditional return RET instruction 58 8 Unconditional return RET instruction 59 1 Left hand power rail Ladder editor 59 2 Right hand power rail Ladder editor 60 1 Horizontal link Ladder editor 60 2 Vertical link Ladder editor 61 1 2 Normally open contact XIC instruction 61 3 4 Normally close contact XIO instruction 61 5 6 Positive transition sensing contact P ONS instruction 62 1 Coil OTE instruction 62 6 Set retentive memory coil SM OTL instruction 62 7 Reset retentive memory coil RM OTU instruction 62 8 Positive transition sensing coil OSR instruction 62 9 Negative transition sensing coil OSF instruction 1 Table associated with languages other than ladder diagram have been skipped 1756 6 5 12 March 1999 Logix5550 Controller Appendix C Specifications Description Value backplane current 5V dc 24V dc 1756 L1 0 65A 0 02A 1756 L1M1 0 954 0 02A 1756 L1M2 1 05A 0 02A 1756 L1M3 1 20A 0 02A temperature operating 0 to 60 C 32 to 140 F storage 40 to 85 C 40 to 185 F relative humidity 5 to 95 noncondensing vibration 10 to 500 Hz 2 0 G maximum peak acceleration shock operating 30G peak for 11ms storage 50G peak for 11ms weight 1756 L1 10 0 oz 1756 L1M1 12 5 oz 1756 L1M2 12 5 oz 1756 L1M3 12 7 02 battery 1756 BA1 PROMARK Electronics 94194801
238. vel Move axis in positive direction until position is within limit overtravel limit and then execute Motion Axis Fault Reset 11 3 Actual position has exceeded position error Move the position within tolerance and then execute tolerance Motion Axis Fault Reset 11 4 Encoder channel A B or Z connection is broken Reconnect the encoder channel then execute Motion Axis Fault Reset 11 5 Encoder noise event detected or the encoder signals Fix encoder cabling then execute Motion Axis Fault are not in quadrature Reset 11 6 Drive Fault input was activated Clear Drive Fault then execute Motion Axis Fault Reset 11 7 Synchronous connection incurred a failure First execute Motion Axis Fault Reset If that doesn t work pull servo module out and plug back in If all else fails replace servo module 11 8 Servo module has detected a serious hardware fault Replace the module 11 9 Asynchronous Connection has incurred a failure First execute Motion Axis Fault Reset If that doesn t work pull servo module out and plug back in If all else fails replace servo module 11 32 The motion task has experienced an overlap The group s course update rate is too high to maintain correct operation Clear the group fault tag raise the group s update rate and then clear the major fault 1756 6 5 12 March 1999 12 16 Handling Controller Faults Creating a Program Fault Routine 1 Select a program MainProgram in this example 2
239. x5550 controller and remote Logix5550 controller ControlLogix chassis with one Logix5550 controller Eaa ControlNet network fe E ControlNet network ControlLogix chassis with one Logix5550 controller j je el is fe Logix5550 controller and PLC 5 ControlNet processor 1771 chassis with one PLC 5C controller q ControlNet network ControlLogix chassis with one Logix5550 controller ni ControlNet network 1756 6 5 12 March 1999 6 10 Communicating with Other Controllers Identifying another local controller 1 Select I O Configuration Identifying another Logix5550 controller in the same chassis is 2 Click the right mouse button and select New Module similar to adding local I O modules to the controller organizer To identify another Logix5550 controller select the 1756 L1 Vo MShogte 00 quick miat controller Specify EF ree feeb lee amari alaj j jji g Mealele Propertica Lota ISELI 1 11 a Fis i Tr 1AL1 Lonel og S85 Preparada Loriot fice a l Weni Akri Dre ALETE aaa i Coiria quack ria dA Coriolis Tage Corder Pad Handa Porm Lar Hore BA Pg Tiji T MinPts 2 Unchedded Prg rer J Coe Tapti a Uparta EA _ tus a Rime ee Up hine Mahir eiea In this field Enter Name Enter a name for the controller required Description Enter a
240. xt page All non instruction faults I O task watchdog etc execute the controller fault handler directly no program fault routine is called 1756 6 5 12 March 1999 12 10 Hand major fault occurs instruction fault no ing Controller Faults yes p controller logs major fault to current PROGRAM MajorFaultRecord y program fault routine exists no yes execute current program s fault routine fault cleared no continue logic execution 1756 6 5 12 March 1999 no a controller logs major fault to controller fault handler PROGRAM MajorFaultRecord controller fault handler exists execute controller fault handler fault cleared no gt continue logic execution enter faulted mode record FAULTLOG shut down Handling Controller Faults 12 11 There are two main categories of major faults Category Description instruction execution problem occurs when executing logic other major problem occurs with the power loss 0 task watchdog mode change motion axis The multitasking capability of the controller makes it possible for multiple major faults to be reported For example multiple task watchdog timeouts can occur at the same time or I O faults can be reported at the same time as an instruction execution fault occurs In th
Download Pdf Manuals
Related Search
Related Contents
Pizarra interactiva FX Church 2L2155T 000 Installation Guide Cecilware MT-72 User's Manual Installation Manual ADC44 or ADC66 3ph Inititiation à la recherche documentaire "user manual" Manual de Instruções CLP 4721 Detachant chewing gum CLEAN POWER - Le Vrai Professionnel Développement des compétences Copyright © All rights reserved.
Failed to retrieve file