Elektroonika arenduse protsess – Testimine

Ja Jumal ütles:

“Saagu valgus!”, Ja valgus sai.

Ja jumal nägi, et valgus oli hea, …

Seega – isegi Jumal võttis pärast millegi loomist hetke vaatamaks ja veendumaks, et see mis ta just valmis sai on ikkagi hea, kõlbab ning vastab ootustele.

Kuidagimoodi kipuvad aga elektroonikud teinekord ennast Jumalast vägevamaks pidama ja viskavad elektroonikaprojekti üle järgmisele osakonnale veendumata, et nende disain ootuspäraselt töötab.

Siit saab ka teise arhetüüpilise loo välja võluda. Kui lähed oma disainist vigu otsima, võid kokku saada draakoniga, kelle nimi on “Saeioleeriti Heaelektroonik”. Arusaadavalt on selline perspektiiv hirmus. Kiusatus on silmad kinni panna ja toode edasi visata. Ja kui siis hakkabki vigu välja tulema, on “hea” näidata näpuga segasele spetsifikatsioonile, halvale juhendamisele, tarkvara vigadele, ebamõistlikule ajakavale, kehvale töötasule ja läbipõlemisele. See ei ole kangelase käitumine. Kangelane otsiks draakoni üles, lööks ta maha ja võtaks ta kulla (antud kontekstis kogemused) endale.

Aga aitab psüholoogiast. Teemaks on testimine

Testimine on osa elektroonika arenduse protsessist, kus paistavad teadustöö kõrvad. See on see koht kus elektroonika disain/projekteerimine saab tehnikateaduseks ja põhjus, miks ülikooli lõpetaja saab kraadi tehnikateadustes.

Kahjuks on elektroonika arendus valdkond, kus seadmete omavahelisi vastandikmõjusid on praktiliselt lõpmatult. Kõiki elektromagneetilisi ja termilisi mõjusid simuleeritakse kasutades matemaatilisi mudeleid – mõlemad on selleks piisavalt mittelineaarsed. Kõik komponentide mudelid on tegelikult lihtsustatud ja simulatsioonid käsitlevad tavaliselt väga piiratud skeemi osi väga piiratud ajahetkes.

Kõige täpsem simulaator on elu ise ja nii ka elektroonikas – kui on tarvis näha kuidas disainitud seade töötab, tuleb see valmis ehitada ja seda siis katsetada.

Erineva küpsusastmega prototüüpidele on mõistlik teha erineva tasemega teste. Elektroonikatoode eksisteerib mitmel abstraktsuse tasemel korraga ja iga järgmine tase kasvatab keerukust.

Disaini katseline kontroll

Iga alamskeem testitakse üksikuna veendumaks, et need töötavad disainiülesande püstituses ette nähtud viisil. Kõik regulaatorid, IC-d, sisend ja väljund ahelad, liidesed ja ülejäänud alamsüsteemid pannakse tööle isoleerituna. Vajadusel kontrollitakse nende toimimist ka seadme minimaalsel ja maksimaalsel töötemperatuuril. Eesmärk on enne teiste distsipliinide kaasamist veenduda, et iga üksik funktsioon töötab rahuldavalt.

Sedasi väheneb tundmatute hulk juhuks, kui edaspidi probleeme tekib. Võime olla kindlad, et disain on korrektne ja probleemi põhjus saab olla mingite süsteemide vastandikmõjudes. Mingi funktsionaalse taseme abstraktsioonis võib kindel olla, kaos on väiksem ja tegevust on võimalik struktureerida.

Trükkplaadi koostu test toimib osati disaini katselise kontrolli faasis ja osati süsteemi integratsiooni faasis. Osade alamsüsteemide testimiseks võib olla möödapääsmatu tarkvara olemasolu ja toimimine. See on hea koht kus välja selgitada kas puudulik funktsioon on tingitud riistvara või tarkvara veast.

Sedasorti keerulisemad testid eeldavad tihtipeale mitme alamsüsteemi üheaegset toimimist. Selleks, et testida raadioside moodulite tööd, peab töötama mikrokontroller ja toitelülitused. Testides selles faasis sidesüsteemi toimimist piirjuhtudel, saab mingi maani veenduda süsteemi alamosade korrektses koostoimimises. Saab veenduda, et kui raadio tarbib saatel oma maksimumvõimsust ei kuku pingeregulaatorite toide ajutiselt alla mikroarvuti taaskäivitamise taseme. Samuti saab veenduda, et vaikeoleku minimaalsel koormusel ei ole impulspingeregulaatori vahelduvvoolu komponent liialt suur.

Kuigi pingeregulaatori alamsüsteemi testid peaksid neid omadusi samuti testima, ei ole testis praktiline üritada jäljendada kõiki võimalike koormuse muutuse kiiruseid või regulaatori reaktsiooni juhuslikult pulsseerivale madalale koormusele.

Süsteemi integratsiooni testid

Süsteemi integratsiooni testideks ühendatakse loodud seadme külge kõik teised süsteemi seadmed, millega normaaloludes liidestutakse. Kasutada tuleks realistlike toiteallikaid, koormuseid, sideliideseid ja neid ühendavat kaabeldust.

Kuigi selleks hetkeks on kõik liidesed kontrollitud arendustööriistade ja laboriseadmetega, aitab süsteemi integratsiooni test veenduda süsteemi osade probleemideta koostöös. See on test ühtmoodi testitava mooduli jaoks, kui ka kogu ülejäänud süsteemile. Tarvis on jällegi veenduda, et süsteemis ei oleks ootamatusi- midagi, mida mudelid ja simulatsioonid arvesse ei võtnud.

