前面发文讲嵌入式系统开发,学以致用,最近开发就开发一套最简单的嵌入式智能家庭控制系统。有人觉得购买现成的智能系统不是很好吗,我觉得不靠谱,比如个人信息安全问题,多个系统整合难问题,反正闲着自己做一套家庭智能控制吧。
需求就是能够通过语音、面板开关、手机等控制家里的电灯、空调、电视、窗帘等。语音要满足基本控制需要,面板可以随意贴,手机控制不影响其他控制工作。系统要价格低廉、开发成本低、开发速度快、工作可靠、系统容易升级维护。

关于信息安全问题。

  如果采用现成互联网产品,都可能造成信息泄露的风险,特别是一语音信息、视频信息让大家觉得不放心,尽管这种可能性特别低。所以离线语音识别选用离线的。开关状态这些是否怕信息泄露,个人感觉没有必要,毕竟信息量较低。

关于集中控制单元选用

集中控制单元负责整个各种信息,根据控制信息控制电器。控制的主要网络就用WiFi,因为WiFi现在家庭都有了,方便手机控制。芯片选用ESP32,因为ESP32接口多,集成度高,芯片便宜,模块大概是十来块。内置WIFI和低功耗蓝牙控制,双核低功耗设计,三路串行接口。集中控制单元homecenter通过接受wifi信号、蓝牙模块控制信号、语言识别模块信号,转换成控制家里的控制节点的控制信号,控制节点主要包括窗帘控制、点灯控制、红外接收等。
开发语音选用MicroPython,因为比C语音更抽象,共享资源很多,维护更加容易。开始担心不稳定,经过一段时间使用后,真的不错,开发的系统稳定可靠,系统稳定运行很长时间了。不过也有问题,在线断点调试功能还不行。
离线语音控制模块价格便宜而且效果还是不错,免去我自己开发代码。采用ld3322,可以编辑150条命令。每一个语言命令通过串口输出。
蓝牙模块选用,虽然ESP32支持蓝牙接口,但是开发蓝牙也比较耗时间,特别蓝牙Mesh,ESP32 Micropython还没有支持库,只能采用现成的模块,我选用JDY透传模块,估计内部也是一个蓝牙单片机比如TI2540。这模块接收蓝牙按键信号,也可以控制一些蓝牙控制节点。有人说那样直接整个系统用蓝牙控制多好,为什么还要使用wifi,这也是没有办法,很多设备是wifi控制。蓝牙模块和ESP32也是采用串口连接。

关于随意贴的设计

随意贴设计由于供电需要采用电池,才能更加方便布置,所以选用蓝牙,加上纽扣电池,外壳采用现成的按键壳体。组装起来很简单。蓝牙配置成为平时处于休眠状态,按键时唤醒连接。蓝牙MESH网络配置,关键是配置好网络的NETID和MADDR参数就可以。这里的PCB没有用,只是采用其他人的壳体留下的PCB,按键只有电池+JDY模块+按键+壳体。

红外控制

红外控制增加一个红外管子,采用开源的红外控制代码,不过测试模拟电视、空调的红外发射码也费了不少时间。

控制节点设计

控制节点控制采用8266现成的模块ESP8266-1S,控制继电器就增加一个继电器模块,电源供电需要增加一个220v转5V供电。如果家里的机械按键能够增加一根零线,控制节点替换机械按键开关是个不错的方案。但是穿线实在麻烦,家里走线图纸也没有了所以只能改造灯泡接口部分。控制节点采用简单WEB服务器的方式,可以很方便手机控制。8266也可以允许Micropython,真心不错。
电动窗帘控制有点麻烦,没有软件接口,好在电动窗帘有个按键无线控制器。可以通过改造该控制器+ESP8266-01s实现无线控制,意思就是接收到控制命令,ESP8266-01S模拟按键信息。

HOMECENTER的软件设计是关键,体现系统的工程化设计,如果不考虑可靠性,软件代码非常简单,可以几十行就做好能使用的版本,但是系统经常会出现问题,甚至系统不可用,最后我完善工程化设计,代码增加了十倍,但系统可靠稳定,已经运行一个月了,这就充分说明系统工程化设计的重要性。后续我们再介绍。
系统后续需要完善语言提示、其他无形传感器输入的接入。

