另一个智能家居设备


参赛作品


在过去三年中从事家庭自动化,我试图跟踪该领域中的所有新设备。 最近,展览吸引了国内生产的新设备的注意。 搜索互联网后,我没有找到有关它们的任何信息。 我觉得很奇怪,因此决定与制造商联系(我不会指出)。 谈话后,我设法获得了一个月的测试样品。 一个月后,我决定分享我对该产品的印象。

制造商说明


根据制造商的说法,所研究的设备是一个平台,使您可以创建用于监视和管理基础设施的自动化系统。 该平台允许您开发集中式和分布式系统,包括连接任何智能设备,并且系统的功能由安装的软件确定。

制造商声明该设备的以下特征:
中央处理器•CPU:Allwinner H5,四核64位Cortex A53
•内存:1GB
•存储:8GB eMMC,MicroSD卡
作业系统•Linux Debian或Ubuntu
通讯技术•网络:Gbps以太网
•WiFi:802.11b / g / n
•蓝牙:4.0双模
•无线电:2.4 GHz
•2 x USB主机
•1 x RS485
输入/输出端口•4个“干”触点350 v / 120mA
•4个输出12 v / 1A
•4个输入0-12 v
状态指示•OLED显示屏
•LED
营养学•直流12 v

我们为客户做准备


该设备有两种版本:仅裸机版本和带有软件的现成解决方案。 我得到了第一个选择,但更有趣的是-在哪里嬉戏幻想。

该设备的外观很苦涩:


设备外壳可将其安装在DIN导轨上的机柜中,并占用四个模块的宽度。

在前面板上是:

  • 展示
  • 四个按钮;
  • 设备状态的LED指示灯(“红色”-禁用,“绿色”-供电,“蓝色”-指示处理器活动);

掩盖位于:

  • I / O连接器(乍看之下,它们的数量可能不足,但此刻我会说一点儿低一点);
  • RS485接口
  • 电源连接。

所有的连接器都是拧紧的,这让我很高兴,因为我不喜欢夹紧。 盒子的右侧没有连接器和控件,通常对于将设备更紧密地安装在机柜中很有用。

所有连接器均组装在左侧:

  • 可移动的WiFi天线;
  • 2个USB;
  • 1个
  • 音频插孔。

WiFi天线会干扰USB设备和网络电缆的连接。 必须将其调低,或使用电缆将其移到机柜的前部,第二种选择可能更正确,从而改善了信号电平。

我们继续进行“打开病人的过程”(将整个箱子组装在门闩上,不难拆卸),然后看一下里面的东西/打开前盖,然后看看:


  • OLED显示屏SSD1306(128x64px):屏幕肯定很小,但是您可以获得的信息很少;
  • 根据名称判断,四个按钮可对设备进行本地控制,用于控制屏幕上的信息输出;
  • 电源管理按钮(如ATtiny13后来发现的那样进行电源管理);
  • RGB LED
  • 铭文下方是无线电模块的天线。

我们进一步进行研究-打开机箱,看到该设备由三块板组成:主板,处理器板连接到该板上,而上面描述了“上”板的“上”板通过电缆连接到该板上。 我们将更仔细地研究它们:



  • 处理器模块是单板计算机NanoPi NEO Plus2。 不太夸张的OBC,但从技术角度来看非常有趣。 你可以在这里阅读。


在主板上位于:

  • 防止极性反转(我们认为“防止傻瓜”已经不错);
  • XL4005E1 5A上的DC-DC转换器很高兴他们没有在强大的肖特基二极管(12A)上受阻,但是线圈上缠着一根细线-3A会拉动,但我不再用它装了,转换器的冷却多边形是在板子的背面制成的,增加工作信心(控制ATtiny13的转换器);
  • 其余细节都包含在标准方案中:用于3.3 v的AMS 1117稳压器,MCP23017扩展器,用于组织RS485接口的SP3485,ADS1115 16位ADC,大气压传感器BMP180的出现令人惊讶。


在“上”板的背面安装了:

  • RTC模块DS3231;
  • PCF8574端口扩展器负责处理按钮的单击;
  • 带放大器的无线电模块nRF24L01P。

使用和编程


正如我已经说过的那样,我精疲力尽,不得不检查模块的运行并自己创建脚本。 他不懂哲学,Armbian参加了Linux程序集,并用Python进行了所有编程-快速,廉价且愉快! 所有微电路对于许多业余无线电爱好者来说都是众所周知的;找到描述和基本使用方法将并不困难。

在研究了设备之后,形成了一个大概的任务清单:

  1. 通过“干”触点的输出连接接触器220v。 (获得可控制的电源线)
  2. 标准安全和火灾传感器连接到两个12v / 1A输出和两个输入。 (获得安全和消防系统,而无需访问遥控器,但这通常不是必需的)。
  3. 连接到自由输入和输出,泄漏传感器和带12v电驱动器的球阀。 (获得防止泄漏的保护)。
  4. 提升WEB服务器并编写管理界面(获取远程控制)。
  5. 检查通过无线电,WiFi和其他设备的RS485的连接(检查建立分布式网络的可能性)。
  6. 检查USB调制解调器的操作。
  7. 检查作为路由器的操作。



为了进行测试,我迅速组装了一个架子并开始玩得开心:

ATtiny13已经编程过,我没有碰过它,而是让它按照制造商的计划负责电源。

MCP23017,ADS1115,PCF8574,DS3231,BMP180-所有这些均根据I2C起作用,因此,了解该总线的操作将立即确定大约80%的代码。 由于制造商已经设置了设备的地址,因此一切都按预期启动。

nRF24L01P在SPI总线上运行,其中的示例也足够了。 我联系了Arduino上的一对设备,一切正常。

RS485已使用Eastron SDM220功率计在Modbus协议上进行了测试。 进行阅读,没有惊喜。

华为E1550调制解调器中的USB插头确定了所有内容,拿起了VPN客户端并联系了家庭服务器。 安装了Web服务器并播放了遥控器。

WiFi模块既可以在客户端模式下也可以在接入点模式下工作。 他将模块置于AP模式,安装了DHCP服务器,配置了iptables并接收了WiFi路由器。

安装本地Blynk服务器不会引起问题。 已检查ESP8266的工作。 来自智能手机的控件正在工作,并显示读数。

至此,所有任务已经完成,智能家居的中央设备已经启动! 似乎一切都已编程,配置简单容易,或者我是个天才。

我向您保证不是这样! 我已经遇到了大多数微电路和模块,所以我踩了一把耙子,额头很疼,但颠簸过去了,但知识仍然存在!

处理器模块的功能足以解决我的任务,在测试过程中,处理器的平均负载不超过15%。 eMMC内存和MicroSD卡的存在将允许OS和软件的复制。 未连接USB设备时的功耗约为300 mA。 有了这种消耗,就不难用几个小时的电池来组织不间断电源进行5次工作。

所选的用于构建外围设备的元件基础非常可靠,这使人们对设备在24x7模式下的无故障运行充满信心。

设备本身上少量输入和输出的存在可以通过485总线和无线电模块的存在得到充分补偿,也就是说,构建分布式控制系统并不是很困难,并且板上的一组输入和输出可以用于电源柜中的本地控制。

结论


制造商声明的该设备是否可以集成所有智能设备? 一口气,你可以说会。 但是不幸的是,没有足够的无线电模块用于433 MHz,CAN总线,ZigBee支持,但是RS485、2.4 GHz无线电模块和WiFi的存在将允许连接足够多的设备,并且通信协议可以用软件实现。

我再说一遍,有问题的设备有两种版本:用于构建分布式控制系统的完全现成的解决方案,仅硬件。 我认为,仅当您不想处理编程和懒惰时,才可以购买现成的解决方案。 在其他情况下,采用该平台并自己进行编程会更有趣。

我目前不知道设备的价格。 我认为,如果制造商的价格不超过13 tr。 对于“裸机”版本,则购买此设备非常有趣。 在中国购买了所有零件并将其包装在一个包装中后,您不太可能会变得便宜。

竞争对手可能是Wiren Board 5 。 它赢得了端口数量和可能的接口数量,但失去了处理器模块的功能。 这不会影响标准任务,但是在本地安装Blynk服务器或制作语音控制模块可能会出现问题。 如果有人尝试在WB5上执行此操作,请在评论中发表评论。

PS:在完成本文之后,我还在板上找到了ATSHA204加密芯片。 它支持SHA 256加密算法,非常适合对称身份验证任务。 好吧,这绝对是极客们!

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


All Articles