Obsah:
- Zásoby
- Krok 1: Návrh desky plošných spojů ohřívače
- Krok 2: Navrhování desky plošných spojů ovladače
- Krok 3: CircuitPython Bootloader
- Krok 4: Kód CircuitPython
- Krok 5: Montáž
- Krok 6: Hotový projekt
Video: Termochromický displej teploty a vlhkosti - verze PCB: 6 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:20
Před chvílí jsem udělal projekt s názvem Thermochromic Temperature & Humidity Display, kde jsem postavil 7segmentový displej z měděných desek, které byly vyhřívány/chlazeny peltierovými prvky. Měděné desky byly pokryty termochromní fólií, která mění barvu s teplotou. Tento projekt je menší verzí displeje, který místo peltiers používá PCB s topnými stopami, jak navrhuje uživatel DmitriyU2 v sekci komentáře. Použití ohřívače desek plošných spojů umožňuje mnohem jednodušší a kompaktnější design. Ohřev je také účinnější, což vede k rychlejší změně barvy.
Podívejte se na video, jak funguje displej.
Protože mi zbylo několik desek plošných spojů, prodávám tento displej také v mém obchodě Tindie.
Zásoby
- Ohřívač PCB (viz můj GitHub pro soubory Gerber)
- Ovládejte PCB (viz můj GitHub pro Gerber soubory a BoM)
- Čidlo DHT22 (např. Ebay.de)
- 3D vytištěný stojan (stl soubor najdete na mém GitHubu)
- Termochromní lepicí fólie, 150x150 mm, 30-35 ° C (SFXC)
- Šroub M2x6 + matice
- 2x kolíková lišta 1x9, 2,54 mm (např. Mouser.com)
- 2x konektor desky SMD 1x9, 2,54 mm (např. Mouser.com)
Krok 1: Návrh desky plošných spojů ohřívače
Deska ohřívače PCB byla navržena v Eagle. Rozměry desky plošných spojů jsou 100 x 150 mm, protože 150 x 150 mm je standardní velikost termochromních plechů, které jsem použil. Nejprve jsem vytvořil náčrt segmentů ve Fusion360, který byl uložen jako dxf a poté importován do Eagle. Segmenty mají mezi sebou vyfrézované mezery a jsou spojeny pouze malými můstky. To zlepšuje tepelnou izolaci jednotlivých segmentů, a proto umožňuje rychlejší zahřívání a snižuje „tepelné přeslechy“. Segmenty byly vyplněny stopami PCB na horní vrstvě (vidět červeně) pomocí meandrového nástroje v Eagle. Použil jsem rozchod a rozteč 6 mil, což je minimální velikost, kterou může PCBWay vyrobit bez dalších nákladů. Každá stopa se proplétá mezi dvěma průchodkami, které jsou poté spojeny s kolíky spodní vrstvou (vidět modře) pomocí mnohem silnějších 32 mil stop. Všechny segmenty sdílejí společný základ.
Neudělal jsem žádné výpočty pro topný výkon požadovaný pro určitý nárůst teploty, ani jsem nepočítal očekávaný odpor segmentu. Došlo mi, že jakoukoli úpravu topného výkonu lze provést pomocí signálu PWM s měnícím se pracovním cyklem. Později jsem zjistil, že se segmenty zahřívají přiměřeně rychle, když jsou napájeny přes 5V USB port za použití ~ 5% pracovního cyklu. Celkový proud při zahřívání všech 17 segmentů je asi 1,6 A.
Všechny soubory desek najdete na mém GitHubu.
Krok 2: Navrhování desky plošných spojů ovladače
Pro ovládání ohřívače desek plošných spojů jsem vybral MCU SAMD21E18, který jsem také použil ve svém projektu GlassCube. Tento mikrokontrolér má dostatek kolíků k ovládání všech 17 segmentů ohřívače a čtení snímače DHT22. Má také nativní USB a lze jej použít s bootloaderem Adafruit's CircuitPython. Jako napájecí zdroj a pro programování MCU byl použit konektor micro USB. Segmenty ohřívače jsou ovládány 9 dvoukanálovými MOSFETy (SP8K24FRATB). Ty zvládnou až 6 A a mají prahové napětí brány <2,5 V, takže je lze přepínat logickým signálem 3,3 V z MCU. Zjistil jsem, že toto vlákno mi velmi pomohlo navrhnout řídicí obvod topení.
PCB jsem objednal od PCBWay a elektronické díly samostatně od Mousera a PCB jsem sestavil sám, abych ušetřil náklady. Použil jsem dávkovač pájecí pasty, umístil součásti ručně a pájil je pomocí infračerveného IC ohřívače. Vzhledem k relativně velkému množství zapojených komponent a požadovanému přepracování to však bylo docela únavné a zvažuji v budoucnu využití montážní služby.
Soubory desek lze opět nalézt na mém GitHubu. Najdete zde vylepšenou verzi desky plošných spojů, která místo micro USB používá konektor USB-C. Také jsem opravil rozteč otvorů pro snímač DHT22 a přidal 10kolíkový konektor pro snazší blikání bootloaderu přes J-Link.
Krok 3: CircuitPython Bootloader
Nejprve jsem použil SAMD21 pomocí bootloaderu UF2 založeného na Adafruit's Trinket M0. Bootloader musel být mírně upraven, protože Trinket má LED připojenou k jednomu z pinů, které používám k ohřevu. V opačném případě se tento kolík krátce po spuštění zvýší a zahřeje připojený segment plným výkonem. Flashování bootloaderu se provádí připojením J-Link k MCU přes porty SWD a SWC. Celý proces je podrobně popsán na webu Adafruit. Po instalaci zavaděče je MCU po připojení přes port micro USB rozpoznán jako flash disk a následné zavaděče lze jednoduše nainstalovat přetažením souboru UF2 na disk.
Jako další krok jsem chtěl nainstalovat bootloader CircuitPython. Protože však moje deska používá mnoho pinů, které nejsou připojeny k Trinket M0, musel jsem nejprve mírně upravit konfiguraci desky. Na webu Adafruit je k tomu opět skvělý návod. V zásadě je třeba komentovat několik ignorovaných pinů v mpconfigboard.h a poté vše překompilovat. Vlastní soubory zavaděče jsou k dispozici také na mém GitHubu.
Krok 4: Kód CircuitPython
Po instalaci zavaděče CircuitPython můžete desku jednoduše naprogramovat uložením kódu jako souboru code.py přímo na USB flash disk. Kód, který jsem napsal, čte snímač DHT22 a poté střídavě zobrazuje teplotu a vlhkost zahříváním odpovídajících segmentů. Jak již bylo zmíněno, ohřev se provádí spínáním MOSFETů signálem PWM. Místo konfigurace pinů jako PWM výstupů jsem pomocí zpoždění vygeneroval v kódu „falešný“PWM signál s nízkou spínací frekvencí 100 Hz. Aby se dále snížila spotřeba proudu, nezapínám segmenty současně, ale postupně, jak je znázorněno na schématu výše. Existuje také několik triků, jak zahřátí segmentů vyrovnat. Předně je pracovní cyklus pro každý segment trochu jiný. Například pomlčka znaku „%“potřebuje mnohem větší pracovní cyklus, protože má vyšší odpor. Také jsem zjistil, že segmenty, které jsou obklopeny mnoha dalšími segmenty, je třeba méně zahřívat. Kromě toho, pokud byl segment zahříván v předchozím „běhu“, může být pracovní cyklus v dalším snížen. Nakonec se doba ohřevu a chlazení přizpůsobí okolní teplotě, která se pohodlně měří snímačem DHT22. Abych našel rozumné časové konstanty, ve skutečnosti jsem kalibroval displej v klimatické komoře, ke které mám naštěstí v práci přístup.
Úplný kód najdete na mém GitHubu.
Krok 5: Montáž
Sestavení displeje je poměrně snadné a lze jej rozdělit v následujících krocích
- Pájejte zásuvkové kolíkové konektory na desku ohřívače
- Na ohřívací desku plošných spojů připevněte samolepicí termochromní fólii
- Připájejte snímač DHT22 k desce plošných spojů řídicí jednotky a upevněte šroubem a maticí M2
- Pájejte zástrčky konektoru na desku plošných spojů ovladače
- Připojte obě desky plošných spojů a umístěte je do 3D tištěného stojanu
Krok 6: Hotový projekt
Jsem docela spokojený s hotovou diplay, která nyní neustále běží v našem obývacím pokoji. Cíle vytvořit menší, jednodušší verzi mého původního termochromického displeje bylo rozhodně dosaženo a chtěl bych uživateli DmitriyU2 ještě jednou poděkovat za návrh. Projekt mi také pomohl zlepšit své dovednosti v navrhování desek plošných spojů v Eagle a dozvěděl jsem se o použití MOSFETů jako přepínačů.
Dalo by se dále vylepšit design vytvořením pěkného krytu pro desky plošných spojů. Uvažuji také o výrobě digitálních hodin ve stejném stylu.
Pokud se vám tento projekt líbí, můžete ho jen předělat nebo koupit v mém obchodě Tindie. Zvažte také hlasování pro mě při výzvě k návrhu DPS.
Cena rozhodčích v soutěži PCB Design Challenge
Doporučuje:
Měřič teploty a vlhkosti IoT s OLED obrazovkou: 5 kroků (s obrázky)
Měřič teploty a vlhkosti IoT s obrazovkou OLED: Zkontrolujte teplotu a vlhkost na obrazovce OLED kdykoli chcete a současně sbírejte tato data na platformě IoT. Minulý týden jsem publikoval projekt s názvem Nejjednodušší měřič teploty a vlhkosti IoT. Je to dobrý projekt, protože můžete
Nejjednodušší měřič teploty a vlhkosti IoT: 5 kroků (s obrázky)
Nejjednodušší měřič teploty a vlhkosti IoT: Nejjednodušší měřič teploty a vlhkosti IoT vám umožňuje sbírat teplotu, vlhkost a tepelný index. Poté je pošlete na Adafruit IO
Systém regulace vlhkosti a teploty pro terárium: 11 kroků (s obrázky)
Systém řízení vlhkosti a teploty pro terárium: ÚVOD: Tento návod je pro vývoj modulárního systému řízení vlhkosti a teploty pomocí Arduino Uno. Tento systém používá vodotěsnou vlhkostní a teplotní sondu ke sledování parametrů prostředí a připojení Arduino Uno
Indikátor teploty a vlhkosti Arduino: 7 kroků (s obrázky)
Indikátor teploty a vlhkosti od společnosti Arduino: Tento návod vám ukáže, jak vytvořit krabici, která pomocí Arduina může ukazovat teplotu a vlhkost. Tuto krabici můžete postavit na stůl pro měření teploty a vlhkosti ve vaší místnosti Díky vysoké kvalitě MDF krabice laserovým řezáním je každá věc kompaktní
Monitorování teploty a vlhkosti pomocí Raspberry Pi: 6 kroků (s obrázky)
Monitorování teploty a vlhkosti pomocí Raspberry Pi: Léto se blíží a ti, kteří nemají klimatizaci, by měli být připraveni na manuální ovládání atmosféry v interiéru. V tomto příspěvku popisuji moderní způsob měření nejdůležitějších parametrů pro pohodlí člověka: teploty a vlhkosti. T