欢迎来到服“造”的世界
* 项目作者:dexin
春节期间,dexin终于回到老家——寒冷又熟悉的辽宁啦!本着不作死就赖床的核心思想,本宝怎么能闲着,在老家房子里转悠一圈吼,我决定:我要给老家房子布置上智能家居!让爸妈也感受下新科技,于是乎去年火爆的微信小程序也派上了用场!
一提到DIY智能家居,相信很多人想到的核心就是hassio或者hassbian吧~但是我这次毅然决然的放弃了,因为我希望能够通过这次配置实现自己的“生态”。
点击边框调出视频工具条
效果演示视频
教程专区
教程总共包含四个步骤:
Step1 下位机的电路设计与焊接
Step2 服务器搭建
Step3 下位机Arduino代码编写
虽然硬件是核心,但是一个比较合理的用户界面那也是相当重要滴。
用户需要填写的设备认证号就deviceCenterID,用来验证用户组。当然这部分需要检验deviceCenterID单一性。
完成身份的验证后即可进入控制台。
接下来就是获取当前绑定在该用户关联的deviceCenterID下的全部设备 获取名称,状态等等
向上滑动阅览
wx.request({
url: 'https://www.***.***/****',
data: {
***: wxmlData.data.***
},
success: function (res) {
let statusData = res.data;
wxmlData.setData({
switchRooms: statusData
});
},
})
也要防止潜在bug造成的页面错跳,就算跳错了,只要没有注册还是会跳回注册页面。
向上滑动阅览
let openID = await wx.getStorageSync('openid');
wx.request({
url: 'https://www.***.***/***',
data: {
***: openID
},
success: function (res) {
if (res.data.regist) {
/*...*/
}
else {
wx.showLoading({
title: '请先完成验证',
});
setTimeout(function () {
wx.hideLoading()
wx.navigateTo({
url: '../reg/reg'
})
新设备接入可采用读取二维码的方式:既利用了小程序读取二维码比较方便的优势,又保证关键信息(设备ID和设备类型)不会出现失误。同时校验二维码信息,防止用户错误扫描~(后期二维码我会添加加密措施,进一步防止注入可能)
之后就是设备信息的填写和设备的注册。
结语:
这应该是我回家以后做得挺有意义的一件事。昨天老妈和我说,早上我爸醒了,玩手机的时候嫌灯光太暗,不爱下床就用小程序把灯打开,打开之后可开心坏了。
当然还有作为试用者之一——我可爱的女朋友还有我的母上大人都威胁我,说再看到我晚上熬夜就远程关我的灯。
现在只可以接入开关设备,当然还可以接入调光调温设备(传入量不同而已)。自己从头到尾设计这一套东西,有时候想想还是比较害怕hacker的,所以请各位高手放过我的服务器。
我接下去还会继续完善~这一版本的小程序已经发布了,好像我还是用小程序做智能家居的第一人~anyway,给大家提供一个思路。当然!!!欢迎大老板们给我投资哦,让我可以开发更多有意思的设备~
领取 专属20元代金券
Get大咖技术交流圈