介绍
研究程序控制米家插座的由衷是我有这样一个需求:
手机在无线充电时,自动打开小电风扇散热,手机从无线充电器上拿走后,自动停止小电风扇。
无线充电器位置固定不移动,放一个小电扇对着吹;
市面上没有一个现成的解决方案,只有风冷无线无线充电,感觉散热效果也是不佳的。
手头有的配件:
小米智能插座Wi-Fi版:一个插座,2个USB接口,支持电量统计
Redmi无线充电器30W
USB小电风扇
思路:
检测功率,使用USB小电风扇是的功率为3W
判断 功率>4时 打开usb开关,否则关闭usb开关
python代码
from miio.chuangmi_plug import ChuangmiPlug
import time
sec=10#检测间隔
def fun1():
ip='插座ip'
token='插座token'
s = ChuangmiPlug(ip=ip, token=token)
while(True):
try:
v=s.status() #获取设备状态
if v.load_power>4 :#判断当前功率
if v.usb_power==False:
s.usb_on() #打开USB电源开关
else:
if v.usb_power==True:
s.usb_off() #关闭USB电源开关
except:
pass #捕捉获取信息出错的异常
finally:
time.sleep(sec)
def main():
while(True):
try:
fun1()
except:
pass #捕捉获取信息出错的异常
finally:
time.sleep(sec)
main()
在linux环境用pyinstaller打包成可执行程序,扔到ikuai的linux虚拟机里做成服务跑着
完美