Ako (ne)zničiť Arduino

Ako (ne)zničiť Arduino

Čo by si mal vedieť pri zapájaní Arduina a jeho pinov? Určite aspoň to, ako nezničiť Arduino. Nasledujúci súpis zverejňujem preto, aby si sa popísaným chybám mohol vyhnúť. Jedná sa skôr o elektronické chyby zapojenia, než mechanické zničenie.

Začiatočníci, ktorí pristupujú k elektronike prvýkrát, tu nájdu lekciu o nevhodnom zapájaní pinov na Arduine. Nesprávnym zapojením môžeš potenciálne zničiť dosku Arduino. Pokiaľ ide o chyby, tak tie hardwarové chyby ti vo všeobecnosti nič neodpustia na rozdiel od softwarových.

Keď som písal pre začiatočníkov článok Arduino blikanie LED, napadlo ma, čo všetko sa môže pri zapájaní stať. Tento návod zobrazuje najbežnejšie spôsoby, ako môžeš náhodne zničiť dosku Arduino a ako sa tomu vyhnúť. Nápomocná nám bude táto schéma zapojenia pre Aduino UNO a špecifikácia mikroprocesoru ATmega328p.

Pripojenie I/O pinov k zemi (GND)

Ak by si mal pripojený pin priamo na zem a nastavil by si ho súčasne ako výstupný s hodnotou logickej 1 (HIGH), splníš podmienky pre prekročenie výstupného prúdu na I/O porte a pravdepodobne zničíš Arduino.

Prepojenie IO pinov k zemi GND

Dôvod: podľa špecifikácie procesoru je maximálny výstupný prúd z I/O pinu 40mA. Typická hodnota vnútorného odporu je 25Ω na pin. Prepojenie medzi +5V a GND v tomto prípade môže znamenať prúd 200mA, čo je dosť na zničenie procesora. Inak podobne je to aj pri pripojení pinu rovno k +5V a nastavenie pinu ako výstupný s hodnotou LOW.

Riešenie: pin treba chrániť rezistorom. Napríklad vhodná hodnota odporu by mohla byť 220Ω. Takto je prúd bezpečne obmedzený za všetkých podmienok (5V / 220Ω = 23mA). Občas sa v odpornej literatúre doporučuje do obvodu zapojiť i zenerovu 5.1V diódu alebo vratné PCT poistky.

Arduino ochrana pinov

Prepojenie I/O pinov medzi sebou

Prepojenie IO pinov medzi sebou

Dôvod: presne ten istý ako predchádzajúci s výnimkou toho, že spätná cesta uzemnenia je teraz cez mikrokontrolér.

Riešenie: piny treba opäť chrániť rezistormi tak ako v predchádzajúcom prípade.

Prekročenie napätia na I/O pin

Ak pripojíš na pin napätie vyššie ako 5,5V tak ho poškodíš.

Prekročenie napätia na IO pin

Dôvod: na vstupe pinov sú ochranné diódy (ESD) pre ochranu čipu pred elektrostatickým výbojom. Tieto diódy nie sú dimenzované na dlhodobé zaťaženie a preto pri prekročení napätia o 0,5V dôjde k ich zničeniu a nebudú ďalej chrániť zvyšok čipu a môže teda následne dôjsť k poškodeniu i ostatných častí dosky.

ATmega328P ESD

Riešenie: zapojiť na I/O pin ochranný rezistor 220Ω na obmedzenie prúdu a 5.1V zenerovú diódou, ktorá slúži na obmedzenie napätia pinov (max 5,5V) bez ohľadu na použité prepätie. Môže to byť podľa typu zenerovej diódy cca do 24V, treba zohľadniť samozrejme i stratový výkon.

Ochrana pinov pre prepätím

Otočená polarita napájania na Vin

Ak by si napájal Arduino pomocou pinu Vin a zapojil napájacie napätie obrátene, tak dôjde k poškodeniu čipu.

Otočená polarita napájania na Vin Arduino

Dôvod: neexistuje žiadna ochrana proti opačnému napätiu, ktoré sa používa na pine konektora Vin. Prúd bude tiecť bez problémov opačne, to je z GND do +5V cez regulátor napájania. To isté sa deje i s mikrokontrolérom ATmega. Oba mikrokontroléry a 5V regulátor budú zničené.

Riešenie: dávaj si na to veľký pozor. Možno by ti pomohla usmerňovacia dióda. Ideálne by to bolo, keby že je to navrhnuté takto nejako:

Arduino ochrana napájania Vin

Pripojenie napätia vyššieho než 5V na napájacom pine 5V

Ak privedieš na napájací pin 5V ľubovoľné väčšie napätie, tak zničíš pravdepodobne väčšinu súčiastok na Arduino doske a ohrozíš aj USB port počítača.

Pripojenie napätia vyššieho než 5V na napájacom pine 5V

