电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>强大的MQTT盲控制器

强大的MQTT盲控制器

2022-11-22 | zip | 0.34 MB | 次下载 | 免费

资料介绍

描述

让有可用的光!

这是让我的家自动化的更具挑战性的项目之一,但也是最有价值的,因为我家里有 8 个(!)百叶窗/窗帘想要机动化以充分利用自然光。其中 4 个非常大而且很重,宽 1.5 米,长 3 米!

看看商业上可用的选项,我可能会花费数千美元来购买内置电机(我不得不承认这是优越的)的阴影,或者大约 200 美元购买由各种商业制造商制造的类似改装装置。但是查看这些选项,其中大多数都没有任何 Apple Homekit 兼容性,有时甚至没有手动控制它们的按钮 - 我正在寻找更实惠的东西!

我从 cabuu 发现了一个很有前途的设计,它有据可查,有按钮,使用现成的零件,最重要的是使用了一个非常实惠的带编码器的电机。我订购了他的几个 pcb 来测试它。

第一次测试

在 3D 打印外壳并将所有部件焊接在一起后,令我惊讶的是,使用额定最大 10V 的电机驱动器,12v 电机的动力不足。

我发现外壳的一些细节也需要改进 - 例如在齿轮环绕上添加链条凹槽或在主体上安装孔以及更改某些零件的尺寸。

由于我的百叶窗又大又重,我想以 12V 运行电机,并决定使用 Adafruit DRV8871 电机驱动器,因为它具有相似的尺寸和功能。由于我不想完全重新设计外壳,我在原始设计的基础上创建了一个电路板,但使用了更强大的电机驱动器。

修改后的电路板

 
 
 
pYYBAGN6fLuADCgvAAI9mtuL2_8293.jpg
 
1 / 2电路板背面和正面
 

电气元件的焊接和组装

我不会详细介绍如何焊接,但这里是我的方法和顺序的快速总结:

  • 2 个按钮
  • 用于 RDOWN 和 RUP 的 2 个 10k 电容器 - 将 RAO(电阻模拟输出)留空
  • 用于微控制器的母头针和用于电源的 2 个
  • 电机驱动器的公头针 - 我知道这并不理想,因为另一侧的按钮 4 个针需要焊接在表面上,而不是通过孔
  • 电机驱动板,由于电机编码器空间不足,我不得不直接焊接它们
  • 用于 D1 电源屏蔽的母头可堆叠接头,用于 12V 电源的 2 个公头针脚(注意正确的方向和方向)
  • Wemos D1 mini 的公头(注意正确的方向和方向)
  • 附件连接电机 - 大约。5cm - 从 pcb 的按钮侧出来
  • WS2812b LED 的 3 根电线 - 大约 3cm - 从 pcb 的按钮侧出来 > 将其焊接到从条带切割的 LED 上

请注意 ACC for Accessory 未使用。在未来的版本中,它旨在将光传感器连接到模拟引脚。它很容易添加,但还没有看到好处。

 
 
 
pYYBAGN6fMmAWwviAAPafG9iPAo718.jpg
 
1 / 7
 

外壳组装

一旦您打印了所有零件并在您面前组装了电子设备,它应该会更有意义。以下是步骤:

  • 使用 2 x M3 - 10mm 螺栓将电机连接到 Gear Surround
  • 加热并插入 2 x M3 - 4-6mm 黄铜加热插件到齿轮环绕的主体
  • 将 WS2812B LED 强力胶水或胶带粘到按钮外壳上。
  • 将电路板松散地放入 Button Surround
  • 确保在使用 2 x M3 - 32mm 螺栓将 Gear Surround 固定到主体之前将电线连接到电机 - 它与电缆紧密配合
  • 将电路板放置在主体的指定区域,并使用 4 x M3 - 24-32mm 尺寸的配件(塑料)螺钉将它们连接到主体上。不要过度拧紧,只要确保它没有晃动并且可以按下按钮即可。
  • 将 6mm 齿轮耦合器放置到齿轮上。使用 2 - 4 颗短平头螺钉紧密贴合和固定。确保事先能够使用六角扳手接触小螺栓!
poYBAGN6fM2AO6WuAASVyVZm4AU997.jpg
 

上传代码并首先设置!

在上传代码之前,请确保在 Arduino IDE 中输入 MQTT 凭据(MQTT 服务器、用户、密码)。我不得不使用 ESP8266 库版本 2.42,因为最新版本给我带来了问题。所需的所有其他库如下,最新的应该可以工作:

编码器

Adafruit NeoPixel

发布订阅客户端

WiFi管理器

ESP_EEPROM

主机默认称为“myblind”,但可以更改。

您还可以更改电机 (MOTORWIRE) 的方向和编码器 (ENCODERWIRE) 的接线 - 使用 1 或 0 来执行此操作,但暂时不要使用它。

成功上传代码后,您将能够通过 WiFiManager 看到并连接到“myBlind”wifi 网络连接并输入您的 wifi 详细信息,如果正确完成,它将连接到您的本地 wifi 网络并准备运行!

您将能够通过网络服务器上传未来的更新,如果您使用多个服务器,这将很有用。

注意:成功保存 WiFi 凭据后,按住 DOWN 按钮可将 EEPROM 重置为默认设置。

否则它将崩溃,因为控制器尝试读取最初尚未保存的 EEPROM 值!如果第一次没有工作,请拔下电源并再次打开电源,同时按住向下按钮。

现在保持计算机连接并连接 12V 电源适配器为电机供电

以 115200 波特率使用串行监视器。长按 UP 按钮应顺时针旋转电机,当前位置 (Pos) 的编码器值也应上升。如果不是这种情况,请将 ENCODERWIRE 值更改为相反的数字(1 或 0)。这背后的原因是一些电机编码器以一种方式接线,而另一些则以另一种方式接线。

使用 DOWN 按钮显然是一样的,但反之亦然。

连接到现有的百叶窗

您最好先组装该单元并对其进行测试,而无需将其正确连接到窗户或框架上。确保电机轴的扁平钻头朝上,并通过齿轮(使用齿轮耦合器)将链条连接到电机上。使用随附的六角无头螺栓将齿轮联轴器拧紧到电机轴上。不会太紧!

由于链槽,百叶链能够向任一侧扭转 90 度,因此我们可以将控制器平行于百叶窗安装 - 直接安装在墙壁或框架上。您希望它如何转动取决于您,但我的设置是 MOTORWIRE on 0 顺时针转动它以进行右侧安装,而 MOTORWIRE 1 逆时针转动用于左侧安装。但是你可以玩这个。只需确保按下 UP 时位置值上升,按下 DOWN 时位置值上升!

确保链条均匀拧紧,并在墙上标记 3 个孔的位置。我强烈建议在安装孔的低侧标记点,因为您很可能最终需要它们通过将装置进一步向下拉来收紧链条。随着时间的推移,金属链更容易拉伸。

一旦您对高度感到满意,剩下要做的就是用螺钉(最好是垫圈)将主体固定到墙壁/框架上!装上齿轮环、齿轮和链条、按钮环并在 12V 电源时连接!

 
 
 
pYYBAGN6fNCAXO7IAAS-T7nzAZU657.jpg
 
1 / 2
 

如何使用它!

持续长按 UP 将使百叶窗向上移动。
持续长按 DOWN 将向下移动百叶窗。

设置百叶窗位置(100%)
持续长按 UP 将使百叶窗向上移动 - 继续按 UP 直到它到达上方位置,然后快速短按 UP。LED 闪烁3 x 蓝色,1 x 紫色以确认新的向上位置

Set downPosition of Blind (0%)
持续长按 DOWN 将向下移动百叶窗 - 按住 DOWN 直到它到达下位置,然后快速短按 DOWN。LED 闪烁3 x 黄色,1 x 紫色以确认新的向上位置

忽略 EEPROM 值加电时按住 UP BUTTON 5 秒钟。随后 LED 闪烁 3 x 粉红色

重置 EEPROM 值通电时按住 DOWN 按钮 5 秒钟。随后 LED 闪烁 3 x 红色

重置所有设置,包括。WiFi 凭据开机时按住 UP + DOWN 按钮 5 秒。随后 LED 闪烁 3 x 绿色、4 x 黄色、5 x 橙色、6 x 红色

正常启动期间的 LED 顺序红色 = 最初上电时橙色 = 连接到 MQTT 服务器2 x 紫色= 读取 EEPROM 值成功1 x 蓝色 = UP 按钮顺时针旋转电机或1 x 黄色= UP 按钮逆时针旋转电机1 x 橙色= MQTT已连接LED 熄灭

 

LED 状态LED 熄灭= 百叶窗停止或未通电 ;)橙色= 没有 MQTT 连接,按钮仍然工作蓝色= 百叶窗上升黄色= 百叶窗下降1 x 绿色= 到达目标位置1 x 红色= 错误,电机没有移动1秒
 

MQTT 和 Homekit

通过 arachnetch 的惊人插件mqttthingHomebridge中实现config.json作为附件我个人将 Raspberry P Zero W 用于 Homebridge 和由Mosquito提供支持的本地 MQTT 服务器设置 Homebridge 和 MQTT 是一个不同的主题,您会在他们的网站上找到大量信息!

{
"type": "windowCovering",
"name": "myblind",
"url": "mqtt://xxxxxxx",
"username": "xxxx",
"password": "xxxx",
"logMqtt": true,
"topics": {
"getCurrentPosition": "myblind/getCurrentPosition",
"getPositionState": "myblind/getPositionState",
"getTargetPosition": "myblind/getTargetPosition",
"setTargetPosition": "myblind/setTargetPosition",
"getObstructionDetected": "myblind/getObstructionDetected"
},
"accessory": "mqttthing"
}

它值得吗?

绝对地!

经过最初的学习曲线并从一个百叶窗开始,它现在已经在所有 8 个百叶窗上运行了大约 10 个月。它可靠地工作而不会打嗝。看看成本,我会说每单位大约 40 美元,这只是我为商业产品支付的费用的一小部分。

但我有 2 台电机在第一个月就放弃了,但之后就没有了。我想由于它便宜的价格,你可能会在这里和那里买到柠檬。如果您举起重物,我建议您买一个备用的。此外,不同电机的噪音水平各不相同,但其中 80% 的电机非常安静,其余的则稍大一些。大多数只有在降低百叶窗时才会发出噪音。

随着链条随着时间的推移而拉伸,我不得不在开始时多次收紧链条张力。我建议使用带有塑料球和绳索的链条而不是金属链条——随着时间的推移,它们的拉伸度似乎要小得多!

有时,当百叶窗移动时系统重置时,我不得不重置百叶窗的起点和终点。我责怪我的中等编码技能——我很确定代码可以改进很多,但这对我来说仍然是一种爱好。

但是看到它如何与 Homekit 和 Siri 一起工作真是太神奇了。我可以说:“嘿 Siri,打开所有百叶窗”,我所有的百叶窗都会自动打开。或者说“嘿 Siri,将客厅的百叶窗设置为 50%”,或者在你离开家后通过自动化让它们关闭!值得!!!

待办事项列表和可能的改进

硬件

  • 外壳更纤薄(约 0.5 - 1 cm)
  • 可调节高度控制,无需拆卸组件即可收紧链条
  • 更好的PCB设计,避免引脚表面焊接
  • 用于 LUX 读数的光传感器附件
  • 霍尔传感器附件,用于识别打开的门或窗

软件

  • EEPROM替代品?
  • 在设置期间添加和编辑 MQTT 凭据的更好解决方案
  • 无需重新上传固件即可设置编码器和电机线方向。
  • 其他平台的实施(例如 Homeassist、Alexa 等)
  • HTML网站通过浏览器控制百叶窗作为备份?

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费