Sunteți pe pagina 1din 39

Microcontrolere si sisteme

integrate (incorporate-
embedded systems)
Arhitectura unui sistem incorporat, nivele
software si hardware, microcontrolere,
sisteme incorporate si câteva concepte
asociate: modele, funcții, beneficii,
constrângeri

1
Arhitectura unui sistem
incorporat
• Arhitectura unui sistem incorporat, la fel ca
si cea a unui sistem de calcul, este până
la urmă o abstractizare - o descriere
abstractă, mai mult sau mai puțin detailată
- a acestui sistem
• La nivel arhitectural componentele
hardware si software sunt reprezentate ca
niște elemente structurale definite prin
interacțiunea lor
2
De ce este importantă
arhitectura?
• Deoarece o arhitectură trebuie să pună in
evidență, in primul rând, si cerințele
(exigențele) de proiectare ale sistemului, ea
poate fi si o bază solidă pentru analiza si
verificarea calității acestuia, a performanțelor lui,
in diverse circumstanțe nominale sau degradate
• Posibilele structuri arhitecturale diferite rezultate
din astfel de analize pot fi apoi exploatate pentru
proiectarea unor produse viitoare cu
caracteristici similare, permițând astfel
reutilizarea cunoștințelor, ducând la scăderea
costurilor viitoare de proiectare si dezvoltare.

3
Arhitectura unui sistem
incorporat
• O arhitectura completă trebuie să fie
capabilă, funcție de gradul de
abstractizare utilizat, să pună in evidență:
• Funcțiile
• Atributele
• Beneficiile si avantajele
• Constrângerile impuse

4
Definirea si înțelegerea arhitecturii unui sistem
incorporat este o componentă esențială a
proiectării corecte si complete a unui astfel de
sistem

• Orice sistem incorporat, oricât ar fi de simplu sau de


complex ar fi, are o asociată o arhitectură
• O arhitectură este, prin definiție, un set de reprezentări
ale elementelor componente si ale relațiilor intre ele
– Înainte de a începe dezvoltarea, proiectarea propriu-zisă
trebuie să definească mai întâi o arhitectură.
• Arhitectura incorporată este utilă pentru a înțelege
toate componentele majore, de ce o anumită
componentă este acolo si de ce aceste componente
se comportă intr-un mod specific

5
De ce este importantă
arhitectura?
• O structură arhitecturală, chiar dacă este
grosieră si neformalizată, este mai bună
decât nimic
• Atâta timp cat o arhitectură pune in evidență,
intr-un fel sau altul, componentele critice ale
unui astfel de proiect si relația intre ele, ea ne
pune la dispoziție informații prețioase despre
cum anume sistemul poate îndeplini
cerințele/exigențele de proiectare si despre cum
anume sistemul poate fi construit finalmente, cu
succes
6
Un model simplu si general
pentru sistemele incorporate
Nivel (strat) Software aplicație
Opțional

Nivel (strat) Software sistem


Opțional

Nivel (strat) Hardware


Obligatoriu

