Turinys:

„Nixie Clock Mood“barometras: 7 žingsniai (su nuotraukomis)
„Nixie Clock Mood“barometras: 7 žingsniai (su nuotraukomis)

Video: „Nixie Clock Mood“barometras: 7 žingsniai (su nuotraukomis)

Video: „Nixie Clock Mood“barometras: 7 žingsniai (su nuotraukomis)
Video: Part 2 - Dracula Audiobook by Bram Stoker (Chs 05-08) 2024, Lapkritis
Anonim
Image
Image

Nepastebėta „Progress“auka yra aneroidinis namų barometras. Šiomis dienomis vis dar galite rasti pavyzdžių vyresnių nei devyniasdešimties žmonių namuose, tačiau milijonai jų yra sąvartyne arba „ebay“.

Tiesą sakant, senosios mokyklos barometras nepadėjo sau, nes buvo beveik nenaudingas atliekant vieną darbą. Net darant prielaidą, kad jis buvo tinkamai sukalibruotas ir tinkamai veikiantis, naudojant atmosferos slėgį prognozuoti orą ar net nurodyti esamą orą, beveik neįmanoma.

Tuo tarpu, norint papildyti visą parą veikiančios žiniasklaidos orų ataskaitos, buvo prieinami itin tikslūs kietojo kūno slėgio, temperatūros ir drėgmės jutikliai. Įdėkite procesorių ir pigų LCD ekraną ir turėsite „skaitmeninę namų orų stotį“. Net orų vėjuotiems žmonėms ar žmonėms, kurie mano, kad oras televizijoje ar internete yra vyriausybės planas, barometro nebereikėjo.

Visa tai gėda, nes turiu šiltų prisiminimų apie barometrą, kurį turėjome mano vaikystės namuose. Mano tėtis kiekvieną dieną duodavo jam kruopščiai moduliuojamą bakstelėjimą ir nustatydavo dabartinį skaitymo indikatorių mini ritualo metu, kurį troškau mėgdžioti, kai buvau vyresnis, net ir tada, kai supratau, kad tai tik pasaulinio lygio pokštas.

Štai kaip pasidaryti atnaujintą analoginio ekrano barometrą, kuris neatsižvelgia į originalo trūkumus, tačiau turi keletą papildomų funkcijų, dar nenaudingesnių nei pradėta. Jei pažiūrėsite vaizdo įrašą, suprasite.

Atsižvelgiant į kuklius šio projekto tikslus, tai yra gana sudėtinga - tiksliau, pakartoti visą projektą vienam „Instructable“yra per daug. Dėl šios priežasties aš sutelksiu dėmesį į barometro/nuotaikos barometro dalį, o likusioje dalyje nurodysiu teisinga kryptimi.

1 žingsnis: Ingredientai ir įrankiai

Atidžiai paruoškite aptvarą
Atidžiai paruoškite aptvarą

Barometrui/nuotaikos barometrui jums reikės:

  • Aneroidinis barometras. Nereikia dirbti. Svarbiau yra tai, kas patinka jūsų estetiniams jausmams. Norėčiau turėti tą iš savo vaikystės namų, bet manau, kad jis yra sąvartyne. Aš gavau pakaitalą ebay už 15 USD.
  • Slėgio jutiklis.
  • ESP8266 modulis - naudojau „NodeMCU“.
  • Tinkamas žingsninis variklis ir vairuotojo lenta - nuoroda į penkių darbo vietų skaičių, tačiau už tokią kainą juos sunku įveikti. Šis variklis turi 4096 žingsnius visiškai sukdamasis, todėl mūsų tikslams yra pakankamai didelės skiriamosios gebos.
  • 5 V nuolatinės srovės maitinimo šaltinis - mažiausiai 1 A - ESP8266 ir varikliui. Aš naudoju kombinuotą 12VDC ir 5VDC maitinimą, nes tokį jau turėjau ir man reikėjo 12V maitinimo šaltinio „Nixie“laikrodžiui (plius daugiau 5V galios kitiems projekto elementams).
  • Bent trys šviesos diodai (norint parodyti slėgio tendenciją).
  • LDR/fotorezistorius.
  • Įvairios eksploatacinės medžiagos, tokios kaip jungiamasis laidas, rezistoriai, termiškai susitraukiantys vamzdžiai ir kt.
  • Daugeliu atvejų galite naudoti originalų barometro korpusą, kurį naudojate elektronikai laikyti. Aš pakeičiau neaiškų „Arts & Crafts“stiliaus laikrodžio dėklą, kuriame būtų laikrodis ir barometras, todėl barometro dėklo nereikėjo.

