智能家居折腾记 篇五:打造手自一体挡位智能风扇(二)前文再续,书接上一回。 首先跟大家拜个年,祝各位猪年大吉! 然后给大家道个歉,懒癌发作起来真的是没救的
没错,就是这么骚,平时只能在这以“高上”床铺为椅子,衣柜顶为桌子,作为唯一的工作台。要半跪在电脑前,屁股垫着座垫一两小时,老夫的老腰和老腿,基本就废了……呵呵呵呵 好了,废话不多说了,自从上次写完硬件方面的制作,总得把事情给结了,这次就跟大家分享一下Domoticz方面的配置,看怎么配合mos板子,实现自动控制风扇。只要大家跟着老夫步伐,相信都能做出来,其实真不难。同样的道理,大家可以脑洞一下,会有更多的玩法的。但各位切记,一定要注意安全,尤其涉及到强电的部分,一定要慎之又慎,毕竟自己安全第一嘛! 好,折腾开始,先循例喊个口号打个鸡血: 生命不息,折腾不止! 如果大家一直是按照老夫前面的路子一直走过来,mos上刷的代码也跟老夫的一样,那么,你的NodeMCU板子其实已经可以接受来自网络POST过来的信息了。格式如下: http://你的板子IP地址/rpc/fanlvl POST内容:{'num':pinnumber},其中pinnumber就是你要设置为高电平的pin口 为了实现从Domoticz控制板子的pin口,我们需要自己写一个脚本(因为老夫没研究到Domoticz怎么直接POST消息 首先,在装了Domoticz的机子上,安装python3,这个步骤请自行百度,没有啥难度。 然后,在Domoticz的安装目录下,找到scripts/python目录,新建一个“setpin.py”文件:
里面的内容如下,也可以在 网盘 下载完整代码,提取码:rv05
保存退出后,将文件设置为可执行:
这里需要留意,Domoticz的用户,老夫这里的用户跟用户组是一个叫“2000”的东西,如下图:
如果你用“ls -all”命令看到的,不是与其他文件同一个用户跟用户组,可以用下面的命令来更改文件归属:
上面的命令中的2000就是你需要更改的组别及用户名 接下来,就可以测试脚本是否正确了,在命令行下输入以下命令:
此时风扇应该自动打开了1档,那么,恭喜你,已经成功了80%了! 系统返回截图:
跟着,我们就要在Domoticz中增加开关,并关联相关的脚本动作,新建一个Dummy设备:
然后新建两个个虚拟传感器,名字随便,老夫一个写“风扇档位”,另一个写“风扇定时器”;类型都选择“多段开关”,如下图:
然后在“开关”界面,就能看到两个新增的开关,点击“风扇档位”的“编辑”按钮进入编辑界面:
里面的设置,按照下图来:
从上图可以看到,当执行多段控制时,其实时执行了我们刚刚写的控制脚本,通过不同的参数,实现风扇的档位控制。 接下来,我们需要做一个定时器,风扇总不能整晚吹,否则怎么“智能”呢 在“设置”-“更多选项”-“用户变量”下面,新建一个叫“vFanTimer”的变量,类型选“整形”,如图:
这个用户变量的值,等于定时器的开关。 然后,再新建一个虚拟传感器,与风扇档位一样,选择“多段开关”类型: 放大看清楚这个开关各个段位的动作设置: 然后,在事件编辑器里面,新建一个dzVents脚本:
这里需要留意,老夫是更新到最新的Domoticz Beta版的,新建事件的方式跟旧版有点不同,而且用Chrome浏览器显示格式有点问题,用Edge却没问题 代码如下图,不想敲的,直接 传送,提取码:9dcz
注意第7、8行,里面的开关名,需要改为各位设置的开关名称,否则联动不了。 稍微解释以下代码,主要是每分钟判断,如果风扇档位不是0,则判断vFanTimer这个用户变量,如果为1,且风扇定时器的档位不为0,则判断vFanTimer变量的上次更新时间,如果上次更新时间距离当前时间已经超过档位设定的值,则关闭风扇,同时关闭vFanTimer开关,以及风扇定时档位复位为0。 最后,新建一个dzVents,叫“FanLevel”的,用来做你想做的智能方案,老夫的是在半夜某个时间点,判断风扇是否运行,以及根据档位进行调节,让风扇慢慢降低风量:
这个就没有传送门了,老夫的腰已经僵了,要抓紧时间赶紧写完它,各位自己看图敲吧。 到此,从Domoticz已经可以控制/智能控制你的风扇了,但是有个问题,如果手动按风扇的按钮调节风扇档位,Domoticz上是不能反映当前的档位值的,这时需要在Domoticz上新建一个MQTT的虚拟开关,可以接受MQTT的报文,从而调整各个开关的值:
留意红框位置,填写各位自己的MQTT服务器信息。之前在这个系列第一篇里面,就教了大家设置MQTT server,此时就用上了。 而如果你一直按照老夫的步骤走下来,NodeMCU板子上的代码中,其中有一段就是通过MQTT发送当前档位信息给Domoticz的,如下图:
需要留意,idx是Domoticz中“风扇档位”对应的值:
在MOS系统中,也需要设定相应的MQTT服务器,如下图:
好了,到此,手自一体档位的智能风扇就完成了,这里面的硬件软件结合其实很灵活的,各位可以大胆发挥脑洞,做出各种好玩的东西来,此系列暂时也告一段落了,毕竟一下午下来,老夫的老腰已经好像不属于自己的了…………赶紧去找个妹妹给老夫锤锤背 |
香港服务器多少钱一个月?哪家的香港服务器
4核4g6M50G盘20G防御云服务器价格多少钱?T
特发集团与华为签署全面合作协议
【身边的AI】高空抛物智能追溯解决方案,站
中海&华为签署战略深化合作协议
华为赵博:数字化转型成为地产企业最确定的
这款TCL K6V指纹锁不到千元即可买到?大品
凯迪仕指纹锁哪款好用?买凯迪仕指纹锁选哪