Moderni softver za automobil. Dijagnosticiranje elektroničkih upravljačkih sistema

Znate li vrste softvera za popravak automobila?

Softver za popravak automobila

Dvije glavne vrste softvera za popravak automobila koriste se za dijagnosticiranje ili upravljanje prednjom kancelarijom. Dijagnostički softver Za popravku automobila može sadržavati mnoge funkcije, uključujući postupke popravka, neispravne upute, poznate "tačne" vrijednosti za senzore i druge neprocjenjive informacije. Ovaj je softver često dostupan u odvojenim vanjskim i domaćim uslugama za popravke automobila i može pokriti specifične marke Automobili. Specijalizirani softver za popravke automobila dostupan je i za moderne dijagnostičke alate, od kojih neki mogu biti prilično složeni računarski uređaji. Softver na prednjoj ploči može uključivati \u200b\u200bprocjene, planove i generatore radnog naloga. Visokokvalitetna postavka softvera može se izvesti na http://savtom.com/ gdje popraviti automobile Mercedes, Audi i BMW.

Mehanika je povijesno dobila većinu svojih podataka iz vodiča za popravak i iz iskustva. Stvoreno nekoliko izdavača korisne informacije I pružio ga u obliku knjige. Dvije glavne vrste tih knjiga imale su dijagnostičke vodiče i referentne knjige po fiksnom stopom. U priručnicima za dijagnostiku sadržane specifikacije i postupke popravka i priručnici sa fiksnom brzinom ocjenjuju se koliko dugo treba izvesti svaki specifični rad. Zahvaljujući širokoj upotrebi ličnih računara na radnom mjestu, ova vrsta informacija prevedena je u softver za popravak softvera.

Većina modernih sadržaja za popravak automobila imaju neki sustav kompjuteriziranog informacijskog sustava koji će pomoći u dijagnosticiranju i popravljanju. Najjednostavniji obrazac Ovo je jedinstveni računalni terminal sa setom CD-ova ili digitalnih univerzalnih diskova (DVD-a), koji sadrže procedure popravke, specifikacije i druge informacije. Tehničar može ući u godinu, marku i model vozilo U ovoj vrsti sistema za pronalaženje određenih informacija. Neki od ovih programa uključuju i brojne krugove, ožičene i rastavljene karte.

Postoji nekoliko opcija za ovu osnovnu vrstu softvera za popravak softvera. Neki davatelji usluga pružaju sve ove informacije putem internetske veze. Dakle, tehničar ili trgovina plaćaju mjesečnu naknadu za pristup informacijama, što je uvijek relevantno. Takve usluge nude kritične biltene i popravljaju postupke koji su sačinili ovi stručnjaci na ovom području. Softver je takođe obično dostupan i za specijalizovanu skener i dijagnostičku opremu, a neki programi mogu čak prenositi laptop u uređaj za skeniranje.

Još jedna glavna vrsta softvera za popravak automobila obično se koristi pred uredom. Procjena fer stope je jedna od bitne funkcije Ovaj softver. Ova vrsta softvera omogućava programeru tehnologije ili usluge da uđe u godinu, marku i model automobila kako bi saznali koliko bi trebalo da prođe sve popravke. Ovi fiksni brojevi brzine mogu se zatim kombinirati s cijenom dijelova za kreiranje procjene. Ova vrsta softvera može ponuditi i funkcionalnost u planiranju, generirati radne naloge i praćenje prodaje.

Nije tajna da u našem visokotehnološkom uzrastu svakom inovativnom agentu, zasnovana na radu koja se položi elektronska komponenta, počevši od mobilni telefon I završavajući satelitima, sadrži puno internog "punjenja", što upravlja procesima funkcioniranja agregata.

To se u velikoj mjeri odnosi na kretanje ili, jednostavno govoreći automobile. Moderne mašine su tako punjene elektronikom o kojoj ponekad razmišljate i zašto, u stvari, vozač.

Koliko je siguran automatski sistem?

Međutim, da li je sve tako jednostavno i sigurno, da li je moguće potpuno povjerenje, čiji je glavni zadatak olakšati proces upravljanja upravljačkom programom? Odgovor je apsolutno ne nedvosmislen.

