Arduino Nút nhấn Bơm

Chúng ta sẽ học cách sử dụng Arduino để bật máy bơm trong vài giây và sau đó tắt nó khi một nút được nhấn.

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×breadboard-mount Button with Cap
1×breadboard-mount Button Kit
1×Panel-mount Push Button
1×mô-đun nút nhấn
1×Relay
1×12V Pump
1×Vinyl Tube
1×12V Power Adapter
1×DC Power Jack
1×dây jumper
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ề Nút và Bơm

Nếu bạn không biết về bơm và nút nhấn (bố trí các chân, cách chúng 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 sau đây:

Sơ đồ đấu dây

sơ đồ mạch điều khiển bơm bằng nút Arduino

This image is created using Fritzing. Click to enlarge image

Mã Arduino

/* * 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-button-pump */ #include <ezButton.h> // include ezButton library #include <ezOutput.h> // include ezOutput library ezOutput pump(A5); // create ezOutput object attached to pin A5 ezButton button(12); // create ezButton object attached to pin 12 void setup() { Serial.begin(9600); button.setDebounceTime(50); // set debounce time to 50 milliseconds pump.low(); // turn pump off } void loop() { pump.loop(); // MUST call the loop() function first button.loop(); // MUST call the loop() function first if (button.isPressed()) { Serial.println("Pump is started"); pump.low(); pump.pulse(10000); // turn on for 10000 milliseconds ~ 10 seconds // after 10 seconds, pump will be turned off by pump.loop() function } }

※ Lưu ý:

Đoạn mã ở trên thực hiện:

  • Nút được lọc trễ (debounce) cho nút (được hỗ trợ bởi thư viện ezButton). Xem Tại sao chúng ta cần debounce?
  • Nếu nút được nhấn, bật bơm trong 10 giây và sau đó tắt nó (được hỗ trợ bởi thư viện ezOutput)
  • Toàn bộ mã không chặn (non-blocking) (được hỗ trợ bởi các thư viện ezButton và ezOutput)

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
  • Điều hướng tới biểu tượng Thư viện ở thanh bên trái của Arduino IDE.
  • Tìm kiếm “ezButton”, sau đó tìm thư viện nút do ArduinoGetStarted cung cấp
  • Nhấp vào nút Cài đặt để cài đặt thư viện ezButton.
thư viện nút Arduino
  • Tìm kiếm “ezOutput”, sau đó tìm thư viện đầu ra do ArduinoGetStarted cung cấp
  • Nhấn nút Cài đặt để cài đặt thư viện ezOutput.
thư viện đầu ra của Arduino
  • Sao chép mã ở trên và mở bằng Arduino IDE
  • Nhấn nút Tải lên trên Arduino IDE để tải mã lên Arduino
tải mã lên Arduino ide
  • Nhấn nút
  • Xem trạng thái của bơm

Giải thích mã nguồn

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

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.