Įrankiams jums reikės lituoklio, šilumos pistoleto ir kai kurių mažų rankinių įrankių. Jei jums reikia atlikti reikšmingus korpuso pakeitimus, pravers elektrinių įrankių pasirinkimas.

2 žingsnis: kruopščiai paruoškite aptvarą

Tai, ką jums reikia padaryti, labai priklauso nuo jūsų naudojamo korpuso. Jei naudojate barometro korpusą, jums tereikia išsiaiškinti, kaip jį atskirti ir pašalinti aneroidinį mechanizmą. Rodyklė greičiausiai yra tiesiogiai pritvirtinta prie šio mechanizmo, todėl reikia atsargiai nuimti žymeklį jo nepažeidžiant.

Turėjau šiek tiek daugiau darbo, nes mano laikrodžio dėkle vis dar buvo senas (neveikiantis) laikrodžio mechanizmas.

Aš beveik nieko nežinau apie mechaninius laikrodžius, tačiau jautrios spiralinės spyruoklės pasiūlė man elgtis atsargiai. Nepaisant to, kai daiktas sprogo, aš buvau nepasiruošęs. Vieną sekundę atsukau iš pažiūros nereikšmingą varžtą, kitą pasigirdo stiprus trenksmas ir oras prisipildė dulkių ir šiukšlių. Visur buvo laikrodžio rodyklės, o pats dėklas buvo visiškai susprogdintas. Panašiai, kaip įsivaizduoju, kai užsidega tikra bomba, akimirką negalėjau suprasti, kas atsitiko. Po to kurtinančioje tyloje aš pusiau tikėjausi išgirsti tolimą sirenų aimaną. Be to, tikrai skaudėjo ranką.

Pirma pamoka: Net kuklaus dydžio laikrodžio mechanizmai gali sukaupti stebėtinai daug energijos.

Antra pamoka: jei abejojate, dėvėkite apsauginius akinius! Man pasisekė, niekas neiškrito į akis, bet tikrai galėjo. Kartais neužtenka vien tik įsitraukti į senas saugos akis (net nesu tikras, kad tai padariau). Mano ranka buvo gerai, aš tik buvau kūdikis.

Po daug klijavimo ir prispaudimo, aš vėl susikabinau dėklą ir buvau pasirengęs pereiti prie 3 veiksmo.

3 žingsnis: Įdiekite komponentus - 1 dalis

Įdiekite komponentus - 1 dalis
Įdiekite komponentus - 1 dalis
Įdiekite komponentus - 1 dalis
Įdiekite komponentus - 1 dalis

Turite rasti būdą, kaip sumontuoti variklį, kad velenas būtų pakankamai išsikišęs per ratuką, kad, pritvirtinus rodyklę, jis netrukdydamas brauktų per veidą. Tai gali būti šiek tiek sunkiau, nei atrodo iš pirmo žvilgsnio, nes daugumoje barometrų stiklo viduje bus dar viena rodyklė, kuri senovėje buvo naudojama dabartiniam rodmeniui įrašyti. Kaip paaiškinta vėliau, šio žymeklio mums neprireiks, tačiau jo laikymas padeda išsaugoti pradinę įrenginio išvaizdą.

Bet kokiu atveju esamos rodyklės rodyklės buvimas reiškia, kad yra riba, kiek „pagrindinis“žymeklis gali atsisėsti nuo ratuko.

Kita kryptimi rodyklė turi būti pakankamai toli nuo ratuko, kad tik išvalytų skalbyklę, kuri įrėmins į ratuką įdiegtą LDR (žr. Kitą veiksmą).

Ką aš padariau, tai sumontuoju ratuką ir jo rėmą ant medinės atramos, tada pritvirtinu variklį ant atramos su atitinkamais tarpikliais. Pirmoji nuotrauka gali padėti tai paaiškinti, bet jūs galite sugalvoti savo išdėstymą.

Vienas privalumas naudojant laikrodžio dėklą ar kažką panašaus dydžio yra tai, kad yra vietos įrengti maitinimo šaltinį viduje. Man tai buvo svarbu, nes laikrodis sėdės ant židinio, prijungto prie specialiai įrengto lizdo. Šioje vietoje būtų buvę sunku paslėpti akivaizdžiai anachronišką „sienos karpą“ar SPS plytą, tačiau tai gali būti ne jūsų problema.

Antrame paveikslėlyje nepažymėti komponentai yra susiję su projekto laikrodžio ir laikmačio dalimis (trečiasis „NodeMCU“ir su juo susiję laidai yra po „Nixie PCB“).

