realizacija podrške za prikaz multimedijalnih elemenata na ... fileposrednici između operativnih...

4
25th Telecommunications forum TELFOR 2017 Serbia, Belgrade, November 21-22, 2017. 978-1-5386-3073-0/17/$31.00 ©2017 IEEE Sadržaj U poslednje vreme pametna vozila se sve više koriste. Jedan od bitnijih aspekata je bezbednost, kako ljudi, tako i vozila. Funkcionalna sigurnost se uvodi kao poseban pojam, gde je potrebno definisati rizik kao i neželjene efekte odrenih opasnosti. Poseban izazov je da se dve aplikacije, jedna za klaster a druga za glavni ekran, izvršavaju na jednoj platformi sa dva operativna sistema preko hipervizora. Glavni problem je u komunicaiji između klastera i glavnog ekrana, jer klaster potpada pod ISO26262 standard koji je napisan posebno za automobilsku industriju. Ovaj rad prezentuje rešenje problema kroz implementaciju srednjeg sloja za kontrolu i slanje poruka od glavnog ekrana ka klasteru. Ključne reči Android, ASIL, Hipervozor, In-Vehicle Infotainment, ISO26262, Klaster, QNX I. UVOD ANAŠNJA moderna vozila sadrže razne sisteme za pomoć vozaču (eng. ADAS Advanced Driver Assistance Systems), digitalne instrument table (eng. cluster) i info-zabavne sisteme (eng. infotainment). Da bi bezbednost bila na visokom nivou, uveden je poseban standard ISO26262 [1]-[2], koji je adaptacija standarda Funkcionalne sigurnosti IEC61508 za automobilske sisteme. Standard se odnosi na sigurnosnu stranu elektronskih i električnih sistema u vozilu, na greške koje mogu da izazovu nesreće, isključujući nominalne performanse aktivnih i pasivnih sigurnosnih sistema. Na osnovu ASIL (Automotive Safety Integrity Level) [3] nivoa se definiše rizik na neželjene efekte. Da bi se uopšte pričalo o trenutnom ASIL nivou, standard mora da bude primenjen na sve hardverske i softverske komponente u sistemu. U proizvodnji se posebna pažnja posvećuje kvalitetu softvera, a problemi koji mogu da se jave pri projektovanju su: loša revizija slaba uključenost odeljenja za garanciju kvaliteta Miloš Ilić, Fakultet Tehničkih Nauka u Novom Sadu, Trg Dositeja Obradovića 6, 21000 Novi Sad, Srbija (telefon: 381-62-358530, e-mail: [email protected]) Tihomir Anđelić, Institut RT-RK, Narodnog Fronta 23a, 21000 Novi Sad, Srbija (e-mail: [email protected]). Ninoslav Žmukić, Institut RT-RK, Narodnog Fronta 23a, 21000 Novi Sad, Srbija; (e-mail: [email protected]) Milan Z. Bjelica, Institut RT-RK, Narodnog Fronta 23a, 21000 Novi Sad, Srbija; (e-mail: [email protected]) nedovoljna izveštavanja o trenutnom statusu. Sve ovo dovodi do sledećih posledica: povlačenje iz prodaje zbog softverskih problema gubitak reputacije proizvođača i dobavljača uključujući i finansijske posledice ekstremno visoki troškovi ispravljanja kasnijih grešaka prebacivanje krivice na odeljenje za garanciju kvaliteta. Najbolji primer je Toyota, koja je u periodu od 2010. do 2013. godine imala 22 miliona povučenih vozila iz prodaje u Sjedinjenim Američkim Državama. Razlozi su bili eksplozija vazdušnih jastuka i blokirane pedale za gas. Direktna šteta je 2,6 milijardi američkih dolara, dok indirektna nije poznata. Što se akademske strane tiče, u radu [4] su objašnjene potencijalne opasnosti u interakciji dve aplikacije u vozilima. Predložen je model koji definiše i kontroliše šta će se prikazati na ekranima. Pored bezbednosti, uvodi se i novi koncept sa dva operativna sistema na platformi preko hipervizora kao što je i objašnjeno u radu [5] gde su opisane prednosti i izazovi u realizaciji sistemske virtuelizacije. II. KONCEPT REŠENJA U ovom poglavlju je cilj da se opiše arhitektura softvera. Na Sl. 1 je prikazan koncept rešenja. Rešenje ovog rada je označeno zelenom bojom. Sl. 1. Koncept rešenja. Što se hardvera tiče, u pitanju je Qualcomm platforma, sa Snapdragon S820A čipom za automobilsku industriju. Na njemu je instaliran hipervizor na kojem su aktivna dva operativna sistema: QNX [6]-[7] sistem za rad u realnom Realizacija podrške za prikaz multimedijalnih elemenata na klaster ekranu vozila Miloš Ilić, Fakultet Tehničkih Nauka, Univerzitet u Novom Sadu, Novi Sad, Tihomir Anđelić, Ninoslav Žmukić, Milan Z. Bjelica, RT-RK Institut za sisteme zasnovane na računarima, Novi Sad D

Upload: others

Post on 15-Oct-2019

7 views

Category:

Documents


0 download

TRANSCRIPT

25th Telecommunications forum TELFOR 2017 Serbia, Belgrade, November 21-22, 2017.

978-1-5386-3073-0/17/$31.00 ©2017 IEEE

Sadržaj — U poslednje vreme pametna vozila se sve više

koriste. Jedan od bitnijih aspekata je bezbednost, kako ljudi,

tako i vozila. Funkcionalna sigurnost se uvodi kao poseban

pojam, gde je potrebno definisati rizik kao i neželjene efekte

određenih opasnosti. Poseban izazov je da se dve aplikacije,

jedna za klaster a druga za glavni ekran, izvršavaju na jednoj

platformi sa dva operativna sistema preko hipervizora.

Glavni problem je u komunicaiji između klastera i glavnog

ekrana, jer klaster potpada pod ISO26262 standard koji je

napisan posebno za automobilsku industriju. Ovaj rad

prezentuje rešenje problema kroz implementaciju srednjeg

sloja za kontrolu i slanje poruka od glavnog ekrana ka

klasteru.

Ključne reči — Android, ASIL, Hipervozor, In-Vehicle

Infotainment, ISO26262, Klaster, QNX

I. UVOD

ANAŠNJA moderna vozila sadrže razne sisteme za

pomoć vozaču (eng. ADAS – Advanced Driver

Assistance Systems), digitalne instrument table (eng.

cluster) i info-zabavne sisteme (eng. infotainment). Da bi

bezbednost bila na visokom nivou, uveden je poseban

standard ISO26262 [1]-[2], koji je adaptacija standarda

Funkcionalne sigurnosti IEC61508 za automobilske

sisteme. Standard se odnosi na sigurnosnu stranu

elektronskih i električnih sistema u vozilu, na greške koje

mogu da izazovu nesreće, isključujući nominalne

performanse aktivnih i pasivnih sigurnosnih sistema. Na

osnovu ASIL (Automotive Safety Integrity Level) [3] nivoa

se definiše rizik na neželjene efekte. Da bi se uopšte

pričalo o trenutnom ASIL nivou, standard mora da bude

primenjen na sve hardverske i softverske komponente u

sistemu.

U proizvodnji se posebna pažnja posvećuje kvalitetu

softvera, a problemi koji mogu da se jave pri

projektovanju su:

loša revizija

slaba uključenost odeljenja za garanciju kvaliteta

Miloš Ilić, Fakultet Tehničkih Nauka u Novom Sadu, Trg Dositeja

Obradovića 6, 21000 Novi Sad, Srbija (telefon: 381-62-358530, e-mail:

[email protected])

Tihomir Anđelić, Institut RT-RK, Narodnog Fronta 23a, 21000 Novi

Sad, Srbija (e-mail: [email protected]).

Ninoslav Žmukić, Institut RT-RK, Narodnog Fronta 23a, 21000 Novi

Sad, Srbija; (e-mail: [email protected])

Milan Z. Bjelica, Institut RT-RK, Narodnog Fronta 23a, 21000 Novi

Sad, Srbija; (e-mail: [email protected])

nedovoljna izveštavanja o trenutnom statusu.

Sve ovo dovodi do sledećih posledica:

povlačenje iz prodaje zbog softverskih problema

gubitak reputacije proizvođača i dobavljača

uključujući i finansijske posledice

ekstremno visoki troškovi ispravljanja kasnijih

grešaka

prebacivanje krivice na odeljenje za garanciju

kvaliteta.

Najbolji primer je Toyota, koja je u periodu od 2010. do

2013. godine imala 22 miliona povučenih vozila iz prodaje

u Sjedinjenim Američkim Državama. Razlozi su bili

eksplozija vazdušnih jastuka i blokirane pedale za gas.

Direktna šteta je 2,6 milijardi američkih dolara, dok

indirektna nije poznata.

Što se akademske strane tiče, u radu [4] su objašnjene

potencijalne opasnosti u interakciji dve aplikacije u

vozilima. Predložen je model koji definiše i kontroliše šta

će se prikazati na ekranima. Pored bezbednosti, uvodi se i

novi koncept sa dva operativna sistema na platformi preko

hipervizora kao što je i objašnjeno u radu [5] gde su

opisane prednosti i izazovi u realizaciji sistemske

virtuelizacije.

II. KONCEPT REŠENJA

U ovom poglavlju je cilj da se opiše arhitektura

softvera. Na Sl. 1 je prikazan koncept rešenja. Rešenje

ovog rada je označeno zelenom bojom.

Sl. 1. Koncept rešenja.

Što se hardvera tiče, u pitanju je Qualcomm platforma,

sa Snapdragon S820A čipom za automobilsku industriju.

Na njemu je instaliran hipervizor na kojem su aktivna dva

operativna sistema: QNX [6]-[7] sistem za rad u realnom

Realizacija podrške za prikaz multimedijalnih

elemenata na klaster ekranu vozila

Miloš Ilić, Fakultet Tehničkih Nauka, Univerzitet u Novom Sadu, Novi Sad, Tihomir Anđelić,

Ninoslav Žmukić, Milan Z. Bjelica, RT-RK Institut za sisteme zasnovane na računarima, Novi Sad

D

vremenu i Android za potrošačku elektroniku. Glavni

posrednici između operativnih sistema i aplikacija su

srednji slojevi (eng. middleware). Preko njih se obavlja

celokupna komunikacija između dva operativna sistema

odnosno između dve aplikacije (klaster i glavni ekran), kao

i ulaznih uređaja (volan, pedale, jog-shuttle, touch-screen).

Za drugi koncept koji bi bio u skladu sa ASIL

standardom, je potrebno spustiti implementaciju na niži

nivo i iskoristiti sve prednosti hipervizora. Na Sl. 2 je dat

primer deljenja radne memorije između dve virtuelne

mašine na hipervizoru. Da bi se iskoristila deljena radna

memorija, potrebno je:

mapirati region deljene radne memorije

obavestiti ostale korisnike regiona deljene radne

memorije da se taj region ažurirao, uz pomoć

hardverskog prekida.

Na taj način nema potrebe za direktnom komunikacijom

između klastera i glavnog ekrana jer se podaci i

signali/komande dele na hardverskom nivou.

Sl. 2. Prikaz deljenja radne memorije.

III. SOFTVERSKA ARHITEKTURA

U ovom poglavlju je predstavljena sprega i

komunikacija između dve aplikacije srednjeg sloja. Na Sl.

3 je prikazana softverska arhitektura QNX srednjeg sloja.

Sl. 3. Softverska arhitektura QNX srednjeg sloja.

IPC – komunikacija između procesa.

IVC – komunikacija između procesa koji se izvršavaju

na različitim operativnim sistemima (virtuelnim

mašinama).

Event Manager – kontrolni modul srednjeg sloja.

Uzima ulazne podatke od drugih modula i koristi druge

module za delegiranje posla drugim aplikacijama.

Screen Manager – služi za deljenje grafičkih

elemenata između dva operativna sistema i veoma se

oslanja na funkcionalnost hipervizora.

Na Sl. 4 je prikazana softverska arhitektura Android

srednjeg sloja.

Sl. 4. Softverska arhitektura Android srednjeg sloja.

Od ostalih modula koji nisu zajednički za obe aplikacije

srednjeg sloja su:

HMI Manager – modul za prikupljanje podataka sa

ulaznih uređaja.

HMI Interface – modul za rukovanje ulaznih uređaja.

Touch Screen Interface – modul za rukovanje ekrana

osetljivog na dodir.

IV. REZULTATI

Ispitivanje je izvršeno na demonstratoru (Sl. 5) koji

sadrži Qualcomm platformu sa Snapdragon S820A čipom,

dva ekrana, volan, pedale i jog-shuttle.

Sl. 5. Prikaz testnog okruženja.

Qualcomm platforma ima sledeću specifikaciju:

Quad-core CPU

4x Qualcomm Kryo CPU

Hexagon 680 DSP

Adreno 530 GPU

Max display support: 4K Ultra HD

LPDDR4 3GB

Bluetooth 4.1

Wi-Fi 802.11ac and 802.11n

TABELA 1: TESTNI SLUČAJEVI.

Testni

slučaj

Opis

koraka

Očekivani rezultat Uspešnost

Pokrenuti

aplikaciju

ako već

nije

pokrenuta

Otvoriti

izvršni fajl

aplikacije

Aplikacija je u

inicijalnom stanju

Uspešno

Pustiti

narednu

stanicu na

FM radiju

Pritisnuti

next

dugme na

glavnom

ekranu

Trenutna radio

stanica se

promenila, kao i

informacija o

trenutnoj pesmi na

klasteru

Uspešno

Ponoviti

korak 2

Pritisnuti

next

dugme na

glavnom

ekranu

Trenutna radio

stanica se

promenila, kao i

informacija o

trenutnoj pesmi na

klasteru

Uspešno

Obavljeno je 100 ponavljanja iz Tabele 1, sa merenjem

broja slika u sekundi na klasteru. U Tabeli 2. je prikazana

prosečna vrednost broja slika u sekundi. Prvi red

predstavlja prosečnu vrednost kada klaster obavlja svoju

funkcionalnost bez dolaznih signala i komandi sa glavnog

ekrana, a drugi red predstavlja prosečnu vrednost kada

glavni ekran šalje informaciju klasteru da se trenutna

pesma promenila i da ažurira naziv nove pesme (Sl. 6).

Treba napomenuti da 18,7 slika u sekundi nije

zadovoljavajuće zbog ograničenja same platforme, ali da

sama interakcija glavnog ekrana i klastera nije bitnije

uticala na smanjenje broja slika u sekundi.

TABELA 2: BROJ SLIKA U SEKUNDI.

Opis slučaja Prosečna

vrednost

Bez interakcije 18,7 [FPS]

Sa interakcijom 17,1 [FPS]

V. ZAKLJUČAK

Trenutno rešenje nije namenjeno za proizvodnju u

automobilskoj industriji, ali služi kao dokaz da je ovaj

koncept realan. Da bi rešenje bilo u skladu sa ISO26262

standardom, potrebno je logiku spustiti na niži nivo,

odnosno na deljenje radne memorije, kao što je i

objašnjeno u drugom konceptu.

ZAHVALNICA

Ovaj rad je delimično finansiran od strane Ministarstva

za prosvetu, nauku i tehnološki razvoj Republike Srbije, na

projektu broj: 32041.

LITERATURA

[1] Elmar Cochlovius: Automotive Software Practice, Hochschule

Furtwangen University, 2016

[2] ISO26262. Dostupno na: https://en.wikipedia.org/wiki/ISO_26262

Pristupljeno oktobar 2017.

[3] ASIL. Dostupno na:

https://en.wikipedia.org/wiki/Automotive_Safety_Integrity_Level

Pristupljeno oktobar 2017.

[4] S. Gansel, S. Schnitzer, A. Gilbeau-Hammoud, V. Friesen, F. Durr,

K. Rothermel, C. Maihofer, „An access control concept for novel

automotive HMI systems“, Proceedings of the 19th ACM

symposium, New York, 2014.

[5] A. Gavrilovska, S. Kumar, H. Raj, K. Schwan, V. Gupta, R.

Nathuji, R. Niranjan, A. Ranadive, P. Saraiya, “High-Performance

Hypervisor Architectures: Virtualization in HPC Systems“, 1st

Workshop on System-level Virtualization for High Perfomance

Computing (HPCVirt 2007).

[6] QNX. Dostupno na: https://en.wikipedia.org/wiki/QNX

Pristupljeno oktobar 2017.

[7] QNX Hypervisor. Dostupno na:

https://www.qnx.com/content/dam/qnx/products/hypervisor/hyperv

isor-product-brief.pdf Pristupljeno oktobar 2017.

Sl 6. Prikaz klastera pri interakciji sa glavnim ekranom.

ABSTRACT

Smart cars have become increasingly used lately. One of

the most important aspects is safety, both people and

vehicles. Functional safety is introduced as a special term,

where it is necessary to define the risk as well as the

undesirable effects of certain hazards. The particular

challenge is that two applications, one for the cluster and

the other for the head-unit, are executed on single board

with two operating systems via hypevisor. The main

problem is in the communication between the cluster and

the head-unit, because the cluster falls under the ISO26262

standard which is specifically written for the automotive

industry. This paper presents the solution of the problem

through the implementation of a middleware for

controlling and sending messages from head-unit to

cluster.

SUPPORT FOR RENDERING MULTIMEDIA AT

DIGITAL VEHICLE INSTRUMENT CLUSTER

Milos Ilic, Tihomir Andjelic, Ninoslav Zmukic, Milan

Z. Bjelica