全方位解决物联网软硬件关键需求
物联网节点肯定会数以百亿计,很多情况下,相关应用将对成本相对敏感,所以必须考虑每个节点相关的物料清单。此外,还需要考虑每个节点的功耗,因为大量的物联网节点将被放置在没有电力线的偏远地点,这时只能由电池供电,尽可能延长电池的使用时间至关重要。
种种迹象表明,2017将是物联网(IoT)取得重大发展的一年。产业研究公司IHS的报告预测,今年年底连接设备的数量将增长15%,达到200亿台。这无疑会给经济、物流和环境带来潜在的好处,可望在不同领域广泛应用。依赖高度自动化的工业流程将应运而生,从而提供更安全、更高效和更可靠的系统,更智能、更节能的居住场所,以及更少打扰和更便利的病人护理。
从一开始,半导体制造商就清楚物联网应该怎样实现才有效。物联网节点肯定会数以百亿计,很多情况下,相关应用将对成本相对敏感,所以必须考虑每个节点相关的物料清单。此外,还需要考虑每个节点的功耗,因为大量的物联网节点将被放置在没有电力线的偏远地点,这时只能由电池供电,尽可能延长电池的使用时间至关重要(工程师到现场更换电池将花费额外的时间和成本)。根据具体应用,其他一些因素也会影响物联网节点运作,如空间限制、恶劣的应用环境等。
在部署物联网时会采用不同的无线和有线通讯协议。一些协议已相当成熟,而另一些正在兴起。有线协议包括用于楼宇自动化的KNX和工业用控制器局域网络(CAN)或以太网络。大多数无线通信协议将专注于短距离、超低功耗工作,如Wi-Fi、ZigBee、Z-Wave和蓝牙低功耗(BLE)。无线协议还有低功耗广域网(LPWAN)协议,适于距离远、数据量低的应用,其功耗极低(如Sigfox和LoRa)。能够替代低功耗协议的,还有用于广域网、基于蜂巢技术的协议,如LTE-M、窄频物联网(NarrowBand IoT,NB-IoT)和5G。
传感器/致动器(Actuator)是真正驱动物联网工作的组件。所有的数据都可由传感器捕获并加以分析;相反,致动器可用来驱动电机、启动照明等。从一些应用实例可以看出,传感器和致动器相结合,再加上连结技术,是核心所在。在住宅/楼宇自动化应用中,网络中的多个被动式红外线(PIR)探测器可以确定人的移动,LED驱动器可以根据人的移动启动对应房间的照明。
在工业应用中,如大型园艺场,许多不同的传感器可以监测环境光照、温度、湿度、土壤水分等。当某个参数超出预先设定的阈值范围,就要采取相应的行动。例如,当温度太高时,可以启动马达以打开温室的窗户。另外,如果光照没有达到最佳,不能最大程度提高产量,便可透过链接的LED驱动器进行调节。
空间、成本和功耗预算限制,意味着物联网节点需遵循精简设计理念,只提供可轻松支持的功能。在设定微处理器和内存芯片的参数规范时,需主要考虑的因素是价格低、不耗电,且不会占用过多PCB面积。因此,一个强制性的要求是必须能够连接基于云端的服务,在云端处理并分析数据,以弥补节点功能不足。在云端使用相关应用程序的能力将使物联网系统设计不受节点级的限制,同时被收集的、有价值的数据也能被充分利用,这样可以实现更高的数据处理和储存能力。
到目前为止,在物联网的开发中,电子硬件供货商和云端服务供货商几乎完全隔离。他们都停留在自己擅长的领域,这已经影响物联网无法快速增长,因为不得不单独考虑硬件和软件开发令人厌烦。硬件工程师不想离开自己的舒适区而去面对写大量程序代码的困难;同样,软件开发人员也不想局限于一个不给他们足够灵活度的开发平台。
物联网的布建建立在各种基础之上。节点级关注的是高效和可靠的运行,使传感器撷取到的数据经过分析/处理能够被返回,或者致动器能够在需要的时候启动。为此,必须针对眼前的特定任务对采用的链接技术进行优化。再进一步,就是如何确保与云端的互动是有效的。
物联网一直以来真正需要的是能同时解决所有这些问题的技术。从硬件的角度,要为工程师提供必要的链接技术、传感器和致动器,以创建满足特定应用需求的物联网节点。从软件的角度,则要为开发人员提供一块基石,在此基础上他们能够创建支持这种硬件的云端应用。
半导体公司无疑热衷于投身物联网,但他们提供的开发平台尚不能处理上述谈到的所有问题。提供的硬件都是采用特定传感器和通讯功能的单PCB方案,为了让自己的系统满足应用需求,工程师几乎没什么发挥的空间。当平台不支持最佳的连结技术或感测方案时,便只能进行折衷。
图1 安森美半导体IDK硬件和软件示意图。
有鉴于物联网部署的不断变化,安森美半导体(ON Semiconductor)的工程师研发一种新的物联网开发平台——物联网开发工具包(IDK),该平台充分考虑硬件工程师和软件开发人员各自的优势,为他们提供设计上的便利。
IDK不是采用受限的通用方法,它有一个模块化的架构,因此有更多的传感器、致动器和连结技术的选择。它为工程专业人士提供了高度通用、现成的开发资源,包含硬件,还有一个精细的软件框架,可用于建立「设备到云端」的物联网应用。
图2 包含几个子卡的IDK主板。
IDK基于高精密的NCS36510系统单芯片(SoC),具有32位ARM Cortex-M3处理器核心和2组各320KB的闪存。有大量的子卡可用,可以直接连接到基板。在连接方面,工程师可以针对各种无线和有线通讯协议,如Wi-Fi、ZigBee、Sigfox、CAN、以太网络等,挑选合适的子卡。
对于传感器,有整合温度、水分、运动、心率、环境光、压力及生物传感器的子卡。此外,透过步进马达或无刷马达驱动器,以及LED驱动器,可以实现致动器功能。
多种子卡可提供不同的传感器、致动器和通讯功能,工程师可以根据实际情况进行选择,为系统设计找到最适合的组合方案。此外,对于不擅长云端软件开发的硬件工程师,需要在自己的物联网系统中使用基于云端的服务,该工具提供一种获取云端服务的简单途径。
相反,软件开发人员不必遏制自己的创意,他们有机会开发自己的专有服务。IDK由一个基于Eclipse的集成开发环境(IDE)支持,包括一个C++编译程序、调变器和程序代码编辑器,以及一系列应用相关的函式库。利用一个可配置的通用平台,如IDK,工程师能够专注于自己擅长的领域,无需被迫作出取舍,从而实现自己的系统设计目标。