论文部分内容阅读
随着智慧交通与智慧城市的发展,轨道交通数据采集与监控系统(SCADA)朝着分布式趋势发展,存在系统采集的子系统数量增多,通讯规约多样化,内部节点之间的数据通讯的链路错综复杂、耦合度高的问题。基于上述的变化趋势,本文对轨道交通分布式SCADA系统中的关键节点,通讯前置机(FEP)的数据采集与数据转发这两个关键模块进行了研究。主要工作有以下几点:1.针对SCADA系统采集的子系统数量多,通讯规约差异化大的问题,开发了一个用户可配置各子系统具体的通讯参数,加载不同的通讯规约库,对各子系统数据进行采集的模块,并对模块中的数据采集线程、规约处理线程以及电力子系统IEC60870-5-104通讯规约的设计进行了详细的论述。2.基于上述数据采集线程与规约处理线程解耦的特点,论文研究了采用了CAS-LOCK机制的无锁环形队列算法来进行线程间的同步,然后结合本文场景(单生产者单消费者),模拟TCP进队出队,对完全无锁、CAS-LOCK、互斥锁Mutex,这三种方式进行了分析与验证,性能上CAS-LOCK比互斥锁Mutex提高了20%,同时也客观的对该算法存在的问题进行了分析。3.基于分布式FEP之间的数据转发与同步的需求,避免传统的CS架构或者P2P网络的时间空间耦合性高的瓶颈,研究了DDS的数据分发机制,设计了基于RTI-DDS的以内容为核心的发布/订阅机制,完成了从数据采集到数据转发的DDS的数据结构映射,设计了FEP各节点之间的一种基于死区变位与周期相结合的数据传输算法,在保障数据通讯可靠的前提下减少了网络中一定数量的传输流量,并对RTI-DDS中的可靠性QoS与截止日期QoS进行了论述,以保障实时性。4.最后测试了单个FEP与多个不同通讯规约的子系统通讯以及多个FEP之间的基于DDS机制的数据分发的实时性与准确性。经验证对典型配置的电力、机电设备子系统的数据采集的延时在1s以内,在数据转发中,订阅者收到数字量数据与发布者发送该数据的时间差在100ms以内,符合轨道交通SCADA系统的准确性与实时性的性能要求。基于以上工作,本文的研究成果如下:(1)研究设计了数据采集模块的框架,可以集成不同通讯协议的子系统;(2)采用RTI-DDS组件研究和设计了数据转发模块,使得系统的可扩展性得到增强。本文的创新性主要包括:(1)在采集模块的单生产者单消费者场景下,设计了CAS-LOCK机制用于线程间的同步使得性能提高;(2)采用RTI-DDS组件用于数据转发模块,并设计了一种基于死区变位与周期相结合的数据传输方式,在保障数据通讯的可靠性前提下减少了网络中的传输流量。该系统目前正处于研发阶段,未来希望能用于城市地铁的新旧项目中。