ETRI ET BASED ESIGN AND NALYSIS OF OGIC ONTROLLERS Georg Frey



Similar documents
Industrial Process Automation (Exercise)

An educational software project in the field of process control. Michael Ritzschke Institute of Informatics Humboldt University Berlin

Unit I. Introduction

Safety verification of software using structured Petri nets

Using reverse circuit execution for efficient parallel simulation of logic circuits

Extracting Performance Metrics from NetFlow in Enterprise Networks

Programma della seconda parte del corso

6.852: Distributed Algorithms Fall, Class 2

Random vs. Structure-Based Testing of Answer-Set Programs: An Experimental Comparison

The Challenger-Solver game: Variations on the theme of P =?NP

System modeling. Budapest University of Technology and Economics Department of Measurement and Information Systems

Software Engineering Techniques

PETRI NET BASED SUPERVISORY CONTROL OF FLEXIBLE BATCH PLANTS. G. Mušič and D. Matko

Safety Requirements Specification Guideline

ELECTROTECHNIQUE IEC INTERNATIONALE INTERNATIONAL ELECTROTECHNICAL

Five Essential Components for Highly Reliable Data Centers

About the NeuroFuzzy Module of the FuzzyTECH5.5 Software

Machine Learning over Big Data


Diagram Models in Continuous Business Process Improvement

Automazione Industriale 3 - I linguaggi di programmazione.

MODELING AND ANALYZING OF A CONSTRUCTION PROJECT CONSIDERING RESOURCE ALLOCATION THROUGH A HYBRID METHODOLOGY: PETRI NETS AND FUZZY RULE BASED SYSTEMS


CSCW and Software Engineering Dr.-Ing. Stefan Werner

CONTINUOUS DYNAMIC ABSTRACTION FOR RELIABILITY AND SAFETY ANALYSIS OF HYBRID SYSTEMS. Nabil SADOU* Hamid DEMMOU* Jean-Claude PASCAL* Robert VALETTE*

1: B asic S imu lati on Modeling

Overview of major concepts in the service oriented extended OeBTO

A Test Case Generator for the Validation of High-Level Petri Nets

Simulation and Risk Analysis

T Reactive Systems: Introduction and Finite State Automata

Springer SUPPLY CHAIN CONFIGURATION CONCEPTS, SOLUTIONS, AND APPLICATIONS. Cham Chandra University of Michigan - Dearborn Dearborn, Michigan, USA

On evaluating performance of exploration strategies for an autonomous mobile robot

Flexible manufacturing process planning based on the multi-agent technology

Statically Checking API Protocol Conformance with Mined Multi-Object Specifications Companion Report

The Model Checker SPIN

DEPENDABILITY STUDY OF THE ERP SYSTEM

PROGRAMMABLE LOGIC CONTROLLERS Unit code: A/601/1625 QCF level: 4 Credit value: 15 OUTCOME 3 PART 1

SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT

Technology to Control Hybrid Computer Systems

Infrastructure Components: Hub & Repeater. Network Infrastructure. Switch: Realization. Infrastructure Components: Switch

Avoid a single point of failure by replicating the server Increase scalability by sharing the load among replicas

1. What are Data Structures? Introduction to Data Structures. 2. What will we Study? CITS2200 Data Structures and Algorithms

How To Understand A Self-Adapting Recovery Net (Sarn)

Google Analytics Integration

Carl R. Haske, Ph.D., STATPROBE, Inc., Ann Arbor, MI

BPMN A Logical Model and Property Analysis. Antoni Ligęza

TRY OUR SOFTWARE TAKE IT FOR A TEST DRIVE PRODUCT CATALOG 2015

Interface Design Rules

BIS 3106: Business Process Management. Lecture Two: Modelling the Control-flow Perspective

Service Placement in Network-aware Cloud Infrastructures

Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti

CS Matters in Maryland CS Principles Course

Modelling Workflow with Petri Nets. CA4 BPM PetriNets

LECTURE 1. SYSTEMS DEVELOPMENT

Application of Petri Nets to Evaluation of Grid Applications Efficiency

An Integrated Modeling Approach for Analyzing Dependability, Cost and Sustainability of IT Data Center Systems

How To Improve Software Quality

The Association of System Performance Professionals

SQMB '11 Automated Model Quality Rating of Embedded Systems

Memory Elements. Combinational logic cannot remember

BUSINESS RULES CONCEPTS... 2 BUSINESS RULE ENGINE ARCHITECTURE By using the RETE Algorithm Benefits of RETE Algorithm...

Safety & Security. Software Technologies. Software Technologies. Software Technologies. Safety & Security Standards

Building well-balanced CDN 1

Simulating Insurance Portfolios using Cloud Computing

Model-based Technology of Automated Performance Testing

Modeling Agile Manufacturing Cell using Object-Oriented Timed Petri net

Evolutionary Approach to Coverage Testing of IEC Function Block Applications

How To Improve Availability In Local Disaster Recovery

Supply chain maturity study Comparator report HSCNI

EasyC. Programming Tips

CHAPTER 11 REQUIREMENTS

WHITEPAPER. Managing Design Changes in Enterprise SBM Installations

Business Process and Regulations Compliance Management Technology

PV module safety qualification according to IEC 61730:2004 EN 61730:2007

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

Requirements Definition and Management Processes

A Programme Implementation of Several Inventory Control Algorithms

TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.

GOAL-BASED INTELLIGENT AGENTS

Expert in Disaster Recovery Scenarios. 1. Introduction. Michel Verheijen and Marcel E.M. Spruit

Architectural Patterns. Layers: Pattern. Architectural Pattern Examples. Layer 3. Component 3.1. Layer 2. Component 2.1 Component 2.2.

Programmable Logic Controller PLC

RULE BASED EXPERT SYSTEM FOR SELECTING SOFTWARE DEVELOPMENT METHODOLOGY

Formal Modeling Approach for Supply Chain Event Management

Keywords Software Engineering, Software cost, Universal models. Agile model, feature of software projects.

A Petri Net Model for Hardware/Software Codesign

Combinational Logic Design Process

[EN-024]Clustering radar tracks to evaluate efficiency indicators

Software Quality Assurance Plan

Operating Systems for Parallel Processing Assistent Lecturer Alecu Felician Economic Informatics Department Academy of Economic Studies Bucharest

TESTING JAVA MONITORS BY STATE SPACE EXPLORATION MONICA HERNANDEZ. Presented to the Faculty of the Graduate School of

CONTROL SYSTEM HiCOS. 12.1/1 HiCOS

Patterns for Business Object Model Integration in Process-Driven and Service-Oriented Architectures

Back Propagation Neural Networks User Manual

RTAP Database Lifecycle Management

Diagonalization. Ahto Buldas. Lecture 3 of Complexity Theory October 8, Slides based on S.Aurora, B.Barak. Complexity Theory: A Modern Approach.

Know or Go Practical Quest for Reliable Software

BRIDGING THE GAP BETWEEN BUSINESS MODELS AND WORKFLOW SPECIFICATIONS

Functional Decomposition Top-Down Development

Point of Departure: Pnueli & Shalev s 1991 paper What s in a Step: On the semantics of Statecharts

Transcription:

ETRI ET BASED ESIGN AND NALYSIS OF OGIC ONTROLLERS Georg Frey NSF Workshop on Logic Control for Manufacturing University of Michigan, Ann Arbor, MI, June 26-27, 2000 Outline Motivation / Viewpoint Signal Interpreted Petri Net (SIPN) Correctness Analysis Transparency Analysis Implementation Prof. Dr.-Ing. habil. Lothar Litz

OTIVATION Background: Challenges in industrial Controller Design High Complexity Reuse and Modification of Software More or less unique specification for each controller Objective: Application of formal Methods Transparency and Intuition Use of Control Theory and Software Engineering Concepts Limit: Formal Area In this game we re playing, we can t win. Some kinds of failure are better than other kinds, that's all George Orwell, 1984 2 of 20

ARYING IEWS AND OMBINED IEW Control Theory SIPN as formalization of the informal problem description Question: Is the formal specification complete and consistent Implementational aspects are of interest (IEC 1131-3) Software Engineering SIPN Control Algorithm as Application Software (ANSI/IEEE 610) Question: Software Quality (ISO/IEC 9126) Implementational aspects are of minor interest Control Theory + Software Engineering SIPN as formal problem description AND as application software Question: Completeness, Consistency, AND Quality (Transparency) Implementational aspects are of interest (IEC 1131-3) Pre-Condition: Implemented Software follows Formal Specification exactly 3 of 20

IMIT Formal Analysis can NEVER answer the question of SENSE Analogy: Word-processor Text with Typos Incorrect SIPN Idea of Prof. Informal Specification Word-processor SIPN-Editor Text SIPN Spell-Check Correctness Analysis Correctly Spelled Text Formally Correct SIPN The same? Task performed by Assistant Controlled Process Assistant reads Text Code-Generation Correctly Spelled Text + Readability Measure Formally Correct SIPN + Transparancy Measure Style-Check Transparency Analysis 4 of 20

ASED ONTROL LGORITHMS Signal Interpreted Petri Net (SIPN) [Frey and Litz] P 5 : Stirring ω(p 5 ): o 3 = 1 P 1 : Stand By ω(p 1 ) = (0, 0, 0, 0) T 1 : Start Button pressed ϕ(t 1 ) = i 4 i 1 i 2 P 2 : Filling ω(p 2 ) = (1, 0, -, 0) Functions of Input Signal at Transitions Output Signals at Places Forced firing Synchronous firing Iterative firing T 5 : Filled & Temp. OK ϕ(t 5 ) = i 2 i 3 T 2 :Filled & Temp. low ϕ(t 2 ) = i 2 i 3 P 3 : Heating ω(p 3 ) = (0, 0, -, 1) T 3 : Filled & Temp. OK ϕ(t 3 ) = i 3 P 4 : Emptying ω(p 4 ) = (0, 1, -, 0) T 4 : Tank is empty ϕ(t 4 ) = i 1 i 2 i 4 5 of 20

YNAMIC YNCHRONIZATION Definition Two transitions t 1 and t 2 form a dynamic synchronization if the firing of t 1 implies the simultaneous firing of t 2. Classification Full (always synchronized) Partial (synchronized under special constraints) Validity of PN Analysis for SIPN under full DS Safety of the underlying PN is sufficient for the safety of the SIPN but not necessary. Liveness of the underlying PN is necessary but not sufficient for the liveness of the SIPN. Reversibility is neither necessary nor sufficient. 6 of 20

XAMPLE : AFETY & EVERSIBILITY a) SIPN b) RG PN c) RG SIPN ϖ(p 1 )= (0, 1) ϕ(t 1 ) = i 1 i 2 m 0 = (1,0,0,0) t 1 t 4 m 3 = (0,0,1,0) t 4 : i 2 = 0 m 0 = (1,0,0,0) m 3 = (0,0,1,0) Ω = (0, 1) Ω = (1, 0) t 1 t 3 : i 1 i 2 = 1 ϖ(p 2 )=(-, 0) m 1 = (0,1,1,0) t 3 ϕ(t 2 ) = i 1 t 2 ϖ(p 3 )=(1, -) m 2 = (0,0,2,0) ϕ(t 3 ) = i 1 ϕ(t 4 ) = i 2 ϖ(p 4 )=(1, 0) PN is not safe SIPN is (not sufficient) PN is not reversible SIPN is (not necessary) Both are not live 7 of 20

XAMPLE : IVENESS & EVERSIBILITY a) SIPN ϖ(p 1 )= (0) b) RG PN c) RG SIPN ϕ(t 1 ) = i 1 m 0 = (1,0,0,0,0) t 6 m 0 = (1,0,0,0,0) Ω = (0) ϖ(p 2 )=(0) t 1 m 4 = (0,0,0,0,1) t 1 : i 1 = 1 t 6 t 1 : i 1 = 1 ϕ(t 2 ) = i 1 i 2 ϖ(p 3 )=(1) m 1 = (0,1,0,0,0) t 2 m 1 = (0,1,0,0,0) Ω = (0) t 2 t 5 : i 1 i 2 = 1 m 4 = (0,0,0,0,1) Ω = (1) ϕ(t 3 ) = i 3 m 2 = (0,0,1,0,0) t 5 ϕ(t 5 ) = i 1 t 3 ϖ(p 4 )=(0) ϕ(t 4 ) = i 2 ϖ(p 5 )=(1) ϕ(t 6 ) = i 1 m 3 = (0,0,0,1,0) t 4 PN is live SIPN not (not sufficient) PN is reversible SIPN not (not sufficient) 8 of 20

