Obsah:
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Je to pár let, co jsem napsal instruktáž, říkal jsem si, že je čas se vrátit. Chtěl jsem vybudovat napěťový senzor, abych se mohl připojit ke svému stolnímu napájecímu zdroji. Mám dvoukanálový variabilní napájecí zdroj, nemá displej, takže musím použít voltmetr k nastavení napětí. Nejsem elektrotechnik ani programátor, dělám to jako koníček. Když jsem řekl, že zde popíšu, co zde budeme stavět, a nemusí to být nejlepší design nebo nejlepší kódování, udělám však maximum.
Krok 1: O projektu
Předně je to jen předběžný návrh něčeho stabilnějšího a spolehlivějšího, některé součásti ve finálním návrhu neskončí. Většina komponent byla vybrána pouze kvůli dostupnosti (měl jsem je doma) a ne kvůli jejich spolehlivosti. Tento design je určen pro napájení 15 V, ale můžete vyměnit několik pasivních komponent a může fungovat na jakémkoli napětí nebo proudu. Proudové senzory jsou k dispozici v 5A, 20A a 30A, stačí si vybrat proud a upravit kód, totéž s napěťovým senzorem můžete změnit hodnotu odporů a kód pro měření vyšších napětí.
Deska plošných spojů nemá žádné nastavené hodnoty, protože můžete vyměnit pasivní součásti, aby vyhovovaly potřebám vašeho napájecího zdroje. Byl navržen tak, aby byl přidán do jakéhokoli napájecího zdroje.
Krok 2: Senzory napětí
Začneme senzory napětí a proudovými senzory. K testování obvodů a kódu používám Arduino Mega, takže někteří začátečníci, jako jsem já, si mohou vyrobit a otestovat vlastní za běhu, místo aby museli celý modul stavět na prkénko.
Můžeme měřit pouze 0-5 voltů pomocí analogových vstupů Arduina. Abychom mohli měřit až 15 voltů, musíme vytvořit dělič napětí, děliče napětí jsou velmi jednoduché a lze je vytvořit pouze pomocí 2 odporů, v tomto případě používáme 30k a 7,5k, což by nám dalo poměr 5: 1, abychom mohli měřit hodnoty 0-25 voltů.
Seznam dílů pro snímač napětí
Rezistory R1, R3 30k
Rezistory R2, R4 7,5k
Krok 3: Proudové senzory
Pro aktuální senzory budu používat ACS712 od společnosti Allegro. První věc, kterou musím zmínit, je, že vím, že tyto senzory nejsou příliš přesné, ale právě to jsem měl po ruce při navrhování tohoto modulu. ACS712 je k dispozici pouze v balení pro povrchovou montáž a je jednou z mála komponent SMD, které jsou v tomto modulu použity.
Aktuální seznam dílů senzoru
IC2, IC3 ASC712ELC-05A
Kondenzátor C1, C3 1nF
Kondenzátor C2, C4 0,1 uF
Krok 4: Snímač teploty a ventilátor
Rozhodl jsem se přidat do modulu regulaci teploty, protože většina napájecích zdrojů generuje dobré množství tepla a potřebujeme ochranu proti přehřátí. Pro teplotní senzor používám HDT11 a pro ovládání ventilátoru použijeme 2N7000 N-Channel MOSFET k pohonu 5V ventilátoru CPU. Obvod je docela jednoduchý, potřebujeme aplikovat napětí na odvodnění tranzistoru a na bránu aplikujeme kladné napětí, v tomto případě používáme digitální výstup arduino k zajištění tohoto napětí a tranzistor se zapne, což umožní ventilátoru pod napětím.
Kód je velmi jednoduchý, odečítáme teplotu ze snímače DHT11, pokud je teplota vyšší než naše nastavená hodnota, nastaví výstupní kolík HIGH a ventilátor se zapne. Jakmile teplota klesne pod nastavenou teplotu, ventilátor se vypne. Postavil jsem obvod na mém prkénku, abych otestoval svůj kód, udělal jsem pár rychlých obrázků s mojí buňkou, ne moc dobře, promiňte, ale schéma je snadno pochopitelné.
Seznam částí snímače teploty a ventilátoru
Senzor teploty J2 DHT11
Rezistor R8 10K
J1 5V VENTILÁTOR
MOSFET Q1 2N7000
D1 1N4004 dioda
Rezistor R6 10K
Rezistor R7 47K
Krok 5: Napájecí obvod
Modul běží na 5V, takže potřebujeme stabilní zdroj energie. Používám regulátor napětí L7805 k zajištění konstantního napájení 5V, o tomto obvodu není moc co říci.
Seznam součástí napájecího obvodu
1 Regulátor napětí L7805
Kondenzátor C8 0,33 uF
Kondenzátor C9 0,1 uF
Krok 6: LCD a sériové výstupy
Navrhl jsem modul, který bude použit s ohledem na LCD, ale poté jsem se rozhodl přidat sériový výstup pro účely ladění. Nechystám se podrobně rozepisovat o tom, jak nastavit I2C LCD, protože jsem to již zakryl v předchozím instrukovatelném I2C LCD Snadný způsob, jakým jsem přidal LED diody do linek Tx & Rx, abych ukázal aktivitu. Používám adaptér USB na sériový, který připojím k modulu, poté otevřu sériový monitor v Arduino IDE a vidím všechny hodnoty, ujistěte se, že vše funguje tak, jak by mělo.
Seznam dílů LCD a sériového výstupu
I2C 16x2 I2C LCD (20x4 volitelně)
LED7, LED8 0603 SMD LED
Rezistor R12, R21 1K R0603 SMD
Krok 7: Programování ISP a ATMega328P
Jak jsem zmínil na začátku, tento modul je navržen tak, aby byl vytvořen pro různé konfigurace, musíme přidat způsob, jak programovat ATMega328 a nahrávat naše skici. Existuje několik způsobů, jak programovat modul, jedním z nich je použít Arduino jako ISP programátor jako v jednom z mých předchozích Instructable Bootloading ATMega s Arduino mega.
Poznámky:
- K načtení skici ISP na Arduino nepotřebujete kondenzátor, potřebujete ho k vypálení bootloaderu a k načtení skici napěťového senzoru.
-Na novějších verzích Arduino IDE musíte připojit pin 10 na pin 1 RESET ATMega328.
Seznam součástí obvodu ISP & ATMega328P
U1 ATMega328P
XTAL1 16MHz HC-49S Crsytal
Kondenzátory C5, C6 22pf
Záhlaví ISP1 6 pinů
Rezistor R5 10K
Resetujte přepínač SMD 3x4x2 Tact
Krok 8: Poznámky a soubory
To byl pro mě jen způsob, jak vložit nějaké nápady do funkčního zařízení, jak jsem již zmínil, je jen malým doplňkem pro můj dvoukanálový stolní napájecí zdroj. Zahrnul jsem vše, co potřebujete k sestavení vlastního modulu, všechny CAD soubory a schémata Eagle. Zahrnul jsem skicu Arduina, je velmi jednoduchá a snažil jsem se ji snadno pochopit a upravit. Pokud máte nějaké otázky, klidně se ptejte, pokusím se je zodpovědět. Jedná se o otevřený projekt, návrhy jsou vítány. Snažím se vložit co nejvíce informací, ale o soutěži Arduino jsem se dozvěděl pozdě a chtěl jsem to odeslat. Brzy napíšu zbytek, také jsem odstranil SMD komponenty (odpory a LED) a nahradil je TH součástkami, jedinou SMD komponentou je aktuální senzor, protože je k dispozici pouze v balíčku SOIC, soubor ZIP obsahuje soubory s komponentami TH.