Ako pripojiť tranzistory (BJT) a MOSFET k Arduinu

Ako pripojiť tranzistory (BJT) a MOSFET k Arduinu

Prepojenie energetických zariadení ako BJT a MOSFET s výstupom Arduino je zásadnou konfiguráciou, ktorá umožňuje prepínanie vysokých výkonových záťaží cez nízke výkonové výstupy Arduina.



V tomto článku sa podrobne zaoberáme správnymi metódami používania alebo pripájania tranzistorov, ako sú BJT a mosfety, s akýmkoľvek mikrokontrolérom alebo Arduinom.

Takéto etapy sa tiež označujú ako 'Level Shifter' pretože tento stupeň mení úroveň napätia z dolného bodu na vyšší bod pre príslušný výstupný parameter. Napríklad tu sa realizuje posunutie úrovne z výstupu Arduino 5V na výstup MOSFET 12V pre zvolenú záťaž 12V.





Bez ohľadu na to, ako dobre je vaše Arduino naprogramované alebo kódované, ak nie je správne integrované s tranzistorom alebo externým hardvérom, môže to mať za následok neefektívnu prevádzku systému alebo dokonca poškodenie komponentov zapojených do systému.

Preto je mimoriadne dôležité porozumieť a naučiť sa správne metódy používania externých aktívnych komponentov, ako sú mosfety a BJT, s mikrokontrolérom, aby bol konečný výsledok efektívny, plynulý a efektívny.



Predtým, ako diskutujeme o spôsoboch prepojenia tranzistorov s Arduinom, bolo by užitočné naučiť sa základné charakteristiky a fungovanie BJT a mosfetov.

Elektrické charakteristiky tranzistorov (bipolárne)

BJT znamená bipolárny prechodový tranzistor.

Základnou funkciou BJT je zapnutie pripojenej záťaže v reakcii na externý napäťový spúšťač. Zaťaženie má byť v porovnaní so vstupným spúšťačom väčšinou väčšie.

Základnou funkciou BJT je teda zapnutie vyššej prúdovej záťaže v reakcii na spúšťač vstupného prúdu s nižším prúdom.

Odborne sa tomu hovorí aj predpätie tranzistora , čo znamená použitie prúdu a napätia na prevádzku tranzistora pre zamýšľanú funkciu a toto predpätie sa musí vykonať najoptimálnejším spôsobom.

BJT majú 3 vodiče alebo 3 piny, a to základňu, vysielač, kolektor.

Základný kolík sa používa na napájanie externého spúšťacieho vstupu vo forme malého napätia a prúdu.

Pin vysielača je vždy pripojený k zemi alebo zápornému napájaciemu vedeniu.

Kolík kolektora je pripojený k záťaži prostredníctvom kladného napájania.

BJT možno nájsť s dvoma typmi polarít, NPN a PNP. Konfigurácia základného kolíka je rovnaká pre NPN aj PNP, ako je vysvetlené vyššie, s výnimkou polarity napájania DC, ktorá je naopak.

The pinoutom BJT bolo možné porozumieť prostredníctvom nasledujúceho obrázka:

Na obrázku vyššie vidíme základnú konfiguráciu vývodov tranzistorov NPN a PNP (BJT). Pre NPN sa vysielač stáva uzemňovacím vedením a je spojený so záporným napájaním.

Za normálnych okolností, keď sa v obvode DC používa slovo „zem“, predpokladáme, že ide o záporné napájacie vedenie.
Pre tranzistor je však uzemňovacie vedenie spojené s vysielačom vzhľadom na jeho základňu a kolektorové napätie a „uzemnenie“ vysielača nemusí nutne znamenať záporné napájacie vedenie.

Áno, pre NPN BJT môže byť zem záporným napájacím vedením, ale pre PNP tranzistor „zem“ sa vždy vzťahuje na kladné napájacie vedenie, ako je to znázornené na obrázku vyššie.

Funkcia zapínania a vypínania oboch BJT je v zásade rovnaká, mení sa však polarita.

Pretože vysielač BJT je „výstupný“ priechod pre prúd vstupujúci cez a základňu a kolektor, musí byť „uzemnený“ k napájaciemu vedeniu, ktoré by malo byť oproti napätiu použitému na vstupoch základňa / kolektor. Inak sa obvod nedokončí.

Pre NPN BJT sú vstupy základne a kolektora spojené s pozitívnym spúšťacím alebo spínacím napätím, preto sa na emitor musí odkazovať na zápornú čiaru.

To zaisťuje, že kladné napätie vstupujúce do základne a kolektora je schopné dosiahnuť záporné vedenie cez vysielač a dokončiť obvod.

Pre PNP BJT sú základňa a kolektor spojené so záporným napäťovým vstupom, preto sa emitor PNP musí prirodzene vzťahovať na kladnú čiaru, aby mohol pozitívny zdroj vstupovať cez vysielač a dokončiť svoju cestu zo základne a zberacie kolíky.

Upozorňujeme, že tok prúdu pre NPN je zo základne / kolektora smerom k vysielaču, zatiaľ čo pre PNP je to z vysielača smerom k základni / kolektoru.

V obidvoch prípadoch je cieľom zapnúť zaťaženie kolektora malým vstupom napätia na základni BJT, zmení sa iba polarita.

Nasledujúca simulácia zobrazuje základné operácie:

ako tranzistor vedie s externým napätím

V simulácii vyššie, akonáhle je tlačidlo stlačené, vstup externého napätia vstúpi do základne BJT a dosiahne zemnú linku cez vysielač.

Aj keď sa to stane, priechod kolektora / žiariča vo vnútri BJT sa otvorí a umožní pozitívnemu napájaniu zhora vstup do žiarovky a prechod cez žiarič k zemi a zapnutie žiarovky (záťaže).

Prepínanie sa deje takmer súčasne v reakcii na stlačenie tlačidla.

Pin vysielača sa tu stáva bežným výstupom pre obidva vstupné kanály (základňa a kolektor).

A napájacie vedenie emitora sa stáva bežným uzemňovacím vedením pre spúšť napájania vstupu a tiež pre záťaž.

Čo znamená, že napájacie vedenie spojené s vysielačom BJT musí byť tiež striktne spojené so zemou externého zdroja spúšťania a záťažou.

Prečo používame rezistor na základni BJT

Základňa BJT je navrhnutá tak, aby pracovala s nízkoenergetickými vstupmi a tento pin nemôže prijímať veľké prúdové vstupy, a preto používame rezistor, aby sme sa ubezpečili, že do základne nemôže vstupovať žiadny veľký prúd.

Základnou funkciou rezistora je obmedziť prúd na správnu zadanú hodnotu podľa špecifikácie záťaže.

Vezmite prosím na vedomie že pre BJT musí byť tento odpor dimenzovaný podľa zaťažovacieho prúdu na strane kolektora.

Prečo?

Pretože BJT sú prúdovo závislé „prepínače“.

To znamená, že základný prúd je potrebné zvýšiť alebo znížiť alebo upraviť v súlade so špecifikáciami záťažového prúdu na strane kolektora.

Spínacie napätie požadované na základni BJT však môže byť len 0,6 V alebo 0,7 V. To znamená, že zaťaženie kolektora BJT by mohlo byť zapnuté s napätím tak nízkym ako 1 V cez základňu / vysielač BJT.
Tu je základný vzorec pre výpočet základného odporu:

R = (Us - 0,6) Hfe / záťažový prúd,

Kde R = základný odpor tranzistora,

Us = zdroj alebo spúšťacie napätie základného odporu,

Hfe = dopredný prúdový zisk tranzistora (možno nájsť v údajovom liste BJT).

Aj keď vzorec vyzerá pekne, nie je absolútne nevyhnutné vždy konfigurovať základný rezistor tak presne.

Je to jednoducho preto, že základné špecifikácie BJT majú široký rozsah tolerancií a môžu ľahko tolerovať veľké rozdiely v hodnotách rezistorov.

Napríklad, na pripojenie relé s odporom cievky 30mA môže vzorec zhruba poskytnúť hodnotu odporu 56K pre BC547 na 12V napájacom vstupe .... ale ja radšej používam 10K a funguje to bezchybne.

Ak však nedodržiavate optimálne pravidlá, s výsledkami môže byť niečo nie dobré, že?

Technicky to dáva zmysel, ale strata je v porovnaní s úsilím vynaloženým na výpočty opäť taká malá, že sa dá zanedbať.

Napríklad použitie 10K namiesto 56K môže viesť k tomu, že tranzistor bude pracovať s o niečo väčším prúdom bázy, čo spôsobí, že sa o niečo viac zahreje, môže byť o pár stupňov vyššie ... čo vôbec nevadí.

Ako pripojiť BJT k Arduinu

Dobre, poďme k skutočnému bodu.

