2013 International Conference On Open Source Systems And Technologies .

Transcription

2013 International Conference on Open Source Systems and Technologies (ICOSST)Benchmarking Industrial PLC & PACan approach to cost effective industrial automationShafqat Iqbal, Saad Ahmad Khan and Zubair Ahmad KhanDepartment of Electrical Engineering,University of Engineering & TechnologyLahore, Pakistan 54890Email: shafqatiqbal@gmail.com; skhan@eecs.ucf.edu; zubair.khan@kics.edu.pktradeoffs in order to deliver a best value proposition for the industrialend user and better value for money. For instance, a manufacturer ofan industrial controller by utilizing the benchmark may be able topinpoint the algorithms that are critical for an application.Benchmarks execution; while developing controllers give the clues tomanufacturers by utilizing a simulator to mimic the applicationprogram.Abstract — Benchmarks are quite important in PLC’s CPUdesign, that laydown guidelines for the processor architecturedesign, the ability to measure and make tradeoffs in microarchitectural decisions. This paper presents benchmarkingmethodology for an industrial controller by developing andrunning standard application programs on controllers orruntime environments in the light of IEC-61131-3 programmingstandard in order to assess the controller’s efficiency pertainingto Pakistan’s industrial process control and automation needs.Manufacturers of the industrial controllers usually refer to thosestandards and benchmarks which appreciate their efficiencies.Considering the critical nature of the application it is highlyrecommended to use the same workload as intended. For the last twodecades PLCs are proved to be standard controllers to process safetycritical applications in petrochemical plants. Verification proceduresof logic processing power derived from computer sciences [1] don’tfulfils the dynamically changing and complex situations due to thefollowing three reasons mainly; ease of access, supremacy ofcontinuous dynamics and complexity.Keywords—benchmarking; industrial automation; IEC 61131;PLC; PACI.INTRODUCTIONAn industrial control system is considered as the brain of anypetrochemical, oil and gas, food processing industry. In the past therewere never any reliable guidelines available to end user of a controlsystem to determine which system will fulfill its requirements.Therefore, more or less unavailability of standard tests procedures tofulfill the needs of consumer to compare the performance of theindustrial PLCs and PACs. The aforementioned requirement ofstandard benchmarking is the baseline for our research work. Thisresearch will establish benchmarks; highlights cost effectiveness andcomparative performance statements between two widely used worldbrands of PLCs & PACs. PACs are the technology of future and willeventually replace the PLCs. The power of the PAC system is itscapabilities of embedded industrial grade central processing unit andopen protocol architecture.In traditional benchmarking process the program is usuallyevaluated in the context of time required to execute a code of onethousand lines. Which does not depicts the real time consumed toperform a program in relation to a specific application. Hence, thesimilar approach is no more valid for an industrial controllerefficiency evaluation [2].The “benchmarking” will be used to develop a methodology toanalyze the performance of famous industrial PACs & PLCs. Theusers of industrial automation devices will now be able to analyze theperformance of their industrial controllers.In control world computation, benchmarking is a process ofrunning a ladder program (IEC-61131-3), structure text program(IEC-61131-3) or a function block programs (IEC-61131-3) on anindustrial controller to grade its relative performance on similargrounds and basis for a specific application. The term benchmark' inmost of the cases was interpreted as the process of running a programon hardware to compare apples with apples. However, the task herein industrial control becomes handy when the programmer has todeal with a variety of coding tools and operating environmentsreferred as integrated development environment to code and compileprogram. Benchmarking methodology developed here is supposed tolaydown a foundation to evaluate the performance of an industrialprogrammable logic controller as the application required by industryuser varies drastically from industry to industry and still evolving.The benchmarking methodology chiefly will cover the followinggoals of programming:1) Performance analysis of a particular platform and itsapplication [3].2) Performance evaluation based on objectives but on a varietyof industrial programmable controller [3].II.Benchmarks took an important place in industrial controllersCPU design that allowed the manufacturer of a CPU to make978-1-4799-2046-4/13/ 31.00 2013 IEEECHALLENGESThe benchmarking involves an iterative process of runningbenchmarks on industrial controllers to assess the relativeperformance of one controller to another. There are a number ofchallenges associated with the benchmarks and a few of thosechallenges are:143

