csci1600: embedded and real time software lecture 8: modeling iii: hybrid systems steven reiss, fall...

Post on 18-Jan-2016

216 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

CSCI1600: Embedded and Real Time SoftwareLecture 8: Modeling III: Hybrid Systems

Steven Reiss, Fall 2015

Time and Finite State Automata

We’ve added timing to our automata in an ad-hoc fashion Added timer events

Indicated length of time in a state (min/max)

No notion of absolute time, clocks, etc.

In order to prove properties of the system With respect to time

We need a cleaner, more formal representation

Timed Automata Basic idea

Extended finite state machine

Add the notion of timer variables (bounded)

Timer variables can be set explicitly

All timer variables are periodically incremented Can think of this as every k milliseconds

But in general it is considered a tick

Timer variables can be used in conditions

No ad-hoc time constraints

Timed Automata

Another example

Extended timed automata

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

Modeling in the Real World

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

Bouncing Ball Example

RC Car

Hybrid Timed Automata

The external (timed) portion is set outside the automata Rules for continuous update

Model the physics of the real world

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

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

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

Analog Computers

Analog Computer

Can do simple math operations

Some complex math operations are easy Integration, differentiation

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 how much off and to control system

Analog control is all about feedback

We can do the same in digital systems Covered a week from Monday

First we need to cover details for the assignment

And some additional modeling concepts

Homework

Read Chapter 7.1

top related