Visa kita - pirmiausia BMP180 jutiklis, variklio vairuotojo plokštė ir „NodeMCU“- nėra svarbi. Tai reiškia, kad tol, kol nenutraukiau jungiamojo laido nuo vairuotojo plokštės, variklis kartais neveikė tinkamai. Nežinote, kas ten vyko, bet jei jūsų variklis skamba juokingai ir (arba) nejuda sklandžiai, galbūt norėsite pabandyti perkelti laidus.

Kad nereikėtų rankiniu būdu fiksuoti slėgio tendencijos (kylančio, krintančio ar pastovaus), po ratuku įtraukiau tris mažus šviesos diodus. Kai visi trys šviečia, barometras veikia nuotaikos režimu. Aš naudoju „šiltus baltus“šviesos diodus, kad išlaikyčiau laikotarpio jausmą. Nemoduliuoti, jie buvo per daug ryškūs, žiūrint į priekį, tačiau su tam tikrais sunkiais PWM gavau tą išvaizdą, kurios aš siekiau. Dabartinis skaitymo žymeklis vis dar prieinamas tradicionalistams.

4 žingsnis: Įdiekite komponentus - 2 dalis

Įdiekite komponentus - 2 dalis
Įdiekite komponentus - 2 dalis

Išspręskime LDR rodyklę. Pirma, kodėl mums to reikia?

Na, tai yra mano sprendimas, kaip apriboti pigų žingsninį variklį - nors jis gali judėti tiksliais žingsniais, jis neturi būdingų sugebėjimų žinoti, kur jis yra, išskyrus nuorodą į pradinę padėtį. Nors teoriškai manau, kad galėtumėte tai koduoti ir sekti visus vėlesnius judesius, aš spėjau (be jokio realaus pagrindo), kad klaidos greitai įsivels, ypač atsižvelgiant į didelio masto judesius, kurių reikia „nuotaikos režimu“. Be to, būsite prikimšti elektros energijos tiekimo nutraukimo (rašyti kiekvieną judesį į EEPROM nėra praktiška).

Mano pirmoji mintis buvo įvesti kalibravimo ciklą įjungiant ir keičiant nuotaikos ir barometro režimus. Šis ciklas suveiktų mikro jungiklį žinomame ratuko taške. Tačiau mechaninis jungiklio idėjos įgyvendinimas man pasirodė per daug sudėtingas. Pati rodyklė yra pernelyg silpna, kad būtų pavara, todėl man reikia ant veleno įdiegti ką nors kita. Tada iškilo 360 ° judesio išsaugojimo klausimas - viena iš priežasčių, kodėl aš nuėjau su žingsniniu varikliu, o ne su standartiniu servo varikliu. Taikydamas šiek tiek daugiau išradingumo, nei galėčiau prisiimti, esu įsitikinęs, kad mikrojungiklis gali veikti-o galbūt yra ir padėties jutiklio sprendimas, kuris yra iš lentynos-, bet aš pasukau kitu keliu.

Atkreipkite dėmesį, kad ratuko paveikslėlyje yra skalbyklė, sumontuota vienos valandos padėtyje. Ši skalbyklė įrėmina LDR, prijungtą prie vieno analoginio įvesties, esančios „NodeMCU“. Kai barometras įjungiamas arba perjungiamas režimas, „NodeMCU“pradeda kalibravimo ciklą ir tiesiog ieško staigaus šviesos lygio pasikeitimo, kurį sukelia rodyklės užpakalinė dalis, judanti virš LDR. Bet koks tolesnis judėjimas indeksuojamas iš tos žinomos padėties. Kad tai patikimai veiktų, turėjau šiek tiek pakoreguoti kodo slenkstines vertes, tačiau kai tai buvo padaryta, buvau maloniai nustebintas, koks jis buvo tikslus - nuolat grįždamas prie barometro nustatymų 1% arba 2% tikėtinų verčių.

Akivaizdu, kad jis neveikia visiškai tamsoje, bet tada paprastai nekeistumėte režimų. Jei dėl kokių nors priežasčių kalibravimo ciklo negalima užbaigti per nustatytą laiką, jis pasiduoda ir mirksi tendencijos šviesos diodai.

Šiaip ar taip, LDR metodo grožis yra tas, kad montavimas yra labai paprastas - gręžkite skylę, kuri yra pakankamai didelė LDR, ratuke toje vietoje, kur ji bus uždengta galiniu rodyklės galu. Kad tarp rodyklės ir LDR būtų gražus „sandariklis“, aplink LDR priklijuokite mažą poveržlę ir, jei reikia, pakeiskite rodyklės uodegą (aš naudoju tinkamos formos juodą popierių).

5 žingsnis: kodas - pagrindinės funkcijos

Kodas - pagrindinės funkcijos
Kodas - pagrindinės funkcijos