2013 International Conference on Open Source Systems and Technologies (ICOSST)1)Considering industrial benchmarks available tomanufacturers they may tweak with parameters to boosttheir controller's performance.2)Speed is considered as the key parameter to evaluate theefficiency of industrial controller. However, there are otherfactors that are ignored for instance:i.Reliability & availability: may be defined in terms ofMTBF (Mean Time Between Failure).ii.Security: sometimes controllers are connected withintranet to communicate the production parametersand intranet may be connected to internet. An intrudermay make our life worst if we do not have anyfirewall between control and external world.iii.Execution integrity: can be integrated with otherdevices easily?iv.Serviceability: may be defined in terms of MTTR(Mean Time To Repair).v.Scalability: can be scaled up based on the expandingneed of customer.vi.Trade-offs are there to bridge the quality and servicerequired for applications.vii.TCO (Total cost of ownership) has been not properlyaddressed by benchmarks [4]viii.Electrical power consumption of industrial controllers.3)It is not possible with the benchmarks to run multipleapplications programs at the same time.4)Perception of industrial controller's may be different thenthe benchmark is suggesting.5)It has been proved with the empirical results that most thecontrollers performance degraded drastically at a utilizationof more than seventy percent and it is recommended not toutilize more than thirty percent if user is considering a smallexpansion or modification project in near future and not toutilize more than fifty to sixty percent for efficient response.6)encoding system, the management and organization of the projects.The principal benefit by means of engaging IEC 61131 is thevendor’s compliance to match controllers and encoding systems, iscapable to suit all the available platforms and the deployment of sameconstructs. This ultimately leads to reduction in automation systemTCO.The major modifications that have arrived with IEC 61131-3 are:Proclamation of variables is now structured and alignedwith the regular variables proclamation in higher endencoding languages.2)Proclamation of user defined data types is permissibleunder this coding standard.3)Global versus local data variables has its own scopedefinition.4)Symbolic representation means encoding in this standard.A. Configuration, Resources and TasksTo have a better understanding, let's have a look (see Figure 1) atthe software model, as defined in the standardFig 1. Software Model of IEC 61131-3 StandardThe prime challenge is to effectively use the standards thespecification and implementation analysis of PLC'sprograms [2]. PLC are generally considered as industrialcomputers utilized to automate the manufacturing industrysuch as, petrochemical, oil and gas, food andpharmaceutical, etc.III.1)IEC 61131IEC 61131 standards were time-honored to carry all the encodinglanguages being used, directives set and dissimilar concepts to be hadin the turf of control system and automation world at a consistentlevel. The tremendous assortment of PLC concepts has led toinaptness between the several PLC platforms and vendors. Theevident outcome was tremendous investment in training onhardware, virtual systems and software.Standard IEC 61131-3 led to the standardization of variousencoding languages and laid the road as a set of principles, thecommunication among programmable controllers, the directives set,1441)Configuration - Configuration level allows solving ameticulous control dilemma in hand at one time that can bedevised as a configuration. Configuration is explicit to ameticulous type of control system and may vary vendor tovendor that includes an array of the hardware, i.e. dealingout with system resourcefulnesses, system capacities andaddresses of memory pertaining to I/Os channels. Within aconfiguration, perhaps may define one or more resources.2)Resources - Resources may be defined as the dispensationcapability to carry out an IEC program. A resource mayconstitute one or more tasks in it.3)Tasks - Tasks control the sequential or event basedprograms or function blocks execution. Tasks execute aroutine associated with an event based on the change in avariable or on the other hand can be executed periodically.4)Programs - IEC 61131-3 defined languages with apredefined syntax which is supposed to be followed byprogrammers and constitutes different elements. In generalprogram represents a chronological order of network offunctions and function blocks that have the capability toexchange data. The vital building blocks are functions and

