Professional Documents
Culture Documents
Bài Tập Lớn CB Hoàn Chỉnh
Bài Tập Lớn CB Hoàn Chỉnh
TRƯỜNG CƠ KHÍ Ô TÔ
KHOA CƠ ĐIỆN TỬ
= = = = = =
1
2
CHƯƠNG 1: TỔNG QUAN VỀ CẢM BIẾN QUANG
3
4
1.3.3 Nguyên lí hoạt động của quang điện trở
- Khi photon có năng lượng đủ lớn đập vào, sẽ làm bật electron khỏi
phân tử, trở thành tự do trong khối chất và làm chất bán dẫn thành dẫn
điện. Mức độ dẫn điện tùy thuộc số photon được hấp thụ
- Khi có ánh sáng chiếu vào chất bán dẫn, làm xuất hiện các điện tử
tự do, làm sự dẫn điện tăng lên, làm giảm điện trở của chất bán dẫn ( nếu
có nối vào mạch điện thì mạch sẽ nối tắt, ngắn mạch)
- Cách lấy giá trị của quang trở: sử dụng cầu phân áp, khi LDR thay
đổi giá trị điện trở của nó do cường độ ánh sáng, điện áp có mặt tại Vout
sẽ được xác định bằng công thức điện áp.
5
1.3.4 Các thông số của Quang điện trở
- Nguồn cấp: 3,3 – 5V
- Điện áp max: 250VDC
- Công suất mã: 200mW
- Giá trị đỉnh phổ (Spectrum peak value): 540nm
- Trở kháng ánh sáng (10Lux): 10 ~ 20 (KΩ)
- Trở kháng bóng tối: 2 (MΩ)
- Giới hạn đo: 10-1000 lux
- Ngưỡng độ nhạy:0,01.
- Thông số ngõ ra của cảm biến: tín hiệu analog từ 0-5 V
6
CHƯƠNG 2: QUÁ TRÌNH THỰC HIỆN
2.1.2. Quang trở LDR: sử dụng trong cầu phân áp đề lẩy ra giá trị analog
2.1.3. Điện trở: sử dụng trong cầu phân áp đẻ lấy ra giá trị analog của cảm
biến.
7
2.1.4. LCD 16x02: Xuất ra giá trị.
2.1.6 Bus cắm Testboard : Kết nối các linh kiện thành mạch điều khiển
8
2.1.7. Testboard : Làm đế cắm cho linh kiện và bus cắm.
2.1.9. bộ giao tiếp P-C: moulde chuyển đổi 12c cho LCD
9
2.2. Arduino R3
2.2.1. Đặc trưng của arduino
Vi điều khiển ATmega328P
Điện áp hoạt động: 2.7-5V
Điện áp đầu vào: 7-12V
Điện áp đầu vào (giới hạn): 6-20V
Chân I/O kỹ thuật số: 14 (bao gồm 6 chân cung cấp đầu ra PWM)
Chân đầu vào tương tự: 6
Dòng điện một chiều trên chân I/O: 40mA
Dòng điện một chiều trên chân 3.3V: 50mA
BỘ NHỚ FLASH: 32KB
SRAM: 2KB
EEPROM: 1KB
TỐC ĐỘ THẠCH ANH: 16 MHZ
2.2.2. Cấu Trúc Liên Kết Của Bo Mạch
10
Ref. Description Ref. Description
SPX1117M3-L-5
X1 Power jack 2.1x5.5mm U1
Regulator
X2 USB B Connector U3 ATMEGA16U2 Module
EEE-1EA470WP 25V
PC1 U5 LMV358LIST-A.9 IC
SMD Capacitor
EEE-1EA470WP 25V Chip Capacitor, High
PC2 F1
SMD Capacitor Density
Pin header connector
D1 CGRA4007-G Rectifier ICSP
(through hole 6)
Pin header connector
J-ZU4 ATMEGA328P Module ICSP1
(through hole 6)
ECS-160-20-4X-DU
Y1
Oscillator
11
Trên Board Arduino Uno R3 có 14 chân Digital được sử dụng để làm
chân đầu vào và đầu ra và chúng sử dụng các hàm pinMode(), digitalWrite(),
digitalRead(). Giá trị điện áp trên mỗi chân là 5V, dòng trên mỗi chân là 20mA
và bên trong có điện trở kéo lên là 20-50 ohm. Dòng tối đa trên mỗi chân I/O
không vượt quá 40mA để tránh trường hợp gây hỏng board mạch.
Ngoài ra, một số chân Digital có chức năng đặt biệt:
Serial: 0 (RX) và 1 (TX): Được sử dụng để nhận dữ liệu (RX) và
truyền dữ liệu (TX) TTL.
Ngắt ngoài: Chân 2 và 3.
PWM: 3, 5, 6, 9 và 11 Cung cấp đầu ra xung PWM với độ phân
giải 8 bit bằng hàm analogWrite ().
SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Các chân này hỗ
trợ giao tiếp SPI bằng thư viện SPI.
LED: Có 1 LED được tích hợp trên bảng mạch và được nối vào
chân D13. Khi chân có giá trị mức cao (HIGH) thì LED sẽ sáng và
LED tắt khi ở mức thấp (LOW).
TWI/I2C: A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp I2C/TWI với
các thiết bị khác.
Arduino Uno R3 có 6 chân Analog từ A0 đến A5, đầu vào cung cấp độ phân
giải là 10 bit.
12
2.3. Công thức tính cường độ ánh sáng
13
RLDR = A× E -a
Với
RLDR: điện trở ra của cảm biến
E: độ rọi (lux)
A: hằng số
a: giá trị phụ thuộc vào CdS ở đây bằng -0,7 do hệ số âm
và công tính tính điện áp ra của quang trở:
R2
Vout = Vin × R
LDR + R2
Với
Vout : điện áp đầu ra mà cảm biến đo được
Vin : điện áp đầu vào
RLDR : điện trở của quang trở
R2 : điện trở 10kΩ
14
Từ 2 phương trình trên ta rút ra được công thức tính cường độ ánh sáng là:
−1
V out a
× R2
V¿
E= ( )
V out
A ×(1− )
V¿
Khi ánh sáng chiếu vào cảm biến đạt 10 lux điện trở của quang trở có thể đo
được tới 50 kΩ.
Lấy nó làm chuẩn ta có thể tính được cường độ ánh sáng quang trở đo được
2.4. Sơ đồ nối mạch
Cấp
nguồn
16
2.6. Code
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C led(0x27,16,2);
int quangtro=A0;
void setup(){
Serial.begin(9600);
led.init();
led.backlight();
led.begin(16,2);
led.setCursor(0,0);
led.print("NHOM 2");
led.setCursor(1,1);
led.print("QUANG TRO LDR ");
delay(1000);
led.clear();
}
void loop(){
int res_value = 10000;
int analog_value;
float vref_max = 3.3;
float V_ldr = 0.0;
float A_value = 250593.6168; // he so a
float Res_ldr_value;
double E_value = 0.0; // cuong do anh sang
analog_value = analogRead(quangtro);//doc gia tri analog
V_ldr = analog_value * (3.3 / 1023.0);
Res_ldr_value = ((3.3 * res_value) / V_ldr) - res_value;
E_value = pow(( Res_ldr_value/A_value ),1.0 / -0.7);
delay(500);
led.clear();
led.setCursor(0,0);
led.print("GIA TRI ANH SANG");
led.setCursor(1,1);
led.print(E_value);
led.print(" lux");
}
17
TÀI LIỆU THAM KHẢO
https://youtu.be/AfFjj22oMp0?si=2WnD3de3QiFD_95d
18