Možda će neko iznenaditi činjenicu da softver moderan automobil Izmičite linije koda koji su oko 2,5 puta više nego u jednom od najpopularnijih konstrukcija modernosti - Windows 7.

Koja od ovoga se može zaključiti? Vrlo je jednostavno - očito je da se sa tako velikim količinom podataka mogu pojaviti pogreške, što će nakon toga utjecati na pogrešan rad cijelog automobila.

Kao primjer, dajemo slučaj s kojim se dogodilo Toyota Prius.. Nećemo uvesti u sve suptilnosti sistema. automatska kontrola Motor će primijetiti samo da u slučaju pogreške u sustavu poluvodiča ugrađen u ugradnju, pregrijavanje, a to dovodi do činjenice da se automobil iznenada prestaje. Da biste ažurirali cijeli sistem, trebat ćete posjetiti servisni centar.

Proizvođači elektrokarijanata

Najpopularniji proizvođač elektrokara u svijetu danas u praksi koristi napredniju metodu: ažuriranje sistema može se na daljinu koristiti bežičnu komunikaciju. Ali ovdje bi trebalo pažljivo slušati mišljenje stručnjaka koji su praktički u jednom glasu koji ova metoda nije tako sigurna kao što se može u početku izgledati. Zašto?

Činjenica je da u ovom slučaju dobar haker može pristupiti automatizaciji vozila pomoću običnog laptopa. Prima potvrda bila je eksperiment stručnjaka za računarom Charlie Miller i Chris Valasec, koji su demonstrirali na Crnoj konferenciji šešira. Hakeri su modelirali hakiranje automobila automobila i pokazalo onome što bi moglo dovesti.

Dobro je što je to bio samo naučni primjer i niko nije povrijeđen. Utipkanjem brzine i dostizanja 80 km / h, automobil je iznenada prestao odgovarati na ekipe, kočnice su potpuno odbile, a kada kliknete na papučicu gasa, automobil je naglo ušao udesno.

Najnevjerovatnija stvar se dogodila nakon toga: softver koji je izazvao štetu automatski sistem Kontrola automobila, vremena munje, tako je izvana izgledala kao nesreća. E.

da su eksperiment hakeri pokazali da nije sve idealno u svijetu moderne autoh elektronike i automobila još uvijek moraju puno raditi kako bi predstavili optimalnu kombiniranje komfora i sigurnosti kada se koriste elektroničkom side sistemi Automobil.

Članak o kojem predstavlja softver modernog automobila. Značajke softvera, procesa i tehnologije. Na kraju članka - zanimljiv video o 5 potrebnog Lifehakija za vaš automobil!


Sadržaj pregleda:

Nema modernih automobila bez elektronskog punjenja, koji uključuje složeni softver. Vožnja automobila, gotovo ne razmišljamo o tome što procesi prelazi iz njega - monitor nije na računaru, ali to znači da se programi ne vizualiziraju, kao da ne. Ali oni su.

Značajke softvera za automobile


Moderni softver za vaš automobil je vrlo pouzdan: faktor kvara opreme je samo jedan na milion operacija tokom godine, a potom kao izuzetak.

Sada je svaki automobil dostupan u prisustvu nekoliko elektronskih upravljačkih jedinica (ECU) - elektronička upravljačka jedinica, ECU, koja međusobno komuniciraju kroz elektroničku mrežu automobila.


Interakcija između tih blokova vrši se zbog dimenzija za dimenzije kontrolera - može, mrežom kontrolera, kao i posebna mreža namijenjena prenošenju posebnih podataka o digitalnoj opremi - većina, i za većina, i medija-orijentirana i sustavi, i Kao lokalno povezivanje (LIN).

Ako uporedite navedene gume s Ethernetom, koji je dizajniran za računare, oni rade u smanjenoj brzini, jer je iznos prerađenih podataka u automobilu mali. Ali ovaj minimalni iznos informacija treba tretirati doslovno za značajne milisekunde.