Pretože sme sa doteraz komplexne naučili, ako je potrebné zaujať a nakonfigurovať BJT cez jeho 3 pinouty, môžeme rýchlo pochopiť podrobnosti týkajúce sa jeho prepojenia s akýmkoľvek mikrokontrolérom, ako je Arduino.

Hlavným účelom spojenia BJT s Arduinom je zvyčajne zapnutie záťaže alebo niektorého parametra na strane kolektora v reakcii na naprogramovaný výstup z jedného z výstupných pinov Arduino.

Tu má vstup spúšťania pre základný pin BJT pochádzať z Arduina. To znamená, že koniec základného odporu musí byť jednoducho pripojený k príslušnému výstupu z Arduina a kolektor BJT so záťažou alebo akýmkoľvek zamýšľaným externým parametrom.

Pretože BJT pre efektívne prepínanie vyžaduje sotva 0,7 V až 1 V, stáva sa 5 V z výstupného kolíka Arduino úplne adekvátnym na riadenie BJT a na prevádzkovanie primeranej záťaže.
Príklad konfigurácie je na nasledujúcom obrázku:

prepojenie alebo pripojenie Arduina s budičom tranzistorového relé

Na tomto obrázku vidíme, ako sa programované Arduino používa na prevádzkovanie malej záťaže v podobe relé cez fázu ovládača BJT. Cievka relé sa stáva záťažou kolektora, zatiaľ čo signál z vybraného výstupného kolíka Arduino funguje ako vstupný spínací signál pre základňu BJT.

pripojenie Arduina s vysoko výkonnou LED

Aj keď sa relé stáva najlepšou voľbou na prevádzkovanie veľkých záťaží pomocou tranzistorového budiča, keď sa mechanické prepínanie stane nežiaducim faktorom, modernizácia BJT sa stane lepšou voľbou pre prevádzku vysokonapäťových jednosmerných záťaží, ako je uvedené nižšie.

Vo vyššie uvedenom príklade je možné vidieť Darlingtonovu tranzistorovú sieť nakonfigurovanú na zvládnutie indikovaného vysokého prúdového zaťaženia 100 wattov bez závislosti na relé. To umožňuje plynulé prepínanie LED s minimálnym rušením, čo zaručuje dlhú životnosť všetkých parametrov.

Teraz pokračujme ďalej a uvidíme, ako je možné konfigurovať mosfety pomocou Arduina

Elektrické charakteristiky MOSFETu

Účel použitia mosfetu s Arduinom je zvyčajne podobný účelu BJT, ako je uvedené vyššie.

Avšak keďže normálne MOSFETy sú navrhnuté na efektívne zvládnutie vyšších prúdových špecifikácií v porovnaní s BJT sa väčšinou používajú na prepínanie záťaží s vysokým výkonom.

Predtým, ako pochopíme prepojenie mosfetu s Arduinom, bolo by zaujímavé poznať základné informácie rozdiel medzi BJT a mosfety

V našej predchádzajúcej diskusii sme to pochopili BJT sú zariadenia závislé od prúdu , pretože ich základný spínací prúd závisí od prúdu zaťaženia kolektora. Vyššie prúdy záťaže budú vyžadovať vyšší základný prúd a naopak.

Pre mosfety to nie je pravda, inými slovami brána mosfetov, ktorá je ekvivalentná so základňou BJT, vyžaduje na zapnutie minimálny prúd, bez ohľadu na odtokový prúd (odtokový kolík mosfetu je ekvivalentný zberaciemu kolíku BJT).

Z tohto dôvodu, hoci prúd nie je rozhodujúcim faktorom pre prepnutie brány mosfet, napätie je.

Mosfety sa preto považujú za zariadenia závislé od napätia

Minimálne napätie potrebné na vytvorenie zdravého predpätia pre mosfet je 5V alebo 9V, 12v je najoptimálnejší rozsah na úplné zapnutie mosfetu.

Preto môžeme predpokladať, že na zapnutie MOSFETu a záťaže cez jeho odtok je možné pre jeho optimálny výsledok použiť cez jeho bránu zdroj 10V.

Ekvivalentné kolíky mosfetov a BJT

Nasledujúci obrázok zobrazuje komplementárne piny mosfetov a BJT.

Základňa zodpovedá Gate-Collector zodpovedá Drain-Emitter zodpovedá Source.

Substitúcia pinoutov mosfetov BJT v Arduine

Aký odpor by sa mal použiť pre bránu Mosfet

