跳转到主要内容

MCU多功能物联网网关方案介绍

作者:Jason Tseng

网关是一个网络节点,它允许利用不同的协议来连接不同的网络。

物联网网关的兴起,主要是因为大部分传统工业用的嵌入式装置无法链接到因特网,并且绝大多数的小型连接节点因为成本或是功耗的考虑,无力提供IP层协议。

MCU多功能物联网网关是一个MCU等级的网关,它可以依据需求整合WiFi、Zigbee、BLE、NFC等协议,以及和安全模块等。
本文介绍的多功能物联网网关的硬件配置如下:

MCU:i.MX RT1050

存储器:4MB Serial Flash / 512KB Internal SRAM

WiFi:QCA4002 IoT WiFi

Zigbee:JN5189 (K32W061)

蓝牙:KW41 (optional for Thread)

NFC:MFRC630 (optional for NFC commissioning & OTA)

安全模块:A71CH (optional for secure cloud connection )

框图如下:

<center><img width="600" src="http://mcu.eetrend.com/files/2020-03/wen_zhang_/100047937-91364-1.png&q…; alt=""></center><br>

软件配置如下:

■ Amazon FreeRTOS 10 Kernel

■ Ethernet + Lwip and WLAN host SDK

■ BLE gateway

■ Zigbee 3.0 Coordinator and Gateway

■ Thread 1.1 Board Router

■ NFC node commissioning & OTA

■ Multiple cloud platform integration

■ Secure connection to cloud

■ Local File system & Database

■ Shell interactive interface

■ Demo Apps

软件架构如下:

<center><img width="600" src="http://mcu.eetrend.com/files/2020-03/wen_zhang_/100047937-91365-2.png&q…; alt=""></center><br>

以下是一个典型的应用场景:

<center><img width="600" src="http://mcu.eetrend.com/files/2020-03/wen_zhang_/100047937-91366-3.png&q…; alt=""></center><br>

这是APP的框图和显示截屏:

<center><img width="600" src="http://mcu.eetrend.com/files/2020-03/wen_zhang_/100047937-91367-4.png&q…; alt=""></center>
<center><img width="600" src="http://mcu.eetrend.com/files/filefield_paths/5.png&quot; alt=""></center><br>

这是数据流图:

<center><img width="600" src="http://mcu.eetrend.com/files/filefield_paths/6.png&quot; alt=""></center><br>

目前市面上大部分的网关几乎都是大功耗的芯片,并且是运行在Linux, OpenWRT或是Windows 10 IoT Core之上,整体成本相对较高。

而本文介绍的MCU多功能物联网网关方案有着以下优点:

1. 容易开发:
开发者有着容易上手的集成开发环境
开发者不需要具备Linux相关的知识

2. 低成本
低成本但仍旧威力强大
提供@600MHz运算能力
包含以太网络并支持WiFi

3. 简洁的架构以供二次开发
免费以及开源的软件
提供物联网应用场景完整的中间层软件,例如RTOS / IP stack / Zigbee stack / BLE stack / MQTT lib / CoAP lib /JSON lib / File system / Database / Shell / ...

4. 一站式购物
提供物联网应用完整的解决方案,包含MCU, Wireless SoC, NFC和安全模块。

本方案的开放环境如下:
① Git and SourceTree
② IAR EWARM 8.22.2 or MCUXpresso 10.2.0 (with IMXRT1050 2.4.2 SDK installed)
③ Tera Term (or Putty)
④ J-Link software 6.40

软件演示:

■ 开发板上电后后可从Tera Term或Putty上面看到如下图所示。

■ 系统会从/flash的路径加载开机脚本,并且开始shell并等待输入

<center><img width="600" src="http://mcu.eetrend.com/files/2020-03/wen_zhang_/100047937-91370-7.png&q…; alt=""></center><br>

■ 用户可以输入下列指令开始网关的流程

<center><img width="600" src="http://mcu.eetrend.com/files/2020-03/wen_zhang_/100047937-91371-8.png&q…; alt=""></center><br>

■ 在Tera Term或Putty上面,用户可以看到系统日志

<center><img width="600" src="http://mcu.eetrend.com/files/2020-03/wen_zhang_/100047937-91372-9.png&q…; alt=""></center><br>

■ 如需要更多信息可以输入’help’来得知所有支持的指令

下图是本方案与以NXP的i.MX 6UL实现的网关的比较以供参考:

<center><img width="600" src="http://mcu.eetrend.com/files/2020-03/wen_zhang_/100047937-91373-10.png&…; alt=""></center><br>

本文转自:<a href="https://mp.weixin.qq.com/s/8E-pTPvmX9eRZFR14R_l9A"><u&gt; 恩智浦MCU加油站</u></a>