#第五届立创电子设计大赛#原生HomeKit空调遥控与多传感器

创建时间:10个月前

项目主题:智能家居

视频

  • 原生HomeKit空调遥控与多传感器-自我介绍.mp4

  • 原生HomeKit空调遥控与多传感器-项目介绍.mp4

  • 原生HomeKit空调遥控与多传感器-功能演示_720P.mp4

描述

<h2>原生HomeKit空调遥控与多传感器</h2> <p><img src="//image.lceda.cn/pullimage/SP3cp4sticEK1cQwMIiljabdReexXBlq5LUkPNNh.png" alt="LC5-主图.png" /></p> <h3>自我介绍</h3> <p>大家好,我是王小菜,业余DIY爱好者。</p> <h3>项目介绍</h3> <p>本作品是一款DIY智能家居配件,具备<strong>空调红外遥控、温湿度与光照传感器</strong>等功能,支持<strong>Apple原生HomeKit协议</strong>。</p> <h3>1、项目详情</h3> <p>本作品的主要功能是空调遥控、温湿度与光照感应,支持HomeKit协议与Web控制。</p> <ul><li><strong>原生HomeKit配件</strong>:可独立运行,无需homeassistant或homebridge等任何的桥接服务器,在iPhone、iPad、Mac等的家庭APP中可直接添加本配件,支持Siri语音控制、家庭自动化、多设备iCloud同步等</li> <li><strong>空调控制</strong>:空调开关、模式、温度、风速、扫风、灯光(数显)等,支持数十种空调红外协议</li> <li><strong>传感器</strong>:温湿度与光照实时数据、历史曲线,导出CSV格式数据文档</li> <li><strong>迷你尺寸</strong>:PCB长宽3.6x3.6cm,外壳长宽3.88x3.88cm厚1.64cm</li> </ul><p>注:配件实现了Apple公开的<strong>非商用版</strong><code>HomeKit Accessory Protocol (Non-Commercial Version)</code>,参见<a href="https://developer.apple.com/support/homekit-accessory-protocol/" target="_blank" rel="noreferrer noopener">developer.apple.com</a>。</p> <p><img src="//image.lceda.cn/pullimage/AEPZf1MGBKANpDKdGnoN4TP3L4CjFE4BDAkY2UZZ.jpeg" alt="带壳示意图 samll.jpg" /></p> <h5>1.1 HomeKit功能</h5> <p><img src="//image.lceda.cn/pullimage/ylw5O6K8JFuDJzZBpzspmweBU4iDvFkqua4ugJ3O.jpeg" alt="homekit all.jpg" /></p> <ul><li>在iPhone、iPad、Mac等苹果设备中的家庭APP中添加本配件,配对码为<code>111-11-111</code></li> <li>配件包括空调与空调灯光,温度、湿度、光照</li> <li>支持控制空调的开关、模式、温度、风速、扫风、灯光(数显)</li> <li>支持实时更新温度、湿度、光照</li> <li>支持Siri语音控制、自动化、多设备iCloud同步、远程控制</li> </ul><p>注:远程控制、自动化等功需配置家庭中枢,需iPad或Apple TV或HomePod作为家庭中枢,参见家庭APP自动化标签页面中的介绍</p> <h5>1.2 Web功能</h5> <p><img src="//image.lceda.cn/pullimage/W1dhjkoMP3t0rOF5qqXllSpIpJcOA60w20dBMX3G.jpeg" alt="Web_all_2.jpg" /></p> <ul><li> <p>访问<code>http://{ip}</code>Web页面,<code>{ip}</code>为ESP8266联网后的IP地址,提供比HomeKit更加全面的控制与功能</p> </li> <li> <p>空调:配置空调红外协议与子型号,支持静音、强劲、经济、经济、过滤等高级空调控制</p> </li> <li> <p>传感器:查看实时数据、按天/周/月查看历史记录折线图,File Manager中可导出近一月的CSV格式历史数据</p> </li> <li> <p>历史数据:传感器历史数据存储于ESP8266内置Flash中,基于SPIFFS文件系统,每10分钟记录一次,保留近30天内的历史数据</p> </li> <li> <p>其他功能:查看系统信息,WiFi配置,内部文件浏览,在线固件升级</p> </li> <li> <p>支持Apple-WebAPP全屏模式:Safari浏览器->分享->添加到主屏幕即可</p> </li> </ul><h3>2、面临的挑战及解决的问题</h3> <p>本作品的主要目标是实现原生HomeKit配件,相对于其他智能家居方案,优势在于可直接接入Apple HomeKit智能家居系统,体验苹果统一的、全家桶式的良好智能家居体验,在iPhone、iPad、Mac、Watch上均可控制与使用该配件。</p> <p>苹果HomeKit是成熟的智能家居协议之一,HomeKit协议已公开发布多年,长期以来普遍采用桥接服务器的方式将DIY设备接入HomeKit,如homeassistant或homebridge,成本较高且配置较为复杂。</p> <p>之前注意到github上 <a href="https://github.com/maximkulkin/esp-homekit" target="_blank" rel="noreferrer noopener">esp-homekit</a>项目可以实现ESP8266独立运行HomeKit协议,可抛弃配置桥接服务器,美中不足的是该项目是基于非乐鑫官方ESP8266开发SDK编写,编译工具配置复杂,上手难度较高。</p> <p>今年上半年疫情期间我个人将该项目移植到乐鑫官方Arduino SDK中,发布<a href="https://github.com/Mixiaoxiao/Arduino-HomeKit-ESP8266" target="_blank" rel="noreferrer noopener">Arduino-HomeKit-ESP8266</a>,兼容Arduino一键编译,降低了编译门槛,提供了一种在Arduino环境下支持HomeKit的易用方案。另外该库也被乐鑫官方推荐为<a href="https://www.espressif.com/zh-hans/news/ESP_Apple_HomeKit_ADK" target="_blank" rel="noreferrer noopener">ESP8266上实现HomeKit的替代方案</a>。</p> <h3>3、项目硬件、软件关键点</h3> <h5>PCB</h5> <p><img src="//image.lceda.cn/pullimage/P2i7G99J2gnJcwjkKlV30vA2LDQuD8Gh2cdb4YOS.jpeg" alt="PCB all small.jpg" /></p> <ul><li> <p><strong>紧凑布局</strong>:尺寸仅3.6x3.6cm,仅比一元硬币(直径2.5cm)大些。</p> </li> <li> <p><strong>全向满功率红外发射</strong>:布局参考了米家和天猫精灵的成品万能遥控器,使用7枚5MM发射管,实现360°全向遥控。使用N-MOS管驱动发射管,依据发射管数据手册中的最大电流(100mA)选取限流电阻,实际电流约92mA,实测一般房间中可全向覆盖,发射管背向空调时依赖墙面反射也可正常遥控。</p> </li> <li> <p><strong>高精度温湿度传感器</strong>:使用来自瑞士Sensirion的SHTC3高精度传感器,精度±0.2℃ / ±2%RH,范围-40~125℃ / 0~100%RH,该芯片的DFN 4脚的封装相对于DFN 8脚封装的SHT3x焊接相对容易。</p> </li> <li> <p><strong>数字光照传感器</strong>:使用BH1750数字环境光传感器,支持0.11lx精度,范围1 - 65535 lx,焊接略有难度。</p> </li> <li> <p><strong>热隔离设计</strong>:主要发热元件ESP8266与降压芯片位于PCB顶面右侧,温湿度芯片SHTC3位于PCB底面左侧,另在SHTC3挖出PCB槽孔与其他部分隔离,最大限度降低元件发热对温湿度传感器的影响。</p> </li> <li> <p><strong>烧录接口</strong>:使用ESP-01布局,可直接接上板载自动烧写电路的ESP-01烧录工具实现一键烧录,也可使用其他USB-TTL烧录工具烧录。</p> </li> </ul><h5>外壳</h5> <p><img src="//image.lceda.cn/pullimage/Q0HLTitYJNSZsmIL7a1sWF0FYoWx7cyHvl58HBVh.jpeg" alt="外壳 all.jpg" /></p> <ul><li> <p><strong>迷你尺寸</strong>:长宽3.88x3.88cm,厚1.64cm,4枚长约6mm的M2螺丝固定。</p> </li> <li> <p><strong>3D打印模型</strong>:可使用半透明(本色)、透明PLA打印,中间2图中上侧为半透明材料(PCB未焊接),下侧为透明材料(PCB已焊接)。半透明材料的实物比较有质感,透明材料的实物则是另一种感觉。顶盖无需添加支撑,底盖中仅需磁铁圆槽部分需要支撑,模型尺寸专为0.2mm层厚、0.4mm喷嘴优化。</p> </li> <li> <p><strong>散热设计</strong>:顶盖大范围散热口,增强散热,底部SHTC3完全外露,降低元件发热对温湿度传感器的影响。</p> </li> <li> <p><strong>磁吸固定</strong>:背部可粘贴2.5cm直径的磁铁(大小与1元硬币相同),可以将该配件吸在任何含铁的表面,也可以使用双面胶固定。全向满功率红外发射,磁吸摆放位置比较自由。</p> </li> </ul><h5>软件</h5> <ul><li> <p>使用我个人开源的<a href="https://github.com/Mixiaoxiao/Arduino-HomeKit-ESP8266" target="_blank" rel="noreferrer noopener">Arduino-HomeKit-ESP8266</a>实现HomeKit协议,可直接实现原生HomeKit配件。</p> </li> <li> <p>使用crankyoldgit开源的<a href="https://github.com/crankyoldgit/IRremoteESP8266" target="_blank" rel="noreferrer noopener">IRremoteESP8266</a>库实现空调遥控红外编码与解码,支持数十种型号空调红外协议。</p> </li> </ul><h3>4、项目材料清单</h3> <table><thead><tr><th>名称</th> <th>型号</th> <th>数量</th> </tr></thead><tbody><tr><td>ESP8266/ESP8285</td> <td>ESP-01F, 2M Flash 宽温版</td> <td>1</td> </tr><tr><td>光照传感器</td> <td>BH1750FVI</td> <td>1</td> </tr><tr><td>温湿度传感器</td> <td>SHTC3</td> <td>1</td> </tr><tr><td>红外发射</td> <td>5MM发射管,如IR333C</td> <td>7</td> </tr><tr><td>红外接收</td> <td>VS/HX1838红外接收管</td> <td>1</td> </tr><tr><td>LED指示灯</td> <td>0805贴片蓝色</td> <td>1</td> </tr><tr><td>3.3V降压芯片</td> <td>AMS1117-3.3, SOT89</td> <td>1</td> </tr><tr><td>N-MOS管</td> <td>AO3400A, SOT-23</td> <td>1</td> </tr><tr><td>1206贴片电容</td> <td>100U</td> <td>1</td> </tr><tr><td>排针</td> <td>4针2排</td> <td>1</td> </tr><tr><td>0805贴片电阻</td> <td>10R, 50R, 470R, 1K,10K</td> <td>若干</td> </tr><tr><td>0805贴片电容</td> <td>0.1U, 10U</td> <td>若干</td> </tr></tbody></table><h3>5、项目图片</h3> <p><img src="//image.lceda.cn/pullimage/A1QsNdp2GdHHWVwvvXtsGK3R6Bsah0JmgWTPrrR6.jpeg" alt="PCB_logo.jpg" /> 以上为PCB图片焊接完成的实物图与立创EDA中的2D渲染图,顶面与底面均带有大赛logo。</p> <h3>6、项目演示视频</h3> <h5>6.1、视频上传大赛官网</h5> <p>已上传。</p> <h5>6.2、B站视频标题和链接</h5> <p><strong>自我介绍:</strong><a href="https://www.bilibili.com/video/BV1jf4y1X7c3/" target="_blank" rel="noreferrer noopener">第五届立创电子设计大赛:DIY自制原生HomeKit空调遥控与多传感器-自我介绍</a></p> <p><strong>项目介绍:</strong><a href="https://www.bilibili.com/video/BV13a4y1j7hJ/" target="_blank" rel="noreferrer noopener">第五届立创电子设计大赛:DIY自制原生HomeKit空调遥控与多传感器-项目介绍</a></p> <p><strong>功能演示&性能测试:</strong><a href="https://www.bilibili.com/video/BV1AD4y1o7qX/" target="_blank" rel="noreferrer noopener">第五届立创电子设计大赛:DIY自制原生HomeKit空调遥控与多传感器-功能演示&性能测试</a></p> <h3>7、是否首次公开发布</h3> <p>本项目是首次公开。</p> <h3>8、开源文档</h3> <p>原理图与PCB完全使用立创EDA制作,在<a href="https://diy.szlcsc.com/p/EDAUSER001/homekit-kong-diao-yao-kong-yu-duo-zhuan-gan-qi" target="_blank" rel="noreferrer noopener">本项目</a>中发布,可在编辑器中打开。 固件、外壳模型见附件。</p> <h3>9、参考文献</h3> <p>点击链接了解更多详情:<a href="https://www.szlcsc.com/go/dsxq" target="_blank" rel="noreferrer noopener">https://www.szlcsc.com/go/dsxq</a></p>

文档

Sheet_1

HOMEKIT_IR_SENSORS_LC5

BOM

ID Name Designator Footprint Quantity
1 LED-TH_BD5.0-P2.54 U10,U7,U5,U9,U4,U8,U6 LED-TH_BD5.0-P2.54 7
2 ESP-01F U11 ESP-01F 1
3 BH1750FVI U13 BH1750FVI 1
4 MICRO-USB-5.9-1.35 USB1 MICRO-USB-5.9-1.35 1
5 100U C5 C1206 1
6 ESP-01-PROG-WXC U1 ESP-01-PROG-BACK 1
7 AO3400A Q4 SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR-WXC 1
8 AMS1117 U2 SOT-89_L4.5-W2.5-P1.50-LS4.2-BR-WXC 1
9 SHTC3 U14 SHTC3-SMD-NO_EP-WXC 1
10 HX1838 U12 HX1838 1
11 0.1U C2,C3 CAP-0805 2
12 10U C1 CAP-0805 1
13 50R R7 RES-0805 1
14 10K R12,R4,R11,R10 RES-0805 4
15 10R R6,R5 RES-0805 2
16 1K R13 RES-0805 1
17 470R R3 RES-0805 1
18 LED LED1 LED0805-FD 1

附件

附件名 下载
baseV8.stl
coverV8.stl
HOMEKIT_IR_SENSORS__2M_Flash.bin