2013 International Conference on Open Source Systems and Technologies (ICOSST)function blocks which consists of a data structure and analgorithm.A. Scan Time MeasurementScan time measurement of a chronological or sequential controlprogram initially seems a very undemanding job. Time stamping canbe accomplished by logging the start and end times. Common acuityis that in an application can be easily measured by tapping start andend of the operation. However, this acuity is hardly true due to thefact that the processor operations are being time sliced to perform theother operations for instance I/O processing, etc. The timemeasurement taken in this way would be highly inaccurate as themeasurement is based on the single program. In a similar way, incontrol world most of the time overhead scan time is usuallyassociated with the overall efficiency of the controller. Therefore, toaddress this issue there is a need to measure the scan time when thereis no program or function block is being called at that specific time.A traditional controller consists of a resource, operating one task,controlling a program and it might be executing a closed loop.Openness has been added to the conventional controller’s structureafter the incorporation of IEC 61131-3 for future.B. Program Organization UnitsPOUs major parts are Function Blocks and Functions.1) ProgramsRelying on the above knowledge, a program can be recognizedas the combination of function blocks and functions. Anyencoding language can be used defined under the light of the IECstandards to build the desired program.B. Development of Standard RoutinesSince the method adopted for this research work is very close toPLCopen organization Technical Committee paper publicationconcept of benchmarking [5]. Therefore, it was mandatory to developstandard routines that can be executed on the selected runtimeenvironments which will give us an estimate or a glance view thathow a controller will respond to a specific application oriented code.The only difference is that the proposed standard by PLCopen mightbe biased with controller’s manufacturers [5]. The development ofroutines will guide the purchaser or end user with an idea of thecontroller’s strengths and weakness in line with their specificapplication. The mere purpose of this research is to lay down amethodology for selection of controllers according to theirapplication rather than comparing controllers from one vendor toanother. It is possible that one controller may work perfectly under aspecific condition due their tradeoff on other varying conditions tocapture that specific requirement or sector pertaining to application.The other area of development is related to data types such asBoolean, Integers, Double integers, floating types. There, are chancesthat one controller may produce efficient results on a certain data typebut not on the other data types. Outcome of this part will guide theprogrammer to tune the codes to data types that a controller canefficiently handle.C. Sequential Function Chart, SFCSFC as shown in Figure 2 is designed for those programmerswho find it difficult to understand the structured text or evenladder program language. It represents a graphical chronologicalorder of sequences. Petri Nets [3] is mother of this language andIEC 848 Grafcet is also its step mother. It includes all thedocuments support required to convert the logic from standarddocumentation set of directives to execution elements. The wholeidea of the SFC is to divide the program load of control job intomanageable chunks.C. Selection of Runtine EnvironmentsAnother taunting challenge for this research was the selection ofthe runtime environments that can truly mimic the real timecontrollers to understand and evaluate the performance of acontroller. Two world's most widely used runtime environmentswere selected from world renowned VENDORSFig 2. Sequential Function Chart Execution ModelIV.METHODOLOGYAfter a thorough and detail review of IEC-61131-3 literature [2]the resulted methodology for this research is laid on the followingmilestones:1)Scan Time Measurement2)Development of Standard Routines3)Selection of Runtime Environments4)Time Stamping & Utilization of Inbuilt Counters5)Application Oriented Programs6)Data Types Oriented Programs7)How to Test Other Programs with this BenchmarkRoutines1)Siemens Energy & Automation, Inc2)Rockwell Automation - Allen BradleyThe standard routines based on data types as well as specificapplication oriented programs can be written in standard softwareused for writing an application program for an industrial project.These programs run in real industry controllers in a similar manner asin a runtime environment usually known as simulators.i. Criteria for selection of runtime environmentThe first reason for the choice of runtime environment wasbrought in based on the cost associated with real controllers. Thisresearch was not funded by any company or benchmarking145

2013 International Conference on Open Source Systems and Technologies (ICOSST)organization. Therefore, investment in developing and testing thebenchmark would be huge and is out of range of researcher, scope ofthis research. The second reason for choosing runtime environmentswas to provide the guideline for assessing the controller's efficiencyand behavior in runtime environments before procuring the realcontroller for a specific project and to avoid the wrong selection. Thethird reason for selection of aforementioned runtime environmentswas the install base of VENDORS. Siemens controllers have wideinstall base in Europe whereas Allen Bradley has a wide install basein North America.A. RSLogix 5000 – Rockwell Automation (Allen Bradley)Rockwell Automation is a North American leadingProgrammable Logic/Automation Controller brand [6]. A briefreview of its introduction will lead us to understand the definition oftags, organization and data type of tags, scope, and etc.B. RS Logix Emulate 5000 Runtime Environment EmulatorRSLogix5000 Emulator from SoftLogix5800 controller'sfamily was selected. In this runtime environment we haveconfigured required CPU and RSLinx for communication with I/Omodules. The most important point here to remember is that yoursemulator configuration shall be in a similar way as the programconfiguration in RSLogix5000 configuration and programmingenvironment.D. Application Oriented BenchmarksApplication oriented benchmarks means specific to a process of aplant or a control loop in the control process. These programs can bedistributable over Digital I/O processing, Sequential processingsimilar to Petri nets as aforementioned, Motion control processingthat is related to axes of motor motion, Data processing that is relatedto storage of data and feedback loop control application processingwhich is related to PID control one of the major function is to detectdeviation and react on it as per pre decided control parameters.However, for simplicity, to avoid unnecessary complexity andconsidering the market understanding, the application orientedprograms split into the two types of application benchmarks viz.digital I/O processing and Analog I/O Processing.1.Introduction to RSLogix Emulate 5000 The below Figure 3 presents a snapshot of emulator to give you afeel that how it looks alike after configuring as per our requirementsspecific to a project.E. Time stamping & utilization of inbuilt countersSystem in built counters are used to control the number ofiterations up to 10,000 (ten thousands) times and system inbuiltcommands are used to retrieve the internal system data in microseconds resolution.The following types of time stamping are being used:1)Max Scan Time (micro seconds)2)Last or Min Scan Time (micro seconds)F. How to test other programs with this benchmark routinesThe basic benchmark is developed by keeping in view thevarying demands of loads. However, due non uniformity of syntaxamong various programming languages supplied by VENDOR tocode the controllers integrated development environment it is notpossible to build a single standard routine for all the users. Therefore,separate standard routines have been developed for each VENDOR'Ssystem under test.V.Fig. 3. RSLogix 5000 EmulatorC. Simatic S7 Manager - SiemensSimatic S7 is a EuropeanLogic/Automation Controller brand [7].leadingProgrammableDEVELOPMENT OF STANDARD APPLICATIONPROGRAMSAfter selection of two world's renown brands runtimeenvironments, the most critical tasks was to develop the standardroutines that can be executed as benchmarks on these runtimeenvironment controllers. The succeeding section will describe aboutthe runtime environment and the development of standard routines.The following standard routines were considered:1)Processing of Digital I/Os2)Processing of Analog I/Os3)Processing of Variable Analog and Fix Digital No.s of I/Os4)Processing of Variable Digital and Fix Analog No.s of I/OsFig. 4. S7-PLCSIM for Simatic Step7 Simulation146

2013 International Conference on Open Source Systems and Technologies (ICOSST)D. S7-PLCSim (Simatic S7 ) Runtime Environment – SimulatorIn reference to manual S7-PLCSIM [8] see Figure 4 enables us torun and test our STEP 7 program on a simulated programmable logiccontroller and also known as the runtime environment. Thesimulation executes on our computer or programming device.Because the simulation exists completely within the STEP 7software, we do not need to be connected to any S7 hardware (CPUor I/O modules). We can use S7-PLCSIM to simulate STEP 7programs that were developed for S7-300, S7-400, and WinACcontrollers.B. Analog I/Os Processing’sThe second standard routines are based on the processing ofanalog I/Os. Analog I/Os are selectable in the form of steps as shownon the vertical axis of the chart with incremental steps. Initially theresolution of selection steps is kept at fifty (50) I/Os, later steps arecovered with an increment of one hundred (100) I/Os see Figure 6.These operations are being executed 10,000 times on a controller’sruntime environment with varying loads to assess the response timewhich depicted charts here as under.S7-PLCSIM provides a simple interface to the STEP 7 programfor monitoring and modifying different objects such as input andoutput variables. We can also use the various applications of theSTEP 7 software while we are running our program on the simulatedPLC. This allows us to use such tools as the variable table (VAT) tomonitor and modify variables [8]VI.RESULT OF BENCHMAKRING STUDIESThis section explains the empirical results between the twoselected vendor’s controllers efficiencies against each standardroutine execution.A. Digital I/Os Processing’s in terms of AND OperationsOne of the standard routines is based on the processing of digitalI/Os in AND operations. Digital I/Os are selectable in the form ofsteps as shown on the vertical axis of the chart with incremental steps.Initially the resolution of selection steps are kept at twenty five (25)I/Os and after one step it is being increased to fifty (50) I/Os, latersteps are covered with an increment of one hundred (100) I/Os seeFigure 5.Fig. 6. Empirical Comparison of Analog I/Os Processing (Bar Chart)C. Variable Analog and Fix Digital No.s of I/O Processing'sThe third type of standard routines are based on the processing ofanalog I/Os while keeping digital number of I/Os in fixed proportion.In the first step fifty (50) digital I/Os kept fix and analog I/Os areselectable in the form of steps as shown on the vertical axis of thechart with incremental steps. Initially the resolution of selection stepswas kept at fifty (50) I/Os, later steps are covered with an incrementof one hundred (100) I/Os see Figure 7. These operations are beingexecuted 10,000 times on a controller's runtime environment withvarying loads to assess the response time which depicted charts hereas under.These operations are being executed 10,000 times on acontroller’s runtime environment with varying loads to assess theresponse time which depicted charts here as under.Fig. 5. Empirical Comparison of Digital I/Os Processing in AND Operation (Bar Chart)Maximum and Minimum time spent to execute these operationsis being captured and result are drawn to determine the conclusion forthe selection of the better controllers in terms of performance.Fig. 7. Empirical Comparison of Variable Analog and Fix Digital No.s of I/OsProcessing (Bar Chart)}147

2013 International Conference on Open Source Systems and Technologies (ICOSST)which refer to many other results that can also be considered forfurther detail work. However, for this work we have considered fourscenarios suited to our research work.D. Variable Digital and Fix Analog No.s of I/Os Processing'sThe fourth type of standard routines are based on the processingof digital I/Os while keeping analog number of I/Os in fixedproportion. In the first step fifty (50) were kept fix and digital I/Os areselectable in the form of steps as shown on the vertical axis of thechart with incremental steps. Initially the resolution of selection stepsis kept at fifty (50) I/Os, later steps are covered with an increment ofone hundred (100) I/Os see Figure 8. These operations are beingexecuted 10,000 times on a controllers runtime environments withvarying loads to assess the response time which depicted charts hereas under.VII. CONCLUSIONSThis work lays out the basic outline of the test procedure forcomparing various PLC and PAC, performance, whose research canbe further, expanded to benefits the industry. The intended end usermay develop its own programs based on this methodology and canbenefit from it by the selection of right controller for the rightapplication. Benchmarks; highlight cost effectiveness andperformance comparative statements between the widely usedPLC/PAC in industry with the help of case studies.Of course, after having quotation from various vendors theanalysis of cost can be done at that point of time in hand with specificproblem. It is highly recommended to utilize this methodology forend user benefits in relation to relevant application rather thanpointing out inefficiencies of different vendors Because the time scanmeasurement is not only the criteria that should alone be focused butthere other KPIs as mentioned in Section VI as performance has to betraded off to get higher edge on other iceberg.Although, this paper covers almost all of the items that arerequired to benchmark the controllers but complex application likePID controls, cascade controls and communication overhead innetwork can be a good point to start further research in the samedomainFig. 8. Empirical Comparison of Variable Digital and Fix Analog No.s of I/OsProcessing (Bar Chart)REFERENCESE. Other KPIs (Key Performance Indicators) [9]1. The logic control includes the performance/processingspeed. The scalability of the system and the system widediagnostics. The availability of multiple programminglanguages, reusability of code etc.[1][2]Other performance factors include the motion control, theflexible architecture of the system, its process control.[3]F. Comparison of results with state-of-art research workBefore moving towards any conclusion, we would like to drawreader's attention that the sole purpose of this research is to lay downthe guideline and present an approach to cost effective automationcontrollers' selection for industry rather than any evaluation ofvendors. This research may leave some crucial information at thevendors part. However, a deep and thorough work effort was done inconcluding this research. The end user may use this information tobuild its own standard routine to get the idea how fit the controller isfor its application. Referring to paper by PLC Open organization [5],[4]2.[5][6][7][8][9]148E. M. Clarke and R. P. Kurshan, “Computer-aided verification,”Spectrum, IEEE, vol. 33, no. 6, pp. 61–67, 1996.K. H. John and M. Tiegelkamp, IEC 61131-3: programming industrialautomation systems: concepts and programming languages,requirements for programming systems, decision-making aids. Springer,2010.C. Sunder, A. Zoitl, H. Rofner, T. Strasser, and J. Brunnenkreef,“Benchmarking of IEC 61499 runtime environments,” in EmergingTechnologies and Factory Automation, 2007. ETFA. IEEE Conferenceon, pp. 474–481, IEEE, 2007.T. Bendell, L. Boulter, and J. Kelly, “Benchmarking for competitiveadvantage,” London: Financial Times/Pitman Publishing, vol. 1, 1993.Technical Paper PLC Open Technical Committee 3. PLCopen.org, 2006.Logix5000TMControllers Common Procedure - Programming Manual.June 2005.Siemens Working with STEP 7, Postfach 4848, 90327 Nuremberg.PLCopen.org, 2006.Simatic S7-PLCSIM V5.4, 08 ed., Postfach 4848, D-90327 Nuernberg.PLCopen.org, 2007.“CPU dme1st.html,” 2009.

2013 International Conference on Open Source Systems and Technologies (ICOSST) 978-1-4799-2046-4/13/ 31.00 2013 IEEE 143 Benchmarking Industrial PLC & PAC an approach to cost effective industrial automation Shafqat Iqbal, Saad Ahmad Khan and Zubair Ahmad Khan Department of Electrical Engineering, University of Engineering & Technology