家庭智能控制系统开发相关推荐

  1. 基于机智云的嵌入式系统应用开发—空调远程智能控制系统

    摘要: 文章主要介绍了一种基于机智云iot开发平台的空调远程控制模块的应用开发,模块功能是通过智能手机的用户界面远程控制空调的工作,包括工作条件的设置和温度环境监测,开发内容包含了硬件和软件两部分,硬 ...

  2. DragonBoard 410c开发套件试用上手报告-搭建一个家庭智能管家的大脑

    DragonBoard 410c开发套件试用上手报告-搭建一个家庭智能管家的大脑 很荣幸参与创意我的无限智能应用 DragonBoard 410c开发套件免费试用有奖活动,感谢主办方的厚爱. 板子邮寄 ...

  3. c语言家庭生活计划管理系统,[参赛作品]家庭智能鱼缸

    本帖最后由 33****@qq.com 于 2017-7-1 08:40 编辑 参赛作品[智能鱼缸] 2017-07-01_021143.jpg (0 Bytes, 下载次数: 174) 2017-7 ...

  4. 带来新奇应用的HI! MORFEI 智能家居开发大赛有科大讯飞的什么“秘密”?

    得益于智能家居产业链各方的推动,越来越多的普通消费者不仅认识了智能家居,也开始购买智能家居单品.但我们发现仅仅是单品难以进一步推动智能家居行业发展,因此场景化.生态化成了众多企业推动智能家居发展的新战 ...

  5. java系统智能手表_java_智能手表开发API接口,随着移动技术的发展,许多传 - phpStudy...

    智能手表开发API接口 随着移动技术的发展,许多传统的电子产品也开始增加移动方面的功能,比如过去只能用来看时间的手表,现今也可以通过智能手机或家庭网络与互联网相连,显示来电信息.邮件.照片.新闻.天气 ...

  6. 重庆微企获5000万元风投-平板电脑和手机菜单系统-家庭智能信息终端

    重庆微企获5000万元风投 软件迷瞄准菜单生意 http://www.sina.com.cn  2012年02月10日 10:03  重庆晨报微博 开年了,40岁的蒲桂龙在江北嘉陵三村孵化园3楼办公室 ...

  7. 使用 JADE 平台进行智能体开发

    作为一名软件开发人员,我相信大家都对面向对象技术有个比较深刻的认识.面向对象技术的确为提高软件开发效率做出了巨大的贡献.但是在我们的开发过程中,面向对象也暴露了一些不足,其中最主要的不足可以归纳为:面 ...

  8. 基于Android+机智云的室内植物墙智能控制系统

    本文是由开发者设计的一个基于 Android +机智云的室内植物墙智能控制系统,打造室内小型化的可智能监控植物墙,完成在线监测温湿度.二氧化碳浓度.甲醛浓度.光照强度,并可控制水泵进行灌溉等. 基于A ...

  9. 高通Android智能平台开发总结

    高通Android智能平台开发总结 1. 高通平台android开发总结. 7 1.1 搭建高通平台环境开发环境. 7 1.2 搭建高通平台环境开发环境. 7 1.2.1 高通android智能平台概 ...

最新文章

  1. 一b变频器说明书参数一览表_电工常见的23个变频器问题整理,附专业解答
  2. 短距离车间通信V2X简述
  3. 逻辑智力题【更新中】
  4. android判断sd u盘,[Android Framework]获取U盘 SD 状态
  5. 一起开心2020暑假训练第一周
  6. bh1750采集流程图_基于MSP430和CC2530的温室大棚数据采集系统设计
  7. java随机加法题_Java简单随机加法算式
  8. 为什么是List list = new ArrayList,而不直接用ArrayList
  9. WAMP5配置本地服务器(超级详细教程)
  10. Python Scrapy中文教程,Scrapy框架快速入门
  11. erp系统软件的三层定义
  12. 数学建模竞赛 经验分享
  13. PPT文件无法打开处理
  14. 【AI每日播报】马云启动NASA计划 Intel150亿美元收购Mobileye
  15. 8代cpu核数及线程
  16. ECC椭圆曲线详解(有具体实例)
  17. Cadence PCB仿真 使用Allegro PCB SI为BRD文件创建通用型IBIS模型的方法图文教程
  18. (C++学习笔记七)运算符重载
  19. 谷歌浏览器模拟微信/QQ内置浏览器调试及js判断方法
  20. Git操作指南及工作流程(初学者必看)

热门文章

  1. 如何在Mac上创建水彩画?Art Text来告诉你!
  2. 谷歌浏览器设置启动页被hao123劫持_win10系统打开chrome会被hao123劫持怎么办?解决方案...
  3. 罗振宇“时间的朋友”跨年演讲:为做事的人服务 准确抓住小趋势
  4. Android 画闹钟
  5. java 自动点击网页_JS脚本实现网页自动秒杀点击
  6. spring boot结合shiro实现用户-角色-权限的控制(包含用户名密码登陆和手机号验证码登陆)
  7. 一篇很好的《数据分析》文章
  8. AMD 锐龙 6800H AMD显卡 看B站卡顿 特别是退出全屏的时候很卡 解决方法
  9. java通过键盘输入数组赋值并交换数组元素最大值和最小值
  10. golang语言牛顿法求平方根