38 Mikrokrmilnik ima povezave na vse signale, ki so potrebni za delovanje. Razporeditev krmilnih povezav in signalov so predstavljene v Tabela 2 in vse povezave na Slika 28.
Tabela 2: Povezave vhodov in izhodov mikrokrmilnika.
Oznaka priključka
Številka
priključka Ime signala Funkcija Opis
PA0 8 PWR2 vhod predstavlja prisotnost omrežne
napetosti
PA4 12 POSITION ADC2_IN17 analogni signal za senzor
pozicije motorja
PA10 32 PWR1 vhod predstavlja prisotnost baterijske
napetosti
PA11 33 USB_N USB_D+ diferencialno vodilo za
povezavo USB
PA12 34 USB_P USB_D- diferencialno vodilo za
povezavo USB
PA13 37 JTMS/SWDIO razhroščevanje za razhroščevanje, povezan na ST-LINK V3MODS in 6x1 priključek za ST-LINK/V2 PA14 38 JTCK/SWCLK razhroščevanje za razhroščevanje, povezan na
ST-LINK V3MODS in 6x1 priključek za ST-LINK/V2
PA15 39 JTDI razhroščevanje za razhroščevanje, povezan na
ST-LINK V3MODS
39 PB4 41 NJTRST razhroščevanje za razhroščevanje, povezan na
ST-LINK V3MODS
PB5 42 USB_sens vhod zaznava, če je priključena
naprava preko priključka USB
PB6 43 USART1_TX USART1 za razhroščevanje, povezan na
ST-LINK V3MODS
PB7 44 USART1_RX USART1 za razhroščevanje, povezan na
ST-LINK V3MODS
PB8 45 BOOT0 način nalaganja
kode
poljubno vezan na GND preko kratkostičnika
PB9 46 BUZZ PWM_TIM4_CH4 za krmiljenje piskača s
signalom PWM
PB10 22 ON/OFF vhod zaznavanje stanja tipke za
prižiganje in ugašanje sistema
PB11 25 TIPKA LED izhod za upravljanje svetleče diode v
tipki za prižiganje in ugašanje
PB12 26 FDCAN_RX FDCAN2 komunikacija z motorjem preko
vodila CAN
PB13 27 FDCAN_TX FDCAN2 komunikacija z motorjem preko
vodila CAN
PB14 28 FLOW ADC4_IN4 analogni signal senzorja za
pretok
PB15 29 PRESS ADC4_IN5 analogni signal senzorja za tlak
40 Slika 28: Shema povezav mikrokrmilnika.
4.4.2 Povezava USB
Ker ima STM32G474 (oziroma STM32G483) mikrokrmilnik možnost sprejemanja diferencialnih linij za USB, smo dodali povezavo USB preko ženskega priključka USB 2.0 tipa B. Diferencialni liniji D+ in D- smo direktno povezali na mikrokrmilnik. Na njiju smo dodali namensko ESD zaščito za visokofrekvenčne povezave TPD2E009 podjetja Texas Instruments, ki omogoča zaščito za diferencialni par, po katerem poteka hitrost prenosa do 6 Gbps.
Napajalno linijo VBUS smo preko napetostnega delilnika povezali na mikrokrmilnik, kjer služi kot indikacija, če je na USB priključena kakšna naprava.
Oklop (ang. shield) priključka smo povezali preko paralelno vezanega upora in kondenzatorja na GND. Upor mora imeti čim višjo upornost, zato smo uporabili 2 MΩ upor (kot pri izbiralniku napajanja) in kondenzator mora imeti čim nižjo kapacitivnost, zato smo uporabili 18 pF kondenzator (kot pri kristalnem oscilatorju). Ta izbira vrednosti je za doseganje čim nižje impedance pri povezavi med oklopom in GND.
41 Slika 29: Povezava USB na mikrokrmilnik.
42 4.5 Senzorji
Za pravilno delovanje ventilatorja sta potrebna senzorja za tlak v cevi in pretok skozi cevi.
Glede na njuni vrednosti se prilagaja delovanje ventilatorja. Za merjenje tlaka in pretoka smo uporabili senzorja HPSD 3000 podjetja Hyb, Za merjenje pretoka smo uporabili diferencialni HPSD 3000-050M DBPS za merjenje v območju do 50 mbar. Za merjenje tlaka smo uporabili relativni HPSD 3000-100M D0NL za merjenje v območju 100 mbar. Za napajanje potrebujeta napetost 5 V in omogočata tako analogni kot digitalni izhod preko vodila I2C. Prav tako je potreben senzor pozicije motorja, za kar smo uporabili magnetni kotni enkoder RMB20Vx podjetja RLS, ki omogoča merjenje kota 45° brez prelitja. Ta se napaja s 5 V in omogoča analogni izhodni signal.
Ker vsi trije senzorji delujejo pri napajalni napetosti 5 V, bo njihov izhodni signal v rangu do 5 V, zato smo na vseh analognih linijah morali znižati napetost. V ta namen smo dodali napetostne delilnike. Na vseh linijah morajo biti čim bolj enaki delilniki. Uporabili smo upora s 3 kΩ ter s 5,6 kΩ upornosti. Prav tako smo enak napetostni delilnik dodali na 5 V napajanje.
Izhod tega služi kot referenčna napetost za mikrokrmilnik, ko izvaja pretvorbo ADC. Za doseganje še boljše pravilnosti pretvorbe smo uporabili upore istih serij, saj je takrat med njimi najmanj razlik.
Slika 30: Napetostni delilnik za referenčno napetost pri pretvorbi ADC.
4.5.1 Senzorja tlaka in pretoka
Za oba senzorja smo dodali 100 nF keramični kondenzator kot blokirni kondenzator. Obema senzorja smo na analogni izhod dodali napetostni delilnik in 100 nF keramični kondenzator za filtriranje signala ter ESD zaščito. Dodali smo še povezavo na vodilo I2C za možnost digitalnega prenosa vrednosti.
43 Slika 31: Shema vezave senzorja tlaka in pretoka.
4.5.2 Senzor pozicije
Senzor pozicije mora biti nameščen na os motorja, tako da smo na vezju dodali samo dva 3-polna priključka Wűrth 3211 za povezavo nanj; en za analogni signal in drug za digitalni signal preko SPI. Prvi je namenjen analognemu signalu. Na liniji za analogni signal smo tako kot pri senzorjih za tlak in pretok najprej dodali napetostni delilnik in nato 100 nF kondenzator ter ESD zaščito.
Dodali smo še možnost prejemanja digitalnega signala pozicije, ki ga lahko senzor pošilja preko vodila SPI s signalnimi linijami SCK, MISO in MOSI. Vsaki liniji smo dodali ESD zaščito ter serijski upor vrednosti 100 Ω za omejitev toka ob napakah.
44 Slika 32: Shema povezave na priključka za senzor pozicije.
45 4.6 Krmiljenje motorja preko vodila CAN
Krmilnik pošilja ukaze motorju preko vodila CAN, zato smo dodali sprejemnik in oddajnik za vodilo CAN. Ta pretvarja diferencialni liniji vodila CAN v sprejemno in oddajno linijo (liniji Rx in Tx), preko katerih komunicira mikrokrmilnik. Za dodatno varnost, da se motor v končnih točkah res ustavi in ne povzroči škode, smo dodali končni stikali za obe skrajni poziciji.
4.6.1 Sprejemnik/oddajnik za vodilo CAN
Za pretvorbo iz sprejemne ter oddajne linije v diferenciali par smo uporabili čip TCAN1051 [20] podjetja Texas Instruments. Na voljo je več verzij TCAN1051 z dodanimi oznakami H, G, HG ali V, HV, GV in HGV. Pri teh oznakah V predstavlja možnost dodatne napajalne napetosti za povezavo z mikrokrmilnikom (za liniji Rx in Tx, v shemi sta za povezavo na mikrokrmilnik poimenovani FDCAN_RX in FDCAN_TX). To napetost lahko uporabnik nastavi tako, da željeno napetost poveže na priključek VIO. Če v oznaki ni V, je za povezavo preko linij Rx in Tx uporabljena napajalna napetost za čip, ki je 5 V. Tu je pomembno, da se izbere TCAN1051 z V pri oznaki, ker vhod za linijo FDCAN_RX na mikrokrmilniku ni 5 V toleranten in lahko signal iz TCAN1051 poškoduje mikrokrmilnik. To napako sem naredil pri izdelavi sheme za vezje, kar je bilo potrebno popravljati tako, da smo na linijo Rx dodali napetostni delilnik z vhodom na strani TCAN1051 in izhodom na strani mikrokrmilnika. V primeru, da željeni TCAN1051 z oznako V ni dobavljiv, je prav tako mogoče uporabiti ostale verzije, ampak je potrebno dodati napetostni delilnik na linijo Rx. Poleg TCAN1051 je mogoče uporabiti tudi naslednje čipe:
- TJF1051 [21] podjetja NXP Semiconductors, - TJA1051 [22] podjetja NXP Semiconductors in - IFX1051 [23] podjetja Infineon.
Pri TJF1051 in TJA1051 oznaka T/3 predstavlja možnost dodatne napajalne napetosti za liniji Rx in Tx, pri IFX1051 pa je samo verzija z možnostjo nastavljanja napajalne napetosti za liniji Rx in Tx. Pri teh se torej ne doda napetostnega delilnika.
Pri vezavi TCAN1051 smo dodali blokirni kondenzator v vrednosti 100 nF pri napajalnem priključku VCC za čip ter napajalnem priključku VIO za Rx in Tx linije. Kot že omenjeno, smo na VCC vezali napajanje 5 V in na VIO napajanje 3,3 V. Kot ˝bulk˝ kondenzator za 5 V smo uporabili izhodni 10 µF kondenzator pri 12 – 5 V pretvorbi za vezje. Priključka S za tihi način tu nismo uporabili, zato smo ga povezali na GND. Za tokovno omejitev smo na liniji Rx in Tx serijsko dodali upora vrednosti 100 Ω. Diferencialni par vodila CAN smo priključili na vezje preko 3-polnega priključka Wűrth 3211 in ga povezali na priključka CANH in CANL od TCAN1051. Med priključka CANH in CANL ter 3-polnim priključkom smo dodali še sofazno dušilko, ločeno oziroma ˝split˝ zaključitev in namensko ESD zaščito za vodilo CAN. Za sofazno dušilko smo uporabili WE-SL2 SMD dušilko z induktivnostjo 51 µH. Ta filtrira sofazne motnje na vodilu CAN in sofazne motnje, ki jih generira vezje. Za ločeno zaključitev smo uporabili dva upora vrednosti 60,4 Ω ter keramični kondenzator vrednosti 10 nF. Kot ESD
46 zaščito za vodilo CAN smo uporabili NUP2105L. Na vsako diferencialno linijo smo proti GND dodali še 22 pF keramični kondenzator za filtriranje motenj. Ta ne sme imeti višje kapacitivnosti, saj lahko takrat začne filtrirati uporabni signal.
Slika 33: Shema za povezavo vodila CAN na krmilnik.
4.6.2 Povezava končnih stikal motorja na krmilnik
Končna stikala se morajo fizično nahajati pri mehaniki za stiskanje dihalnega balona, zato smo za povezavo obeh končnih stikal motorja na krmilnik dodali na vezju 3-polni priključek Wűrth 3211. Na liniji za končna stikala smo dodali še serijski upor vrednosti 1 kΩ za omejevanje toka, keramični kondenzator vrednosti 100 nF za filtriranje signala ter ESD zaščito.
Slika 34: Shema za priključitev končnih stikal.
47 4.7 Alarmni piskač
Za generiranje zvočnega alarma smo uporabili THT piezoelektrični piskač podjetja TKD, serija PS z razmakom med priključkoma 7,62 mm (300 mil). Za izdelavo vezja smo že v shemi uporabili 4x1-polni priključek z razmakom 2,54 mm (100 mil), kjer smo skupaj povezali prvi in drugi pol ter tretji in četrti pol. S tem smo omogočili namestitev piskača z razmakom med priključkoma 5,08 mm.
Piskač se prižiga in ugaša preko npn bipolarnega tranzistorja BC817-25L podjetja ON Semiconductors, enakega kot smo ga uporabili za upravljanje svetleče diode v tipki za prižiganje in ugašanje sistema. Piskač smo s + priključkom (prvim in drugim priključkom na 4x1 priključku) povezali na 3,3 V napajanje in z – priključkom (tretjim in četrtim priključkom na 4x1 priključku) na kolektor npn tranzistorja. Emitor npn tranzistorja smo povezali na GND in bazo preko predupora vrednosti 1 kΩ na krmilnik, ki generira PWM signal, uporabljen za upravljanje jakosti zvoka. Vzporedno s piskačem smo dodali še 1 kΩ upor, ki naelektri in razelektri piskača.
Slika 35: Krmilno vezje piezoelektričnega piskača.
48
49
5 Risanje tiskanega vezja
Ko smo narisali shemo, smo pričeli risati tiskano vezja. Tega smo prav tako risali s programskim orodjem Altium Designer. V tem poglavju bodo opisane nastavitve načrtovalskih pravil za to vezje, risanje vezja (oblika vezja in okvirna postavitev sklopov iz blokovne sheme v 3. poglavju) ter posebne točke v vezju, ki so zahtevale več pozornosti.
5.1 Nastavitev načrtovalskih pravil
Pri načrtovalskih pravilih smo prilagodili pravila za razmake med različnimi vozlišči, širino povezav med komponentami, velikost skoznikov, nastavitve za diferencialne pare ter povezave priključnih površin (ang. pad) komponent na poligone njim pripadajočega vozlišča (ang. net).
Za razmake med različnimi vozlišči smo nastavili dve pravili. Osnovno določa razmak med vsemi vozlišči najmanj 0,1 mm. To pravilo smo nastavili, da ignorira samo priključne površine z različnimi vozlišči znotraj ene komponente. Poleg tega smo dodali pravilo za razmak najmanj 0,254 mm med vozlišči, če je na eni od njih napetost 12 V (pri napajalnem delu vezja). Ta vozlišča smo definirali že v shemi z uporabo funkcije Parameter set. To pravilo ima višjo prioriteto od osnovnega.
Širine povezav smo nastavili za minimalno 0,254 mm, srednjo 0,508 mm in maksimalno 1,27 mm. Kjer je bila na vezju potrebna širša povezava, smo uporabili poligon (funkcija Place polygon plane).
Velikosti skoznikov smo nastavili za minimalno velikost 0,3 mm premer luknje in 0,6 mm premer skoznika, za srednjo velikost 0,4 mm premer luknje in 0,8 mm premer skoznika ter za maksimalno velikost 0,6 mm premer luknje in 1,2 mm premer skoznika. Na vezju smo uporabili najmanj srednje velikosti (0,4 in 0,8 mm), saj smo s tem zagotovili razmerje med debelino vezja in najmanjšo luknjo manj kot 5:1 (za vezje je uporabljena standardna plošča z debelino 1,6 mm), kar se lahko pričakuje od vseh proizvajalcev vezij.
Diferencialnim parom smo nastavili minimalni razmak med linijama 0,1 mm in minimalno širino linij 0,2 mm. Srednji in maksimalni razmak med linijama smo nastavili na 0,254 mm ter srednja in maksimalna širina linije na 0,381 mm. Ker na vezju ni visokofrekvenčnih diferencialnih linij (linija USB 2.0 dosega maksimalno hitrost prenosa do 12 Mbps in vodilo CAN deluje pri hitrosti 500 kbps), nismo uporabljali impedančnih profilov.
Za povezavo priključnih površin komponent ter skoznikov na poligone smo uporabili dve pravili. Prvo in prioritetno višje je pravilo za povezavo na GND poligone. Za priključke THT ter SMD smo uporabili štiri povezave s kotnimi zamiki 90˚ s širinami 0,5 mm in dolžinami 0,127 mm, saj bi direktne povezave na GND povzročale zelo dobro odvajanje toplote, kar predstavlja nepotreben problem pri ročnem spajkanju komponent. Pri skoznikih tega problema ni, zato smo uporabili direktne povezave skoznikov na GND poligone. Drugo in prioritetno nižje pravilo določa direktno povezavo priključnih površin in skoznikov na poligone za vsa ostala vozlišča.
50 Zaradi doseganja čim manjšega možnega vezja smo nekatere komponente prekrili eno čez drugo, če na vezje ne bosta dodani obe komponenti (modul ST-LINK V3MODS in priključek za Nucleo ST-LINK/V2 z upori). Da Altium Designer to omogoči brez javljanja napake, smo onemogočili pravilo za razmak med komponentami (pravilo ComponentClearance).
51 5.2 Risanje tiskanega vezja
Z določenimi načrtovalskimi pravili smo lahko pričeli risati tiskano vezje. Vezju smo morali najprej določiti primerno obliko. Ta je lahko odvisna od oblike ohišja. Tu ni posebne oblike ohišja, zato smo naredili vezje pravokotne oblike ter kolikor se da majhno, saj se s tem znižajo tako stroški izdelave vezja kot zasedeni prostor v ohišju ventilatorja.
Slika 36: Sprednja plast vezja v Altium Designer-ju.
Vse SMD komponente smo postavili na zgornjo plast tiskanega vezja. To omogoča hitrejšo in cenejšo sestavo vezja. THT komponente smo prav tako postavili vse na zgornjo plast kot SMD komponente. Izjema je priključek USB, ki smo ga dodali na spodnjo plast, saj mora biti do njega fizični dostop iz zunanje strani ohišja (v ohišju je zanj dodana odprtina). Ker ima večina THT komponent priključke na spodnji strani, kjer ni SMD komponent, se lahko v primeru potrebe po večjem številu vezij THT komponente valno spajka in je ob tem potrebno zaščiti samo priključne luknje za priključek USB, da jih cin ne zalije.
Komponente smo po vezju razporedili v podobnih sklopih kot v shemi. Napajalni del (izbiralnik napajanja ter vse pretvorbe) se nahaja v spodnjem levem kotu ter zasega prostor do sredine ter s tem zasede velik del vezja, saj nekatere komponente potrebujejo dodatno hladilno površino.
V zgornjem delu ter na desni strani vezja se nahaja krmilni del s senzorji ter priključki za senzorje, povezavo na motor ter piskačem.
52 Povezave na vezju smo izvedli na zgornji in spodnji plasti, ampak smo poskusili čim več povezav narediti na zgornji plasti, saj je spodnja plast predvsem namenjena GND površini, ki zagotavlja čim krajše povezave za povratne tokove.
5.2.1 Oblikovanje vezja ter določanje območja s komponentami Preden smo lahko pričeli postavljati komponente na vezje, smo morali določiti njegovo obliko.
V postopku risanja smo najprej izbrali površino 150×100 mm. To smo postopoma manjšali z novimi razporeditvami komponent. Končna velikost vezja je 110×80 mm, pri kateri smo vsaki strani dodali 5 mm širok pas, namenjen samo luknjam za pritrditev vezja na ohišje ter fiducialnim markerjem (ang. fiducial). Komponente se nahajajo med tema pasovoma v pravokotniku 100×80 mm. Obliko vezja smo definirali z mehansko plastjo 1.
Vse štiri luknje smo postavili vsako v svoj kot vezja in se nahajajo 4 mm od daljšega robu ter 3 mm od krajšega robu v notranjost vezja. Njihov premer znaša 3,2 mm. Poleg lukenj smo na isto oddaljenost od krajšega robu (3 mm) dodali tri fiducialne markerje, narejene glede na IPC-7351 (krog s premerom 1 mm z okroglim odprtjem spajkalne kritine premera 2 mm). Zaradi lažje izvedbe smo jih dodali kot komponente že v glavno shemo. Nahajajo se v zgornjih kotih ter v spodnjem levem kotu. V spodnjem desnem kotu ga nismo dodali, da niso simetrično postavljeni. V zgornjih kotih sta postavljena 8 mm od daljšega robu, spodaj pa 10 mm, s čemer smo dodatno preprečili možnost nepravilne postavitve vezja, ne da bi naprava to prepoznala (fiducialni markerji so predvsem uporabljeni za strojno polaganje komponent ter optično preverjanje sestave vezja). Na spodnji levi fiducialni marker smo prav tako postavili izhodiščno točko vezja v namen pravilnejšega in lažjega strojnega polaganja komponent.
Območje, v katerem se nahajajo vse priključne površine komponent in povezave med njimi, je poravnano na sredino vezja in je velikosti 98×78 mm (na vsakem robu sem odvzel 1 mm kot tehnološki rob). Za komponente to območje ne velja popolnoma, saj lahko njihova ohišja ležijo čez mejo. Take komponente so predvsem priključki Wűrth za napajanje ter prejemanje in oddajanje signalov.
5.2.2 Postavljanje ter povezovanje komponent.
Komponente na vezju smo razdelili na osem sklopov (glej Slika 37). Ti sklopi so naslednji:
- z 1 je označen izbiralnik napajanja ter priključek za tipko s potrebnimi komponentami, - z 2 je označena pretvorba napajalne napetosti za vezje najprej na 5 V in nato na 3,3 V, - s 3 je označena stikalna pretvorba napetosti ter komponente za povezavo UART z GUI, - s 4 je označen krmilnik, ki zajema mikrokrmilnik, povezavo USB, modul ST-LINK
V3MODS in povezavo Nucleo ST-LINK/V2 ter tipko RESET,
- s 5 sta označena senzorja tlaka in pretoka s potrebnimi napetostnimi delilniki ter povezava na baterijski krmilni sistem, prav tako se tu nahajata dvižna upora za vodilo I2C,
53 - s 6 je označena analogna in digitalna povezava na senzor pozicije motorja s potrebno
pretvorbo in zaščito,
- s 7 je označena povezava krmilnika na vodilo CAN in - z 8 je označeno krmilno vezje za piezoelektrični piskač.
Slika 37: Razdelitev sklopov na vezju.
Pri izbiralniku napajanja smo povezave za glavni napajalni liniji naredili dovolj široke, da omogočajo prenos toka do 16 A ter na močnostne P-kanalne MOSFET-e dodal dovolj velike površine bakra, ki skrbijo za hlajenje MOSFET-ov. To smo naredili z uporabo poligonov. Da je za hlajenje večja površina, smo uporabili še spodnjo plast ter med plasti dodal nekaj skoznikov, ki skrbijo za razporeditev toplote. Tu imajo največjo vlogo pri razporeditvi toplote skozniki, ki so postavljeni na priključno površino za MOSFET-e, direktno pod MOSFET. Na zgornji plasti smo prav tako dodali nekoliko večjo povezavo pri BAT120C schottky diodah za hlajenje (komponenta D12). Linearnima regulatorjema smo poleg površine na zgornji plasti dodali še površino na spodnji plasti. Za ostale komponente pri logiki za izbiralnik in tipko smo uporabili navadne povezave (ukaz Place Track). Komponente smo razporedili tako, da zasedejo čim manj prostora na vezju.
54 Slika 38: Široke povezave glavnih napajalni liniji na zgornji plasti za hlajenje. MOSFET-i se
nahajajo levo od Q5 in Q7 ter nad Q6 in Q8.
Slika 39: Široke površine povezav glavnih napajalnih linij na spodnji plasti za hlajenje.
Pri stikalnem pretvorniku za napajanje GUI smo pozornost posebej posvečali zankam za povratne tokove, da so čim manjše, tako da smo vse komponente za pretvorbo postavili zelo blizu eno drugi. Povezavo na glavno napajalno linijo smo tako kot pri izbiralniku naredili s poligonom, da je dovolj široka. Da so vse elektrostatične motnje čim prej na liniji odpravljene, smo ESD zaščiti na linijah UART postavili čim bližje priključku za GUI. To smo upoštevali tudi pri ostalih ESD zaščitah, ampak smo to opuščali, če je bilo premalo prostora.
Pri mikrokrmilniku je največji izziv predstavljalo povezovanje vseh linij tako, da se linije med seboj po zgornji in spodnji plasti čim manj križajo. Zlasti smo to upoštevali pri povezovanju
Pri mikrokrmilniku je največji izziv predstavljalo povezovanje vseh linij tako, da se linije med seboj po zgornji in spodnji plasti čim manj križajo. Zlasti smo to upoštevali pri povezovanju