Arduino UNO R4 Ultrasonic Sensor Relay

Hướng dẫn này sẽ chỉ bạn cách sử dụng Arduino Uno R4 để làm việc với cảm biến siêu âm và relay. Bạn sẽ học được:

Với thiết lập này, bạn có thể kết nối relay với những thiết bị thú vị như đèn, động cơ, hoặc các gadget khác và điều khiển chúng bằng combo Arduino và cảm biến!

Phần Cứng Cần Thiết

1×Arduino UNO R4 WiFi hoặc Arduino UNO R4 Minima
1×(Tùy chọn) DIYables STEM V4 IoT, tương thích với Arduino Uno R4 WiFi
1×Arduino UNO R4 Minima (Tùy chọn thay thế)
1×Cáp USB Type-C
1×Cảm Biến Siêu Âm
1×Relay
1×Dây Jumper
1×(Tùy chọn) Khóa Solenoid
1×(Tùy chọn) Adapter Nguồn 12V
1×(Tùy chọn) Jack Nguồn DC
1×(Khuyến nghị) Screw Terminal Block Shield for Arduino UNO R4
1×(Khuyến nghị) Breadboard Shield for Arduino UNO R4
1×(Khuyến nghị) Enclosure for Arduino UNO R4
1×(Khuyến nghị) Power Splitter for Arduino UNO R4
1×(Khuyến nghị) Prototyping Base Plate & Breadboard Kit for Arduino UNO

Or you can buy the following kits:

1×DIYables STEM V4 IoT Starter Kit (Arduino included)
1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)

Về Relay và Cảm Biến Siêu Âm

Nếu bạn chưa quen thuộc với cách thức hoạt động của relay và cảm biến siêu âm, bao gồm sơ đồ chân và lập trình, bạn có thể tìm hiểu thêm trong các hướng dẫn sau:

Sơ Đồ Kết Nối

sơ Đồ kết nối Arduino UNO R4 cảm biến siêu Âm rơ le

This image is created using Fritzing. Click to enlarge image

Code Arduino UNO R4

/* * Mã Arduino UNO R4 này được phát triển bởi newbiely.vn * Mã Arduino UNO R4 này được cung cấp để sử dụng công khai, không có ràng buộc. * Để xem hướng dẫn chi tiết và sơ đồ kết nối, vui lòng truy cập: * https://newbiely.vn/tutorials/arduino-uno-r4/arduino-uno-r4-ultrasonic-sensor-relay */ #define TRIG_PIN 7 // The Arduino UNO R4 pin connected to the ultrasonic sensor's TRIG pin #define ECHO_PIN 6 // The Arduino UNO R4 pin connected to the ultrasonic sensor's ECHO pin #define RELAY_PIN A5 // The Arduino UNO R4 pin connected to Relay's pin #define DISTANCE_THRESHOLD 50 // centimeters float duration_us, distance_cm; void setup() { Serial.begin (9600); // initialize serial port pinMode(TRIG_PIN, OUTPUT); // set arduino pin to output mode pinMode(ECHO_PIN, INPUT); // set arduino pin to input mode pinMode(RELAY_PIN, OUTPUT); // set arduino pin to output mode } void loop() { // generate 10-microsecond pulse to TRIG pin digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIG_PIN, LOW); // measure duration of pulse from ECHO pin duration_us = pulseIn(ECHO_PIN, HIGH); // calculate the distance distance_cm = 0.017 * duration_us; if(distance_cm < DISTANCE_THRESHOLD) digitalWrite(RELAY_PIN, HIGH); // turn on Relay else digitalWrite(RELAY_PIN, LOW); // turn off Relay // print the value to Serial Monitor Serial.print("distance: "); Serial.print(distance_cm); Serial.println(" cm"); delay(500); }

Các Bước Thực Hiện

Thực hiện theo các hướng dẫn sau từng bước một:

  • Nếu đây là lần đầu tiên bạn sử dụng Arduino Uno R4 WiFi/Minima, hãy tham khảo hướng dẫn về Arduino UNO R4 - Cài Đặt Phần Mềm.
  • Kết nối các linh kiện theo sơ đồ được cung cấp.
  • Kết nối bo mạch Arduino Uno R4 với máy tính của bạn bằng cáp USB.
  • Khởi động Arduino IDE trên máy tính của bạn.
  • Chọn bo mạch Arduino Uno R4 phù hợp (ví dụ: Arduino Uno R4 WiFi) và cổng COM.
  • Sao chép code được cung cấp và dán vào Arduino IDE.
  • Nhấn nút Upload trong Arduino IDE để truyền code lên Arduino UNO R4 của bạn.
tải mã lên Arduino IDE
  • Đặt tay của bạn trước cảm biến
  • Quan sát trạng thái relay thay đổi

Giải Thích Code

Hãy xem giải thích trong các comment của source code, từng dòng một!

※ Lưu ý:

Code được cung cấp chỉ dành cho mục đích giáo dục. Cảm biến siêu âm phản ứng mạnh với nhiễu. Để sử dụng cảm biến siêu âm một cách hiệu quả, điều quan trọng là phải giảm thiểu nhiễu này. Bạn có thể học cách thực hiện điều này tại cách lọc nhiễu cho cảm biến siêu âm.

Video Tutorial

Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.