专注 Sub-G 无线组网通信方案
 
设为首页 | 收藏本站

ZigBee无线自组网技术的应用局限性之四:接入可靠性分析

 二维码
作者:微网智控来源:原创网址:http://www.wiminet.cn

ZigBee的很多产品的MAC层接入机制采用的就是CSMA/CA的接入机制,这个机制固然是一种非常有效的避免碰撞的模型,但是某些硬件或者结构上的设计不当则会导致非常严重的性能问题,在之前有一个朋友刚好经历过这一档子事,历经坎坷最终在厂家的大力支持下才发现是CAMA/CA的机制所致。


几年前,有一位朋友接受一位日本客户的手持机产品的定制业务,由于日本是全世界对于无线电管理最严格的国家,没有通过认证的产品光是通过日本海关就有很大的风险,更别说在日本市场销售呢。刚好这位日本客户做事风格也是非常的“日本”,严格按照他们国家的法律法规办事,绝不投机取巧,朋友看到日本客户这么严谨,细致,就非常放心的签订了合作协议,然后快速展开了设计工作。很快日本客户带来了一款通过日本电波法规(ARIB STD-67)认证的小模块,模块的做工非常精致,大约2X50px2,模块的核心芯片是TI公司的一款高端芯片CC1020,外壳上还有一个金属屏蔽罩子,有一个大约425px长度的黑色馈线甩出来,天线的末端还有一个小帽子,内部点上胶水了,不会轻易脱落。嗯,做工近乎完美,日本人的工匠精神那可不是盖的!


很快100台样机做出来了,手持机的外壳是长条形的,带有按键和点阵液晶屏,整机显得古典大方,按键手感也十分的出色,看起来一切顺利,离成功不远了。接下来就是做真机拉距测试,毕竟大家之前对模块有过几次单独的摸底测试,心里已经有数了,依据以往的经验,即便性能上有点折扣,大家也是有心里准备的。经过几个月的辛苦研发熬到这一天也不容易,因此大家情绪高涨,就等着开香槟庆祝呢。


那是9月末的一天,马上就要国庆节了,天气那是出奇的良好,测试条件和平常没有什么两样,但是测试的结果让所有人都然大吃一惊!竟然有二十几部机器的通讯距离非常近,有的甚至和接收机面对面对着都发不出数据。这样的测试结果将工程师们的信心瞬间击至谷底,他们都从下午一直鼓捣到了后半夜都不明白其中的缘由。


后来朋友紧急联系了日本客户,让他们寻求原厂的技术支持,日本客户在中间代为沟通,辗转来回了几次之后,发现完全是驴唇不对马嘴,根本说不到一个点上,最后索性将这其中的几台完全不能发送数据的机器让日本客户带回原厂去做全面细致的检测。


接下来是漫长的等待……


几周之后的一天中午,朋友正在外面吃饭,突然日本客户打来了长途电话,告诉他赶快收邮件,说日本原厂有了回复了。朋友放下筷子赶紧回去查看,邮件竟然是日文写的,中间有的地方还夹杂着英文,还带有一个附件,是一副图片。刚好朋友的公司有一位在上大学期间选修过日语的女孩,她被叫过去凑在一起阅读翻译,看完了邮件,真相很快就大白了!


原来问题就出在天线这个环节了,因为手持机的是长条形的,但是长度肯定没有425px长,所以天线在里面是手工缠绕的。由于手工缠绕的不规则,有些天线的头部直接挨着了手持机主板上的8051单片机的一颗48MHz的晶振了,晶振的辐射出来的微弱的信号被天线接收到了,而无线模块的内核CC1020则在CSMA/CA机制的作用下,认为空中有其他设备在发射无线电波,因此不断的回退。由于晶振的辐射是持续稳定存在的,因此这个模块就永远也发射不出数据了,而那些天线离晶振稍远一些的模块,接收到的晶振的辐射要低一些,因此通讯的距离就变得很近。


大家可能很好奇,那一份邮件中的附件带的照片是什么呢?其实就是一份安捷伦公司的专业仪器给出来的晶振辐射的测试报告,在中间的某个水平附近画了一条很粗的红色标示线,这根线就是CC1020设定的CSMA/CA的回退水平!从这个案例可以看出,CSMA/CA机制还有一个十分致命的缺陷,那就是不太容易把握一个度,也就是说怎么设置射频芯片的噪声门限呢?


如果这个门限设置的太低,那么射频芯片对于电磁波干扰的检测将会特别灵敏,产品本身或者(数字电路的本底辐射)环境本身稍微有一点干扰,射频芯片就不断的往后回退,一直不能发射数据;如果这个门限设置的太高了,则射频芯片对于碰撞的检测非常的迟钝,明明就在不远处的前方已经有一个节点正在发送数据,但是这个芯片通过CSMA/CA机制检测发现信道低于检测门限,认为此时无线信道是干净的,没有别的节点在发送数据,自己启动了发送流程,导致数据撞车从而引起本次传输失败。而现实的情况则是作为产品设计而言,是不可能事先知道相邻接点的摆放位置和相对距离的,因此也很难事先确定好一个合适的载波检测门限,这等于要有现场的工程师在产品布设完成之后,单独调整每一个的载波检测门限,这显然是非常荒唐的要求嘛!

   

  下图是某射频芯片的CSMA/CA的门限设定寄存器描述。基于上述分析可以看出,如果要真的基于CSMA/CA的机制来设计信道评估算法,这样的产品的一致性和稳定性可想而知!或许有些情况下工作还算可以,有的情况下变得莫名其妙,而问题的严重程度则随着网络规模和通讯密度的逐步增加而急剧恶化,作为一个最终产品的使用者而言,是绝对想不到问题的根源出在这么基础的环节的!

77.png


基于上述分析可以看出,CSMA/CA机制的ZigBee网络对于环境是有一定的要求的,如果用户的主板本身噪声很大,或者设备工作环境附近有其他频带的电磁波干扰,那么这些ZigBee无线模块就会不断的回退,严重的时候就是多近的距离也不会发送数据,让人感觉好像是程序设计错误或者硬件损坏了,其实那就是环境干扰啊。


那么问题来了:无线模块的厂家可能花费大量的时间和精力,将无线模块产品设计的非常精良,但是一个普通用户将模块集成到他的产品中去了之后,发现模块距离很近,甚至根本就不能发送数据,你该怎么跟他解释呢?最最要命的一点是,用户将模块集成的很好,送到现场去运行了一段时间,大面积的投诉来了,说模块通讯距离近或者根本不能发送数据,你该怎么跟用户解释呢?


事实上,这个问题从严格意义上来讲是没有解的!作为产品提供方你根本就没有资格向用户提出使用方面的前置条件,他们遇到这种问题的应对措施简单粗暴,那就是直接丢到垃圾桶里,然后再也不理你了。近年来很多的智能家居产品都遭遇了这样的悲惨命运,有几个做现场技术支持的工程师知道问题背后真正的根源在CSMA/CA这里呢?


微网智控WiMi-net无线自组网技术在接入可靠性环节做了深入全面的支持,我们会在后续的连载文章中为大家奉献精彩纷呈的点评和分析。