RAKwireless WisBlock RAK13011: Cảm biến Báo động Cửa/Cửa sổ

Tìm hiểu cách chế tạo bộ đếm cửa mở và cảm biến báo động bằng RAKwireless WisBlock RAK13011. Hướng dẫn này mô tả cách sử dụng reed relay để phát hiện trạng thái đóng/mở cửa, tích hợp với LoRaWAN để giám sát từ xa.

👁️
81
Lượt Xem
❤️
0
Lượt Thích
📥
2
Lượt Tải
Cập Nhật Dec 21, 2025
Chi tiết
Tải xuống
Bình Luận
Khoe bản in
Remix

Mô tả

Nội dung được dịch bằng AI

Chế tạo bộ đếm cửa mở và cảm biến báo động với WisBlock

Reed relay thường được dùng để chuyển mạch không tiếp xúc trong nhiều ứng dụng. Reed relay thường ở trạng thái mở, nhưng khi một nam châm tiến lại gần, các tiếp điểm của relay sẽ đóng lại.

Ở đây, chúng ta sẽ sử dụng tính năng này để tạo bộ dò phát hiện cửa (hoặc cửa sổ) đóng/mở. Điều này có thể hữu ích cho hệ thống báo động nhà cửa hoặc trong các ứng dụng công nghiệp nơi cửa tự động trên dây chuyền sản xuất cần đếm số lần nó được mở và đóng hoặc để đảm bảo rằng cửa hoạt động đúng.

Module RAK13011 magnetic switch bao gồm một module WisBlock, một reed relay ngoài và một nam châm để điều khiển reed relay.

Module RAK13011 phù hợp với khe cắm cảm biến, nhưng do kích thước của nó nên nó chiếm hai khe cắm cảm biến. Bạn nên sử dụng Khe C của Bo mạch chủ RAK19003 hoặc Khe D của Bo mạch chủ RAK19007. Sử dụng các khe này sẽ không chiếm hai khe cắm cảm biến, vì chúng được thiết kế cho các module cảm biến dài hơn này.

📝 LƯU Ý

Tất cả các module đều có sẵn tại Cửa hàng RAKwireless.

📝 LƯU Ý

Mã nguồn của ứng dụng này là mã nguồn mở và có thể tải xuống từ kho Github

  • Phiên bản PlatformIO sử dụng Arduino BSP mã nguồn mở
  • Phiên bản RUI3

Một vài điều cần xem xét

Khoảng thời gian truyền

Ứng dụng sử dụng LoRaWAN để truyền trạng thái qua gateway đến máy chủ LoRaWAN. Các tích hợp kết nối với máy chủ LoRaWAN sau đó có thể được sử dụng để thực hiện hành động.

Vì LoRaWAN không phải là một phương tiện truyền thông nhanh, một bộ đệm vòng (ring buffer) được sử dụng để lưu trữ các sự kiện mở và đóng trong trường hợp chúng xảy ra nhanh hơn khả năng truyền sự kiện của module WisBlock Core. Bộ đệm được thiết kế để chứa tới 50 sự kiện, nhưng có thể tăng lên nếu cần.

Khử rung (Debouncing) cho các tiếp điểm relay

Các tiếp điểm reed relay không có cơ chế khử rung. Rất dễ xảy ra việc rung của các tiếp điểm relay kích hoạt nhiều ngắt. Việc khử rung được thực hiện trong ứng dụng bằng cách kiểm tra xem trạng thái có thay đổi kể từ ngắt cuối cùng hay không.

API Arduino mã nguồn mở và RAKwireless RUI3

Mã ứng dụng có sẵn trong hai phiên bản.

  1. Phiên bản đầu tiên dành cho Arduino BSP mã nguồn mở và PlatformIO. Nó hoạt động với các module WisBlock Core RAK4631, RAK11310 và RAK11200 (với module LoRa RAK13300). Ứng dụng dựa trên WisBlock-API-V2. Thay vì chạy vô tận trong loop(), nó sử dụng bộ hẹn giờ và sự kiện để giữ MCU ở chế độ chờ/ngủ càng nhiều càng tốt.
  2. Phiên bản thứ hai dành cho RUI3 và hoạt động với các module RAK4631-R và RAK3372 Core.

⚠ CẢNH BÁO

Do xung đột GPIO với RAK3372, RAK13011 không hoạt động khi sử dụng Khe Cảm biến C. Với RAK3372, RAK13011 phải được sử dụng ở một Khe Cảm biến khác.

Vỏ hộp

Khi sử dụng làm cảm biến cửa sổ hoặc cửa ra vào, có ba tùy chọn để triển khai cảm biến.

  1. Sử dụng các bộ phận reed relay và nam châm được đóng gói và kết nối RAK13011 bằng dây. Nhưng đây không phải là một giải pháp thanh lịch và có thể trông rất xấu.
  2. Lấy reed relay ra khỏi bộ phận đóng gói (hoặc chỉ cần mua một reed relay riêng) và đặt các module WisBlock, pin và reed relay vào một vỏ hộp tùy chỉnh nhỏ.
  3. Sử dụng reed relay đóng gói nhỏ và đặt bên trong cùng một vỏ hộp với các module WisBlock.

Đối với hướng dẫn này, tôi đã chọn tùy chọn thứ ba:

Phần cứng đã sử dụng

Phiên bản BSP

Module

Chức năng

Arduino BSP mã nguồn mở

RAK4631

Module WisBlock Core

RUI3

RAK4631-R

Module WisBlock Core

RUI3

RAK3372

Module WisBlock Core

Bất kỳ

RAK19003

Bo mạch chủ WisBlock

Bất kỳ

hoặc RAK19007 (cho RAK3372)

Bo mạch chủ WisBlock

Bất kỳ

RAK13011

Module công tắc từ tính WisBlock

Bất kỳ

RAK1901 tùy chọn

Cảm biến Nhiệt độ và Độ ẩm WisBlock

Phần mềm đã sử dụng

1. IDE

Arduino BSP mã nguồn mở và PlatformIO

RUI3

  • Arduino IDE (yêu cầu một số thay đổi tên tệp và cài đặt thủ công thư viện)
  • RUI3 BSP cho RAK4631 và RAK3372

2. Giao tiếp LoRaWAN và BLE

Arduino BSP mã nguồn mở và PlatformIO

Cả hai phiên bản BSP

📝 LƯU Ý

Khi sử dụng PlatformIO, các thư viện cần thiết sẽ tự động được cài đặt. Nếu phiên bản RUI3 được sử dụng trong Arduino IDE, tất cả các thư viện phải được cài đặt thủ công bằng Trình quản lý thư viện của Arduino IDE.

How Does the Application Work?

Trong cả hai phiên bản mã nguồn mở và RUI3, module WisBlock Core sẽ chuyển sang chế độ ngủ sau khi kết nối với máy chủ LoRaWAN.

Có hai sự kiện đánh thức module WisBlock Core:

  • Sự kiện cửa mở hoặc đóng kích hoạt ngắt
  • (tùy chọn) module có thể thức dậy theo một khoảng thời gian cấu hình được để gửi thông điệp <Tôi vẫn ổn> đến máy chủ LoRaWAN.

Mọi thứ khác được xử lý ở chế độ nền bởi RUI3 hoặc WisBlock-API.

Xem mã nguồn mở và mô tả trên Github.

Giấy phép

Tác phẩm này được cấp phép theo

Creative Commons — Public Domain

CC0

Không yêu cầu ghi công
Remix & phái sinh Được phép
Sử dụng thương mại Được phép

File mô hình

TẤT CẢ FILE MÔ HÌNH (4 Tập tin)
Đang tải files, vui lòng chờ...
Vui lòng đăng nhập để bình luận.

Chưa có bình luận nào. Hãy là người đầu tiên!

Vui lòng đăng nhập để khoe bản in của bạn.

Chưa có bản in nào được khoe. Hãy là người đầu tiên!

Remix (0)