INHOUDSOPGAWE:
- Voorrade
- Stap 1: Ontwerp die verwarmingskaart
- Stap 2: Ontwerp die PCB van die beheerder
- Stap 3: CircuitPython Bootloader
- Stap 4: CircuitPython -kode
- Stap 5: Montering
- Stap 6: Voltooide projek
Video: Thermochrome temperatuur- en humiditeitsweergawe - PCB -weergawe: 6 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
'N Rukkie gelede het ek 'n projek genaamd Thermochromic Temperature & Humidity Display gedoen, waar ek 'n 7-segment vertoning gebou het uit koperplate wat deur peltier-elemente verhit/afgekoel is. Die koperplate was bedek met 'n termochrome foelie wat van kleur verander met temperatuur. Hierdie projek is 'n kleiner weergawe van die skerm wat in plaas van peltiers 'n PCB met verwarmingsspore gebruik, soos voorgestel deur gebruiker DmitriyU2 in die kommentaarafdeling. Deur 'n PCB -verwarmer te gebruik, word 'n baie eenvoudiger en meer kompakte ontwerp moontlik gemaak. Die verwarming is ook meer doeltreffend, wat lei tot 'n vinniger kleurverandering.
Kyk na die video om te sien hoe die skerm werk.
Aangesien ek nog 'n paar PCB's oor het, verkoop ek hierdie skerm ook in my Tindie -winkel.
Voorrade
- Verwarmingskaart (sien my GitHub vir Gerber -lêers)
- Beheer PCB (sien my GitHub vir Gerber -lêers en BoM)
- DHT22 -sensor (bv. Ebay.de)
- 3D -gedrukte staander (sien my GitHub vir stl -lêer)
- Termochromiese kleefvel, 150x150 mm, 30-35 ° C (SFXC)
- M2x6 bout + moer
- 2x penkop 1x9, 2,54 mm (bv. Mouser.com)
- 2x SMD -bordaansluiting 1x9, 2,54 mm (bv. Mouser.com)
Stap 1: Ontwerp die verwarmingskaart
Die verwarmingskaart is ontwerp in Eagle. Die PCB -afmetings is 100x150 mm omdat 150x150 mm die standaardgrootte is van die termochromiese velle wat ek gebruik het. Ek het eers 'n skets gemaak van die segmente in Fusion360 wat as dxf gestoor is en dan in Eagle ingevoer is. Die segmente het gapings tussen hulle gemaak en word slegs met klein brûe verbind. Dit verbeter die termiese isolasie van die individuele segmente en laat vinniger verhitting toe en verminder 'termiese kruisspraak'. Die segmente is gevul met PCB -spore op die boonste laag (in rooi gesien) met behulp van die kronkelgereedskap in Eagle. Ek het 'n spoorwydte en spasiëring van 6 mil gebruik, wat die minimum grootte is wat sonder ekstra koste deur PCBWay vervaardig kan word. Elke spoor word kronkel tussen twee vias wat dan via die onderste laag (in blou gesien) met die penne verbind word met behulp van baie dikker 32 mil spore. Alle segmente deel 'n gemeenskaplike grondslag.
Ek het geen berekeninge gedoen vir die verwarmingskrag wat benodig word vir 'n sekere temperatuurstyging nie, en ek het ook nie die verwagte weerstand van 'n segment bereken nie. Ek het gedink dat enige aanpassing van die verwarmingsvermoë gemaak kan word deur 'n PWM -sein met 'n wisselende insetsiklus te gebruik. Ek het later gevind dat die segmente redelik vinnig verhit as dit deur die 5V USB -poort aangedryf word met 'n ~ 5% -siklus. Die totale stroom by die verhitting van al 17 segmente is ongeveer 1,6 A.
Alle raadslêers kan op my GitHub gevind word.
Stap 2: Ontwerp die PCB van die beheerder
Om die PCB -verwarmer te beheer, kies ek 'n SAMD21E18 MCU wat ek ook in my GlassCube -projek gebruik het. Hierdie mikrobeheerder het genoeg penne om al 17 verwarmingsegmente te beheer en die DHT22 -sensor voor te lees. Dit het ook inheemse USB en kan met Adafruit se CircuitPython -laaiprogram geflits word. 'N Mikro -USB -aansluiting is gebruik as kragtoevoer en vir die programmering van die MCU. Die verwarmingsegmente word beheer deur 9 tweekanaals MOSFET's (SP8K24FRATB). Dit kan tot 6 A hanteer en het 'n hekdrempelwaarde <2.5 V, sodat hulle deur die 3.3 V logiese sein van die MCU kan skakel. Ek het hierdie draad baie nuttig gevind om my te help met die ontwerp van die verwarmingskring.
Ek het die PCB's van PCBWay en die elektroniese onderdele afsonderlik van Mouser bestel en self die PCB's saamgestel om koste te bespaar. Ek gebruik 'n soldeerpasta -dispenser wat die dele met die hand geplaas het en met 'n infrarooi IC -verwarmer gesoldeer het. As gevolg van die relatief groot hoeveelheid komponente wat betrokke was en die nodige herwerkings, was dit nogal vervelig, en ek oorweeg dit om in die toekoms 'n monteerdiens te gebruik.
Weereens kan die bordlêers op my GitHub gevind word. Daar vind u 'n verbeterde weergawe van die PCB wat 'n USB-C-aansluiting gebruik in plaas van mikro-USB. Ek het ook die afstand tussen die deurgate vir die DHT22-sensor reggestel en 'n 10-pins-aansluiting bygevoeg om die laaiprogram makliker via J-Link te laat flits.
Stap 3: CircuitPython Bootloader
Ek het eers die SAMD21 geflits met 'n UF2 -laaiprogram wat gebaseer is op Adafruit se Trinket M0. Die selflaaiprogram moes effens aangepas word omdat die Trinket 'n LED het wat gekoppel is aan een van die penne wat ek gebruik om te verhit. Andersins sal hierdie pen 'n kort rukkie na die opstart hoog gaan en die gekoppelde segment met volle krag verhit. Die laai van die selflaaiprogram word gedoen deur 'n J-Link aan te sluit op die MCU via die SWD- en SWC-poorte. Die hele proses word breedvoerig op die Adafruit -webwerf beskryf. Na die installering van die selflaaiprogram word die MCU herken as 'n flitsstuur as dit via die mikro -USB -poort gekoppel is, en daaropvolgende selflaaiprogramme kan eenvoudig geïnstalleer word deur 'n UF2 -lêer na die skyf te sleep.
As 'n volgende stap wou ek 'n CircuitPython -laaiprogram installeer. Aangesien my bord baie penne gebruik wat nie op die Trinket M0 gekoppel is nie, moes ek eers die bordkonfigurasie effens verander. Daar is weer 'n wonderlike handleiding hiervoor op die Adafruit -webwerf. Eintlik moet u net 'n paar geïgnoreerde penne in die mpconfigboard.h kommentaar lewer en dan alles weer saamstel. Die pasgemaakte bootloader -lêers is ook beskikbaar op my GitHub.
Stap 4: CircuitPython -kode
Nadat die CircuitPython -selflaaiprogram geïnstalleer is, kan u die bord net programmeer deur u kode as 'n code.py -lêer direk op die USB -stick te stoor. Die kode wat ek geskryf het, lees die DHT22 -sensor uit en vertoon dan afwisselend die temperatuur en humiditeit deur die ooreenstemmende segmente te verhit. Soos reeds genoem, word die verhitting gedoen deur die MOSFET's met 'n PWM -sein te skakel. In plaas daarvan om die penne as PWM -uitsette op te stel, het ek 'n 'valse' PWM -sein met 'n lae skakelfrekwensie van 100 Hz in die kode gegenereer deur middel van vertragings. Om die huidige verbruik verder te verlaag, skakel ek nie die segmente gelyktydig aan nie, maar opeenvolgend, soos getoon in die skema hierbo. Daar is ook 'n paar truuks om die verhitting van die segmente egaliger te maak. In die eerste plek is die dienssiklus vir elke segment 'n bietjie anders. Die streep van die "%" -teken het byvoorbeeld 'n veel groter werksiklus nodig vanweë die hoër weerstand. Ek het ook gevind dat segmente wat omring word deur baie ander segmente minder verhit moet word. Verder, as 'n segment in die vorige "run" verhit is, kan die dienssiklus in die volgende verminder word. Laastens word die verhitting- en verkoeltyd aangepas by die omgewingstemperatuur wat gemaklik gemeet word deur die DHT22 -sensor. Om redelike tydkonstante te vind, het ek die skerm eintlik gekalibreer in 'n klimaatkamer waartoe ek gelukkig toegang het.
U kan die volledige kode op my GitHub vind.
Stap 5: Montering
Die montering van die skerm is redelik maklik en kan in die volgende stappe verdeel word
- Soldeer vroulike penkoppe aan verwarmer PCB
- Heg die selfklevende termochrome vel aan die verwarmingskaart
- Soldeer DHT22 -sensor aan die PCB -kontroleerder en maak vas met M2 -bout en moer
- Soldeer manlike penkoppe aan kontroleerder PCB
- Koppel beide PCB's en plaas dit in 'n 3D -gedrukte standaard
Stap 6: Voltooide projek
Ek is baie tevrede met die voltooide diploma wat voortdurend in ons sitkamer loop. Die doel om 'n kleiner, eenvoudiger weergawe van my oorspronklike termochromiese skerm te maak, is beslis bereik en ek wil die gebruiker DmitriyU2 nogmaals bedank vir die voorstel. Die projek het my ook gehelp om my PCB -ontwerpvaardighede in Eagle te verbeter en ek het geleer oor die gebruik van MOSFET's as skakelaars.
U kan die ontwerp miskien verder verbeter deur 'n mooi omhulsel vir die PCB's te maak. Ek dink ook daaraan om 'n digitale horlosie in dieselfde styl te maak.
As u van hierdie projek hou, kan u dit net nuut maak of in my Tindie -winkel koop. Oorweeg ook om vir my te stem in die PCB -ontwerpuitdaging.
Beoordelaarsprys in die PCB Design Challenge
Aanbeveel:
DHT 11 Temperatuur- en humiditeitsweergawe: 4 stappe
DHT 11 Temperatuur- en humiditeitsweergawe: benodigde dele (Britse voorraad) Arduino Nano-https://www.amazon.co.uk/Arduino-compatible-Nano-CH340-USB/dp/B00ZABSNUSDHT 11 sensor-https: // www .adafruit.com/product/3861.3 " OLED groen skerm https://www.amazon.co.uk/DSD-TECH-Screen-Support
Thermochrome temperatuur- en humiditeitsweergawe: 10 stappe (met foto's)
Termochrome temperatuur- en humiditeitsweergawe: ek werk al 'n geruime tyd aan hierdie projek. Die oorspronklike idee het by my opgekom nadat ek 'n demonstrateur van die TEC -kontroleerder by die werk vir 'n beurs gebou het. Om die TEC's se verwarmings- en verkoelingseienskappe aan te toon, gebruik ons termochrome verf wat
Arduino humiditeitsweergawe van 24 uur: 3 stappe (met foto's)
Arduino 24 uur temperatuur humiditeitsweergawe: die DHT11 is 'n uitstekende sensor om mee te begin. Dit is goedkoop en maklik om aan te sluit by 'n Arduino. Dit meld temperatuur en humiditeit met 'n akkuraatheid van ongeveer 2%, en hierdie instruksies gebruik 'n Gameduino 3 as 'n grafiese vertoning, wat 24 uur se geskiedenis toon
Temperatuur- en humiditeitsweergawe en data -insameling met Arduino en verwerking: 13 stappe (met foto's)
Temperatuur- en humiditeitsweergawe en data -insameling met Arduino en verwerking: Inleiding: dit is 'n projek wat 'n Arduino -bord, 'n sensor (DHT11), 'n Windows -rekenaar en 'n verwerkingsprogram (gratis aflaai) gebruik om temperatuur-, humiditeitsdata in digitale en staafgrafiekvorm, vertoon tyd en datum en voer 'n telperiode uit
Beheer u elektriese toestelle met u TV -afstandsbediening (afstandsbediener) met temperatuur- en humiditeitsweergawe: 9 stappe
Beheer u elektriese toestelle met u TV -afstandsbediening (ir -afstandsbediening) met temperatuur- en humiditeitsweergawe: hallo, ek is Abhay en dit is my eerste blog oor Instructables, en vandag gaan ek u wys hoe u u elektriese toestelle met u TV -afstandsbediening kan beheer deur hierdie te bou eenvoudige projek. dankie aan die atl -laboratorium vir ondersteuning en die verskaffing van die materiaal