利用蜂窝和 GPS SiP 快速实现农业和智慧城市的资产跟踪

作者:Stephen Evanczuk

投稿人:DigiKey 北美编辑

在开发工业、农业和智慧城市的物联网 (IoT) 以及资产跟踪设备和系统时,开发人员需要一种长时间以最小功耗进行长距离通信的方式。RFID 标签、蓝牙和 Wi-Fi 等无线技术已广泛用于资产跟踪解决方案,但覆盖范围有限且功耗过高。需要做的是改造蜂窝网络等基础设施并结合 GPS;蜂窝网络已经广泛部署并用于比 Wi-Fi 或蓝牙更长的通信距离。

基于 LTE 的蜂窝网络最初旨在为移动产品和设备提供宽带无线连接。另一方面,物联网应用可以通过使用长期演进机器类型通信 (LTE-M) 和窄带物联网 (NB-IoT) 等低功耗窄带蜂窝技术来实现。尽管如此,射频/无线设计仍然很困难,并且缺乏丰富经验(尤其是在蜂窝方面)的开发人员难以实现正常运作的设计,使其既能优化无线性能和功耗,又能同时满足蜂窝和 GPS 定位服务的国际法规准则,以及特定运营商要求。

本文将说明资产跟踪的趋势和设计要求。然后介绍来自 Nordic Semiconductor 的 GPS 和蜂窝窄带系统级封装 (SiP) 解决方案,并展示其如何能够在资产跟踪及其他农业和智慧城市物联网应用中大幅简化 GPS 蜂窝设备的实施。

为什么资产跟踪越来越重要

高效发货的能力对商业至关重要:仅 Amazon 在 2019 年就发出约 50 亿个包裹,货运成本近 380 亿美元,比 2018 年增加了 37%[1,2]。对于任何一家货运公司而言,延误、损坏和失窃都会给制造商、分销商和客户带来巨大压力。对于 Amazon,近四分之一的发货包裹被退回,其中 21% 是因为客户收到受损的包裹[3]

Amazon 绝不是唯一将相当一部分预算用于货运方面的公司。根据供应链管理专家委员会 (CSCMP) 的 2020 年物流状况报告,2019 年企业在货运成本上的支出接近 1.7 万亿美元——占美国国民生产总值 (GDP) 的 7.6%[4]。在这些层面上,如果能够跟踪包裹、识别延误和损坏情况,则可以让供应商和采购商纠正货运问题,从而大大受益。

除了在整个供应链中跟踪包裹,大多数企业还需要改进的方法来跟踪自己的资产和查找放错位置的物品。然而,有一半的企业仍在手工记录资产,其中许多企业依靠员工在仓库、工厂和物理位置寻找丢失的资产[5]

比较用于资产跟踪的连接技术

尽管出现了许多解决方案来帮助实现资产跟踪自动化,但基础技术的覆盖范围有限、单位成本昂贵或功耗要求很高。最后一条至关重要,因为资产跟踪和远程物联网设备是电池供电的设备。

基于无源射频识别 (RFID) 的常规跟踪方法无法提供货运途中的实时数据,而且需要包裹通过某个物理检查站来检测包裹上的 RFID 标签。电池供电的有源 RFID 标签能够提供实时位置数据,但需要额外的基础设施,而且覆盖范围仍然有限。

与 RFID 标签相比,低功耗蓝牙 (BLE) 和 Wi-Fi 在每种技术配备固定定位器的覆盖区域内提供了逐渐增大的覆盖范围。BLE 和 Wi-Fi 基于丰富的设备和软件生态系统,已分别应用于 COVID-19 接触者追踪和传统的实时定位服务 (RTLS) 等基于位置的应用。借助蓝牙 5.1 中的测向功能,标签的位置可以基于到达角 (AoA) 和出发角 (AoD) 数据进行准确计算(图 1)。

蓝牙中的高级测向功能支持精确定位的示意图图 1:蓝牙中的高级测向功能支持在三维空间中精确定位标签。(图片来源:Nordic Semiconductor)

BLE 应用仍然仅限于短程应用,而 Wi-Fi 更大的覆盖范围使其可以有效用于仓库或企业园区内的资产跟踪应用。然而,Wi-Fi RTLS 标签通常是昂贵的器件,对电源的要求使得电池供电不切实际,从而应用仅局限于跟踪较大型的昂贵资产。同时,使用其中任何一种技术进行大规模部署时,都会因接收带宽中的噪声增加而受到影响,导致数据包丢失或损坏以及位置检测能力下降。

尽管 RFID、BLE 和 Wi-Fi 可以在本地跟踪资产,但一旦资产离开仓库或企业园区,这些技术都无法提供所需的覆盖范围来轻松跟踪资产。在区域甚至全球范围内跟踪包裹或设备的能力,取决于是否有一种能够同时实现扩展覆盖范围和低功耗运行的无线技术。

虽然基于低功耗超宽带 (UWB) 技术的替代方案可以达到很远的距离,但网络覆盖范围仍然有限。实际上,几乎没有替代方案能够提供低功耗广域网 (LPWAN) 蜂窝解决方案现所提供的全球覆盖。这些蜂窝解决方案基于第三代合作伙伴计划 (3GPP) 定义的 LPWAN 技术标准,该组织是制定移动通信标准的国际联盟。

通过蜂窝连接实现全球覆盖

在 3GPP 标准中,基于 LTE-M 和 NB-IoT 技术的标准专门用于提供相对轻量级的蜂窝协议,非常符合物联网对数据速率、带宽和功耗的要求。

根据 3GPP 版本 13 中的定义,LTE Cat M1 是一种 LTE-M 标准,支持 1 Mbps 的下行链路和上行链路传输速度,延迟时间为 10 到 15 毫秒 (ms),带宽为 1.4 兆赫 (MHz)。同样根据 3GPP 版本 13 中的定义,Cat-NB1 是一种 NB-IoT 标准,下行链路传输速度为 26 Kbps,上行链路传输速度为 66 Kbps,延迟时间为 1.6 到 10 s,带宽为 180 千兹 (kHz)。根据 3GPP 版本 14 中的定义,Cat-NB2 是另一种 NB-IoT 标准,提供更高的数据速率,下行链路为 127 Kbps,上行链路为 159 Kbps。

虽然这两大类 LPWAN 技术的具体特征远远超出了本文的范围,但两者都可以有效地用于典型的资产跟踪应用。在紧凑型封装中将传感器与全球卫星定位系统 (GPS) 功能相结合,基于 LTE-M 或 NB-IoT 蜂窝 LPWAN 的资产跟踪解决方案可以支持资产管理和端到端物流所需的各种功能。

鉴于 LPWAN 在实现更高效率和成本节约方面的潜力,蜂窝 LPWAN 将继续在物流中发挥更大的作用。随着 Nordic Semiconductor 推出 nRF9160 SiP,开发人员可以更快、更轻松地满足对 LPWAN 设备日益增长的需求,这些设备需要用来实现更有效的资产跟踪或其他物联网应用。

SiP 器件能如何提供即用型资产跟踪解决方案

Nordic Semiconductor 的低功耗 nRF9160 SiP 器件将 Nordic Semiconductor nRF91 片上系统 (SoC) 器件与支持电路相结合,在单个 10 x 16 x 1.04 毫米 (mm) 接点栅格阵列 (LGA) 封装中提供完整的 LPWAN 连接解决方案。除了专用于应用处理的基于 Arm® Cortex®-M33 的微控制器,nRF91 SoC 型号还在 NRF9160-SIAA SiP 中集成了 LTE-M 调制解调器,在 NRF9160-SIBA SiP 中集成了 NB-IoT 调制解调器,并在 NRF9160-SICA SiP 中集成了 LTE-M 和 NB-IoT 以及 GPS。此外,nRF9160 SiP 已通过预先认证,可满足全球、区域和运营商的蜂窝要求,让开发人员能够快速实施蜂窝连接解决方案,而不会出现通常与合规性测试相关的延迟。

所有 SiP 版本都结合了基于微控制器的应用处理器和调制解调器,以及一组丰富的外设,包括传感器设计中经常需要的 12 位模数转换器 (ADC)。该 SiP 进一步将 SoC 与射频前端、电源管理集成电路 (PMIC) 和其他元器件封装在一起,创建了一种即用型 LPWAN 连接解决方案(图 2)。

