Giới thiệu cảm biến tia UV ML8511
Cảm biến tia UV ML8511 sử dụng IC cảm biến ML8511 từ hãng Lapis cho độ nhạy cao, cảm biến có tích hợp sẵn bộ khuếch đại analog nên có thể lấy trực tiếp dữ liệu Ananog từ cảm biến và cho vào ADC của Vi điều khiển mà không cần thêm các mạch khuếch đại.
Cảm biến UV ML8511 có dòng tiêu thụ rất thấp, kích thước nhỏ gọn và độ chính xác cao, đầu ra là tín hiệu Analog nên rất dễ giao tiếp và xử lý dữ liệu từ cảm biến bằng Vi điều khiển.
Thông số kỹ thuật module cảm biến tia UV ML8511
- Điện áp hoạt động : 5V
- Dòng điện : 0.3mA
- Công suất : 1.5mW
- Chuẩn truyền : Analog
- Độ nhạy : tia UV-A và tia UV-B
- Khoảng cách hoạt động : toàn bộ ánh sáng trên cảm biến nhận được
- Số chân : 5
- Loại : Module
- Kiểu chân : TTL
- Kích thước : 21*16*3.3mm
Nguyên lý hoạt động
Cảm biến UV ML8511 phát hiện ánh sáng 280-390nm hiệu quả nhất (vùng cực tím). Điều này được phân loại như là một phần của UVB (tia đốt) phổ và hầu hết các UVA (tanning tia) quang phổ. Cảm biến cho đầu ra giá trị điện áp analog được quan hệ tuyến tính với cường độ đo UV (mW / cm2). Nếu vi điều khiển của bạn có thể làm tương tự với chuyển đổi tín hiệu số thì bạn có thể phát hiện mức UV.
Chương trình Test sản phẩm
Nguyên lý kết nối
Chương trình
/* Kết nối: ML8511 Arduino 3.3V 3.3V OUT A0 GND GND EN 3.3V Chân A1 (Arduino) --- 3.3V (Arduino). Nạp code mở Serial Monitor, chọn No line ending, baud 9600. */ int UVOUT = A0; //Output from the sensor int REF_3V3 = A1; //3.3V power on the Arduino board void setup() { Serial.begin(9600); pinMode(UVOUT, INPUT); pinMode(REF_3V3, INPUT); Serial.println("ML8511 example"); } void loop() { int uvLevel = averageAnalogRead(UVOUT); int refLevel = averageAnalogRead(REF_3V3); //Use the 3.3V power pin as a reference to get a very accurate output value from sensor float outputVoltage = 3.3 / refLevel * uvLevel; float uvIntensity = mapfloat(outputVoltage, 0.99, 2.8, 0.0, 15.0); //Convert the voltage to a UV intensity level Serial.print("output: "); Serial.print(refLevel); Serial.print("ML8511 output: "); Serial.print(uvLevel); Serial.print(" / ML8511 voltage: "); Serial.print(outputVoltage); Serial.print(" / UV Intensity (mW/cm^2): "); Serial.print(uvIntensity); Serial.println(); delay(100); } int averageAnalogRead(int pinToRead) { byte numberOfReadings = 8; unsigned int runningValue = 0; for(int x = 0 ; x < numberOfReadings ; x++) runningValue += analogRead(pinToRead); runningValue /= numberOfReadings; return(runningValue); } float mapfloat(float x, float in_min, float in_max, float out_min, float out_max) { return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; }
Liên hệ làm mạch
- Phone: 0967.551.477
- Zalo: 0967.551.477
- Chi tiết : Nhận làm mạch và hướng dẫn đồ án sinh viên
Tham khảo chương trình mẫu và thông tin linh kiện chi tiết tại:
Reviews
There are no reviews yet.