7
Un model pentru sistemele
incorporate
• Modelul, la nivelul său cel mai de sus, ar trebui
să arate ce au in comun toate sistemele
incorporate
• Astfel toate au cel puțin nivelul/stratul (hardware)
sau au toate nivelele/straturile/ (hardware,
software sistem si software aplicație)
• Nivelul hardware conține toate componentele
fizice majore, in timp ce nivelele software sistem
si aplicație conțin tot ce înseamnă software (cod,
date) existent sau procesat de sistemul
incorporat
8
Un model pentru sistemele incorporate –
o reprezentare modulară
• Este vorba de reprezentarea vizuală a principalelor
componente si a funcțiilor asociate lor
– Modelul organizat pe nivele permite vizualizarea rapidă a
diverselor componente si a relațiilor intre ele
– Cu cat nivelul de abstractizare este mai ridicat, vizualizarea
este mai rapidă, dar mai puțin utilă pentru proiectare
– Fiecare din nivelele grosiere utilizate pană acum poate fi
descompus in continuare, pentru a pune in evidenta detalii
arhitecturale utile pentru proiectarea si realizarea sistemului
• Reprezentările arhitecturale modulare sunt tipice
pentru structurile care vor fi utilizate pentru a structura
întregul proiect incorporat, in ansamblul său
– Aceasta deoarece diversele module/elemente figurate in acest
tip de structură sunt, in mod tipic, funcțional independente
9
Standarde, specificații, de ce ?
• Standardele si specificațiile standardizate vor
impune cum anume aceste componente trebuie
să fie proiectate si ce alte componente sunt
necesare pentru ca sistemul să poată să le
integreze cu succes si să funcționeze si cu
ajutorul lor
• Standardele pot defini funcționalitatea care este
specifică fiecărui strat al modelului, ele putând fi
clasificate ca:
– standarde specifice unei anumite piețe de produse si
– standarde de uz general
10
Standarde, generale si specifice
pentru ce?
• Standardele generale sunt tipic cele legate de limbajele
de programare utilizate pentru nivelele software, dar le
includ si pe cele legate de protocoalele de comunicație
• Cele specifice se referă atât la hardware si la software:
– Electronica de consum (entertainment, infotaintement) si
aparatura electrocasnica (home appliances)
– Aparatura medicala (aplicații critice!)
– Automatizări industriale (posibile aplicații critice!)
– Comunicații si suport rețele.
– Industria automobilului (automotive, aplicații critice!))
– Industria aerospațiala si de apărare (aplicații critice!)
– Automatizarea birourilor si a casei/clădirii (office/home/building
automation)

11
Nivelul hardware – din ce este
alcătuit si ce ar trebui să știm..
• In primul rând din bazele fizice, legi si teoreme
fundamentale ale electricității si nu numai;
doar câteva care țin de domeniul alfabetizării
tehnice:
– Ce sunt si in ce se măsoară rezistența, capacitatea si
inductanța? Multiplii si submultiplii uzuali pentru
unitățile de măsură?
– Care sunt legile si teoremele fundamentale (legea lui
Ohm, teoremele lui Kirchhoff, inducția
electromagnetică-Faraday, etc. )?
– Curentul continuu, curentul alternativ, regimuri
tranzitorii?
– Ce înseamnă surse de tensiune, surse de curent ?
12
Nivelul hardware – din ce este
alcătuit
• Apoi mai există standarde, reprezentări (cvasi)standardizate
• Standardele sunt utilizate si pentru realizarea schemelor electrice
si electronice si ne permit să citim si să înțelegem o astfel de
schemă, de exemplu:
– Există scheme bloc, mai ușor de interes, si scheme detailate (acestea
sunt așa zisele scheme electronice)
– Simboluri pentru reprezentarea componentelor pasive si a celor active,
a tensiunilor de alimentare
– Interconexiuni intre ele (cablaje), reprezentarea unor magistrale
– O schemă electrică/electronică utilizabilă in practică nu arată
întotdeauna ca una din carte sau manual!
• Standarde mai mult sau mai puțin riguroase sunt utilizate si pentru:
– Nivelele logice: TTL, LVTTL, CMOS, etc.
– Reprezentarea diagramelor temporale pentru semnale numerice
(fronturi semnal, timpi de creștere, cădere, întârziere, tri-state, semnale
magistrale, etc.)
– Reprezentarea schemelor logice (simboluri porți, logica pozitivă sau
negativă, etc.)
13
Nivelul hardware – din ce este
alcătuit 2
• Tehnologia de montare a componentelor pin-through si tehnologia SMD:
ce înseamnă?
• Tehnologie de interconectare (ce sunt, cum arată fizic, ce caracteristici
au?):
– Cablaje imprimate, conectori, socluri, cabluri
– Materiale utilizate: conductori, izolatori
• Componente electronice pasive (ce sunt, cum arată fizic, ce caracteristici
au?):
– Rezistori: rezistori ficși si rezistori variabili, tipuri (tehnologii de realizare),
variante, caracteristici (dimensiuni, toleranța constructiva-precizia, puterea
nominală, etc.), rezistori variabili, valori nominale si marcarea lor (si codul
culorilor)
– Capacitori: variante (polarizați si nepolarizați), tipuri (tehnologii de realizare),
caracteristici (dimensiuni, toleranța constructivă, tensiune maximă, etc.), valori
nominale si marcarea lor (codul culorilor)
– Inductori/bobine, transformatoare: tipuri (tehnologii de realizare), variante,
caracteristici (dimensiuni, toleranța constructiva, valori maxime/nominale, etc.),
marcare valori
– Relee electromecanice, solenoizi si alte elemente de execuție inductive

