Sunteți pe pagina 1din 6

Universitatea POLITEHNICA București 

Facultatea de Automatică şi Calculatoare 


Departamentul de Automatică şi Informatică Industrială 

 
 
Raport 
 
Modelarea Sistemelor Cyber-Fizice  
din multiple abordări 
 
 
 
 
 
Masteranzi gr. MPI 

Donciu Ecaterina
Ulinici Andrei 

 
 
 
 
 

București 2018 
1. Definiție 
 
Sisteme  cyber-fizice  critice,  precum  dispozitive  medicale,  mașini  autonome,  roboți  și 
sisteme  inteligente  de  transport,  se  compun  atât  dintr-o  parte  hardware,  cât  și  dintr-o  parte 
software.  Cele  două  părți  comunică  între  ele,  cea  hardware  executând  comenzi  date  de 
software sau direct de operatorul uman. 
Sistemele  fizice  sunt  adesea  independente,  însă  pot  cauza  accidente  ce  adaugă 
costuri  suplimentare  sau  chiar  pot  răni  operatorii  lor.  Astfel,  dezvoltarea  programelor  ce 
controlează  aceste  sisteme  nu  se  pot  baza  pe  încercări  („trial  and  error”)  şi  trebuie  stabilit 
foarte bine rolul operatorului uman. 
Întrucât  sistemele  cyber-fizice  au  roluri  deosebit  de  importante,  funcționalitățile  lor 
trebuiesc  testate  și  validate  până  la  cel  mai  mic  detaliu  și  în  toate  condițiile  posibile  în  care 
pot  funcționa.  Verificările  din  timpul  proiectării  și  dezvoltării  ar  putea  fi  fezabile  dacă  s-ar 
face  anumite  simulări,  însă acestea nu sunt suficiente și astfel trebuie realizate verificări și în 
timpul  operării propriu-zise („runtime”), prin observarea intrărilor și ieșirilor, precum și apariția 
erorilor în mediul de producție. 
 
 

2. Limbaje de modelare 
 
În  viziunea  autorilor  articolului,  există  două  aspecte  principale  de  modelare:  “design 
time” și “runtime”.  
 
a) “Design  time”/modelele  din  timpul  proiectării  ​–  descriu  fie  configurația  inițială, 
precum  structura  și  topologia,  fie  comportamentul  („behavior”).  Informația  este 
statică,  nu  se  modifică  în  timpul  execuției.  Acest  tip  de  proiectare  se  folosește  la 
lansări de componente software sau la fișiere de configurare. 
 
b) “Runtime”/modelele  din  timpul  execuției  – ​   de  asemenea  numite  modele  reale  („live 
models”),  întrucât  extrag  informații  despre  sistem  și  funcțiile  sale  în  timp  real. 
Informațiile  sunt,  de  regulă,  eterogene.  Totodată,  sunt  preluate  și  informații  despre 
mediu și se verifică obiectivele pentru rulare. 
 
Fiecare abordare cuprinde câte trei concepte de modelare: 
‒ Cerințe​ (​ specifică proprietățile sistemului) 
‒ Informațiile despre mediu 
‒ Informațiile  platformei ​(descriu senzorii disponibili, nodurile computaționale și elementele de 
acționare  ale  sistemului;  de  asemenea,  încapsulează  arhitectura  funcțională  cu  informații 
despre lansări)​[1] 
 
Pentru  a  prezenta  abordarea  de  modelare  “design  time”  și  “runtime”  pentru  sistemele 
cyber fizice, autorii au utilizat SysML Standard. 
SysML  (Systems  Modeling  Language)  reprezintă  un  limbaj  de  modelare,  care  suportă 
specificarea,  analiza,  proiectarea,  verificarea  și  validarea  unei  game  largi  de  sisteme 
complexe.  Aceste  sisteme  pot  include  hardware,  software,  informații,  procese,  personal  și 
facilități. [2] 
Limbajul  este  destinat  să  sprijine  specificarea  arhitecturii  sistemelor  și  precizarea 
componentelor  acestora,  care  pot  fi  apoi  proiectate  folosind  alte  sisteme  specifice 
domeniului. 

2
SysML  reutilizează  un  subset  de  UML  2  și  oferă  extensii  suplimentare  pentru  a 
satisface cerințele limbajului. Taxonomia diagramelor SysML este prezentată în figura 1. 

 
Figura 1 - Taxonomia diagramelor SysML [2] 
 
Conform  figurii  1  putem  observa  că  SysML  nu  utilizează  toate  tipurile  de  diagramele 
UML,(cum  ar  fi  diagrama  de  obiecte  etc.)  ceea  ce  corespunde  definirii  că  SysML  reprezintă 
un subset al UML 2. 
Pe  lângă  diagramele  reutilizate  din  UML  2  cu unele modificări sau nu, în SysML apar 2 
diagrame noi: diagrama de cerințe și diagrama de parametri. 
– Diagrama  de  cerințe  -  reprezintă o diagramă bazată pe cerințele de text și relația dintre 
cerințe și alte elemente de model care le satisfac sau le verifică.[2] 
– Diagrama  de  parametri  -  ​descrie  constrângerile  dintre  proprietățile  asociate  blocurilor. 
Această diagramă este utilizată pentru a integra modele de comportament și structură 
cu  modele  de  analiză  inginerească,  cum  ar  fi  performanța,  fiabilitatea  și  modelele  de 
proprietate în masă. [2] 
 
Utilizând  suportul  oferit  de  SysML,  autorii  în  cadrul  articolului,  au  prezentat 
principalele provocări în definirea timpului de proiectare (“design time”) cât și a modelului live 
(“live  model”),  utilizând  ca  exemplu  un  depozit  inteligent.  De  asemenea  ei  au  remarcat 
caracteristicile lipsă, precum și avantajele și limitările limbajului SysML. 
 
Pentru  ilustrarea  exemplului  abordat  de  autori,  au  fost  utilizate  următoarele  tipuri  de 
diagrame:  diagrama  cu  blocuri  de  definire,  diagrama  cu  blocuri  interne  și  diagrama  de 
pachete. 
 

3. Metamodele 
 
Pentru  prezentarea  metamodelelor pentru sistemele cyber fizice, a fost utilizat SysML. 
SysML suportă metamodelarea prin diagrame tip bloc de definție (block definition diagram). 
Folosind  metamodele,  se  pot  defini  tipuri  de  noduri,  atribute  de  noduri  și  tipuri  de 
relații.  Aceasta  permite  descrierea  constrângerilor  privind  structura  de  ansamblu  asupra 
modelului de sistem la nivel de tipologii. 
În  vizunea autorilor, ​atributele sunt considerate implicit “read-only” , reprezentând niște 
surse de informații. 
Semnalele  ​sunt  reprezentate  în  SysML  prin  proprietăți  de  tip  flux.  Acestea  se bazează 
pe  datele  primite  și  astfel  sunt  variabile  în  timp.  Semnalele  pot  fi  în  timp  discret  sau  în  timp 

3
continuu.  Valoarea  semnalelor  discrete  se  schimbă  la  intervale  regulate,  pe  când  valoarea 
celor continue se poate schimba oricând. 
Totodată, ​Evenimentele​ sunt dependente de timp, însă doar în timp discret. 
 
În  cadrul exemplului de metamodel al depozitului inteligent prezentat în figura 2 putem 
observa următoarele: 
– Forklift  (stivuitorul)  -  este  element  de  tip  root,  care  conține  un  motor  și  cel  puțin  un 
microcomputer și cel puțin o cameră de bord; 
– Microcomputer​ - este descompus în procesoare și adaptoare periferice; 
– Motorul​ - încapsulează ECU (unitate de control) 
 

 
Figura 2 - Exemplu de metamodel cu marginile și atributele izolate (“Example 
metamodel with containment edges and attributes”)[1] 
 
Conform  autorilor, metamodelele ​sunt utilizate ​în momentul proiectării ​(“design time” ) 
pentru  crearea  unui  model  funcțional  care  să  satisfacă  cerințele,  să  definească  structura 
modelului platformei și să descrie posibilele entități din mediul înconjurător. 
 
Tehnicile  de  modelare  folosite  în  SysML oferă suport atât în timpul proiectării, cât și la 
execuție.  La  proiectare  trebuie  să  se cunoască metamodelul sistemului, iar la execuție există 
condiția  ca  metamodelul  să  rămână  neschimbat,  însă  acesta  se  poate  extinde  cu  noi 
componente. 
Metamodelele  prezentate  cuprind  tipuri  cu  domeniu  specific.  Instanțele  de  modelare 
pot avea numai elemente cu tipuri și relații definite în cadrul metamodelului. 
Pe  baza  capabilităților,  obiectele  se  pot  grupa  în  funcție  de  tipurile  descrise  în 
ontologii. 
 

4. Exemplu de sistem cyber-fizic 


 
În  articolul  de  față  este  abordat  un  exemplu  concret  de  model  de  sistem  cyber-fizic. 
Astfel,  pentru  un depozit inteligent au fost create modele de tip live și design time. Se discută 
însă doar despre modele cu platformă de execuție, fără cerințe și informații despre mediu. 
  
În  viziunea  autorilor,  modelele  dețin  și  informații  cu  privire  la  proprietățile  de  runtime 
pe  baza  cerințelor.  Pentru  a  prezenta  aceasta  în  metamodel,  cerințele  sunt  definite  prin 

4
obiectul  „Goal”,  deținut  de  un  „Safety  critical  device”.  Aceste  două  obiecte  sunt  integrate 
într-un  ​pachet​,  similar  unei biblioteci. Din acest pachet, denumit „Safety”, ce include concepte 
esențiale  pentru  verificarea  siguranței,  va  moșteni  un  alt  pachet,  „Device  ontology”,  cu 
informații  despre  tipurile  de  dispozitive,  precum  stivuitor.  La  rândul  său,  din  acest  pachet  se 
desprinde  un  alt  pachet,  „Acme  truck”,  ce  conține  un  anume  tip  de  stivuitor,  fabricat  de  o 
anume firmă. 
  
Modelarea instanțelor 
Modelele  instanțiate  descriu  o  configurație  concretă  a  sistemului  și  pot arăta multiple 
concepții. 
Spre  exemplu,  pentru  modelarea  cerințelor  în  timpul  proiectării  se  pot  crea  modele de 
comportament, precum diagrame de stare. 
Se  pot  modela  și  informațiile  despre  mediu  și  platformă  la  nivel  de  instanțe,  spre 
exemplu prin specificarea cazurilor de testare. 
La runtime, pot fi instanțiate modele reale la anumite intervale de timp. 
Spre  exemplu,  așa  cum  este  prezentat  în  figura  3,  la  momentul  t​0  există  în  depozit 
stivuitor1 și stivuitor2, fiecare cu proprietăți specifice. 

 
Figura 3. Modele reale la momente diferite (“Live models at different points of 
time”)[1] 
 
Ulterior, la momentul t​1​ un stivuitor va pleca, iar altul îi va lua locul. 
SysML  nu  are suport pentru modelare la nivel de instanțe, însă se recomandă folosirea 
diagramelor de tip blocuri de definire. 
  
Metamodele cu șabloane 
În  modelarea  prin  instanțe  se  pot  defini  șabloane,  cu  atribute predefinite și margini de 
referință,  ceea  ce  reprezintă  un  avantaj  atunci  când  modelele  se  schimbă  frecvent.  Așadar, 
pentru  metamodelul  depozitului  inteligent  se  poate  defini  un  șablon  pentru  stivuitor,  ce 
conține  motor,  unitate  de  procesare  și  cameră  de  bord.  La  rândul  său,  microprocesorul 
unității de procesare are un șablon cu adaptor periferic și unitate de control (ECU). 
Subtipul  de  stivuitor  cu  furci  scurte,  în  schimb,  dispune  de  trei  camere  de  bord  ce  pot 
avea rezoluții diferite, și un motor ce are o anume valoare de rotații maxime pe minut. 
SysML  suportă  acest  tip  de  metamodele  cu  șabloane  prin  diagrame  de  tip  blocuri 
interne. 
  

5
5. Contribuțiile echipei 
 
Andrei - 1. Definitie sistem cyber-fizic, 4. Exemplu de sistem cyber-fizic 
Ecaterina - 2. Limbaje de modelare, 3. Metamodele 
  

Bibliografie 
  [1]  Towards  Modeling  Cyber-Physical  Systems  From  Multiple  Approaches  [Online]. 
Available: http://real.mtak.hu/57699/1/Minisy2017_Bur.pdf 
  [2]  Object  Management  Group,  “OMG  Systems  Modeling  Language,”  p.  320,  2015.  [Online]. 
Available: http://www.omg.org/spec/SysML/1.4/PDF/