Innholdsfortegnelse:

Veggmålervisning: 4 trinn (med bilder)
Veggmålervisning: 4 trinn (med bilder)

Video: Veggmålervisning: 4 trinn (med bilder)

Video: Veggmålervisning: 4 trinn (med bilder)
Video: Секрет опытных мастеров! Как легко состыковать материал, если в углу стоит круглая труба? #shorts 2024, Juli
Anonim
Image
Image
Konsept
Konsept

Jeg kjøpte en billig lommeur fra eBay og tenkte at den ville være en interessant nyhet. Det viste seg at måleren jeg hadde kjøpt ikke var egnet, men da hadde jeg forpliktet meg til å produsere noe som ville henge på en vegg og være en snakkis.

Midten på displayet er et analogt amperemeter som får strøm fra en ladet kondensator som tømmer gjennom måleren og animerer pekerenålen ved å gjøre det.

Et LED -display gjenspeiler bevegelsen til pekeren og gir et iøynefallende display.

Det hele styres av en Atmel 328 mikroprosessor, direkte utviklet på en Arduino Uno, som måler det nåværende lysnivået i rommet, og tilfeldig utløser displayet, alle drevet av tre AA -batterier.

Rekvisita

Arduino Uno med Atmel 328 -prosessor … se resten av teksten

Valg av lysdioder, rød, grønn og gul med en hvit

7 x 330R motstander

1 x LDR

1 x 220uF kondensator

1 x 220R motstand

2 x 10k motstander

1 x likeretterdiode

Et passende gammelt amperemeter, typisk 100uA full skala

Trinn 1: Konsept

Konsept
Konsept
Konsept
Konsept
Konsept
Konsept

Bildene forteller en kort historie, den originale måleren var designet for bruk på ventilradioer og krevde over 100mA og kunne bare ikke drives av en Arduino. Dette er tidlige visningsoppsettsideer. Til slutt tok jeg apparatet fra hverandre med den hensikt å bytte ut mekanismen, ikke veldig vellykket.

Til slutt hentet jeg et gammelt voltmeter med en 100uA mekanisme, perfekt.

Trinn 2: Kretsen

Kretsen
Kretsen
Kretsen
Kretsen

Den opprinnelige bygningen brukte en Arduino for å koble bitene i det som er et ganske enkelt system. Seks digitale pinner driver de fargede lysdiodene via 330R -motstander.

En digital pinne brukes til å aktivere LDR -spenningsdeleren, spenningen måles på en av ADC -pinnene og brukes til å estimere det nåværende lysnivået og tidspunktet på dagen.

En digital pinne brukes til å lade kondensatoren via en diode og 220R motstand.

Måleren er koblet over kondensatoren via en 10k motstand. Denne verdien må kanskje endres avhengig av målingen i full skala på amperemeteret som brukes.

Jeg har også koblet til en tilbakestillingsknapp, som skal monteres på siden av displayet.

Til slutt foretas en ytterligere tilkobling fra anoden til en av lysdiodene for å gi en spenningsreferanse for å kontrollere batterispenningsnivået. Denne kretsen har aldri vært særlig vellykket, og jeg vil bytte den til en enkel spenningsdeler neste gang batteriene går tomt og skjermen er utenfor veggen.

Trinn 3: Implementering

Gjennomføring
Gjennomføring
Gjennomføring
Gjennomføring
Gjennomføring
Gjennomføring
Gjennomføring
Gjennomføring

Å kjøre skjermen fra batterier med en Arduino Uno var ikke praktisk, det nåværende forbruket ville være for høyt ettersom mye av tavlen er aktiv hele tiden, og jeg ønsket at skjermen skulle stå oppå en vegg uberørt i minst seks måneder på en tid.

For å redusere strømforbruket ble skjermkretsene utviklet med en Arduino og brødbrett, kretsene ble overført til matrisekortet og deretter den til slutt programmerte prosessoren fjernet fra Arduino og satt inn i en kontakt på et lite stykke matrisekort, sammen med xtalen, og koblet sammen med båndkabel.

Til slutt går displayet i hele 12 måneder på ett sett med batterier.

Et nyttig triks er å bytte ut Atmel -prosessoren i en Arduino Uno med en ZIF -kontakt, denne passer fint, og sett deretter inn prosessoren på nytt. Når prosjektet er klart til å gå, er prosessoren allerede programmert og trenger bare å fjernes og settes inn i en kontakt på det siste brettet. Når jeg kjøper tomme prosessorer, bruker jeg en time på å sette opp støvelastere på dem alle, så de er klare til bruk når som helst.

Trinn 4: Koden

Som det kan tenkes, er koden for kjøring av grunnskjermen ikke veldig komplisert, men det viktigste området er reduksjon av strømforbruk. Det er to tilnærminger til dette, den ene er å bare kjøre skjermen når det er sannsynlig at noen vil se den, og for det andre å redusere strømforbruket til kretser til et minimum.

Programmet må ha de narkoleptiske bibliotekene installert før kompilering.

Alle forsinkelser i systemet implementeres ved bruk av det narkoleptiske biblioteket for prosessoren med full lav effekt, med et strømforbruk målt i noen få nanoampere.

Prosessoren sover i fire sekunder om gangen, og når han våkner, kjører den en tilfeldig rutine for å avgjøre om systemet vil våkne av ikke. Hvis ikke, sover systemet i ytterligere fire sekunder.

Hvis den tilfeldige rutinen er sann, aktiveres LDR -kretsen og det tas en lysnivåmåling. LDR -kretsen deaktiveres umiddelbart etterpå for å spare strøm.

Systemet fungerer på fire estimerte tidsperioder.

  • Natt - det er veldig mørkt og ingen vil sannsynligvis se på - gjør ingenting og sovner igjen
  • Tidlig morgen - i den første delen er det lite sannsynlig å se noen, men opprettholde statistikk som om dagen
  • Dagtid - det kan være overvåkere, men aktiver bare den analoge måleren, ikke lysdiodene
  • Kveld - det er sannsynlig at det vil være overvåkere, så aktiver hele skjermen

Systemet anslår at daglengden vil endre seg med sesongene, så kvelden blir utvidet til det som ellers ville vært natt ettersom lengden på dager er kortere, men når det fortsatt er sannsynlig at tilskuere vil være tilstede.

Hvis tiden på dagen er passende, brukes en digital utgang for å lade kondensatoren og deretter slått av. Med en analog skjerm, går systemet tilbake i dvale med all utgang slått av og kondensatoren tømmes gjennom måleren hvis peker, som hadde flikket over til full skala, går tilbake til null.

Med LED -displayet aktivt, måler systemet spenningen på kondensatoren og presenterer et kjørelysvisning basert på den målte spenningen til den faller under en terskel når systemet sover.

Et annet tilfeldig valg finner sted mot slutten av displayet for å avgjøre om displayet vil gjentas eller ikke, noe som gir mer interesse for seeren.

En hvit LED er aktivert for å belyse målerens ansikt når LED -visningen er aktiv.

Det narkoleptiske biblioteket av Peter Knight setter prosessoren i full dvalemodus, hvor utgangene vil forbli i tilstanden de var i når de gikk inn i søvn, men alle interne klokker stopper bortsett fra timeren som er begrenset til fire sekunder. Dette kan testes i en Arduino, men på grunn av Arduino -strømlampen og USB -kretsene oppnår ikke de samme strømbesparelsene.

Systemet inneholder fremdeles kode som var beregnet på å redusere batterikapasiteten, men dette har ikke vist seg nyttig. Neste gang det er utenfor veggen, vil jeg endre programmet for å gi en slags batteristatus via lysdiodene eller amperemeteret.

Den siste versjonen har en tilbakestillingsknapp montert på siden av displayet. Hovedårsaken til dette er å tillate demonstrasjoner for besøkende, slik at systemet vil kjøre gjennom den grunnleggende rutinen 10 ganger etter tilbakestilling før den går tilbake til den vanlige tilfeldige rutinen.

Anbefalt: