shineblink 水位测量传感器

722 阅读2分钟

水位测量传感器

一、传感器介绍

在这里插入图片描述
Water Sensor传感器结构简单,价格便宜,可以通过暴露在电路板上的平行线路和液体的接触来测量液体的深度,检测的液位深度值被传感器以电压信号的方式输出。但由于被测量的水或其他液体纯度及内含杂质的不确定性,该传感器仅适用于精度要求不是太高的场合,更多的是希望用该传感器来判断水位是否涨跌,以及涨跌的大概幅度。

二、接线图

在这里插入图片描述

三、完整代码

--配置Core的USB口以虚拟串口模式工作,这样print()输出的内容就可以在电脑串口终端上显示了
LIB_UsbConfig("CDC")
--配置AD电压采集功能,最大值采样值4096对应3.6V输入电压
--当通道采集满1个点时缓存满,每个点的采集时间间隔为300ms
LIB_ADConfig(1,300000)
--开始大循环
while(GC(1) == true)
do
    --每隔300ms查询A0通道是否转换完成
    --开发者也可以将传感器接至A1-A3中的任一通道,也可以多个通道接多个传感器,用法都和下面一样
    LIB_DelayMs(300)
    A0_full_flag, A0_buf = LIB_ADCheckBufFull("A0")
    if A0_full_flag == 1 then
        --打印输出A0通道的AD采样值以及对应的电压值
        print(string.format("A0=%04d Voltage=%.2fv",  A0_buf[1], A0_buf[1]*3.6/4096.0))
    end
end

四、实验过程及结论

步骤一:把传感器放入空杯中观察
在这里插入图片描述
在这里插入图片描述
可以看到在无水状态下时传感器输出的电压值在0V
步骤二:把传感器的一半浸入水中观察
在这里插入图片描述
在这里插入图片描述
可以看到在水位达到传感器测量半程状态下时传感器输出的电压值在1.81V左右
步骤三:把传感器全部浸入水中观察
在这里插入图片描述
可以看到在水位达到传感器测量全程状态下时传感器输出的电压值在1.87V左右
步骤四:把传感器从水中拿出来观察
在这里插入图片描述
可以看到即使把传感器从水中拿出来后,传感器表面仍然有水分,此时输出的电压值在0.85V左右

结论:
通过上面实验可以看出,传感器在"无水"–>“半程”–>“满程”–>"脱水"这四个状态输出的电压值分别为:0.00V, 1.81V, 1.88V, 0.85V。

可以看出并不能简单的把水位深度和传感器输出电压值用线性关系描述。所以我们在实际应用中需要对被测液体进行实际的测量标定才能将传感器的输出电压和实际液位建立数学关系。
更多详情请参看 shineblink.com官网链接