评论(29)

成功
工程所有者当前已关闭评论
Caffreyfans 回复

该项目可媲美市面上售卖的万能红外遥控,值得推荐!

LCDS 回复

记得上传相关视频至大赛官网和B站哟!

王小菜 回复

功能演示视频开头,手持本diy配件嘿Siri开关空调只是针对性演示,配件的红外为全向满功率发射,与成品万能遥控器一样,可实现全屋红外覆盖。实际效果可以参考10分41秒处的视频内容。

jixin001 回复

见到了好几个WIFI的方案,手机APP的交互方式还是太复杂了。

王小菜 回复

@jixin001 本方案原生接入了HomeKit,主要控制端是iPhone、Mac、Watch上的家庭APP,以及Siri语音。另外纠正一点本方案无手机APP,仅有Web端(支持了Apple WebAPP运行模式,所以看起来和APP一样),Web端主要是HomeKit的补充,HomeKit协议目前未定义传感器历史数据查看方式,故把该功能做到了Web端。另外Web端网页与传感器历史数据也是由ESP8266直接提供与存储的,没有远程服务器,整个方案硬件主控与数据存储只有ESP8266。

jixin001 回复

@EDAUSER001 我不是说本项目使用了某个复杂的APP。而是说这个方案还需要一个APP来支持(你这里是IOS上的家庭APP),其实交互起来很复杂。我手机也安装有几个APP,本来觉得会很方便,后来发现还是遥控器香。生活场景中遥控器通常会放在某个随手拿到的地方,随手按一下遥控器比物联网设备响应速度快多了。不过你这里支持Siri会方便很多,我可以躺床上叫一声【手动狗头】。

