一种基于K连通的AMC无线监测系统
2020-11-05兰少峰陈雯柏刘玉伟
兰少峰,陈雯柏,郝 翠,刘玉伟,李 卫
(1.北京信息科技大学 自动化学院, 北京 100101;2.世源科技工程有限公司, 北京 100142)
近年来,半导体装备制程的不断升级以及半导体显示装备技术的发展对洁净空气的质量要求越发严格[1-3]。悬浮分子级污染物(Airborne Molecular Contamination,AMC)包括空气中的多种有害气体和金属离子,如:酸(Acid)、碱(Base)、可凝结物(Condensable)、掺杂物(Dopants)和其他(Etc)[1,3],对半导体装备制程的影响是十分明显的,存在以下不良反应:腐蚀精密设备、影响仪器精度、对制程中的材料成分附着力产生直间或间接的影响、IC芯片内连线因腐蚀而报废、污染还造成半导体元件性能偏差等,严重影响半导体产品的成品率,洁净室空气中的悬浮分子级污染物会对不同制程产生不良影响,甚至引发产品存在致命缺陷。半导体生产环境中,AMC如何科学、有效地监测和预警成为当前亟待解决的问题[1-3]。
目前,洁净室的AMC信息监测和统计主要以人工巡检为主[4],该方式无法有效避免人为因素造成的测量误差,而且人体在多个不同的点携带相同设备进行采样监测容易造成交叉污染和误判,人工巡检采集的信息量有限且往往不能及时有效的保存和分类,难以建立长期的监测和分析预警体系[5-9]。传统的多点在线式监测系统以有线式通信为主方,部署难度大、成本高。无线通信相对于有线通信而言,更易受到周围环境影响,当前的无线传感器网络环境监测系统都过于强调网络的功能性,假设网络连接稳定,进行功能性设计,网络抗毁性不足,网络的连通性作为衡量网络抗毁性的重要指标之一,主要受网络路由算法的影响,因此,研究无线传感器网络的抗毁性[10-13],设计抗毁性的无线路由算法[13]也同样是保证AMC监测系统运行稳定的重要目的。
本文首先通过构建一拖多式的终端数据采集节点和锂锰电池供电的低功耗路由节点来降低网络部署成本,数据汇总平台实现对采集数据的存储、显示及分析,其次,采用集中式控制的网络应用层调度机制,便于整个系统的维护和升级,最后将K连通抗毁路由算法和ZigBee无线自组网相结合,同时对该算法进行了链路有效性优化,提高了网络的抗毁性。
1 AMC监测系统方案设计
1.1 系统硬件结构
系统硬件结构如图1所示,主要包括一拖多式的终端数据采集节点、锂锰电池供电的低功耗路由节点、数据汇总平台三部分。
1.1.1一拖多式终端数据采集节点
一拖多式终端数据采集节点,主要由复合气体检测传感器、一拖多接口驱动系统、终端无线节点组成。复合气体检测传感器用于检测待测点AMC的浓度、温湿度等信息,一拖多接口驱动负责选择性的导通待测点的AMC监测通道,无线节点主要负责无线网络通信、复合气体检测传感器的数据交互、监测通道的导通与截止和节点状态监测。由于AMC监测所需的复合气体传感器成本较高,且实际应用中对AMC数据并不要求较高实时响应,故本系统设计的一拖多式终端采集节点,利用单个传感器轮询式监测多个待测点,并将所有待测点的AMC信息依次传递到监测系统网络中,最终由数据汇总平台进行存储和分析。
图1 系统硬件结构框图
1.1.2低功耗路由节点
低功耗路由节点,主要满足当通信距离或节点部署受限时增加路由器节点来弥补网络覆盖范围的需求,负责无线数据的转发。考虑到网络部署环境的复杂性和路由节点的灵活性,本文对路由节点采用电池供电,以此来降低网络部署难度和节点成本。由于锂锰电池放电曲线平缓,利于电量监控,且不易对洁净室环境造成二次污染,故本文选用锂锰电池对路由节点供电,并对电池电量进行监控,电量监测命令由后台管理系统下发,且下发周期由该路由器节点上行包数量决定,路由节点电量监测数据和终端采集节点的数据包一同发送给数据汇总端的协调器节点。
1.1.3数据汇总平台
数据汇总平台,主要包括用协调器无线节点、后台操作系统和后台数据库。协调器节点主要进行无线通信,负责将终端节点和路由节点的数据进行汇总接收,并将数据传输给后端数据库和操作系统。后端数操作系统主要负责对协调器节点传递的数据进处理、通过协调器节点下发控制指令、响应平台GUI层的指令、显示和分析数据。数据库负责存储前期和后期处理的各种数据及日志,建立完善的预警、分析和管理系统。其整体结构如图2所示。
图2 数据汇总平台整体结构框图
1.2 系统应用层调度机制
参考LoRaWAN、NB-IOT等广域物联网应用层典型调度机制,将数据汇总平台类比成NB-IOT协议中的核心网或LoRaWAN协议中的NS服务器,并为其设计类似的网络功能。终端数据采集节点及路由节点将所有监测信息上传给数据汇总平台,所有网络资源及应用层权限都由数据汇总平台进行管理及分配。这样不仅减轻了网络负担、优化了监测流程、提高了监测效率和系统响应速率、也便于后期系统的优化升级,其业务流程如图3所示。
图3 应用层业务流程框图
2 基于K连通的AMC监测网络路由算法
2.1 典型K连通路由算法分析
典型K连通构建算法主要通过功率控制和节点移动来实现,算法的优化方向有:降低网络能耗、延长网络生命周期、减少节点移动距离和最小化通信半径等方面[14]。基于2-跳信息的K连通构建策略[13]在综合前人基础上新近提出的K连通构建算法,所用方法和思想具有一定的代表性,因此本文以该算法作为典型算法进行研究。
该算法针对复杂环境下WSNs拓扑结构易于断裂的问题,以复杂网络理论和图论知识为理论基础,并结合已有的研究内容,构建基于K连通的无线传感器抗毁网络。主要包括四个步骤:节点分簇、簇内割点检测、簇内割点消除和簇间K连通构建,主要流程如图4所示。
1) 节点分簇阶段。假定节点之间无阻挡,首先采用随机选取簇头的方法将所有节点分若干个簇,然后设定节点通信半径,依据该值和节点间距判断两个节点间是否连通构建网络的连通图,最后采用经典K-MEANS算法在每个簇内选取1个对象作聚类中心。
2) 簇内割点检测。采用节点1-跳和2-跳信息相结合的方法,首先基于1-跳节点信息判断节点是否为割点,若是割点,则继续用2-跳信息判断节点是否为割点。该方案相与基于全局信息的判断策略相比,降低了算法复杂度;与只依靠1-跳节点的算法相比,提高了割点检测准确率。
图4 算法流程示意图
3) 割点消除阶段。依据检测到的割点信息,首先判断割点周边节点信息,查找距离割点最近节点,最终通过增加节点发射功率(通信半径)和节点移动相结合的方法达到消除割点的目的。
4) 簇间K连通构建阶段。基于整簇节点移动的复杂性,主要通过增加簇头节点的发射功率来构成簇间节点的K连通。
该算法从实际应用角度来说存在两个问题,首先是在构建网络拓扑的时候主要依据节点间距来判断节点间是否1-跳连通,在实际应用当中,会因为节点间信号传播衰减造成判断错误;其次是簇头选取范围是全部簇内节点,假如簇头节点和邻居簇头节点不能1-跳通信时,簇头节点数据需要簇内节点路由,从而造成簇内数据重发问题,影响网络速率,增加网络负担。
在没有障碍物的情况下,无线电波传输不受阻碍,也不会产生反射、折射、绕射、散射和吸收。但经过一段距离之后,能量会由于宽三而筛检,其衰减模型[10]公式为:
(1)
式(1)中:Lloss为信号衰减的相对量(dB);GM、GR分别为节点的发送和接受增益(没有增益时,取1);d为节点之间的距离(km);C为光速(m/s);f为信号的频率(MHz)。故ZigBee节点的丢包率会随着通信距离的增加而变大,测试结果如表1所示。
表1 丢包率测试结果
当有障碍物的情况下,收发节点之间的通信通过洁净室中各种建筑物和设备传播会引起无线信号的发射、散射和吸收,导致接收端收到的射频信号强度和链路质量有很大的衰减和差异性,会严重影响网络的整体性能。有学者对于障碍物对无线传感器网络信道的影响进行研究表明,墙体对于无线信道的影响最为严重[11],因此在洁净室内部署无线传感器网络必须充分考虑障碍物对网络健壮性和鲁棒性的影响。
障碍物对ZigBee通信干扰实验表明ZigBee网络易受障碍物的干扰。ZigBee丢包率和通信距离实验,表明节点间存在一个过渡区间,该区间节点间能够通信但是丢包率较高,基于此在判断节点之间是否连通,应该综合考虑节点间丢包率和节点间链路质量的影响。
2.2 K连通路由算法优化
假如两个节点间是1-跳连通,则节点间数据传输不需要经过路由转发,因此可将节点间连通性的判断归结为数据包是否经过路由这个问题,为了实现这个问题,本文依托ZStack-2.3.5协议栈,结合ZigBee网络特性和节点功能来查找解决方案。通过修改Zstack协议栈节点发送函数中用来确定节点发送数据的最大路由跳数的参数RADIUS_num值,可以查找出节点的1跳邻居节点。
网络组建好了之后,先有簇头节点按照该方法进行一跳节点信息判断,而后其余普通路由节点同时进行判断,最终各个节点将判断结果发送给协调器,协调器通过串口发送给电脑进行数据处理。基于该分析,依托Zstack协议栈,进行普通路由节点软件程序设计,其中消息包类型有两种:节点1-跳信息测试包(ASK_message)和节点1-跳信息测试回应包(ACK_message),程序流程如图5所示。
图5 程序流程框图
节点主要负责两个事件的处理:主动发起1-跳连通节点查找事件和1-跳连通性判断事件。
1) 进行1-跳连通节点查找事件。在定时器到达计数时间以后,会触发GENERICAPP_SEND_MSG_EVT事件,在该事件中首先调用GenericApp_SendThe_Message()函数发送连通度测试数据包。该数据包需要发送给节点周围所有在通信半径内的节点,因此需要采用广播模式。同时为了实现只有一跳节点才能接收到数据,需要将AF_DataRequest的最后一个参数设置为1。
2) 1-跳连通性判断事件。当节点接收到数据包时,会触发AF_INCOMING_MSG_CMD事件,然后调用GenericApp_MessageMSGCB( MSGpkt )任务处理函数,其参数为数据包的指针。接收到的数据包,包括ASK_message和ACK_message两种,当为ASK_message时表明接收的时是节点连通性测试反馈信息,此时要先判断该测试信息是否是本节点所属的,因为节点会接收到其他节点经过周围环境反射等情况发射来的节点;确定是本节点的测试反馈数据包之后,需要调用DB_test_func()函数,丢包率测试,排除部分丢包率较高的节点。最后将结果发送给簇头节点前,需要将发送函数的最后一个参数设置为25,才能将数据发送给簇头节点。
3 测试与分析
在已经搭建好的软硬件平台上对系统的整体性能进行测试,实验主要内容是系统实用性和网络性能测试。
3.1 系统实用性测试与分析
对该系统中数据收发情况进行完整测试,历史数据分析界面如图6所示。
系统能够正常显示和存储所监测的AMC参数及其相关信息,能够将监测位置和监测信息自动对应,可以对历史数据进行分类分析和对整个系统中设备状态进行监控,符合AMC监测需求。由于检测AMC的传感器往往需要有≤0.01 PPM的检测精度,故在AMC监测系统中,传感器成本较高,本系统设计的一拖多式的终端采集节点,使用1个传感器轮询式检测的方式,来完成原本需要N个传感器检测的N个待测点的AMC信息监测任务,节省了系统的传感器成本;低功耗路由节点能够降低节点功耗和网络部署难度,使得整个系统更加灵活;系统的集中式控制机制,有助于网络通信效率的提高,便于系统更新升级,间接降低了AMC监测系统的维护成本。
3.2 K连通算法可靠性测试与分析
为了验证该方案的有效性,设置实验进行测试。K连通抗毁策略首先将节点分为若干个簇,本实验以其中一个簇为实验对象。节点个数为10个,节点发射功率和接收增益等参数设置一致,节点有效通信半径为50 m,无线连通的节点丢包率阈值为15%,实验场地在一个40 m×50 m的洁净室空间范围内。其中一个节点烧写Coordinator代码,设置节点编号为1,用来代表初始簇头节点,负责建网、组网和信息与PC的透传。其余10个节点烧写Router代码,编号从2开始依次递增,加入Corrdinator构建网络,测试结果如图7所示。
图7 连通性测试结果
经典ZigBee算法构建的连通图如图7(a)所示。典型K连通算法构建的连通图如图7(b)所示,可以看到经典K连通网络基本处于一种全连通状态。图7(c)反映的是基于改进算法构建的网络拓扑图,相对于图7(b)来说节点间连通链路减少了很多,连通链路减少的主要原因为该测试空间为室内,墙体隔档对ZigBee网络的影响非常严重。其中4号和9号节点没有连通是因为两点之间的通信丢包率高达34.8%,超过设定阈值15%。
上述3种算法的平均连通度如表2所示。
表2 3种路由算法平均连通度
由表2可知,典型K连通算法和本系统设计的链路优化的K连通算法均对网络的连通性有明显的提高,但典型K连通算法的链路过度冗余,且未考虑无线信号传输中的衰减情况。下面对两种K连通算法的丢包率和路由延迟进行对比分析。
Coordinator节点的丢包率统计如表3所示,2至10号节点每隔5s,依次发出20Byte的数据,每个节点发送100次数据。
表3 K连通算法丢包率
由表3可知,链路优化后的K连通算法降低了网络的丢包率,网络的可靠性将有所提高。
选取1-6、1-7、1-8、1-9、1-10共五组节点为实验对象,其中5个普通节点每隔5 s,依次发出20Byte的数据,测试Router节点数据到达Coordinator节点的路由延迟,实验结果如表4所示。
表4 K连通算法路由延迟结果 s
通过对比以上试验结果,改进后的K连通算法在构建网络拓扑图方面具有明显的优势,实现了网络多连通路由的同时,降低网络丢包率和路由延迟,有助于改善AMC监测系统网络的可靠性。也验证了方案的可行性和有效性。
4 结论
1) 本文结合半导体装备生产环境中AMC监测系统具体应用背景,主要从系统节点硬件结构设计和网络路由层算法优化,两个方面对AMC监测系统进行了设计改进;
2) 系统节点硬件结构设计和网络应用层集中式调度机制,有助于降低系统部署成本和维护成本;
3) 改进的K连通算法,能够对通信链路进行优化,提高网络的可靠性,同时降低了网络延迟。