Uz sve veći broj ECU-a, programeri moraju stvoriti komplicirane strukture unutar-automobilske mreže koje zahtijevaju složeniju strukturu. Razmotrite glavnu razliku između automobila i digitalnih tehnologija drugih odredišta.

  • Pouzdanost - programi sistema mašina u prilično složenoj ECU mreži za nastavak cijelog razdoblja uporabe treba raditi što je moguće pouzdanije;
  • Sigurnost funkcija izvedenih - ESC i kočioni sustav moraju djelovati sigurno, a to već podrazumijeva prilično ozbiljne zahtjeve za samom softveru i samog procesa;
  • Stopa interakcije je trenutna reakcija elektronskih komponenti automobila (do milisekundi) nije moguća bez posebne softverske arhitekture i poboljšanih operativnih sistema;
  • Pouzdana arhitektura - na vozilu trebala bi izvršiti maksimalnu elektromagnetnu kompatibilnost, a također ne utječu izobličene iskrivljene signale;
  • Priključak čvorova elektrona-mehaničkog ciklusa.
Pažnja: Ni u kojem slučaju ne sprečite ponovno pokretanje ECU dok radite!

Glavne komponente ECU-a.


ECU je prilično komplikovana naknada, na kojoj se, pored mikrokontrolera nalazi stotine drugih elemenata. Razmotrite glavne detalje.
  1. Analogni digitalni pretvarač (ADC) - Ova oprema je namijenjena uklanjanju indikatora iz određenih automobilski senzori, a iz senzora kisika, uključujući. Činjenica je da je procesor u mogućnosti uočiti samo digitalne vrijednosti i, na primjer, indikator kisika pruža samo električne signale sa naponom od 0 do 1,1V. ADC pretvara ove podatke u binarni broj rashreka i postaje jasan za procesor.
  2. Vozač je program dizajniran za kontrolu digitalne opreme pretvaranjem signala.
  3. Digitalni analogni pretvarač (DAC) - pruža analogne signale za pokretanje određenih komponenti motora automobila.
  4. Komunikacijski čip - Ovi čipovi omogućavaju vam da implementirate različite komunikacijske standarde dostupne u automobilu. Proizvodnja ima nekoliko takvih standarda, ali najčešće ih je može - umrežavanje područja kontrolera. Pruža brzinu od 500 do / bita u sekundi, što je izuzetno potrebno za module koji čine stotine operacija u svakom mjesecu.

Procesi i tehnologija


Budući da se prvi softver pojavio, mnogo se promijenio. Ako bi početni softver mogao kontrolirati samo samo jedan proizvođač, sada je postao gotovo nemoguće.

U početku se u prošlom stoljeću koristio sastavljanje. Jezik SI počeo se širiti 90-ih. Robert Bosch i mnogi drugi proizvođači započeli su razvijati softver pomoću MathLab / Simulink i ASCET (tehnologije kontrole i modeliranja).

Sistemi guma može Napravite automobil prilično komplikovan. Razlog je taj što oni ne isključuju interakciju između programa različitog ECU-a. Moderni automobili Luksuz može sadržavati složenu mrežu koja se sastoji od 80 ECU-a, koji ima ukupno do 100 miliona linija koda.

Zbog činjenice da softver stalno postaje složeniji, potreba za poboljšanjem inženjerskih tehnologija. Stoga se u industriji paralelni tehnički i organizacioni procesi stalno povećavaju za svijest novog softvera.


Inženjerska rješenja na nivou procesa i arhitekture također postaju jedan od glavnih uvjeta outsourcinga. U vezi s ovim okolnostima, Bosch Neki razvoj događaja počeo je otići na stranu od početka 90-ih u prošlom stoljeću.

Trenutno se radi na softveru za automobile provodi nekoliko udruženja distribuiranih širom svijeta. I ovakva vrsta aktivnosti postala je prilično optimalna za poslovanje.

Upravljanje motorom


Rezolucije međunarodnog zakonodavstva o ekologiji zahtijeva smanjenje potrošnje goriva za gorivo i odgovarajuće smanjenje kontaminacije ambijent. Dakle, postoji poticaj za poboljšanje prijenosa kako bi se zajamčilo optimalno ubrizgavanje goriva i svjećica.

Na primjer, moderno dizelski motori U stanju da ubrizgane gorivo u minimalnom broju sedam puta u jednom taktu. A to je za motor sa četiri cilindara, koja razvija brzinu rotacije do 1800 revolucija u minuti, je 420 puta u sekundi. Sve to zahtijeva nove funkcije softvera i promišljeniji algoritami za kontrolu kako bi bilo koja odstupanja umanjila minimiziranje.

Potreba za smanjenjem Štetne emisije Zahtijevao sam ažurirane tehnologije i metode kretanja. Stoga dopunjavanje obični motori interna sagorijevanjeU budućnosti će autork posjedovati električne motore i mješoviti razvoj. Pored toga, povećaće se potreba za alternativnim gorivom, a glavna poluga za rješavanje ovih zadataka poslužit će kao softver.

Automatski kontrolni centar za prijenos je upravljački modul motora. Moderni moduli imaju zapreminu više od 2 megabajta digitalnog memorije i rade frekvencijom satova do 160 MHz. Istovremeno se programi koriste na 300 hiljada redova koda.

Standardizacija


Prilikom razvijanja modernih digitalnih programa za automobile, specifičnost potrebnog ECU-a ne je jadbigledno uzeta u obzir: softver direktno komunicira s određenom opremom. Zahvaljujući stalnom porastu broja automobila ECU, sekundarna upotreba softvera postaje prioritet. Stoga je u takvoj situaciji prikladno razgovarati o standardizaciji.

2003. dobavljači i proizvođači stvorili su automobilsku arhitekturu otvorenog sistema (AutoSar). Svrha kreiranja organizacije je ispunjavanje cjelokupnih standardnih i objedinjenih tehnologija. Danas ovo udruženje pokriva preko 150 organizacija sa kojima se razvija nova struktura ECU-a, osnovni softver i sve što je potrebno za stvaranje radnog softvera.

Ova vrsta interakcije uključuje stvaranje čvorova koji ne ovise o opremi. To omogućava dobavljačima i proizvođačima da razmjenjuju razvoj događaja, kao i koriste ih ponovne eCU-a.

Struktura autozara sastoji se od nekoliko apstraktnih nivoa u kojima je softver odvojen od hardvera. Na samom vrhu postoji primijenjeni softver koji implementira sve primijenjene aktivnosti. Slijedi osnovni, nominalni softver. Garantuje željenu apstrakciju od hardvera na isti način kao što se događa, na primjer, na ličnom računaru. Autozar Runtime okruženje (okruženje za izvršenje u stvarnom vremenu) komunicira u ECU-u.

AutoSar tehnologija sadrži sve potrebne formate razmjene i predloške koji se koriste kako za generiranje i konfiguriranje infrastrukture i za svoj opis.

Najčešće B. moderna automobilska industrija su gume (velike brzine) ethernet. Oni pouzdano podržavaju veze između ECU-a, kao i novih opcija, uključujući sigurnost.


Najizvijeniji su informacije kvalitativno analizirani kako bi se stvorilo objektivno okruženje za zaštitu okoliša, što vam omogućuje formiranje novih opcija koje podržavaju vozača u ekstremnim slučajevima.

Na primjer, vozač je ometao putnik tokom sljedećeg. U ovom slučaju, aplikacija određuje kočenje kretanja ispred automobila, a zatim upozorava vozača ili samostalno uključuje kočenje. Usput, vozač ne može čak i odmah znati za prisustvo takvog softvera dok se ne pokaže u opasnoj poziciji.

Zaključak

U modernom automobilu, danas postoje preduvjeti za sljedeću naučnu i tehničku revoluciju u razvoju programa, jer digitalna tehnologija i mogućnosti elektronike potrošača šire šire. Nedaleko od ugla vrijeme kada će se automobili početi povezati s internetom kroz sve stacionarne i mobilni uređaji. I istovremeno će povećati ulogu besplatnog softvera za rješavanje praktičnih problema.

