Агуулгын хүснэгт:

BH1715 ба Arduino Nano ашиглан гэрлийн эрчимийг тооцоолох: 5 алхам
BH1715 ба Arduino Nano ашиглан гэрлийн эрчимийг тооцоолох: 5 алхам

Видео: BH1715 ба Arduino Nano ашиглан гэрлийн эрчимийг тооцоолох: 5 алхам

Видео: BH1715 ба Arduino Nano ашиглан гэрлийн эрчимийг тооцоолох: 5 алхам
Видео: Контроллер автоматического пуска-останова с часами реального времени DS3231 2024, Арваннэгдүгээр
Anonim
Image
Image

Өчигдөр бид LCD дэлгэц дээр ажиллаж байсан бөгөөд тэдгээрийн дээр ажиллаж байхдаа гэрлийн эрч хүчийг тооцоолохын ач холбогдлыг ойлгосон. Гэрлийн эрч хүч нь энэ дэлхийн физик ертөнцөд чухал ач холбогдолтой төдийгүй биологийн салбарт ч бас сайн ярьдаг. Гэрлийн эрч хүчийг нарийвчлан тооцоолох нь манай экосистемд, ургамлын өсөлт хөгжилтөд чухал үүрэг гүйцэтгэдэг. Тиймээс энэ зорилгоор бид 16 битийн цуваа гаралтын төрлийн орчны гэрэл мэдрэгч болох BH1715 мэдрэгчийг судалсан.

Энэхүү гарын авлагад бид BH1715 -ийн Arduino Nano -тэй хэрхэн ажиллахыг харуулах болно.

Энэ зорилгоор танд хэрэгтэй тоног төхөөрөмж дараах байдалтай байна.

1. BH1715 - Орчны гэрэл мэдрэгч

2. Arduino нано

3. I2C кабель

4. Arduino Nano -д зориулсан I2C бамбай

Алхам 1: BH1715 тойм:

Чамд юу хэрэгтэй вэ..!!
Чамд юу хэрэгтэй вэ..!!

Юуны өмнө бид танд BH1715 мэдрэгч модулийн үндсэн шинж чанарууд болон түүн дээр ажилладаг холбооны протоколыг танилцуулахыг хүсч байна.

BH1715 бол I²C автобусны интерфэйстэй дижитал орчны гэрэл мэдрэгч юм. BH1715 нь хөдөлгөөнт төхөөрөмжүүдийн LCD болон товчлуурын арын гэрлийн хүчийг тохируулах орчны гэрлийн өгөгдлийг олж авахад ихэвчлэн ашиглагддаг. Энэхүү төхөөрөмж нь 16 битийн нарийвчлал, тохируулгатай хэмжих хязгаарыг санал болгодог.23-аас 100 мянган люкс хүртэл илрүүлэх боломжийг олгодог.

Мэдрэгчийн ажилладаг холбооны протокол нь I2C юм. I2C нь нэгдсэн хэлхээний товчлол юм. Энэ бол SDA (цуваа өгөгдөл) ба SCL (цуваа цаг) шугамаар дамжуулан харилцаа холбоо явагддаг харилцаа холбооны протокол юм. Энэ нь олон төхөөрөмжийг нэгэн зэрэг холбох боломжийг олгодог. Энэ бол хамгийн энгийн бөгөөд үр дүнтэй харилцааны протоколын нэг юм.

Алхам 2: Танд хэрэгтэй зүйл..

Чамд юу хэрэгтэй вэ..!!
Чамд юу хэрэгтэй вэ..!!
Чамд юу хэрэгтэй вэ..!!
Чамд юу хэрэгтэй вэ..!!
Чамд юу хэрэгтэй вэ..!!
Чамд юу хэрэгтэй вэ..!!

Зорилгодоо хүрэхийн тулд бидэнд шаардлагатай материалууд нь дараахь тоног төхөөрөмжийн бүрэлдэхүүн хэсгүүдийг агуулдаг.

1. BH1715 - Орчны гэрэл мэдрэгч

2. Ардуино Нано

3. I2C кабель

4. Arduino нано -д зориулсан I2C бамбай

Алхам 3: Тоног төхөөрөмжийн холболт:

Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт

Тоног төхөөрөмжийн холболтын хэсэг нь үндсэндээ мэдрэгч ба бөөрөлзгөнө pi хооронд шаардлагатай утас холболтыг тайлбарладаг. Аливаа систем дээр ажиллахад шаардлагатай гаралтын хувьд зөв холболтыг хангах нь хамгийн чухал зүйл юм. Тиймээс шаардлагатай холболтууд дараах байдалтай байна.

BH1715 нь I2C дээр ажиллах болно. Мэдрэгчийн интерфэйс бүрийг хэрхэн яаж холбохыг харуулсан утасны диаграмын жишээ энд байна.

Хайрцагнаас гадуурх самбар нь I2C интерфэйс дээр тохируулагдсан байдаг тул хэрэв та өөр ойлголтгүй бол энэ холболтыг ашиглахыг зөвлөж байна. Танд ердөө дөрвөн утас л хангалттай!

