您可能已经听说过很多关于物联网(IoT)将如何彻底改变我们生活的许多领域。即使拥有所有这些潜力,许多产品经理仍在努力理解物联网的基本概念以及如何使用它为他们的客户和公司提供额外的价值。
开始使用 IoT 时,很容易被复杂性、行话和炒作吓倒。但没有什么可担心的。第一步是停止将物联网视为黑匣子,开始将其视为由几个不同技术块组成的系统。
我将这些模块称为物联网技术栈的 5 层。一旦您熟悉了物联网技术栈,您就会发现物联网并没有什么神奇之处。它只是将传感器、计算机和网络组合在一起。顺便说一句,所有物联网产品都有这5层,无论是消费产品还是工业产品。
在本文后面,我还将介绍如何使用此概念模型与您的团队、客户和供应商进行交互。但首先,让我们谈谈物联网技术栈。
让我们开始吧!
介绍物联网技术栈的 5 层
成为物联网产品经理的第一步是了解物联网技术栈的五个层次。通过将完整的物联网解决方案分解为这五个层次,产品经理可以更好地理解和分析每个层次以及整个系统所需的业务和技术权衡。这五层是:

为了将此物联网技术栈放在上下文中,让我们假设您正在开发一种监控风力涡轮机运行状况的产品。该产品预测涡轮机何时需要维护,从而节省数百万美元的涡轮
机潜在损坏并避免服务中断。这种技术通常被称为“预测性维护”。现在让我们以风力涡轮机为例,详细描述物联网技术栈的每一层。
第 1 层——设备硬件
设备构成了物联网中的“物”。设备充当物理世界和数字世界之间的接口。它们是物联网技术栈的第一层。
首先要考虑的是您的产品是连接设备本身,还是您的产品通过添加仪表将现有设备转变为连接设备。在我们的示例中,您销售的不是风力涡轮机,而是连接到风力涡轮机的设备。换句话说,我们的风力涡轮机示例是一个“棕地”解决方案。
您设备的主要目标之一是收集数据。因此,接下来,您需要考虑要收集哪些数据,以及为此需要哪些设备硬件。
对于简单的数据收集需求,您可能只需要一个传感器。对于更复杂的数据收集,您可能需要一台装有许多传感器、强大的处理器、本地存储、网关等的工业计算机。
在物联网技术栈的这一层,了解硬件参数至关重要,例如成本、尺寸、易于部署、可靠性、使用寿命等。
对于我们的风力涡轮机监控产品,我们需要一个加速度计作为传感器来收集振动数据。如果振动超出特定范围,则意味着风力涡轮机需要维修。由于这是一个重工业应用,我们可能需要使用紧凑型 RIO 之类的工业计算机,因为它具有足够的计算能力并且已经集成了加速度计。
第 2 层——设备软件
设备软件是将设备硬件变成“智能设备”的组件。设备软件是物联网技术栈的第二层。
设备软件支持“软件定义硬件”的概念,这意味着特定硬件设备可以根据其运行的嵌入式软件服务于多个应用程序。设备软件允许您实现与云端或其他本地设备的通信。您可以执行实时分析、从设备的传感器获取数据,甚至进行控制。
物联网技术栈的这一层至关重要,因为它充当现实世界(硬件)和云应用程序之间的粘合剂。由您和您的团队决定您在此处放置多少功能而不是在云中放置多少功能。您还可以使用设备软件来降低硬件开发的风险。构建硬件很昂贵,而且比软件花费的时间要长得多。因此,与其为狭隘和特定的目的而构建您的设备,不如使用可由您的设备软件定制的通用硬件,以便在以后为您提供更大的灵活性。
这种技术通常被称为“软件定义硬件”。这样,您可以通过云远程更新您的嵌入式软件,这将在现场更新您的“硬件”功能。
我将设备软件层分为两类:
1)设备操作系统
IoT 解决方案的复杂性将决定您需要的设备操作系统 (OS) 类型。一些关键考虑因素包括您的应用程序是否需要实时处理、您需要的 I/O 支持类型以及您是否需要对完整 TCP/IP 堆栈的支持。嵌入式操作系统的常见示例包括 Linux、Brillo(缩小版 Android)、Windows Embedded和 VxWorks等等。
2)设备应用
设备应用程序在 Edge OS 之上运行,并为您的 IoT 解决方案提供特定功能。在这里,可能性是无穷无尽的。您可以专注于数据采集和流式传输到云端、分析、本地控制等。
对于我们的风力涡轮机监视器示例,我们的加速度计将频繁采样以测量振动。这会产生大量数据。但我们不需要将所有数据发送到云端——只需将表明存在问题的数据发送即可。因此,我们的设备应用软件将在本地监控数据,并且只会发送警告和错误情况。如果振动超出您指定的参数,它还将执行实时控制以关闭涡轮机。
产品经理提示:如果设备硬件和软件协同工作以创建智能设备,为什么在物联网技术栈中分别表示它们?将它们分开考虑会很有帮助,因为它们是由不同的团队使用非常不同的要求、流程和时间线构建的。设备软件将由软件工程师使用敏捷方法开发。另一方面,设备将由硬件工程组按照硬件 NPI 流程开发。当您计划路线图并与各个团队合作时,这种分离将使您的工作更加舒适。
第 3 层——通信
通信是指您的设备与世界其他地方交换信息的所有不同方式。通信是物联网技术栈的第三层。根据您所在的行业,有些人将物联网技术栈的这一层称为“连接性”。在这篇文章中,我使用了更通用的术语“通信”,但我指的是同一件事。
通信包括物理网络和您将使用的协议。确实,通信层的实现存在于设备硬件和设备软件中。但是从概念模型(而不是实现模型)来看,我更喜欢将通信作为其自己的层,以促进与团队其他成员的讨论。
选择正确的通信机制是物联网产品战略的关键部分。它不仅会决定您如何从云端获取数据(例如,使用 Wi-Fi、WAN、LAN、4G、5G、LoRA 等),还会决定您如何与云端的第三方设备进行通信。
例如,智能建筑中的系统通常使用 BACnet 协议相互通信。如果您的设备涉及楼宇自动化,最好让您的设备提供 BACnet 支持,即使您还不确定是否希望您的设备与楼宇中的其他设备通信。
您的通信策略会影响系统的整体拓扑。例如,如果您的物联网解决方案有十个传感器,每个传感器是否应该直接与云通信?或者您是否应该拥有十个更简单(且更便宜)的传感器来与中央网关通信,以实现数据的聚合和远程传输?
这些决定并非纯粹的技术性决定。这些是产品经理在考虑对解决方案的成本、部署和技术复杂性的影响时需要做出的业务决策。对于我的风力涡轮机监视器示例,第一个倾向可能是将设备连接到局域网。但是风电场可能在偏僻的地方,而您所拥有的只是附近的手机塔。因此,您必须通过蜂窝通信连接到云端。
该决定将对您选择设备的硬件和软件以及您的成本产生影响,因为您必须向蜂窝服务提供商支付连接费用。这笔额外费用还支持我们决定预先分析设备中的传感器数据并仅将可操作的见解发送到云端,而不是发送加速度计产生的整个数据集,请记住,您传输的数据越多,您的成本就越高。
第 4 层——云平台
云平台是您的物联网解决方案的支柱。如果您熟悉管理 SaaS 产品,那么您很清楚 IoT 技术栈这一层的作用。云平台提供支持这些关键领域的基础设施:
数据收集和管理
您的智能设备会将信息流式传输到云端。在定义解决方案的要求时,您需要清楚了解每天、每月和每年要收集的数据的类型和数量。
物联网应用程序的挑战之一是它们可以生成大量数据。您需要确保定义可扩展性参数,以便您的架构师可以从一开始就确定正确的数据管理解决方案。
分析
分析是任何物联网解决方案的关键组成部分之一。通过分析,我指的是处理数据、查找模式、执行预测、集成机器学习等的能力。使您的解决方案有价值的是从您的数据中找到洞察力的能力,而不仅仅是数据本身。分析可以像数据聚合和显示一样简单

