Mục lục:
- Bước 1: Tổng quan về BH1715:
- Bước 2: Những gì bạn cần.. !
- Bước 3: Kết nối phần cứng:
- Bước 4: Mã Arduino đo cường độ ánh sáng:
- Bước 5: Ứng dụng:
Video: Tính toán cường độ ánh sáng sử dụng BH1715 và Arduino Nano: 5 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:33
Hôm qua, chúng tôi đã làm việc trên màn hình LCD, và trong khi làm việc với chúng, chúng tôi nhận ra tầm quan trọng của việc tính toán cường độ ánh sáng. Cường độ ánh sáng không chỉ quan trọng trong lĩnh vực vật lý của thế giới này mà nó còn có vai trò được nói rõ trong lĩnh vực sinh học. Việc ước tính chính xác cường độ ánh sáng đóng một vai trò quan trọng trong hệ sinh thái của chúng ta, trong sự phát triển của thực vật, v.v. Vì vậy, để phục vụ mục đích này, chúng tôi đã nghiên cứu cảm biến BH1715 này, là cảm biến ánh sáng xung quanh loại đầu ra nối tiếp 16 bit.
Trong hướng dẫn này, chúng tôi sẽ chứng minh hoạt động của BH1715 với Arduino Nano.
Phần cứng bạn sẽ cần cho mục đích này như sau:
1. BH1715 - Cảm biến ánh sáng xung quanh
2. Arduino nano
3. Cáp I2C
4. Lá chắn I2C cho Arduino Nano
Bước 1: Tổng quan về BH1715:
Trước hết, chúng tôi muốn bạn làm quen với các tính năng cơ bản của mô-đun cảm biến là BH1715 và giao thức truyền thông mà nó hoạt động.
BH1715 là Cảm biến ánh sáng xung quanh kỹ thuật số với giao diện bus I²C. BH1715 thường được sử dụng để lấy dữ liệu ánh sáng xung quanh để điều chỉnh công suất đèn nền của màn hình LCD và bàn phím cho các thiết bị di động. Thiết bị này cung cấp độ phân giải 16 bit và phạm vi đo có thể điều chỉnh, cho phép phát hiện từ 0,23 đến 100, 000 lux.
Giao thức truyền thông mà cảm biến hoạt động là I2C. I2C là viết tắt của mạch tích hợp liên. Nó là một giao thức truyền thông trong đó giao tiếp diễn ra thông qua các đường SDA (dữ liệu nối tiếp) và SCL (đồng hồ nối tiếp). Nó cho phép kết nối nhiều thiết bị cùng lúc. Nó là một trong những giao thức truyền thông đơn giản và hiệu quả nhất.
Bước 2: Những gì bạn cần.. !
Các tài liệu mà chúng tôi cần để hoàn thành mục tiêu của mình bao gồm các thành phần phần cứng sau:
1. BH1715 - Cảm biến ánh sáng xung quanh
2. Arduino Nano
3. Cáp I2C
4. I2C Shield cho Arduino nano
Bước 3: Kết nối phần cứng:
Phần kết nối phần cứng về cơ bản giải thích các kết nối dây cần thiết giữa cảm biến và pi raspberry. Đảm bảo các kết nối chính xác là điều cần thiết cơ bản trong khi làm việc trên bất kỳ hệ thống nào để có kết quả đầu ra mong muốn. Vì vậy, các kết nối cần thiết như sau:
BH1715 sẽ hoạt động trên I2C. Đây là sơ đồ đấu dây ví dụ, minh họa cách đấu dây cho từng giao diện của cảm biến.
Ngoài ra, bo mạch được định cấu hình cho giao diện I2C, vì vậy, chúng tôi khuyên bạn nên sử dụng kết nối này nếu bạn không có kiến thức khác. Tất cả những gì bạn cần là bốn dây!
Chỉ cần bốn kết nối là chân Vcc, Gnd, SCL và SDA và chúng được kết nối với sự trợ giúp của cáp I2C.
Các kết nối này được thể hiện trong các hình trên.
Bước 4: Mã Arduino đo cường độ ánh sáng:
Hãy bắt đầu với mã Arduino ngay bây giờ.
Trong khi sử dụng mô-đun cảm biến với Arduino, chúng tôi bao gồm thư viện Wire.h. Thư viện "Wire" chứa các chức năng hỗ trợ giao tiếp i2c giữa cảm biến và bảng Arduino.
Toàn bộ mã Arduino được cung cấp bên dưới để thuận tiện cho người dùng:
#bao gồm
// Địa chỉ I2C BH1715 là 0x23 (35) #define Addr 0x23 void setup () {// Khởi tạo giao tiếp I2C dưới dạng MASTER Wire.begin (); // Khởi tạo Giao tiếp nối tiếp, đặt tốc độ truyền = 9600 Serial.begin (9600); // Khởi động I2C Transmission Wire.beginTransmission (Addr); // Gửi lệnh bật nguồn Wire.write (0x01); // Dừng I2C Transmission Wire.endTransmission (); // Khởi động I2C Transmission Wire.beginTransmission (Addr); // Gửi lệnh đo liên tục Wire.write (0x10); // Dừng I2C Transmission Wire.endTransmission (); chậm trễ (300); } void loop () {unsigned int data [2]; // Yêu cầu 2 byte dữ liệu Wire.requestFrom (Addr, 2); // Đọc 2 byte dữ liệu // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); } delay (300); // chuyển đổi dữ liệu float luminance = ((data [0] * 256) + data [1]) / 1.20; // Xuất dữ liệu ra màn hình nối tiếp Serial.print ("Ambient Light Luminance:"); Serial.print (độ chói); Serial.println ("lux"); }
Phần sau của mã bắt đầu giao tiếp i2c và giao tiếp nối tiếp với sự hỗ trợ của hàm Wire.begin () và Serial.begin ().
// Khởi tạo giao tiếp I2C dưới dạng MASTER
Wire.begin (); // Khởi tạo Giao tiếp nối tiếp, đặt tốc độ truyền = 9600 Serial.begin (9600); // Khởi động I2C Transmission Wire.beginTransmission (Addr); // Gửi lệnh bật nguồn Wire.write (0x01); // Dừng I2C Transmission Wire.endTransmission (); // Khởi động I2C Transmission Wire.beginTransmission (Addr); // Gửi lệnh đo liên tục Wire.write (0x10); // Dừng I2C Transmission Wire.endTransmission (); chậm trễ (300);
Cường độ ánh sáng được đo trong phần sau của mã.
dữ liệu int không dấu [2];
// Yêu cầu 2 byte dữ liệu Wire.requestFrom (Addr, 2); // Đọc 2 byte dữ liệu // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); } delay (300); // chuyển đổi dữ liệu float luminance = ((data [0] * 256) + data [1]) / 1.20; // Xuất dữ liệu ra màn hình nối tiếp Serial.print ("Ambient Light Luminance:"); Serial.print (độ chói); Serial.println ("lux");
Tất cả những gì bạn cần làm là ghi mã trong arduino và kiểm tra các bài đọc của bạn trên cổng nối tiếp. Đầu ra được hiển thị trong hình trên cũng để bạn tham khảo.
Bước 5: Ứng dụng:
BH1715 là một cảm biến ánh sáng xung quanh đầu ra kỹ thuật số có thể được kết hợp trong Điện thoại di động, TV LCD, Máy tính LƯU Ý, v.v. Nó cũng có thể được sử dụng trong Máy chơi game cầm tay, Máy ảnh kỹ thuật số, Máy quay video kỹ thuật số, PDA, màn hình LCD và nhiều thiết bị khác yêu cầu ứng dụng cảm biến ánh sáng hiệu quả.
Đề xuất:
Đo cường độ ánh sáng bằng cách sử dụng BH1715 và Raspberry Pi: 5 bước
Đo cường độ ánh sáng bằng cách sử dụng BH1715 và Raspberry Pi: Hôm qua, chúng tôi đã làm việc trên màn hình LCD và trong khi làm việc với chúng, chúng tôi nhận ra tầm quan trọng của việc tính toán cường độ ánh sáng. Cường độ ánh sáng không chỉ quan trọng trong lĩnh vực vật lý của thế giới này mà nó còn có vai trò được nói rõ trong lĩnh vực sinh học
Tính toán Cơ học lượng tử tính toán: 4 bước
Tính toán Cơ học lượng tử tính toán: Các phép tính toán trong hóa học và vật lý có thể tiết lộ các tính chất rất thú vị trên một số mẫu vật (đặc biệt nếu chúng có thể được sửa đổi để có hiệu quả tốt hơn của một hợp chất ban đầu nhất định). trong các thủ tục, bên cạnh các yếu tố của d
Arduino Nano - Hướng dẫn sử dụng cảm biến ánh sáng xung quanh kỹ thuật số BH1715: 4 bước
Arduino Nano - Hướng dẫn sử dụng cảm biến ánh sáng xung quanh kỹ thuật số BH1715: BH1715 là cảm biến ánh sáng xung quanh kỹ thuật số với giao diện bus I²C. BH1715 thường được sử dụng để lấy dữ liệu ánh sáng xung quanh để điều chỉnh công suất đèn nền của màn hình LCD và bàn phím cho các thiết bị di động. Thiết bị này cung cấp độ phân giải 16-bit và điều chỉnh
Tính toán cường độ ánh sáng sử dụng BH1715 và Photon hạt: 5 bước
Tính toán cường độ ánh sáng sử dụng BH1715 và Photon hạt: Hôm qua, chúng tôi đã làm việc trên màn hình LCD và trong khi làm việc với chúng, chúng tôi nhận ra tầm quan trọng của việc tính toán cường độ ánh sáng. Cường độ ánh sáng không chỉ quan trọng trong lĩnh vực vật lý của thế giới này mà nó còn có vai trò được nói rõ trong lĩnh vực sinh học
Đầu Robot chụp ảnh toàn cảnh (ảnh toàn cảnh): 13 bước (có ảnh)
Camera Panorama Đầu robot (ảnh toàn cảnh): Bạn đã bao giờ muốn chụp ảnh toàn cảnh chỉ bằng một nút bấm? Tài liệu hướng dẫn này sẽ hướng dẫn bạn cách chế tạo một đầu robot để gắn máy ảnh của bạn lên, sau đó sẽ gắn vào chân máy. Đầu robot sẽ di chuyển theo hai trục để