Vcc, Gnd, SCL, SDA зүүг зөвхөн дөрвөн холболт шаарддаг бөгөөд эдгээр нь I2C кабелийн тусламжтайгаар холбогддог.

Эдгээр холболтыг дээрх зурган дээр харуулав.

Алхам 4: Гэрлийн эрчимийг хэмжих Arduino код:

Гэрлийн эрчимийг хэмжих Arduino код
Гэрлийн эрчимийг хэмжих Arduino код
Гэрлийн эрчимийг хэмжих Arduino код
Гэрлийн эрчимийг хэмжих Arduino код

Одоо Arduino кодоор эхэлье.

Arduino -тай мэдрэгчийн модулийг ашиглахдаа бид Wire.h номын санг агуулдаг. "Утас" номын сан нь мэдрэгч ба Arduino самбар хоорондын i2c холболтыг хөнгөвчлөх функцүүдийг агуулдаг.

Хэрэглэгчийн тав тухыг хангах үүднээс Arduino кодыг бүхэлд нь доор өгөв.

#оруулах

// BH1715 I2C хаяг нь 0x23 (35) #define Addr 0x23 void setup () {// I2C холболтыг MASTER Wire.begin () болгон эхлүүлэх; // Цуваа холбоог эхлүүлэх, дамжуулах хурд = 9600 Serial.begin (9600); // I2C дамжуулах утсыг эхлүүлэх.beginTransmission (Addr); // Wire.write (0x01) тушаал дээр хүч илгээх; // I2C Transmission Wire.endTransmission () -ийг зогсоох; // I2C дамжуулах утсыг эхлүүлэх.beginTransmission (Addr); // Wire.write хэмжилтийн тасралтгүй командыг илгээх (0x10); // I2C Transmission Wire.endTransmission () -ийг зогсоох; саатал (300); } void loop () {unsigned int data [2]; // Wire.requestFrom 2 байтын өгөгдөл хүсэх (Addr, 2); // 2 байтын өгөгдлийг уншина уу // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); өгөгдөл [1] = Wire.read (); } саатал (300); // өгөгдлийн хөвөх гэрэлтүүлгийг хөрвүүлэх = ((өгөгдөл [0] * 256) + өгөгдөл [1]) /1.20; // Serial.print ("Орчны гэрлийн гэрэлтэлт:") цуваа монитор руу өгөгдөл гаргадаг; Цуваа хэвлэх (гэрэлтэлт); Serial.println ("lux"); }

Кодын дараах хэсэг нь i2c холбоо болон Wire.begin () ба Serial.begin () функцын тусламжтайгаар цуваа холболтыг эхлүүлнэ.

// I2C холболтыг MASTER болгон эхлүүлэх

Wire.begin (); // Цуваа холбоог эхлүүлэх, дамжуулах хурд = 9600 Serial.begin (9600); // I2C дамжуулах утсыг эхлүүлэх.beginTransmission (Addr); // Wire.write (0x01) тушаал дээр хүч илгээх; // I2C Transmission Wire.endTransmission () -ийг зогсоох; // I2C дамжуулах утсыг эхлүүлэх.beginTransmission (Addr); // Wire.write хэмжилтийн тасралтгүй командыг илгээх (0x10); // I2C Transmission Wire.endTransmission () -ийг зогсоох; саатал (300);

Гэрлийн эрч хүчийг кодын дараагийн хэсэгт хэмждэг.

гарын үсэг зураагүй int өгөгдөл [2];

// Wire.requestFrom 2 байтын өгөгдөл хүсэх (Addr, 2); // 2 байтын өгөгдлийг уншина уу // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); өгөгдөл [1] = Wire.read (); } саатал (300); // өгөгдлийн хөвөх гэрэлтүүлгийг хөрвүүлэх = ((өгөгдөл [0] * 256) + өгөгдөл [1]) /1.20; // Serial.print ("Орчны гэрлийн гэрэлтэлт:") цуваа монитор руу өгөгдөл гаргадаг; Цуваа хэвлэх (гэрэлтэлт); Serial.println ("lux");

Та хийх ёстой зүйл бол кодыг arduino дээр шарж, цуваа порт дээрх уншилтаа шалгах явдал юм. Гаралтыг дээрх зурган дээр мөн таны лавлагаанд харуулав.

Алхам 5: Өргөдөл:

Хэрэглээ
Хэрэглээ

BH1715 бол гар утас, LCD ТВ, ТЭМДЭГЛЭЛ гэх мэт компьютерт багтаасан дижитал гаралтын орчны гэрэл мэдрэгч бөгөөд үүнийг зөөврийн тоглоомын машин, дижитал камер, дижитал видео камер, PDA, LCD дэлгэц болон бусад шаардлагатай төхөөрөмжүүдэд ашиглаж болно. үр дүнтэй гэрэл мэдрэгч програмууд.

Зөвлөмж болгож буй: