Thiết Bị Bảo Vệ Mắt


Thiết bị bảo vệ mắt sử dụng cảm biến khoảng cách, khi khoảng cách giữa mắt và màn hình nhỏ hơn 50 cm (khoảng cách được khuyến nghị), thiết bị sẽ phát ra âm thanh cảnh báo và nhấp nháy đèn.
Supplies

- Arduino
- BreadBoard
- 5 đèn led ( màu tự chọn)
- Cảm biến khoảng cách
- Loa
- 5 Resistor
Arduino (kit có sẵn dây kết nối):
Breadboard:
https://dientuduchuy.com/products/breadboard-mb-102-400-lo-85-55mmRelay:
Resistor:
LED:
https://www.adafruit.com/product/754
https://www.adafruit.com/product/1793
https://www.ebay.com/itm/146256945219?
Piezo:
https://chotroihn.vn/loa-8-om-1w
Pin 9V:
Kết Nối Arduino Với Breadboard

- Kết nối 5V (Arduino) với đường kẻ màu đỏ trên breadboard
- Kết nối GND (Arduino) với đường kẻ màu đen trên breadboard
Gắn Đèn, Loa Và Cảm Biến Khoảng Cách



Gắn điện trở và đèn LED vào Breadboard:
Cắm chân dài (anode, cực dương) của mỗi đèn LED vào một hàng lỗ riêng trên breadboard.
Cắm một đầu của điện trở vào cùng hàng với chân ngắn (cathode, cực âm) của đèn LED.
Cắm đầu còn lại của điện trở vào một hàng lỗ khác trên breadboard. Như vậy, mỗi đèn LED sẽ được nối tiếp với một điện trở.
Nối đèn LED với Arduino:
Sử dụng dây cắm breadboard để nối chân còn lại của mỗi điện trở (đầu không nối với đèn LED) với các chân digital trên Arduino. Bạn có thể chọn các chân từ 2 đến 6 (hoặc bất kỳ chân digital nào bạn muốn, trong code là lần lượt từ chân 2 đến 6). Hãy ghi nhớ chân Arduino nào bạn nối với đèn LED nào để lập trình sau này.
Nối chân ngắn của mỗi đèn LED (thông qua điện trở) với chân GND trên Arduino bằng dây cắm breadboard. Bạn có thể nối tất cả các chân GND của các mạch LED này vào cùng một hàng trên breadboard và sau đó nối hàng đó với một chân GND trên Arduino.
Gắn cảm biến khoảng cách vào Breadboard:
Cắm cảm biến vào breadboard. Cảm biến này có 4 chân: VCC, Trig, Echo, và GND.
Nối chân VCC của cảm biến với chân 5V trên Arduino bằng dây cắm breadboard.
Nối chân GND của cảm biến với một chân GND trên Arduino (bạn có thể dùng chung chân GND đã nối với các đèn LED).
Nối chân Trig (Trigger) của cảm biến với một chân digital trên Arduino. Ví dụ, bạn có thể chọn chân digital 7. (Như trong hình)
Nối chân Echo của cảm biến với một chân digital khác trên Arduino. Ví dụ, bạn có thể chọn chân digital 8.(Như trong hình)
Gắn loa vào Breadboard:
- Loa thường có hai chân: một chân dương (thường được đánh dấu bằng dấu "+") và một chân âm.
- Cắm hai chân của loa vào hai hàng lỗ khác nhau trên breadboard.
- Nối chân dương của loa với một chân digital trên Arduino. Bạn có thể chọn một chân digital, ví dụ chân 12.
- Nối chân âm của loa trực tiếp với một chân GND trên Arduino (bạn có thể dùng chung chân GND đã nối với các thành phần khác).
Lập Trình


Đây là một cảm biến khoảng cách cảnh báo bạn nếu như khoảng cách giữa mắt của bạn và màn hình gần nhau dưới 50 cm thì đèn nhấp nháy liên tục, loa bật cho tới khi khoảng cách giữa mắt của bạn và màn hình xa hơn 50cm, cảm biến sẽ đo cho bạn khoảng cách giữa mắt và màn hình.
Code cho sẵn:
//C++
long duration;
double dis;
double ktra_khoang_cach (double tR, double eC){//Thực hiện nhiệm vụ kiểm tra khoảng cách
pinMode(tR, OUTPUT);
pinMode(eC, INPUT);
digitalWrite(tR, LOW);
delayMicroseconds(3);
digitalWrite(tR, HIGH);
delayMicroseconds(10);
digitalWrite(tR, LOW);
duration = pulseIn(eC, HIGH);
return duration;
}
void setup(){
Serial.begin(9600);
pinMode(4, OUTPUT);
}
void loop(){
dis = ktra_khoang_cach(2,3)/58.08032675289312; //Tính ra khoảng cách (đơn vị cm)
Serial.println(dis);
delay(1000);
if (dis <= 50){
digitalWrite(2, HIGH);
delayMicroseconds(10);
digitalWrite(3, HIGH);
delayMicroseconds(10);
digitalWrite(4, HIGH);
delayMicroseconds(10);
digitalWrite(5, HIGH);
delayMicroseconds(10);
digitalWrite(6, HIGH);
delayMicroseconds(10);
digitalWrite(12, HIGH);
}
}