5 Lyfhakov za automobil - u videu:

09.04.2010 Jürgen Messinger

Kad kupite svoje sljedeći automobilVeć će biti 100 miliona linija koda, a vjerojatno biste trebali razmišljati o poteškoćama vezanim za stvaranje takvih bočnih softverskih sustava i o novim funkcijama koje se otvaraju u automobilskoj industriji.

Prvi elektronički sustavi pojavili su se u automobilima već 60-ih, a zahvaljujući tome, industrija se ozbiljno promijenila - danas su elektronike, a posebno softver, glavni izvori inovacija. Softver poboljšava pouzdanost pomoću aktivnog i pasivna sigurnost, kao što su anti-brava kočioni sistem i elektronički sistem stabilnosti tečaja (ESC). Pored toga, danas postoji postepena integracija potrošačke elektronike u automobile.

Softver za automobile je vrlo pouzdan - nivo propusta nije veći od jednog neuspjeha na milion operacija godišnje. Većina ljudi čak ni ne zamišlja koliko se automobilske funkcije upravlja danas, ipak, morate ikada čuti za plavi ekran u automobilu, mada je za računar uobičajena stvar.

Sada svaki automobil ima nekoliko elektronskih upravljačkih jedinica (elektronička upravljačka jedinica, ECU), međusobno povezana mrežom intramaine. Ovi blokovi komuniciraju putem standardnih arhitekture sabirnice, poput mreže kontrolera (mreža kontrolera, može), podatkovna mreža multimedijski sistemi (Medijski orijentirani transportni transport, većina), flexray i lokalna interkonekcija (lokalna mreža interkonekcije, LIN). U usporedbi s Ethernetom, široko se koristi za PC vezu, navodni gume rade sporije - u automobilima, zapremina poslanih informacija je mala, ali mora se obraditi za nekoliko milisekundi. Povećanje broja pridruženih ECUS-a dovodi do potrebe za stvaranjem složenijih struktura intramaneshinskih mreža koje zahtijevaju posebnu električnu i elektroničku arhitekturu. Glavne razlike između automobilskog softvera i drugih vrsta:

  • pouzdanost: Automobilski softverski sustavi trebali bi raditi isključivo pouzdano u složenoj ECU mreži tokom cijelog života automobila;
  • funkcionalna sigurnost:funkcije kao što su kočioni sustav protiv blokiranja i ESC-a zahtijevaju da je slobodan rad, koji određuje visoke zahtjeve za razvoj softvera i sami programe;
  • radite u realnom vremenu: Brzi odgovor (od mikrosekunde do milisekunda) na vanjskim događajima zahtijeva optimizirane operativne sisteme i posebnu softversku arhitekturu;
  • minimalna potrošnja resursa: Svaka dopuna računarstva ili memorije povećava troškove proizvoda koji se sa milionima cirkulacije izlivaju u znatan novac;
  • pouzdana arhitektura: Automobilski softver mora izdržati izobličenje signala i održavanje elektromagnetske kompatibilnosti;
  • elektronska mehanička kontrola zatvorenog ciklusa.

Istovremeno je potrebno uzeti u obzir da je ponovno pokretanje tijekom rada za većinu ECU neprihvatljivo.

Procesi i tehnologija

Ako u prvim godinama pojave automobilskog softvera može nadgledati jedan programer, sada više nije moguće.

U 70-ima, programeri softvera za automobile počeli su koristiti Assembler, a si postao glavni jezik u 90-ima. Tokom protekle decenije, Robert Bosch i drugi dobavljači automobilskih komponenti počeli su razvijati modele na osnovu modela koji koriste ASCET (poboljšani inženjering modeliranje i alat za upravljanje) i mathlab / simulink.

Sistemi poput mogu se ozbiljno složiti softverom, jer omogućavaju interakciju između programa raznih ECU-a. U luksuznim automobilima, složena mreža je sada povezana sa 80 ECU-a, zajedno sa do 100 miliona redova koda. Budući da softver postaje složeniji, potreba za poboljšanjem inženjerskih metoda, u industriji danas nude se paralelnim organizacijskim i tehničkim procesima za razvoj softvera. Bosch je dugo primijenio razvoj na temelju inženjerskih i upravljačkih procesa koji odgovara CMMI nivou 3, a njegova inženjerska jedinica u Indiji već je postigla nivo 5.

Razvoj na osnovu procesa i arhitekture takođe je preduvjet za efikasan outsourcing - Bosch počeo je ići na stranu nekih razvoja početkom 1990-ih. Danas se radi na softveru na softveru provodi nekoliko geografski raspoređenih jedinica, koje su se pokazale vrlo korisnim za poslovanje, na primjer, sada u podružnici u Indiji, više od 6 hiljada inženjera radi.

Upravljanje motorom

Zadatak smanjenja potrošnje goriva i emisija štetnih tvari stimulira se poboljšanjem prijenosa, na primjer, ispunjavanje zahtjeva međunarodnog zakonodavstva o štetnim emisijama zahtjeva zahtijeva poštivanje zagarantovanog roka ubrizgavanja i paljenja. Pored toga, učestalost injekcija značajno se uzgaja - moderna dizelski sistemi Moguće se ubrizgati kapi goriva manje od glave za iglica do sedam puta iza sata, što je 420 puta u sekundi za četvorocilindrični motor koji se okreću brzinom od 1800 revolucija u minuti. Ovo zahtijeva vrlo savršene algoritme upravljanja i softverske funkcije za minimiziranje odstupanja.

Potreba za smanjenjem emisija CO2 dovela je do raznolikosti tehnologija kako bi se osigurao promet - pored tradicionalnih motora sa unutrašnjim sagorijevanjem, s vremenom će biti suštinski tržišni udio pripadao hibridnim sistemima i električnim motorima. Također će se povećati alternativna potrošnja goriva, a softver će biti ključan za implementaciju ovih tehnologija.

Modul upravljanja motorom osnova je kontrole putničkih automobila. Moderni moduli sadrže preko 2 MB ugrađene fleš memorije, rade sa satom u frekvenciji sa satom do 160 MHz, koji vrše programe po jačini do 300 hiljada redova koda.

Dobavljači automobilski sistemi često prodaju više proizvoda od svakog pojedinog proizvođača automobila. U 2008. godini jedna od najvećih automobilskih kompanija prodala je oko 9 miliona vozila sa globalnom obimom proizvodnje od 65 miliona, dok je prodaja dobavljača softverskog sustava mnogo veća. Zbog toga dobavljači sistema imaju više mogućnosti kako bi se postigle uštede zbog masovna proizvodnjapotreban za veliki razvoj softvera.

Standardizacija

U pravilu su softverski sustavi za automobile razvijeni uzimajući u obzir specifičnosti određenog ECU-a - softver je usko povezan sa odgovarajućom opremom. S obzirom na to da broj automobila ECU raste, kontinuirana upotreba softvera postaje sve važnija, a za to zahtijeva standardizaciju.

2003. godine vodeći proizvođači i dobavljači automobila stvorili su automobilsku zajednicu automatske organizacije u sistemu (AutoSar, www.autosar.org) kako bi se razvili pojedinačni globalni standardni i relevantne tehnologije. Danas, AutoSar uključuje preko 150 kompanija, a ECU arhitektura, osnovni softver, metodologiju i standardizirana sučelja za aplikacijski softver se razvijaju u ovom partnerstvu. Partnerstvo doprinosi razvoju komponenti neovisnih o opremi, omogućavajući automacima i dobavljačima da razmjenjuju softver i ponovo ga koriste na raznim ECU-om.

AUTOSAR ECU arhitektura ima nekoliko nivoa softvera za odvajanje apstrakcije od hardvera (vidi sliku). Na gornjem nivou postoje primjenjivi softver koji implementira sve funkcije aplikacije. Slijedi osnovni softver koji osigurava potrebnu apstrakciju od hardvera, analogijom sa PC operativnim sistemom. Okolina izvršenja u stvarnom vremenu (AutoSar Runtime okruženje, RTE) pruža sve interakcije i unutar ECU-a i između njih. AutoSar metodologija uključuje predloške i formate razmjene koji se koriste za opisivanje, konfiguracija i stvaranje infrastrukture.

