Distributed Real-‐Time Control. Systems. Lecture 1. IntroducAon to the Module.
SCDTR ... Digital Control of Dynamic Systems, 3rd Ed., G. Franklin, J. Powell, M.
Distributed Real-‐Time Control Systems Lecture 1 Introduc:on to the Module SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
1
Contacts • Lectures:
• Labs:
Alexandre Bernardino
[email protected]
Ext: 2293 SCDTR 2013/2014 -‐ Lecture 1
João Paulo Neto
[email protected]‐id.pt Tel: 213100315
A. Bernardino, C. Silvestre, IST -‐ ACSDC
2
Module Organiza:on • Lectures :
– Tuesdays 9:30h-‐11:00, EA5 – Wednesdays, 11:00h-‐12:30h, EA4
• Lab Sessions:
– Mondays, 8:00h, 9:30h and 11:00h, LSDC2, Torre Norte, Piso 5
• Project:
– Groups of 3 students. Excep:onally 4, with extra work.
• Assessment: – – – –
Lab performance: 20% Mid-‐term demo (28 Oct) : 20% Final demo(16 Dec) : 30% Project Report (30 Dec) : 30%
SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
3
Background
Control Engineering
Computer Engineering
Real Time Systems for Control
• Control theory • C programming SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
4
Syllabus • Embedded and Real-‐Time Systems • Prac:cal Digital Control • C++ programming • Real-‐Time Programming Pacerns • Mul:-‐Tasking / Concurrency / Synchroniza:on • Inter-‐Process Communica:on
• Control Networks • Distributed Control and Op:miza:on SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
5
Bibliography • Online Contents (Course Web Page)
– Slides Handouts, Lab documenta:on, Third party resources
• Reference Books – Thinking in C++, 2nd Ed., Bruce Eckel, Pren:ce Hall, 2000 – Arduino Cookbook, 2nd Ed., Michael Margolis, O’Reilly Media, 2011 – Digital Control of Dynamic Systems, 3rd Ed., G. Franklin, J. Powell, M. Workman, Adison-‐Wesley, 1997.
SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
6
What are Real-‐Time Systems? “A real-‐&me system is a type of hardware or so1ware that operates with a &me constraint”, From Wha:s.com, April 2008.
• Real-‐Time systems: must produce correct responses within a definite :me limit. If :me bounds are exceeded, then performance degrada:on and/or malfunc:on results. – Hard Real Time: it is impera:ve that the response to a s:mulus is given within a specified :me interval. – Soi Real Time: deadlines are important but the system s:ll func:ons if they are not completely sa:sfied.
• Common Fallacies: – Real-‐Time is equivalent to processing speed. – Rapid execu:on allows real-‐:me. SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
7
Examples • Soi Real Time: – WWW Browsers – Graphical User Interfaces
• Hard Real Time: – Telephone Communica:ons – Bank Check Deposit system (depends on countries)
• Not Real Time – Soiware Compila:on – Public Administra:on Services (depends on countries) SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
8
Safety-‐Cri:cal Systems • A system is Safety-‐Cri:cal if its failure may risk human lives. – an airplane control system – nuclear power plant control system.
• Safety-‐Cri:cal Systems must consider hard real-‐:me constraints.
SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
9
Example • Ground-‐Based Augmenta:on System
SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
10
What are Distributed Control Systems? "A distributed control system (DCS) refers to a control system usually of a manufacturing system, process or any kind of dynamic system, in which the controller elements are not central in locaBon (like the brain) but are distributed throughout the system with each component sub-‐system controlled by one or more controllers. The enBre system of controllers are connected by networks for communicaBon and monitoring“. From Wikipedia, the free encyclopedia, 27/08/2008
• Challenges
• Advantages – Modular organiza:on – Manegeable complexity – Programming and maitaining small components – More resilient to failures – Easier upgrades SCDTR 2013/2014 -‐ Lecture 1
– Communica:on between modules – Synchroniza:on between modules – Maintain system coherence – Distribute processing
A. Bernardino, C. Silvestre, IST -‐ ACSDC
11
Examples • Industry Automa:on : Belt type furnace.
SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
12
Examples • Automo:ve Industry : Vehicle control and automa:on
SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
13
Examples • Humanoid Robot iCub (www.icub.org) – Complex Hardware Architecture – many types of sensors (cameras, mics, imu, posi:on, tac:le, force), actuators (53 DC motors), networks (CAN-‐BUS, Ethernet, USB, FireWire,…). – Complex Soiware Architecture – processing power requirements demand several computers.
SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
14
• Autonomous Underwater Vehicle (AUV) control: – – – –
Process control. Process Interface. Monitoring Communica:ons. Data Communica:ons
Network (Ex. CAN Bus)
Examples A/D
Sensors
Computer
Process
D/A
Actuators
“ Infante” SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
15
The Prac:cal Project • A distributed ligh:ng control system. PC
PC
PC
Micro Controller
Micro Controller
Micro Controller
Presence Sensor
High Power LED
Light Sensor
SCDTR 2013/2014 -‐ Lecture 1
Presence Sensor
High Power LED
Light Sensor
A. Bernardino, C. Silvestre, IST -‐ ACSDC
Presence Sensor
High Power LED
Light Sensor
16
Project Phases • Implementa:on divided in 2 phases:
– Embedded System Programming and Local Control • • • •
Arduino Programming. Sensing and Actua:on. Digital Controller Implementa:on. Serial Communica:ons.
– Distributed System Programming and Global Control: • • • • •
PC programming in C++. Concurrent and real-‐:me primi:ves. Inter-‐process communica:on. Ethernet Communica:ons. Centralized and Distributed Op:miza:on.
SCDTR 2013/2014 -‐ Lecture 1
A. Bernardino, C. Silvestre, IST -‐ ACSDC
17