Dôvod: na doske nie je žiadna ochrana pred zvýšeným napätím na napájacom 5V pine. Tento port je napojený priamo na procesor a čip USB. Je častou chybou domnievať sa, že situáciu zachráni stabilizátor na Arduino doske, ale ten slúži len na stabilizáciu napätia pripojeného ku konektoru napájania. Akékoľvek zvýšené napätie, ktoré k nemu príde z dosky, nie je schopný zachrániť.

Ďalším dôsledkom použitia viac ako 5V na 5V napájacom pine je možné poškodenie USB portu počítača. Ak je Arduino napájané z USB, môže toto nadmerné napätie spôsobiť tok prúdu dozadu cez MOSFET T1 späť do USB portu počítača.

Pripojenie napätia vyššieho než 5V na napájacom pine 5V - USB

Riešenie: do vývojovej dosky už síce nezasiahneš, ale toto by bolo dobré riešenie na ochranu prepätia na napájacom 5V pine. Takéto riešenie znesie aj 24V na napájacom pine a nič sa nestane, +5V vetva bude odpojená. Je to inšpirácia pre vlastné zapojenia.

Pripojenie napätia vyššieho než 5V na napájacom pine 5V - riešenie

Pripojenie napätia vyššieho než 3,3V na napájacom pine 3,3V

Pripojením zvýšeného napätia na napájací pin 3,3V môžeš zničiť pripojený Shield alebo vybavenie pripojené k tomuto pinu. Ak prekročíš 9V, zničíš regulátor napájania, ATmega čip a môžeš poškodiť USB port počítača.

Pripojenie napätia vyššieho než 3,3V na napájacom pine 3,3V

Dôvod: port 3,3V tiež nie je chránený regulátorom a preto zvýšenie napätia priamo ovplyvní časti napájané týmto napätím. Ak prekročíš 9V a po zničení 3,3V regulátora, prejde zvýšené napätie do ďalších častí napájaných 5V.

Riešenie: platí to isté ako pri +5V vetve napájania.

Pripojenie napätia vyššieho než 3,3V na napájacom pine 3,3V riešenie

Prepojenie Vin a GND

Ak prepojíš piny Vin a GND tak dôjde k poškodeniu ochrannej diódy a môže dôjsť aj k roztaveniu ciest na plošnom spoji.

Prepojenie Vin a GND

Dôvod: pin Vin nemá žiadnu ochranu proti vysokému prúdu. Množstvo prúdu je tak obmedzené len zanedbateľným odporom ciest na plošnom spoji a napájacím zdrojom. Ak je prúd dostatočne vysoký, dióda D1 sa zničí a cestičky na plošnom spoji sa môžu roztaviť kvôli teplu spôsobenému týmto veľkým prúdom.

Riešenie: chcelo by to použiť v obvode vratnú resetovaciu poistku (PCT). Táto poistka obmedzuje prúd na bezpečnú úrovneň, aj keď je Vin skratované na GND.

Arduino ochrana napájania Vin

Napájanie Arduina pinom 5V a používanie Vin ako výstupného pinu pre napájanie periférií

Keď prehodíš používanie napájacích pinov Vin a 5V, to znamená že privedieš napájanie na napájací pin 5V a budeš odoberať prúd z Vin, spáliš tým regulátor napájania pre Arduino.

Napájanie Arduina pinom 5V a používanie Vin ako výstupného pinu pre napájanie periférií

Dôvod: Arduino doska nemá žiadnu ochranu proti spätnému prúdu cez regulátor. Na regulátore 5V nie je žiadna ochrana, takže prúd môže tiecť z 5V pinu konektora smerom dozadu cez regulátor k pinu Vin.

Riešenie: tu platí to isté ako pri otočenej polarite napájania na Vin a to použitie diódy.

Arduino ochrana napájania Vin

Prekročenie 13V na vstupnom pine Reset

Ak zapojíš viac ako 13V na vstup reset pinu, tak zničíš procesorový čip ATmega.

Prekročenie 13V na vstupnom pine Reset

Dôvod: pin konektora Reset je priamo pripojený k resetovaciemu pinu na čipe ATmega328P. Zatiaľ čo tento pin podľa datasheetu toleruje 13V, vyššie napätie poškodí zariadenie.

Riešenie: umiestnenie rezistora 1k do série s resetovacím pinom čipu ATmega328P. Ak by aj napätie bolo väčšie ako 13V na pine konektora Reset, tento pin by bol takto obmedzený aspoň prúdom, ktorý by obmedzil poškodenie.

Prekročenie 13V na vstupnom pine Reset - riešenie

Prekročenie maximálneho výstupného prúdu z pinov

Ak nastavíš viac ako 10 I/O portov ako výstupných a zaťažíš každý z nich prúdom 20mA (svietiace diódy) tak prekročíš celkový výstupný prúd a Arduino zničíš.

Prekročenie maximálneho výstupného prúdu z pinov

Dôvod: nestačí len obmedziť prúd každého I/O pinu, ale celkový prúd zo všetkých I/O pinov nesmie presiahnuť 200mA.

Riešenie: použiť obvod na obmedzenie prúdu (MIC2009A zobrazený nižšie), ktorý zabezpečí, že bez ohľadu na to, aké prúdy by si chcel získali z I/O pinov, tak celkový dodávaný prúd mikrokontroléra nepresiahne 150mA (typicky).

