CSCI1600: Embedded and Real Time Software

Slides:



Advertisements
Similar presentations
Signals and Systems March 25, Summary thus far: software engineering Focused on abstraction and modularity in software engineering. Topics: procedures,
Advertisements

8/25/2009 Sofya Raskhodnikova Intro to Theory of Computation L ECTURE 1 Theory of Computation Course information Overview of the area Finite Automata Sofya.
Timed Automata.
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
1 Homework Turn in HW2 at start of next class. Starting Chapter 2 K&R. Read ahead. HW3 is on line. –Due: class 9, but a lot to do! –You may want to get.
Mehmet Can Vuran, Instructor University of Nebraska-Lincoln Acknowledgement: Overheads adapted from those provided by the authors of the textbook.
ECE 720T5 Winter 2014 Cyber-Physical Systems Rodolfo Pellizzoni.
Real Time & Embedded Systems Lecture 1: Real Time Systems Software (RTSS) RTSS: the software half of the Real Time & Embedded Systems unit What do we mean.
Chapter 1 Infinite Series, Power Series
EE434 ASIC & Digital Systems
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Discrete Distributions The values generated for a random variable must be from a finite distinct set of individual values. For example, based on past observations,
Chapter 2 – Fundamental Simulation ConceptsSlide 1 of 46 Chapter 2 Fundamental Simulation Concepts.
Conformance Test Experiments for Distributed Real-Time Systems Rachel Cardell-Oliver Complex Systems Group Department of Computer Science & Software Engineering.
ME451 Kinematics and Dynamics of Machine Systems Review of Differential Calculus 2.5, 2.6 September 11, 2013 Radu Serban University of Wisconsin-Madison.
October 2004Computer Hardware Lecture 5 Slide1 / 29 Lecture 5 Physical Realisation of Logic Gates.
McGraw-Hill/Irwin Copyright © 2009 by The McGraw-Hill Companies, Inc. All rights reserved.
Data Structures and Algorithms Dr. Tehseen Zia Assistant Professor Dept. Computer Science and IT University of Sargodha Lecture 1.
CSCI1600: Embedded and Real Time Software Lecture 12: Modeling V: Control Systems and Feedback Steven Reiss, Fall 2015.
CS1Q Computer Systems Lecture 11 Simon Gay. Lecture 11CS1Q Computer Systems - Simon Gay 2 The D FlipFlop The RS flipflop stores one bit of information.
CSCI1600: Embedded and Real Time Software Lecture 4: Introduction to the Arduino Steven Reiss, Fall 2015.
CSCI1600: Embedded and Real Time Software Lecture 7: Modeling II: Discrete Systems Steven Reiss, Fall 2015.
CSCI1600: Embedded and Real Time Software Lecture 8: Modeling III: Hybrid Systems Steven Reiss, Fall 2015.
CSCI1600: Embedded and Real Time Software Steven Reiss Fall 2015.
CSCI1600: Embedded and Real Time Software Lecture 11: Modeling IV: Concurrency Steven Reiss, Fall 2015.
CSCI1600: Embedded and Real Time Software Lecture 33: Worst Case Execution Time Steven Reiss, Fall 2015.
CSCI1600: Embedded and Real Time Software Lecture 6: Modeling I: Continuous Systems Steven Reiss, Fall 2015.
CSCI1600: Embedded and Real Time Software Lecture 9: Input Output Concepts Steven Reiss, Fall 2015.
CSCI1600: Embedded and Real Time Software Lecture 28: Verification I Steven Reiss, Fall 2015.
July 18, UCSD - R.A. de Callafon Short Intro to Micro Processors and I/O functions of our Kinetic Sculpture Control Box Raymond de Callafon.
CSCI1600: Embedded and Real Time Software Lecture 14: Input/Output II Steven Reiss, Fall 2015.
CSCI1600: Embedded and Real Time Software Lecture 15: Advanced Programming Concepts Steven Reiss, Fall 2015.
CSCI1600: Embedded and Real Time Software Lecture 10: Modeling IV: Compositions of State Machines Steven Reiss, Fall 2015.
Primbs, MS&E345 1 Measure Theory in a Lecture. Primbs, MS&E345 2 Perspective  -Algebras Measurable Functions Measure and Integration Radon-Nikodym Theorem.
Requirements Specification
Chapter 3 Data Representation
Digital Logic.
Chapter 1: Overview of Control
DATA MODELS.
Digital electronics and logic gates
VLSI Testing Lecture 6: Fault Simulation
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
Chapter 5: MVC Architecture Chapter 5.
Lesson 1: Overview of Sequential Control and Data Acquisition
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
Virtual University of Pakistan
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
ECE 445 – Computer Organization
This Lecture Substitution model
DATA MODELS.
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
Simple Control System.
CSCI1600: Embedded and Real Time Software
Presentation transcript:

