人工神经网络思想优化EPA动态通信调度
2011-07-26孟祥印肖世德
孟祥印 肖世德
(西南交通大学智能机电技术研究所,四川 成都 610031)
0 引言
以太网要应用于现场设备层测控,需要解决通信的实时性、可靠性、安全性、可互操作性和总线供电等关键技术问题[1-2]。中国自主知识产权的工业以太网现场总线标准EPA,利用交换式以太网等技术实现了系统通信的确定性,利用微网段、报文优先级、UDP传输和应用层实时通信协议等方式改善了网络的实时性,从而实现了性能良好的应用于工业现场测控的以太网络。
EPA以太网的实时通信模型为令牌/生产者/消费者模型[3]。对突发性非周期性信息,如报警信息,采用令牌通信方式,在周期变量通信间隙进行处理;对于周期性变量,采用生产者/消费者实时通信模型,按照调度表周期循环处理。通过对EPA的实时通信模型的分析发现,EPA通信调度忽略了周期性变量和报警信息之间的相互影响,参量访问的优先级分配也不够周全和灵活。
本文利用人工神经网络,计算出要调度和访问的参量的优先顺序,从而动态、合理地调度访问EPA系统中的参量。
1 EPA通信调度分析
1.1 确定性调度原理与分析
EPA协议为所有的报文分配了优先级,并采用基于时间片和基于优先级相结合的方法进行通信调度[4]。周期报文较非周期报文的发送优先级高,非周期报文穿插在周期性报文之间发送。不同周期报文的发送顺序是按其优先级高低、IP地址大小和时间有效方式进行排列的[5-6]。
假设EPA的某个网段上除了调度者之外还有A、B、C三个设备,它们的生产和消费关系按照以下方式进行组态。
① 设备A是变量A'的生产者、变量B'的消费者;
② 设备B是变量B'的生产者、变量A'的消费者;
③设备C是变量A'和变量B'的消费者,不产生任何变量。
设备A、设备B和设备C都有可能产生报警等非周期性信息,这里均用报警信息来代替所有的非周期性信息,符号分别为#A、#B、#C。根据组态,周期性变量和非周期性信息的优先级如下:
根据EPA的令牌/生产者/消费者实时通信模型,EPA通信调度原理如图1所示。
图1 EPA通信调度原理图Fig.1 Principle of EPA communication dispatching
图1中:TreqA和TreqB分别为调度者请求产生周期变量A'和变量B'的请求时间;TpubA和TpubB分别为设备A和设备B发布变量A'和变量B'的时间;TrecA和TrecB分别为总线上的消费者接收并消费周期变量A'和变量B'的时间,TintA和TintB分别为变量 A'和变量B'的通信间隙时间;TdelA和TdelB分别为总线上变量传播的延时时间,一般很小。
基于优先级的访问调度时延图如图2所示。其中图2(a)为享有最高优先权的报警信息#A的通信时延图,图2(b)为享有最低优先权的#C的通信时延情况,并且假设直到整个Tint时间内,设备A和设备B都没有产生报警信息。
图2 基于优先级的访问调度时延图Fig.2 Time-delay schematic of priority-based access dispatching
由图2可知,报警信息访问调度的时延发生在周期性通信间隙Tint时间内。
由图2(b)可以看出,因为#C的优先级一直是非周期性信息中最低的,所以要进行两次和令牌(token)优先级的比较,直到第三次比较才得以允许向网段发布;且由于其优先级被固定,当系统参量发生改变,报警信息#C这个参量越来越重要时,却不能被及时观察和访问。
1.2 EPA通信模型的不足
根据通信调度时延情况的分析可知,EPA实时通信模型存在优先级分配动态性和灵活性不足的现象。在实际的生产过程中,周期变量并不总是比非周期变量优先访问,而是应该灵活地安排通信间隙Tint的插入位置和插入频度。同时,报警信息之间的优先级和周期变量之间的优先级也应该根据实际的测控数据而在线动态变化。
2 新型实时通信模型
2.1 一种智能通信调度模型
人工神经网络具有分布式的信息存储和大规模的非线性并行处理能力,良好的自适性和自组织性,较强的学习、联想能力和容错能力以及强大的运算能力和较快的运算收敛速度。多年前就有人提出应用于现场总线的多传感器融合和系统安全性评价[7-9],也曾有学者提出神经网络与模糊PID控制相结合来改善CSMA/CD介质访问方式下的Ethernet时延不确定性引起的振荡和不稳定问题,或者利用神经网络建立基于优先权的仿真模型[10]。所以我们可以采用人工神经网络来表达以太网实时通信数据之间的关系,构成一个智能化、动态化优先级分配与任务调度模型。基于人工神经网络的实时通信模型称之为生产者/智能调度者/消费者模型。
生产者/智能调度者/消费者模型采用的神经网络模型如图3所示。
图3 计算优先级用神经网络模型Fig.3 Neural network model for calculating dispatching priority
神经网络的输入层X,表示对非周期性信息和周期变量(统称通信数据)的优先级和任务调度顺序有影响的因素,包括通信数据是否被访问、通信数据的重要性、通信数据产生设备的可靠性程度、周期变量的采样周期长短和报警信息的产生等。X0表示在网络通信数据交互周期内(非周期性信息和周期变量的通信通盘考虑,以等价的身份同属于一个完整的通信数据交互周期之中),某通信数据的请求(周期变量产生)或查询(非周期性突发信息)是否已经执行这一因素。这样就考虑了某个通信数据的执行与否对任务调度顺序的重要影响。
输入层中的因素包括了报警信息的产生,它将对输出层的周期性变量的优先级施加影响,同样地,它也将作用于另外的报警信息的优先级输出。由此,非周期性信息之间和非周期信息对周期性变量的相互影响就通过上面的神经网络体现了出来。
输入因素的激励函数值称为“输入因子”,第i个输入因素 Xi的输入因子用 xi表示,即激励函数f(Xi)=xi(i=0,1,2,3)。同理,通过 ωij的在线动态变化,周期性变量之间和周期性变量对报警信息等非周期性数据的优先级的影响也可以通过上面的神经网络来表达。
神经网络的输出层用Y表达,Yj表示在诸多因素影响下某个通信数据的优先级数值。输出层神经元的输出为Yj=f(∑ωij- θj),Yj越大,说明优先级越高。其中,阈值 θj=0,激励函数 f(X)=X ,即 Yj=∑Xiωij;ωij为输入(对调度优先级有影响的因素)对优先级输出的影响因子,ωij越大,说明该因素对优先级的输出的影响力越强。
在数据通信过程中,智能调度者通过比较,找出输出Y中优先级数值最大的Yk,则第k个数据就是立即要访问的通信数据。由此可见,智能型实时通信模型可以不改变原来EPA的结构,而是在原来充任仲裁者的设备中植入人工神经网络思想,易于实现。
2.2 新模型工作仿真
假设在一个小型的过程控制系统中,总线要访问三个周期变量和两个报警信息,它们分别为压力P、温度T、切断阀状态SV、压力报警信息#P和温度报警信息#T。
需要仿真的系统工作过程为:由温度的升高引起压力的升高,继发生温度报警之后,又发生压力报警这样一个过程。该过程可以分为七个阶段:初始状态、周期变量访问、将发生温度报警、发生了温度报警、将发生压力报警、发生了压力报警和回归初始状态。智能计算该系统数据访问调度优先级的神经网络模型如图4所示。
图4 仿真用优先级计算模型Fig.4 Simulation model for calculating priority
初始状态下,神经网络输入层的四个输入因素的输入因子xi(i=1,2,3,4)和输入因素对五个通信数据的优先级输出 Yj(j=0,1,…,4)的影响因子 ωij,如表1所示。
表1 初始状态下的X和ω的值Tab.1 Initial value of X and ω
表1中有九个数据是可以在数据访问过程中动态改变的,它们分别为 x2、x3、ω00、ω01、ω02、ω03、ω04和 ω13、ω14,即两个输入(因素值)、五个通信数据是否被执行因子和两个报警信息发生概率的影响因子。X和ω在仿真时在线动态改变遵循的规则如下。
①若通信数据没有被访问,则因素“已访问否”对应影响因子ω为0,每被访问1次,影响因子自减1;如果某通信数据的“已访问否”影响因子ω为n,则表示该通信数据已经被访问了n次。
②若某报警信息将要发生,则“重要性”这个输入因素对该报警信息的影响权重ω1j(j=3或4)将增加0.7;如果该报警信息已出现,则置ω1j(j=3或4)为1,且对应的“报警出现”这个输入因素的输入因子也置为1。在没有发生任何报警的情况下,如果出现所有通信数据的优先级数值Y都为负,则第一个输入因素“已访问否”对输出的所有影响权重都回归为初始值,即全部复位为0,可看作全部通信数据都没有被执行过,重新进入下一个访问周期。
③如果发生了报警,对应报警信息的访问次数等于5时,就认为用户已经对所有报警进行了确认和处理,所有状态(X、ω和Y)都回归到初始状态。
④如果多个变量或报警信息输出的优先级数值相等,则将要访问的对象为访问次数较少的对象。
根据表1中表达的初始状态和规则,仿真统计出的各个通信数据的访问次数如表2所示。由表2可以看出,在周期性访问阶段,访问的次序就是我们设定的通信数据的重要性和发生概率的顺序。在将发生报警和发生了报警阶段,对应的报警信息将首先被访问,如从第5步到第6步,温度报警信号#T将出现时,#T将立即在第6步被访问;在第11步到第12步温度报警信号#T刚已出现的时候,#T也立即在第12步被访问。同样,在第16步到第17步,压力报警信号#P将要出现,和第20步到第21步压力报警信号刚已出现的时候,变量#P就立即被访问。在将发生报警和发生了报警阶段,由其末位置处的访问次数统计可以看出,凡和该报警信息有正相关的通信数据,其访问次数也较多。
表2 各变量访问次数统计Tab.2 Visits statistics of each variable
2.3 新通信模型的优越性
新型的通信模型考虑了更多影响数据访问调度的因素,并利用神经网络建立了这些因素与各个通信数据访问优先级之间的联系,使其访问调度的机制更加完善。仿真表明,在新型通信模型下,数据的访问调度具有更好的灵活性和合理性,更能与实际工艺过程相吻合。
3 结束语
本文利用神经网络构建了一个新型智能实时通信模型,即生产者/智能调度者/消费者模型。该模型可以在不改变原来以太网结构的前提下,用软件的方法植入到原实时通信模型的调度实体中,实现优先级智能计算和通信任务的智能调度。模型对非周期信息和周期变量进行了全盘统一考虑,并引入通信数据之间相互影响这一事实因素,使得通信数据优先级的输出和任务调度能在线合理地动态变化,从而改善了系统优先级和任务调度性能,提高了以太网应用于工业现场控制的实时性。如果再适当结合模糊控制策略和专家规则,则该模型就更加完善和智能化,甚至可以实现通信过程的智能故障诊断、定位和修复。
[1]冯冬芹,金建祥,褚健.工业以太网关键技术初探[J].信息与控制,2003,32(3):219 -224.
[2]李凤保,杨黎明.网络化测控系统技术[M].成都:四川大学出版社,2004:116-117.
[3]冯冬芹,廖智军,金建祥,等.基于以太网的工业控制网络实时通信模型研究[J].仪器仪表学报,2005,26(9):891 -894.
[4]China State Bureau of Quality and Technical Supervision.GB/T 20171-2006 EPA system architecture and communication specification for use in industrial control and measurement systems[S].2006.
[5]陈良华,黄源.EPA协议确定性调度测试系统的研究与实现[J].自动化与仪表,2008,23(4):47 -50.
[6]王平,黄源,谢昊飞.EPA应用层证实服务响应时延测试的研究与实现[J].广东通信技术,2009,29(2):54 -57.
[7]周尚明,刘定生.模糊控制和神经网络在现场总线控制系统中的应用[J].中国科学院研究生院学报,2000,17(2):81 -88.
[8]余勇.基于神经网络理论的现场总线系统安全性评价的研究[J].自动化与仪器仪表,2004(5):8-10.
[9]Lina C L,Chen C H,Huang H C.Stabilizing control of networks with uncertain time varying communication delays[J].Control Engineering Practice,2008,16(1):56 -66.
[10]Shoukat M M,Dagli C.A priority-based simulation model of an Ethernet using an artificial neural network[J].Doctoral Thesis:University of Missouri-Rolla,1992.