专利名称:一种基于数据流通信的网络控制系统的制作方法
技术领域:
本发明涉及一种网络控制系统,尤其是涉及一种基于数据流通信的网络控制系统。
背景技术:
设计网络控制系统的一个关键技术是通信平台的设计,必须根据控制系统的特性设计满足控制系统要求的通信平台。但目前关于网络控制系统通信平台的研究非常少。通过查阅EI文献索引(1969-2010年),学术和应用上对控制系统的数据流分析比较少,特别是很少有研究不同数据流类型最适合的传输协议。文献[Analysis of Time Delay in Networked Control Systems and Study of Data TransmissionTechnology]在讨论 MAC 层的数据传输技术中,将数据分为周期性数据、猝发性数据以及非实时性数据,并讨论了各种MAC层传输技术用于传输三种数据流的优缺点,但此种技术需改变MAC层协议,因此应用面不够广,难于推广。文献[SimulationStudy of TCP/IP Communication Based on Networked Control Systems, IntelligentControl and Automation]通过仿真实现了使用UDP传输周期性数据,使用TCP传输非实时性数据,循环组合使用TCP和UDP传输猝发性数据的过程,但该文献在实验中只是将三种数据分别使用固定的传输协议进行传输,没有分析网络控制系统中所有数据的传输特性,也没有说明数据传输特性与传输协议的关系。文献[网络化控制系统教学与研究平台]中的NetCon系统直接将系统中的数据绑定于某种传输协议,对于不同对象其通信方式是相同的,无法根据对象进行优化,常常导致数据传输延时太大,影响网络控制系统的性能。而且该系统的通信方式没有提供与其他设备的交互接口,使得控制系统的扩展性很低,很难兼容其他硬件和软件设备,也不利于系统的广泛应用。对于实际的网络控制系统,由于控制系统和通信系统的耦合度较高,因此,需要根据系统中不同数据的属性设计不同的通信协议,从而最大程度地保证网络控制系统的实时性和可靠性。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种实时性强、可靠性高、可重用性好的基于数据流通信的网络控制系统。本发明的目的可以通过以下技术方案来实现—种基于数据流通信的网络控制系统,其特征在于,包括传感器和执行器子系统、 协议转换单元、消息分发单元、远程控制子系统、通信网络,所述的远程控制子系统包括数据存储单元、数据展现单元、客户端、控制与调度单元,所述的传感器和执行器子系统包括传感器、执行器、单片机,所述的单片机控制传感器采集被控对象的数据并将其发送给协议转换单元,该协议转换单元将采样数据按照数据流通信协议编码后进行分类,并通过通信网络发送给消息分发单元,该消息分发单元对接收到的数据包进行拷贝一份发送至数据存储单元,并写入日志存储在数据存储单元,所述的消息分发单元对接收到的数据包进行解码,按照数据流类型协议将数据包放入对应序列,按照分发规则对数据包进行分发,所述的控制与调度单元收到消息分发单元发送的数据后,解析具体内容后,经处理后发送控制指令给消息分发单元,消息分发单元收到后将其发送给单片机,单片机控制执行器进行具体操作,所述的数据展现单元从数据存储单元中获取历史和最新数据后,对其进行显示,用户可以通过客户端来查看被控对象的状态。所述的数据流通信协议包括数据流的划分、数据包的格式、数据包的编解码方法、 数据流的发送和接收接口。所述的通信网络为基于TCP/UDP网络。所述的数据流分为采样流、用户控制流、算法控制流、紧急信息流、系统诊断流。与现有技术相比,本发明具有以下优点1、可根据数据流的属性选择不同的通信方式,提高了网络控制系统的实时性和可
靠性;2、提供了统一的数据流协议进行交互,提高了系统通信方法的可重用性,简化了网络控制系统的设计流程。3、协议转换单元与消息分发单元独立实现,提高了系统的可扩展性;4、各单元都部署在不同的硬件设备上仅通过TCP和UDP网络进行互联,某些单元的崩溃不会影响其他单元的运行,提高了系统的稳定性。
图1为本发明的结构示意图;图2为本发明的通信系统结构示意图;图3为本发明实施例2的单片机串口接收程序流程图;图4为本发明实施例2的单片机串口发送程序流程图;图5为本发明实施例2的中断服务程序流程图。
具体实施例方式下面结合附图和具体实施例对本发明进行详细说明。实施例1如图1所示,一种基于数据流通信的网络控制系统,包括传感器和执行器子系统 3、协议转换单元2、消息分发单元5、远程控制子系统1、通信网络4,所述的远程控制子系统 1包括数据存储单元12、数据展现单元13、客户端14、控制与调度单元11,所述的传感器和执行器子系统3包括传感器32、执行器31、单片机。传感器和执行器子系统3负责对被控对象的状态采集和具体动作的执行,是所有数据的源头和命令的最终执行者。该子系统负责物理信号到电信号(数字信号)的转换和电信号的通信,其通信方式和通信协议具有多样性,与具体的产品相关。协议转换单元2与传感器和执行器子系统3直接相连,专用于通信协议的转换,即将上一单元的其他通信协议(如串口协议)转换为平台统一的数据流协议。消息分发单元5与协议转换单元2通过TCP/UDP网络连接,本单元的输出有两个单元(数据存储单元12、控制与调度单元11)。消息分发单元5通过解析部分消息内容,按照预先的数据流配置,将所有消息分发至各相应的输出单元。控制与调度单元11由消息分发单元5获取数据,解析具体的消息内容,通过控制和调度算法计算判断后,发送命令至消息分发单元5,最终至执行器31进行具体操作。数据存储单元12接收所有来自消息分发单元的数据,并进行格式化(数据库)和非格式化(日志)存储,对于需要格外关注的消息内容,在本单元需要进行详细的解码和内容解析,再进行格式化存储。数据展现单元13从数据存储单元获取历史和最新数据后,进行数据的展现,查询和发布。本发明各单元间通过统一的数据流协议进行交互,提高了系统通信方法的可重用性;消息分发单元和协议转换适配单元的独立实现,提高了系统的可扩展性;各单元都部署在不同的硬件设备上仅通过TCP和UDP网络进行互联,某些单元的崩溃不会影响其他单元的运行,提高了系统的稳定性。1、数据流定义数据流是指系统中具有相同发送特性和接收要求的一类交互数据。根据数据流的属性选择合适的传输协议进行传输,以提高系统的通信效率。数据流是逻辑上相关的一系列数据,按照一定规则或要求,由源节点(Src)出发经过网络并到达目的节点(Dest),数据流是一个矢量,单向的。定义1 流 Stream 是六元组,记做 Stream = <S, Is, Nlc,N1, T1, TQ>,其中,①S = {S(01 \ft >为流中t时刻包长度的随机变量},且S满足a). {S (t),t 彡 T0I 为一随机过程;b). V7; < 随机变量 SU1)与 S(t2)同分布。②随机序列Is= {Is(n), η e Z|ls(n)为流中包Pn与Pn+1的发送时间间隔},且 Vw,"eZ+,随机变量Is (m)与Is (η)独立同分布;③Ttl e R+为流中初始包的发出时间。④随机序Nle = {Nlc (η),η e Z+1 Nlc (η)为流中第η次连续丢包次数的随机变量}, 且e Z+ ,随机变量Nle (m)与Nle (η)独立同分布;⑤时间段T = [T1, T2]内的丢包次数Μ =Σ^(0 (ti为第n次丢包的时间);⑥T1 e R+为流中判断包丢失的时间阈值;按照如上定义可知,上述参数中与源节点相关的参数有S、Is和Ttl,与目的节点相关的参数有队。、队([1\,1~2]间隔的丢包次数)以及1\。2、数据流的分类网络控制系统的数据流按照逻辑相关性可分为如下五类采样流、用户控制流、算法控制流、紧急信息流、系统诊断流。根据数据流的定义可形式化描述如下假设F(t)是一个关于时间的随机分布函数,i,s, m, η, Ε, e是大于零的常数,且e < E。1)采样流采样流是传感器按照指定间隔发送至控制器的数据,其特点是数据发送周期固
5定,每次数据量相对较小,数据具有时效性。形式化描述为1服从Is(i) =1分布;S服从 S(s) = 1分布;Nlc在
之间,N1在
之间F(t)分布,其中m, η由具体系统确定; T1 > 0由具体系统确定2)用户控制流用户控制流是用户根据应用需要向控制器发送的命令信号,以及控制器做出判断并向执行器或传感器发送的对应命令,强调数据的可靠性,实时性要求不高。形式化描述为I,S服从F(t)分布;Nlc服从Nlc(O) = 1分布;队服从N1(O) = 1 ;0 < T1 <E03)算法控制流算法控制流是系统在动态过程中,控制器按照控制算法向执行器发送的调整命令。数据的发送频率与具体算法相关。执行器在接收该数据时具有时效性。形式化描述为,I服从F(t)分布;S服从S(S) = 1的分布;Nlc在
之间,N1在
之间服从 F(t)分布; \ > 0由具体系统确定。4)紧急信息流紧急信息流是在紧急情况下,控制器快速发送至执行器或报警设备的信号。该数据实时性要求较高,而且需要快速、可靠地发送至目标。形式化描述为l、s服从F(t)分布; Nlc 服从 Nlc(O) = 1 分布;NX 服从 N1(O) = 1 分布;0 < T1 < e。5)系统诊断流系统诊断流是控制器定时或不定时地向传感器和执行器发送的数据,通过分析诊断数据,可了解执行器和传感器的运行和故障状态。该数据的周期一般比采样数据长,数据量比其他类型数据大,数据的逻辑完整性和可靠性要求较高,但响应时间允许较长。形式化描述为:I服从Is⑴=1分布;S服从S(S) = 1的分布;Nlc服从Nlc(O) = 1分布;NX服从 N1(O) = 1 ;0 < T1 < E0基于本发明的网络控制系统的交互数据根据上述分类方法进行划分,本发明为上述数据流分别选择如下传输协议采样数据、算法调整信号使用UDP协议;用户控制信号、 系统诊断数据使用TCP协议;紧急信号使用UDP协议,而且控制器在确认信号到达前应该连续发送。3、数据流通信协议数据流通信协议是网络控制系统各组成部件之间的主要通信方法,其内容包括 数据流的划分、数据包的格式、数据包的编解码方法和数据流的发送和接收接口。本协议中的数据流在相邻两个单元间是单向的,而且每种数据流仅使用一种传输协议进行传输,数据流的划分如上节所述。(1)数据包的格式每种数据流是由一种或多种类型的数据包组成,每种数据包具有相同的编号 (ID)。数据包的格式如表1所示。表1数据流通信协议中数据包的格式
权利要求
1.一种基于数据流通信的网络控制系统,其特征在于,包括传感器和执行器子系统、协议转换单元、消息分发单元、远程控制子系统、通信网络,所述的远程控制子系统包括数据存储单元、数据展现单元、客户端、控制与调度单元,所述的传感器和执行器子系统包括传感器、执行器、单片机,所述的单片机控制传感器采集被控对象的数据并将其发送给协议转换单元,该协议转换单元将采样数据按照数据流通信协议编码后进行分类,并通过通信网络发送给消息分发单元,该消息分发单元对接收到的数据包进行拷贝一份发送至数据存储单元,并写入日志存储在数据存储单元,所述的消息分发单元对接收到的数据包进行解码, 按照数据流类型协议将数据包放入对应序列,按照分发规则对数据包进行分发,所述的控制与调度单元收到消息分发单元发送的数据后,解析具体内容后,经处理后发送控制指令给消息分发单元,消息分发单元收到后将其发送给单片机,单片机控制执行器进行具体操作,所述的数据展现单元从数据存储单元中获取历史和最新数据后,对其进行显示,用户可以通过客户端来查看被控对象的状态。
2.根据权利要求1所述的一种基于数据流通信的网络控制系统,其特征在于,所述的数据流通信协议包括数据流的划分、数据包的格式、数据包的编解码方法、数据流的发送和接收接口。
3.根据权利要求1所述的一种基于数据流通信的网络控制系统,其特征在于,所述的通信网络为基于TCP/UDP网络。
4.根据权利要求1所述的一种基于数据流通信的网络控制系统,其特征在于,所述的数据流分为采样流、用户控制流、算法控制流、紧急信息流、系统诊断流。
全文摘要
本发明涉及一种基于数据流通信的网络控制系统,包括传感器和执行器子系统、协议转换单元、消息分发单元、远程控制子系统、通信网络,所述的远程控制子系统包括数据存储单元、数据展现单元、客户端、控制与调度单元,所述的传感器和执行器子系统包括传感器、执行器、单片机,所述的单片机控制传感器采集被控对象的数据并将其发送给协议转换单元,该协议转换单元将采样数据按照数据流通信协议编码后进行分类,并通过通信网络发送给消息分发单元,所述的消息分发单元对接收到的数据包进行解码,按照数据流类型协议将数据包放入对应序列,按照分发规则对数据包进行分发。与现有技术相比,本发明具有实时性强、可靠性高、可重用性好等优点。
文档编号H04L29/06GK102196002SQ201010126529
公开日2011年9月21日 申请日期2010年3月17日 优先权日2010年3月17日
发明者王中杰, 程论 申请人:同济大学