Indholdsfortegnelse:

En talende UV-indeks-måleenhed, der bruger VEML6075-sensoren og den lille Buddy Talker: 5 trin
En talende UV-indeks-måleenhed, der bruger VEML6075-sensoren og den lille Buddy Talker: 5 trin

Video: En talende UV-indeks-måleenhed, der bruger VEML6075-sensoren og den lille Buddy Talker: 5 trin

Video: En talende UV-indeks-måleenhed, der bruger VEML6075-sensoren og den lille Buddy Talker: 5 trin
Video: Подробный обзор Garmin Venu 2 Sq (Music) 2024, November
Anonim
En talende UV-indeks-måleenhed, der bruger VEML6075-sensoren og den lille Buddy Talker
En talende UV-indeks-måleenhed, der bruger VEML6075-sensoren og den lille Buddy Talker
En talende UV-indeks-måleenhed, der bruger VEML6075-sensoren og den lille Buddy Talker
En talende UV-indeks-måleenhed, der bruger VEML6075-sensoren og den lille Buddy Talker
En talende UV-indeks-måleenhed, der bruger VEML6075-sensoren og den lille Buddy Talker
En talende UV-indeks-måleenhed, der bruger VEML6075-sensoren og den lille Buddy Talker

Somre kommer! Solen skinner, hvilket er fantastisk.

Men efterhånden som ultraviolet (UV) stråling bliver mere intens, får folk som mig fregner, små brune øer, der svømmer i et hav af rød, solbrændt, kløende hud.

At kunne have realtidsinformation tilgængelig om intensiteten af UV-lyset, der når din hud, ville øge bevidstheden og reducere risikoen for hudskader. Så hvorfor ikke bygge en enkel enhed til dette formål? Jeg besluttede at bruge VEML6075 UV-sensoren, der gør det muligt at måle både UV-A og UV-B, og derved give mere præcise værdier end mange andre tilgængelige sensorer (se sidste trin for detaljer). Og UV-B er den farlige del. Men hvordan præsenterer vi de målte værdier? LED -bjælker og OLED -skærme er flotte, men ikke for praktiske i stærkt solskin. Verbal kommunikation er vores daglige måde til informationsoverførsel, men indtil videre er det svært at bruge det i mikrokontrollerprojekter. En ny mulighed er "Little Buddy Talker" (LBT), et lille breakout, der indeholder en chip med 254 ord og kan 'tale' dem via et hovedtelefonstik. Hvert ord er defineret af en adresse, dybest set et tal, og det er meget let at lade LBT tale i sætninger. For mere komplekse opgaver kan du bruge "Word100" Arduino -biblioteket til at styre LBT.

Enheden beskrevet i det følgende består af en VEML6075 sensor breakout, en Arduino og Little Buddy Talker, er meget let at konfigurere og kan drives af en USB -strømforsyning eller batterier afhængigt af den anvendte mikrokontroller.

Hvis du foretrækker at holde UV -indeksoplysninger private, skal du bruge hovedtelefoner. En lille batteridrevet højttaler kan være en god løsning til skoler, børnehaver eller andre offentlige steder. Jeg vil gerne nævne det igangværende Kickstarter-projekt for Big Buddy Talker, som indeholder over 1000 ord.

Og glem ikke at bære solcreme

Trin 1: Materialer påkrævet

VEML6075 UV A&B sensor breakout - Jeg fik min fra Aliexpress for omkring 10 US $

5V -> 3V niveauskifter - påkrævet, da VEML6075 har en 3V logik. De fås for et par $/€.

Little Buddy Talker - tilgængelig fra www.engineeringshock.com til 25 CA $

Arduino Uno -kompatibel mikrokontroller - Jeg brugte en MonkMakesDuino, men enhver version burde fungere

Brødbræt og jumperkabler

Højttaler og/eller hovedtelefoner - afhængigt af din applikation

USB power pack En solrig dag!

Trin 2: Montering og brug

For at få enheden i gang er ret ligetil:

  • placer din Arduino, niveauskifter, VEML6075 breakout og Little Buddy Talker på dit brødbræt.
  • Brug en af strømskinnerne på brødbrættet til 3V og en til 5V, tilslut dem med jorden, 3V og 5V -portene på din Arduino.
  • tilslut power -portene på niveauskifteren til de relevante strømskinner
  • tilslut to dataporte på 5V -siden af niveauskifteren til SDA (A4) og SDA (A5) porte på Arduino
  • tilslut de tilsvarende dataporte på 3V -siden med sensorens SCL- og SDA -porte
  • tilslut sensorens GND- og VCC -porte til jord og 3V
  • tilslut LBT til Arduino og strøm: LBT 5V til 5V, LBT GD til jord, LBT DI til Arduino 11, LBT SC til Arduino 13, LBT CS til Arduino 10

Installer de nødvendige softwarebiblioteker i IDE. "VEML7065" -biblioteket, jeg brugte, kan findes på 14core (se næste trin). "Wire" er påkrævet til I2C -kommunikationen med sensoren, "SPI" til kommunikationen med Little Buddy Talker via SPI.

Kør det medfølgende script (se næste trin).

UV Raw, UV-A, UV-B og UV indeksværdier og andre oplysninger vises på den serielle skærm.

Det målte UV -indeks "tales" af LBT. VEML6075 beregner UV -indekset meget præcist, men da "punkt" mangler i sæt af ord i LBT, er værdier angivet som: "niveau" - værdi (som heltal, "nul" til "tolv") - "høj"/"lav" (hvis resten er over eller under 0,5), hvilket burde være godt nok til de fleste applikationer.

Du kan ændre scriptet for at ændre, hvor ofte målinger foretages, og hvad der måles, og sendes til den serielle skærm. Med lidt programmering kan du endda definere tærskelniveauer for en "advarsel" (LBT: 148/0x94), "alarm" (LBT: 143/0x8f) eller "alarm" (LBT: 142/0x8e).

For at måle det maksimale UV -niveau skal sensoren rettes direkte til solen

Trin 3: Scriptet

I vid udstrækning er manuskriptet en samling af andres arbejde, jeg gerne vil takke.

Jeg brugte VEML6075-scriptet hentet fra 14core, https://www.14core.com/wiring-the-veml6075-ultraviolet-a-ultraviolet-b-light-sensor/, hvor du også kan downloade det nødvendige VEML6075-bibliotek.

En anden mulighed ville være script og bibliotek af schizobovine:

Mit manuskript tager som udgangspunkt en måling, foretager lidt tolkning og fortæller den lille kammerat, hvilke ord der skal tales. Da hvert af de 254 ord på LBT har et indeksnummer, f.eks. 209 eller 0xd1 for "niveau", skal du bare sende disse numre. Med hensyn til UV -indeksværdierne (0 til 12) brugte jeg funktionen 'kort' til at 'oversætte' værdierne til ordene "nul" (54, 0x 36) op til "tolv" (66, 0x42).

Som tidligere nævnt er en UV -indeksværdi som 4,3 givet som "fire lav" og 5,7 som "fem høj".

Hvis du kan lide at optimere scriptet, skal du kigge på den vedhæftede liste med ord i LBT.

Trin 4: Outlook

Med en lille ekstra indsats burde den være i stand til at putte alle brikkerne i en lille kasse, der gør det muligt at måle UV -indekset, uanset hvor du går: mens du står på ski, trekking, cykler, holder en picnic eller på stranden.

En anden mulighed ville være at placere sensoren på en hat eller kasket og placere kassen med elektronikken andre steder.

Eller for at bygge et script, der estimerer den kumulative UV-dosis, du har modtaget, og fortæller dig, hvornår du skal afsted til skyggen.

Men glem aldrig: Brug solcreme !!!

Trin 5: Links og yderligere oplysninger

Nedenfor finder du links til lignende projekter og yderligere information om emnet:

DIY UV-måler med Arduino og en Nokia 5110-skærm-https://www.instructables.com/id/DIY-UV-Meter-With…-er en meget god instruktion ved hjælp af flere hverdagskomponenter og giver også en masse baggrundsinformation.

Sommeren kommer! Lad os lave en bærbar UV-detektor-https://www.instructables.com/id/Summer-Is-Coming-…-beskriver en dejlig mobil løsning i en æske med en LED-bjælke som indikator. Det er baseret på Seed Grove -platformen ved hjælp af et breakout med en SI1145 lyssensor. Denne sensor måler faktisk ikke UV, men beregner UV -indekset ud fra synlige og IR -lysintensiteter.

Et andet projekt, der bruger et SI1145 -udbrud, findes på Adafruit - https://learn.adafruit.com/adafruit-si1145-breakou… - der tilbyder den sædvanlige komplette Adafruit -løsning. De har endda en "Flora" af sensorversionen, du kan rette på klud.

Adafruit (og andre) tilbyder også breakouts til VEML6070 -sensoren. Denne sensor måler faktisk UV, men giver dig præcise måleværdier, men ikke et let at fortolke UV -indeks.

Mange generelle oplysninger findes på EPA Sunsafety -webstedet, f.eks. på:

Databladet til VEML6075 kan findes her:

Og jeg vil anbefale at tage et kig på det følgende applikationsark med en masse baggrundsinformation og hvorfra jeg havde taget spektrabillederne:

Anbefalede: