MCU 厂商基本实现了物联网云连接即插即用

作者:Jack Shandle

投稿人:电子产品


互联网一词就像经常用来表示它的波浪线圆圈一样一直是模糊不清。 直观地说,我们知道“云”和“物联网 (IoT)”是同一个通用概念的不同表述。 嵌入式系统设计的关键是做到更明确的区分并理解其因果关系。

物联网是云的子集。 从硬件角度看,物联网中充满了嵌入式系统和手机等其它边缘设备,而在云的完整清单中,则包括网络服务器、应用服务器、数据服务器、路由器、网关和边缘设备。

嵌入式系统设计人员很容易认为云是如此之简单,就像为了在边缘设备和服务器、计算机或数据库之间移动数据而提供连接功能一样。 他们不可避免地会发现,尽管互联网可能仅被视为嵌入式系统和服务器之间的“一条管道”,但云不是。 如果到设计结束时才意识到这点,可能就要付出巨大代价,这就是为什么项目工程师或者管理人员在调研自己的项目时,需要确保调查到与信息技术(或 IT)运营合理相关的各方。

将各种产品与云连接会给嵌入式设计人员增加多层设计工作,尤其在安全和隐私方面。 除了云架构要建立通用、稳健的虚拟计算系统外,还有越来越多的法律对安全和隐私提出要求。 其中的原因更多地可能与社会媒体有关,而非嵌入式系统,但这一规则适用于所有数据。

另一方面,相比数据中心间每日如滚滚江河般流动的数十亿兆数据,IoT 上传输的数据就象娟娟细流,虽如此,但还是 IoT 数据特别容易出现安全漏洞,因为总体上讲,它会最终控制家庭、工厂和办公室中数量极其庞大的嵌入设备。

安全连接

嵌入式设计人员的时代在变——他们的设计范例也随之而变。 例如,我们来考虑相对较新的现象,如无线健身和健康监视器等可穿戴嵌入式设备,这些设备通常用在运动手表系统中,包括脉搏监视传感器或者用来测量健身参数的计步器。

现在的可穿戴设备通过蓝牙与手机或平板电脑通讯,然后再与电脑通讯。 云连接适用于大多数由 PC 管理的零件,这种连接已有可靠的安全措施。 在连接两端必须同时支持和实施如 SSL/TLS 等安全功能。

蓝牙核心规范 4.1 获得批准将改变这种情况,在新规范下,无需智能手机或 PC 等中转设备传感器就可直接连接云。 在其它方面,这允许嵌入式设计人员汇集多个传感器上的数据,以便在云内部计算出完整的健身报告,并通过社会媒体网站与其他人共享,达到激励目的。

智能家庭、工厂、远程监视点和连接云的汽车中的设备,都是嵌入式系统的其它实例,其安全等级应至少与电脑相同。 互联网要求嵌入式系统要注意安全和隐私的影响。

文化碰撞

在嵌入式系统和互联网之间的连接性质改变的同时,互联网本身也在向前发展。 十年前,这种表示互联网的波浪线圆圈指的是,已经连接但未真正一体化的硬件基础架构。

在今天的图中,云也是指一种基础架构,在其中的资源由可看作单一虚拟机的点来共享。 这种情况是在云软件的“魔力”般作用下实现的,并为我们提出了公开、私密、混合和社区云主题,所有这些主题均由产生它们的云软件定义和实现。

云的详细定义与本文无关,我们只讨论“选择云服务”这一概念,因为这是云连接设计的起点。

鉴于云软件的复杂性,通过云连接互联网是由第三方管理的。 如,亚马逊 (Amazon) 25% 的市场份额使其成为 IaaS/PaaS (基础架构作为一种服务/平台作为一种服务)云服务的主要供应商。

图 1 所示为提供云基础架构的公司的相对市场份额。

按照收入划分的云计算市场份额图片
 
图 1:按照收入划分的 2013 年第一季度云计算市场份额(感谢 Microchip Technology 提供数据)。

当然,嵌入式系统可以绕过云厂商,通过免费网络服务器直接与互联网连接,且这种服务器供动态网站,能够几乎同时处理成千上万个请求。 LAMP 可能就是一种典型选择,它代表了 Linux(操作系统)、Apache(http 服务器)、MySQL(数据库管理)和脚本语言 (PUP)。
然而,难以想象一个嵌入式系统不会轻易受到非法、不正当或是简单的破坏性行为的影响。
车库开门器通常就是用作一个简单页有用的基于网络的嵌入式系统实例,它就明显易受这些行为的影响。 不像开门器那样易受影响的设备也许就是智能家庭中的设备了。 例如,温控器的设定就可能被精通网络的犯罪分子监控,在这家人度假时对其房屋进行定位。 数十亿未被监视的 IoT 边缘设备在拒绝服务 (DoS) 攻击过程中是非常有用的。

从这个角度讲,如果 LAMP 服务器安全性极度不足,即使对于服务器侧开发是很好的选择,对生产服务器来说也是糟糕之举。

通过 MCU 厂商实现无缝连接

MCU 厂商充分利用云供应商提供的计算平台,正为实现安全、可靠的云连接指出一条更快捷、更轻松的路线。 这就是嵌入式设计与 IT 世界连接之处。

例如,基于云的 Amazon 服务的基本单位是 Amazon 机器映像 (AMI)。 AMI 是一种虚拟设备,在 Amazon 弹性计算云 (EC2) 中用于创建虚拟机。 MCU 厂商利用一层中间件在其特定产品和 AMI 之间架起一座桥梁。 可使用演示板和开发套件处理“云到 MCU”接口的所有错综复杂的事情。

通过具有安全意识的云服务进行连接的智慧一旦被认可,就应考虑诸如从云下游建立连接等更熟悉的复杂情况。 图 2 所示为嵌入式设备和云之间最常用的四种数据通道。 使用多个数据通道对嵌入式设计来说可能是一种最可取方法。

尤其在了解如何创建一个特定于某个 MCU 厂商的 AMI 接口时,Wi-Fi 最合理,因为嵌入式设计基本上会变成网络的集中式协调器。 这在某种程度上类似于一个接入点 (AP),也就是说这种拓扑结构既是基于标准的又是常见的。

例如,在 Microchip Technology 的 WCM 开发套件 1 (DM182020) 中,编程到 32 位 PIC32MX695F512H MCU 的固件经设置后,可利用 Microchip 的板载 MRF24WG0MA Wi-Fi 模块连接到 Amazon 机器映像 (AMI)。

然而,在通过实例说明一款新产品设计时,Wi-Fi 并不是唯一选择。 图 2 中的每一种选择各有优劣。 其中一些如下所示。

嵌入式系统与云连接时的几种配置选择图片
 
嵌入式系统与云连接时的几种配置选择(感谢 Microchip Technology 提供数据)。
  • Wi-Fi 是最普及、最容易配置的选择,但功耗偏大。 蓝牙具有原生安全性且功耗低。 随着越来越多的智能手机开发完成,蓝牙正变得随处可见。 然而,蓝牙的覆盖范围有限,且通常需要支付费用。
  • ZigBee (IEEE 802.15) 和获得专利的千兆赫以下技术具有轻型协议栈、出色的覆盖范围和穿透力、成本低的特性,且有时还能实现超低功耗。 另一方面,这些技术通常需要在设计中加入另外一个项目——集中器。
  • 以太网是一种具有即插即用、灵活设计和高带宽的高性价比技术,且不易受高 RF 流量的影响。 且该技术也具备了有线连接系统的所有不足之处。
MCU 影响

在为嵌入式系统选择 MCU 时,云连接计划会造成显著影响,这一点也不奇怪。 功耗、时钟速率、存储器、单位成本始终是重点考虑对象。 云连接会增加一些重要的具有转折意义的特性——其中大部分与安全与有关。

尤其在电子商务属于应用一部分的情况下,在执行 AES、 DES 和 CRC 函数时需要考虑硬件加速,且这些函数可能需要较长的指令集字。 同样,如安全哈希函数算法 (SHA) 和信息摘要算法 -5 (MD5) 等加密哈希函数也可配合 32 位 MCU 使用

安全函数可在集成了外设的 MCU 上执行,如 Microchip Technology 的 PIC32MZ EC 系列等产品线。 Microchip 还为嵌入式工程师提供了支持如 TCP/IP 中的 SSL/TLS 安全协议的软件堆栈。

Texas Instruments 推出其 Tiva C 系列连接式 LaunchPad 开发套件 (EK-TM4C1294XL),该套件为具有云功能的应用提供了现成的互联网连接功能。 这款 TI 连接式 LaunchPad 是一个针对基于 ARM Cortex-M4 的微控制器的低成本评估平台,设计亮点在于 TM4C1294NCPDT 微控制器,它带有片载 10/100 以太网 MAC 和 PHY、USB 2.0、休眠模块、运动控制脉宽调制以及许多串行通讯外设。

通常,这些产品线(包括其他 MCU 厂商的产品)集成了通讯外设,如高速 USB 2.0、10/100Mbps 以太网控制器、CAN 2.0b 控制模块、UART、SPI/I²S 串行接口、多 I²C 通讯接口和 4 位串行四通道接口 (SQI)。 集成式模数转换器 (ADC) 通常用在工业应用中。

开发套件

如前文所述,在彻底改造已由云专家开发完成的所有进程和代码方面,几乎没有什么智慧可言。

MCU 厂商正在汲取这方面的学院知识,并将这种知识与其芯片和软件能力一起融入开发套件。 例如,上文提及的 Microchip Technology 的 WCM 开发套件 1。 利用这个开发套件以及 Microchip Amazon 机器映像 (AMI),IT 和工程部门都能了解启动基于云的解决方案所需的基本步骤。

用户利用该套件可以设置 Amazon AWS(Amazon 网络服务)账户并提供该套件包括的设备。 有四个基本引导步骤:
  1. 在 Amazon AWS 市场中找到 Microchip 的 AMI。
  2. 从该 AMI 启动一个 EC2(Amazon 弹性计算云)实例。
  3. 配置一个演示,以连接您的本地路由器或者接入点。
  4. 运行演示。
有多个定制选择,但该演示仅需两个:针对安全组的选择,提供必须开放来处理的端口名;和用于加密的密钥对。

接受 Amazon 使用条款和条件即可启动基于 Microchip AMI 的 EC2 实例。 实例准备就绪后(需要等待几分钟时间),即可访问 AMI 控制台。 尽管新页面上的信息量巨大,但演示板只需找到公共 IP 地址。

开启一个新浏览器页,然后输入公共 IP 地址。 屏幕上此时出现服务器的网络界面

连接演示板与网络时,包括将演示板设置为 AP 模式,以便进行配置。 演示套件会通过配置提示用户,包括选择合适的安全选项。 使用时仅需输入公共 IP 地址和密码即可配置演示板。

图 3 所示为含有演示板的浏览器窗口,网页和演示板分别位于左右两侧。 按下演示板上的按钮可点亮网页中的虚拟 LED 指示灯,调节电位计时,则在网页上反应为浏览器网页屏幕底部的数字在变化。

Microchip Technology 演示网页和演示板图片
 
图 3:Microchip Technology 的演示网页和演示板(感谢 Microchip Technology 提供数据)。

尽管通过该演示板和软件只能实现很简单的功能,但真正意义在于,一个完全连接的设备可以与特定于 Microchip MCU 的预定义 Amazon AMI 一起使用,全部设置只需几分钟即可完成。

总结

让产品利用远程处理或存储能力并能连接到云,是一个吸引人的创新概念,但您需要注意安全和隐私问题。 然而,服务器侧软件对于嵌入式设计工程师来说复杂而抽象,因此各个 MCU 厂商开始建立合作关系,提供几乎是即插即用的云连接产品。 设计团队利用这些开发套件能节省时间和精力,他们更在意在其产品中提供市场领先的功能,而不是成为 IT 专家。

本文基于 Microchip Technology 家电解决方案小组应用经理 Stephen Porter 的课程内容编写,该课程最初在 Microchip 2014 全球 MASTER 大会上发表。

免责声明:各个作者和/或论坛参与者在本网站发表的观点、看法和意见不代表 DigiKey 的观点、看法和意见,也不代表 DigiKey 官方政策。

关于此作者

Jack Shandle

Article authored by Jack Shandle of e-ContentWorks.

关于此出版商

电子产品

《电子产品》杂志和 ElectronicProducts.com 网站服务于负责电子设备和系统设计的工程师和工程管理人员。