Danas elektronika čini oko 80% funkcionalne inovacije automobilske industrije, a softver je ključ za većinu njih. Kako softver postaje sve dio troškova opreme, u poslovnim modelima počinju uzimati u obzir potrebu za ponovnim upotrebom i razmjene softvera.

Brzi gume poput Etherneta sve se više koriste u automobilskoj industriji kako bi podržale interakciju između ECU-a i razvoja novih funkcija, posebno u oblasti sigurnosti. Informacije iz različitih izvora analiziraju se i konsolidiraju za formiranje kompletnog modela okruženja, omogućavajući vam razvijanje novih funkcija koje podržavaju vozača u kritične situacije. Na primjer, ako vozačka pažnja ometa putnika, aplikacija može utvrditi da automobil putuje ispred automobila i upozorava na to ili autonomno uključivanje kočenja. Vozač nikad ne pogodi postojanje takvog softvera dok ne nastavi opasna situacija.

U automobilskoj industriji danas se naziva sljedeća revolucija programa - Mediji i potrošačka elektronika počinju se primijeniti. Automobili će se povezati s Internetom i svim vrstama mobilnih i instaliranih uređaja kod kuće, a udio rješenja zasnovanih na slobodnom softveru će se neprestano.



Suočeni sa stvarnostima građevinske industrije, većina programera softvera ne suočila se - vrlo visoko specijalizirani proizvodi s kojima morate raditi. Ovo nije stvaranje programa za korisnike interneta, računara i čak ni mobilne aplikacijeStoga se pridošlici osjećaju kao Thomas iz filma "trčanje u lavirintu". Pogledajte, otprilike 50 sekundi prikolice - i shvatit ćete koji šok doživljavaju one koji se prvi put bave razvojem softvera.

Sve što imate je puno izraza i alata za koje nemate pojma. Kada tokom intervjua u jednom automobilska kompanija Pitao sam se šta korisniku koriste, anketar moje pitanje, da ga blago stavim, nije volio. Nekada sam se vizualni studio, a naivno sam se nadao da će biti potrebno nešto slično razvoju ugrađenog softvera. Nisam ni zamislio šta sam očekivao! Samo more malih i ozbiljnih (po poteškoćama) alata koje je bila potrebna još jedna žrtva.

A kada je u pitanju razvoj softvera za automobile, alati nisu jedini problem. Gotovo je nemoguće pronaći literaturu za početnike ili samo materijale za obuku koji se odnose na biblioteke ili arhitekturu relevantnih programa. Izraz " udžbenik"I uopšte zvuči neprikladno, jer je automobilski sektor vrlo zatvorena zajednica. I malo je vjerovatno da ga nazivaju zajednicom, jer sa takvim takmičenjima niko ne bi trebao pogoditi kako kreirate jedan ili drugi program. Da biste saznali barem nešto o pojedinačnim alatima i mehanizmima ovog programiranja, možete se prijaviti za skupe tečajeve, ali vaša kompanija mora biti spremna za objavljivanje značajnog iznosa i neće trebati manje od nekoliko tjedana da bi iskustvo moglo biti manje od nekoliko tjedana da sada trebate. Šteta je da je tako teško razumjeti specifičnosti programiranja za automobilsku industriju, a zato sam odlučio posvetiti svoj članak na ovu konkretnu temu.

Budući da sam više puta morao prelaziti iz kreiranja aplikacija za korisnike interneta / računala za razvoj ugrađenih programa i nazad, ne znam za probleme sa kojima se suočavaju pridošlici, koji se uglavnom suočavaju sa prvim blokom proizvoda. Slične poteškoće nastaju iz programera koji nikada nisu naišli na specifičnosti automobilske industrije.

U ovom i sljedećem članku želio bih razgovarati o principima firmvera za automobile, kao i pogledati egzotičnu arhitekturu ugrađenih aplikacija.

Koje ćemo teme razmotriti?

  • Kako ugrađeni softver povećava performanse automobila?
  • Kako ugrađene aplikacije omogućuju vožnju automobila?
  • Koja su tipična ograničenja CPU-a?
  • Kako se kroz ugrađene programe proces kontinuirane obrade podataka od senzora?
  • Kako je ovaj softver strukturiran i kako odvojene aplikacije međusobno komuniciraju da bi kontrolirali automobil?
Odgovorit ću na ova pitanja, razmotrim određeni primjer, a istovremeno ću preispitivati \u200b\u200brazvoj ugrađene softverske arhitekture. Kao primjer, uzećemo potpuno elektronički upravljački sistem. Ovo nije pravi model, već u strukturi, u principu izgleda kao činjenica da ste najvjerovatnije vidjeli u svom automobilu. Razgovarat ćemo više o arhitekturi, a zatim prijeći na pojednostavljenu shemu koja otkriva suštinu funkcionalnosti sustava.

Možete gledati video posvećen razvoju elektronskog upravljačkog sistema. Usput sam radio i u ovom timu.

Ovaj je model djelomično upravljati programski. Djelomično znači da specijalizirani softver pomaže samo vozaču, ali to je on koji je bio potpun.

Pretpostavimo da moramo stvoriti potpuno elektronički upravljački sistem u kojem upravljač nije direktno povezan sa točkovima. Umjesto toga, senzor mjeri ugao rotacije i šalje podatke dobivene našim programom. U automobilskoj terminologiji ovo je servo. Nećete vjerovati, ali zahvaljujući Nissan, na tržištu se pojavio model sa servo.

Performanse softvera pruža maleni procesor ili, tačnije dat, mikrokontroler, na mreži spojen na senzor.

Kad vozač okrene volan, zahvaljujući senzoru, koji stalno prenosi informacije o trenutnom uglu rotacije, odgovarajući signal prima. Na primjer, ako vozač okrene volan na 90 ° udesno, na sekundu se senzorski signal obrađuje u skladu sa sljedećim principom:

Pored toga, softver takođe upravlja električni motorŠto pomiče nazubljenu šinu s lijeva na desno i u suprotnom smjeru, i to znači, ugao rotacije prednjih točkova promjena automobila. U skladu s tim, softver može poslati automobil s lijeve ili udesno. Odnos između mikrokontrolera koji vodi softver i električni motor osigurava se elektronski blok Kontrola (ECU), koji uključuje sam mikrokontroler i pojačalo napajanja koji reguliše sistem elektroenergetskog motora. Dakle, naš program varira protok struje u motoru i položaju zupčane šine promjene u željenom smjeru.


Elektronska upravljačka jedinica (ECU)

Pod uslovom da ugrađeni softver pravilno funkcionira, kada se upravljač okreće gotovo odmah, položaj nazubljene šine se mijenja.


Upravljač - plavi, upravljač reika - ružičasta (približno)

Postaje jasno da čak i obrada informacija ovdje ne pokorava ni logiku programiranja orijentiranog na događaje, kao u slučaju uobičajenih primjena grafičkog korisničkog sučelja, niti zakona o grešanjima u battu. Umjesto toga, potrebna je kontinuirana, pravovremena obrada dolaznih podataka. Ako je program potreban previše vremena za analizu pokazatelja senzora, upravljačka željeznica i prednji točkovi automobila kreću se s kašnjenjem, a vozač će to primijetiti. Najvjerovatnije, u ekstremnoj situaciji to će dovesti do gubitka kontrole automobila.Na primjer, prilikom okretanja upravljača, mašina odmah ne reagira na manevar. Takve specifične karakteristike povećavaju zahtjeve za verzije za automobile, posebno ako uzmite u obzir ograničene performanse procesora standardnih elektronskih upravljačkih jedinica.

U nastavku serije ćemo razmotriti softversku arhitekturu koja vam omogućuje eliminiranje određenih problema, a nadam se, uz pomoć ovih materijala, novaci programeri ugrađenih aplikacija za automobile mnogo su brži od osnovnih principa koji rade u Ovo područje.