CSCI1600: Embedded and Real Time Software Lecture 9: Modeling III: Hybrid Systems Steven Reiss, Fall 2016 Talk about Xeno’s paradox when describing bouncing ball. Add other type of timed automata?

Time and Finite State Automata We’ve added timing to our automata in an ad-hoc fashion Assuming a fixed period Added timer events Indicated length of time in a state (min/max) No notion of absolute time, clocks, etc. These are easy to implement In order to prove properties of the system With respect to time We need a cleaner, more formal representation Assuming time is continuous Lecture 9: Modeling Hybrid Systems 2/22/2019

Timed Automata Basic idea Timer variables can be set explicitly Extended finite state machine Add the notion of timer variables Timer variables can be set explicitly All timer variables are periodically incremented Can think of this as every k milliseconds Can think of this as continuous as well Timer variables can be used in conditions No ad-hoc time constraints Lecture 9: Modeling Hybrid Systems 2/22/2019

Timed Automata Assume X is a timer variable. What does this do? Lecture 9: Modeling Hybrid Systems 2/22/2019

Another example Lecture 9: Modeling Hybrid Systems 2/22/2019

Extended timed automata Lecture 9: Modeling Hybrid Systems 2/22/2019

Timed Automata Are these still finite state? Timer variables can be unbounded Timer variables are continuous Determine the state ranges for times These form time-states Can create an equivalent FSA Lecture 9: Modeling Hybrid Systems 2/22/2019

Modeling and the Real World Often we want to model both the system and the world The system is a finite automata The real world is continuous & not just clocks Problems How to combine the two What can we do with the combination Understanding Proving properties Lecture 9: Modeling Hybrid Systems 2/22/2019

Modeling in the Real World Lecture 9: Modeling Hybrid Systems 2/22/2019

Hybrid Automata State variables reflect the real world Updates done over time automatically Updates can use continuous modeling Can specify velocity, acceleration rather than position Can specify rules for doing the update Lecture 9: Modeling Hybrid Systems 2/22/2019

Bouncing Ball Example Will the ball stop bouncing (Zeno’s paradox) What time do we use? Lecture 9: Modeling Hybrid Systems 2/22/2019

RC Car Lecture 9: Modeling Hybrid Systems 2/22/2019

Hybrid Timed Automata The external (timed) portion is set outside the automata Rules for continuous update Model the physics of the real world Lecture 9: Modeling Hybrid Systems 2/22/2019

Why Model the World? Does the code need to know the state of the real world Either precisely or approximately Does it need to compute that state Or retrieve it via sensors How accurate can you model the world? Consider speed control on a car Proving properties of the program wrt the model Does this prove the system correct Lecture 9: Modeling Hybrid Systems 2/22/2019

Implementation Approach Get information from the real world What the actual speed is, change of speed Actual temperature (and change rate) Compute the difference between actual and desired This is called the error Use this to determine the action This is considered feedback Lecture 9: Modeling Hybrid Systems 2/22/2019

Control Theory Why are computers called “digital computers” What is the alternative What is an analog computer It turns out that analog computers are easy to build Either mechanically or electronically Predate digital computers Lecture 9: Modeling Hybrid Systems 2/22/2019

Analog Computers Lecture 9: Modeling Hybrid Systems 2/22/2019

Analog Computer Can do simple math operations Some complex math operations are easy Integration, differentiation Lecture 9: Modeling Hybrid Systems 2/22/2019

Controlling Physical Systems Analog computers are designed for this If you want a car to go in a straight line Use feedback from left/right to update steering Use intergrator to determine error to control system Analog control is all about feedback We can do the same in digital systems Covered a week from Friday First we need to cover details for the assignment And some additional modeling concepts Lecture 9: Modeling Hybrid Systems 2/22/2019

Homework Read Chapter 7.1 Lecture 9: Modeling Hybrid Systems 2/22/2019