INHOUDSOPGAWE:
- Stap 1: BH1715 Oorsig:
- Stap 2: Wat u benodig..
- Stap 3: Hardeware -aansluiting:
- Stap 4: Deeltjiekode vir ligte intensiteitsmeting:
- Stap 5: Aansoeke:
Video: Ligte intensiteitsberekening met behulp van BH1715 en partikelfoton: 5 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:25
Gister het ons aan LCD -skerms gewerk, en terwyl ons daaroor werk, het ons besef hoe belangrik dit is om ligintensiteit te bereken. Ligintensiteit is nie net belangrik in die fisiese domein van hierdie wêreld nie, maar dit speel ook 'n welbekende rol in die biologiese domein. Akkurate skatting van ligintensiteit speel 'n deurslaggewende rol in ons ekosisteem, in die groei van plante, ens. Daarom het ons hierdie sensor BH1715 bestudeer, wat 'n 16-bis seriële uitset tipe omgevingsligsensor is.
In hierdie handleiding gaan ons die werking van BH1715 met Particle Photon demonstreer. Particle Photon is die bord wat eintlik die beheer van enige toestel via die internet kan vergemaklik.
Die hardeware wat u vir hierdie doel benodig, is soos volg:
1. BH1715 - Ambient Light Sensor
2. Deeltjie Photon
3. I2C -kabel
4. I2C -skild vir deeltjiesfoton
Stap 1: BH1715 Oorsig:
In die eerste plek wil ons u vertroud maak met die basiese kenmerke van die sensormodule BH1715 en die kommunikasieprotokol waarop dit werk.
BH1715 is 'n digitale omgevingsligtsensor met 'n I²C -bus -koppelvlak. Die BH1715 word algemeen gebruik om die omgevingsligdata te verkry vir die aanpassing van die krag van die LCD- en toetsbordblok vir mobiele toestelle. Hierdie toestel bied 'n 16-bis-resolusie en 'n verstelbare meetbereik, wat opsporing van 0,23 tot 100 000 lux moontlik maak.
Die kommunikasieprotokol waarop die sensor werk, is I2C. I2C staan vir die inter-geïntegreerde stroombaan. Dit is 'n kommunikasieprotokol waarin die kommunikasie plaasvind deur middel van SDA (seriële data) en SCL (seriële klok) lyne. Dit maak dit moontlik om verskeie toestelle gelyktydig te verbind. Dit is een van die eenvoudigste en doeltreffendste kommunikasieprotokolle.
Stap 2: Wat u benodig..
Die materiaal wat ons nodig het om ons doel te bereik, bevat die volgende hardeware -komponente:
1. BH1715 - Ambient Light Sensor
2. Deeltjie Photon
3. I2C -kabel
4. I2C -skild vir partikelfoton
Stap 3: Hardeware -aansluiting:
Die hardeware -aansluitingsgedeelte verduidelik basies die bedradingverbindings wat tussen die sensor en die framboospi benodig word. Die korrekte noodsaaklikheid is om korrekte verbindings te verseker terwyl u aan 'n stelsel werk vir die gewenste uitset. Die vereiste verbindings is dus soos volg:
Die BH1715 werk oor I2C. Hier is die voorbeeld -bedradingsdiagram wat demonstreer hoe om elke koppelvlak van die sensor aan te sluit.
Uit die boks is die bord gekonfigureer vir 'n I2C-koppelvlak, daarom beveel ons aan dat u hierdie aansluiting gebruik as u anders agnosties is. Al wat u nodig het, is vier drade!
Slegs vier verbindings is nodig Vcc-, Gnd-, SCL- en SDA -penne en dit word met behulp van I2C -kabel verbind.
Hierdie verbindings word getoon in die foto's hierbo.
Stap 4: Deeltjiekode vir ligte intensiteitsmeting:
Kom ons begin nou met die deeltjiekode.
Terwyl ons die sensormodule met die arduino gebruik, bevat ons die biblioteek application.h en spark_wiring_i2c.h. "application.h" en spark_wiring_i2c.h biblioteek bevat die funksies wat die i2c kommunikasie tussen die sensor en die deeltjie vergemaklik.
Die volledige deeltjiekode word hieronder gegee vir die gemak van die gebruiker:
#insluit
#insluit
// BH1715 I2C adres is 0x23 (35)
#definieer Addr 0x23
int luminansie = 0;
leemte opstelling ()
{
// Stel veranderlike
Particle.variable ("i2cdevice", "BH1715");
Deeltjie.veranderlik ("luminansie", luminansie);
// Initialiseer I2C -kommunikasie as MASTER
Wire.begin ();
// Initialiseer seriële kommunikasie, stel baud rate = 9600 in
Serial.begin (9600);
// Begin I2C -oordrag
Wire.beginTransmission (Addr);
// Stuur krag op bevel
Wire.write (0x01);
// Stop I2C -oordrag
Wire.endTransmission ();
// Begin I2C -oordrag
Wire.beginTransmission (Addr);
// Stuur opdrag vir deurlopende meting
Draad.skryf (0x10);
// Stop I2C -oordrag
Wire.endTransmission ();
vertraging (300);
}
leemte lus ()
{
ongetekende int data [2];
// Versoek 2 grepe data
Wire.requestFrom (Addr, 2);
// Lees 2 grepe data
// ALS msb, ALS lsb
as (Wire.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
vertraging (300);
// Skakel die data om
luminansie = ((data [0] & 0xFF) * 256 + (data [1] & 0xFF)) / 1,20;
// Uitset data na paneelbord
Particle.publish ("Ambient Light Luminance:", String (luminance));
}
Stap 5: Aansoeke:
BH1715 is 'n digitale uitsetsensor wat omring kan word in 'n selfoon, 'n LCD -TV, 'n rekenaar, ens. doeltreffende ligwaarnemingstoepassings.
Aanbeveel:
Magnetiese veldmeting met behulp van HMC5883 en partikelfoton: 4 stappe
Magnetiese veldmeting met behulp van HMC5883 en Particle Photon: Die HMC5883 is 'n digitale kompas wat ontwerp is vir magnetiese waarneming met lae veld. Hierdie toestel het 'n wye magnetiese veldbereik van +/- 8 Oe en 'n uitsetsnelheid van 160 Hz. Die HMC5883 -sensor bevat outomatiese bestuurders vir ontkoppeling van bandjies, kansellering van die offset en 'n
Ligte intensiteitsberekening met behulp van BH1715 en Arduino Nano: 5 stappe
Ligte intensiteitsberekening met behulp van BH1715 en Arduino Nano: Gister was ons besig met LCD -skerms, en terwyl ons daaroor werk, besef ons die belangrikheid van ligintensiteitsberekening. Ligintensiteit is nie net belangrik in die fisiese domein van hierdie wêreld nie, maar dit speel ook 'n welbekende rol in die biologie
Meting van versnelling met behulp van BMA250 en partikelfoton: 4 stappe
Versnellingsmeting met behulp van BMA250 en Particle Photon: BMA250 is 'n klein, dun, ultra-lae, 3-as versnellingsmeter met 'n hoë resolusie (13-bis) meting tot ± 16 g. Digitale uitsetdata word geformateer as 'n 16-bis tweeling-aanvulling en is toeganklik via die I2C digitale koppelvlak. Dit meet die statiese
Meting van temperatuur en humiditeit met behulp van HDC1000 en partikelfoton: 4 stappe
Meting van temperatuur en humiditeit met behulp van HDC1000 en deeltjiefoton: Die HDC1000 is 'n digitale humiditeitsensor met 'n geïntegreerde temperatuursensor wat uitstekende meetnauwkeurigheid bied by baie lae krag. Die toestel meet humiditeit op grond van 'n nuwe kapasitiewe sensor. Die humiditeits- en temperatuursensors is
Meting van temperatuur met behulp van LM75BIMM en partikelfoton: 4 stappe
Meting van temperatuur met behulp van LM75BIMM en deeltjiefoton: LM75BIMM is 'n digitale temperatuursensor met 'n termiese waghond en het 'n tweedraads koppelvlak wat die werking tot 400 kHz ondersteun. Dit het 'n buitentemperatuuruitset met 'n programmeerbare limiet en histerie. In hierdie tutoriaal het die koppelvlak