令牌在智能小区访客系统的应用
2011-06-14姜广政
姜广政
济宁技术学院,山东 济宁 272013
小区访客系统是智能化住宅小区安全防范系统的重要组成部分,由住户分机、门口主机和管理员机等组成,一般采用总线型结构。分机可接受主机、管理员机或其它分机的呼叫,遥控开启本单元门锁,并可向管理中心发布报警和求助信息。主机可呼叫管理员机或住户分机,并对音频信号进行控制。管理员机可呼叫任一住户分机,接受主机或分机的呼叫及报警信息,并可遥控开启任一单元的门锁。
基于令牌总线的智能小区访客系统,将令牌总线标准(ⅠEEE802.4)应用于小区的访客系统,系统正常运行时,令牌按逻辑环顺序传递,只有获得令牌的站点才能向总线上发送数据信息。传递令牌和传递数据交替进行,任一时刻网络中只能有一个站点持有令牌,从而避免了多个站点同时发布信息产生的冲突,较好的解决了总线上信息碰撞的问题。系统维护由各分站点和主站点共同完成,减轻了主站点的负担,并且故障站点可随时从网络中去除,不会影响系统的工作。
1 系统结构
整个系统由管理员机、门口机和室内机组成,它们之间相互通讯,构成树型网络拓扑结构。管理员控制机位于网络的第一层,与门口控制主机组成一个总线网,室内控制机与门口控制机组成另一总线网,室内控制机与管理员控制机之间通过门口控制机进行信息传递。
令牌传送是在主节点控制下进行,是一种集中控制方式,可避免因令牌的丢失而使整个网络陷入瘫痪这一传统令牌网中的难题。同时,集中控制方式可十分容易地由主节点分配各从节点的优先级。这种分配可采用多种算法,如主节点监听各个从节点的通讯,对通信量大的则分配较长的时间间隔,使之占有令牌时间较长,从而具有较高的优先级等。节点的增删也容易,只需在令牌链上串接上新的节点或是摘去即可,不必对各个节点用开关或跳线重新设置地址等参数。当然在主节点上要重新设置,这点在管理员机上很容易办到。
2 维护算法
2.1 网络初始化
网络开始启动时,在运行中所有站点不活动的时间超过规定的时间时,都要进行网络环的初始化设置。网络环中每个站点都不间断地查询是否有新站点要求入环。在实际应用中,当系统启动时,初始化设置时默认所有站点均在网络环上,从主站点开始按站点顺序依次确定各站点的后继站地址,形成循环链式数据结构。
2.2 正常运行算法
系统正常运行时,先由主站点产生令牌,令牌按站点序号按照一定的规律进行传递,只有得到令牌的站点才能经网络总线发送信息。站点持有令牌的时间有一定的限制,持有令牌的站点应在规定的时间内完成信息发送并向下一站点传递令牌。若持牌站点没有信息需要发送,或者持有令牌的时间已到,令牌就直接传向下一个站点。当收到后继站点的应答信息时完成本次令牌传递。没有得到令牌的站点不能主动向网络总线上发送信息,只能侦听、接收总线上的信息或响应呼叫。若侦听到其前一站点有传递令牌的信息,应立即做出回应,得到令牌。若侦听到的是呼叫本站点的其他信息,则先做回应,再进行相应的其他处理。
2.3 故障处理算法
在系统运行过程中,各站点都有可能出现故障,导致网络通信无法正常工作。
1)令牌持有者发生故障,不能发出令牌。此时网络内没有令牌传递,处理算法是在主站点内设一定时器,定时时间为令牌绕网络环一周所需的最长时间。主站点发出令牌后立即开启定时器,当定时时间到而主站点仍未收到令牌,由主站点重新发出令牌,恢复网络通信;
2)令牌接收者发生故障,不能接收令牌。令牌持有者发出令牌,得不到应答,若重复发出令牌仍无应答,则认为是接收站点出现故障。解决方法是由令牌持有者修改下一站点地址,将令牌传递给故障站点的下一站点;
3)环中出现多个令牌,出现这种情况的原因是令牌传递的时间超过了预计绕一周的最长时间,主站点又产生了新的令牌。处理算法是如果令牌持有者发现网络中还有另外一个令牌,则应主动放弃自己所持的令牌。
3 应用原理
在令牌传递方式中,持有令牌的节点可占用通信线路,当它不需要通信时,则将令牌传递到下一个节点。令牌和数据的传输是使用同一条线路的,因此令牌是一个特殊的信息包,通常称令牌帧。
3.1 门口机和室内机之间的访问控制
在一个单元内部,包括一个门口机和多个室内机,每个室内机有自己的标识。首先门口机作为主节点发出令牌帧给室内机Rl,室内机R1收到后判断是否有报警,若有则发送报警信息给门口机存储起来,然后向门口机发送释放令牌信息;若没有则直接向门口机发送释放令牌信息。门口机收到释放令牌信息或经过时间T后,再向室内机R2发送令牌。以此类推,门口机发出令牌帧给室内机Rn,室内机Rn收到令牌后判断是否有报警等;若有则发送报警信息给门口机存储起来,然后向门口机发送释放令牌信息;若没有则直接向门口机发送释放令牌信息。门口机收到释放令牌信息或经过时间t后,再向室内机R1发送令牌,如此循环。
3.2 管理员机和门口机之间的访问控制
首先,管理员机作为主节点发出令牌帧1,命令位为1010,楼号为000000,单元号为0000,其余10BⅠT可设为任意值。这样一楼一单元的门口机作为从节点收到后便得到了令牌。得到令牌的门口机看一下自己的存储单元内是否有报警信息,若有则发送给管理员机,然后发送释放令牌信息;若没有则直接向管理员机发送释放令牌信息。
管理员机收到解码器发送的释放令牌信息后或经过时间T后,再发出令牌帧2,命令位为1010,楼号为000000,单元号为,0001,其余10BⅠT可设为任意值。一楼一单元的门口机收到后释放令牌,同时,一楼二单元的门口机收到后便得到了令牌。管理员机作为主节点发出一个令牌信息后,如果经过时间T还没有收到解码器发送的释放令牌信息,则将令牌赋予令牌信息中所指定的门口机,并取消前一个门口机的令牌。这样,就可以避免因令牌的丢失而使整个网络陷入瘫痪的难题。
[1]陆宁,梁坚,尤晋元.智能楼宇管理系统的设计与实现.上海交通大学学报,2000,7.
[2]徐超汉住宅小区智能化系统.电子工业出版社,2002,7.