智能家居-语音控制分三个步骤。 Raspberry + HomeKit

亲爱的朋友们!

我们决定与您分享现成的预算解决方案,希望您能感谢我们的努力。 该解决方案已被证明有效。 在附件中,您可以下载所有程序文件和设置。 我们免费提供一切。

为客户打造智能家居基本上是一个可以“吹嘘”给朋友的“玩具”,但是这些游戏不值得集成商花大力气!

作为“智能家居”的组成部分,它将涉及一些与房屋照明有关的问题和解决方案。

问题1:如果系统是集中式的,则在中央控制器发生故障的情况下,程序将无法控制点亮继电器。

解决方案 :使用带有内部逻辑的分布式控制模块,根据我们的经验,OWEN生产的可编程继电器PR200是最成熟的设备之一。 我们建议使用220v版本,因为 家用开关是专门为此电压而设计的,数字输入上的逻辑“单位”问题将更少。

图片

该设备具有8个通道(继电器),可以使用内部逻辑(作为分布式系统)进行编程,另外还连接了2个扩展模块。 每个通道有8个通道,但PR200本身发生故障时(8个通道对24个通道),有可能没有更多的控制灯,如果您打算保存,请考虑一下!

图片

尽管程序看起来很简单,但我们花了好几年的时间才做到无懈可击,但Aries公司相对较新(在PR200出现之后)增加了从外部和内部管理网络变量的功能。

有关该程序的更多信息:

I8是在房屋或房间中具有8个开关的数字输入

RTRIG-前置检测器,对于形成单个脉冲(每个程序周期)必不可少

TO INT-可以省去Bool到INT的转换,但是Owen Logic中的Slave网络变量不支持bool。

XOR-异或,或者如果在一个输入1上,则在输出1上,如果两个输入都应用1,则输出将被重置,主程序元素决定通过按下开关来打开或关闭灯。

Relay8是一个输入和输出网络变量,如上所述,最近我们可以将这两个变量与一个Modbus寄存器(地址)一起使用,这使我们可以在不使用不同触发器的情况下,在外部和内部将必需的状态保存到该变量。 这些网络变量具有非易失性存储器,因此当电压跳变时,照明将返回其最后状态。

TO BOOL-将INT转换为BOOL值,因为输出继电器的状态为False / True。

步骤1 :可从文章末尾的链接下载8个频道的程序,并将其上传到可编程继电器,不要忘记为您的PR200 / 110版本更改目标平台,否则设备将无法闪烁!

问题2:标准家用开关的状态为打开或关闭,这从根本上与智能房屋中的照明控制逻辑相矛盾,我们需要不固定(带弹簧)的按钮。

解决方案1:使用不固定的现成按钮,大多数开关制造商都可以使用这些按钮,例如Shneider,Biticino,ABB等。

解决方案2:使用带闩锁的典型家用开关时,抓住PR200 / 110的输入状态发生变化,然后向上面下载的程序发送脉冲,如果灯点亮,指示灯将熄灭,反之亦然(不建议这样做,因为一段时间后所有按钮都会上下混合)

问题3:大多数智能家居系统制造商的高层没有达到美学和功能上的完美。

解决方案:我们使用Apple的HomeKit,它功能强大,方便且具有语音控制功能。

步骤2:将 PR200 / 110与HomeKit固定在一起

为此,需要以下工具:

推荐的演示解决方案:

Raspberry Pi 2/3/4及其USB rs485转换器(例如,使用Alliexpress)

图片

对于在工业设计中基于Raspberry CM3 +模块的安装,建议使用2个内置RS485端口的解决方案:

图片

最好使用跳线(而不是通过wifi)将基于Raspberry的设备连接到电源和家庭网络。

连接设备的RS485端口和PR200 / 110。

接下来,确定路由器发布的IP地址并通过SSh(例如,通过PUTTY程序)进行连接(默认情况下,用户名是pi password raspberry)

安装用于将HomeKit协议对接在较高级别并将Modbus Rtu在较低级别对接的节点红色软件,请参阅此处的安装说明。

不要忘记使您的节点红色服务启动。

为节点红色安装HomeKit和modbus软件包

cd ~/.node-red npm install node-red-contrib-homekit npm install node-red-contrib-modbus sudo reboot 

我们正在等待重新启动,然后转到浏览器“您的IP”:1880(例如192.168.1.110:1880)

我们复制下一个流(文章末尾的代码),然后将节点红色规则引擎粘贴到Web界面中

转到菜单->导入->插入流代码

图片

图片

图片

您必须通过单击“部署”按钮来应用流

如果发生故障,我们建议您在“ Modbas Request”和“ Write Reset FC6”插件(示例/ dev / ttyUSB0)的Modbus设置中正确指定RS485端口。

为了确保真实性,请重新启动SSH设备àsudo reboot

第三步 在Apple设备上设置应用程序非常简单。

图片

在我们的示例PR200中随意给我们的房子起个名字

图片

添加并同意使用未经认证的配件

图片

我们输入访问码,在本例中为111 11 111,可以在每个HomeKit附件的Node-red设置中替换它。

图片

我们将所有的灯具添加到房间中,这可以稍后完成。

我们希望您能愉快地使用这种便宜但非常方便的系统。

注意事项:

我们不会煽动HomeKit协议的商业使用,开发人员会采取与APPLE许可协议相反的所有措施来使用HomeKit协议!

可以在这里免费下载ARIES PR200的程序和NodeRed的脚本。

Source: https://habr.com/ru/post/zh-CN476540/


All Articles