Sadržaj:
Video: Zaslon mjerača zida: 4 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:32
Kupio sam jeftino mjerilo džepnih satova na eBayu misleći da će to biti zanimljiva novost. Pokazalo se da mjerač koji sam kupio nije prikladan, ali do tada sam se obvezao proizvesti nešto što će objesiti na zid i biti tema za razgovor.
U središtu zaslona nalazi se analogni ampermetar koji se napaja napunjenim kondenzatorom koji se prazni kroz mjerač animirajući pri tome kazaljku pokazivača.
LED zaslon odražava kretanje pokazivača pružajući privlačan prikaz.
Cjelinu kontrolira Atmel 328 mikroprocesor, izravno razvijen na Arduino Uno, koji mjeri trenutnu razinu osvjetljenja u prostoriji i nasumično pokreće zaslon, a sve se napaja iz tri AA baterije.
Pribor
Arduino Uno s procesorom Atmel 328 … pogledajte ostatak teksta
Izbor LED dioda, crvene, zelene i žute s jednom bijelom
7 x 330R otpornici
1 x LDR
1 x 220uF kondenzator
1 x 220R otpornik
2 x 10k otpornika
1 x ispravljačka dioda
Prikladno stari ampermetar, obično 100uA u punoj skali
Korak 1: Koncept
Slike govore kratku priču, originalni mjerač je dizajniran za upotrebu na radijskim ventilima i zahtijevao je više od 100 mA i jednostavno ga nije mogao pokrenuti Arduino. Ovo su prve ideje izgleda zaslona. Na kraju sam rastavio mjerač s namjerom da zamijenim mehanizam, što nije baš uspjelo.
Na kraju sam uzeo stari voltmetar sa mehanizmom od 100uA, savršen.
Korak 2: Krug
Originalna verzija koristila je Arduino za povezivanje bitova u prilično jednostavan sustav. Šest digitalnih pinova pokreće LED u boji preko otpornika 330R.
Jedan digitalni pin koristi se za napajanje razdjelnika napona LDR, napon se mjeri na jednom od ADC pinova i koristi se za procjenu trenutne razine svjetlosti i doba dana.
Jedan digitalni pin koristi se za punjenje kondenzatora putem diode i otpornika 220R.
Mjerač je povezan preko kondenzatora preko 10k otpornika. Ovu vrijednost će možda trebati promijeniti ovisno o mjerenju u punoj ljestvici na upotrijebljenom ampermetru.
Također sam spojio gumb za resetiranje koji se montira sa strane vitrine.
Na kraju, dodatno se povezuje s anode jedne od LED dioda kako bi se osigurala referentna vrijednost napona za provjeru razine napona baterije. Ovaj krug nikada nije bio uspješan i promijenit ću ga u jednostavan razdjelnik napona sljedeći put kada se baterije isprazne i zaslon ne bude na zidu.
Korak 3: Implementacija
Pokretanje zaslona iz baterija pomoću Arduino Uno nije bilo praktično, trenutna bi potrošnja bila previsoka jer je većina ploče aktivna cijelo vrijeme, a ja sam želio da zaslon stoji na zidu netaknut najmanje šest mjeseci u vrijeme.
Kako bi se smanjila potrošnja struje, sklopovi zaslona razvijeni su s Arduinom i matičnom pločom, sklopovi su preneseni na matričnu ploču, a zatim konačno programirani procesor uklonjen s Arduina i stavljen u utičnicu na malom komadu matrične ploče, zajedno s xtalom, i spojeni vrpčnim kabelom.
Na kraju, zaslon radi punih 12 mjeseci s jednim kompletom baterija.
Dobar trik je zamijeniti Atmel procesor u Arduino Uno sa ZIF utičnicom, ovaj dobro pristaje, a zatim ponovno umetnuti procesor. Nakon što je projekt spreman za rad, procesor je već programiran i samo ga je potrebno ukloniti i staviti u utičnicu na posljednjoj ploči. Kad kupim prazne procesore, provedem sat vremena stavljajući pokretačke programe na sve njih tako da su u svakom trenutku spremni za upotrebu.
Korak 4: Kôd
Kako se moglo zamisliti, kôd za pokretanje osnovnog zaslona nije jako kompliciran, ali ključno područje je smanjenje potrošnje energije. Postoje dva pristupa tome, jedan je pokretanje zaslona samo kad ga vjerojatno netko vidi, a drugo smanjenje potrošnje energije krugova na minimum.
Prije sastavljanja programa potrebno je instalirati narkoleptičke knjižnice.
Sva kašnjenja u sustavu provedena su pomoću narkoleptičke biblioteke za potpuni način rada niske snage procesora, s potrošnjom energije izmjerenom u nekoliko nanoampera.
Procesor spava četiri sekunde odjednom, a pri buđenju pokreće nasumičnu rutinu kako bi utvrdio hoće li se sustav probuditi. Ako ne, sustav spava još četiri sekunde.
Ako je slučajna rutina istinita, aktivira se LDR krug i vrši se mjerenje razine svjetlosti. LDR krug se odmah nakon toga deaktivira radi uštede energije.
Sustav radi na četiri procijenjena vremenska razdoblja.
- Noć - vrlo je mračna i vjerojatno nitko neće gledati - ne radite ništa i idite na spavanje
- Rano jutro - u prvom dijelu vjerojatno neće biti promatrača, ali vodite statistiku kao po danu
- Danju - možda ima promatrača, ali aktivirajte samo analogno brojilo, a ne LED diode
- Navečer - vjerojatno će biti promatrača pa aktivirajte cijeli zaslon
Sustav procjenjuje da će se duljina dana mijenjati s godišnjim dobima, pa se večer produžuje na ono što bi inače bila noć jer je duljina dana kraća, ali kada je vjerojatno da će promatrači još biti prisutni.
Ako je doba dana prikladno, digitalni izlaz koristi se za punjenje kondenzatora, a zatim se isključuje. S analognim zaslonom, sustav se vraća u stanje mirovanja s isključenim izlazom, a kondenzator se prazni kroz mjerač čiji se pokazivač, koji je preletio do pune ljestvice, vraća na nulu.
S aktivnim LED zaslonom, sustav mjeri napon na kondenzatoru i prikazuje prikaz svjetla na temelju izmjerenog napona sve dok ne padne ispod praga kada sustav spava.
Drugi nasumični odabir događa se pred kraj zaslona kako bi se utvrdilo hoće li se prikaz ponoviti ili ne, što će promatraču pružiti veći interes.
Bijela LED dioda aktivira se kako bi osvijetlila lice mjerača kada je LED prikaz aktivan.
Narkoleptička knjižnica Petera Knighta dovodi procesor u stanje potpunog mirovanja gdje će izlazi ostati u stanju u kojem su bili pri ulasku u stanje mirovanja, ali svi unutarnji satovi se zaustavljaju osim mjerača vremena za isključivanje koji je ograničen na četiri sekunde. To se može testirati u Arduinu, ali zbog LED -a za napajanje i USB sklopova Arduina ne postiže se ista ušteda energije.
Sustav još uvijek sadrži kôd koji je trebao objasniti smanjenje kapaciteta baterija, no to se nije pokazalo korisnim. Sljedeći put kad bude van zida, promijenit ću program kako bih preko LED -a ili ampermetra osigurao neku vrstu statusa baterije.
Konačna verzija ima gumb za poništavanje postavljen sa strane vitrine. Glavni razlog za to je omogućiti posjetiteljima demonstracije kako bi sustav 10 puta nakon resetiranja prošao kroz svoju osnovnu rutinu prije nego što se vrati na uobičajenu nasumičnu rutinu.
Preporučeni:
Sat koji pada sa zida kad ga pogledate: 4 koraka
Sat koji pada sa zida kad ga pogledate: Jeste li ikada poželjeli sat koji vam ne govori o vremenu. Ni ja, ali to dobivate kad me stavite u karantenu s nekoliko elektroničkih komponenti i internetom
TTGO (kolor) zaslon s mikropythonom (TTGO T-zaslon): 6 koraka
TTGO (kolor) zaslon s Micropythonom (TTGO T-zaslon): TTGO T-zaslon je ploča temeljena na ESP32 koja uključuje zaslon u boji od 1,14 inča. Ploča se može kupiti za nagradu manju od 7 USD (uključujući dostavu, nagrada viđena na banggood -u). To je nevjerojatna nagrada za ESP32 uključujući zaslon. T
I2C / IIC LCD zaslon - Upotrijebite SPI LCD za I2C LCD zaslon Korištenje SPI do IIC modula s Arduinom: 5 koraka
I2C / IIC LCD zaslon | Upotrijebite SPI LCD na I2C LCD zaslonu Korištenje SPI na IIC modula s Arduinom: Zdravo dečki, budući da normalni SPI LCD 1602 ima previše žica za povezivanje pa je vrlo teško povezati ga s arduinom, ali na tržištu postoji jedan modul koji može pretvoriti SPI zaslon u IIC zaslon pa morate spojiti samo 4 žice
IOT123 - I2C OGLEDNIK OD ZIDA: 4 koraka
IOT123 - I2C BRICK MASTER JIG: Tijekom razvoja ASIMILIRAJUĆIH SENZORA I AKTORA, držim UNO pri ruci za slanje adhoc I2C naredbi na prototipove u razvoju. Jedna od prednosti I2C CIGLA je standardizirani pinout. Umjesto da svaki put koristite žice za matičnu ploču
Gornje dugme IRobot virtualnog zida: 6 koraka
Gornji gumb IRobot virtualnog zida: Pa me ljuti što velika tipka na vrhu iRobotovog virtualnog zida nije tipka za uključivanje. Izgleda da bi trebalo biti, ali jednostavno nije. Zato moram ući i dodati prekidač na vrh virtualnog zida