FROM CONTROL SOFTWARE TO CONTROL SYSTEMS Wojciech Kurek.

Slides:



Advertisements
Similar presentations
ASYCUDA Overview … a summary of the objectives of ASYCUDA implementation projects and features of the software for the Customs computer system.
Advertisements

ARC reporting ARC Cerny Verze
Kyle Thurow, Kyle Neuschaefer, Alexander Matusiak, and Justin Carroll.
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Lecture 1: Overview of Computers & Programming
ABSTRACT The goal of this project was to create a more realistic and interactive appliance interface for a Usability Science class here at Union. Usability.
© Janice Regan, CMPT 102, Sept CMPT 102 Introduction to Scientific Computer Programming The software development method algorithms.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
Bending Binary Programs to your Will Rajeev Barua.
CS 290C: Formal Models for Web Software Lecture 1: Introduction Instructor: Tevfik Bultan.
Interpret Application Specifications
Chapter 2: Impact of Machine Architectures What is the Relationship Between Programs, Programming Languages, and Computers.
Systems Design, Implementation, Maintenance, and Review
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages C++ Programming:
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
Software Engineering 1 (Chap. 1) Object-Centered Design.
DCT 1123 PROBLEM SOLVING & ALGORITHMS INTRODUCTION TO PROGRAMMING.
© 2004 The MathWorks, Inc. 1 MATLAB for C/C++ Programmers Support your C/C++ development using MATLAB’s prebuilt graphics functions and trusted numerics.
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
Programming 1 1. Introduction to object oriented programming and problem-solving.
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Programming Lifecycle
Online Translation Service Capstone Design Eunyoung Ku Jason Roberts Jennifer Pitts Gregory Woodburn Kim Tran.
Chapter 8 Selecting and Maintaining Digital Resources.
Chapter 06 (Part I) Functions and an Introduction to Recursion.
Learningcomputer.com SQL Server 2008 – Administration, Maintenance and Job Automation.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
The Client/Server Database Environment Ployphan Sornsuwit KPRU Ref.
IXA 1234 : C++ PROGRAMMING CHAPTER 1. PROGRAMMING LANGUAGE Programming language is a computer program that can solve certain problem / task Keyword: Computer.
INTRODUCTION TO COMPUTING CHAPTER NO. 04. Programming Languages Program Algorithms and Pseudo Code Properties and Advantages of Algorithms Flowchart (Symbols.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Chapter 1 Introduction Chapter 1 Introduction 1 st Semester 2015 CSC 1101 Computer Programming-1.
CS370 Spring 2007 CS 370 Database Systems Lecture 1 Overview of Database Systems.
Slide 12.1 Chapter 12 Implementation. Slide 12.2 Learning outcomes Produce a plan to minimize the risks involved with the launch phase of an e-business.
School of Computer Science & Information Technology G6DICP Introduction to Computer Programming Milena Radenkovic.
240-Current Research Easily Extensible Systems, Octave, Input Formats, SOA.
Analysis. Solution Requirements 1. Identify the functions and attributes of the website. 2. Write a problem statement. (What is the problem? What will.
CMSC 345 Fall 2000 Requirements Overview. Work with customers to elicit requirements by asking questions, demonstrating similar systems, developing prototypes,
CASE1 Computer-Aided Software Engineering Advanced Software Engineering COM360 University of Sunderland © 2000.
Program Design. The design process How do you go about writing a program? –It’s like many other things in life Understand the problem to be solved Develop.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
1 ARC reporting ARCCerny Verze INTERNET ARC events reporting Control panel 3. PSTN Telephone network - CID 1. GSM network – GPRS IP CID.
FACTORS AFFECTING THE EFFICIENCY OF DATA PROCESSING SYSTEMS.
Evolution of C and C++ n C was developed by Dennis Ritchie at Bell Labs (early 1970s) as a systems programming language n C later evolved into a general-purpose.
PROGRAMMING FUNDAMENTALS INTRODUCTION TO PROGRAMMING. Computer Programming Concepts. Flowchart. Structured Programming Design. Implementation Documentation.
How Computers Solve Problems Computers also use Algorithms to solve problems, and change data into information Computers can only perform one simple step.
Software Engineering Algorithms, Compilers, & Lifecycle.
Component 8/Unit 1bHealth IT Workforce Curriculum Version 1.0 Fall Installation and Maintenance of Health IT Systems Unit 1b Elements of a Typical.
Victoria Ibarra Mat:  Generally, Computer hardware is divided into four main functional areas. These are:  Input devices Input devices  Output.
Programming Language Basics. What is a Programming Language? “A computer, human-created language used to write instructions for a computer.” “An artificial.
Advanced Higher Computing Science
Introduction to Computers and C++ Programming
CMSC 345 Defensive Programming Practices from Software Engineering 6th Edition by Ian Sommerville.
Computer Networks Part 1
Computer Programming.
Outline Introduction Standards Project General Idea
Introduction
System Design.
C++ Programming: From Problem Analysis to Program Design
Overview of Computers & Programming Languages
Chapter 6 System and Application Software
CIS16 Application Development – Programming with Visual Basic
Introduction CSC 111.
Chapter 1 Introduction(1.1)
Programming Language Basics
Chapter 6 System and Application Software
Chapter 6 System and Application Software
Oriented Design and Abstract Data Type
System Programming By Prof.Naveed Zishan.
Chapter 6 System and Application Software
Presentation transcript:

FROM CONTROL SOFTWARE TO CONTROL SYSTEMS Wojciech Kurek

Why?  Lets assume we have a control system simulation implemented in Matlab,  This system meets the desired specs  What next?

Implementing the control system  We do not want to use Matlab on site, because:  The cost of industrial licence is high  Maintenance of Matlab is expensive and requires a PC class computer on site Reliable continous operation of computational unit is required!

What can we do then?  Take the code and rewrite it in C/C++ or other programming language  Compile the Matlab code using Matlab Compiler and get:  Standalone application  Shared library  C/C++, NET or COM component or Java class

Issues with porting the code  A simple control algorithm (i.e. PI controller) can be easily ported to C/C++ or other  However, we require something more that copying the code; we need to get a robust code  Code that is safeguarded against malformed input data,  Immune to malicious attacks  Reliable  Execution time

Why use Matlab instead of writing the code directly in C/C++  Rapid prototyping environment is needed to test new algorithms  Matlab is very easy to debug  Using rapid prototyping allows us not to consider the data types, hardware limitations, connectivity issues etc.  Rapid prototyping allows us to use simulation models thus reducing the time and cost of developing new control solutions  Next step – hardware-in-the-loop

Storing data  Lest assume that we have all the control software in place; what we need next is monitoring and data logging  A simple SQL database is insufficient as it can be insecure due to  input - output data rates  consistency issues when large amount of data is considered

Using recorded data  Consider a system that has pressure and flow recoded in a database. What potential problems can be encountered?  Missing and/or malformed data due to communication errors  The time instant when the measurement is performed not necessary coincide with each other

Example potential problems with recorded data  We have a monitoring system that checks if pressure and flow relation meets the specified formula  The pressure and flow are measured and recorded in a database with a time stamp correponding to the measurement time instant  Can we use the data directly? Why not?

Things to be considered  Security of systems – i.e. recent SCADA systems hacker attacks  Security of data – frequent backup  Reliability  Communication links usage