wifi插座、无线控制的灯很多了,但是有时候并不是很方便去改现成的电路,所以有了手机遥控去自动按开关的想法。
开关是这样的:
在侧面装个舵机,转动时就会带动按钮了~~
远程控制wifi当然比蓝牙方便多了,自然是esp8266了,直接SDK开发。
电路图就非常简单了,直接esp8266驱动舵机就好,可以直接驱动。
如下:
使用了一个esp8266-12N的转接板,做简单修改:
红线是新加的线,蓝线是板子上本来的线,要用刀划断,驱动舵机不用GPIO2是因为GPIO2连在esp8266-12N上的led,GPIO0又作为烧录切换增加按键做为了按键功能,所以舵机就换成了GPIO4了
实物图:
电路很简单,就这样了,后面如果方便就上传个使用个视频上来,已经用了半年,非常方便,可开可关。
esp8266软件部分
根据自己的需要,完成以下部分:
- 按钮高度不同时,舵机转动角度不同,所以需要设置最大转动角度,因为开关两个,所以设置两个角度
- 需要不影响按钮的正常使用,所以舵机需要停止在不影响按钮动作的位置,设计为舵机转动一点时间后,自动回到不影响按钮使用的平衡位置
- 可设置多长时间回到平衡位置,
- 可设置平衡位置对应角度
- esp8266需要连接wifi,必须可以使用SmartConfig功能连接wifi
- 为方便后期升级,增加OTA功能
- 手机可控制,使用tcp/udp通信
- 局域网内,手机端可以询问设备ip地址,无需手动设置
Android部分
Android其实就是tcp+udp通信了,之前做个一个wifi控制的灯,现在把两个合在一起了(截图没截灯控制部分)
使用方式:
esp8266,GPIO0作为按键,按下上电即为烧录程序,烧录后重新上电,长按按键直到8266上的灯常亮,此时用手机段配对设备,等待一会就能连上了.
将舵机固定在合适位置,安卓端在按钮上下滑即可打开设置界面,设置好按下角度,平衡角度,按下延时时间,就可以使用了.
功能还可以加很多,比如定时之类的,不过现在够用先这样了