Prekročenie maximálneho výstupného prúdu z pinov - riešenie

Prepojovanie výstupov za behu

Tomuto sa vyhni vždy, ak to bude možné. Môžeš zničiť Arduino a všeličo, čo je k nemu pripojené.

Dôvod: ak prepojíš pin, keď ním prechádza prúd, vygeneruješ napäťovú špičku, ktorá môže v krajnom prípade zničiť Arduino.

Použitie indukčnej záťaže (motor, relé, solenoid) bez ochrannej diódy

Ak použiješ indukčnú záťaž bez ochrannej diódy pred spätným prúdom, môže dôjsť k zničeniu procesora.

Dôvod: Indukčné záťaže môžu vytvárať silné napäťové špičky. Na ich odstránenie slúži práve ochranná dióda zapojená paralelne k záťaži. Keď potom indukčná záťaž vygeneruje spätný prúd, ten je skratovaný diódou a neohrozí Arduino.

Na záver ako nezničiť Arduino

Samozrejme existuje veľa ďalších kreatívnych spôsobov ako zničiť Arduino, ale kto by o to stál. Snáď ti opísané spôsoby umožnia užívať si s Arduinom dlhšie a radostnejšie bez strát. Informácie pre článok som bral zo stránok o Ruggeduinu - Arduino, ktoré má zabudovanú ochranu pred väčšinou týchto chýb.

Výber na čítanie...

 Autodesk 123D Circuits
Autodesk 123D Circuits

Autodesk 123D Circuits je webová aplikácia vyvinutá spoločnosťou Autodesk v spolupráci s Circuits.io, ktorá umožňuje online navrhovanie elektronických projektov. Táto aplikácia je určená pre tvorcov a nadšencov, ktorí...

Čítať viac...

swDuino 2
swDuino 2

Aplikácia swDuino funguje ako webový server na stolnom PC so systémom Windows, cez ktorý môžeme interaktívne monitorovať a ovládať pripojené Arduino cez sériovú linku (Serial to Web). K dispozícii je i...

Čítať viac...

DHT11 a DHT22 – meranie teploty a vlhkosti
DHT11 a DHT22 – meranie teploty a vlhkosti

Na meranie teploty a vlhkosti v interiéry som vyskúšal známe senzory DHT11 (modrý) a DHT22 (biely). V článku som spomenul rozdiely, zapojil senzory s Arduinom Nano, vyhľadal vhodnú knižnicu, vyskúšal nejaké tie programy a samozrejme niečo som i nafotil. ...

Čítať viac...

Obľúbené produkty...

Keyestudio Sensor Kit 48 in 1

82.06 EUR

59.08 EUR

Keyestudio CAN-BUS Shield MCP2515

18.56 EUR

13.36 EUR

Keyestudio MEGA 2560 R3 Development Board

34.54 EUR

26.60 EUR

Keyestudio Upgrade Mini Smart Tank Robot V3

122.49 EUR

102.89 EUR

Vyhľadať články
Programovanie...
  • Terárne operátory

    Terárne operátory alebo označované aj ako podmienené operátory sú pomerne neobvyklé. Preto bude v...

  • Aritmetické operátory

    Aritmetické operátory vykonávajú matematické operácie dvoch výrazov jednej alebo viacerých typov ...

  • Goniometrické funkcie

    Goniometrické funkcie v matematike označuje termín používaný pre jednu zo šiestich funkcií veľkos...

  • Zložené operátory

    Použitie zložených priraďovacích operátorov zjednodušuje a sprehľadňuje zdrojový kód, no použitie...

  • Ostatné IO funkcie

    U Arduina je možné generovať i zvuk, ale iba v najjednoduchšej podobe. Neumožňuje totiž generovať...

Podpora webu
Na kávu už prispeli
Dátum Meno Suma
08.01.2024 Veres Dusan 10€
15.05.2023 Ivan Danis 10€
28.09.2022 Ivan Vrab 7€
14.05.2022 Nemcic Marian 10€
04.02.2022 Robert Bilko 5€
29.01.2022 Peter Buffa 5€
19.11.2021 Rastislav Rehak 5€
16.09.2021 Anton Strela 5€
13.09.2021 Juraj Jedlak 5€
02.09.2021 Michal Marek 7€
08.08.2021 František Uhrík 5€
21.07.2021 Juraj Hrdina 5€
25.03.2021 Jan Nemec 10€
16.03.2021 Igor Pavlov 5€
25.02.2021 Lukas Lacuch 5€
06.11.2020 Pavol Balint 5€
05.11.2020 Marek Horečný 5€
05.10.2020 Jan Kusnir 5€
27.04.2020 Jan Zuskin 15€
26.04.2020 Dušan Sojka 5€
24.02.2020 Juraj Lackanič 5€
22.01.2020 František Žilinec 10€
20.05.2018 Tomáš F. 2€
17.12.2018 Pavol P. 5€
QR Donate 10Eur