Z našich predchádzajúcich tutoriálov sme pochopili, že rezistor na základni BJT je zásadný, bez ktorého sa BJT môže okamžite poškodiť.

Pre MOSFET to nemusí byť také relevantné, pretože MOSFET nie sú ovplyvnené prúdovými rozdielmi v ich bránach, namiesto toho by mohlo byť vyššie napätie považované za nebezpečné. Pre bránu MOSFET môže byť niečo zlé nad 20 V, ale prúd môže byť nepodstatný.

Z tohto dôvodu nie je odpor na hradle relevantný, pretože na obmedzenie prúdu sa používajú rezistory a hradlo MOSFET nie je závislé od prúdu.

To znamená, že MOSFETy sú veľmi zraniteľné voči náhlym špičkám a prechodným javom pred ich bránami v porovnaní s BJT.

Z tohto dôvodu sa pred bránami MOSFET všeobecne uprednostňuje rezistor s nízkou hodnotou, len aby sa zaistilo, že žiadny náhly napäťový hrot nie je schopný prejsť bránou MOSFET a vnútorne ho roztrhnúť.

Typicky akýkoľvek odpor medzi 10 a 50 ohmmi by sa mohli použiť pri bránach MOSFET na zabezpečenie ich brán pred neočakávanými napäťovými špičkami.

Prepojenie MOSFET s Arduino

Ako je vysvetlené v predchádzajúcom odseku, mosfet bude na správne zapnutie potrebovať približne 10 V až 12 V, ale pretože Arduinos pracuje s 5 V, jeho výstup nemožno priamo nakonfigurovať pomocou mosfetu.

Pretože Arduino pracuje s napájaním 5 V a všetky jeho výstupy sú navrhnuté tak, aby produkovali 5 V ako signál logického vysokého napájania. Aj keď toto 5V môže mať schopnosť zapnúť MOSFET, môže to mať za následok neefektívne prepínanie zariadení a problémy s zahrievaním.

Pre efektívne prepínanie MOSFET a pre transformáciu výstupu 5V z Arduina na signál 12V je možné nakonfigurovať medzistupňový stupeň, ako je znázornené na nasledujúcom obrázku:

ako spojiť mosfet s Arduinom

Na obrázku je MOSFET viditeľný nakonfigurovaný s niekoľkými stupňami vyrovnávacej pamäte BJT, čo umožňuje MOSFETu využívať 12V z napájacieho zdroja a efektívne zapínať sám a záťaž.

Používajú sa tu dva BJT, pretože jediný BJT by spôsobil, že MOSFET bude pôsobiť opačne v reakcii na všetky pozitívne signály Arduina.

Predpokladajme, že sa použije jeden BJT, potom kým je BJT ZAPNUTÝ s pozitívnym signálom Arduino, mosfet by bol vypnutý, pretože jeho brána by bola uzemnená kolektorom BJT a záťaž by bola zapnutá, zatiaľ čo Arduino je vypnuté.

Jeden BJT by v zásade invertoval signál Arduino pre bránu mosfet, čo by malo za následok opačnú odozvu spínania.

Na nápravu tejto situácie sa používajú dva BJT, takže druhý BJT invertuje reakciu späť a umožňuje mosfetu zapnúť pre všetky pozitívne signály iba z Arduina.

Záverečné myšlienky

Teraz by ste už mali komplexne pochopiť správny spôsob prepojenia BJT a mosfetov s mikrokontrolérom alebo Arduinom.

Možno ste si všimli, že sme na integráciu väčšinou používali NPN BJT a M-kanály M-kanálov a nepoužívali sme zariadenia PNP a P-kanály. Je to preto, lebo verzie NPN fungujú ideálne ako prepínač a je ľahké ich pochopiť pri konfigurácii.

Je to ako riadiť auto normálne v smere dopredu, než pozerať sa dozadu a jazdiť s ním v spätnom chode. V oboch ohľadoch by auto fungovalo a pohybovalo sa, ale jazda spiatočkou je oveľa neefektívna a nemá zmysel. Tu platí rovnaká analógia a použitie NPN alebo N-kanálových zariadení sa stáva lepšou preferenciou v porovnaní s mosfetmi PNP alebo P-kanálmi.

Ak máte pochybnosti alebo si myslíte, že mi tu niečo mohlo uniknúť, použite diskusné políčko nižšie pre ďalšiu diskusiu.




Dvojica: Boli preskúmané 2 jednoduché obousmerné riadiace obvody motora Ďalej: Tlačidlo motocykla začne blokovať obvod