许多用户使用其他厂家的433M透传无线模块反馈这样的问题:前期购买几个样品测试,在无线信号覆盖半径内,收发包测试都很稳定,但是小批量购买100个模块收发就会出现无法收发的情况。这是什么原因呢?
首先科普一下,无线电波,在同一个信道同一时刻只允许一个节点发射行为。
433M的无线透传模块,没有专用的MAC层,缺少时钟调度机制,如果只是几个样品,那么无线网络中就不存在拥塞,收发数据就是正常的;如果无线通信的节点数量增加,那么就会出现如同十字路口多个车辆强行通过的拥塞问题。
现实生活总针对拥塞问题,我们采取红绿灯管控措施,那么无线通信的网络中如何在遵循无线电波在同一个信道同一时刻只允许一个节点发射行为,又能支持几百个无线节点的正常收发通信呢?
此时就需要在无线网络中出现一个类似红绿灯作用的时钟调度机制,这样就可以在这个网络中进行有序的正常收发通信。有下面两种方式:
方式一:用户应用层加入时钟调度机制
有些用户在购买433MHz透传无线模块后,在用户自己的CPU应用层加入时钟调度机制,可以解决这个问题,另外由于它是通过串口下达指令的,因此效率低,延迟大,无线通信的带宽利用不充分,就会影响整个无线通信的时效性,因此这并不是一个最优的解决方案。
方式二:无线模块内部软件实现
如果能在433MHz无线模块内部本身就可以充分利用带宽,在专用的MAC层处理好这个时钟调度机制,引入TDMA算法,就能很好的解决这个问题,同时方便用户高效使用无线模块,按照OSI七层模型设计的无线自组网协议,内置TDMA算法就能完美的解决这个问题,在信号覆盖范围内实现100%稳定可靠的无线通信。
无线通信网络的OSI七层模型第二层就是MAC----链路层 (MediaAccess Control Layer ): TDMA时隙的分配,请求,确认,锁定,释放工作,实现大量节点同时访问网络情况下的仲裁,通过排队机制实现有 序接入网络。
|