将手册翻译成中文并做记录,网页版布局莫名其妙,笔记word放在文档末尾
MiWi是一种类似于ZigBee的网络协议,也可以用来Mesh组网,本篇博客仅仅翻译了微芯手册的第五章Mesh部分

MiWi组建mesh网络

1、MiWiMesh设备类型
MiWiMesh协议支持以下设备类型:
1.1局域网协调员
1.1开始建立一个网络
1.2分配和维护协调器及其终端设备地址
1.3作为路由帧的协调器
1.4通过调试控制可纳入网络的设备
1.2协调员
2.1作为终端设备加入网络
2.2请求PAN协调员讲角色升级为协调员
2.3支持网络内帧的路由
2.4存储来自于PAN协调器的调试信息,只允许调试
2.5维护其终端设备及地址
2.6为休眠的终端设备维护数据
1.3终端设备
3.1通过可用的协调器连接到网络
3.2支持电池供电设备的Rx-On端设备和sleep端设备
3.3支持RX-On和休眠端设备之间的动态切换

2、MiWiMesh帧格式

1.png

3、MACHeader-帧控制字段

图片2.png

图片3.png

3.1帧类型
帧类型子字段的长度是3位,应该设置为001-数据
3.2安全使能
SecurityEnabled子字段的长度为1,如果帧被MAC子层保护,则为1,否则为0。只有当SecurityEnabled子字段设置为1时,MHR的辅助安全报头字段才会出现。
3.3帧等待
FramePending子字段的长度是1位,如果发送帧的设备有更多的数据给接收端,应该设置为1位。否则这个子字段应该设置为零。
帧等待子字段应使用仅在信标帧中,或者在CAP期间由在信标使能的PAN上运行的设备发送的帧,或者在任何时候由在非信标使能的PAN上运行的设备发送的帧。在所有其他时间,它应在传输时设置为零,在接收时忽略。
3.4确认请求
确认请求子字段的长度为1位,并指定在接收数据或MAC命令帧时是否需要从接收设备发出确认。如果这个子字段设置为1,接收设备只有在接收帧通过第三级过滤时才发送确认帧。如果这个子字段设置为零,接收设备将不发送确认帧。
3.5PANID压缩
PANID压缩子字段,长度为1比特,用于指定当源地址和目的地址同时存在时,是否只发送一个PAN标识字段。如果将该子字段设置为1,并且源地址和目的地址都存在,则帧只包含目的PAN标识符字段,并且认为源PAN标识符字段与目的PAN标识符字段相等。如果该子字段设置为0,并且源地址和目的地址都存在,则帧将同时包含源PAN标识符和目的PAN标识符字段。如果只有一个地址,该子字段被设为0,帧中包含与地址对应的PANIdentifier字段。如果两个地址都不存在,这个子字段应该设置为零,帧不应该包含任何一个PANIdentifier字段。
3.6目的地寻址模式
目的寻址模式子字段长度为2位,应设置为下表中列出的非保留值之一。如果该子字段等于0,且帧类型子字段没有指定该帧是确认帧或信标帧,则源寻址模式子字段应为非零,这意味着该帧被定向到具有源PAN标识符的PAN协调器。

图片4.png

3.7帧版本
FrameVersion子字段的长度为2比特,用于指定与帧对应的版本号。该子字段应设置为0x00表示与IEEE标准802.15.4-2003兼容的帧,0x01表示IEEE802.15.4帧。所有其他子字段值应保留以备将来使用。
3.8源寻址模式
源寻址模式子字段长度为2位,应设置为表5-2中列出的不保留值之一。如果该子字段等于0,并且帧类型子字段没有指定该帧是确认帧,则目标寻址模式子字段不为0,这意味着该帧来自于具有在目标PAN标识符字段中指定的PAN标识符的PAN协调器。

4、网络头
4.1跳传字段
Hops字段表示允许报文重传的跳数。例如,00h表示报文不重传。最大可能的跳数是0xFF。
4.2帧控制字段
帧控制字段是一个位图,它定义了如下图所示的报文行为。

图片5.png

下表详细描述了网络报头的帧控制字段。

图片6.png

图片7.png

4.3序列号字段
序列号字段的长度是1字节,它指定了帧的序列号标识符。从该节点发出的每一帧,序列号字段都应增加1,并且不能对路由帧进行更改。
4.4目的地PANID字段
只有Address与MAC位相同(MAC位为0)时,该字段才会出现。源地址字段SourceAddress字段的长度为2字节,它指定了发起帧的节点的网络地址。
4.5源地址字段
SourceAddress字段的长度为2字节,它指定了发起帧的节点的网络地址。
4.6目的地址字段
DestinationAddress字段的长度为2字节,用于指定目的节点的网络地址。目的地址字段可以按照下表设置除单播到一个节点的其他帧。不支持使用长地址传输数据。

图片8.png

4.7辅助安全报头字段
辅助安全报头字段指定安全处理所需的信息,包括如何保护帧(安全级别)和帧计数器。只有当帧控制字段中的安全启用子字段设置为1时,该字段才会出现。
辅助安全报头字段

图片9.png

安全等级
总共有四个安全等级:
0无安全
1认证-4字节MIC
44(加密)
5加密与身份验证-4字节MIC

5、MiWiMesh-设备寻址机制
当在网络中执行路由时,MiWiMesh使用一个2字节短的地址来指定网络中的节点。地址是在连接过程中分配的。较低的字节用于标识终端设备。较高的字节用于标识协调器。

图片10.png

6、MiWi网络工作时
MiWiMesh网络特性分为以下几类:
1.网络调试
2.启动并加入网络
3.在网络路由
6.1网络调试
网络调试是对能够参与网络的设备进行控制。
1.PAN协调器上的应用程序从一个或多个设备读取IEEE地址(例如,它可以改进为从条形码读取)。
2.PAN协调器根据读取的信息计算64字节的bloom过滤器值。
3.计算出的布隆过滤器值发送给网络中的所有协调器。
4.协调器只向bloomfilter中有IEEE地址的设备提供信标。
默认情况下,PAN协调器允许任何设备加入,因为启用了BLOOM_AUTO_JOIN,这意味着不过滤IEEE地址。
如果用户想根据通过MiApp_Commissioning_AddNewDevice设置的IEEE地址过滤设备,那么用户需要使用MiApp_SetAPI将BLOOM_AUTO_JOIN设置为0。
用户也可以在运行时使用MiApp_Commissioning_AddNewDevice添加新设备。该网络将允许这些新添加的设备。
6.2启动并加入网络
1.只有PAN协调器才能启动网络。
2.加入设备发送一个信标请求,以获取其个人操作空间中可用网络的信息。
3.PAN协调器或协调器通过使用bloom过滤器值解析给定的IEEE地址来评估信标请求。如果找到,它发送一个信标帧,信标负载包括PAN协调器跳数和bloom过滤器值(64字节)。如果没有找到,则丢弃该数据包。
4.接入设备收到信标帧后,对其进行解析,并在bloomfilter值中检查自己的地址,然后根据接收到的信标的关联许可、子节点容量和链路质量指标LQI(LinkQualityIndicator)来确定父节点。在选择了父节点后,它将MeshConnectionRequest报文(包括它的能力和JoinWish字段)单播给选中的父节点。JoinWish字段有2位C和ED,其余位保留。
—如果在JoinWish中同时设置了两个位,那么如果网络中当前不可用协调器容量,特定设备将作为终端设备加入。
—如果只设置了C位,则设备仅以协调者的身份加入。
—如果只设置了ED位,则该设备仅作为终端设备加入。
5.如果父节点是PAN协调器,并且JoinWish字段只设置了C和ED或C,那么PAN协调器检查它是否有一个新的协调器地址。如果可用,它发送带有设备地址的MeshConnectionResponse作为分配的新协调器地址。如果address不可用或JoinWish字段只设置了ED,则分配终端设备地址并发送MeshconnectionResponse。
6.如果父节点是协调器,则分配终端设备地址,并发送带有设备地址的MeshConnectionResponse作为分配的终端设备地址。
7.连接设备解析Mesh连接相应者并使用接收到的网络地址和接收到的网络密钥在网络中进行进一步的通信。
8.具有协调者能力的加入设备收到终端设备地址后,根据“角色升级超时时间”(RoleUpgradeTimeout,可配置)向PAN协调者发送角色升级请求报文,将自己的角色从终端设备升级到协调器。
9.当PAN协调器收到角色升级请求时,检查协调器地址是否可用。如果地址可用,它会分配一个新的协调器地址,并发送角色升级响应,其中包含已分配的地址和状态。如果一个地址不可用,那么它发送一个角色升级响应,状态为失败。
6.3在网络路由
1.在加入过程和角色升级过程中,所有协调者都更新路由表。
2.协调器中的路由表用于将数据包路由到目的设备。
3.当设备没有到达目的地址的下一跳地址时,会触发向目的地址发送路由请求的广播。
4.与AODV路由协议中遗留的路由请求不同,应答是从路由表中具有下一跳信息的任何节点生成的。
5.源设备(发起路由请求的设备)根据最小跳数和最佳LQI选择到达目的地的路由应答。
6.但是,为了周期性地建立和同步网络,路由表的更新会按照预先配置的时间间隔向单跳广播。
7.这确保了网络中的协调器与它的邻居共享邻居的信息。
word版本在这里下载,点击我