Kunkune

YF-S201水流感測器:流量測量方法

YF-S201水流感測器:流量測量方法

By Kunkune | Published: 2026-10-21

Category: 操作指南

了解如何使用 Arduino 設定 YF-S201 霍爾效應水流感測器,以測量從 0 到 30 公升/分鐘的流量。逐步接線、程式碼和校準提示。

快速解答

若要使用 YF-S201 測量水流速率,請將其三條線分別連接到 Arduino 的 5V、GND 和一個數位腳位,然後讀取脈衝輸出,並使用感測器的校正係數將其轉換為每分鐘公升數。

為什麼 YF-S201 適用於流量測量

YF-S201 是一款霍爾效應流量計,每當感測器本體內的轉子轉動時,便會輸出一個數位脈衝。脈衝頻率與流量成正比,因此任何能夠計數中斷的微控制器都能輕鬆讀取。它適用於 DC 5-18V,因此與 Arduino 的 5V 電源供應搭配良好。

一個取捨:此感測器僅適用於乾淨水源。顆粒或碎屑可能會卡住轉子,因此如果水源不夠清澈,請務必使用前置過濾器。此外,出廠校正係數(通常約為每公升 7.5 個脈衝)僅為近似值;為求最佳精確度,您應透過測量已知體積的水來進行校正。

如何使用 YF-S201 測量流量

  1. 將感測器接線至 Arduino: 將 YF-S201 的紅線連接到 Arduino 的 5V,黑線連接到 GND,黃線連接到數位腳位 2(或任何支援中斷的腳位)。此感測器耗電約 15 mA,因此 Arduino 的 5V 腳位可直接供電。 常見錯誤:在您的開發板上使用了不支援中斷的腳位。在 Arduino Uno 上,只有腳位 2 和 3 可搭配 attachInterrupt() 使用。
  2. 上傳脈衝計數程式碼: 開啟 Arduino IDE,編寫一個將中斷附加到感測器腳位的程式碼。在中斷服務常式中,遞增一個 volatile 計數器變數。在 loop() 中,將固定時間間隔(例如 1 秒)內的脈衝計數除以感測器的校正係數(通常為每公升 7.5 個脈衝),即可計算出以 L/min 為單位的流量。 檢查點:請務必為計數器變數使用 'volatile' 關鍵字,否則編譯器可能會將其最佳化掉,導致讀數不穩定。
  3. 校正以獲得精確讀數: 將已知體積的水(例如 1 公升)流經感測器,並計算總脈衝數。將脈衝數除以體積,即可得到實際校正係數。然後更新程式碼中的係數。對於 YF-S201,該係數通常介於每公升 6.5 至 8.5 個脈衝之間。 常見錯誤:假設出廠係數是精確的。校正可將精確度提升 10-20%。
  4. 測試並解讀輸出: 開啟序列埠監控視窗(9600 鮑率),並讓水流經感測器。您應該會看到流量讀數每秒更新一次。將讀數與已知流量(例如使用量杯和碼錶測量)進行比較,以驗證校正。 如果沒有看到任何脈衝,請檢查接線極性。此感測器對極性敏感:反接 5V 和 GND 可能會損壞它。

本指南使用的產品

  • 0-30L/pm 水流感測器 DC 5-18V 流量計霍爾效應模組 YF-S201: 0-30L/pm 水流感測器 DC 5-18V 流量計霍爾效應模組 YF-S201 其 0-30 L/min 範圍涵蓋一般家庭流量,且霍爾效應輸出可直接搭配 Arduino 數位腳位使用,無需額外元件。
    0-30L/pm Water Flow Sensor DC 5-18V Flowmeter Hall Effect Module YF-S201
    0-30L/pm 水流感測器 DC 5-18V 流量計霍爾效應模組 YF-S201

Shop Related Products

0-30L/分 水流感測器 DC 5-18V 流量計 霍爾效應 模組 YF-S201

0-30L/分 水流感測器 DC 5-18V 流量計 霍爾效應 模組 YF-S201

$7.62 $11.90

Shop Now