{"id":544,"date":"2018-10-10T10:42:15","date_gmt":"2018-10-10T07:42:15","guid":{"rendered":"https:\/\/iot.ttu.ee\/et\/?p=544"},"modified":"2018-12-20T14:03:30","modified_gmt":"2018-12-20T12:03:30","slug":"taltech-iseauto-2-4-testauto-juhtimine-endatehtud-riistvaraga","status":"publish","type":"post","link":"https:\/\/iot.ttu.ee\/et\/taltech-iseauto-2-4-testauto-juhtimine-endatehtud-riistvaraga\/","title":{"rendered":"TalTech Iseauto saamislugu. 2\/4: Testauto juhtimine isetehtud riistvaraga"},"content":{"rendered":"<p><em><i>TalTech Iseauto valmib TalTech infotehnoloogia-ja inseneriteaduskonna tudengite ning Silberauto AS koost\u00f6\u00f6na. Projekti \u00fche partnerina on kaasatud ka ABB.<\/i><\/em><\/p>\n<p align=\"justify\">Eelmisel korral tutvustasime l\u00fchidalt TalTechi Iseauto projekti ning selle aluseks olevat Mitsubishi i-Mievit koos juhtloogikaga. Seekord tutvustame Iseautole paigaldatud omatehtud kontrollereid, nende vajadusi ning miks \u00fcks v\u00f5i teine kontroller Iseauto juhtimiseks vajalik on. Sealhulgas on esimesed testid tehtud alloleval pildil oleva testautoga, millest on saanud meie platvorm, mille abil me saame k\u00f5ik endaloodud riistvara ning tarkvara l\u00e4bi testida.<\/p>\n<p align=\"justify\">Mikrokontrollerite kasutamine Iseautol on paratamatu, kuna nad aitavad tekitada samu signaale auto juhtimiseks, mida tekitab inimene kui ta auto rooli keerab, gaasi v\u00f5i pidurit vajutab v\u00f5i k\u00e4iku vahetab. \u00dchel mikrokontrolleril v\u00f5ib olla v\u00e4ljund- ja sisendviikusid m\u00f5nest kuni paarisajani, mis k\u00f5ik on \u00fcmberprogrammeeritavad vastavalt vajadusele. Iseauto projektis kasutame STMicroelectronics-i poolt toodetud kontrollereid. Peamised p\u00f5hjused nende kasutamisel on lai valik erinevaid kontrollereid, suur kasutajaskond, mugav arendusliides ja loomulikult ka meie varasem kogemus nende kasutamisel. Kuna esimese arendusetapi raames oli vaja teostada hulganisti teste, siis modifitseerimise testauto juhtpneeli, et vajadusel kasutada nii ises\u00f5itvat funktsiooni kui ka manuaalset re\u017eiimi.<\/p>\n<figure id=\"attachment_584\" style=\"width: 852px\"  class=\"wp-caption aligncenter\"><a href=\"https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/10\/20180619_165218_mod.jpg\"><img fetchpriority=\"high\" decoding=\"async\" class=\"wp-image-584 size-large\" src=\"https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/10\/20180619_165218_mod-852x1024.jpg\" alt=\"\" width=\"852\" height=\"1024\" srcset=\"https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/10\/20180619_165218_mod-852x1024.jpg 852w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/10\/20180619_165218_mod-250x300.jpg 250w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/10\/20180619_165218_mod-768x923.jpg 768w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/10\/20180619_165218_mod-830x997.jpg 830w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/10\/20180619_165218_mod-230x276.jpg 230w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/10\/20180619_165218_mod-350x421.jpg 350w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/10\/20180619_165218_mod-480x577.jpg 480w\" sizes=\"(max-width: 852px) 100vw, 852px\" \/><\/a><figcaption class=\"wp-caption-text\">ISEAUTO testauto modifitseeritud juhtpaneel<\/figcaption><\/figure>\n<p align=\"justify\">TalTechi Iseautos on ca 10 erinevat kontrollerit juba praegu. Osa neist on valmistatud auto tootja poolt ning me kasutame neid endiselt edasi, osa oleme aga asendanud enda arendatud kontrolleritega. Antud postituses keskendume kahele peamisele kontrollerile &#8211; nimetame neid <i><span style=\"font-weight: 400;\">Drive<\/span><\/i><span style=\"font-weight: 400;\">\u2019ks ja <\/span><i><span style=\"font-weight: 400;\">Master<\/span><\/i><span style=\"font-weight: 400;\">\u2019iks. Drive kontrolleri \u00fclesandeks on auto juhtimiseks m\u00f5eldud seadmete kontrollimine. Master kontrolleri peamine \u00fclesanne on vahendada infot erinevate kontrollerite ja arvuti vahel. Alloleval joonisel on n\u00e4ha Master kontrolleri versioon 1.2. Vasakul pool on n\u00e4ha toitepistikud ja 3 CAN liidese pistikut ning paremal pool ethernet pistik.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><b>Master controller<\/b><\/p>\n<figure id=\"attachment_565\" style=\"width: 1024px\"  class=\"wp-caption aligncenter\"><img decoding=\"async\" class=\"wp-image-565 size-large\" src=\"https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/masterv-1-1024x947.jpg\" alt=\"\" width=\"1024\" height=\"947\" srcset=\"https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/masterv-1-1024x947.jpg 1024w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/masterv-1-300x278.jpg 300w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/masterv-1-768x711.jpg 768w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/masterv-1-830x768.jpg 830w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/masterv-1-230x213.jpg 230w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/masterv-1-350x324.jpg 350w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/masterv-1-480x444.jpg 480w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-caption-text\">Master kontroller<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p align=\"justify\">Master kontrolleri peamine \u00fclesanne, info edastamine \u00f5igele kontrollerile, s\u00f5ltub sellest, millist t\u00fc\u00fcpi andmeid mingi kontroller vajab. Osa andmeid v\u00f5ib edastada teatud intervalli tagant, ajakriitilisi andmeid, mida on vaja kiirete otsuste tegemiseks, edastatakse koheselt peale saabumist.<\/p>\n<p>&nbsp;<\/p>\n<p align=\"justify\">Master peab olema v\u00f5imeline suhtlema m\u00f5lema suunaliselt, nii teiste kontrollerite, i-Mievi elektroonilise kontroll\u00fcksusega (ECU) kui ka personaalarvutiga (PC). ECU suhtleb teiste seadmetega CAN-siini abil ja PC-l on k\u00f5ige kiirem suhelda kontrolleriga etherneti abil. Otsustasime, et k\u00f5ige m\u00f5istlikum on ka kontrollerite vaheline suhtlus teha CAN-siini abil. Seega on meil kohe sobiva Master kontrolleri valikuks olemas n\u00f5ue, et ta peab toetama ethernet liidest ning kontrollerite ja ECUga suhtlemiseks vaja v\u00e4hemalt kolme CAN liidese v\u00f5imekust. Leidsime, et sobivaks kontrolleriks on STM32F767.<\/p>\n<p>&nbsp;<\/p>\n<p align=\"justify\">Info edastamisel kasutataval CAN-siinil on v\u00f5imalik s\u00f5numeid sisuliselt vaid \u00fche konkreetse protokolli abil edastada. Neid s\u00f5numeid iseloomustab \u00fcks 11- v\u00f5i 29-bitine identifikaator ning kuni 8 baiti s\u00f5numit. Meie kasutame Iseautol vaid 11-biti pikkuseid identifikaatoreid. \u00a0Etherneti puhul on v\u00f5imalik kasutada erinevaid protokolle, kuid meile sobiv on UDP protokoll, mis ei n\u00f5ua kohalej\u00f5udmise kinnitust. \u00dchelt poolt puudub s\u00f5numi kohalesaatmise kinnituse k\u00fcsimise vajadus, kuna s\u00f5numeid saadetakse 100 korda sekundis. Kui \u00fcks s\u00f5num j\u00e4\u00e4b vastu v\u00f5tmata, tekib auto juhtimises hilinemine ca 10ms, mis pole kuni 20km\/h liikuva s\u00f5iduki puhul nii kriitiline. Teisalt on igal s\u00f5numil kaasas oma loendur, mille abil saame automaatselt tuvastada saadetud ja vastuv\u00f5etud s\u00f5numite arvude erinevusi ning tuvastada selle abil v\u00f5imalikke probleeme nii riistvaras kui tarkvaras.<\/p>\n<p>&nbsp;<\/p>\n<p><b>Drive controller<\/b><\/p>\n<figure id=\"attachment_564\" style=\"width: 1020px\"  class=\"wp-caption aligncenter\"><img decoding=\"async\" class=\"wp-image-564 size-large\" src=\"https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-v-1-1020x1024.jpg\" alt=\"\" width=\"1020\" height=\"1024\" srcset=\"https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-v-1-1020x1024.jpg 1020w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-v-1-150x150.jpg 150w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-v-1-300x300.jpg 300w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-v-1-768x771.jpg 768w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-v-1-830x834.jpg 830w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-v-1-230x231.jpg 230w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-v-1-350x352.jpg 350w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-v-1-480x482.jpg 480w\" sizes=\"(max-width: 1020px) 100vw, 1020px\" \/><figcaption class=\"wp-caption-text\">Drive kontroller<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p align=\"justify\">Teine ja oluliselt keerulisem kontroller on Drive kontroller. Nagu eelpool mainitud, siis tema \u00fclesandeks on auto liikumist juhtida &#8211; teisis\u00f5nu juhtida auto gaasipedaali, pidureid, rooli ja k\u00e4igukangi. Kui eelmine kord tutvusime Mitsubishi i-Mievi juhtloogikaga, siis seekord vaatame, kuidas saab kontrolleriga seda juhtloogikat imiteerida.<\/p>\n<p>&nbsp;<\/p>\n<p align=\"justify\">Alustagem gaasipedaalist. Nagu eelmises postituses sai mainitud, siis on meil vaja tekitada kaks muutuva pingega signaali, kus p\u00f5hi ehk MAIN signaal peab olema varu ehk SUB \u00a0signaalist kaks korda k\u00f5rgem. Selliseid muutuva pingega signaale tekitatakse digitaal-analoogmuunduri (DAC) abil. Drive kontrolleris on kasutusel STM32F407 mikrokontroller ja sellel on selliseid muundureid sisse ehitatud kaks t\u00fckki, mida me ka kasutame.<\/p>\n<p>&nbsp;<\/p>\n<p align=\"justify\">Rooli p\u00f6\u00f6ramiseks tuleb meil juhtida rooliv\u00f5imendi elektrimootorit, kusjuures voolu suund m\u00e4\u00e4rab \u00e4ra, kuhu poole ning voolutugevus, kui kiiresti rattaid p\u00f6\u00f6ratakse. Selleks kasutame elektroonikal\u00fclitusena H-silda, mis v\u00f5imaldab elektrimootorit m\u00f5lemas suunas juhtida. Iseautole oleme paigaldanud sellise H-silla, mis v\u00f5imaldab meil voolutugevust pulsilaiusmodulatsiooni abil kontrollida. Kes soovib H-silla toimimise kohta t\u00e4psemalt lugeda, siis \u00fcks koht on n\u00e4iteks <a href=\"http:\/\/www.modularcircuits.com\/blog\/articles\/h-bridge-secrets\/h-bridges-the-basics\/\"><span style=\"font-weight: 400;\">siin<\/span><\/a><span style=\"font-weight: 400;\"> (inglise keeles).<\/span><\/p>\n<p>&nbsp;<\/p>\n<p align=\"justify\">K\u00e4igukasti juhtimine on \u00fclimalt lihtne, tuleb lihtsalt \u00f5igesse ECU sisendisse k\u00f5rge pingenivoo suunata. Kui mikrokontrollerite tavaline t\u00f6\u00f6pinge on kas 3,3V v\u00f5i 5V, siis k\u00e4igukasti k\u00f5rge signaal peab olema i-Mievil 12V. See teeb asja veidi keerulisemaks. Selleks et 3,3V-ga l\u00fclitada 12V, kasutame Iseautol abivahenditena optroneid, mille abil seome elektriliselt lahti kontrollerite juhtsignaali auto omast. See aitab kaitsta meie kontrollereid kui auto s\u00fcsteemis peaksid tekkima h\u00e4ired v\u00f5i m\u00f5ni komponent riknema, mis v\u00f5ib Drive kontrolleri l\u00e4bi p\u00f5letada.<\/p>\n<p>&nbsp;<\/p>\n<p align=\"justify\">Piduris\u00fcsteemi v\u00e4ljat\u00f6\u00f6tamisel Iseauto testautole pidime arvestama, et meil j\u00e4\u00e4ks auto orginaalpidurid kastusse selleks, et saaksime neid vajadusel kasutada. Seet\u00f5ttu otsustasime, et kasutame piduritena BMW elektroonilist k\u00e4sipidurit, mille paigutasime autos mehaanilise k\u00e4sipiduri asemele. Kuna tavaliselt juhtitakse auto k\u00e4sipidurit CAN liidese kaudu, aga meil antud k\u00e4sipiduri spetsifikatsiooni ei olnud, siis v\u00f5tsime vahelt v\u00e4lja k\u00e4sipiduri juhtelektroonika ning asusime juhtime k\u00e4sipiduri elektrimootorit otse. Kuna ka antud k\u00e4sipiduri mootorit tuleb juhtida m\u00f5lemas suunas (peale ja maha v\u00f5tmiseks), siis tuli j\u00e4lle kasutada H-silla abi. Kuna sisseehitatud k\u00e4sipiduri l\u00f5pul\u00fcliteid me kasutada ei saanud (saamaks aru, kui palju k\u00e4sipidur on kas peale v\u00f5i maha t\u00f5mmatud), siis lisasime mootori juhtimise vooluringi voolusensorid. Kui k\u00e4sipiduri mootori tarbitav vool \u00fcletas v\u00f5rdlusv\u00e4\u00e4rtust, siis l\u00f5petasime pidurite peale t\u00f5mbamise v\u00f5i vabastamise. Samuti on meil oluline teada, mis asendis k\u00e4sipidur parasjagu on. Selleks kasutame k\u00e4sipidurisse ehitatud enkoodrit, mis annab k\u00e4ispiduri mootori iga poolp\u00f6\u00f6rde kohta impulsi. Selle abil on v\u00f5imalik mootori p\u00f6\u00f6rete arvu lugeda ehk teada saada mootori hetke asend.<\/p>\n<figure id=\"attachment_572\" style=\"width: 1024px\"  class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-572 size-large\" src=\"https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/k\u00e4sipidurv-1024x573.jpg\" alt=\"\" width=\"1024\" height=\"573\" srcset=\"https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/k\u00e4sipidurv-1024x573.jpg 1024w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/k\u00e4sipidurv-300x168.jpg 300w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/k\u00e4sipidurv-768x430.jpg 768w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/k\u00e4sipidurv-830x464.jpg 830w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/k\u00e4sipidurv-230x129.jpg 230w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/k\u00e4sipidurv-350x196.jpg 350w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/k\u00e4sipidurv-480x268.jpg 480w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-caption-text\">Elektrooniline k\u00e4sipidur testautol<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p align=\"justify\">N\u00fc\u00fcd oli meil k\u00f5ik vajalik testimiseks olemas &#8211; me saime p\u00f6\u00f6rata rooli, hoida sobivat kiirust ning l\u00fclitada sisse soovitud k\u00e4ik. Lisasime autole ka releekarbi, mis v\u00f5imaldab testauto arenduseesm\u00e4rgil isejuhtivalt re\u017eiimilt k\u00e4sijuhtimisse \u00fcmber l\u00fclitada.<\/p>\n<figure id=\"attachment_563\" style=\"width: 1024px\"  class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-563 size-large\" src=\"https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-master-relay-1-1024x534.jpg\" alt=\"\" width=\"1024\" height=\"534\" srcset=\"https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-master-relay-1-1024x534.jpg 1024w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-master-relay-1-300x157.jpg 300w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-master-relay-1-768x401.jpg 768w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-master-relay-1-830x433.jpg 830w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-master-relay-1-230x120.jpg 230w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-master-relay-1-350x183.jpg 350w, https:\/\/iot.ttu.ee\/wp-content\/uploads\/2018\/09\/drive-master-relay-1-480x251.jpg 480w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-caption-text\">Releekarp, drive ja master kontroller tests\u00f5idukis<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><em>Blogi valmimist toetavad Haridus- ja Teadusministeerium ning SA Eesti Teadusagentuur.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>TalTech Iseauto valmib TalTech infotehnoloogia-ja inseneriteaduskonna tudengite ning Silberauto AS koost\u00f6\u00f6na. Projekti \u00fche partnerina on kaasatud ka ABB. Eelmisel korral tutvustasime l\u00fchidalt [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":566,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[27,12],"tags":[],"class_list":["post-544","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-automotive","category-platform"],"_links":{"self":[{"href":"https:\/\/iot.ttu.ee\/et\/wp-json\/wp\/v2\/posts\/544","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/iot.ttu.ee\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/iot.ttu.ee\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/iot.ttu.ee\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/iot.ttu.ee\/et\/wp-json\/wp\/v2\/comments?post=544"}],"version-history":[{"count":25,"href":"https:\/\/iot.ttu.ee\/et\/wp-json\/wp\/v2\/posts\/544\/revisions"}],"predecessor-version":[{"id":711,"href":"https:\/\/iot.ttu.ee\/et\/wp-json\/wp\/v2\/posts\/544\/revisions\/711"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/iot.ttu.ee\/et\/wp-json\/wp\/v2\/media\/566"}],"wp:attachment":[{"href":"https:\/\/iot.ttu.ee\/et\/wp-json\/wp\/v2\/media?parent=544"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/iot.ttu.ee\/et\/wp-json\/wp\/v2\/categories?post=544"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/iot.ttu.ee\/et\/wp-json\/wp\/v2\/tags?post=544"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}