QNX - studiu de caz

Automatizari

de Mircea Badut

QNX - studiu de caz

De peste trei decenii sistemul de operare QNX constituie o alegere de referinţă pentru implementarea de automatizări controlate informatic. Deşi în ultimii ani el a părut a intra într-un con de umbră (mai ales pe piaţa europeană), avem mărturii despre revenirea sa, iar cazul prezentat succint mai jos ne confirmă faptul că el îşi continuă linia de comportament remarcabil în aplicaţiile de automatizare.

Sistem de operare în timp real

Da, creatorii QNX-ului s-au inspirat din arhitectura UNIX, însă l-au construit într-un fel foarte adaptat pentru aplicări pretențioase privind dinamica proceselor și capabilitățile de interfațare. A rezultat un RTOS (real-time operating system) cu nucleu extrem de compact (micro-kernel), pretabil pentru aplicații de automatizare complexe (aplicații cu logică dificil/imposibil de implementat prin PLC-uri).

Ca fapt divers, dar destul de sugestiv privind abilitățile sale, aș aminti varianta desktop a lui QNX Neutrino, publicată acum un deceniu, care reușea să ruleze de pe o singură dischetă un sistem de operare cu interfață grafică, în vremuri când sistemele Windows, UNIX și MacOS se lăfăiau pe discuri optice de sute de ori mai încăpătoare. (Încă mai păstrez acea dischetă.

Cerinţe drastice în aplicările feroviare

Compania MEN Mikro Elektronik GmbH, din Nüremberg, Germania, s-a înhămat la un proiect deosebit – ,,Sistem automatic de protecție feroviară’’–, care trebuia nu doar să satisfacă necesitățile funcționale ale garniturilor de tren vizate (presupunând implicit un nivel înalt de precizie și de fiabilitate), ci și cerințele informatice specifice certificării ,,EN 50128 SIL 4’’.

În general, orice sistem a cărui funcționare defectuoasă poate duce la vătămări umane sau la pierderi materiale este supus reglementărilor privind siguranța funcționării (așa cum iteram și în T&T nr.3/2015). Astfel că nici transportul feroviar nu poate scăpa de această atenție.

Standardul european EN 50128 (,,Railway applications - Communication, signalling and processing systems - Software for railway control and protection systems") se referă la procedurile și la cerințele tehnice pe care trebuie să le întrunească sistemele electronice folosite în aplicațiile informatice destinate controlului căilor ferate și protecției/siguranței transportului feroviar. Procesul de conformare cu aceste norme presupune inclusiv verificarea software-ului, validarea arhitecturilor și a algoritmilor de programare, documentarea testelor de stres ale aplicațiilor, raportarea (și raportabilitatea nelimitată) a evaluărilor ș.a.m.d. De asemenea, standardul EN 50128 propune mai multe nivele de integrare a securității (SIL), fiecare categorie de testare urmând a fi evaluată la recomandarea corespunzătoare (R -,,recommended’’, HR - ,,highly recommended’’).

Mai observăm faptul că un astfel de proiect trebuie să se conformeze în primă instanță și normelor mai generale, precum IEC 61508 (Functional Safety of Electrical/Electronic/Programmable Electronic Safety-related Systems).

De obicei, proiectele care trebuie să obțină o certificare privind siguranța în funcționare necesităde două-trei ori mai mult timp decât proiectele de aceeași complexitate tehnică, dar care nu trebuie să se conformeze normelor, uneori eforturile necesare certificării fiind mai mari decât cele pentru dezvoltarea componentei tehnice.

Materializarea MEN

Ca răspuns, compania MEN a elaborat soluția MTCS (Modular Train Control System), un sistem de automatizare capabil să materializeze funcțional conceptele de siguranță ale locomotivelor și garniturilor de tren, iar abordarea sa modulară îi aduce flexibilitatea necesară adaptării la implementările particularizate, păstrând totodată caracterul de precertificare în privința normelor ce reglementează transportul feroviar.

De fapt – atât prin modularizarea propusă, cât și grație exploatării atributelor de încapsulare și de interfațare ale sistemului de operare, QNX – MTCS nu este doar o soluție la cerințele unei implementări concrete, ci o platformă pentru dezvoltarea rapidă de aplicații de securizare a traficului feroviar, precum:

controlul funcționării trenului; operarea automată a trenului (ATO); protecția automată (ATP), controlul pozitiv/optimizat al trenului (PTC/ETC). Astfel, prin modificarea setup-ului configurabil, aplicația MTCS poate controla cvasi- totalitatea aspectelor privind siguranța funcțională a trenurilor, în conformitate cu standardele EN 50128 și EN 50129.

Detalii tehnice

În cazul acestei soluții de la MEN, elementul cheie a fost alegerea unui sistem de operare deja pre-certificat în privința aplicațiilor critice. (Lipsa eventualelor componente software moștenite, pe care dezvoltatorul să fie nevoit să le adapteze și să le certifice, a constituit o premisă pentru succes.)

Nu doar că sistemul de operare în timp-real QNX Neutrino este certificat pentru IEC 61508 - SIL 3, dar acesta era recunoscut pentru nivelul înalt oferit în privința fiabilității și a eficienței la implementarea sistemelor încapsulate.

Conceptul de modularizare din MTCS exploatează premisa oferită de arhitectura micro-kernel a lui QNX Neutrino, respectiv proprietatea acestuia de a impune limite puternice între procesele software (izolând astfel procesele, acestea nu-și pot afecta/influența performanța/comportamentul). În plus, tehnologia de partiționare adaptivă din QNX

Neutrino asigură un nivel înalt de separare inclusiv în alocarea resurselor CPU (procesare și transfer).

Pe partea de hardware (unde, folosind produse noi, MEN a fost nevoit să solicite separat certificarea componentelor) soluția MTCS folosește un calculator de concepție proprie, numit F75P. Acesta integrează trei procesoare Intel Atom E6xx/E600: două dintre ele, destinate procesării semnalelor în vederea materializării controlului și cuplate în schemă redundantă, folosesc câte o memorie RAM de 512 MB RAM și o memorie flash (pentru RTOS și aplicații), iar al treilea, dedicat operațiunilor I/O, folosește o memorie DDR2 de 1 GB (fiind certificat și pentru EN 50159). Cum F74P constituie un card compact (certificat și în conformitate cu EN 50155), se pot face implementări și cu pachete de mai multe unități F74P, scalate pentru a face cerințelor foarte complexe.


English summary

The real-time operation systems apply in high requirement fields and are aimed at process dynamics, interfacing capabilities, such as the case of complex automation systems. The reconsideration and improvement of older solutions allowed the elaboration of widely applicable solutions in the field of rail safety. The modular architecture developed allows concrete implementations of the functional safety concepts and provides, at the same time, a platform for the fast development of rail traffic safety applications. The hardware and software concepts provide this solution with special benefits which are a recipe for success.


Mircea Băduț este inginer, consultant CAD/IT