LCDS 回复

“GD32杯”第五届立创电子设计大赛【网络人气TOP榜单】更新中,入榜TOP10将获得1000-5000元奖励,详见:https://diy.szlcsc.com/posts/77584d2f66a34eed97ebf5ae488004fb

王小菜 回复

@jixin001 家庭APP是所有苹果设备本身内置的APP,iPhone、Mac、Watch、iPad、TV都是内置的,另外苹果也有自己的智能音箱HomePod。比较新的设备都是支持息屏 “嘿 siri” 的(就是不用点亮屏幕,直接喊Siri来干活就行,自4年前的iPhone 7开始),可以直接把手机当智能音箱来用。
而且有iPad或者HomePad的话配置为家庭中枢可以实现异网访问与控制。
苹果这套HomeKit是拥有完整自成体系的智能家居方案。

Tao173 回复

@jixin001  我只能说,你要么没有用苹果,要么不了解苹果的智能家居生态多好,我完全支持项目主人的看法,浏览器发送桌面也是不错的创新,从硬件到软件,很棒。

lideshu 回复

很棒 冒昧问下 项目合作方面可以私聊吗

eric_chan 回复

这感觉是高仿抄袭iobroker论坛里H大的方案。。

eric_chan 回复

喔看到了,竟然提到了ha,就肯定是借鉴或参考了,本身H大就是开源的项目。。

王小菜 回复

@eric_chan 这位同学不好意思,我是Arduino-HomeKit-ESP8266的原作者,https://github.com/Mixiaoxiao/Arduino-HomeKit-ESP8266

89C2051 回复

@王小菜  我抄我自己😂

89C2051 回复

@jixin001  全家小米就好了

wuxiandian1955 回复

您好,我是《无线电》杂志的编辑,觉得您的制作挺有意思的,想跟您约稿,不知道是否可以?

王小菜 回复

@wuxiandian1955 您好,感谢关注,可以联系我的个人邮箱 mixiaoxiaogogo@163.com

shinyzhuo 回复

您好,文末的工程附件可以告诉我哪个对应哪个吗....我看程序是一脸懵....
然后,图中“ESP8266”部分,写的是ESP-01F,这个01f是esp8285,这8266和8285程序是通用的嘛?

王小菜 回复

@shinyzhuo .bin是编译好的固件,.stl是外壳模型(可用于3D打印)。ESP8285和ESP8266是完全通用的,唯一的区别是ESP8285的Flash是内置的所以封装体积更小。ESP8266的Flash是外挂的,封装体积都很大。本固件适用于2MB及以上Flash的ESP8285或者ESP8266。

shinyzhuo 回复

@EDAUSER001 搜嘎,谢谢解惑

LCDS 回复

恭喜您的项目在第五届立创电子设计大赛中获得优胜奖和人气奖!

Whateverrr 回复

请问 AO3400A 的具体规格是多少呢?以及 ESP-01-PROG-WXC 是 PCB 板上的吗?

czkm2015 回复

有成品嘛?  想买一个试试

Whateverrr 回复

想知道贴片是自己焊的还是嘉立创弄的。

王小菜 回复

@Whateverrr








名称元件
N-MOS管AO3400A, SOT-23
排针4针2排
王小菜 回复

@Whateverrr 自己焊就可以

SUPERUSR 回复

有链接吗?最近在搜集这方面信息

SUPERUSR 回复

这个网页界面怎么实现的,开源部分没找到

a1051116338 回复

这个Wi-Fi密码换了的话应该要怎么进入配网模式呀

goToTop
svg-battery svg-battery-wifi svg-books svg-more svg-paste svg-pencil svg-plant svg-ruler svg-share svg-user svg-logo-cn svg-double-arrow