Auto­no­mous dri­ving— on everyone’s lips, over­grown with myths. Inno­va­ti­ve tech­no­lo­gy is being gra­du­al­ly deve­lo­ped day by day. Howe­ver, is 100% code test­ing nee­ded? Will inno­va­ti­on be dama­ged by strict ISO stan­dards and norms? We tal­ked to Artur Sto­l­ar­c­zuk, a Code­lab expert, who deve­lo­ps advan­ced auto­mo­ti­ve IT pro­jects on a dai­ly basis and yet who, after hours, dreams of the joy of dri­ving a tho­roughbred, gaso­li­ne V8 🙂

Artur – what are you working on in your cur­rent project?

I am invol­ved in the soft­ware deve­lo­p­ment of an ECU that assists the dri­ver in object and obs­ta­cle detec­tion in front of the vehic­le. It is a sys­tem based on a came­ra that cap­tures the image in front of the car and sends it out for fur­ther pro­ces­sing. This makes it pos­si­ble to detect other vehic­les, cyclists, pede­stri­ans, or any other objects on the road and allows the car to react accor­din­gly (if the dri­ver does not react on time). In the future, this sys­tem shall be fur­ther deve­lo­ped and adapt­ed to ful­ly auto­no­mous driving. 

At this point, it is worth men­tio­ning that it must meet all the strict requi­re­ments impo­sed by the ISO 26262 (Func­tion­al Safe­ty for Auto­mo­bi­les) standard.

What is the dif­fe­rence bet­ween the deve­lo­p­ment of ISO 26262 com­pli­ant sys­tems and any other software?

First of all, the­re is a signi­fi­cant focus on two aspects: secu­ri­ty and safe­ty of such sys­tems. To put it sim­ply: the first one deals with all poten­ti­al out­side thre­ats, while the second one copes with all hazards from the sys­tem its­elf that could have an impact on peo­p­le and resour­ces (e.g. software/hardware malfunction).

The­r­e­fo­re, for the soft­ware to be com­pli­ant with ISO 26262, it must meet very strict qua­li­ty requi­re­ments, gua­ran­tee the hig­hest pos­si­ble test covera­ge at pro­duc­tion stage (e.g. 100% code covera­ge with unit tests, requi­red num­ber of hours of test dri­ves, etc.), and must be writ­ten in com­pli­ance with soft­ware deve­lo­p­ment stan­dards for the Auto­mo­ti­ve indus­try (e.g. MISRA).

On the one hand, it makes the deve­lo­p­ment pro­cess quite com­pli­ca­ted and cum­ber­so­me, and on the other, we must keep in mind that the sys­tem we crea­te shall be respon­si­ble for future dri­vers’ and their pas­sen­gers’ lives. Ergo, I think it is worth bothe­ring a bit more than usu­al about the qua­li­ty of code we wri­te, at least for our own peace of mind.

Are the cur­rent sta­te-of-the-art Acti­ve Safe­ty sys­tems real­ly safe enough?

Nowa­days, we can find Acti­ve Safe­ty sys­tems in almost every new car available on the mar­ket. In the case of pre­mi­um brands, they have been offe­red for a cou­ple of years alre­a­dy. I think ever­yo­ne has heard about fea­tures like adap­ti­ve crui­se con­trol, par­king assistant, or lane depar­tu­re war­ning sys­tem, right?

Addi­tio­nal­ly, now we have sys­tems that can detect pede­stri­ans and obs­ta­cles by coope­ra­ting with the emer­gen­cy bra­king sys­tem, night visi­on came­ras, traf­fic jam assistants or sway war­ning systems.

Nevert­hel­ess, the­se are the sys­tems that still ope­ra­te on level 2 (of auto­no­my) and OEMs still high­light that the dri­ver should keep their hands on the stee­ring wheel and watch their sur­roun­dings careful­ly at all times.

I think that ever­yo­ne who has ever used such goo­dies like adap­ti­ve crui­se con­trol or lane depar­tu­re war­ning (no mat­ter the manu­fac­tu­rer) can speak very easi­ly about the pros and cons of such solu­ti­ons and indi­ca­te at least a few cor­ner cases whe­re the sys­tem did not behave as expec­ted or fai­led to react at all. The adap­ti­ve crui­se con­trol in my car, for ins­tance, can be very annoy­ing when it loses sight of the vehic­le ahead on almost every cur­ve (too nar­row of a radar beam) and starts acce­le­ra­ting, just to hit the bra­kes a few seconds later. On the other hand, I heard about use cases (dif­fe­rent car) whe­re the radar beam was too wide and it would wron­gly detect vehic­les moving in the oppo­si­te direc­tion, employ­ing unex­pec­ted emer­gen­cy bra­king until coming to a full stop. The­se cases show that the­re is no per­fect solu­ti­on and the num­ber of chal­lenges is enormous.

In my opi­ni­on, the­re is still much room for impro­ve­ment, but when loo­king at recent sta­te-of-the-art solu­ti­ons, the future looks bright. Every new soft­ware gene­ra­ti­on that hits the mar­ket works bet­ter and bet­ter. I am loo­king for­ward to see­ing ful­ly auto­no­mous vehic­les in the streets. In the end, I am respon­si­ble for the deve­lo­p­ment of such sys­tems as well…

Shall cars ever be autonomous?

I think the­re is a very long way to go befo­re we crea­te ful­ly auto­no­mous vehic­les, despi­te the fact that some OEMs cla­im that their sys­tems shall reach level 4, or even 5, very soon. I think that’s just boas­ting for the moment.

Bes­i­des, I see two dif­fe­rent approa­ches here fol­lo­wed by dif­fe­rent OEMs:

  • Small impro­ve­ments of alre­a­dy deve­lo­ped and deploy­ed sys­tems, incre­men­tal updates with new fea­tures and test­ing the­se chan­ges in the field, making their cus­to­mers beta-tes­ters (just like Tes­la does for instance)
  • Focus on honing the sys­tem and deve­lo­p­ment and deploy­ment of requi­red road infra­struc­tu­re in par­al­lel; this includes all nee­ded com­pon­ents that shall be part of highway/speedway infra­struc­tu­re and shall allow self-dri­ving from the spot. I heard such infra­struc­tu­re was being con­s­truc­ted in Ger­ma­ny and Chi­na alre­a­dy. Howe­ver, ful­ly auto­no­mous dri­ving shall be pos­si­ble up to 80kph only.

I belie­ve the first step is the most dif­fi­cult one, whe­re some cars shall be auto­no­mous among human dri­vers. This shall pro­du­ce a lot of unex­pec­ted cor­ner cases that are very hard to fore­see at the deve­lo­p­ment stage. It may pro­du­ce very dan­ge­rous situa­tions. Inte­res­t­ingly, it could be much easier if all vehic­les would beco­me instant­ly auto­no­mous and com­mu­ni­ca­te with each other.

Howe­ver, I do hope it will not come true too fast and I will have a chan­ce to get some joy from a good-loo­king Young­timer with a V8 under the hood befo­re it shall beco­me illegal…

Artur Sto­l­ar­c­zuk, soft­ware archi­tect with over 15 years of expe­ri­ence in deve­lo­p­ment of embedded sys­tems, most­ly for the auto­mo­ti­ve indus­try. Per­so­nal­ly a hus­band and father of two, casu­al bass gui­tar play­er and vol­ley­ball fan