Բովանդակություն:

Arduino Nano - TSL45315 Ambient Light Sensor Tutorial: 4 քայլ
Arduino Nano - TSL45315 Ambient Light Sensor Tutorial: 4 քայլ

Video: Arduino Nano - TSL45315 Ambient Light Sensor Tutorial: 4 քայլ

Video: Arduino Nano - TSL45315 Ambient Light Sensor Tutorial: 4 քայլ
Video: Arduino Nano - TSL45315 Ambient Light Sensor Tutorial 2024, Հունիսի
Anonim
Image
Image

TSL45315- ը շրջապատող լուսային թվային տվիչ է: Այն մոտեցնում է մարդու աչքի արձագանքը լուսավորության տարբեր պայմաններում: Սարքերն ունեն երեք ընտրելի ինտեգրման ժամանակ և ապահովում են ուղիղ 16-բիթանոց լյուքս ելք I2C ավտոբուսի միջերեսի միջոցով: Սարքը պարունակում է ֆոտոդիոդ զանգված, անալոգային-թվային փոխարկիչ (ADC), ազդանշանի մշակման սխեմա, լյուքս հաշվարկման տրամաբանություն և I2C սերիական ինտերֆեյս մեկ CMOS ինտեգրալ սխեմայի վրա `լյուքս տվյալներ ապահովելու համար: Ահա դրա ցուցադրումը arduino nano- ով:

Քայլ 1: Այն, ինչ ձեզ հարկավոր է..

Այն, ինչ ձեզ պետք է.. !!
Այն, ինչ ձեզ պետք է.. !!

1. Արդուինո Նանո

2. TSL45315

3. I²C մալուխ

4. I²C վահան Arduino Nano- ի համար

Քայլ 2: Միացում

Միացում
Միացում
Միացում
Միացում
Միացում
Միացում
Միացում
Միացում

Վերցրեք I2C վահան Arduino Nano- ի համար և նրբորեն մղեք այն Նանոյի կապանքների վրա:

Այնուհետև I2C մալուխի մի ծայրը միացրեք TSL45315 սենսորին, իսկ մյուս ծայրը ՝ I2C վահանին:

Կապերը ցուցադրվում են վերևի նկարում:

Քայլ 3: Կոդ

Կոդ
Կոդ

TSL45315- ի Arduino ծածկագիրը կարելի է ներբեռնել մեր GitHub շտեմարանից `Dcube Store- ից:

Ահա նույնի հղումը.

github.com/DcubeTechVentures/TSL45315…

Մենք ներառում ենք Wire.h գրադարանը ՝ սենսորի I2c հաղորդակցումը Arduino տախտակի հետ հեշտացնելու համար:

Այստեղից կարող եք նաև պատճենել կոդը, այն տրվում է հետևյալ կերպ.

// Տարածված է ազատ կամքի լիցենզիայով:

// Օգտագործեք այն ինչպես ցանկանում եք, շահույթ կամ անվճար, պայմանով, որ այն տեղավորվում է դրա հետ կապված աշխատանքների լիցենզիաներում:

// TSL45315

// Այս կոդը նախատեսված է աշխատելու TSl45315_I2CS I2C մինի մոդուլի հետ, որը հասանելի է Dcube Store- ում:

#ներառում

// TSL45315 I2C հասցեն ՝ 0x29 (41)

#սահմանեք Addr 0x29

դատարկ կարգավորում ()

{

// Նախնականացնել I2C հաղորդակցությունը որպես ՎԱՐՊԵՏ

Wire.begin ();

// Նախնականացնել սերիական հաղորդակցությունը, սահմանել բաուդ արագություն = 9600

Serial.begin (9600);

// Սկսել I2C փոխանցումը

Wire.beginTransmission (Addr);

// Ընտրեք հսկիչ գրանցամատյան

Wire.write (0x80);

// Նորմալ շահագործում

Wire.write (0x03);

// Դադարեցնել I2C փոխանցումը

Wire.endTransmission ();

// Սկսել I2C փոխանցումը

Wire.beginTransmission (Addr);

// Ընտրեք կազմաձևման գրանցամատյան

Wire.write (0x81);

// Բազմապատկիչ 1x, երանգ ՝ 400ms

Wire.write (0x00);

// Դադարեցնել I2C փոխանցումը

Wire.endTransmission ();

ուշացում (300);

}

դատարկ շրջան ()

{

անստորագիր int տվյալներ [2];

// Սկսել I2C փոխանցումը

Wire.beginTransmission (Addr);

// Ընտրեք տվյալների գրանցամատյան

Wire.write (0x84);

// Դադարեցնել I2C փոխանցումը

Wire.endTransmission ();

// Պահանջել 2 բայթ տվյալներ

Մետաղալար. Խնդրում ենք (Addr, 2);

// Կարդացեք 2 բայթ տվյալներ

// պայծառություն lsb, պայծառություն msb

եթե (Wire.available () == 2)

{

տվյալներ [0] = Wire.read ();

տվյալներ [1] = Wire.read ();

}

// Փոխարկել տվյալները

բոց լուսավորություն = տվյալներ [1] * 256 + տվյալներ [0];

// Ելքային տվյալները սերիական մոնիտորին

Serial.print ("Շրջապատի լույսի լուսավորություն.");

Serial.print (լուսավորություն);

Serial.println («լյուքս»);

ուշացում (300);

}

Քայլ 4: Դիմումներ

Շրջապատի լույսի տվիչի լայն դինամիկ տիրույթը այն հատկապես օգտակար է դարձնում բացօթյա ծրագրերում, որտեղ այն ենթարկվում է արևի ուղիղ ճառագայթների: Սարքն իդեալական է փողոցային լույսերի և անվտանգության, գովազդային վահանակների և ավտոմեքենայի լուսավորության ավտոմատ կառավարման համար: TSL45315 սարքերը կարող են օգտագործվել նաև պինդ վիճակում և ընդհանուր լուսավորության մեջ `ավտոմատ կառավարման և ցերեկային հավաքման համար` էներգիան առավելագույնս խնայելու համար: Այլ ծրագրեր ներառում են էկրանի լուսավորության վերահսկում ՝ մարտկոցի կյանքը երկարացնելու և բջջային հեռախոսներում, պլանշետներում և նոթատետրերում տեսանելիությունը օպտիմալացնելու համար:

Խորհուրդ ենք տալիս: