Arduino Biến trở kích hoạt rơ-le

Chúng ta sẽ học cách làm thế nào để:

Bằng cách kết nối rơ-le với bóng đèn, dải đèn LED, động cơ hoặc bộ truyền động... Chúng ta có thể sử dụng biến trở để điều khiển bóng đèn, dải đèn LED, động cơ hoặc bộ truyền động...

Phần cứng cần chuẩn bị

1×Arduino Uno R3
1×USB 2.0 cable type A/B (for USB-A PC)
1×USB 2.0 cable type C/B (for USB-C PC)
1×Chiết áp
1×Alternatively, 10k Ohm Trimmer Potentiometer
1×Mô-đun chiết áp có núm xoay
1×(Hoặc) Potentiometer Kit
1×(Hoặc) Potentiometer Module with Knob
1×Relay
1×breadboard
1×dây jumper
1×(Tùy chọn) Solenoid Lock
1×(Tùy chọn) 12V Power Adapter
1×(Tùy chọn) DC Power Jack
1×(Khuyến nghị) Screw Terminal Block Shield for Arduino Uno
1×(Khuyến nghị) Breadboard Shield for Arduino Uno
1×(Khuyến nghị) Enclosure for Arduino Uno
1×(Khuyến nghị) Prototyping Base Plate & Breadboard Kit for Arduino UNO

Or you can buy the following kits:

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

Về rơ-le và biến trở

Nếu bạn chưa biết về rơ-le và biến trở (bố trí chân, cách hoạt động, cách lập trình ...), hãy tìm hiểu về chúng trong các bài hướng dẫn dưới đây:

Sơ đồ đấu dây

sơ đồ nối mạch Arduino với biến trở và rơ-le

This image is created using Fritzing. Click to enlarge image

Mã Arduino - Ngưỡng Tương Tự

/* * Mã Arduino này được phát triển bởi newbiely.vn * Mã Arduino 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/arduino-potentiometer-triggers-relay */ // constants won't change const int POTENTIOMETER_PIN = A0; // Arduino pin connected to Potentiometer pin const int RELAY_PIN = 3; // Arduino pin connected to Relay's pin const int ANALOG_THRESHOLD = 500; void setup() { pinMode(RELAY_PIN, OUTPUT); // set arduino pin to output mode } void loop() { int analogValue = analogRead(POTENTIOMETER_PIN); // read the input on analog pin if(analogValue > ANALOG_THRESHOLD) digitalWrite(RELAY_PIN, HIGH); // turn on Relay else digitalWrite(RELAY_PIN, LOW); // turn off Relay }

Hướng dẫn từng bước

  • Kết nối Arduino với PC bằng cáp USB
  • Mở Arduino IDE, chọn board và cổng đúng
  • Sao chép mã ở trên và mở bằng Arduino IDE
  • Nhấp nút Tải lên trên Arduino IDE để tải mã lên Arduino
tải mã lên Arduino ide
  • Xoay biến trở
  • Xem sự thay đổi trạng thái của rơ-le

Giải thích mã

Đọc lời giải thích theo từng dòng trong các dòng chú thích của mã nguồn!

Mã Arduino - Ngưỡng điện áp

Giá trị tương tự của biến trở được chuyển đổi thành giá trị điện áp, sau đó được so sánh với ngưỡng điện áp để kích hoạt rơ-le.

/* * Mã Arduino này được phát triển bởi newbiely.vn * Mã Arduino 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/arduino-potentiometer-triggers-relay */ // constants won't change const int POTENTIOMETER_PIN = A0; // Arduino pin connected to Potentiometer pin const int RELAY_PIN = 3; // Arduino pin connected to Relay's pin const float VOLTAGE_THRESHOLD = 2.5; // Voltages void setup() { pinMode(RELAY_PIN, OUTPUT); // set arduino pin to output mode } void loop() { int analogValue = analogRead(POTENTIOMETER_PIN); // read the input on analog pin float voltage = floatMap(analogValue, 0, 1023, 0, 5); // Rescale to potentiometer's voltage if(voltage > VOLTAGE_THRESHOLD) digitalWrite(RELAY_PIN, HIGH); // turn on Relay else digitalWrite(RELAY_PIN, LOW); // turn off Relay } float floatMap(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; }

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.