HS-S37P 水位传感器

HS-S37P 水位传感器

1、介绍

水位传感器专为水深检测而设计,可广泛用于感应降雨,水位,甚至液体泄漏。当将水位传感器放入水中时,水位没过铜线越多模拟值越大,读取水深传感器模块的模拟值,在串口打印出来,如需知道水深,我们直接将传感器放探测部分前面的一点点放入水中,这样我们就可以知道刚放入水中时的模拟值,知道这个值之后我们可以得出一个公式: 当前模拟值为CA ,放入水下时的模拟值为DA,水深 =(CA-DA)/100。

2、原理图

水深传感器-HS-S37P 原理图 点击查看

3、模块参数

引脚名称

描述

G

GND(电源输入负极)

V

VCC(电源输入正极)

S

模拟信号引脚

  • 供电电压:3.3V / 5V

  • 连接方式:PH2.0端子线

  • 安装方式:双螺丝固定

4、电路板尺寸

5、Arduino IDE示例程序   

注意:程序上传时如果提示库文件报错,请先导入库文件!
Arduino IDE 库文件下载及导入教程:
点击查看

示例程序(UNO开发板):

volatile float num;
volatile int Buzzer;
void setup(){
 num = 0.0;
 Buzzer = 6;
 Serial.begin(9600);
 pinMode(A2, INPUT);
}
void loop(){
 //水深传感器接A2.,蜂鸣器接uno开发板D6
 //检测水越深,水深传感器模拟值越大;反之,水深传感器模拟值越小
 num = long(analogRead(A2));
 Serial.println(num);
 delay(500);
 if (num > 670) {
 //大概大于3cm
 pinMode(Buzzer, OUTPUT);
 digitalWrite(Buzzer,HIGH);
 } else {
 pinMode(Buzzer, OUTPUT);
 digitalWrite(Buzzer,LOW);
 }
}

6、ESP32 Python 示例(适用于Mixly IDE /米思齐)

开发板选择 Python ESP32 【ESP32 Generic(4MB)】切换为代码模式上传

注意:程序上传时如果提示库文件报错,请先导入库文件!
米思齐(Mixly)IDE ESP32库文件下载及导入教程:
点击查看

示例程序(ESP32-Python):

import machine


pin2 = machine.Pin(2, machine.Pin.OUT)
adc32 = machine.ADC(machine.Pin(32))
i = 0
while True:
    i = adc32.read_u16()
    print(i)
    if i >= 50000:
        pin2.value(1)
    else:
        pin2.value(0)

7、米思齐 Mixly 示例程序(图形化语言)

示例程序(UNO开发板):点击下载
注意:程序上传时如果提示库文件报错,请先导入库文件!
米思齐(Mixly)IDE Arduino库文件下载及导入教程:点击查看

示例程序(ESP32开发板):点击下载
注意:程序上传时如果提示库文件报错,请先导入库文件!
米思齐(Mixly)IDE ESP32库文件下载及导入教程:
点击查看

8、测试环境搭建

Arduino环境搭建

准备配件:

  • HELLO STEM UNO R3 开发板 *1

  • HELLO STEM UNO R3 P 扩展板 *1

  • USB type-c 数据线 *1

  • 水位传感器模块(HS-S37P)*1

  • 有源蜂鸣器模块(HS-F07P)*1

  • PH2.0 3P端子转杜邦线 *2 或 PH2.0 3P双头端子线 *2

电路接线图:

Micropython环境搭建

准备配件:

电路接线图:

9、视频教程

视频教程:点击查看

10、测试结果

Arduino UNO测试结果:

器件连接好线之后,将上述程序上传到 Arduino UNO 开发板之后, 打开Mxily串口监视器,将水位传感器模块慢慢放入水中,串口输出水深传感器的模拟值大于670(相当于大于3cm),蜂鸣器响起。