Kazalo:
- 1. korak: Pregled BH1715:
- Korak: Kaj potrebujete.. !
- 3. korak: Priključitev strojne opreme:
- 4. korak: Arduino koda za merjenje jakosti svetlobe:
- 5. korak: Aplikacije:
Video: Izračun jakosti svetlobe z uporabo BH1715 in Arduino Nano: 5 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
Včeraj smo delali na LCD zaslonih in med delom na njih smo spoznali pomen izračuna intenzivnosti svetlobe. Intenzivnost svetlobe ni pomembna le v fizični domeni tega sveta, ampak ima svojo dobro omenjeno vlogo tudi v biološki domeni. Natančna ocena jakosti svetlobe ima ključno vlogo v našem ekosistemu, pri rasti rastlin itd. Zato smo v ta namen preučili ta senzor BH1715, ki je 16-bitni senzor zunanje svetlobe serijskega izhoda.
V tej vadnici bomo prikazali delovanje BH1715 z Arduinom Nano.
Strojna oprema, ki jo boste potrebovali v ta namen, je naslednja:
1. BH1715 - Senzor svetlobe okolice
2. Arduino nano
3. Kabel I2C
4. I2C ščit za Arduino Nano
1. korak: Pregled BH1715:
Najprej vas želimo seznaniti z osnovnimi funkcijami senzorskega modula, ki je BH1715, in komunikacijskim protokolom, na katerem deluje.
BH1715 je digitalni senzor zunanje svetlobe z vmesnikom vodila I²C. BH1715 se običajno uporablja za pridobivanje podatkov o svetlobi v okolici za prilagajanje moči osvetlitve LCD in tipkovnice za mobilne naprave. Ta naprava ponuja 16-bitno ločljivost in nastavljivo območje merjenja, ki omogoča zaznavanje od 0,23 do 100 000 luksov.
Komunikacijski protokol, na katerem deluje senzor, je I2C. I2C pomeni vmesno vezje. To je komunikacijski protokol, v katerem komunikacija poteka prek linij SDA (serijski podatki) in SCL (serijska ura). Omogoča povezovanje več naprav hkrati. Je eden najpreprostejših in najučinkovitejših komunikacijskih protokolov.
Korak: Kaj potrebujete.. !
Materiali, ki jih potrebujemo za dosego našega cilja, vključujejo naslednje komponente strojne opreme:
1. BH1715 - Senzor svetlobe okolice
2. Arduino Nano
3. Kabel I2C
4. I2C ščit za Arduino nano
3. korak: Priključitev strojne opreme:
Oddelek za priključitev strojne opreme v bistvu razlaga potrebne povezave ožičenja med senzorjem in malinovim pi. Zagotavljanje pravilnih povezav je osnovna potreba pri delu na katerem koli sistemu za želeni izhod. Torej so potrebne povezave naslednje:
BH1715 bo deloval preko I2C. Tu je primer sheme ožičenja, ki prikazuje, kako povezati vsak vmesnik senzorja.
Plošča je že pripravljena za vmesnik I2C, zato priporočamo uporabo te povezave, če niste agnostični. Vse kar potrebujete so štiri žice!
Potrebne so le štiri povezave Vcc, Gnd, SCL in SDA, ki so povezane s kablom I2C.
Te povezave so prikazane na zgornjih slikah.
4. korak: Arduino koda za merjenje jakosti svetlobe:
Začnimo zdaj s kodo Arduino.
Med uporabo senzorskega modula z Arduinom vključujemo knjižnico Wire.h. Knjižnica "Wire" vsebuje funkcije, ki olajšajo komunikacijo i2c med senzorjem in ploščo Arduino.
Celotna koda Arduino je podana spodaj za udobje uporabnika:
#vključi
// Naslov I2C BH1715 je 0x23 (35) #define Addr 0x23 void setup () {// Inicializirajte komunikacijo I2C kot MASTER Wire.begin (); // Začetek serijske komunikacije, nastavljena hitrost prenosa = 9600 Serial.begin (9600); // Zaženite prenos I2C Wire.beginTransmission (Addr); // Pošlji ukaz za vklop Wire.write (0x01); // Ustavi I2C prenosno žico.endTransmission (); // Zaženite prenos I2C Wire.beginTransmission (Addr); // Pošlji ukaz za neprekinjeno merjenje Wire.write (0x10); // Ustavi I2C prenosno žico.endTransmission (); zamuda (300); } void loop () {unsigned int data [2]; // Zahtevaj 2 bajt podatkov Wire.requestFrom (Addr, 2); // Preberite 2 bajta podatkov // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); podatki [1] = Wire.read (); } zamuda (300); // pretvorimo podatkovno svetilnost = ((podatki [0] * 256) + podatki [1]) /1,20; // Izhodni podatki na serijski monitor Serial.print ("Svetlost ambientalne svetlobe:"); Serial.print (svetilnost); Serial.println ("lux"); }
Naslednji del kode sproži komunikacijo i2c in serijsko komunikacijo s pomočjo funkcij Wire.begin () in Serial.begin ().
// Inicializirajte komunikacijo I2C kot MASTER
Wire.begin (); // Začetek serijske komunikacije, nastavljena hitrost prenosa = 9600 Serial.begin (9600); // Zaženite prenos I2C Wire.beginTransmission (Addr); // Pošlji ukaz za vklop Wire.write (0x01); // Ustavi I2C prenosno žico.endTransmission (); // Zaženite prenos I2C Wire.beginTransmission (Addr); // Pošlji ukaz za neprekinjeno merjenje Wire.write (0x10); // Ustavi I2C prenosno žico.endTransmission (); zamuda (300);
Intenzivnost svetlobe se meri v naslednjem razdelku kode.
podpisani int podatki [2];
// Zahtevaj 2 bajt podatkov Wire.requestFrom (Addr, 2); // Preberite 2 bajta podatkov // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); podatki [1] = Wire.read (); } zamuda (300); // pretvorimo podatkovno svetilnost = ((podatki [0] * 256) + podatki [1]) /1,20; // Izhodni podatki na serijski monitor Serial.print ("Svetlost ambientalne svetlobe:"); Serial.print (svetilnost); Serial.println ("lux");
Vse kar morate storiti je, da kodo zapišete v arduino in preverite odčitke na serijskih vratih. Izhod je prikazan tudi na zgornji sliki za vašo referenco.
5. korak: Aplikacije:
BH1715 je digitalni izhodni senzor zunanje svetlobe, ki ga je mogoče vgraditi v mobilni telefon, LCD televizor, računalnik z opombami itd. Uporablja se lahko tudi v prenosnem igralnem stroju, digitalnem fotoaparatu, digitalni video kameri, dlančniku, LCD zaslonu in mnogih drugih napravah, ki zahtevajo učinkovite aplikacije zaznavanja svetlobe.
Priporočena:
Izračun vlažnosti, tlaka in temperature z uporabo BME280 in fotonskega vmesnika .: 6 korakov
Izračun vlažnosti, tlaka in temperature z uporabo BME280 in fotonskega vmesnika. Naletimo na različne projekte, ki zahtevajo spremljanje temperature, tlaka in vlažnosti. Tako se zavedamo, da imajo ti parametri dejansko bistveno vlogo pri oceni delovne učinkovitosti sistema pri različnih atmosferskih pogojih
Merjenje svetlobne jakosti z uporabo BH1715 in Raspberry Pi: 5 korakov
Merjenje svetlobne jakosti z uporabo BH1715 in Raspberry Pi: Včeraj smo delali na LCD zaslonih in med delovanjem nad njimi smo spoznali pomen izračuna intenzivnosti svetlobe. Intenzivnost svetlobe ni pomembna le v fizični domeni tega sveta, ampak ima svojo dobro navedeno vlogo v biologiji
Izračun jakosti svetlobe z uporabo BH1715 in fotona iz delcev: 5 korakov
Izračun svetlobne jakosti z uporabo BH1715 in fotona delcev: Včeraj smo delali na LCD zaslonih in med delom na njih smo spoznali pomen izračuna intenzivnosti svetlobe. Intenzivnost svetlobe ni pomembna le v fizični domeni tega sveta, ampak ima svojo dobro navedeno vlogo v biologiji
Merilnik jakosti svetlobe brez programiranja .: 7 korakov (s slikami)
Merilnik intenzivnosti svetlobe brez programiranja. Ta priročnik govori o izdelavi osnovnega merilnika jakosti svetlobe brez uporabe Arduina ali katerega koli drugega mikro krmilnika ali programiranja. Merilnik jakosti svetlobe prikazuje različne stopnje jakosti svetlobe z različnimi barvami LED. Rdeča LED
Varčevanje z energijo svetlobne jakosti z uporabo fotocelic in termistorjev: 6 korakov
Varčevanje z energijo svetlobne jakosti z uporabo fotocelic in termistorjev: Ta navodila so zasnovana tako, da vas naučijo varčevati z energijo s spreminjanjem jakosti svetlobe s fotocelicami in termistorji. Pokazali vam bomo, kako sestaviti vezje in kodirati Arduino z uporabo MATLAB -a