Nordic Semiconductor 的 nRF9160 SiP 示意图图 2:Nordic Semiconductor 的 nRF9160 SiP 结合了带有应用处理器和 LTE 调制解调器的 SoC 以及所需的其他元器件,来实现用于资产跟踪或其他物联网应用的紧凑型低功耗蜂窝设计。(图片来源:Nordic Semiconductor)

作为主机处理器,SoC 的微控制器集成了许多安全功能,旨在满足物联网设备和资产跟踪系统等互连设备日益增长的安全需求。该微控制器以 Arm TrustZone 架构为基础,嵌入了 Arm Cryptocell 安全模块。该模块结合使用公钥加密加速器以及一些旨在保护敏感数据的机制。此外,安全密钥管理单元 (KMU) 为多种类型机密数据提供安全存储,这些数据包括密钥对、对称密钥、哈希和私有数据。另有单独的系统保护单元 (SPU) 提供对内存、外设、器件引脚和其他资源的安全访问。

工作时,该 SoC 的微控制器充当主机,可执行应用软件以及启动和停止调制解调器。除了响应来自主机的启动和停止命令外,调制解调器还利用大量集成模块(包括专用处理器、射频收发器和调制解调器基带)来处理自己的操作。该调制解调器运行嵌入式固件,完全支持 3GPP LTE 版本 13 Cat-M1 和 Cat-NB1。版本 14 Cat-NB2 在硬件上受支持,但需要其他固件才能运行。

nRF9160 SiP 如何实现低功耗蜂窝连接

nRF9160 SiP 结合使用广泛的硬件功能与全套电源管理功能。内含的 PMIC 由电源管理单元 (PMU) 支持,该单元可监测电源使用情况,并自动启动和停止时钟及电压调节器,以实现尽可能低的功耗(图 3)。

Nordic 的 nRF9160 SiP 包含 PMU 的示意图图 3:nRF9160 SiP 包含了 PMU,可供自动控制时钟和电压调节器以优化功耗。(图片来源:Nordic Semiconductor)

除了系统关闭电源模式(仅维持对唤醒设备所需的电路供电),该 PMU 还支持一对系统打开电源子模式。上电复位 (POR) 后,设备进入低功耗子模式,使包括应用处理器、调制解调器和外设在内的功能块处于空闲状态。在这种状态下,PMU 会根据需要自动启停不同模块的时钟和稳压器。

开发人员可以覆盖默认的低功耗子模式,而切换到恒定延迟子模式。在恒定延迟子模式下,PMU 会保持对某些资源的供电,以一定的功耗增加为代价来换取可预测响应延迟的能力。开发人员可以使用外部使能引脚调用第三种电源模式,使整个系统断电。一些系统设计使用 nRF9160 SiP 作为由主机系统主处理器控制的通信协处理器,其中通常会使用上述功能。

这些功耗优化功能使该 SiP 能够实现所需的低功耗运行,以确保延长资产跟踪设备的电池寿命。例如,当微控制器处于空闲状态且调制解调器断电时,在实时计数器处于活动状态的情况下,该 SiP 仅消耗 2.2 微安 (mA) 的电流。在微控制器和调制解调器均处于关闭状态,且仅对基于通用输入/输出 (GPIO) 的唤醒电路保持供电的情况下,该 SiP 仅消耗 1.4 mA 的电流。

在执行各种处理负载的同时,该 SiP 可持续实现低功耗运行。例如,以 64 MHz 时钟运行 CoreMark 基准测试仅需约 2.2 毫安 (mA)。当然,随着启用更多外设,功耗也会相应增加。不过,许多基于传感器的监控应用通常可以在降低工作速率的情况下有效运行,从而有助于维持低功耗运行。例如,当从高精度时钟切换到低精度时钟时,两种情况下均以 16 千样本/秒的采样率进行采样,集成差分逐次逼近寄存器 (SAR) ADC 的电流消耗将从 1288 mA 降至 298 mA 以下。

此外,该器件还将其他功耗优化功能用于本身的其他功能块,包括 GPS。在正常工作模式下,使用 GPS 进行持续跟踪会消耗约 44.9 mA 电流。通过启用 GPS 省电模式,可将持续跟踪的电流消耗降至 9.6 mA。通过将 GPS 采样率从持续降至每两分钟左右一次,开发人员可以大幅降低功耗。例如,每两分钟执行一次 GPS 定位修复时,GPS 模块仅消耗 2.5 mA。

该器件也对其他省电工作模式提供支持,可扩展到 nRF9160 SiP 的调制解调器。使用该器件,开发人员可以启用支持特殊蜂窝协议的调制解调器功能,专门用于降低电池供电互连设备的功耗。

利用低功耗蜂窝协议

与任何无线设备一样,除主机处理器外,最大的功耗因素通常是无线电子系统。传统的蜂窝无线电子系统利用内置于蜂窝标准中的省电协议。智能手机和其他移动设备通常使用一种称为不连续接收 (DRX) 的功能,该功能允许设备在运营商网络支持的一段时间内关闭无线电接收器。

同样,对于电池供电的资产跟踪器或其他物联网设备等低功耗设备,扩展不连续接收 (eDRX) 协议允许这些设备指定在重新登入网络之前的计划休眠时长。通过启用 eDRX 操作,LTE-M 设备可以休眠长达约 43 分钟,而 NB-IoT 设备可以休眠长达约 174 分钟,从而大幅延长电池续航时间(图 4)。

Nordic 的 nRF9160 SiP 调制解调器省电图表图 4:nRF9160 SiP 的调制解调器支持扩展不连续接收模式,让设备可以在与蜂窝网络协商的一段时间内休眠,从而大幅节省电量。(图片来源:Nordic Semiconductor)

另一种蜂窝网络工作模式称为省电模式 (PSM),让设备即使在处于休眠模式且网络无法访问的情况下,也能保持在蜂窝网络上的注册状态。通常,如果蜂窝网络在一段时间内无法访问设备,将会终止与该设备的连接,并要求设备执行重新连接过程,而这会消耗更多电量。在电池供电设备的长期运行期间,这种反复的少量耗电会耗尽或显著减少电池电量。

设备通过向网络提供一组定时器值来启用 PSM,这些值指示何时周期性地处于可用状态以及在返回休眠模式之前保持可访问状态的时长(图 5)。

蜂窝 PSM 协议休眠模式的图表图 5:蜂窝 PSM 协议允许设备通过协商无法被访问的特定时间段来充分利用低功耗休眠模式,而不会产生重新连接的功耗成本。(图片来源:Nordic Semiconductor)

由于进行了 PSM 协商,运营商网络不会断开设备。实际上,设备可以随时唤醒并恢复通信。这样做的好处是,当没有通信需求时,设备可以使用低功耗休眠模式,同时不会失去按需唤醒和即时通信的能力。

nRF9160 SiP 同时支持 eDRX 和 PSM,从而使设备能够以最小的功耗维持运行。当处于 PSM 的无法访问阶段时,该器件仅消耗 2.7 μA 的电流。eDRX 仅消耗稍多的电流,在 82.91 秒的周期下,在 Cat-M1 操作中消耗 18 μA,在 Cat-NB1 操作中消耗 37 μA。

开发低功耗资产跟踪解决方案

若要实现基于 nRF9160 SiP 的资产跟踪设备的硬件设计,除了去耦元器件、天线以及 GPS 和 LTE 天线的独立匹配网络所需的部件外,几乎不需要其他部件(图 6)。

Nordic Semiconductor 的 nRF9160 SiP 示意图(点击放大)图 6:若使用 Nordic Semiconductor 的 nRF9160 SiP,开发人员几乎不需要其他元器件,即可实现基于蜂窝网络的资产跟踪器或其他物联网设备的完整硬件设计。(图片来源:Nordic Semiconductor)

开发人员可以轻松地将 nRF9160 SiP 与蓝牙器件(例如 Nordic Semiconductor 的 NRF52840 蓝牙无线微控制器和传感器)相结合,以实现基于传感器并支持 GPS 的复杂蜂窝资产跟踪器,让用户可以通过智能手机和其他支持蓝牙的移动设备访问数据。

通过一对开发套件,Nordic Semiconductor 进一步帮助开发人员快速开始评估基于蜂窝网络的设计。为了快速进行基于传感器的资产跟踪应用的原型开发,Nordic Semiconductor 的 NRF6943 THINGY:91 蜂窝物联网开发套件提供了完整的电池供电传感器系统。该系统将 nRF9160 SiP 与 NRF52840 蓝牙器件、多个传感器、基本用户界面元器件、1400 毫安时 (mAh) 的可充电电池和 SIM 卡进行配对,以提供开箱即用的蜂窝连接(图 7)。

Nordic Semiconductor 的 NRF6943 THINGY:91 蜂窝物联网开发套件示意图(点击放大)图 7:Nordic Semiconductor 的 NRF6943 THINGY:91 蜂窝物联网开发套件提供了一个完整的平台,可通过蜂窝和蓝牙连接快速对基于传感器的应用进行原型开发。(图片来源:Nordic Semiconductor)

对于定制开发,Nordic Semiconductor 的 NRF9160-DK 套件可作为直接开发平台,也可作为新设计的参考。NRF9160-DK 套件虽然不包括 THINGY:91 之类的传感器,但结合了 nRF9160 SiP 和 NRF52840 蓝牙器件,并包括 SIM 卡和多种连接器,例如 SEGGER J-Link 调试器接口(图 8)。

Nordic Semiconductor 的 NRF9160-DK 套件示意图(点击放大)图 8:Nordic Semiconductor 的 NRF9160-DK 套件提供了一个全面的开发平台,可供针对资产跟踪和其他物联网解决方案实现基于蜂窝网络的定制应用。(图片来源:Nordic Semiconductor)

对于资产跟踪应用的软件开发,Nordic 包括一个完整的 nRF9160 资产跟踪应用程序及其 nRF Connect 软件开发套件 (SDK)。该 SDK 结合了 Nordic 的 nrfxlib 软件库(用于 SoC)、Zephyr Project 实时操作系统 (RTOS) 的 Nordic fork(用于资源受限设备),以及 MCUboot 项目安全引导程序的 Nordic fork

THINGY:91 和 NRF9160-DK 套件预装了资产跟踪应用程序,旨在与 Nordic 自家的 nRF 云物联网平台连接。使用任一个套件的预配置设置,开发人员都可以立即开始评估基于蜂窝网络的资产跟踪,以及进行自有应用的原型开发。

除了预装的固件外,Nordic 还提供了资产跟踪应用的完整源代码。通过查看此代码,开发人员可以更深入地了解 NRF9160 SiP 的功能,及其在资产跟踪应用中支持 GPS 定位和 LTE-M/NB-IoT 连接的用途。

该示例软件中的主例程说明了用于实现自定义资产跟踪应用的基本设计模式。启动后,主例程将调用一系列初始化例程。在这些例程中,一个初始化例程通过发送一系列注意 (AT) 字符串来定义连接参数并调用调制解调器的内置功能以连接至运营商网络,从而配置调制解调器并建立 LTE 连接。另一个初始化例程 work_init 会初始化一组 Zephyr RTOS 工作队列,包括用于传感器、GPS 和开发板按钮的队列(清单 1)。

复制
static void work_init(void)
{
       k_work_init(&sensors_start_work, sensors_start_work_fn);
       k_work_init(&send_gps_data_work, send_gps_data_work_fn);
       k_work_init(&send_button_data_work, send_button_data_work_fn);
       k_work_init(&send_modem_at_cmd_work, send_modem_at_cmd_work_fn);
       k_delayed_work_init(&send_agps_request_work, send_agps_request);
       k_delayed_work_init(&long_press_button_work, long_press_handler);
       k_delayed_work_init(&cloud_reboot_work, cloud_reboot_handler);
       k_delayed_work_init(&cycle_cloud_connection_work,
                         cycle_cloud_connection);
       k_delayed_work_init(&device_config_work, device_config_send);
       k_delayed_work_init(&cloud_connect_work, cloud_connect_work_fn);
       k_work_init(&device_status_work, device_status_send);
       k_work_init(&motion_data_send_work, motion_data_send);
       k_work_init(&no_sim_go_offline_work, no_sim_go_offline);
#if CONFIG_MODEM_INFO
       k_delayed_work_init(&rsrp_work, modem_rsrp_data_send);
#endif /* CONFIG_MODEM_INFO */
}

清单 1:Nordic 资产跟踪器样例应用程序建立在用于队列管理的 Zephyr RTOS 实用程序基础上,可创建一系列具有关联回调例程的队列以处理各种任务,例如传感器数据采集和云传输。(代码来源:Nordic Semiconductor)

在此初始化阶段,与每个工作队列初始化调用关联的函数将执行自己的特定初始化任务,包括执行任何必要的更新所需的任务。例如,由 work_init 调用的 sensors_start_work_fn 函数会建立一种轮询机制,该机制可以定期调用 env_data_send 函数将传感器数据发送至云(清单 2)。

复制
static void env_data_send(void)
{
[code deleted]
       if (env_sensors_get_temperature(&env_data) == 0) {
              if (cloud_is_send_allowed(CLOUD_CHANNEL_TEMP, env_data.value) &&
                  cloud_encode_env_sensors_data(&env_data, &msg) == 0) {
                     err = cloud_send(cloud_backend, &msg);
                     cloud_release_data(&msg);
                     if (err) {
                           goto error;
                     }
              }
       }
 
       if (env_sensors_get_humidity(&env_data) == 0) {
              if (cloud_is_send_allowed(CLOUD_CHANNEL_HUMID,
                                    env_data.value) &&
                  cloud_encode_env_sensors_data(&env_data, &msg) == 0) {
                     err = cloud_send(cloud_backend, &msg);
                     cloud_release_data(&msg);
                     if (err) {
                           goto error;
                     }
              }
       }
[code deleted]

清单 2:Nordic 资产跟踪器样例应用程序演示了用于传输数据的基本设计模式,其中包括此代码段所示的传感器数据。(代码来源:Nordic Semiconductor)

在 Nordic Semiconductor 的 NRF6943 THINGY:91 蜂窝物联网开发套件上运行资产跟踪器样例应用程序时,该应用程序会发送 THINGY:91 板载传感器的实际数据。在 Nordic Semiconductor 的 NRF9160-DK 开发套件上运行时,该应用程序将使用 SDK 中包含的传感器模拟器例程发送模拟后的数据。开发人员可以轻松扩展此软件包以实现自己的资产跟踪应用程序,或使用其代码示例来实现自己的应用架构。

总结

使用传统方法时,在农业或智慧城市环境中跟踪贵重包裹或定位高价值资产的能力一直局限于无线技术,例如 RFID 标签、蓝牙和 Wi-Fi。设计人员需要在更长的服务时间提供更远的覆盖范围和更准确的位置信息。LTE-M 或 NB-IoT 等低功耗 LTE 蜂窝标准与 GPS 相结合,即可满足这些要求,但是由于射频设计的难度和细微差别,实施起来可能会遇到挑战。

如上所述,Nordic Semiconductor 的 SiP 为长距离、低功耗的资产跟踪提供了一种近乎即用型的解决方案。凭借此预认证的 SiP 及其开发套件,开发人员可以快速评估蜂窝网络连接性、开始进行基于蜂窝网络并支持 GPS 的资产跟踪应用原型开发,并构建可充分利用 LTE-M 和 NB-IoT 蜂窝连接的扩展覆盖范围和低功耗要求的定制资产跟踪设备。

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

关于此作者

Stephen Evanczuk

Stephen Evanczuk 拥有 20 多年的电子行业编辑经验,主题涉猎广泛,涵盖硬件、软件、系统以及包括物联网在内的各种应用。他拥有神经网络领域的神经科学博士学位,曾经从事航空航天领域大规模分布式安全系统和算法加速方法方面的工作。目前,他不是在撰写技术和工程文章,就是在研究深度学习在识别和推荐系统方面的应用。

关于此出版商

DigiKey 北美编辑