14
Nivelul hardware – din ce este
alcătuit 3
• Componente electronice active (ce sunt, cum arată
fizic, ce caracteristici au?):
– Tranzistoare bipolare cu joncțiuni: pnp, npn, variante
(amplificatoare, de comutație, de putere, etc.)
– Tiristori, triaci
– Diode pn: diode de comutație, diode redresoare, punți
redresoare
– Tranzistoare MOSFET: PMOS, NMOS, tranzistoare de putere
– Alte diode: Zenner, Schottky, speciale
– Optoelectronice si altele: LED, fotodiode, fototranzistoare,
optocuploare, panouri de afișare cu cristale lichide (LCD),
senzori Hall
• Ce înseamnă, cu ce se ocupă, ce componente se
utilizează electronica “de putere” (power electronics)?
15
Nivelul hardware – din ce este
alcătuit -4
• Circuite integrate numerice (digitale)
– Circuite integrate pe scară medie si mică, circuite
simple: tipuri de porți existente fizic, circuite simple
combinaționale si secvențiale (decodificatoare,
multiplexoare, circuite bistabile, numărătoare,
registre, etc.)
– Circuite integrate pe scară largă, complexe - ele
reprezintă “inima” hardware a unui sistem
incorporat:
• Microprocesoare si microcontrolere
• Circuite de memorie (SRAM, DRAM, EEPROM, FLASH, etc.)
• Circuite periferice (I/O) complexe: controlere afișare LCD,
controlere rețea (Ethernet), etc
• Circuite logice programabile (PLD, FPGA) 16
Nivelul hardware – din ce este
alcătuit 5
• Circuitele integrate de mod mixt realizează trecerea, in ambele
sensuri, intre cele 2 “lumi”, cea analogica si cea discreta
(numerica/digitala in cazul nostru de interes)
– Convertoare analog-numerice: caracteristici de regim static si dinamic,
tipuri ?
– Convertoare numeric-analogice: caracteristici de regim static si dinamic,
tipuri ?
• Există si vor mai exista mult timp de acum înainte (din diverse
motive) funcții de prelucrare analogică a unui semnal, realizate
cu ajutorul unor familii dedicate de circuit integrate
• Circuite integrate analogice
– Amplificatoare operaționale (AO)
– Comparatoare analogice (CA) - este mai degrabă un circuit de mod
mixt, cu intrări analogice si ieșire numerică..
– Circuite fundamentale:
• conexiuni inversoare si neinversoare pentru AO/CA, convertoare curent –
tensiune, etc.
• Amplificatoare de măsurare: amplificatoare de instrumentație, amplificatoare
cu izolare
17
Nivelele software - din ce sunt alcătuite
Aplicaţii sau
aplicaţie
Nivel (strat) aplicație
Middleware:
Acces I/O, altul
decat prin SO
Sistem de operare (SO):
un RTOS, Linux sau Windows
in varianta embedded Nivel (strat) sistem
Firmware:
Bootloader,
Start_up

Hardware

