基于NRF24L01+无线自组网标定归组的通讯协议设计和思考

xiaoxiao2021-02-28  21

基于NRF24L01+的无线自组网标定归组的通讯协议设计和思考


ALGORITHM DESCRIPTION:

在面对不定数量的测量模块并且物理地址随机的情况下,如何进行快速组网并进行标定归组? 我们都知道在集合排队时,当教官下达排队指令时,有的人反应较快,能够迅速做出回应,但是也有的人反应较慢,动作稍微有些迟缓。但是最终都能形成队列。 基于上述现象原理,现提出一种快速组网并且进行标定归组的算法。

DATA FORMAT:

说明信号类型(1Byte)根地址(1Byte)一级地址(1Byte)二级地址(1Byte)器件地址(4Byte)当前信号频道(1Byte)信号强度(1Byte)跳频信号频道(1Byte)功能码(1Byte)数据(4Byte)预留位(3Byte)校验值(1Byte)广播信号0x000x000x000x000x001Byte1Byte1Byte0x000x000x001Byte响应信号0x880x000x01~0xFF0x00~0xFF4Byt1Byte1Byte1Byte0x000x000x001Byte确认信号0xFF0x000x01~0xFF0x00~0xFF4Byt1Byte1Byte1Byte0x000x000x001Byte跳频信号0x0A0x000x01~0xFF0x01~0xFF4Byt1Byte1Byte1Byte0xA10x000x001Byte查询信号0xA00x000x01~0xFF0x01~0xFF4Byt1Byte1Byte1Byte0xA20x000x001Byte数据信号0xAA0x000x01~0xFF0x01~0xFF4Byt1Byte1Byte1Byte0xA44Byte0x001Byte

PROTOCOL DESCRIPTION:

广播信号: 1. 根节点主机在固定的间隔时间内发送的自组网信号;其中广播信号中包括信号类型、根地址、当前信号频道、实时信号强度、跳频信号、功能码(用于广播信号发送计数)和校验值。(其他为0x00)接收到的第一个从机信号后,立马将它归为根地址为0x00,一级地址为0x01,二级地址为0x02,其他的不变,并保存下来;对于其他的从机信号要求确立为一级节点的,根据一级节点的主机数量而定,超过额定数量的予以驳回或不予理会。 2. 节点从机在接受到广播信号后,对信号类型进行检查;当为广播信号时,检查自身的一级地址和二级地址是否为0,不为0时,忽略剩余广播信息,并发出已配置地址信号;为0时,则自身给自己分配一个一级地址和二级地址并附加随机延时,回传响应信号给根节点主机,并得到确认信号确认,并且保各自都要有保存备份。(地址分配由低到高) 响应信号: 1. 根节点主机接收到从机返回的信号;其中响应信号中包括信号类型、根地址、一级地址、二级地址、物理地址、当前信号频道、信号强度、跳频信号频道和校验值。(其他为0x00) 2. 节点从机在接收到广播信号后,自身给自己分配一、二级地址后,经过随机延时发送的的信号。 确认信号: 1. 根节点主机在一个广播信号周期内接收到响应信号后,对标定归组信息检查无误后,对相应的物理地址的从机发出确认信号;其中确认信号中包括信号类型、根地址、一级地址、二级地址、物理地址、当前信号频道、信号强度、调频信号频道和校验值。(其他为0x00) 2. 节点从机接收到确认信号后,检查自身是否符合确认信号中的物理地址并作出相应的动作,否则忽略该确认信号。得到确认信号的节点从机,发出已经组网完成信号,并自动忽略往后的组网、响应和确认信号。 调频信号: 1. 根节点主机完成对信号强度的检测,并决定是否进行调频操作,此模式只在组网完成后才能进行操作。 查询信号: 1. 根节点主机对相应一、二级地址的从机下发数据查询指令; 2. 节点从机接收到查询信号后,回传数据信号给根节点主机,此模式只在组网完成后才能进行操作。 数据信号: 1. 根节点主机接收到数据信号后,将有效数据存入缓存区; 2. 节点从机返回的采集数据信号,此模式只在组网完成后才能进行操作。


ADDITIONAL INFORMATIONS:

问题难点: 1. 由于根节点主机发送的所有信号,其他从机都能够接收到,为了避免通讯冲突,从机发送响应信号时引入了随机延时的机制,让响应信号有了先后之分,但是仍然有可能导致个别从机的延时时间是一样的。 2. 由于根节点主机和所有的节点从机通讯的频道相同,是否会因为节点从机的数量过多会引起通讯质量下降? 3. 在当前通讯频道的信号强度弱的情况下,主机如何控制所有从机切换频道,进行跳频操作? 4. 是否在根据一、二级地址和物理地址的基础上,进行频道的分组? 5. 如何确定从机地址的唯一性?

转载请注明原文地址: https://www.6miu.com/read-1650266.html

最新回复(0)