SKU:RB-02S034 水流量傳感器

來自ALSROBOT WiKi
跳轉至: 導航搜索


02S03401.png

目錄

產品介紹

Water Flow Sensor 水流傳感器,主要由塑料閥體 、水流轉子組件和霍爾傳感器組成。此傳感器應用于水的流量測控系統(tǒng),例如安裝在熱水器進水端,對水的流量進行檢測。Water Flow Sensor 外觀輕巧靈便,體積小,便于安裝,葉輪內部鑲有不銹鋼珠,永久耐磨,密封圈采用上、下受力的結構永不漏水?;魻栐捎玫聡M口。并且用灌封膠封裝防止進水,永不老化。所有原材料均有符合ROHS 檢測標準??梢赃m合各種控制器和開發(fā)板,如:Arduino 控制器、STC 單片機、AVR 單片機等。

規(guī)格參數

  1. 進水口內徑:8.5mm
  2. 進水口、出水口外徑:20.12 mm
  3. 輸出波形:方波
  4. 工作電壓范圍:DC +3V~+24V
  5. 最大工作電流:15mA(DC +5V)
  6. 負載能力:≤10mA(DC +5V)
  7. 使用溫度范圍:≤80℃
  8. 使用濕度范圍:35%~90%RH(無結霜狀態(tài))
  9. 允許耐壓:水壓1.75Mpa 以下
  10. 保存溫度:-25℃~80℃
  11. 保存濕度:25%~95%RH
  12. 輸出脈沖高電平:>DC 4.5V(輸入電壓DC +5V)
  13. 輸出脈沖低電平:<DC 0.5V(輸入電壓DC +5V)
  14. 精度(流量——脈沖輸出):1~30L/min±1%以內
  15. 輸出脈沖占空比:50±10%
  16. 輸出上升時間:0.04uS
  17. 輸出下降時間:0.18uS 流量
  18. 耐熱性:在80±3℃環(huán)境中放置48h ,返回常溫1-2h 無異常,且零件無裂紋、松馳、膨脹、變形等現象,精度變化10%以內。
  19. 耐寒性:在-20±3℃環(huán)境中放置48h ,返回常溫1-2h 無異常,且零件無裂紋、松馳、膨脹、變形等現象,精度變化10%以內。
  20. 耐濕性:在40±2℃,相對濕度90%~95%RH 環(huán)境中放置72h 取出后,絕緣電阻1MΩ以上。
  21. 耐久性:在常溫下,從水口通入0.1Mpa 水壓,以接通1S,斷開0.5S 為一循環(huán)。
  22. 流量---脈沖特性參照表
Water Flow Sensor02.jpg
  • 引腳定義
紅色線(IN):接正極(+)
黃色線(OUT):信號輸出線
黑色線(GND):接負極(-)

Water Flow Sensor模塊結構圖

Water Flow Sensor03.jpg

管徑說明:

G1/2
G -- 55 度非螺紋密封管螺紋,屬惠氏螺紋家族.標記為 G 代表圓柱螺紋.國家標準可查閱 GB/T7307-2001
1/2 -- 4分管
說明:將1英寸化為8分,4分即管外徑為4/8*25.4 = 12.7mm

Water Flow Sensor使用注意事項:
此款水流傳感器嚴禁劇烈沖擊以及化學物質的侵蝕。嚴禁拋擲或碰撞。檢測介質不宜超過120℃。安裝方式為垂直于地面,且傾斜度不超過5度。


工作原理

水流量傳感器又可以叫做霍爾傳感器,傳感器整體是由 ABS 工程塑料制成,上下兩端為 4 分螺牙,中間為一個圓柱體結構,并有三根導線接出,紅色為正極、黑色負極、黃色信號輸出端。其內部還有一個五葉輪和霍爾元件,背面有一個箭頭,這個箭頭表示水流的方向,所以如果更換的時候不能裝反。
霍爾傳感器中,五葉輪連接磁性轉子,轉子置于線圈中,線圈即為霍爾集成元件,當水通過水流轉子組件時,磁性轉子轉動并且轉速隨著流量變化而變化,霍爾傳感器輸出相應脈沖信號,反饋給控制器,由控制器判斷水流量的大小,進行調控。
內部結構圖:

02S034100.png

編程原理

水流量傳感器共引出三個引腳,分別是信號S、電源正Vcc、電源地GND,實際使用時可以將傳感器連接到 Arduino UNO 控制器的數字引腳,例如數字引腳2號
脈沖特性:
水平測試脈沖頻率(Hz)=[8.1Q -3 ]±10%(水平測試) (Q 為流量L/min )

使用方法

example1_Arduino

  • 硬件連接
水流量傳感器的黃色線連接到 Arduino UNO 控制器的數字引腳 2
水流量傳感器的紅色線連接到 Arduino UNO 控制器的電源正引腳 V 上
水流量傳感器的黑色線連接到 Arduino UNO 控制器的電源負引腳 G 上
  • 示例程序
volatile int NbTopsFan; //定義函數 NbTopsFan 為整形
int Calc; //定義函數 Calc 為整形變量
int hallsensor = 2; //定義 hallsensor 為數字口2
int flag; //定義 flag 為整形變量
void rpm ()
{
NbTopsFan++; //函數自動+1
}
void setup()
{
pinMode(hallsensor, INPUT); //定義hallsensor 為輸入信號
Serial.begin(9600); //定義波特率為9600,
Serial.print("Welcome to www.robotbase.cn"); 
delay(1000);
attachInterrupt(0, rpm, RISING); //定義中斷進程
}
void loop ()
{
NbTopsFan = 0; //NbTops 初始值為0
sei(); //初始化中斷
delay (1000); //延遲1 秒
cli(); //禁用中斷
Calc = (NbTopsFan * 60 / 8.1); //(脈沖頻率×60)/ 8.1 Q,=流量L /小時
Serial.println(Calc);
}
  • 程序效果

將例子程序上傳到 Arduino UNO 控制器中,如果上傳無誤,Arduino IDE 的串口監(jiān)視器中會顯示當前測試的流量值,如下圖所示:

02S03404.png

example2_Arduino

  • 主要硬件
  • Starduino UNO R 3 控制器 * 1個
  • Arduino 傳感器擴展板 V5.0 * 1個
  • Water Flow Sensor * 1個
  • RS360 齒輪自吸直流小水泵 * 1個
  • 繼電器模塊 * 1個
  • 大按鈕模塊 * 1個
  • Serial LCD1602 * 1個
  • 7.4V 鋰電池 * 1個
  • 3P 傳感器連接線 * 2個
  • Water Flow Sensor 連接轉接線 * 1個
  • 水泵進水管 * 1根
  • 水泵出水-Water Flow Sensor 進水轉接管(自制,實際應接6 分管)
  • Water Flow Sensor 輸水管(自制,實際應接6 分管)
  • 9V 1A 電源適配器 * 1個
  • 硬件連接
Water Flow Sensor04.jpg

具體連接順序為:

  • Water Flow Sensor連接到傳感器擴展板的數字口2
  • 繼電器連接到傳感器擴展板數字口3(另一端連接電源連接線上)
  • 大按鈕連接到傳感器擴展板數字口4
  • 串行1602液晶連接到串口
  • 示例程序
volatile int NbTopsFan; //定義函數NbTopsFan 為整形
int Calc; //定義函數Calc 為整形變量
int on = 3; //定義on 為數字口3
int key = 4; //定義key 為數字口4
int hallsensor = 2; //定義hallsensor 為數字口2
int flag; //定義flag 為整形變量
void rpm ()
{
NbTopsFan++; //函數自動+1
}
void setup()
{
pinMode(key,INPUT); //定義key 為輸入信號
pinMode(on, OUTPUT); //定義on 為輸出入信號
digitalWrite(on,HIGH); //定義on 初始信號為高電平
pinMode(hallsensor, INPUT); //定義hallsensor 為輸入信號
Serial.begin(9600); //定義波特率為9600,
Serial.print("$CLEAR\r\n"); //清屏
Serial.print("$GO 1 4\r\n");//顯示的地址為第1 行第4 列
Serial.print("$PRINT Welcome to\r\n"); //打印字符Welcome to
Serial.print("$GO 2 1\r\n");//顯示的地址為第2 行第1 列
Serial.print("$PRINT www.robotbase.cn\r\n");//打印字符www.robotbase.cn
Serial.print("$CURSOR 1 1\r\n");//光標移動到第1 行第1 列
delay(1000);
attachInterrupt(0, rpm, RISING); //定義中斷進程
}
void loop ()
{
NbTopsFan = 0; //NbTops 初始值為0
sei(); //初始化中斷
delay (1000); //延遲1 秒
cli(); //禁用中斷
Calc = (NbTopsFan * 60 / 8.1); //(脈沖頻率×60)/ 8.1 Q,=流量L /小時
cc();
if(flag != Calc)
{
Serial.print("$CLEAR\r\n"); //清屏
Serial.print("$CLEAR\r\n"); //清屏
Serial.print("$GO 1 6\r\n");//顯示的地址為第1 行第6 列
Serial.print("$PRINT ");
Serial.print(Calc);Serial.print(" L/h \r\n"); //打印字符" L/h "
Serial.print("$GO 2 1\r\n");//顯示的地址為第2 行第1 列
Serial.print("$PRINT Flow Measurement\r\n");//打印字符" Flow Measurement "
Serial.print("$CURSOR 1 1\r\n");//光標移動到第1 行第1 列
flag = Calc;
}
}
void cc()
{
if (LOW == digitalRead(key))//如果digitalRead 為低電平則執(zhí)行下面的語句
{digitalWrite(on,LOW);}//on 輸出低電平
else if (HIGH == digitalRead(key))//如果digitalRead 為高電平則執(zhí)行下面的語句
{digitalWrite(on,HIGH);}//on 輸出高電平
}
  • 程序效果

完成以上步驟后,首先給系統(tǒng)上電。系統(tǒng)上電后,按下大按鈕(使水泵運轉),從而讓水流流過水流傳感器,系統(tǒng)就可以測試流量了。
下圖為水流流量測試系統(tǒng)測試時串行1602液晶顯示圖:

Water Flow Sensor06.jpg

應用視頻

Shui liu liang 01.png

相關資料

Erweima.png
  • 產品資料

下載鏈接 :https://pan.baidu.com/s/1PIhK8fWJPkd3ux5J9J5fmg 提取碼:316p

* 產品購買鏈接:http://lifestyle201.com/goods-174.html