Võibolla on süsteemi toiteallika väljundil märkimisväärne vahelduvvoolu komponent, mis paneb sisendis asuva pingeregulaatori kondensaatorid vilistama. Võibolla on CAN siini terminaatortakistite asukoha määramisel segadus tekkinud ja süsteemis on rohkem kui kaks 120Ω takistit. Võibolla on kaabliköidise joonisel signaalid vahetusse läinud.

Kõige huvitavam osa süsteemi integratsiooni testist on liidestus tarkvaraga. See on esimene kord kui tarakvarale saab teha realistlikus keskkonnas täie funktsionaalsuse teste. Kas süsteem on stabiilne või teeb endale ootamatuid taaskäivitust? Kas süsteem käitub ootamatult/hangub/annab valesid signaale?

Toote valideerimise testid

Viimaks veendutakse, et toode vastaks täielikult oma spetsifikatsioonile. Seda testi saab teha prototüübiga, mis on õigel mehaanilisel kujul ja mille peal on täiel määral funktsioneeriv tarkvara. Selleks hetkeks on toode selline nagu ta on siis, kui ta tootmisliinilt tulema hakkab ja kliendile läheb.

Sõltuvalt tootest käivad siia külma ja kuuma, niiske ja kuiva, vaakumi testid. Võibolla pritsitakse toodet soolaga/liivaga. Võibolla toodet pillatakse või raputatakse.

Enamustel juhtudel käivad siia elekltromagneetilise ühilduvuse testid. Uuritakse ega seade ei kiirga liialt, ei ole kiirgusele liialt tundlik, ei tekita liialt müra toitevõrku, ei ole liialt tundlik toitevõrgust tuleva müra suhtes ja ei karda staatilise elektri lööke.

Tehakse ka toote eluea teste. Need on tavaliselt testid, mis disainitakse simuleerima toote eluiga kiirendatud korras. Toodet lülitatakse iga minut sisse välja kuni saavutatakse oodatav eluea töötsüklite arv. Toote temperatuuri kõigutatakse miinimumi ja maksimumi vahel, kuniks toode on saanud oma tavalisest soojenemisest ja jahtumisest tekkiva koormuse. Või siis pannakse toode tööle oma maksimumtemperatuuril ja uuritakse seeläbi matemaatilisi mudeleid kasutades, kui pikk võiks toote eluiga olla oma tavalisel töötemperatuuril.

Selliste testide vahele tehakse pidevalt korrasoleku kontrolli, ehk siis kõik toote funktsioonid katsetatakse läbi ja veendutakse, et testi käigus ei ole miski katki läinud.

Toote valideerimise testid lepitakse toote omanikuga kokku. Kokku lepitakse nii testistandardid kui limiidid. See on formaalse elektroonikaarenduse projekti viimane samm. Kliendilt tuli spetsifikatsioon mis pöörati tooteks, ning nüüd demonstreeritakse, et toode mis arendusprotsessist välja tuli on tõesti see mis spetsifikatsioonis nõutud sai.

Raport

Ja loomulikult tuleb kõik kirja panna, sest mida pole kirjas seda pole toimunud. Mälu veab alt ja kui tagantjärgi on vaja veenduda mida, kuidas ja millega testiti ei ole korralikule dokumendile asendust.

Kui klient soovib kinntiust, et tema seadme töötab nõuetes spetsifitseeritud viisil esitab profesionaalne organisatsioon testiraporti.

Kui testi läbimist nõuab seadus, näiteks elektromagneetilise ühilduvuse testid, on raportit vaja vaidluse korral. Nimelt kui mõne riigi järelevalveamtil tekib kahtlus, et toode häirib teisi tooteid tahab ta tõestust mis näitaks kahjulike mõjude puudumist. Kui seda tõestust testiraporti kujul esitada ei ole algab uurimine. Mõõtmised lõpuks tehakse ja kui siis selgub, et tõesti- toode rikub norme – võib trahv märkimisväärne olla.

Aga lõpuks on ikkagi inseneri/arendusettevõtte huvi olla igal hetkel valmis esitlema mõõteraportit mis demonstreeriks nende disaini sobivust ja kvaliteeti.

Raportis peaks olema kirjas mida testitakse. Seal peaks olema näidise nimi, versioon ja kui asjakohane siis tarkvara millega see töötab. Kui tootele on tehtud modifikatsioone, veaparandusi või mingeid muid muudatusi tuleb need täpselt kirjeldada. Lisaks kirjeldustele on otstarbekas kasutada fotosid ja jooniseid.

Raportis peaks olema kirjas millega testitakse ehk siis testseadmete loetelu.

Testiprotseduur tuleks kirjeldada võimalikult täpselt, et see oleks vajadusel korratav.

Ja loomulikult peavad testiraportis kirjas olema mõõtetulemused. Nende numbriline väärtus või loogiline olek, ning info kas mõõdetu vastab ootusele. Ehk siis kas test on läbitud või mitte.

Kokkuvõte

Kuniks elektroonikaprojekt on paberil on see hüpoteetiline. See sisaldab endas inseneri parimat teadmist ja lubab uskuda, et kõik on korrektne. Ei insener ega inimene laiemalt ei tohiks kunagi hakata uskuma, et ta on eksimatu. Teame mis juhtub riikide ja riigijuhtidega kus selline hoiak maad võtab. Alati peab küsima ja kahtlema.

Sellepärast pannakse hüpotees proovile. Selleks, et näha kus plaan vette ei pea ja kus on karid. Sedasi õpime, areneme ja loome eeldused paremaks. Sedasi anname kinnitust oma kliendile, et ta tõesti on saanud seda mille eest ta hunniku raha välja käis.