现场总线网络控制系统及其网络诱导延时计算方法
【专利摘要】本发明提供了一种现场总线网络控制系统及其网络诱导延时计算方法,其中方法包括:在现场总线网络控制系统中某回路的第k(k为大于等于2的正整数)轮询周期内,记录该回路NSM向该回路C/AN发出请求报文的时刻t5,j(k),以及C/AN接收完毕该请求报文的时刻t6,j(k);根据式:τmc(k)=τmc(k-1)+((t6,j(k)-t5,j(k))-△τmc(k-1)),计算本轮询周期内的C/AN接收NSM转发数据的网络诱导延τmc(k),其中τmc(k-1)和△τmc(k-1)分别为保存的上一轮询周期NSM转发数据的网络诱导延时和NSM与C/AN之间的时间差,从而采用异步差分的方式实现了τmc(k)的计算,较于现有的方式,无需做全系统时钟同步,有助于降低工业通信的复杂度。
【专利说明】现场总线网络控制系统及其网络诱导延时计算方法
【技术领域】
[0001]本发明涉及自动化控制领域,尤其涉及一种现场总线网络控制系统及其网络诱导延时计算方法。
【背景技术】
[0002]网络控制系统(Networked Control Systems, NCSs)的概念起于上世纪90年代,是指在某个区域内一些现场检测控制及操作设备和通信线路的集合,用以提供设备之间的数据传输,使该区域内不同地点的设备和用户实现资源共享和协调操作。在网络控制系统中,由于在各个控制回路中引入了通信网络,每个控制回路内的传感器节点、控制器节点和执行器节点之间的信息传送要分时占用网络通信线路,而网络的承载和通信带宽有限,因此系统节点太多必然造成信息的冲撞、重传等现象的发生,采样、量化、编码与解码、等待、传递的时间使得网络控制系统的信息在传输时产生时延。
[0003]在实际过程中,网络控制系统的延时是一个随机量,目前针对现场总线网络控制系统,其中网络诱导延时的计算方法是采用《IEEE1588》和《GB/T25931-2010—网络测量和控制系统的精密时钟同步协议》中定义的方式,即:首先建立起全网的时钟同步,然后,再根据时间戳就可以直接计算出网络诱导延时。
[0004]本申请的发明人分析该实现方式发现,该方式对现场总线网络控制系统的性能要求较高,并且需要不断地定期进行时钟同步,会增加控制网络的额外负担。
【发明内容】
[0005]有鉴于此,本发明提供了一种现场总线网络控制系统及其网络诱导延时计算方法,无需做全系统时钟同步,可有效简化工业通信的复杂度。
[0006]本发明提供了一种现场总线网络控制系统网络诱导延时计算方法,所述方法包括:
[0007]在所述现场总线网络控制系统中某回路的第k轮询周期内,所述k > 2且为正整数:
[0008]记录该回路中网络调度管理器NSM向该回路中控制器/执行器节点C/AN发出请求报文的时刻t5」_ (k),以及所述C/AN接收完毕所述NSM发送的请求报文的时刻(k);
[0009]提取保存的所述回路的第k-Ι轮询周期中所述C/AN接收所述NSM转发数据的网络诱导延时Tmc;(k-1)和所述NSM与所述C/AN之间的时间差Λ Tmc (k-1);
[0010]根据式:τfflc (k) =Tmc (k-1)+ ((t6, J (k) _t5, j(k))-A Tmc (k-1)),计算所述第 k 轮询周期内的所述C/AN接收所述NSM转发数据的网络诱导延时τ mc (k)。
[0011]进一步,在记录的t5j(k)和tyGO之后,所述方法还包括:根据式:Δ τ mc (k) =t6,j (k) -t5,j (k),计算所述第k轮询周期内所述NSM与所述C/AN之间的时间差Δ Tmc (k);
[0012]在计算得到τ mc(k)和Λ τ me(k)之后,所述方法还包括:保存τ mc (k)和Δ Tmc (k) ο
[0013]进一步,所述方法还包括:
[0014]在所述回路的所述第k轮询周期内:
[0015]记录所述NSM向该回路的传感器节点SN发送请求报文的时刻t1;i (k);
[0016]提取保存的所述回路的第k-Ι轮询期内所述NSM向所述SN发送请求报文的时刻t1; j (k-1);
[0017]根据式:τ J3dQO=I^i (10-tu (k-1)-T,计算其它回路对本回路的影响延时Tbd(k),其中T为轮询周期;
[0018]保存tuGO为所述回路的第k+i轮询周期计算Tbd(k+1)做准备。
[0019]进一步,所述方法还包括:
[0020]在所述回路的所述第k轮询周期内:
[0021]记录所述SN接收所述NSC发送的请求报文的时刻t2,i (k)、所述SN根据所述NSC发送的请求报文做出应答报文的时刻t3,i(k)、所述NSM接收完毕所述SN发送的应答报文的时刻 t4,i(k);
[0022]根据式:τsm (k) = [ (t4,, (k) i (k)) - (t3,, (k) _t2, i (k)) ].ξ,计算所述 SN 上传数据至所述NSM的网络诱导延时Tsm(k),其中ξ为所述SN返回的应答报文包长度与总报文包长度的比值。
[0023]进一步,所述方法还包括:
[0024]在所述回路的所述第k轮询周期内:
[0025]记录所述NSM向所述C/AN发出请求报文的时刻t5,」(k);
[0026]根据式:计算所述NSM准备转发数据至所述C/AN所需的处理时间Tmd(k)。
[0027]进一步,所述方法还包括:
[0028]在所述回路的所述第k轮询周期内:
[0029]计算所述C/AN控制算法运算处理的时间Ted(k)和被控对象的自身延时Tp(k);
[0030]根据式:τ(k)= τ sm (k) + τ md (k) + τ mc (k) + τ bd (k) + τ cd (k) + τ ρ (k),计算所述回路所述第k轮询周期内的总网络诱导延时τ (k)。
[0031]进一步,所述方法还包括:
[0032]在该回路的第I轮询周期内:
[0033]记录所述NSM向所述SN发送请求报文的时刻t1;i (I);
[0034]记录所述NSM向所述C/AN发出请求报文的时刻^j(I)、所述C/AN接收完毕所述NSM发送的请求报文的时刻⑴、所述C/AN根据所述NSM的请求报文向所述NSM做出应答报文的时刻t7」_⑴、所述NSM接收完毕所述C/AN发送的应答报文的时刻t8」_⑴;
[0035]根据式Jmc ⑴= [α8,」(1)-^ ⑴)-α7,」α)?))].η 或 Tmc(I) =通信报文包大小X通信速率,计算得到\。(1),其中,I1表示请求报文包长度与总报文包长度的比值;
[0036]根据式:Δτ 1(1)4^(1)-t5,“I),计算得到Λ Tmc(I);
[0037]保存tud)、Tmc(I)和Λ Tmc(I)为该回路的第2轮询周期的计算做准备。
[0038]本发明还提供了一种现场总线网络控制系统,包括:属于同一回路的NSM、SN和C/AN,所述NSM,用于在所述回路的第k轮询周期内,所述k≥2且为正整数,记录所述NSM向所述C/AN发出请求报文的时刻t5」_(k),并将该时刻发送至所述C/AN ;
[0039]所述C/AN,用于接收所述NSM发送的t5,」(k),记录接收完毕所述NSM发送的请求报文的时刻t6,j(k);
[0040]所述C/AN,还用于根据式:τ ^10=^-1) + ((^(10-^(10)-Λ xmc(k-l)),计算所述第k轮询周期内所述C/AN接收所述NSM转发数据的网络诱导延时τ mc;(k),其中Tfflc (k-1)和Λ Tmc (k-1)为所述回路的第k-1轮询周期中所述C/AN接收所述NSM转发数据的网络诱导延时和所述NSM与所述C/AN之间的时间差。
[0041]进一步,所述C/AN,还用于根据式:Λ 11]1。00=1:6,」00-1:5,」00,计算所述第1^轮询周期内所述NSM与所述C/AN之间的时间差初值Λ τ mc (k);
[0042]以及,用于保存TnicOO和Λ τ mc (k) O
[0043]进一步,所述NSM,还用于在所述第k轮询周期内,记录所述NSM向所述SN发送请求报文的时刻t1;i(k);以及
[0044]根据式:τ J3dQO=I^i (10-tu (k-1)-T,计算其它回路对本回路的影响延时Tbd(k),其中(k-Ι)所述回路的第k-Ι轮询周期所述NSM向所述SN发送请求报文的时刻;以及
[0045]用于保存t1;i(k)。
[0046]本发明的有益效果:
[0047]本发明实施例针对现有的需采用全系统时钟同步才能计算网络诱导延时的问题,采用异步差分的方式实现了 C/AN接收NSM转发数据的网络诱导延时的计算,而该方式无需做全系统时钟同步,普通性能的系统也能满足其要求,可以有效的降低工业通信的复杂度。
【专利附图】
【附图说明】
[0048]下面结合附图和实施例对本发明作进一步描述:
[0049]图1是本发明提供的现场总线网络控制系统的实施例的结构示意图。
[0050]图2是本发明提供的现场总线网络控制系统的通信流程(含时间序列)的实施例的示意图。
[0051]图3是本发明提供的现场总线网络控制系统中网络诱导延时计算方法的实施例的流程示意图。
[0052]图4是图3中步骤S301的实施例的流程示意图。
[0053]图5是图3中步骤S302的实施例的流程示意图。
[0054]图6是图3中步骤S303的实施例的流程示意图。
【具体实施方式】
[0055]请参考图1,是本发明提供的现场总线网络控制系统的实施例的结构示意图。
[0056]如图1所示,该现场总线网络控制系统采用主从通信方式,其包括:一网络调度管理器(Network Scheduler Manager, NSM) 101,若干传感器节点(Sensor Node, SN) 102、若干控制器/执行器节点(Controller/Actuator Node, C/AN) 103,被控对象104,以及连接NSM101和SN102、C/AN103之间的基于现场总线的网络105,其中控制器分布在各个执行器节点上。工作时,NSM101负责完成通信管理和人机交互,并采用时间触发方式轮询各SN102,以及采用事件触发方式将数据转发给C/AN103,在C/AN103完成实时控制运算并对实际被控对象104实施操作输出,构成全分布的网络控制系统。
[0057]在图1中,该现场总线网络控制系统的延时包括六个部分组成,即SN102上传送数据至NSMlOl的网络诱导延时τ sm(k)、NSMlOl准备转发数据所需的处理时间τ md(k)、C/AN103接收到NSMlOl转发数据的网络诱导延时τ m。(k)、C/AN103控制算法运算处理的时间\d(k)、被控对象104自身的延时Tp(k)和系统其它测控回路延时对当前回路的影响延时Tbd(k)。其中,Tmd(k)、\d(k)和Tp(k)可直接计算得到,而在主从通信模式下,由于NSMlOl是主站,SN102和C/AN103是从站,因此xsm (k)可在NSMlOl计算得到,但τ mc (k)却难以直接在C/AN103直接得到,这可以事先确定一个初值,再采用异步差分的方法滚动计算得到,其它测控回路延时对当前回路影响Tbd(k)也可在异步差分方法中计算得到,这一过程后续会详细说明,在此不赘述。
[0058]在介绍计算延时之前,首先对该现场总线网络控制系统的通信流程(含时间序列)进行说明,具体的,如图2所示,其包括:
[0059]步骤S201、NSM按照时间触发方式,在&时刻开始向SN发送请求报文。
[0060]步骤S202、SN在t2时刻开始接收NSM发送的请求报文。
[0061]步骤S203、SN在t3时刻开始向NSMlOl返回应答报文。
[0062]步骤S204、NSM接收SN返回的应答报文,并在t4时刻接收完毕。
[0063]步骤S205、NSM按照事件触发方式,在t5时刻向C/AN发送请求报文。
[0064]步骤S206、C/AN接收NSM发送的请求报文,并在t6时刻接收完毕。
[0065]步骤S207、C/AN在t7时刻开始向NSM返回应答报文。
[0066]步骤S208、NSM接收C/AN返回的应答报文,并在t8时刻接收完毕。
[0067]下面对本发明提供的现场总线网络控制系统中网络诱导延时计算方法进行详细说明。
[0068]具体的,为便于计算单次周期内的网络诱导延时,将NSM按照时间驱动方式向某个固定SN发起通信的时刻视为固定不变的周期性变化时刻。系统单次周期内的延时包括五个部分组成:
[0069]τ (k)= τ sm(k) + τ md(k) + τ mc(k) + τ bd(k) + τ cd(k)+ xp(k) (I)
[0070]其中,在该式中,网络诱导延时主要体现在Tsm(k)和TnJk)上,其它几个延时时间均可直接计算得到。因此,为了确定SN上传数据到NSM的网络诱导延时Tsm(k),系统采用如图2所示时间序列,首先,由NSM按照时间触发方式向第i个SN发出上传采集数据的请求报文,并记下此刻的时间tyOO ;其次,SN将采集的传感数据、收到请求报文时刻t2,i(k)和发出应答报文时刻t3,i(k)封装在应答报文中,返回给NSM ;然后,NSM在接收完毕SN应答报文之后,记下此刻的时间t4;i(k)。则SN与NSM之间的网络诱导延时τ sm(k)为:
[0071]τ sm(k) = [(t4;i(k)-t1;i(k))-(t3;i(k)-t2;i(k))].ξ (2)
[0072]其中,ξ的取值代表请求报文包长度与总报文包长度的比值。工业网络通信中的周期性数据通常都呈现出短帧、小包、数据频发的特征,因此,可将请求报文和应答报文视
为相同的最小通信包,则式(2)中ξ可取值为I;如果SN上传数据量较多,导致应答报文包
长度大于NSM下发的请求报文包长度,则在NSM可根据应答报文包长度与请求报文包长度,直接计算ξ值。
[0073]在计算NSM转发数据至C/AN的网络诱导延时过程中,同样根据图2所示时间序列,由NSM按照事件触发方式向第j个C/AN发出下发数据的请求报文,记下其起始此刻的时间t5;i (k),并将该时间附加到请求报文中下发;C/AN在正确接收到请求报文后,将其收完毕请求报文的时刻t6,i(k)记录下来。由于这时C/AN已收到全部数据,可开始进行控制运算。则NSM与C/AN之间的网络诱导延时TnJk)为:
[0074]
【权利要求】
1.一种现场总线网络控制系统网络诱导延时计算方法,其特征在于:所述方法包括: 在所述现场总线网络控制系统中某回路的第k轮询周期内,所述k > 2且为正整数: 记录该回路中网络调度管理器NSM向该回路中控制器/执行器节点C/AN发出请求报文的时刻t5」_ (k),以及所述C/AN接收完毕所述NSM发送的请求报文的时刻(k); 提取保存的所述回路的第k-Ι轮询周期中所述C/AN接收所述NSM转发数据的网络诱导延时Tmc;(k-1)和所述NSM与所述C/AN之间的时间差Λ Tmc (k-1);
根据式:τ mc (k) = τ mc (k-1) + ((t6, j (k) _t5, j(k))-A τ mc (k_l)),计算所述第 k 轮询周期内的所述C/AN接收所述NSM转发数据的网络诱导延时τ mc (k)。
2.如权利要求1所述的方法,其特征在于: 在记录的t5,」(k)和t6,」(k)之后,所述方法还包括:根据式:Λ τ mc (k) =t6; j (k) -t5;J (k),计算所述第k轮询周期内所述NSM与所述C/AN之间的时间差Λ xmc(k); 在计算得到TnrcQO和Λ Tfflc(k)之后,所述方法还包括:保存TnrcQO和Λ Tfflc(k).
3.如权利要求1或2所述的方法,其特征在于:所述方法还包括: 在所述回路的所述第k轮询周期内: 记录所述NSM向该回路的传感器节点SN发送请求报文的时刻(k); 提取保存的所述回路的第k-1轮询期内所述NSM向所述SN发送请求报文的时刻t1; j (k-1); 根据式:TbdGOztuGO-tua-D-T,计算其它回路对本回路的影响延时Tbd(k),其中T为轮询周期; 保存tu(k)为所述回路的第k+i轮询周期计算Tbd(k+1)做准备。
4.如权利要求3所述的方法,其特征在于:所述方法还包括: 在所述回路的所述第k轮询周期内: 记录所述SN接收所述NSC发送的请求报文的时刻t2,i (k)、所述SN根据所述NSC发送的请求报文做出应答报文的时刻t3,i(k)、所述NSM接收完毕所述SN发送的应答报文的时刻t4; i (k);
根据式:τ sm (k) = [ (t4,, (k) -t, i (k)) - (t3,, (k) _t2, i (k)) ].ξ,计算所述 SN 上传数据至所述NSM的网络诱导延时Tsm(k),其中ξ为所述SN返回的应答报文包长度与总报文包长度的比值。
5.如权利要求4所述的方法,其特征在于:所述方法还包括: 在所述回路的所述第k轮询周期内: 记录所述NSM向所述C/AN发出请求报文的时刻t5>」(k); 根据式^-(!^^^(!^-〖^(!^,计算所述NSM准备转发数据至所述C/AN所需的处理时间^(k)。
6.如权利要求5所述的方法,其特征在于:所述方法还包括: 在所述回路的所述第k轮询周期内: 计算所述C/AN控制算法运算处理的时间Ted(k)和被控对象的自身延时Tp(k);根据式:τ (k)= τ sm (k) + τ md (k) + τ mc (k) + τ bd (k) + τ cd (k) + τ ρ (k),计算所述回路所述第k轮询周期内的总网络诱导延时τ (k)。
7.如权利要求3所述的方法,其特征在于:所述方法还包括:在该回路的第I轮询周期内: 记录所述NSM向所述SN发送请求报文的时刻t1;i (I); 记录所述NSM向所述C/AN发出请求报文的时刻t5」_(l)、所述C/AN接收完毕所述NSM发送的请求报文的时刻\ j (I)、所述C/AN根据所述NSM的请求报文向所述NSM做出应答报文的时刻t7」_ (I)、所述NSM接收完毕所述C/AN发送的应答报文的时刻t8」_ (I); 根据式:τπ。⑴= [α8,」⑴-t5,j⑴)-α7」⑴⑴)].η或、。(1)=通信报文包大小X通信速率,计算得到\。(1),其中,η表示请求报文包长度与总报文包长度的比值;根据式:Λ、。(1)46」(1)45」(1),计算得到Λ Tmc(I); 保存tud)、Tmc(I)和Λ Tmc(I)为该回路的第2轮询周期的计算做准备。
8.一种现场总线网络控制系统,包括:属于同一回路的NSM、SN和C/AN,其特征在于: 所述NSM,用于在所述回路的第k轮询周期内,所述k > 2且为正整数,记录所述NSM向所述C/AN发出请求报文的时刻t5ij(k),并将该时刻发送至所述C/AN ; 所述C/AN,用于接收所述NSM发送的t5」_ (k),记录接收完毕所述NSM发送的请求报文的时刻t6,」(k);
所述 C/AN,还用于根据式:τ mc(k)= τ mc(k_l) + ((t6,」(k)_t5,」(k))- Δ τ mc(k_l)),计算所述第k轮询周期内所述C/AN接收所述NSM转发数据的网络诱导延时、。(10,其中Tfflc (k-Ι)和Λ Tmc (k-1)为所述回路的第k-1轮询周期中所述C/AN接收所述NSM转发数据的网络诱导延时和所述NSM与所述C/AN之间的时间差。
9.如权利要求8所述的现场总线网络控制系统,其特征在于: 所述C/AN,还用于根据式:Λ τ kktMGO-tuGO,计算所述第k轮询周期内所述NSM与所述C/AN之间的时间差初值Λ Tmc (k); 以及,用于保存TnrcGO和Λ τ^ΟΟ。
10.如权利要求8或9所述的现场总线网络控制系统,其特征在于: 所述NSM,还用于在所述第k轮询周期内,记录所述NSM向所述SN发送请求报文的时刻t1;i(k);以及 根据式:TbdGOztuGO-tua-D-T,计算其它回路对本回路的影响延时Tbd(k),其中tM(k-l)所述回路的第k-ι轮询周期所述NSM向所述SN发送请求报文的时刻;以及用于保存IaiGO。
【文档编号】H04L7/00GK103812634SQ201410075130
【公开日】2014年5月21日 申请日期:2014年3月3日 优先权日:2014年3月3日
【发明者】赵亦欣, 刘娟, 杨智, 彭正福, 刘静, 苏晓贝 申请人:西南大学