Kaip nustatė kiti, negalėjau priversti standartinės „Arduino“žingsninio variklio bibliotekos dirbti su šiuo varikliu ir tvarkykle. Laimei, šiuo klausimu yra geras instrukcija su kodu, kuris veikia. Pagrindiniam žingsniui naudojau kodą pradiniame įraše, nors komentaruose yra keletas optimizavimo pasiūlymų. Šiam kodui nereikia bibliotekos.

Slėgio duomenims apdoroti naudojau pavyzdį iš „Sparkfun BMP180“bibliotekos. Viskas, ką turėjau padaryti, tai susituokti su variklio valdymu.

6 veiksmas: kodas - kalibravimas, valdymas, GUI, „Google“padėjėjas ir naudingumo funkcijos

Kodas - kalibravimas, valdymas, GUI, „Google“padėjėjas ir naudingumo funkcijos
Kodas - kalibravimas, valdymas, GUI, „Google“padėjėjas ir naudingumo funkcijos

Pirminis kalibravimas yra užkoduotas. Siekiant užtikrinti saugumą ir atsižvelgti į galimą barometro perkėlimą į kitą aukštį, antrinis kalibravimas ir valdymas pasiekiamas naudojant žiniatinklio serverį, kurį sukuria „NodeMCU“ir „Websocket“ryšys. Geras šaltinis apie tai sužinoti yra čia.

Tačiau, kaip rodo vaizdo įrašas, tikrasis šio projekto „oho“veiksnys, koks jis yra, yra valdymas per „Google Assistant“/„Google Home“. Čia yra „Instructable“skrudintuvui GA (maitinamas „Raspberry Pi3“). Nesijaudinkite, jums nereikia naudoti 400 USD skrudintuvo kaip gaubto.

Komandos perduodamos GA per IFTTT ir „Adafruit IO“į „NodeMCU“. Geras šaltinis šiuo klausimu yra čia. Yra ir kitų, sudėtingesnių būdų bendrauti su „Google“padėjėju, tačiau šiam projektui šis labai paprastas metodas puikiai tinka.

Galiausiai, kodas apima keletą labai naudingų naudingų funkcijų (atnaujinimas belaidžiu ryšiu, daugiafunkcinis DNS, „Wifi Manager“), kurias pradėjau įtraukti į visus savo ESP8266 projektus.

Visas šio projekto kodas (įskaitant „Nixie“laikrodį ir laikmačio valdiklį) yra „Github“čia. Aš palikau vaizdus, kuriuos naudoju HTML/CSS failuose, kad jis veiktų iš dėžutės (tikiuosi) - jums tiesiog reikės pridėti savo „Adafruit IO“paskyros informaciją.

7 žingsnis: „Nixie“laikrodis ir laikmatis

„Nixie“laikrodis ir laikmatis
„Nixie“laikrodis ir laikmatis

„Nixie Clock“valdo atskiras „NodeMCU“ir naudoja „Nixie“vamzdelį bei tvarkyklės modulį, sukurtą kaip čia esantis „Arduino“skydas. Nuorodoje esančioje versijoje yra GPS modulis, skirtas gauti laiko. Mano skydelyje (ankstesnėje versijoje) nėra GPS modulio, bet aš naudoju „Node MCU“, kad gaučiau laiko iš interneto, kuris tam tikra prasme yra geresnis.

Laikrodžio valdymo schema ir grafinė sąsaja turi daugiau konfigūravimo parinkčių, tačiau kitaip yra labai panašios į barometrą. Čia yra nedidelis sutapimas, nes „Nixie“šviesos diodai reaguoja į barometro įvestį (per tą patį „Adafruit IO“kanalą).

Iš pradinio laikrodžio mechanizmo nuolaužų išgelbėjau pakankamai bitų, kad galėčiau sukurti laikmačio mechanizmą, varomą trečiojo „NodeMCU“(ei, jie kainuoja tik 6 USD) ir kito žingsninio variklio. Viskas, ką pridėjau, buvo „sąsaja“tarp pradinio mechanizmo ir variklio. „Sąsaja“yra kabutėse, nes ją sudaro tik kulkos jungtis su dviem vinimis, įstumtomis stačiu kampu ir įstumta ant variklio veleno. Kiekvienas šio įrenginio sukimasis ketvirtį sukelia vieną laikmačio smūgį. Vėlgi, laikmačio valdymo schema yra panaši į barometrą ir visi trys žiniatinklio serveriai yra sujungti, kad visa dalis atrodytų sklandžiau, nei yra iš tikrųjų.

Laikrodis ir laikmatis „NodeMCU“veikia visiškai nepriklausomai vienas nuo kito, tačiau dėl interneto stebėjimo stebuklų visada puikiai sinchronizuojami.

Rekomenduojamas: