收藏官网首页
查看: 981|回复: 14

[经验分享] SOC方案,利用ESP12F模块来做智能插座(完结)

15

主题

53

帖子

649

积分

高级会员

Rank: 4

积分
649
QQ
发表于 2017-9-22 10:11:22 | 显示全部楼层 |阅读模式
ESP8266模块首单6.8元
本帖最后由 彩色笔 于 2017-10-15 22:33 编辑

      从一个什么都不会的小白,到做出一款智能插座我用了三个多月的时间,其中趟过的坑真是数不过来。在此特别,特别,特别真诚地感谢群里和论坛上的各路大神。尤其是下面这位大神给我帮助最多。感谢感谢。 00.jpg

    可能教程更新过程会比较慢,但我在此保证肯定会完结,这是我向以上大神的承诺。也是让后面来的小伙伴们更快地做出自己想要的东西。程序和PCB我会全部公开。     先来几张图镇镇场,吸引下你们的学习兴趣。
    IMG_20170913_141031.jpg IMG_20170913_105203.jpg Screenshot_20170922-102329.jpg
软件条件:

          1、Eclipse安装了吗?我推荐用安信可的。论坛上搜,有相关帖子。
          2、Android Studio安装了吗? 我只会安卓的,而且还特别菜。
          3、其它软件,PS,AD分别用来处理图片和PCB布板,当然你也可以用别的软件来做。                           





硬件条件:
          1、ESP12F ,淘宝上安信可店12元左右。
   以上准备好了,我们就去官网自己的账号下建立产品项目吧。

第一部分,官网上建立项目
机智云关于插座这块有模块数据点,我们可以利用下,如下图操作。
    01.jpg
02.jpg
03.jpg
2、修改和增加数据点
  
01.jpg 02.jpg
关于数据点要说一下,后面系统自动生成APP端和MCU端,都是根据这里的数据点“标识名”来生成的,所以取名时花点心思,方便以后自己或别人判读。生成后端代码之前,这里要多想想需要哪些数据点,以后再来增加,操作起来就很麻烦了。增加后需要重新生成。  看到这里,如果有好方法的朋友,一定不要吝啬,请分享下你的办法帮助更多人。
3、应用配置生成

01.jpg
02.jpg
4、选择“应用开发”生成APP端的框架
01.jpg

在“
Product Secret:”处填入编码,这个编码在“基本信息”栏里找,如下图



02.jpg
点击:“显示完整密钥”,在密码框内输入你账号的登录密码,然后将完整的密钥复制下来。粘贴到应用开发内。然后点击,“生成开发包”,等待APP端开发包生成后下载下来。



5、生成设备端代码,点击“MCU开发”
     ESP12F本身就是个单片机,考虑到插座体积和功能,我选择SOC方案,够用了。
     ESP12F选择32M。现在官方功能有增加了,有不同内存版本的可选了。以前询问机智云技术,推荐用12F来搞,现在难道ESP-01S也可以做了?  至于哪个型号对应哪个容量 ,还没查,后期补,知道的帖下留言。
    01.jpg
输入密钥后,同样生成。等待后,下载下来。

第二部分,硬件原理图和PCB板设计

外壳厂家地址:https://detail.1688.com/offer/554695408415.html?spm=0.0.0.0.u6xmmj
        在进行硬件电路设计前,首先要考虑的是内部供电问题,衡量各方面条件,最终内部供电采用深圳深鸿盛 KP3211SG,非隔离降压IC。注意:如果采用KP3210 APP上操作快速多次开关时,动作会失控,最终原因是电流不够导致的。故你们在选IC时,输出电流要>=500mA 为好。
       为什么采用这款IC,首先有两点考虑,1、输出电压可调,2、供电电流能够满足。3、电路结构简单
继电器常规最小控制电压是5V的,而ESP12F  供电电压是3.3V,可采用ASM1117-3.3V 线性降压IC,这里压降要尽量小,如果供电电源输出是12V的,将会导致线性降压IC损耗过大,发烫,长期使用会损坏。故输出电压我选择5V。

      ACS712是霍尔型电流传感器,根据通过的电流会产生一个电压,我们经过分压后,传给ESP12F的AD引脚进行采样,根据计算得到能耗值。该功能目前我还未进行,只是PCB上有设计。关键AD采样不怎么明白,希望AD操作成功的朋友指教一二。



01.jpg

      PCB板上,继电器采用的HF- JQX-115F-I- 005 012 024-1HS3(555) 6脚 5V 16A宏发继电器,体积有些大,需要改造下外壳。如果用宏发5V 10A的 就不必改了,尺寸刚好。
03.jpg
   

第三部分 手机APP端UI设计

      完成PCB布局后,在发出打样的这几天里,我们可以进行APP端的设计。
      解压缩文件后,我们可以看到如图两个文件,入门推荐用Android Studio来做。

          01.jpg

       将图中AndroidStudio文件拷贝到项目文件夹内,改名为“SmartSocket”,然后用Android Studio软件导入项目。
       现在让我们来把机智云的框架改成自己的,从启动到操作界面来个大换血。

      打开文件后,下图就是程序中的各个界面了。

          01.jpg


下面就是每个界面对应的layout文件和其名称,找到后对应修改。
01.jpg
   activity_gos_user_login.xml


02.jpg
activity_gos_device_list.xml注意:新版APP生成包,在进行这版面编辑时,出现错误,“Missing classes”鼠标滚动到下面。找到下图,点击"Build",可修复错误
01.jpg

03.jpg
activity_gos_airlink_choose_decive_workwifi.xml
04.jpg
activity_gos_modelist.xml
05.jpg
activity_gos_airlink_ready.xml

06.jpg
activity_gos_device_control.xml
花费最多时间的就是这个界面了,程序操作的界面,这个地方我们需要会一些PS技术来美化它。

01.jpg
  
   功能和界面设计,从配色到布局可以先在PS中设计好,今天将老的界面升下级,这次要增加一个定时功能,老版是只有延时开/关功能。
   在这里分享个人经验,可以从网站下载相关的 PSD文件,将有用的文件导出成单个素材,先在PS中预览效果,满意保存下来,后期程序中引用。最终的PSD文件放入项目文件夹中保留。   由于个人技术比较菜,又喜欢比较炫的效果,目前只能PS了。如果有安卓技术可以,建议还是在 Android Studio中用文本来写,这样中、英文版本后期好处理。


第四部分   APP端程序代码添加
       找到activity_gos_device_control.xml打开,设置界面布局,PS好的按钮和背景替换。这些操作详细方法就不提了,自己搜索吧。参考机智云官方的方法来进行。地址如下:
      http://docs.gizwits.com/zh-cn/quickstart/AndroidAppFrame.html
01.jpg
设置好的界面样式
02.jpg
如何快速找到该界面对应的JAVA文件。 点击左下角“Text”,找到如上图的C标识,点击,可快速定位到对应的JAVA文件。    程序文件我上传了,内部每处用户可添加的地方,我都作了注释,可参考。我也是边百度学习边修改的,程序可优化之处,请大神提出建议。
    APP端可利用项目内“虚拟设备”来进行上位机端的调试。    其它部分的APP修改,我就不多说了。套路差不多。PS后修改。
04.jpg 03.jpg

插座APP端Java.rar (6.53 KB, 下载次数: 36)

0

主题

3

帖子

19

积分

新手上路

Rank: 1

积分
19
发表于 2017-9-22 18:37:20 | 显示全部楼层
感谢楼主分享,坐等下文

4

主题

104

帖子

2183

积分

金牌会员

Rank: 6Rank: 6

积分
2183
发表于 2017-9-23 11:10:38 | 显示全部楼层
先上个代码撒,让我们预热下

0

主题

6

帖子

96

积分

注册会员

Rank: 2

积分
96
发表于 2017-9-25 19:14:17 | 显示全部楼层
教您5分钟接入机智云,实现傻瓜式开发
支持   持续关注中   正在准备楼主的这些材料 跟着楼主走。。。
发表于 2017-9-25 21:19:43 | 显示全部楼层
感谢分享,esp8266的ADC使用可以看看这个帖子http://club.gizwits.com/thread-5453-1-1.html
1、机智云QQ群:G1群:104975951 G2群:491509598 G3群:287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits、 机智云智能宠物屋go-iot
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

0

主题

6

帖子

96

积分

注册会员

Rank: 2

积分
96
发表于 2017-9-27 20:13:02 | 显示全部楼层
楼主更新得怎么样了啊?

0

主题

15

帖子

527

积分

高级会员

Rank: 4

积分
527
发表于 2017-9-30 14:47:56 | 显示全部楼层
大神的技术贴,必须持续关注,期待更新....

0

主题

1

帖子

85

积分

注册会员

Rank: 2

积分
85
发表于 2017-10-5 19:56:06 | 显示全部楼层
正在学习,希望楼主能尽快更新

0

主题

15

帖子

527

积分

高级会员

Rank: 4

积分
527
发表于 2017-10-7 10:01:28 | 显示全部楼层
注册成为机智云开发者,手机加虚拟设备快速开发
很多代码不会写,等着学习一下,希望楼主更新下文,多谢

0

主题

1

帖子

21

积分

新手上路

Rank: 1

积分
21
发表于 6 天前 | 显示全部楼层

感谢楼主分享!学习中。。。

0

主题

15

帖子

527

积分

高级会员

Rank: 4

积分
527
发表于 6 天前 | 显示全部楼层
你好,user_main.c能提供资料吗

15

主题

53

帖子

649

积分

高级会员

Rank: 4

积分
649
QQ
 楼主| 发表于 6 天前 | 显示全部楼层
本帖最后由 彩色笔 于 2017-10-12 16:47 编辑
寒枫 发表于 2017-10-11 19:10
你好,user_main.c能提供资料吗

user_main.c  上面已帖出。请查看。

0

主题

4

帖子

40

积分

新手上路

Rank: 1

积分
40
发表于 前天 21:20 | 显示全部楼层
真不错,很详细,感谢分享

0

主题

4

帖子

76

积分

注册会员

Rank: 2

积分
76
发表于 1 小时前 | 显示全部楼层
教您5分钟接入机智云,实现傻瓜式开发
学习了,谢谢分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

© 2011-2017 Gizwits ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表