18
Sistem incorporat
Nivelele software - din ce sunt
alcătuite 2
• Firmware: un program, tipic de dimensiuni relativ mici(denumit
uneori si micro program – a nu îl confunda cu
microprogramarea!), cu funcţii de control direct al hardware-ului,
care este instalat/programat in faza de producţie/fabricaţie intr-
o memorie de tip nevolatil (ROM, PROM, EPROM, EEPROM,
FLASH) a unui dispozitiv informatic.
– Tipic, actualizarea lui se face mai rar, si este mai complicată
procedural decât actualizarea unei aplicații software obișnuite
– Un exemplu de firmware este si ROM BIOS-ul întâlnit la
calculatoarele personale (SCUG)
• Middleware: un program care furnizează servicii aplicațiilor,
servicii care, din diverse motive, nu sunt oferite de sistemul de
operare; in general el este orientat pe comunicații si operații de
intrare - ieșire (I/O)
• RTOS (Real Time Operating System) – sistem de operare in
timp real, sau variante mai simple sau mai complicate de
programe care gestionează mai multe sarcini (tasks) in timp
real: nucleu (kernel), executiv (executive), planificator
(scheduler) de timp real 19
Nivelele software - din ce sunt
alcătuite, alte tehnologii..
• Limbajele de programare utilizate:
– Limbaje evoluate sau limbaje de asamblare (foarte puțin utilizate azi,
dar mai există aplicații, de mici dimensiuni si pentru ele - vezi start_up
code)
– Limbaje procedurale (C) sau orientate pe obiect (C++, Java)
– Compilatoare (C) sau interpretere (Basic, Forth, Java bytecode)
– Limbajul C (in sensul ANSI si/sau K&R ) este cel mai utilizat limbaj
pentru programarea sistemelor incorporate
– Utilizarea limbajelor orientate pe obiect (de ex. C++) este puțin
răspândită
• Mașinile virtuale - implementări integral software ale unor
arhitecturi de calcul “oaspete” (guest) care rulează pe o arhitectură
de calcul “gazdă” (host); aici este vorba de virtualizarea hardware-
ului
• Odată cu creșterea puterii de calcul a microcontrolerelor au început
să fie productive aplicatii ale lor si in lumea sistemelor incorporate
– Un exemplu mai cunoscut JVM – Java Virtual Machine , o mașină care
execută Java bytecodes, in variante in care se execută pe un sistem de
operare incorporat sau direct pe hardware 20
Nivelele software – standarde
• Standarde specifice unei piețe/categorii de
aplicații, protocoale de rețea:
– Ethernet, TCP/IP, HTTP, HTML, SMTP
– CANOpen, DeviceNet (protocoale de comunicație
având ca baza magistrala CAN)
– DTV (televiziune digitala)
– DO-178B (aero), EN-50128 (feroviar)
• Standarde de uz general
– Standarde pentru limbajul C (Misra C, C99, etc.)- vezi
si prezentarea ASI_0.pdf!
– Standarde pentru limbajul C++ (C++11)
21
Economie si microcontrolere
• Așa cum s-a afirmat la un moment dat, de cele mai multe ori un
microcontroler este ”inima” unui sistem incorporat, existând si o
puternică motivație economică pentru aceasta
• Microcontrolerele sunt circuite integrate complexe care au un preț de cost
remarcabil de redus in condițiile in care oferă performante de calcul
deosebite.
– Un microprocesor utilizat intr-un calculator personal poate costa 100USD sau
mai mult, dar prețul unui microcontroler poate începe undeva in jur de 0.25USD.
• De ce se întâmplă aceasta?
• Microcontrolerele ne oferă de fapt putere de prelucrare numerică a
informației la un preț de cost extrem de redus deoarece ele in primul rând
valorifică extrem de bine conceptul de producție de masă.
• Microcontrolerele sunt circuite numerice programabile software de
utilizator, astfel ca un producător poate proiecta si realiza un singur tip de
microcontroler care să satisfacă cerințele mai multor clienți sau aplicații
(atunci când este utilizat software-ul specific aplicației).
– Aceasta duce la scăderea prețului per circuit ducând la amortizarea costurilor de
proiectare după producția si vânzarea câtorva milioane de unități.

22
Economie si microcontrolere
• Costul unui circuit integrat (in particular si al unui microcontroler sau
microprocesor) depinde de 2 factori: costurile de inginerie
nerecurente/nerepetitive (NRE- Non-Recurring Engineering) si costurile
recurente/repetitive.
• Costurile de tip NRE includ costurile de proiectare si de verificare prin
simulare, si toate activitățile desfășurate pană la realizarea unui prototip
care funcționează conform specificațiilor.
• Costurile recurente sunt cele implicate de producția fiecărui circuit integrat,
materiile prime, prelucrarea lor, testarea si încapsularea.
• Suprafața microcircuitului este factorul esențial care determină costurile
recurente.
• Cu cat ea este mai mică, cu atât mai multe circuite vor încăpea pe un wafer
de un diametru dat, micșorând costurile recurente.
• O explicație simplistă este si că tipic un microcontroler este mai „mic” decât
microprocesorul utilizat intr-un calculator personal (de fapt un sistem de
calcul de uz general) astfel ca el va cost mai puțin, la același număr de
circuite produs/vândut.
• Costurile NRE se împart la numărul de circuite produse/vândute astfel că,
cu cat creste numărul de circuite produse, cu atât scade prețul unui singur
circuit.
23
Conceptul de sistem incorporat
(embedded system)
• Un SI este un sistem de calcul dedicat unei anume aplicații care
face parte dintr-un sistem mai mare sau este o parte a unui
dispozitiv.
• Utilizarea unui sistem de calcul mai degrabă decât a altor
metode/modalități de control (cum ar fi circuite numerice/logice ne-
programabile, dispozitive electromecanice - logică cu relee sau
dispozitive hidraulice/pneumatice) oferă multe beneficii, cum ar fi:
– posibilitatea utilizării unor algoritmi de control sofisticați,
– controlul precis al dimensiunii timp,
– costuri unitare mai reduse,
– costuri de dezvoltare mai reduse,
– flexibilitate mai mare,
– dimensiuni si greutate mici,
– consum energetic mai redus.

24
Conceptul de sistem incorporat
(embedded system)
• Aceste caracteristici de bază pot fi folosite pentru a
îmbunătății sistemul in ansamblu sau dispozitivul in
cauză, in mai multe feluri:
– Prin îmbunătățirea performanțelor (la modul general)
– Prin adăugarea de funcții si caracteristici suplimentare sau noi
– Prin reducerea costurilor
– Prin creșterea siguranței in funcționare
• Datorită acestor beneficii validate de mult timp in
practica inginerească, in fiecare an sunt produse si
vândute miliarde de microcontrolere utilizate la
realizarea unor sisteme incorporate pentru o gamă
extrem de largă de produse finale

25
Rețele incorporate (embedded networks)
• Anumite sisteme incorporate sunt alcătuite de fapt la rândul lor din mai
multe sisteme de calcul incorporate (noduri) care comunică intre ele prin
intermediul unei rețele incorporate oferind astfel si mai multe beneficii.
• Astfel, fiecare din aceste sisteme de calcul (noduri) folosește un protocol de
comunicație care permite, pentru această rețea, utilizarea unei conexiuni
multi-punct, adică utilizarea aceluiași set comun de fire (in loc să existe cate
un set dedicat pentru fiecare rută posibilă de comunicație, ca in cazul unei
legături punct la punct).
• Există câteva avantaje evidente care rezultă din utilizarea a mai puține fire:
– Costuri mai mici ale materialelor si o greutate mai redusă a sistemului, fiind
necesare mai puține fire
– Fiabilitate mărită, deoarece exista mai puține legături/conexiuni care se pot
defecta
– Costuri mai mici cu forța de munca necesară pentru asamblare, sunt mai putine
fire de conectat si asta se face mai repede
– Alte avantaje rezultă din posibilitatea ca nodurile, fizic separate, sa-si
împărtășească aceiași informație.
• De aici vor decurge noi caracteristici, altfel imposibil de implementat, si o creștere a
eficienței de ansamblu a sistemului final, obținută prin coordonarea activității intre
diferite noduri

26
Beneficiile tipice ale utilizării
unui sistem incorporat
• In acest context un exemplu foarte bun este cum anume sistemele incorporate au
afectat industria automobilului, ținând cont că, actualmente, un automobil modern
conține câteva zeci de microcontrolere, câteva zeci de sisteme incorporate.
• 1. Performanțe sporite, randament mai bun
• Controlul motorului unui automobil cu ajutorul unui sistem incorporat reprezintă
modalitatea prin care se poate micșora poluarea produsă, se poate creste
randamentul de utilizare a combustibilului si se pot reduce costurile de operare
• Arderea benzinei amestecate cu aerul intr-un motor cu combustie internă, cu
aprindere prin scânteie (motor Otto), este un lucru care poate fi destul de complicat,
dacă vrem să maximizăm randamentul si să minimizăm in același timp poluarea
produsă de acesta.
– Principalul factor care afectează emisiile poluante este raportul masic intre aer si
combustibil (benzină).
– Raportul ideal este de 14.7 la 1, si convertorul catalitic este proiectat să funcționeze cel mai
eficient (randament maxim) la acest raport.
– Dacă este prea puțin aer (amestec bogat) atunci se produc cantități excesive de oxid de
carbon (CO) si hidrocarburi (HC).
– Dacă este prea mult aer (amestec sărac) atunci se vor produce cantități mai mari de oxizi de
azot (NOx).
• Astfel se dorește ca pentru un motor, pentru fiecare din injectoarele sale, să avem
injectată cantitatea corectă de combustibil.
– Aceasta depinde de masa de aer din cilindru, care la rândul ei depinde de temperatura si
presiunea aerului extern.
– Acestea la rândul lor depind de vreme, de altitudine, de faptul ca motorul este încălzit sau 27
nu.
Beneficiile tipice ale utilizării
unui sistem incorporat
• 1. Performanțe sporite, un randament mai bun
• Alt factor esențial este momentul in care se aprinde amestecul,
momentul de timp in care se generează scânteia.
– Dacă aceasta este dată prea devreme, este mai mult timp pentru
combustie in cilindru, înainte ca supapa de evacuare să se deschidă.
– Acesta mărește temperatura in cilindru si modifică procesul de
combustie, afectând concentrațiile de CO, HC si NOx in gazele
evacuate.
• Actualmente realizarea unui sistem de control mecanic sau
electromecanic care să ia in considerare toți acest factori si să
controleze cantitatea de combustibil si momentul aprinderii, deși
teoretic posibilă, este total nepractică si neeconomică.
• Din fericire această problemă complexă de calcul si control este
rezolvată, de ceva timp, cu ajutorul unor microcontrolere, la un preț
de cost mai mult decât rezonabil.

28
Beneficiile tipice ale utilizării
unui sistem incorporat
• 2. Reducerea costurilor
• Există mai multe căi prin care utilizarea unui sistem incorporat
poate reduce costurile asociate unui dispozitiv oarecare; in
particular câteva exemple din industria automobilului ar fi:
• Costuri de componente: disponibilitatea unei puteri de calcul
incorporate poate, in anumite limite, sa compenseze, de exemplu, o
calitate mai proasta a unor semnale, permițând eventual utilizarea
unor componente mai ieftine.
– Un exemplu tipic, este un senzor de presiune ieftin a cărui caracteristica
statica de transfer depinde puternic de temperatura. Măsurând
temperatura, tot cu ajutorul unui senzor ieftin, este posibil sa se
compenseze , cu relativa ușurința, eroarea data de variația temperaturii
de lucru
• Costuri de fabricație: majoritatea automobilelor moderne utilizează
rețeaua si protocolul incorporat CAN (Control Area Network) pentru
comunicația in interiorul vehiculului.
– Existența si utilizarea acestei rețele CAN reduce costurile de asamblare
si ale componentelor (mai puține fire) datorita unor cablaje mai simple
29
Beneficiile tipice ale utilizării
unui sistem incorporat
• 2. Reducerea costurilor
• Costuri de funcționare: așa cum s-a menționat deja,
utilizarea unui sistem incorporat pentru controlul
motorului unui automobil, face funcționarea acestuia mai
eficientă, prin creșterea randamentului, micșorarea
consumului si deci reducerea costurilor de
funcționare/operare
• Costuri de întreținere: un exemplu este predicția
duratei de utilizarea a uleiului, bazată pe istoria de
utilizare a motorului (porniri, durată funcționare), făcând
posibilă avertizarea utilizatorului atunci când este
necesar un schimb de ulei

30
Beneficiile tipice ale utilizării
unui sistem incorporat
• 3. Mai multe caracteristici posibile
• Utilizarea unor microcontrolere împreună cu un software-
ul specific aplicației oferă nenumărate posibilități de
adăugare a unor caracteristici noi si de particularizări
client, putând oferi avantaje majore din punct de vedere
al competitivității;
• Câteva exemple bine cunoscute, tot din industria auto:
– controlul automat al vitezei (cruise control),
– airbag-uri inteligente a căror acțiune este corelată cu greutatea
pasagerului,
– scaune inteligente care memorează preferințele de reglaj ale
utilizatorilor,
– controlul automat al iluminării interne si externe cu maximizarea
duratei de viață a bateriei,
– controlul inteligent al ștergătoarelor de parbriz, etc..
31
Beneficiile tipice ale utilizării
unui sistem incorporat
• 4. O mai bună siguranță in funcționare
– Utilizarea sistemelor si rețelelor incorporate oferă multe
oportunitatea pentru îmbunătățirea siguranței in funcționare, cum
ar fi
– Controlerul de motor (ca si alte controlere implicate) pot furniza
mai multe moduri degradate de funcționare, care să păstreze
automobilul cvasi-funcțional - deplasabil prin mijloace proprii
(limp-home mode), chiar dacă unul sau mai mulți senzori si/sau
dispozitive se defectează.
– Generarea de avertismente despre apariția unor defecte
iminente.
– Generarea de informații de diagnoza pentru conducător sau
personalul de service, economisind consistent timpul de
depanare

