ADI深度丨理想的远端云计算,减少边缘节点洞察时间很关键
减少边缘节点的洞察时间可在获得数据之后尽快做出关键决定。
然而,理论上处理能力和通信数据均不受限制,则可将所有全带宽边缘节点检测信息发送至远端的云计算服务器。此外,还可以进行大量运算,以挖掘做出明智决策所需的宝贵细节信息。所以,电池电量、通信带宽和计算周期密集型算法的局限使得我们的设想只是一种概念,而无法成为实际方案……
边缘节点所需的数据集可能只是一个离散的完整宽带信息子集。同样,数据可以根据要求进行传输。高效的超低功耗(ULP)处理也是实施任何边缘节点方案的一个关键。
工业物联网及其前身(机对机(M2M)通信)的先锋时代在很大程度上是由云平台这一主要应用推动因素的作用定义的。智能系统的洞察力以往都只是依赖于云级能力。实际的边缘传感器装置一直以来都相对简单。然而,由于边缘节点的低功耗计算能力比云计算能力的发展更迅速,这个前提目前正在动摇。边缘节点如今具有检测、测量、解读和连接数据的能力。
智能分区模式正从连接传感器模型向智能设备模型转变,从而提供更多的可用架构选项,并允许组织部署工业物联网,以独特的方式改进其实体资产和流程。边缘计算分析(亦称为智能边缘或解读)推动着这一转变。大规模的工业物联网部署依赖于一系列安全、高效节能并且易于管理的多样化智能节点。
最优质的传感数据仍可边缘化,且无需细心留意边缘节点分析中应用的要求。边缘传感器装置可能会受到能源、带宽或原始计算能力的约束。这些约束条件将影响到能够将IP堆栈删减为最小闪存或RAM的协议选择。这使得编写程序充满挑战性,并且可能需要牺牲一些IP性能。
然而,这要求提前了解清楚需要获得哪些有价值的具体信息,才能从检测和测量数据中得到预期结果。此外,由于空间隔离或应用差异,也可能因边缘节点的不同而不同。事件报警、触发信号和中断检测可以忽略大部分数据,只传输需要的数据。
货币的时间价值是一种概念,即现在的一美元比未来某一时候的一美元更有价值。类似地,数据也存在时间常数。数据的时间价值是指在这个几分之一秒检测到的数据与从现在起一周、一天或甚至一个小时之后检测到的数据不同。此类任务关键型物联网范例有热冲击检测、气体泄漏检测或需要采取立即行动的灾难性机械故障检测。时间敏感型数据价值在解读之时开始衰减。有效解读数据和采取行动的延迟越长,决策的价值将越低。为了解决工业物联网的时间折旧问题,我们必须进一步深入了解信号链。
边缘传感器节点的处理算法可对抽样数据进行筛选、抽取、调谐和精处理,将其分解至最低要求的子集。这首先需要定义目标窄带数据。可调带宽、抽样率和动态范围有助于一开始就在硬件的模拟域中建立基准。通过使用所需的模拟设置,传感器只会检测需要的信息,并提供更短的时间常数以获得高质量的解读数据。
边缘处的数字后端处理滤波器可进一步重点关注目标数据。边缘传感器处的数据频率分析可在信息离开节点之前,并及早判定信号内容。一些高阶计算模块执行快速傅里叶变换(FFT)、有限脉冲响应(FIR)滤波并使用智能抽取,可缩小抽样数据的范围。在一些情况下,在大幅度降低数据带宽之后,只需要从边缘传感器节点处传输通过或未通过信息增量痕迹。
图1中,我们可以看到在未使用前端模拟滤波器或数字后端处理滤波器的情况下,抽取8次(左侧)的简单信号将混叠新的干扰信号(中间),从而使频率折叠成期望的新信号频带(右侧)。数字后端处理滤波器搭配数字信号处理器(DSP)或微控制器(MCU),同时将半带FIR低通滤波器与抽取滤波器一起使用,将能够滤除混叠的干扰信号,从而有助于防止出现这一问题。
图1. 在未使用前端滤波器或数字后端处理滤波器的情况下,可能会出现混叠
领先的工业物联网应用解决方案适用于工厂机器状态监控。该解决方案的目的是在发生故障之前识别和预测机器性能问题。边缘传感器节点的多轴高动态范围加速度计用于监控工业机器上不同部位的振动位移。可以筛选和抽取原始数据,在微控制器中进行频域解读。可以处理与已知性能极限进行比较的FFT,针对下游的通过、未通过和警示警报进行测试。通过FIR滤波去除目标带宽外的宽带噪声,可实现FFT内的处理增益。
边缘节点处理是机器状态监控的一个重要组成部分。抽样数据的全带宽是实现无线网关聚集的一个重要瓶颈。要考虑到,一台机器可能配有许多传感器,并且可能同时监控数百台机器。微控制器中作出的滤波和智能决策向无线收发器提供一个低增益带宽输出,而无需在云端进行密集型滤波处理。
图2显示了一个机器状态监控的信号链,在这个信号链中加速度计传感器用于测量位移振动特征。利用边缘传感器节点处的后端处理滤波器,可通过在滤波和抽样数据后进行FFT运算,从而在目标窄带宽中完成频率分析。
图2. 振动监控的典型信号链
在FFT计算过程中,与实时示波器一样,处理滤波器可无视时域活动,直至完成FFT。第二个线程中的另一种时域路径可能还可用于防止出现数据分析差异。
如果能够清楚目标机械特征频率,则可设计微控制器中的ADC和FFT抽样率,使最大能量适合单个直方图仓的宽度。这将防止信号功率泄漏到多个仓中,从而降低幅度测量的精度。
图3为FFT的一个示例。在这个示例中,我们在边缘节点MCU中对不只一个观察的机械零件进行特定的预定区解读。在所需绿色区域中达到峰值的能量代表正常运转,而黄色和红色区域则分别表示警报和严重警报。更低的数据速率警报或触发痕迹可能会在目标区域内向系统发出偏移事件报警,而不是传全带宽传感器数据。
图3. FFT仓能源可用于触发警报
边缘分析的计算功率有几个选项。许多选项可用于处理算法,从一个提供有限控制性能的简单MCU到更加复杂的精密片上系统(SoC) MCU,再到到功能强大的多核数字信号处理。处理内核尺寸、单核或双核操作、指令RAM缓存大小和定点与浮点需求都是典型的技术考虑。通常,需要在节点可用的功率预估和应用的计算需求之间作出权衡。
针对数字信号处理,采用定点和浮点两种格式来存储和操作以数字表示的传感器节点数据。定点是指一种数字表示方式,采用小数点后(有时候为小数点前)固定位数的数字表示。使用这种方法的DSP处理整数,例如使用最少16位的正负整数,可能有216种位模式。相比之下,浮点则使用有理数,最少可能有232种模式。与使用定点的DSP相比,使用浮点计算方法的DSP 可处理更大范围的值,并能够表示非常大或非常小的数字。
浮点处理可确保能够表示更大动态范围的数字。如果需要计算大量传感器节点数据,并且在检测之前可能并不清楚确切的范围,则浮点处理就非常重要。此外,由于每一个新的计算都需要进行一次数学运算,所以计算结果必然会出现四舍五入或截断的现象。这会导致数据出现量化误差或数字信号噪声。量化误差是理想的模拟值与该值的数字表示(即最接近的舍入值)之差。这些值之间的量化差越大,数字噪声将越明显。当准确性和精度对于解读的传感器数据来说非常重要时,浮点处理则可实现优于定点处理的精度性能。
固件设计师应以最有效的方式实现计算应用,因为执行操作的速度至关重要。因此,必须描述数据解读的处理需求,以便确定实现最大效率需要使用定点计算还是浮点计算。
我们可以对定点处理器进行编程,使其能够执行浮点任务,反之亦然。然而,这样做的话效率非常低,并将影响处理器性能和功率。当针对无需密集型计算算法的高容量通用应用而优化时,定点处理器的表现更加突出。相反,浮点处理器可利用专门的算法,轻松完成开发,并实现更高的整体精度。
虽然性能不是很高,但是处理器中支持的GPIO引脚数量则可作为第二个选择标准。直接支持目标传感器(例如:I2C、SPORT和UART)的相应控制界面可降低系统设计的复杂程度。内核处理时钟速度、每次执行的位数、可用于处理的嵌入式指令RAM数量以及存储器接口速度都将影响边缘节点处理的能力。实时时钟有助于对数据进行时间标记,并允许调整多个平台之间的处理。
处理计算能力通常是在MIPS或MMAC中定义。MIPS是一秒钟内可执行的百万指令数。MMAC是每秒可执行的32位单精度浮点或定点累加乘法操作次数(单位:百万)。针对16位和8位操作,MMAC性能值分别提高2倍和4倍。
虽然工业物联网的安全影响着每个系统、每次传输和每个数据接入点,但是微控制器和DSP则提供内部安全特性。高级加密标准(AES)提供了一种增强有线通信线路(如UART/SPI)或无线通信线路安全性的方法。在采用无线RF通信的情况下,通过边缘节点无线电进行有效传输之前会先执行AES加密。接收节点相应地执行解密操作。电子密码模块(ECB)或密码块链接 (CBC)是典型的AES模式。通常,128位或更长位数的安全密钥是首选。真随机数发生器用作为处理器中安全计算的组成部分。后续的工业物联网文章中将进一步描述这些方案的细节,以便大家采用更加全面的安全措施。
对原始数据处理能力的需求终始很旺盛。高效的原始数据处理能力将更胜一筹。多核MCU和DSP可为特别受益于密集型并行处理的算法提供额外的计算能力。然而,处理异构数据的需求也在不断上升。这导致一类多核微控制器的问世,此类微控制器将两个或更多具有不同特定功能优势的内核整合在一起。一般称为异构或非对称多核设备,通常整合了两个配置完全不同的内核。
非对称MCU可整合ARM®Cortex®-M3和Cortex-M0,使用处理器间通信协议进行通信。这使M3能够重点处理繁琐的数字信号处理任务,而M0则执行密集程度较低的应用控制。这样可以将更简单的任务分流至小型内核中处理。分区可最大化功能更强大的M3内核的处理带宽,以便进行计算密集型处理,而这是协同处理的真正核心所在。核间通信采用共享SRAM,其中一个处理器引发中断,而另一个检查。当接收处理器在响应时引发中断,就会发出报警。
异构多核MCU的另一个优势在于,它可以克服嵌入式闪存的限速问题。通过在两个小型内核中以非对称的方式对任务进行分割,可在实现内核的全部性能的同时,仍继续使用低成本嵌入式存储器。实现嵌入式闪存的成本通常决定MCU的成本,因此可有效地消除瓶颈。在可用的功率预算中平衡处理器需求是工业物联网边缘传感器节点设计的关键部分。
即使是在可以实现能量采集的情况下,许多工业物联网边缘传感器节点也必须能够在同一小型电池上运行多年。ULP操作将是这些节点的一个关键参数,而且必须选用能够最小化节点实际功耗的元件。
许多非常适用于工业物联网的MCU都采用ARM系列的Cortex-M嵌入式处理器,针对低功耗MCU和传感器应用。包括针对更简单高效应用而优化的Cortex-M0+,以及需要浮点和DSP操作的高性能复杂应用的Cortex-M4。使用性能更高的处理内核可能会影响低功耗性能。
ARM CPU在代码大小、性能和效率方面提供了一个新方向。但是对于MCU在工作模式或深度睡眠模式下的实际功耗,许多超低功耗能力完全取决于MCU供应商。工作功耗深受工艺技术选择、超高速缓存和处理器整体架构的影响。MCU睡眠电流以及CPU处于睡眠模式时的可用外围功能主要受MCU的设计和架构影响。
行业联盟EEMBC制定了一些衡量基准,帮助系统设计师了解其系统的性能和能量特性,以选择最优处理器。每个器件的ULPMark™- CP评分是经过计算得出的单个数字品质因素。该套件中每个衡量基准的评分使设计师权衡并合计这些衡量基准,以满足特定的应用需求。
传感器边缘节点的功率预算将直接与其处理能力相互关联。如果功率预算无法满足边缘节点分析的处理需求,则可能需要作出权衡。性能效率会影响传感器边缘节点的电源效率。微控制器的典型能耗指标用于指定每兆赫兹计算消耗的有功电流量。例如:针对基于ARM Cortex-M3的MCU,功耗可达到数十μA/MHz。
边缘传感器节点的功耗最小化通常基于两个因素:节点在活动状态下的功耗是多少;以及为进行检测、测量和解读,节点必须保持活动状态的频率如何。这个占空比将随着节点中使用的传感器和处理器类型,以及算法需求的不同而变化。
图4. 边缘传感器节点MCU的主要活动状态可能会消耗过多的功率
在不考虑MCU功耗的情况下,边缘传感器节点的主要活动状态将消耗大量功率,并将电池供电应用的寿命减少至只有几个小时或几天。
通过分析节点内部元件的占空比,可节省大量能源,从而确保只有在必须的情况下这些元件才会处于工作状态。MCU几乎一直处于常开状态。为了使MCU能够保持对边缘传感器节点的完全控制,同时消耗尽可能少的能量,必须采用针对低能耗操作的特定架构。最小化MCU能耗就是要使MCU尽可能经常处于睡眠模式,同时在需要的时候仍能执行关键任务。
图5. 将MCU主要保持在非活动状态,以便将功耗降至最小
对于大多数非活动状态、只在短期占用时间处于活动状态的情形,使MCU在低功耗休眠模式下运行,可将边缘节点的电池使用寿命延长至许多年。
可能无需在工业物联网中使用许多边缘节点检测解决方案就可以处理连续不间断的数据流。利用中断事件阈值忽略已知的超范围条件数据,这样可降低处理功率。为了保持功率和带宽,可能需要提前了解可预测的占空比。此外,基于已检测信息状态的可变占空比可触发活动状态或降低功率状态。
微控制器或DSP的响应时间和功耗(开启和关闭状态下)是低带宽应用的重要设计依据。例如:建筑中,温度和光传感器的数据传输在静止期间可能明显减少。这不仅可以延长传感器节点的休眠时间,而且还可以大大减少信息传输。
为了实现快速反应,许多微控制器除了提供完全活动模式,还提供各种低功耗工作模式,例如:睡眠模式、灵活模式、休眠模式和完全关断模式。每种模式都将在不需要时关断各种内部计算模块,通常将电流需求改变几个数量级。为实现这一节能优势,向完全活动模式过渡需要最低有限响应时间。采用灵活模式这一混合配置时,计算内核处于睡眠模式,而外围接口仍处于活动状态。休眠模式可提供SRAM数据存储功能,并可选择允许实时时钟仍保持活动状态。
图6为详细的MCU功耗与时序图,显示了每种低功耗MCU模式、过渡时间和占空比的影响。当MCU处于非活动状态时,使用低功耗模式是保持在低功耗传感器节点预算范围之内的关键。
图6. 详细的MCU功耗与时序图
先进的模拟微控制器提供了一个完整的混合信号计算解决方案。配备嵌入式精密模数转换器(ADC)的前端模拟多路复用器支持更先进的传感器融合技术。在进行数字处理之前,可将多传感器输入发送至单个微控制器。片上数模转换器(DCA)和微控制器反馈至附近其他设备,可实现快速反馈回路。其他嵌入式电路模块(如比较器、带隙基准电压源、温度传感器和锁相环)为多传感器边缘节点提供额外的算法灵活性。
图7. 可在单个模拟微控制器中处理多传感器信号
多个传感器的模拟信号可发送至单个精密模拟微控制器。微控制器中的算法可通过传感器融合过程实现信息的智能组合。
室外污染监控器应用就属于此类边缘节点处理。在此类应用中,来自多个输入来源(如气体传感器、温度传感器、湿度传感器和颗粒传感器)的数据在单个处理器中融合并进行分析。通过这些信息,分析处理完毕后,即可基于只能从本地传感器节点那获知的校准和补偿信息生成污染数据。然后,可将这些经过校准的数据发送至云,以便进行历史分析。在一些情况下,可能需要进行独特的一次性调试,针对其特定的环境失调配置每个传感器节点。
ADI公司对ULP平台进行了大量投资,在传感器、处理器和节能模式的强大功能集方面均有重大改进。近期发布的ADuMC3027和ADuMC3029系列微控制器可提供26 MHz ARM Cortex-M3内核的性能,同时在活动模式下的工作电流低于38 μA/MHz,而在待机模式下为750 nA。这种高效的本地处理能力可降低系统的整体功耗,同时大大减少通过网络发送数据进行分析的需要。
ADI公司提供各种MCU和DSP引擎,有助于以智能方式捕捉和处理发送至云的物联网数据。ADuCM36x系列采用ARM Cortex-M3处理内核和集成式双核∑-∆ ADC。ADI公司的SHARC® 数字信号处理器系列在许多将动态范围作为关键要素的应用中实现了实时浮点处理性能。
新一代Cortex-M33处理器基于ARMv8-M架构 ,采用可靠的TrustZone™技术,通过处理器的内置硬件保证可信应用和数据的安全。随着世界的联系变得越来越紧密,确保每个节点的安全性是促进物联网应用发展的关键。