Indholdsfortegnelse:
- Trin 1: BH1715 Oversigt:
- Trin 2: Hvad du har brug for..
- Trin 3: Hardware -tilslutning:
- Trin 4: Lysintensitetsmåling Arduino -kode:
- Trin 5: Ansøgninger:
Video: Beregning af lysintensitet ved hjælp af BH1715 og Arduino Nano: 5 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
I går arbejdede vi på LCD -skærme, og mens vi arbejdede med dem, indså vi vigtigheden af lysintensitetsberegning. Lysintensitet er ikke kun vigtig i det fysiske område i denne verden, men det har også sin veltalte rolle i det biologiske område. Nøjagtig estimering af lysintensitet spiller en afgørende rolle i vores økosystem, i væksten af planter osv. Så for at tjene dette formål undersøgte vi denne sensor BH1715, som er en 16-bit seriel udgangstype omgivende lyssensor.
I denne vejledning vil vi demonstrere, hvordan BH1715 fungerer med Arduino Nano.
Hardware, som du får brug for til dette formål, er som følger:
1. BH1715 - Sensor til omgivende lys
2. Arduino nano
3. I2C -kabel
4. I2C -skjold til Arduino Nano
Trin 1: BH1715 Oversigt:
Først og fremmest vil vi gerne gøre dig bekendt med de grundlæggende funktioner i sensormodulet, der er BH1715, og kommunikationsprotokollen, som det fungerer på.
BH1715 er en digital omgivelsessensor med en I²C busgrænseflade. BH1715 bruges almindeligvis til at indhente omgivelseslysdata til justering af LCD- og tastaturets baggrundsbelysning til mobile enheder. Denne enhed tilbyder en 16-bit opløsning og et justerbart måleområde, der tillader detektion fra.23 til 100.000 lux.
Kommunikationsprotokollen, som sensoren fungerer på, er I2C. I2C står for det interintegrerede kredsløb. Det er en kommunikationsprotokol, hvor kommunikationen finder sted gennem SDA (serielle data) og SCL (serielle ur) linjer. Det tillader tilslutning af flere enheder på samme tid. Det er en af de enkleste og mest effektive kommunikationsprotokoller.
Trin 2: Hvad du har brug for..
De materialer, vi har brug for for at nå vores mål, omfatter følgende hardwarekomponenter:
1. BH1715 - Sensor til omgivende lys
2. Arduino Nano
3. I2C -kabel
4. I2C Shield til Arduino nano
Trin 3: Hardware -tilslutning:
Hardware -tilslutningssektionen forklarer grundlæggende de ledningsforbindelser, der kræves mellem sensoren og hindbær pi. At sikre korrekte forbindelser er den grundlæggende nødvendighed, mens du arbejder på et hvilket som helst system til den ønskede output. Så de nødvendige forbindelser er som følger:
BH1715 fungerer over I2C. Her er eksemplet på ledningsdiagram, der viser, hvordan du tilslutter hver grænseflade på sensoren.
Out-of-the-box er tavlen konfigureret til en I2C-grænseflade, som sådan anbefaler vi at bruge denne tilslutning, hvis du ellers er agnostiker. Alt du behøver er fire ledninger!
Der kræves kun fire tilslutninger Vcc, Gnd, SCL og SDA ben, og disse er forbundet ved hjælp af I2C kabel.
Disse forbindelser er vist på billederne ovenfor.
Trin 4: Lysintensitetsmåling Arduino -kode:
Lad os starte med Arduino -koden nu.
Mens vi bruger sensormodulet med Arduino, inkluderer vi Wire.h -biblioteket. "Wire" -biblioteket indeholder de funktioner, der letter i2c -kommunikationen mellem sensoren og Arduino -kortet.
Hele Arduino -koden er angivet nedenfor for brugerens bekvemmelighed:
#omfatte
// BH1715 I2C -adressen er 0x23 (35) #define Addr 0x23 void setup () {// Initialiser I2C -kommunikation som MASTER Wire.begin (); // Initialiser seriel kommunikation, indstil baudhastighed = 9600 Serial.begin (9600); // Start I2C Transmission Wire.beginTransmission (Addr); // Send strøm til kommandoen Wire.write (0x01); // Stop I2C Transmission Wire.endTransmission (); // Start I2C Transmission Wire.beginTransmission (Addr); // Send kommando for kontinuerlig måling Wire.write (0x10); // Stop I2C Transmission Wire.endTransmission (); forsinkelse (300); } void loop () {unsigned int data [2]; // Anmod om 2 byte data Wire.requestFrom (Addr, 2); // Læs 2 byte data // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); } forsinkelse (300); // konverter data float luminans = ((data [0] * 256) + data [1]) /1,20; // Outputdata til seriel skærm Serial.print ("Ambient Light Luminance:"); Seriel.print (luminans); Serial.println ("lux"); }
Den følgende del af koden starter i2c -kommunikationen og den serielle kommunikation ved hjælp af funktionen Wire.begin () og Serial.begin ().
// Initialiser I2C -kommunikation som MASTER
Wire.begin (); // Initialiser seriel kommunikation, indstil baudhastighed = 9600 Serial.begin (9600); // Start I2C Transmission Wire.beginTransmission (Addr); // Send strøm til kommandoen Wire.write (0x01); // Stop I2C Transmission Wire.endTransmission (); // Start I2C Transmission Wire.beginTransmission (Addr); // Send kommando for kontinuerlig måling Wire.write (0x10); // Stop I2C Transmission Wire.endTransmission (); forsinkelse (300);
Lysintensitet måles i det følgende afsnit af koden.
usignerede int -data [2];
// Anmod om 2 byte data Wire.requestFrom (Addr, 2); // Læs 2 byte data // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); } forsinkelse (300); // konverter dataflyde luminans = ((data [0] * 256) + data [1]) /1,20; // Outputdata til seriel skærm Serial.print ("Ambient Light Luminance:"); Seriel.print (luminans); Serial.println ("lux");
Alt du skal gøre er at brænde koden i arduino og kontrollere dine aflæsninger på den serielle port. Outputtet vises også på billedet ovenfor til din reference.
Trin 5: Ansøgninger:
BH1715 er en digital udgangssensor til omgivende lys, som kan integreres i mobiltelefon, LCD -tv, NOTE PC osv. Det kan også bruges i bærbar spillemaskine, digitalkamera, digitalt videokamera, PDA, LCD -display og mange flere enheder, der kræver effektive lysfølende applikationer.
Anbefalede:
DIY -- Sådan laver du en edderkoprobot, der kan kontrolleres ved hjælp af smartphone ved hjælp af Arduino Uno: 6 trin
DIY || Sådan laver du en edderkoprobot, der kan styres ved hjælp af smartphone Brug af Arduino Uno: Mens du laver en edderkoprobot, kan man lære så mange ting om robotik. Ligesom at lave robotter er underholdende såvel som udfordrende. I denne video vil vi vise dig, hvordan du laver en Spider -robot, som vi kan betjene ved hjælp af vores smartphone (Androi
Måling af lysintensitet ved hjælp af BH1715 og Raspberry Pi: 5 trin
Måling af lysintensitet ved hjælp af BH1715 og Raspberry Pi: I går arbejdede vi på LCD -skærme, og mens vi arbejdede over dem, indså vi vigtigheden af lysintensitetsberegning. Lysintensitet er ikke kun vigtig i det fysiske område i denne verden, men det har sin veltalte rolle i biologien
Beregning af lysintensitet ved hjælp af BH1715 og partikelfoton: 5 trin
Lysintensitetsberegning ved hjælp af BH1715 og Particle Photon: I går arbejdede vi på LCD -skærme, og mens vi arbejdede over dem, indså vi vigtigheden af lysintensitetsberegning. Lysintensitet er ikke kun vigtig i det fysiske område i denne verden, men det har sin veltalte rolle i biologien
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter - Rc Helikopter - Rc -fly ved hjælp af Arduino: 5 trin (med billeder)
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter | Rc Helikopter | Rc -fly ved hjælp af Arduino: At betjene en Rc -bil | Quadcopter | Drone | RC -fly | RC -båd, vi har altid brug for en modtager og sender, antag at vi til RC QUADCOPTER har brug for en 6 -kanals sender og modtager, og den type TX og RX er for dyr, så vi laver en på vores
Lysintensitet Energibesparelse ved hjælp af fotoceller og termistorer: 6 trin
Lysintensitetsenergibesparelse ved hjælp af fotoceller og termistorer: Denne instruktør er designet til at lære dig at spare energi ved at ændre lysintensitet ved hjælp af fotoceller og termistorer. Vi viser dig, hvordan du konstruerer kredsløbet og koder Arduino ved hjælp af MATLAB