PLCopen ® for efficiency in automation Introduction in IEC 61131-3 Check also the notes coupled to each slide for further explanation.

Slides:



Advertisements
Similar presentations
DETAILED DESIGN, IMPLEMENTATIONA AND TESTING Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Advertisements

Chapter 2 – Software Processes
Ch 3 System Development Environment
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Key-word Driven Automation Framework Shiva Kumar Soumya Dalvi May 25, 2007.
Information Systems Analysis and Design
Traditional Approach to Design
Chapter 10 The Traditional Approach to Design
PLCopen Standardization in Industrial Control Programming PLCopen 1 printed at 6/4/2015 PLCopen P.O. Box 2015, NL 5300 CA Zaltbommel PROGRAMACIÓN DE PLCs.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Essentials of Systems Analysis and Design Fourth Edition Joseph S. Valacich Joey F.
Chapter 1 The Systems Development Environment
Copyright 2002 Prentice-Hall, Inc. Chapter 4 Automated Tools for Systems Development 4.1 Modern Systems Analysis and Design Third Edition.
© Prentice Hall CHAPTER 9 Application Development by Information Systems Professionals.
CHAPTER Programming MIS105 Week-14/ Lec02 Irfan Ahmed Ilyas.
Department of Electrical and Computer Engineering Texas A&M University College Station, TX Abstract 4-Level Elevator Controller Lessons Learned.
Copyright 2002 Prentice-Hall, Inc. Chapter 1 The Systems Development Environment 1.1 Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer.
Lecture 13 Revision IMS Systems Analysis and Design.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter.
Chapter 1 Program Design
Copyright 2006 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Third Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter.
CSC230 Software Design (Engineering)
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall 1.1.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter 1 The Systems.
Continuation From Chapter From Chapter 1
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
PLCopen ® for efficiency in automation PLCopen Motion Control an introduction Check the notes in the notes view.
Managing the development and purchase of information systems (Part 1)
PLCopen ® for efficiency in automation PLCopen and OPC UA a perfect match Eelco van der Wal Managing Director PLCopen.
Copyright 2002 Prentice-Hall, Inc. Chapter 1 The Systems Development Environment 1.1 Modern Systems Analysis and Design.
Welcome at this IEC Tutorial
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 A Discipline of Software Design.
Welcome at the PLCopen presentation
Programmable Logic Controller (PLC)
 AUTOMATION  PLC  SCADA  INSTRUMENTATION  DRIVES & MOTORS.
Chapter 9 Moving to Design
Programming Concepts Chapter 3.
PLCopen for efficiency in automation Page 1 printed at 10/16/ Welcome at the PLCopen presentation.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Architectural Design Yonsei University 2 nd Semester, 2014 Sanghyun Park.
Systems Analysis and Design in a Changing World, Fourth Edition
© ABB University - 1 Revision C E x t e n d e d A u t o m a t i o n S y s t e m x A Chapter 6 Application Structures Course T314.
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
Chapter 2 – Software Processes Lecture 1 Chapter 2 Software Processes1.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Copyright 2002 Prentice-Hall, Inc. Chapter 4 Automated Tools for Systems Development 4.1 Modern Systems Analysis and Design.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Chapter 4 Automated Tools for Systems Development Modern Systems Analysis and Design Third Edition 4.1.
SOFTWARE ENGINEERING. Objectives Have a basic understanding of the origins of Software development, in particular the problems faced in the Software Crisis.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Seminar on "PLC” (Programmable Logic Controller)
C_ITIP211 LECTURER: E.DONDO. Unit 1 : The Systems Development Environment.
Software Testing.
Modern Systems Analysis and Design Third Edition
Software Life Cycle “What happens in the ‘life’ of software”
Modern Systems Analysis and Design Third Edition
Unified Modeling Language
Programmable Logic Controllers (PLCs) An Overview.
Modern Systems Analysis and Design Third Edition
PLCopen and OPC UA a perfect match
Modern Systems Analysis and Design Third Edition
Introduction to Systems Analysis and Design Stefano Moshi Memorial University College System Analysis & Design BIT
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
Ola Ingemansson Electrical & Instrumentation Engineer
Modern Systems Analysis and Design Third Edition
Presentation transcript:

PLCopen ® for efficiency in automation Introduction in IEC Check also the notes coupled to each slide for further explanation

PLCopen ® for efficiency in automation the future is here PLCopen TC1 : Standards links to IEC Harmonizing the way people look to control

PLCopen ® for efficiency in automation Fiction? Imagine *you are in industrial control *working with 4 different brands of controls *using different dialects in their programming languages * struggling to match the level of your software engineers with the operators and maintenance people on the factory floor *& seeing that your competitor does better Why? What’s wrong ?

PLCopen ® for efficiency in automation Out of the jungle The current variety of problems can be vastly reduced via standardization... and such a standard is available

PLCopen ® for efficiency in automation IEC “The best thing that happened to industrial control” Sugar Lantic on Automation Maillist

PLCopen ® for efficiency in automation The 9 parts of the IEC Standard ProjectTitleValid till , Ed 2.0General information, , Ed 3.0Equipment requirements and tests, , Ed 3.0 Programming languages (Currently CDV - Committee Draft for Voting) , Ed 2.0User guidelines (TR), , Ed 1.0Communications, , Ed 1.0Functional safety for PLC (Currently CDV - Committee Draft for Voting) , Ed 1.0Fuzzy control programming, , Ed 2.0Guidelines applic. & implem. progr. languages (TR), , Ed 1.0 Single-drop digital communication interface for small sensors and actuators (SDCI) aka “IO-Link” (Currently CD - Committee Draft)

PLCopen ® for efficiency in automation IEC 1131 versus IEC  The good news is – there is no difference  It is an international harmonization of all the IEC standards and the localized versions

PLCopen ® for efficiency in automation IEC Programming languages / Industrial Control Programming Standardizing the way people work with controls

PLCopen ® for efficiency in automation IEC Programming languages / Industrial Control Programming...with support for people with different backgrounds

PLCopen ® for efficiency in automation The IEC Standard Common Elements Programming Languages

PLCopen ® for efficiency in automation IEC : Common Elements Variables & Data Types What is this? Historically Reference to a physical memory location Reference to a physical Input

PLCopen ® for efficiency in automation IEC : Common Elements Variables & Data types Temperature_Sensor_1 : Integer Symbolic representation via labels Restricted area for I/O mapping Hardware independent software code Result: higher transparency & readability And less errors

PLCopen ® for efficiency in automation IEC : Common Elements Software Model Configuration Resources Tasks

PLCopen ® for efficiency in automation IEC Software Model Configuration Communication Function

PLCopen ® for efficiency in automation IEC Software Model Configuration Communication Function Resource

PLCopen ® for efficiency in automation IEC Software Model Task Resource Configuration Communication Function

PLCopen ® for efficiency in automation IEC Software Model Execution control path Task Program Task Program Task Program Task Resource Configuration Communication Function

PLCopen ® for efficiency in automation IEC Software Model Global and direct variables Access path Execution control path Variable access path FB Task Program FB Task Program Task Program FB Task Resource Configuration Communication Function Function Block Variable

PLCopen ® for efficiency in automation IEC vs conventional PLC Global and direct variables Access path Execution control path Variable access path FB Task Program FB Task Program Task Program FB Task Resource Configuration Communication Function Function Block Variable

PLCopen ® for efficiency in automation Conventional PLC vs IEC Task 1 Program Task Resource Read inputs Do Calculations Set Outputs Endless Loop: Task 2 Task 3 Task 4 Time based Events based Time based

PLCopen ® for efficiency in automation Common Elements: Tasks IEC EmbeddedPLCs PC based Control SoftLogicDrivesLON nodesDCS

PLCopen ® for efficiency in automation Common Elements : Tasks & Datatypes RPM =2000 Windows CE or any other IEC tasks SCADA & HMI tasks I/O Communication tasks OPC UA Multi –functional Operator Panel I/O Communication bus

PLCopen ® for efficiency in automation IEC : Common Elements COMMON ELEMENTS a.o. Data Types&Variables Configuration, Resources, Tasks Programming Organization Units, POUs * Functions * Function Blocks * Programs

PLCopen ® for efficiency in automation Functions ….. * Standard functions ADD, SQRT, SIN, COS, GT, MIN, MAX, AND, OR, etc. * Your own defined functions: FUNCTION SIMPLE_FUN : REAL VAR_INPUT A, B : REAL; C : REAL := 1.0; END_VAR SIMPLE_FUN := A*B/C; END FUNCTION

PLCopen ® for efficiency in automation …. & Function Blocks  Standard Function Blocks Hysterisis Q XIN1 XIN2 EPS BOOL REAL

PLCopen ® for efficiency in automation …. & Function Blocks  Standard Function Blocks  Additional supplied Function Blocks Hysterisis Q XIN1 XIN2 EPS BOOL REAL

PLCopen ® for efficiency in automation …. & Function Blocks  Standard Function Blocks  Additional supplied Function Blocks  Your own defined Function Blocks Hysterisis Q XIN1 XIN2 EPS BOOL REAL

PLCopen ® for efficiency in automation …. & Function Blocks  Standard Function Blocks  Additional supplied Function Blocks  Your own defined Function Blocks  All FBs are highly re-usable in same program, different programs or project Hysterisis Q XIN1 XIN2 EPS BOOL REAL

PLCopen ® for efficiency in automation Function Block example Hysterisis Q XIN1 XIN2 EPS BOOL REAL 1 EPS 0 XIN2 Q

PLCopen ® for efficiency in automation Function Block example FUNCTION_BLOCK HYSTERISIS VAR_INPUT XIN1, XIN2 : REAL; EPS : REAL; (* Hysterisis band *) END_VAR VAR_OUTPUT Q : BOOL := 0 END_VAR IF Q THEN IF XIN1 < (XIN2-EPS) THEN Q := 0 (* XIN1 decreasing *) END_IF; ELSIF XIN1 > (XIN2 + EPS ) THEN Q := 1; (* XIN1 increasing *) END_IF; END_FUNCTION_BLOCK Hysterisis Q XIN1 XIN2 EPS BOOL REAL 1 EPS 0 XIN2 Q

PLCopen ® for efficiency in automation Programs : design via building bricks Automation application Start : BOOL; Emergency : BOOL; Limit : INT; PROGRAM GLOBAL LocalType FUNCTION INPUT Local Type FUNCTION_BLOCK INPUT OUTPUTIN_OUT EXTERNAL Local Type

PLCopen ® for efficiency in automation Structure & Advantages of POUs  Create own Function Block Libraries (per application area)  FBs are tested and documented  Make libraries (world wide) accessible  Re-use as much as possible  Change programming to creating networks of FBs  Save 40% on next project

PLCopen ® for efficiency in automation Sequential Function Chart, SFC  Powerful graphical technique for describing the sequential behavior of a control program  Used to partition a control problem  Shows overview, also suitable for rapid diagnostics Step 1 N FILL Step 3 Step 2 S Empty Transition 1 Transition 2

PLCopen ® for efficiency in automation Sequential Function Chart, SFC  Powerful graphical technique for describing the sequential behaviour of a control program  Used to partition a control problem  Shows overview, also suitable for rapid diagnostics  The basic elements are STEPS with ACTION BLOCKS and TRANSITIONS  Support for alternative and parallel sequences Step 1 N FILL Step 3 Step 2 S Empty Transition 1 Transition 2

PLCopen ® for efficiency in automation SFC : alternative sequences Step 1 N FILL Step 3 Step 2 b S Empty Transition 1b Transition 2b Step 2 a S Empty Transition 1a Transition 2a

PLCopen ® for efficiency in automation The IEC Standard Common Elements Programming Languages

PLCopen ® for efficiency in automation The IEC Programming Languages Instruction List Structured Text Function Block Diagram Ladder Diagram C:= A AND NOT B A B C -| |--|/| ( ) LDA ANDNB STC AND A C B

PLCopen ® for efficiency in automation The IEC Standard Common Elements Programming Languages Top Down Bottom Up

PLCopen ® for efficiency in automation IEC Programming Environments Many of them offer:  graphical programming screens  support for multiple windows  mouse operation  pull-down menus  built-in hypertext help function  software verification during design

PLCopen ® for efficiency in automation What are the benefits ?

PLCopen ® for efficiency in automation Users? Which Users? Education InstallationMaintenanceProgrammingProcess cntrlDiscrete MnfSystem Integrator YOU ??

PLCopen ® for efficiency in automation Users? Which Users? Automobile production lines Water treatment plant Food processing and packaging machinery Cable manufacturing Semi-conductor clean room automation Theme-park roller coasters Nuclear waste treatment plant This wide range encompass different skills

PLCopen ® for efficiency in automation Benefits  Reduced waste of human resources (in training, debugging, maintenance and consultancy)

PLCopen ® for efficiency in automation Benefits  Reduced waste of human resources (in training, debugging, maintenance and consultancy) Creating a focus to problem solving via software re-usability (reduced application investment and supplier dependency)

PLCopen ® for efficiency in automation Benefits  Reduced waste of human resources (in training, debugging, maintenance and consultancy)  Creating a focus to problem solving via software re-usability (reduced application investment and supplier dependency) Reduced misunderstandings and errors

PLCopen ® for efficiency in automation Benefits  Reduced waste of human resources (in training, debugging, maintenance and consultancy)  Creating a focus to problem solving via software re-usability (reduced application investment and supplier dependency)  Reduced misunderstandings and errors Programming techniques usable in more environments (general industrial control)

PLCopen ® for efficiency in automation Benefits  Reduced waste of human resources (in training, debugging, maintenance and consultancy)  Creating a focus to problem solving via software re-usability (reduced application investment and supplier dependency)  Reduced misunderstandings and errors  Programming techniques usable in more environments (general industrial control) Combining harmoniously different components from different locations, companies or countries, or projects

PLCopen ® for efficiency in automation Benefits  Reduced waste of human resources (in training, debugging, maintenance and consultancy)  Creating a focus to problem solving via software re-usability (reduced application investment and supplier dependency)  Reduced misunderstandings and errors  Programming techniques usable in more environments (general industrial control)  Combining harmoniously different components from different locations, companies or countries, or projects Increased connectivity (investment protection)

PLCopen ® for efficiency in automation Benefits  Reduced waste of human resources (in training, debugging, maintenance and consultancy)  Creating a focus to problem solving via software re-usability (reduced application investment and supplier dependency)  Reduced misunderstandings and errors  Programming techniques usable in more environments (general industrial control)  Combining harmoniously different components from different locations, companies or countries, or projects  Increased connectivity (investment protection)

PLCopen ® for efficiency in automation How to use IEC an example: Structuring Software Development with IEC steps to success

PLCopen ® for efficiency in automation Software Development Cycle Design / Development / Installation / Maintenance.. phases

PLCopen ® for efficiency in automation … software development cycle... enhancements….. ….. new requirements... …. new functionality …. …. new wishes... “… the never ending story of software ”

PLCopen ® for efficiency in automation What’s the topic here? Structuring Software Development with IEC meaning: internal Software Quality In the sense of: Understandable, Reusable, Verifiable, Maintainable, Isolation

PLCopen ® for efficiency in automation Managing Complexity 100 – 10,000 – 1mio – 100mio Lines of Code Exponentially increasing complexity

PLCopen ® for efficiency in automation Why Structuring ?  The ever increasing role of Software on system quality: errors cost money  Requirements increased dramatically: 100 lines of codes now 10,000 lines  SW development: not a one-man job anymore, but a team with different know how and background  Commissioning, Installation, Maintenance, and Improvements are essential parts of the development process

PLCopen ® for efficiency in automation Advantages of Structuring Better Overview Better Basis for (internal) Communication Better Focus to problem solving Basis for reusable software “Self-documenting”

PLCopen ® for efficiency in automation Software Program vs. Software Product  Made by an individual for own use  Limited functionality  User interface less important  Little documentation  Individual development style  Made by a group for usage by others  Larger functionality  User interface very important  Well documented  Accepted SW engineering methods

PLCopen ® for efficiency in automation Exploratory Style vs. Software Engineering Method  Based on error correction  Finding errors during final product testing  Coding is the goal, creating quickly a working system, and modifying till satisfactory  Focused to error prevention  Find errors as early as possible  A structured approach, clear specifications, clear phases  Periodic reviews during all stages of the project

PLCopen ® for efficiency in automation (Costly) Engineering Habits  Reuse work from similar former projects  Include them into the new project  And start adapting them to the new project requirements Copy - Paste & Modify

PLCopen ® for efficiency in automation Dangers of copy paste & modify The “not-invented-here syndrome” – only own artifacts (developed in the past) Non-predictable quality Prone to errors and reuse potential is wasted Unsystematically Difficult to maintain and manage Very costly over the life cycle

PLCopen ® for efficiency in automation Modern Software Development Process A small overview

PLCopen ® for efficiency in automation Modern Software Development Process  Defined in several clearly separated phases - project definition  Top-down approach  Multiple disciplines involved  Multiple people involved  Different backgrounds  Based on Functional Requirements

PLCopen ® for efficiency in automation Example of Software Development Process Different Phases “Waterfall – model” Analysis Design Development Installation Maintenance..

PLCopen ® for efficiency in automation Example of Software Development Process V-model Link between Specification and testing

PLCopen ® for efficiency in automation The X-Model for SW Development Sub-system Integration and Testing System Installation and Testing Component Identification Sub-system Design Module Development Library Construction Catalogue Management System Design Component Design Component Development

PLCopen ® for efficiency in automation The X-Model for SW Development Sub-system Integration and Testing System Installation and Testing Component Identification Sub-system Design Module Development Library Construction Catalogue Management System Design Component Design Component Development Application Software

PLCopen ® for efficiency in automation The X-Model for SW Development Sub-system Integration and Testing System Installation and Testing Component Identification Sub-system Design Module Development Library Construction Catalogue Management System Design Component Design Component Development Reusable Components (FBs)

PLCopen ® for efficiency in automation Requirements on Engineering Tools 1.Support creation and reuse of technical, non-technical and combined entities 2.Support creation of a structured domain repository (like a library) 3.Enable multi-user access on the components 4.Provide configuration management 5.Cover more than one engineering phase and discipline 6.Encourage a reuse on different levels of granularity

PLCopen ® for efficiency in automation Decomposition and Reuse PROGRAM GLOBAL LocalType Automation application FUNCTION INPUT Local Type FUNCTION_BLOCK INPUT OUTPUTIN_OUT EXTERNAL Local Type

PLCopen ® for efficiency in automation Decomposition

PLCopen ® for efficiency in automation Reuse via Standardized Function Blocks

PLCopen ® for efficiency in automation A hierarchy of abstraction Top- down

PLCopen ® for efficiency in automation Bottom-up after top-down Top- down Bottom up First decompose – then fill it in

PLCopen ® for efficiency in automation How does that look in IEC ? 7 Steps to Success with a Fermentation Control System

PLCopen ® for efficiency in automation Fermentation Process Heater band Acidic reagent Alkali reagent Harvest valve pH sensor Temperature sensor Feed valve Agitator

PLCopen ® for efficiency in automation How to create a control program for this in a structured way?

PLCopen ® for efficiency in automation Step 1 : Identification of external Interfaces to the System  Feedback from the temperature sensor  Feedback from the pH sensor  Feedback from the valve positions  Feedback from the motor (speed)  Output to the valves  Output to the motor  Output to the heater band

PLCopen ® for efficiency in automation Step 2: Definition of the main signals between System and Plant In this example there is no coupling to the plant, but it could have been, like:  … coupling to main vessels with liquids  … coupling to transportation system / filling station after harvesting

PLCopen ® for efficiency in automation Step 3: Definition of all Operator interactions, overrides and supervisory data For the operator we define:  …a ‘Start’ button  …a ‘Stop’ button  …a ‘Duration’ input Now we have defined all the interfaces

PLCopen ® for efficiency in automation Step 4: Brake down from top in logical partitions  MainSequence - filling, heating, agitating, fermenting, harvesting, cleaning.  ValveControl - operating valves used to fill and empty the vessel's  TemperatureControl - for controlling the temperature  AgitatorControl - agitator motor control  pHControl - PH-control

PLCopen ® for efficiency in automation Step 5: Definition of the required POUs (Programs and Function Blocks)  Using the definitions above and  representing it in the graphical way …

PLCopen ® for efficiency in automation Fermentation Control Program

PLCopen ® for efficiency in automation MainSequence in Sequential Function Chart, SFC Presenting the main process states

PLCopen ® for efficiency in automation The Actions Blocks and Transitions can be programmed in any of the four IEC Programming Languages

PLCopen ® for efficiency in automation The IEC Programming Languages Instruction List (IL) Structured Text (ST) Funktion Block Diagram (FBD)Ladder Diagram (LD) LDA ANDNB STC C:= A AND NOT B A B C -| |--|/| ( ) AND A C B

PLCopen ® for efficiency in automation Step 6: Definition of scan cycle time requirements for the different parts of the application  In this example we have only one cycle in continuous mode  The remaining time can be used for other cycles like:  …. the filling / transportation system  … checking boundaries and error conditions (in a parallel sequence)

PLCopen ® for efficiency in automation And last but not least: Step 7: Configuration of the System: Definition of Resources, Tasks and linking of programs with physical I/O  Depending on the system involved  Includes physical mapping of symbols to I/O  Mapping of the resource (read: CPU’s in the system)  Definition of the scan cycles and events (as defined in Step 6)

PLCopen ® for efficiency in automation Conclusion  The Software development process has changed: lmore requirements.. lmore functionalities.. lmore code.. lmore people involved.. l… more requirements / wishes  Structuring and Decomposition are essential parts of modern software development  IEC has the right basis to fulfill your requirements

PLCopen ® for efficiency in automation The association PLCopen Together we can make it happen: Standardization in Industrial Control Programming WE NEED YOUR SUPPORT FOR THIS ! Join the organization PLCopen

PLCopen ® for efficiency in automation

PLCopen ® for efficiency in automation More Information...  Free-of-Charge electronic Newsletter ‘PLCopening’ (in english)