切换到宽版
爱科技/爱创意/爱折腾/爱极致;技术知识分享平台,点击进入新版数码之家网站
  • 4366阅读
  • 16回复

[无线]远程USB排插——我的开关我做主 [复制链接]

上一主题 下一主题
离线zhangzhi297
 

发帖
42
M币
4117
专家
12
粉丝
47
只看楼主 倒序阅读 我要置顶 楼主  发表于: 2017-03-23
当今互联网发展奇快,网络信息的传递越来越方便,物联网是未来发展的一个大趋势。现在家家户户都有了宽带WIFI,接入网络的成本越来越低,这也给物联网创造了便利。

为了体验物联网给我们生活带来的便利,我设计了一个远程控制USB排插,基于普通USB分线器改造,使用ESP8266作为主控,使用fuhome平台实时控制,使用Yeelink上传统计数据。现在实现的主要功能有互联网web,app,微信无延迟控制,测量DC-DC降压模块温度和总电流显示并上传,通过互联网同步标准时间并显示。


下面将对一些功能细节进行介绍:

一、主控单片机采用ESP8266的ESP-12E模块,此模块集成4M flash空间用于储存程序,大部分情况来说是够用了。为eso8266编程的方法有很多,我采用的是arduino ide进行编程,使用arduino最大的优点是编程方便,有很多现成的库方便调用,比如这个插排中的ssd1306显示屏和18B20模块,对esp8266编程跟普通arduino几乎一样,这也减少了再学习的成本。

二、互联网平台我接入了两个,fuhome用来进行控制,使用udp可以直接接收数据包,几乎没有时间差,局域网内也可以进行发包,协议也比较简单,详细协议可以下载fuhome的官方文档。Fuhome也可以上传数据并记录,只不过记录的数据太少,以前的数据会被覆盖掉,所以我选择Yeelink平台进行记录,yeelink采用tcp传输数据,使用post,get等进行上传读取等命令,yeelink也可以进行远程控制,只不过客户端只能重复性查询服务器的状态才能对命令进行反应,这就会产生延时,效果不佳。



三、Esp8266总共有17个io0~16,去掉连接flash的6个还剩11个,我把这11个io全部利用,5个作为开关输入使用中断,3个连接74hc595进行控制7个USB电源的通断和一个led指示灯,2个通过USB口外接出来接ssd1306显示屏同时可以下载程序,1个接18B20单总线传输数据。Esp8266的部分io有特殊功能,开机上电时要保持高低位,所以io的上下拉电阻非常重要,我把gpio0直接接到了第一个开关上,长期保持高电平状态。我完全关闭了esp8266的串口输入,但是在上电时还是会默认输出一些信息,不过这对I2C协议的显示屏并没有影响。



四、温度模块使用18B20,单总线通信,还可以寄生电源,接线方便,程序也很方便,根据资料精度在1C°以内,分辨率1/16C°,一般应用情况都是看温度的相对变化,线性误差也没有那么重要。



五、因为ESP8266只有一个adc引脚,所以测量电流比电压更有意义。电流的测量并不简单,现阶段比较简单的方法就是串电阻测电压,为了保证电阻不会太大影响输出,测量要有正常的精度和量程,所以我把测量电阻加到了12V输入的地线之前,这样就不需要复杂的测量及转换。这样测量的电流是12V的电流,大约为5V输出的两倍。因为adc脚的电压范围为0~1V,我的测量电阻为0.33欧,所以测量精度为0.33mA,量程为3A,这对我用的普通降压模块来说就是极限了,极限情况下测量电阻的分压才1V,对12V电路来说影响不大。经过校准后的计算公式为voltage=ADC*3.3+69.3。

六、互联网校时很简单,我是用的是fuhome心跳包返回的时间,利用millis函数的系统时间计算差分时间,结果相当准确,跟电脑时间对比,显示屏的秒刷新误差在1秒之内。星期的计算也很简单,已知当前年月日,计算星期几,一个公式搞定。

七、显示屏通过绘画库函数能方便画出简单图形,当通过按键或远程改变开关状态时,显示屏能直接刷新显示。并且有表示上传数据或接受命令的小标识。

八、关于WIFI连接,使用EEPROM储存两个WIFI信息,自动连接可用WIFI,当没有可用WIFI时启动smartConfig程序,并在显示屏提示,用户使用任意一款smartConfig软件即可简单配置。配置的WIFI信息会循环覆盖。

暂时就写这么多,有很多细节都没有处理完美,接下来准备使用电流更大的降压电路,设计出pcb打印出来,这样就可以更方便拿淘宝10元包邮的劣质分线器改造自己的远程大电流插排了。

下面放出两个测试视频,仅供观看。
APP控制:
flash: http://player.youku.com/player.php/sid/XMjY1NjkxMTk2MA==/v.swf
微信控制:
flash: http://player.youku.com/player.php/sid/XMjY1NjkxOTIxMg==/v.swf
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共8条打赏M币+121专家+1
离线2545889167

发帖
13268
M币
20754
专家
302
粉丝
4860
只看该作者 1楼 发表于: 2017-03-23
请登录后查看
离线msi12

发帖
1573
M币
708
专家
18
粉丝
21398
只看该作者 2楼 发表于: 2017-03-23
请登录后查看
离线moontree

发帖
10865
M币
69773
专家
275
粉丝
476
只看该作者 3楼 发表于: 2017-03-23
请登录后查看
本帖最近打赏记录:共1条打赏M币+13
hideaway M币 +13 歡迎探討 2018-12-12
离线zhongcb
发帖
1
M币
-494
专家
0
粉丝
5
只看该作者 4楼 发表于: 2017-03-23
请登录后查看
离线好呆呆

发帖
23
M币
49
专家
1
粉丝
2
只看该作者 5楼 发表于: 2017-03-23
请登录后查看
离线ar_zxy

发帖
2628
M币
10143
专家
20
粉丝
73
只看该作者 6楼 发表于: 2017-03-23
请登录后查看
离线wenxueroom

发帖
981
M币
2378
专家
8
粉丝
57
只看该作者 7楼 发表于: 2017-03-23
回 zhongcb 的帖子
请登录后查看
离线wenxueroom

发帖
981
M币
2378
专家
8
粉丝
57
只看该作者 8楼 发表于: 2017-03-23
请登录后查看
离线dgpower

发帖
20032
M币
2885
专家
7
粉丝
222
只看该作者 9楼 发表于: 2017-03-23
请登录后查看
快速回复
限80 字节
“新手上路”发帖需审核后才能显示(请认真发帖),达到数码9级后取消此限制
 
上一个 下一个