สารบัญ:

Arduino Nano - TSL45315 บทช่วยสอนเกี่ยวกับเซ็นเซอร์วัดแสงโดยรอบ: 4 ขั้นตอน
Arduino Nano - TSL45315 บทช่วยสอนเกี่ยวกับเซ็นเซอร์วัดแสงโดยรอบ: 4 ขั้นตอน

วีดีโอ: Arduino Nano - TSL45315 บทช่วยสอนเกี่ยวกับเซ็นเซอร์วัดแสงโดยรอบ: 4 ขั้นตอน

วีดีโอ: Arduino Nano - TSL45315 บทช่วยสอนเกี่ยวกับเซ็นเซอร์วัดแสงโดยรอบ: 4 ขั้นตอน
วีดีโอ: Arduino Nano BH1745NUC Digital Ambient Light and Color Sensor Tutorial 2024, มิถุนายน
Anonim
Image
Image

TSL45315 เป็นเซ็นเซอร์วัดแสงโดยรอบแบบดิจิตอล มันใกล้เคียงกับการตอบสนองของสายตามนุษย์ภายใต้สภาพแสงที่หลากหลาย อุปกรณ์มีเวลาในการรวมที่เลือกได้สามครั้งและให้เอาต์พุต lux 16 บิตโดยตรงผ่านอินเทอร์เฟซบัส I2C อุปกรณ์ประกอบด้วยอาร์เรย์โฟโตไดโอด ตัวแปลงอนาล็อกเป็นดิจิตอล (ADC) แบบบูรณาการ วงจรประมวลผลสัญญาณ ลอจิกการคำนวณ lux และอินเทอร์เฟซอนุกรม I2C บนวงจรรวม CMOS เดียวเพื่อให้ข้อมูลลักซ์ นี่คือการสาธิตด้วย Arduino nano

ขั้นตอนที่ 1: สิ่งที่คุณต้องการ..!

สิ่งที่คุณต้องการ..!!
สิ่งที่คุณต้องการ..!!

1. Arduino นาโน

2. TSL45315

3. สายเคเบิล I²C

4. I²C Shield สำหรับ Arduino Nano

ขั้นตอนที่ 2: การเชื่อมต่อ:

การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ

นำเกราะป้องกัน I2C สำหรับ Arduino Nano แล้วค่อยๆ ดันไปบนหมุดของ Nano

จากนั้นเชื่อมต่อปลายสาย I2C ด้านหนึ่งกับเซ็นเซอร์ TSL45315 และปลายอีกด้านหนึ่งเข้ากับแผงป้องกัน I2C

การเชื่อมต่อแสดงในภาพด้านบน

ขั้นตอนที่ 3: รหัส:

รหัส
รหัส

รหัส Arduino สำหรับ TSL45315 สามารถดาวน์โหลดได้จากที่เก็บ GitHub-Dcube Store

นี่คือลิงค์สำหรับสิ่งเดียวกัน:

github.com/DcubeTechVentures/TSL45315…

เรารวมไลบรารี Wire.h เพื่ออำนวยความสะดวกในการสื่อสาร I2c ของเซ็นเซอร์กับบอร์ด Arduino

คุณสามารถคัดลอกรหัสจากที่นี่ได้ดังนี้:

// แจกจ่ายด้วยใบอนุญาตอิสระ

// ใช้มันตามที่คุณต้องการ ไม่ว่าจะมีกำไรหรือฟรี หากเข้ากับใบอนุญาตของงานที่เกี่ยวข้อง

// TSL45315

// รหัสนี้ออกแบบมาเพื่อทำงานกับ TSl45315_I2CS I2C Mini Module ที่มีจำหน่ายใน Dcube Store

#รวม

// ที่อยู่ TSL45315 I2C คือ 0x29(41)

#define แอดเดอร์ 0x29

การตั้งค่าเป็นโมฆะ ()

{

// เริ่มต้นการสื่อสาร I2C เป็น MASTER

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, Tint: 400ms

Wire.write(0x00);

// หยุดการส่ง I2C

Wire.endTransmission();

ล่าช้า (300);

}

วงเป็นโมฆะ ()

{

ข้อมูล int ที่ไม่ได้ลงนาม[2];

// เริ่มการส่ง I2C

Wire.beginTransmission(Addr);

// เลือก data register

Wire.write(0x84);

// หยุดการส่ง I2C

Wire.endTransmission();

// ขอข้อมูล 2 ไบต์

Wire.requestFrom(Addr, 2);

// อ่านข้อมูลขนาด 2 ไบต์

// ความสว่าง lsb, ความสว่าง msb

ถ้า(Wire.available() == 2)

{

data[0] = Wire.read();

ข้อมูล[1] = Wire.read();

}

// แปลงข้อมูล

ความสว่างลอย = ข้อมูล[1] * 256 + ข้อมูล[0];

// ส่งออกข้อมูลไปยัง Serial Monitor

Serial.print("แสงสว่างโดยรอบ:");

Serial.print(ความสว่าง);

Serial.println("ลักซ์");

ล่าช้า (300);

}

ขั้นตอนที่ 4: การใช้งาน:

ช่วงไดนามิกกว้างของเซ็นเซอร์วัดแสงโดยรอบทำให้มีประโยชน์อย่างยิ่งในการใช้งานกลางแจ้งที่ต้องสัมผัสกับแสงแดดโดยตรง อุปกรณ์นี้เหมาะอย่างยิ่งสำหรับใช้ในการควบคุมไฟถนนและระบบรักษาความปลอดภัย ป้ายโฆษณา และไฟรถยนต์โดยอัตโนมัติ อุปกรณ์ TSL45315 ยังสามารถใช้ในสถานะของแข็งและแสงทั่วไปสำหรับการควบคุมอัตโนมัติและการเก็บเกี่ยวในเวลากลางวันเพื่อประหยัดพลังงานสูงสุด แอปพลิเคชั่นอื่นๆ รวมถึงการควบคุมแบ็คไลท์ของจอแสดงผลเพื่อยืดอายุการใช้งานแบตเตอรี่และปรับการมองเห็นในโทรศัพท์มือถือ แท็บเล็ต และโน้ตบุ๊กให้เหมาะสม

แนะนำ: