Università di Genova Facoltà di Ingegneria Genova 28 settembre 2007 A benchmark for SoftPLC Technology in Windows Environment Valerio Malerba Università

Slides:



Advertisements
Similar presentations
CMSC 611: Advanced Computer Architecture Performance Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted.
Advertisements

OPERATING SYSTEM An operating system is a group of computer programs that coordinates all the activities among computer hardware devices. It is the first.
Unit 7 Discrete Controllers
An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite.
Programming Languages Marjan Sirjani 2 2. Language Design Issues Design to Run efficiently : early languages Easy to write correctly : new languages.
Chapter 1 - An Introduction to Computers and Problem Solving
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 19 Scheduling IV.
Ladder Logic PLC Programs are made up of combinations of AND; OR; NAND; NOR; and other gates, along with timers, inputs, outputs, counters, comparators,
1 The University of Jordan Mechatronics Engineering Department PLC: Programmable Logical Controller.
Computer Organization. This module surveys the physical resources of a computer system. –Basic components CPUMemoryBus I/O devices –CPU structure Registers.
1 Lecture 11: Digital Design Today’s topics:  Evaluating a system  Intro to boolean functions.
Copyright © 1998 Wanda Kunkle Computer Organization 1 Chapter 2.1 Introduction.
Programmable Logic Controller
PLC: Programmable Logical Controller
CMSC 611: Advanced Computer Architecture Performance Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted.
Unit 3b Industrial Control Systems
Hall C’s HMS PLC Controls by Steven Lassiter. What Constituents a PLC System PLC (processors) Programming. I/O modules. Field Device Signals (sometimes.
Computer Organization Computer Organization & Assembly Language: Module 2.
Chapter 10 PLC Processors.
PLC introduction1 Discrete Event Control Concept Representation DEC controller design DEC controller implementation.
PLC: Programmable Logical Controller
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
Programmable Logic Controller (PLC)
The Beauty and Joy of Computing Lecture #3 : Creativity & Abstraction UC Berkeley EECS Lecturer Gerald Friedland.
Memory Layout and SLC500 System Addresses. Processor Memory Division An SLC 500 processor's memory is divided into two storage areas. Like two drawers.
©2008 Pearson Education, Inc., Upper Saddle River, NJ. All rights reserved. This material is protected under all copyright laws as they currently exist.
Henri Kujala Integration of programmable logic into a network front-end of a telecontrol system Supervisor: Professor Patric Östergård Instructor: Jouni.
10/19/2015Erkay Savas1 Performance Computer Architecture – CS401 Erkay Savas Sabanci University.
Problem Solving Techniques. Compiler n Is a computer program whose purpose is to take a description of a desired program coded in a programming language.
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
Chapter 2 Basic Principle of PLC PLC Configuration &Function   Basic Configuration  CPU  Memory  Programming Interface  Communication.
Introduction to PLC by Dr. Amin Danial Asham.
PLC ARCHITECTURE – Memory 1 by Dr. Amin Danial Asham.
Programmable Logic Controller (PLC)
PLC PROGRAMMING.
Lecture 2a: Performance Measurement. Goals of Performance Analysis The goal of performance analysis is to provide quantitative information about the performance.
PLC ARCHITECTURE – Memory 2 by Dr. Amin Danial Asham.
Group 1 chapter 3 Alex Francisco Mario Palomino Mohammed Ur-Rehman Maria Lopez.
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
PROGRAMMABLE LOGIC CONTROLLER
SEMINAR ON P.L.C. SUBMITTED BY HRIDAY MUKHERJEE AMIT DEBNATH SOMNATH SHIL
Programmable Logic Controller
Programmable Automation Programming of logical controllers.
Chapter 5.
Seminar on "PLC” (Programmable Logic Controller)
CLOSED LOOP SPEED CONTROL OF DC MOTOR WITH PWM TECHNIQUE
Coupling and Cohesion Pfleeger, S., Software Engineering Theory and Practice. Prentice Hall, 2001.
Additional Examples CSE420/598, Fall 2008.
Digital Control CSE 421.
Programmable Logic Controllers
Basic Computer Organization and Design
Computer Organization and Architecture + Networks
PLC Terminology and Application
Defining Performance Which airplane has the best performance?
SOFTWARE DESIGN AND ARCHITECTURE
PLC: Programmable Logical Controller
Programmable control systems
Chapter 3 Top Level View of Computer Function and Interconnection
A Framework for Automatic Resource and Accuracy Management in A Cloud Environment Smita Vijayakumar.
Programmable Logic Controllers (PLCs) An Overview.
Programming Languages
CMSC 611: Advanced Computer Architecture
Plc & scada applications
ARM ORGANISATION.
Computer System Overview
CMSC 611: Advanced Computer Architecture
Measurements & Error Analysis
Presentation transcript:

Università di Genova Facoltà di Ingegneria Genova 28 settembre 2007 A benchmark for SoftPLC Technology in Windows Environment Valerio Malerba Università degli Studi Genova Facoltà di Ingegneria Chiar.mo Prof. Ing. Paolo Pinceti Dott. Ing. Micaela Caserza Magro

Università di Genova Facoltà di Ingegneria Whats a benchmark Genova 28 settembre 2007 A benchmark is a sequence of operations allowing to obtain a performance assessment of a system. A program which evaluates the capability of a computer to perform additions by counting the number of operations executed in a while.

Università di Genova Facoltà di Ingegneria Benchmark: requirements Genova 28 settembre 2007 A good benchmark satisfies the following requirements: Linearity Reliability Repeatability Easiness Independence

Università di Genova Facoltà di Ingegneria A matter of measure Genova 28 settembre 2007 A benchmark performs a measure. For a measure the following parameters are important: Accuracy Precision Resolution

Università di Genova Facoltà di Ingegneria PLC (1) Genova 28 settembre 2007 PLC (Programmable Logic Controller): is an industrial computer that runs periodically three phases aiming to control a manufacturing process. Read input: the PLC reads the incoming variables from the system, such as levels, pressures and temperatures. Elaboration: the PLC elaborates, following a program, the input and produces a new series of values or actions. Update output: the PLC updates its output variables.

Università di Genova Facoltà di Ingegneria PLC (2) Genova 28 settembre 2007 The PLC is a machine substantially… HARD REAL TIME

Università di Genova Facoltà di Ingegneria SoftPLC Genova 28 settembre 2007 A SoftPLC is instead a PLC completely made via the use of a common personal computer. Despite of a traditional PLC, it offers some advantages: Higher intergrability. Possibility to write more complex programs. Lower cost.

Università di Genova Facoltà di Ingegneria PLC and SoftPLC: languages Genova 28 settembre 2007 PLC programs follow a standard, IEC , which defines 5 languages: Instruction List Function Block Structured Text Ladder Sequential Flow Chart

Università di Genova Facoltà di Ingegneria PLC and SoftPLC: difference Genova 28 settembre 2007 The behaviour of a SoftPLC deeply depends by the operating system on which it runs: if the operating system is not a real-time one (e.g. Windows XP), the SoftPLC isnt either… HARD REAL TIME

Università di Genova Facoltà di Ingegneria Purpose of the benchmark Genova 28 settembre 2007 The goal of the benchmark is hence to assess the SoftPLC perfomances under the point of view of regularity of working. A second important purpose is to provide a tool to be used during the projecting phase of an industrial plant.

Università di Genova Facoltà di Ingegneria Used applications Genova 28 settembre 2007 These a re the main applications used during the realization and use of the benchmark; Infoteam OpenPCS 2006Infoteam SmartPLC/OPC

Università di Genova Facoltà di Ingegneria Used applications Genova 28 settembre 2007 ClientOPC These a re the main applications used during the realization and use of the benchmark;

Università di Genova Facoltà di Ingegneria OPC Genova 28 settembre 2007 OPC (OLE for Process Control): is a series of standards based on Microsoft DCOM regarding the communication among devices in an industrial network (sensors, PLCs, etc.). OPC

Università di Genova Facoltà di Ingegneria The network Genova 28 settembre 2007 Complessively, the network which is affected by the benchmark is the following:

Università di Genova Facoltà di Ingegneria The benchmark (1) Genova 28 settembre 2007 The main component of the benchmark is a SoftPLC program that measures its own times, allowing to get information about the overall performances. The language chosen for this duty is Instruction List. The reason is due to its low level programming and therefore its speed and lightness.

Università di Genova Facoltà di Ingegneria The benchmark (2) Genova 28 settembre 2007 The program which gets the measure can be represented with a finite state machine:

Università di Genova Facoltà di Ingegneria Clock resolution Genova 28 settembre 2007 The GETTIME function implemented by OpenPCS to detect the times strictly depends by the so-called Windows clock interval.

Università di Genova Facoltà di Ingegneria The time packet Genova 28 settembre 2007 The time value is recorded inside a 32 bit variable with a resolution of 1ms.This supplies an overmuch range, which can be optimized by transforming the 32 bit variable into a true packet with three decimal fields. Number of cycles: its the number of the current cycle. Empty field: its a value that is kept at zero in order to improve the readability. Time value: is the time elapsed since the program was launched.

Università di Genova Facoltà di Ingegneria Experiments Genova 28 settembre 2007 During this thesis numberous tests have been conducted, under different conditions. Considered interesting for study are the cases with different processor occupation levels. Furthermore, being each element in the network a Windows process, various combinations of priority have been considered. In order to generate the occupation levels of the processor, a small software has been developed, called CPU Waster.

Università di Genova Facoltà di Ingegneria Metrics Genova 28 settembre 2007 These are the used metrics to evaluate the performances of the network: Mean period: is the average duration of a SoftPLC cycle. Minimum and maximum: minimum and maximum duration of a PLC cycle; in particular, the maximum provides the worst case. Variance: is the variance of a SoftPLC cycle. Lost cycles: is the percentage of cycles which arent arrived to the OPC client. SoftPLC Server OPC

Università di Genova Facoltà di Ingegneria Results (1) Several preliminar tests have been made to measure the CPU occupation of each process involved in the network. The most interesting case is the OPC client: Server OPC with low priority Server OPC with high priority

Università di Genova Facoltà di Ingegneria Results (2) The percentage of cycles lost by the OPC server increases with the the load but only when its priority is lower or equal to the other processes ones: Server OPC with high priority Server OPC with low priority

Università di Genova Facoltà di Ingegneria Results (3) The mean duration of a PLC cycle is almost constant with any load but changes a little depending by the combination of priorities: SoftPLC con high priority

Università di Genova Facoltà di Ingegneria Results – Timer mode

Università di Genova Facoltà di Ingegneria Results – Other macchines Worthly of mentions are some properties due to different clock intervals on other machines:

Università di Genova Facoltà di Ingegneria Conclusions and future developments (1) The tests made show that, under proper conditions, the SoftPLC can satisfy the requests of a control system. Multi-core architecture Higher number of OPC clients Altered update rate for the OPC server Routine that weighs down the SoftPLC code Adaptation of the benchmark to other platforms, different from OpenPCS

Università di Genova Facoltà di Ingegneria Conclusions and future developments (2) The benchmark can be extended to evaluate the performances of other elements in the network:

Università di Genova Facoltà di Ingegneria THANK YOU!