Sisällysluettelo:

Valon voimakkuuden laskenta BH1715: n ja Arduino Nanon avulla: 5 vaihetta
Valon voimakkuuden laskenta BH1715: n ja Arduino Nanon avulla: 5 vaihetta

Video: Valon voimakkuuden laskenta BH1715: n ja Arduino Nanon avulla: 5 vaihetta

Video: Valon voimakkuuden laskenta BH1715: n ja Arduino Nanon avulla: 5 vaihetta
Video: Пакет объемных световых эффектов - Blender 2024, Heinäkuu
Anonim
Image
Image

Eilen työskentelimme LCD -näyttöjen parissa, ja kun käsittelimme niitä, ymmärsimme valon voimakkuuden laskennan tärkeyden. Valon voimakkuus ei ole tärkeä vain tämän maailman fyysisellä alueella, vaan sillä on hyvin sanottu rooli myös biologisella alueella. Valon voimakkuuden tarkalla arvioinnilla on keskeinen rooli ekosysteemissämme, kasvien kasvussa jne. Joten tätä tarkoitusta varten tutkimme tätä anturia BH1715, joka on 16-bittinen sarjalähtötyyppinen ympäristön valoanturi.

Tässä opetusohjelmassa aiomme esitellä BH1715: n työskentelyn Arduino Nanon kanssa.

Laitteisto, jota tarvitset tähän tarkoitukseen, on seuraava:

1. BH1715 - Ympäristön valoanturi

2. Arduino nano

3. I2C -kaapeli

4. I2C -kilpi Arduino Nanolle

Vaihe 1: BH1715 -yleiskatsaus:

Mitä tarvitset..!!
Mitä tarvitset..!!

Ensinnäkin haluamme tutustua BH1715 -anturimoduulin perusominaisuuksiin ja tiedonsiirtoprotokollaan, jolla se toimii.

BH1715 on digitaalinen ympäristön valoanturi, jossa on I²C -väyläliitäntä. BH1715: tä käytetään yleisesti ympäristön valotietojen hankkimiseen nestekidenäytön ja näppäimistön taustavalon säätämiseksi mobiililaitteille. Tämä laite tarjoaa 16-bittisen resoluution ja säädettävän mittausalueen, joka mahdollistaa havaitsemisen 0,23-100 000 luksia.

Viestintäprotokolla, jolla anturi toimii, on I2C. I2C tarkoittaa integroitua piiriä. Se on viestintäprotokolla, jossa tiedonsiirto tapahtuu SDA- (sarjatiedot) ja SCL (sarjakello) -linjojen kautta. Se mahdollistaa useiden laitteiden yhdistämisen samanaikaisesti. Se on yksi yksinkertaisimmista ja tehokkaimmista viestintäprotokollista.

Vaihe 2: Mitä tarvitset..

Mitä tarvitset..!!
Mitä tarvitset..!!
Mitä tarvitset..!!
Mitä tarvitset..!!
Mitä tarvitset..!!
Mitä tarvitset..!!

Tavoitteemme saavuttamiseen tarvittavat materiaalit sisältävät seuraavat laitteistokomponentit:

1. BH1715 - Ympäristön valoanturi

2. Arduino Nano

3. I2C -kaapeli

4. I2C Shield Arduino nanolle

Vaihe 3: Laitteiston kytkentä:

Laitteiston kytkentä
Laitteiston kytkentä
Laitteiston kytkentä
Laitteiston kytkentä

Laitteiston liitäntäosa selittää periaatteessa anturin ja vadelmapi: n väliset tarvittavat johdotusliitännät. Oikeiden liitosten varmistaminen on perustarve, kun työskentelet minkä tahansa järjestelmän kanssa halutun lähdön saavuttamiseksi. Tarvittavat liitännät ovat siis seuraavat:

BH1715 toimii I2C: n yli. Tässä on esimerkki kytkentäkaaviosta, joka osoittaa, miten anturin jokainen liitäntä kytketään.

Valmis levy on konfiguroitu I2C-rajapintaa varten, joten suosittelemme käyttämään tätä kytkentää, jos olet muuten agnostikko. Tarvitset vain neljä johtoa!

Tarvitaan vain neljä liitäntää Vcc, Gnd, SCL ja SDA, ja ne on kytketty I2C -kaapelin avulla.

Nämä yhteydet on esitetty yllä olevissa kuvissa.

Vaihe 4: Valon voimakkuuden mittaus Arduino -koodi:

Valon voimakkuuden mittaus Arduino -koodi
Valon voimakkuuden mittaus Arduino -koodi
Valon voimakkuuden mittaus Arduino -koodi
Valon voimakkuuden mittaus Arduino -koodi

Aloitetaan nyt Arduino -koodilla.

Kun käytät anturimoduulia Arduinon kanssa, sisällytämme Wire.h -kirjaston. "Wire" -kirjasto sisältää toiminnot, jotka helpottavat i2c -tiedonsiirtoa anturin ja Arduino -kortin välillä.

Koko Arduino -koodi on alla käyttäjän mukavuuden vuoksi:

#sisältää

// BH1715 I2C -osoite on 0x23 (35) #define Addr 0x23 void setup () {// Alusta I2C -yhteys MASTER Wire.begin (); // Alusta sarjaliikenne, aseta baudinopeus = 9600 Serial.begin (9600); // Käynnistä I2C -lähetys Wire.beginTransmission (Addr); // Lähetä virta päälle -komento Wire.write (0x01); // Pysäytä I2C -lähetys Wire.endTransmission (); // Käynnistä I2C -lähetys Wire.beginTransmission (Addr); // Lähetä jatkuvan mittauksen komento Wire.write (0x10); // Pysäytä I2C -lähetys Wire.endTransmission (); viive (300); } void loop () {unsigned int data [2]; // Pyydä 2 tavua dataa Wire.requestFrom (Addr, 2); // Lue 2 tavua dataa // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); } viive (300); // muuntaa data float luminance = ((data [0] * 256) + data [1]) /1.20; // Tulostustiedot sarjamonitorille Serial.print ("Ympäristön valon kirkkaus:"); Sarjajälki (luminanssi); Serial.println ("lux"); }

Koodin seuraava osa käynnistää i2c- ja sarjaliikenteen Wire.begin () - ja Serial.begin () -toimintojen avulla.

// Alusta I2C -viestintä MASTERiksi

Wire.begin (); // Alusta sarjaliikenne, aseta baudinopeus = 9600 Serial.begin (9600); // Käynnistä I2C -lähetys Wire.beginTransmission (Addr); // Lähetä virta päälle -komento Wire.write (0x01); // Pysäytä I2C -lähetys Wire.endTransmission (); // Käynnistä I2C -lähetys Wire.beginTransmission (Addr); // Lähetä jatkuvan mittauksen komento Wire.write (0x10); // Pysäytä I2C -lähetys Wire.endTransmission (); viive (300);

Valon voimakkuus mitataan koodin seuraavassa osassa.

allekirjoittamaton int -data [2];

// Pyydä 2 tavua dataa Wire.requestFrom (Addr, 2); // Lue 2 tavua dataa // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); } viive (300); // muuntaa data float luminance = ((data [0] * 256) + data [1]) /1.20; // Tulostustiedot sarjamonitorille Serial.print ("Ympäristön valon kirkkaus:"); Sarjajälki (luminanssi); Serial.println ("lux");

Sinun tarvitsee vain polttaa koodi arduinossa ja tarkistaa lukemat sarjaportista. Lähtö näkyy yllä olevassa kuvassa myös viitteenä.

Vaihe 5: Sovellukset:

Sovellukset
Sovellukset

BH1715 on digitaalilähtöinen ympäristön valoanturi, joka voidaan sisällyttää matkapuhelimeen, LCD -televisioon, NOTE PC: hen jne. Sitä voidaan käyttää myös kannettavassa pelikoneessa, digitaalikamerassa, digitaalisessa videokamerassa, PDA: ssa, LCD -näytössä ja monissa muissa laitteissa, jotka vaativat tehokkaat valon tunnistussovellukset.

Suositeltava: