云物联网平台必须监视物联网端点和事件流,分析边缘和云中的数据,并支持应用程序的开发和部署。这些是任何物联网实现所必需的基本功能。
物联网(IoT)是目前计算界最被炒作的概念之一。云物联网平台的炒作规模甚至超过了物联网。然而,两者都有实际的应用程序存在,并且可能对你的业务非常重要。在这篇文章中,我们将在没有太多技术细节的情况下定义物联网和云物联网平台,然后讨论你需要从云物联网平台中选择什么以及如何选择。
物联网的简单解释是,一切连接到互联网的物理实体。这些东西可以是测量各种参数的传感器,会通过internet发送数据,这些数据通常会返回到位于相同地理位置的远程或“边缘”服务器。物联网上的东西也可以通过互联网来指引方向并对其采取行动。最有用的是,组成物联网的物理设备可能会同时发送测量数据和接收指令。
例如,联网的“智能”土壤湿度传感器可以定期报告读数,当土壤过于干燥时,联网的水阀就会打开。而当土壤湿度足够时,阀门就会关闭。
湿度传感器和水阀可能连接到了同一个“边缘计算”设备或能够与互联网对话的节点,或者他们也可能是连接到了不同的节点,因为许多土壤湿度传感器可能会被用于一个大的农田,而每个农田只需要一个集中灌溉系统。
物联网与云有什么关系?
当然,“互联网”不是单个的终端,而是传输数据的相互连接的网络集合。对于物联网,远程端点通常位于一个云服务器上,而不是位于私有数据中心内的单个服务器。如果你所做的只是测量几个地点的土壤湿度,那么在云中部署就不是绝对必要的,但它可能也非常有用。
假设传感器不仅在测量土壤湿度,还会测量土壤温度、空气温度和空气湿度。假设服务器需要从数千个传感器中获取数据,并会从天气服务中读取一个预报提要。而在云中运行服务器允许你将所有数据导入云存储,并使用它来驱动机器学习预测,以获得最佳的水流量。这个模型可以像你所希望的那样复杂和可扩展。
此外,在云中运行还能带来额外的经济效益。如果传感器每小时报告一次,那么服务器在其余时间就不需要激活。在“无服务器”的云配置中,传入的数据将会激活函数以存储数据,然后释放其资源。另一个函数也将在一段时间的延迟后激活,以聚合和处理新的数据,并根据需要来更改灌溉水流量的设定值。然后,它也会释放自己的资源。
本地和远程物联网的反馈回路
在我们的灌溉示例中,如果来自云服务器的响应时间是一个小时,系统仍然可以正常工作。而其他系统对延迟的容忍度则要低得多。
例如,考虑一辆自动驾驶汽车:它会不断地观察道路,识别障碍,并测量它的位置。它也可能会不断地将数据发送到云上,但它不可能依赖远程服务器来调整油门、刹车或是转向。这些都必须在本地完成。
这是控制系统工程导论课程的基本课程之一:将控制反馈的回路降到尽可能低的水平。是的,远程管理器可以更改目的地设置点或是路线计划,但是汽车本身必须负责所有时间敏感的操作。
基本的云物联网功能
云物联网平台必须监视物联网端点和事件流,分析边缘和云中的数据,并支持应用程序的开发和部署。这些是任何物联网实现所必需的基本功能。
为了实现云数据分析和应用开发,物联网平台还需要能够访问云存储。对于工业物联网的设备和车辆,可以存储大量数据,也可以进行过滤或聚合,以便进行长期的分析。工业物联网在网络和协议转换方面也面临着挑战。老式的工业可编程控制器并不适用于以太网和TCP/IP。
另一个难题是如何将数据从边缘设备传输到云平台。对于室内应用,你通常可以使用有线以太网或Wi-Fi。对于户外应用,例如农业场景,使用蜂窝数据是常见的,可以使用蜂窝M2M(机器对机器)计划,而不是昂贵得多的手机计划。
托管物联网连接服务也可以帮助解决这个问题。其中的一些服务主要是管理SIM卡和相关数据;更广泛的物联网连接平台还会涉及到边缘设备操作系统和代理。注意:一些成熟的M2M服务已经将“物联网”添加到了它们的品牌当中,但并没有添加任何真正的物联网功能。
物联网平台的注意事项
你不应该简单地跳到一个听起来很有吸引力的物联网云平台上,你应该首先确定你自己的需求,并列出一些监控、分析、控制和应用架构来满足它们。在使用技术之前,要先弄清楚设计的用户体验、数据和业务决策部分。
要尽量避免针对特定设备、设备操作系统、网关、边缘平台、网络、通信协议、云平台或云品牌进行设计。相反,首先要进行一般性的设计。找出对你的应用程序最重要的特性,并使用该列表来决定你的平台选择。换句话说,这将是一个流程。
云物联网的成本很难预测,也很容易被低估。部分问题在于云计算的定价本身就很复杂。(通常,真正了解云应用程序成本的唯一方法是运行一个月并查看账单。)另一个问题是,云物联网平台通常会提供入门折扣。如果你依赖于入门定价,当价格上涨时,你就可能会大吃一惊。最后,你也很容易忽略数据存储的成本,并且很难实现一个丢弃旧的不重要数据的长期策略。
这个过程中的另一个困难的部分是如何评估你自己的能力。你有管理设备和传感器的专业知识吗?在通信协议和网络中么?在云应用架构、操作和管理中吗?你的员工是否能够致力于构建你的物联网应用程序,或者他们是否有重要的持续责任?你需要新员工吗?新员工是否具备合适的技能?
这些评估将告诉你需要选择全功能的还是最基本的云物联网平台。一些供应商提供了健壮的、几乎完整的平台,可以轻松地根据应用程序的需要进行定制。而其他供应商则是提供了一些你需要的组件,但要求你自己在内部或使用顾问来进行更多的集成和定制。
对于首次的云物联网部署,执行概念验证的价值再怎么强调都不会过分。与其他涉及软件开发的项目一样,你需要为第一次的失败做好计划,以便从错误中吸取教训,并在下一次中正确地去构建它。只有在你的概念证明成功之后,你才能开始对它进行扩展。