基于6TiSCH的网状网络解决实施挑战

描述

  缺乏能够在网状网络中连接无数物联网设备的流行标准是有问题的。这就是欧洲公司和ST 合作伙伴计划成员EMBETECH提出基于 6TiSCH 的网络堆栈 embeNET 的原因。embeNET 用于嵌入式系统,使用 C 库来优化使用 Cortex 微控制器的设备之间的操作。该技术目前在远程 32 位无线 MCU STM32WL上运行,但即将支持更多 ST MCU。开发人员只需使用 EMBETECH 开发的 API 即可利用网络协议的各种功能。因此,团队绕过高度复杂的实施问题,专注于创建原始且高效的基础架构。

  物联网 (IoT) 中网状网络背后的挑战

  为什么能源效率和干扰存在问题?

  在《物联网:挑战与机遇1 》一书中,Maria Palattella 等人。(2014) 2解释工业网络如何越来越多地转向基于 IP 的技术。这一趋势很受欢迎,因为它依赖于熟悉的概念,同时支持同一网络上的许多设备。挑战在于它必须适合低功耗设备,这意味着无线电不能总是打开。该标准还必须处理由于许多设备使用相同频率进行无线通信而造成的干扰和衰落。答案是 IEEE802.15.4-2011 媒体访问控制 (MAC) 协议,称为时隙信道跳频 (TSCH,发音为 Tish)。

  什么是 TSCH?

  顾名思义,TSCH 依赖于时间同步。该标准将“时隙”定义为一个时间单位。它的持续时间不是由标准设定的,因此可能会有所不同。在时隙中的特定时间,网络会发送一个带有定时成分的数据包,每个节点都会记录它接收到该帧的时间。有了这些信息,所有设备都可以同步它们的网络时钟,从而补偿任何潜在的漂移。借助计数器,每个设备还可以知道网络经过了多少个时隙。称为绝对时隙编号(ASN),它在每个时隙后递增,使用一个五字节整数,因此可以持续数百年。

  TSCH 的另一个主要组成部分与信道跳频有关,这是一种使设备能够切换无线频率的机制。为了确保附近的节点使用相同的频率并因此可以进行通信,该标准使用 ASN 来计算确定使用什么频率的偏移量。由于所有节点都受益于紧密的时间同步并且都知道 ASN,因此信道跳变变得高度可靠。然而,在传输失败的情况下,重传将在不同的频率上进行。实际上,该策略比以相同频率重新发送相同数据包的成功机会更大。

  为什么 TSCH 很重要?

  使用时间同步意味着 TSCH 是一种确定性无线标准。传输准确无误,这意味着微控制器知道何时打开无线电以及打开多长时间,从而节省大量能源。围绕时间进行协调还可以防止节点丢失数据包。此外,信道跳频允许使用所有可用于 sub-GHz 和 2.4 GHz 无线电的信道。因此,工程师可以使用许多设备而不会陷入一个通道,从而降低了干扰的风险。因此,TSCH 为大规模扩展操作打开了大门。

  什么是 6TiSCH?

  本质上,6TiSCH 是一个使用 IPv6 子网的 TSCH 网络。由于该协议使用 128 位地址,因此公司可以为每个设备应用单个 IPv6 标识符,而不必担心用完,即使在大型工业环境中也是如此。在幕后,6TiSCH 相当全面。它定义了如何路由和跟踪数据包并实施服务质量以优先考虑某些数据包以及安全功能等。简而言之,IETF(互联网工程任务组)构想了 6TiSCH 以应对广泛的应用。无论是智慧城市、交通、建筑还是工厂,6TiSCH 旨在解决网状网络固有的挑战。

  embeNET,物联网Mesh网络民主化的解决方案

  为什么 6TiSCH 仍然不是流行词?

  虽然 6TiSCH 解决了困扰物联网设备网状网络的许多问题,但我们可以问为什么该技术尚未普及。毕竟,关于该主题的第一个 IETF 邮件列表可以追溯到 2013 年 1 月,而上面提到的 2014 年的书已经概述了该技术的优势和重要性。然而,许多工程师仍然不知道它的存在或没有太多经验。原因是虽然在学术上很吸引人,但 6TiSCH 在商业上很难实施。这就是 embeNET 试图通过提供带有 API 的整个网络堆栈来解决的问题,以提高易用性。

  embeNET 如何解决实施挑战?

  公司经常难以在微控制器上实现 6TiSCH 网络堆栈。虽然 IETF 定义了针对低功耗设备的机制,但它不提供交钥匙解决方案。因此,EMBETECH 采用了该技术并改进了调度功能,确保了工业环境中的稳定性,并针对资源受限的设备优化了网络堆栈。启用所有服务后,库只需要 100 KB 的闪存。因此,作为示例,让我们以 STM32WL 为例,它是第一个具有嵌入式多调制 LoRa 收发器的 MCU。在这种情况下,其 256 KB 的存储空间足以存储固件、更新机制和应用程序。

  网络堆栈还使用了 ST 的硬件功能。例如,它使用了 STM32WL 的 FSK/(G)FSK 调制功能,从而简化了整体设计。同样,该库使用 ST 的加密核心及其真实数字生成器来加速加密操作。因此,embeNET 只能在一个 STM32WL 内核上运行。网络堆栈可以在与应用程序相同的 Arm® Cortex®-M4 上运行,而不会对性能产生负面影响。简而言之,开发人员享有较高的优化水平,并且可以在各种 STM32 MCU 上轻松重用他们的系统。例如,智能电表应用的基本网状网络每天发送一个数据包,可以使用 STM32WL 和 AA 电池,可持续使用大约十年。

  审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分