28

Real Time Process Control (Introduction) Tono Riesco Electronics Engineer CERN

Embed Size (px)

Citation preview

Real Time Process Control (Introduction)

Tono RiescoElectronics Engineer

CERN

Agenda

• Introduction• Control systems• Basic concepts• Real-Time• Task Scheduling• Real-Time in Linux

Control System

In all the control systems, we found 3 basic components:

• System to be controlled– With sensors, actuators, cables…etc.

• Controller– Send orders to the system according a

predetermined control objective.

• Environment– Where the control system operates.

Typical Control System

Controller

System Environment

Feedback

Control System Details

Environment

Actuators

Sensors

SystemController

Data FiltersData Process

Types of Control Systems

Depending of the interactions with the environment we distinguish 3 types of control systems:

• Monitoring Systems– Do not modify the environment

• Open-loop control systems– Loosely modify the environment

• Closed-loop control systems– Tight interaction between perception and

action

Monitoring Systems

Environment

Sensor 1

Data FiltersData Process Sensor 2

Sensor n

Display Examples: surveillance systems, air traffic control

Do not modify the environment

Open-Loop Control Systems

Environment

Actuators

Data Process

Planning Sensors

Examples: assembly robots, industrial chains, access systems

SystemController

Sensing and control are loosely coupled

Closed-Loop Control Systems

Environment

Actuators

Data Process

Planning Sensors

Examples: humans, flight control systems, safety systems

SystemController

Sensing and control are tightly coupled

Conclusions

• If we have a tight interaction with the environment, the system has to react to events within precise timing constrains.

• Timing constrains are imposed by the environment.

• The control system must to be able to execute tasks within time constraints.

What’s a Real Time System? I

• “A real-time system is one in which the correctness of the computations not only depends upon the logical correctness of the computation but also upon the time at which the result is produced.

• If the timing constraints of the system are not met, system failure is said to have occurred” Donald Gillies.

What’s a Real Time System? II

• System capable of guaranteeing timing requirements of the processes under its control.– It is essential that the timing constraints of the

system are guaranteed to be met. Guaranteeing timing behavior requires that the system be predictable.

– It is also desirable that the system attain a high degree of utilization while satisfying the timing constraints of the system.

– Late or early answer → Wrong answer– Guarantee worst case vs. best effort

What’s not a Real-Time System? I

• A real-time system is not a fast system.– AFAP systems– Speed is always relative to a specific

environment.– Running faster is good, but does not

guarantee a correct behavior.• Real-time systems is not on-line

systems or "an interactive system with better response time than we had".

Real-Time examples

• Bottling plant• Servo loops in an airplane when on

auto-pilot

How has to be a real time system?

• Fast• Predictable• Deterministic

Fast meaning in Real Time

• Fast means that it has a low latency– It responds to external, asynchronous

events in a short time. The lower the latency, the better the system will respond to events which require immediate attention

Predictable

• Predictable means that it is able to determine task's completion time with certainty.

• Predictable refers to a system whose timing behavior is always within an acceptable range. The behavior is specified on a system-wide basis, such as “all tasks will meet all deadlines”.

Deterministic

• Special case of a predictable system. • Not only is the timing behavior within a

certain range, but that timing behavior can be pre-determined.

• Pre-allocated time slots for each task. • Execution for each task occurs only

during those time slots. Determinism is not essential to build predictable real-time systems.

Real Time Systems

• Real Time: System able to respond to events within precise timing constraints.

Real Time System

Event

Action

Real Time Systems

• It is a system in which the correctness depends not only on the output values, but also on the time at which results are produced.

y (t +Δ)

x (t)Real Time System

t

Environment

Real-Time classification

Real-Time

Hard (HRT)Guaranteed timing, cannot miss deadlines and must

have bounded latencies.

Soft (SRT)Ability to execute tasks according to a desired

time schedule on the average

Sensory-motor planningVideo display.

Definitions

• Task– is a sequence of instructions that in the

absence of other activities is continuously executed by the system until completion.

t

ai si fi

Definitions

• Real-Time Task τi

t

ri

si fi di

Ci

Di

τi

ri Request time (arrival time)

si Start Time

fi Finish Time

di Absolute Deadline

Di Relative deadline

Ci Worst Case execution time (wcet)

Li Latency

Lai Lateness (fi - di)

Ti Tardiness (max (0, Lai))

Li Lai

Definitions

• Lateness– Quality of coming late or later in time

• Tardiness– Quality of not adhering to a correct or usual or

expected time

• Latency– The time that elapses between a stimulus and the

response to it

• Jitter– Random variation in the timing of a signal, especially a

clock

Task status

Task Status

ActiveCan be executed by the CPU

Blockedwaiting for an event

Runningit is being executed by the CPU

Readyit is waiting for the CPU

Queue Ready Tasks

• The ready tasks go to the “waiting queue” the ready queue

• The strategy of choosing which task go before is known schedule algorithm CPUτ3τ2τ1Activatio

n

Dispatching

Not a FIFO Queue!!!

Task Status Transitions

Blocked Ready

Running

Activation

Dispatching

Preemption

Finished

Signal

Wait