RITERIA FOR ORRECTNESS Unambiguity Every control algorithm has to be defined unambiguously. This criterion can be subdivided into four sub-criteria: Determinism Termination Defined output Unambiguous output Liveness When a transition or a set of transitions is not live then part of the control algorithm doesn t work anymore. Reversibility Reversibility guarantees that the described controller reaches its initial state again. 9 of 20

RITERION ETERMINISM Determinism: A control algorithm has to be deterministic. If it was not, its behavior in a given situation would depend on implementational aspects. The algorithm is deterministic if the firing conditions at every branching in RG SIPN are disjoint. SIPN ω(p 0 )=(1,0,0) RG SIPN t 3 : i 1 i 2 m 0 =(1,0,0) Ω = (1,0,0) t 4 : i 1 i 2 φ(t 1 ) = i 1 φ(t 2 ) = i 1 ω(p 2 )=(1,0,1) ω(p 3 )=(0,1,1) φ(t 3 ) = i 1 i 2 φ(t 4 ) = i 1 i 2 t 1 : i 1 m 1 =(0,1,0) Ω = (1,0,1) t 2 : i 1 m 2 =(0,0,1) Ω = (0,1,1) 10 of 20

RITERION ERMINATION Termination: In a cycle of a logic control algorithm, at least one marking must be stable. A cycle without stable marking leads to an algorithm that does not terminate. The algorithm terminates if there is no self-loop at any state in RG SIPN. SIPN ω(p 1 )=(1,0,1) φ(t 1 ) = i 1 ω(p 2 )=(0,1,1) RG SIPN m 0 =(1,0) Ω = (1,0,1) t 1 t 2 : i 1 φ(t 2 ) = i 1 11 of 20

RITERION UTPUT Defined and unambiguous output: There has to be a specification for the value of every output signal at every reachable marking. If two places marked at the same time assign different values to an output signal, a contradictory output setting results. Undefined and contradictory outputs can be directly read from the output functions in RG SIPN. RG SIPN SIPN ω(p 1 )= (0,0,1) m 0 =(1,0,0) Ω = (0,0,1) φ(t 1 ) = i 1 t 1 : i 1 t 2 : i 1 ω(p 2 )=(0,0,-) ω(p 3 )=(1,0,-) φ(t 2 ) = i 1 m 1 =(0,1,1) Ω = (c,0,-) 12 of 20

HAT IS RANSPARENCY Definition of Transparency [Frey and Litz SMC99]: At any time it must be easy and clear to see what the controller does in the moment and what it will do in the next step. At any time there must be the possibility to reinterpret the algorithm. This means the aim of the control algorithm must be recognizable. Kind of criteria we seek (Lord Kelvin): When you can measure what you are speaking about and express it in numbers, you know something about it, but when you cannot measure it when you cannot express it in numbers, your knowledge is of a meager and unsatisfactory kind. 13 of 20

RANSPARENCY RITERIA OF Comments There should be a comment at every place and at every transition. No trivial Input Defined input signals should influence the controller. Directionality The control flow should follow one preferred direction. No redundant Output There is redundant information if several activated places set an output signal to the same value. This hinders understanding. 14 of 20

t 2 φ(t 2 ) = i 2 RANSPARENCY: XAMPLE Transparency = 1.00 (optimal) Transparency = 0.26 (worst case is 0) Net2 t 4 : φ(t 4 ) = i 1 i 4 Net1 P 5 : Stirring ω(p 5 ): o 3 = 1 T 5 : Filled & Temp. OK ϕ(t 5 ) = i 2 i 3 p 1 : Stand By ω(p 1 ) = (0, 0, 0, 0) T 1 : Start Button pressed ϕ(t 1 ) = i 4 i 1 i 2 P 2 : Filling ω(p 2 ) = (1, 0, -, 0) T 2 :Filled & Temp. low ϕ(t 2 ) = i 2 i 3 P 3 : Heating ω(p 3 ) = (0, 0, -, 1) T 3 : Filled & Temp. OK ϕ(t 3 ) = i 3 p 8 ω(p 8 ) = (0,-,-,-,0,1) t 3 φ(t 3 ) = i 3 p 2 ω(p 2 ) = (-,-,1,-,0,1) p 7 ω(p 7 ) = (-,-,1,-,0,1) p 3 : ω(p 3 ) = (-,-,-,-,0,1) p 1 ω(p 1 ) = (0,0,0,0,0,1) t 5 φ(t 5 ) = i 4 i 5 i 6 t 1 φ(t 1 ) = i 4 p 6 ω(p 6 ) = (0,1,1,0,0,1) P 4 : Emptying ω(p 4 ) = (0, 1, -, 0) T 4 : Tank is empty ϕ(t 4 ) = i 1 i 2 i 4 p 4 ω(p 4 ) = (1,0,1,1,0,1) p 5 ω(p 5 ) = (0,0,1,1,0,1) 15 of 20

RANSPARENCY: XAMPLE CONT. RG SIPN t 5 : i 4 i 5 i 6 m 0 = (1,0,1,0,0,0,0,1) Ω = (r 0,0,0,0,r 0,r 1 ) m 0 =(1,0,0,0,0) Ω = (0,0,0,0) m 1 =(0,1,0,0,1) Ω = (1,0,1,0) t 4 : i 1 i 3 i 4 t 1 : i 1 i 2 i 4 t 5 : i 2 i 3 t 2 : i 2 i 3 m 4 =(0,0,0,1,1) Ω = (0,1,1,0) t 3 : i 3 m 2 =(0,0,1,0,1) Ω = (0,0,1,1) m4 = (0,0,2,0,0,0,0,1) (t 1 t 5 ) * : i 2 i 4 (t2 t3) * : i3 i2 (i1 i4) m 1 = (0,1,1,1,0,0,1,0) Ω = (1,0,r 1,0,r 0,r 1 ) t 2 * : i 2 i 3 m 2 = (0,1,1,0,1,0,1,1) Ω = (r 0,0,r 1,1,r 0,r 1 ) (t 2 t 3 t 4 ) * : i 1 i 2 i 3 i 4 t 3 * : i 3 (i 1 i 4 ) t3 t4: i1 i3 i4 t1 t5 t2 t3: i2 i3 i4 m 3 = (0,1,1,0,0,1,1,1) Ω = (r 0,1,r 1,0,r 0,r 1 ) t 4 : i 1 i 4 (t 1 t 5 t 2 ) * : i 2 i 3 i 4 16 of 20

EQUIREMENTS IN ODE- ENERATION Transparency Structure of SIPN has to be visible somehow in PLC code Correctness: Especially correct Representation of Dynamics Concurrency Iteration Efficiency Method of code generation Generated code 17 of 20

RANSPARENCY OF THE IL- Implementation of SIPN token play One Boolean variable for each place ODE Implementation of net elements One-to-one correspondence between SIPN elements and code segments. Example: T1: LD P1 (* T1: if pre-place P1 is marked *) ANDN P2 (* and post-place P2 is not marked *) AND( i3 (* and firing condition is fulfilled*) OR i4 ) R P1 (* then unmark pre-place P1 *) S P2 (* and mark post-place P2 *) P2: LD P2 (* P2: if place P2 is marked *) S O2 (* set O2 *) R O1 (* and reset O1 *) T1 P1 (0,0,0) i3 OR i4 P2 (0,1,-) 18 of 20

ORRECTNESS OF THE IL- Concurrency Iteration No problem if all transition codes are evaluated during one PLC cycle reading input image ODE processing application code cycle time Direct implementation (very inefficient code) Special ordering of transition codes Simulative [Jörns et al.: atp 3/1995] Analytic [Frey: ACC 2000] writing output image reading input image time 19 of 20

ONCLUSIONS AND UTLOOK Conclusions SIPN allows the formal specification of logic controllers SIPN can be implemented on PLC automatically No process model needed for analysis Essential correctness criteria defined Transparency metrics defined All algorithms prototyped in Mathematica Outlook Complexity metric [Frey, Litz and Klöckner, SMC 2000 Nashville] Extension to timed SIPN and to analog I/O-Signals [Frey ADPM2000] Contact: frey@eit.uni-kl.de Papers / Further Info: http://www.eit.uni-kl.de/litz/english/frey.htm 20 of 20