『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
楼主: kay7758

求水位(液位)传感器推荐

[复制链接]

0

主题

78

帖子

1254

积分

金牌会员

Rank: 6Rank: 6

积分
1254
金钱
1176
HASS币
0
发表于 2019-5-12 14:08:50 | 显示全部楼层
suwill 发表于 2018-9-2 09:07
目前水位可以量化了,一般太阳能只有20%50%75%100%4个档位,通过读取电阻值可以获得,(不方便到卫生间里 ...

能否共享下代码?
回复

使用道具 举报

7

主题

181

帖子

2180

积分

金牌会员

Rank: 6Rank: 6

积分
2180
金钱
1999
HASS币
0
发表于 2019-12-20 16:35:17 | 显示全部楼层
suwill 发表于 2018-8-1 21:34
思路是这样的,arduino两组模拟电压(电阻)检测4芯传感器,通过串口发到esp6266,然后esp8266转成mqtt就可以 ...

求教程,这个想了很久了,对于水位,感觉可以通过分压,然后8266检测电压值来确定,一个四档,这个比较好弄。温度的话可以10度一个档,检测几个固定的值来确定。
8266可以同时测量2组电压吗?
回复

使用道具 举报

7

主题

181

帖子

2180

积分

金牌会员

Rank: 6Rank: 6

积分
2180
金钱
1999
HASS币
0
发表于 2019-12-25 12:13:04 | 显示全部楼层
suwill 发表于 2018-8-1 21:34
思路是这样的,arduino两组模拟电压(电阻)检测4芯传感器,通过串口发到esp6266,然后esp8266转成mqtt就可以 ...

可以考虑直接用8266或ESP32的ADC口检测电压值
回复

使用道具 举报

7

主题

181

帖子

2180

积分

金牌会员

Rank: 6Rank: 6

积分
2180
金钱
1999
HASS币
0
发表于 2019-12-25 15:53:57 | 显示全部楼层
suwill 发表于 2018-8-1 21:34
思路是这样的,arduino两组模拟电压(电阻)检测4芯传感器,通过串口发到esp6266,然后esp8266转成mqtt就可以 ...

那个太阳能温控里的就是MF58的温敏电阻,B值应该是3950,假设使用100K的,可以先分压,取得A0电压值再通过计算得出温度的值。
假设为100K的3950 温敏电阻。5度时阻值为254.2K,25度时为100K,105度时为5.7K。
为保证105度时,分压后电压不超过1.1V,考虑分压电阻用2.85K。
3.3V正级接2.85K电阻,然后接温敏电阻,中间出线接8266的A0口。
1、先读取电压V
2、根据电压V计算温敏电阻Rt当前值
Rt=2850*(3.3-V)/V
3、根据Rt可计算出当前温度值
temp=1/(1/(273.15+25)+log(Rt/100000)/3950)-273.15

以上依据的是下面公式:
Rt = R *EXP(B*(1/T1-1/T2))
对上面的公式解释如下:
1.       Rt 是热敏电阻在T1温度下的阻值;
2.       R是热敏电阻在T2常温下的标称阻值;
3.       B值是热敏电阻的重要参数;
4.       EXP是e的n次方;
5.       这里T1和T2指的是K度即开尔文温度,K度=273.15(绝对温度)+摄氏度;
比如 NTC热敏电阻 10K (型号:MF52AT) 5%精度 B值:3950 1%
10K就是25度的温度
当0度时 T1=0+273.15,T2=25+273.15 B=3950

现在问题是,8266只有一个ADC口,水位和水温需要2个电压值,在软件和硬件上怎么实现用一个ADC口检测2个电压值
回复

使用道具 举报

7

主题

181

帖子

2180

积分

金牌会员

Rank: 6Rank: 6

积分
2180
金钱
1999
HASS币
0
发表于 2019-12-25 16:03:52 | 显示全部楼层
loog 发表于 2019-4-27 20:33
华硕AC68U路由器做家庭MQTT HASS服务器,ESP8266+水位传感器完美解决

求教程,谢谢
回复

使用道具 举报

7

主题

181

帖子

2180

积分

金牌会员

Rank: 6Rank: 6

积分
2180
金钱
1999
HASS币
0
发表于 2019-12-25 17:02:34 | 显示全部楼层
本帖最后由 xlsj519 于 2019-12-25 17:05 编辑
suwill 发表于 2018-8-1 21:34
思路是这样的,arduino两组模拟电压(电阻)检测4芯传感器,通过串口发到esp6266,然后esp8266转成mqtt就可以 ...

我又看了下ESPHOME的官网,英语不大行,只能看明白大体的意思。ESPHOME是支持直接测量NTC电阻的当前温度的。
https://www.esphome.io/components/sensor/ntc.html
这样就更简单了,使用两个GPIO口,例如D5、D6,D5接水温、D6接水位,D5、D6轮流打开,经过分压取得不同的电压值输入到A0,通过ESPHOME的内部命令,计算出水温和水位
回复

使用道具 举报

3

主题

36

帖子

366

积分

论坛积极会员

积分
366
金钱
330
HASS币
0
发表于 2019-12-29 13:28:43 | 显示全部楼层
我也在搞这个,希望你这个能行,持续关注啊!现在我都想曲线救国用31865和HC-SR04搞了,不过这个精度更高,但是太阳能不好安装超声波。
回复

使用道具 举报

7

主题

181

帖子

2180

积分

金牌会员

Rank: 6Rank: 6

积分
2180
金钱
1999
HASS币
0
发表于 2019-12-29 21:07:24 来自手机 | 显示全部楼层
darknight 发表于 2019-12-29 13:28
我也在搞这个,希望你这个能行,持续关注啊!现在我都想曲线救国用31865和HC-SR04搞了,不过这个精度更高, ...

现在有可以wifi接入的太阳能热水器温控仪了,直接买现成的
回复

使用道具 举报

3

主题

36

帖子

366

积分

论坛积极会员

积分
366
金钱
330
HASS币
0
发表于 2019-12-31 21:37:43 | 显示全部楼层
你说的那个接入不了Hass啊!没意义,我还是研究这个ESPhome吧
回复

使用道具 举报

1

主题

167

帖子

608

积分

高级会员

Rank: 4

积分
608
金钱
441
HASS币
0
发表于 2020-1-29 17:57:22 | 显示全部楼层
本帖最后由 suwill 于 2020-1-29 18:09 编辑
xlsj519 发表于 2019-12-25 15:53
那个太阳能温控里的就是MF58的温敏电阻,B值应该是3950,假设使用100K的,可以先分压,取得A0电压值再通过 ...

温度有数字的,不锈钢那种,我买过,唯一的坏处就是得破坏原来的“温度+水位”二合一传感器

这个事放了好久了,大概说下思路:

太阳能检测水位原理图

太阳能检测水位原理图


水位实际上就是个电阻的阻值,arduino或者esp8266分压之后用ADC引脚可以通过电压的方式得到电阻的阻值,然后软件里map一下,这个是小事。

温度的那个用DS18B20,金属探头,3pin,vcc、gnd、data那种数字的,不需要占用8266唯一的模拟脚。

O1CN01NRnhQ81aChBueajIW_!!738263294.jpg

软件大概就是:wifimanager配网,然后根据ChipId发布不同的toptic到mqtt,这样就差不多了,反馈应该没什么意义。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-5-10 04:33 , Processed in 0.068111 second(s), 32 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表