32
Funcțiile sistemelor incorporate
• Există câteva funcții comune pe care sistemele incorporate le pot asigura
• Un sistem de control/reglaj automat urmărește valorile unor mărimi din
proces si modifică variabilele de ieșire ale procesului pentru a păstra un
punct de funcționare dorit.
– De exemplu pentru un automobil, un sistem automat de control al vitezei va mări
accelerația dacă viteza este mai mică decât viteza dorită si o va micșora dacă
viteza e prea mare.
• Adeseori este vorba de parcurgerea unor secvențe de stări multiple si
diferite.
• De exemplu, motorul unui automobil parcurge mai multe stări sau
moduri/legi de control atunci când trebuie să pornească de la rece si să
funcționeze.
– La demaraj/pornire la rece, când motorul este antrenat de demaror, amestecul
combustibil/aer este unul bogat, depinzând de temperatura agentului de răcire.
– Odată ce motorul a pornit el trebuie să treacă in starea de încălzire, astfel încât
temperatura lui si gazelor de evacuare să crească către valorile ideale.
– Si in aceasta stare amestecul si aprinderea trebuie reglate corespunzător, bazat
si tot temperatura fluidului de răcire.
– Odată ce motorul a ajuns la temperatura ideală de lucru, se intră intr-un regim
staționar, dar in care se căută să se mențină o viteză minimă de rotație, stabilă,
luând in considerare toate variațiile de sarcină/încărcare ale motorului (aer
condiționat, servo direcție, sistem electric, etc.).. 33
Funcțiile sistemelor incorporate
• Prelucrarea numerică a semnalului presupune o modificare a
semnalelor de intrare pentru a elimina/micșora zgomotul asociat lor,
a pune in evidentă doar componentele de interes ale semnalului
si/sau să compenseze influenta altor factori.
– De exemplu, in cazul unui sistem hands-free dintr-un automobil, acesta
poate presupune utilizarea mai multor microfoane si/sau difuzoare,
controlul activ al zgomotului pentru eliminarea zgomotelor de joasă
frecventă asociate drumului.
– Alți senzori de zgomot pot fi utilizați pentru eliminarea altor zgomote
(aprindere, etc.)
• Capacitatea de a comunica intr-o rețea locală face posibil ca
dispozitivele conectate la aceasta rețea să schimbe informație intre
ele.
– De exemplu sistemul care controlează motorul ar trebui să trimită către
un alt utilizator din automobil un mesaj care să indice viteza/turația.
– Pentru aceasta valoarea vitezei/turației trebuie formatată corespunzător
protocolului de comunicație utilizat si apoi transmisă in interfața fizică a
rețelei pentru transmisie.

34
Atribute ale sistemelor
incorporate
• Un sistem incorporat este proiectat astfel incat dispozitivul sau sistemul
rezultat să se comporte in modurile dorite de proiectant
• Un SI trebuie să răspundă adecvat (să fie reactiv) la evenimentele care
apar in exteriorul lui, fie ca este vorba de apăsarea unui buton sau de un
motor care a ajuns la o temperatură prea mare.
– Un sistem care nu este suficient de reactiv (nu are o viteză de reacție suficientă)
are șanse mici să ajungă un produs de succes!
– De exemplu ne așteptăm ca o comandă de comutare a canalului pentru un TV
să se desfășoare intr-o durată rezonabilă de timp, maxim secunde si nu zeci de
secunde !
• Pentru SI zise de timp real, dimensiunea timp a răspunsului (a
reactivității) este critică deoarece un răspuns întârziat este un răspuns
greșit!
– Aprinderea combustibilului intr-un cilindru este critică din punct de vedere al
momentului de timp in care are loc, deoarece un moment greșit poate însemna
chiar si defectarea sau distrugerea motorului, ca să nu mai vorbim de
reducerea puterii, a randamentului si creșterea poluării.

35
Atribute ale sistemelor
incorporate (2)
• Un SI necesită in mod tipic metode de detecție, diagnoză si
tratare a defectelor care să asigure in final o funcționare sigură si
fiabilă.
– De multe ori codul necesar pentru tratarea defectelor are dimensiuni
mai mari si este mai complex decât cel care tratează funcționarea
normală.
• Este foarte ușor de proiectat ceva in contextul “totul merge bine si
funcționează normal”.
• Este însa mult mai greu de determinat care sunt metodele de tratare
a cazurilor excepționale si anormale.
– Ce si cum anume se va defecta?
– Care din aceste defecte pot duce la apariția unor situații periculoase,
pot duce la accidente?
– Cum trebuie sistemul să trateze aceste defecte?
– Cum vom testa dacă sistemul tratează corect aceste defecte?
• Sunt câteva din întrebările esențiale cărora trebuie să le răspundă
proiectanții..
36
Atribute ale sistemelor
incorporate (3)
• Ca beneficiar/client al unui SI specific ne așteptăm ca el
să funcționeze independent pentru durate lungi, de ani
de zile, fără intervenția unui operator sau personal
calificat pentru reglaje sau re-inițializare.
• Pentru un astfel de sistem ne așteptăm ca el să fie
robust si să ne bazăm pe faptul ca el o să funcționeze
întotdeauna.
• Deoarece este foarte dificil si mai ales scump să scrii un
astfel de software fără defecte (bug-free..) sunt
concepute si prevăzute mecanisme care să detecteze o
comportare anormală si să răspundă corespunzător la
ea (eventual prin re-inițializarea sistemului).

37
Constrângeri impuse sistemelor
incorporate
• Sistemele integrate presupun adesea si unele constrângeri care limitează
opțiunile disponibile pentru proiectant, dar care pot duce la soluții creative si
elegante. Aceste constrângeri sunt in mod tipic diferite de cele impuse
sistemelor de calcul de uz general
• Costurile reprezintă o constrângere comună.
– Multe aplicații care utilizează sisteme integrate sunt vândute pe piețe foarte
competitive, unde prețul este un factor major.
– Acesta este si motivul pentru care un fabricant utilizează adesea sub-contractori
pentru proiectarea si realizarea unor sub-sisteme individuale.
– Aceasta va permite acestui fabricant să declanșeze si o competiție intre potențialii
sub-contractori, aceasta având ca efect o eventuala scăderea preturilor/costurilor.
• Mai ales pentru aplicațiile portabile si mobile pot exista limitări de
dimensiuni si greutate.
– Un sistem integrat pentru emițătorul de telecomandă a accesului intr-un
autoturism trebuie să aibă, împreună cu partea radio, dimensiuni foarte mici
pentru a putea fi atașat la „cheia” acestuia.
– Aeronavele si navele spațiale sunt aplicații deosebit de sensibile in ce privește
greutatea, deoarece, de exemplu, un avion mai greu înseamnă mai mult
combustibil consumat pentru a obține aceiași distantă de zbor.
– Pentru o navă spațială, de exemplu, costul lansării este proporțional cu greutatea
care trebuie plasată pe orbită.
38
Constrângeri impuse sistemelor
incorporate 2
• Puterea sau energia disponibile pentru funcționarea unui SI pot fi
limitate.
– O baterie/acumulator are o cantitate limitată de energie electrică, in timp
ce un sistem de alimentare bazat pe celule solare generează o putere
electrică limitată.
– Funcționarea la temperaturi ridicate face ca răcirea disponibilă
(evacuarea de energie termică) să fie limitată, limitând si puterea
electrică care poate fi utilizată
• Condițiile de mediu in care trebuie să funcționeze un SI pot fi
foarte aspre, dure.
– Toată „electronica” aflată sub capota unui automobil modern trebuie să
funcționeze corect intr-o gamă largă de temperatură (- 40°C la
+125°C), in prezența vibrațiilor, șocurilor, a umezelii si a umezelii
sărate.
– Bujiile cu scânteie si diversele sarcini inductive comutate (motoare,
generatoare, solenoizi) generează energie electromagnetică
considerabilă, intr-o bandă foarte largă, fiind o sursă majoră de
perturbații si interferență electromagnetică pentru tot ce înseamnă
electronica automobilului
39