Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND DEVICE FOR COLLECTING DATA OF THIRD-PARTY EQUIPMENT IN DISTRIBUTED CONTROL SYSTEM
Document Type and Number:
WIPO Patent Application WO/2011/150715
Kind Code:
A1
Abstract:
A method for collecting the data of the third-party equipment in a distributed control system comprises the following steps: receiving a call request transmitted by an OPC client to the third-party equipment via an OPC interface, wherein the call request carries the identification information of the third-party equipment; according to the identification information, calling one corresponding to communication protocol of the third-party equipment of a plurality of preset drive modules, and constructing connection with the third-party equipment; and collecting the data of the third-party equipment and performing corresponding processing on the obtained data of the third-party equipment. The system can satisfy the connection between the distributed control system and the third-party equipment applying various communication protocols. A device for collecting the data of the third-party equipment in a distributed control system is also provided.

Inventors:
WANG, Changli (North No.1, No.19 Road Xiasha Economic and Technological Development Zon, Hangzhou Zhejiang 8, 310018, CN)
王常力 (中国浙江省杭州市下沙经济技术开发区19号路北1号, Zhejiang 8, 310018, CN)
SHI, Bo (North No.1, No.19 Road Xiasha Economic and Technological Development Zon, Hangzhou Zhejiang 8, 310018, CN)
施波 (中国浙江省杭州市下沙经济技术开发区19号路北1号, Zhejiang 8, 310018, CN)
Application Number:
CN2011/072356
Publication Date:
December 08, 2011
Filing Date:
March 31, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HANGZHOU HOLLYSYS AUTOMATION CO., LTD (North No.1, No.19 Road Xiasha Economic and Technological Development Zon, Hangzhou Zhejiang 8, 310018, CN)
杭州和利时自动化有限公司 (中国浙江省杭州市下沙经济技术开发区19号路北1号, Zhejiang 8, 310018, CN)
WANG, Changli (North No.1, No.19 Road Xiasha Economic and Technological Development Zon, Hangzhou Zhejiang 8, 310018, CN)
王常力 (中国浙江省杭州市下沙经济技术开发区19号路北1号, Zhejiang 8, 310018, CN)
SHI, Bo (North No.1, No.19 Road Xiasha Economic and Technological Development Zon, Hangzhou Zhejiang 8, 310018, CN)
International Classes:
G05B19/418
Attorney, Agent or Firm:
UNITALEN ATTORNEYS AT LAW (7th Floor, Scitech PlaceNo.22, Jian Guo Men Wai Ave, Chao Yang District Beijing 4, 100004, CN)
Download PDF:
Claims:
权 利 要 求

1、 一种分布式控制系统中采集第三方设备数据的方法, 其特征在于, 所 述方法包括:

通过 OPC接口接收 OPC客户端发送的对第三方设备的调用请求,所述调 用请求中携带有所述第三方设备的标识信息;

根据所述标识信息,调用预置的多个驱动模块中对应所述第三方设备通信 协议的驱动模块, 建立与所述第三方设备的连接;

采集所述第三方设备的数据,并对获得的所述第三方设备的数据进行相应 处理。

2、根据权利要求 1所述的分布式控制系统中采集第三方设备数据的方法, 其特征在于, 所述多个驱动模块分别采用动态链接库的方式进行设置,每个动 态链接库对应一种通信协议。

3、根据权利要求 1所述的分布式控制系统中采集第三方设备数据的方法, 其特征在于, 所述标识信息为所述第三方设备的地址信息。

4、根据权利要求 3所述的分布式控制系统中采集第三方设备数据的方法, 其特征在于, 所述地址信息以树形目录结构形式进行存储。

5、 根据权利要求 1-4中任一项所述的分布式控制系统中采集第三方设备 数据的方法, 其特征在于, 所述方法还包括:

对所述第三方设备的通信状态以及采集所述第三方设备的数据进行显示。 6、 根据权利要求 1-4中任一项所述的分布式控制系统中采集第三方设备 数据的方法, 其特征在于, 所述方法还包括:

根据与所述第三方设备的通信, 进行日志信息的配置。

7、根据权利要求 6所述的分布式控制系统中采集第三方设备数据的方法, 其特征在于, 所述方法还包括:

当出现与所述第三方设备的通信故障时,进行故障测试并根据所述日志信 息进行故障原因的判断。

8、 一种分布式控制系统中采集第三方设备数据的系统, 其特征在于, 所 述系统包括: OPC客户端、 OPC服务器以及第三方设备; 其中, 所述 OPC服务器包括:

调用请求接收单元,用于通过 OPC接口接收 OPC客户端发送的对第三方 设备的调用请求, 所述调用请求中携带有所述第三方设备的标识信息;

驱动模块调用单元, 用于 ^据所述标识信息,调用预置的多个驱动模块中 对应所述第三方设备通信协议的驱动模块, 建立与所述第三方设备的连接; 数据采集单元, 用于采集所述第三方设备的数据, 并对获得的所述第三方 设备的数据进行相应处理。

9、根据权利要求 8所述的分布式控制系统中采集第三方设备数据的系统, 其特征在于, 所述多个驱动模块分别采用动态链接库的方式进行设置,每个动 态链接库对应一种通信协议。

10、 根据权利要求 8 所述的分布式控制系统中采集第三方设备数据的系 统, 其特征在于, 所述标识信息为所述第三方设备的地址信息。

11、 根据权利要求 8-10 中任一项所述的分布式控制系统中采集第三方设 备数据的系统, 其特征在于, 所述 OPC服务器还包括:

显示单元,用于对所述第三方设备的通信状态以及采集所述第三方设备的 数据进行显示。

12、 根据权利要求 8-10 中任一项所述的分布式控制系统中采集第三方设 备数据的系统, 其特征在于, 所述 OPC服务器还包括:

日志单元, 用于根据与所述第三方设备的通信, 进行日志信息的配置。 13、 根据权利要求 12所述的分布式控制系统中采集第三方设备数据的系 统, 其特征在于, 所述 OPC服务器还包括:

通信诊断单元, 用于当出现与所述第三方设备的通信故障时, 进行故障测 试并根据所述日志信息进行故障原因的判断。

Description:
分布式控制系统中采集第三方设备数据的方法 及装置 本申请要求于 2010 年 6 月 1 日提交中国专利局、 申请号为 201010192599.5、 发明名称为 "分布式控制系统中采集第三方设备数据的方 及装置 "的中国专利申请的优先权, 其全部内容通过引用结合在本申请中。 技术领域 本发明涉及工业自动化技术领域, 更具体地说, 涉及一种分布式控制系统 中采集第三方设备数据的方法及装置。 背景技术 随着计算机科学、工业控制等新技术的迅速发 展,计算机监控系统由早期 的集中式监控向全分布式方向发展,同时随着 面向对象技术、分布式对象技术、 多层次客户 /服务器(Client/Server )技术的成熟, 使得计算机监控系统软件也 从早期面向功能的系统,发展为以面向具体现 场设备为特征的面向对象的计算 机监控系统。

数据和信息是分布式控制系统( Distributed Control System, DCS )监督控 制的基础,它们不仅来源于 DCS现场控制层,还可能来源于第三方设备和软 件。 一个好的 DCS监控应用软件应能提供广泛的应用接口或标 准接口,很方便地实 现将 DCS控制器、 第三方 PLC ( Programmable logic Controller, 可编程逻辑控 制器)、 智能仪表和其他工控设备的数据接入到系统中 。 一般监控系统都把数 据源看作外部设备,驱动程序和这些外部设备 交换数据, 包括采集数据和发送 数据 /指令。

现有技术中, DCS应用程序开发商需要不断地开发这些设备的 驱动程序, 这带来了大量重复性劳动,也带来了很多问题 。硬件供应商在硬件上作出一些 小小的改动, 硬件的驱动程序就可能需要重写; 同时, 由于不同设备甚至同一 设备的不同单元的驱动程序可能不同,很难同 时对这些设备进行优化操作。传 统的过程控制系统是一对一的系统, 任何一种 DCS、 SCADA ( Supervisory Control And Data Acquisition,数据采集与监视控制系统)、 MES( Manufacturing Execution System, 制造执行系统)等上位监控软件或其它应用软 件在用于某 种硬件设备时都需要开发专用的驱动程序, 系统构建完成后的最终结果是:

1) 一种应用软件要用于 N种硬件设备需要开发 N个驱动程序,每增加一种 新的应用软件需要另外开发 N个硬件设备的驱动程序;

2) M种软件要用于 N种硬件设备需要开发( M*N )个驱动程序, 每增加一 种新的硬件设备需要为 M种软件开发新的设备驱动程序。

可见, 现有技术中

发明内容

有鉴于此,本发明实施例提供一种分布式控制 系统中采集第三方设备数据 的方法及系统,能够满足分布式控制系统同应 用各种通信协议的第三方设备的 连接。

本发明实施例提供一种分布式控制系统中采集 第三方设备数据的方法,包 括:

通过 OPC接口接收 OPC客户端发送的对第三方设备的调用请求,所 述调 用请求中携带有所述第三方设备的标识信息;

根据所述标识信息,调用预置的多个驱动模块 中对应所述第三方设备通信 协议的驱动模块, 建立与所述第三方设备的连接;

采集所述第三方设备的数据,并对获得的所述 第三方设备的数据进行相应 处理。

优选的, 所述多个驱动模块分别采用动态链接库的方式 进行设置,每个动 态链接库对应一种通信协议。

优选的, 所述标识信息为所述第三方设备的地址信息。

优选的, 所述地址信息以树形目录结构形式进行存储。

进一步, 所述方法还包括:

对所述第三方设备的通信状态以及采集所述第 三方设备的数据进行显示。 进一步, 所述方法还包括:

根据与所述第三方设备的通信, 进行日志信息的配置。

进一步, 所述方法还包括: 当出现与所述第三方设备的通信故障时,进行 故障测试并根据所述日志信 息进行故障原因的判断。

一种分布式控制系统中采集第三方设备数据的 系统, 包括: OPC客户端、 OPC服务器以及第三方设备;

其中, 所述 OPC服务器包括:

调用请求接收单元,用于通过 OPC接口接收 OPC客户端发送的对第三方 设备的调用请求, 所述调用请求中携带有所述第三方设备的标识 信息;

驱动模块调用单元, 用于 ^据所述标识信息,调用预置的多个驱动模块 对应所述第三方设备通信协议的驱动模块, 建立与所述第三方设备的连接; 数据采集单元, 用于采集所述第三方设备的数据, 并对获得的所述第三方 设备的数据进行相应处理。

优选的, 所述多个驱动模块分别采用动态链接库的方式 进行设置,每个动 态链接库对应一种通信协议。

优选的, 所述标识信息为所述第三方设备的地址信息。

进一步, 所述 OPC服务器还包括:

显示单元,用于对所述第三方设备的通信状态 以及采集所述第三方设备的 数据进行显示。

进一步, 所述 OPC服务器还包括:

日志单元, 用于根据与所述第三方设备的通信, 进行日志信息的配置。 进一步, 所述 OPC服务器还包括:

通信诊断单元, 用于当出现与所述第三方设备的通信故障时, 进行故障测 试并根据所述日志信息进行故障原因的判断。

同现有技术相比, 本发明提供的技术方案中, 提供了一种基于 OPC标准 的 DCS中采集第三方设备数据的方法,通过在 OPC服务器中预置多个分别与 各第三方设备通信协议对应的驱动模块, 当 DCS实时数据库需要采集某个第 三方设备的数据时,仅需调用对应该第三方设 备的驱动模块,从而通过该驱动 模块建立与第三方设备的连接, 满足第三方设备的通信要求。 由此, 对于任何 一种第三方设备只需要提供一种设备驱动模块 就可以供任何 DCS软件系统使 用, 满足了 DCS或者其他上层监控软件不断升级造成的设备 驱动不断开发的 模式, 使得方案的实施具有良好的灵活性、 扩展性和可维护性。 附图说明 为了更清楚地说明本发明实施例的技术方案, 下面将对实施例或现有技术 描述中所需要使用的附图作筒单地介绍,显而 易见地, 下面描述中的附图仅仅 是本发明的一些实施例,对于本领域普通技术 人员来讲,在不付出创造性劳动 的前提下, 还可以根据这些附图获得其他的附图。

图 1 为本发明实施例提供的一种分布式控制系统中 采集第三方设备数据 的方法步骤流程图;

图 2为本发明实施例提供的 OPC数据的树形目录结构示意图;

图 3 为本发明实施例提供的一种分布式控制系统中 采集第三方设备数据 的系统结构示意图;

图 4 为本发明实施例提供的另一种分布式控制系统 中采集第三方设备数 据的系统结构示意图;

图 5 为本发明实施例提供的又一种分布式控制系统 中采集第三方设备数 据的系统结构示意图。 具体实施方式

下面将结合本发明实施例中的附图,对本发明 实施例中的技术方案进行清 楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而不是 全部的实施例。基于本发明中的实施例, 本领域普通技术人员在没有做出创造 性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。

下面首先对本发明提供的分布式控制系统中采 集第三方设备数据的方法 进行说明, 参照图 1所示, 所述方法包括:

步骤 101、 通过 OPC接口接收 OPC客户端 (OPC Client )发送的对第三 方设备的调用请求, 所述调用请求中携带有所述第三方设备的标识 信息; 步骤 102、 根据所述标识信息, 调用预置的多个驱动模块中对应所述第三 方设备通信协议的驱动模块, 建立与所述第三方设备的连接;

步骤 103、 采集所述第三方设备的数据, 并对获得的所述第三方设备的数 据进行相应处理。

OPC接口模块提供标准 OPC接口功能,其根据 OPC标准建立了一套在硬 件供应商和软件开发商之间相互遵循的规则。 只要遵循这套规则,数据交换对 硬件供应商和软件开发商二者来说都是透明的 ,硬件供应商无需考虑应用程序 的多种需求和传输协议, 软件开发商也无需了解硬件的实质和操作过程 。 可见, 本发明提供的技术方案中, 提供了一种基于 OPC标准的 DCS中采 集第三方设备数据的方法, 通过在 OPC服务器中预置多个分别与各第三方设 备通信协议对应的驱动模块, 当 DCS实时数据库需要采集某个第三方设备的 数据时,仅需调用对应该第三方设备的驱动模 块,从而通过该驱动模块建立与 第三方设备的连接, 满足第三方设备的通信要求。 由此, 对于任何一种第三方 设备只需要提供一种设备驱动模块就可以供任 何 DCS软件系统使用, 满足了 DCS 或者其他上层监控软件不断升级造成的设备驱 动不断开发的模式, 使得 方案的实施具有良好的灵活性、 扩展性和可维护性。

在本发明的一个优选实施例中, 所述多个驱动模块分别采用 DLL ( Dynamic Link Library, 动态链接库)的方式进行设置, 每个动态链接库对应 一种通信协议。 在具体实现过程中,驱动模块采用驱动开发包 方式,每个设备驱动均采用 同种开发模板, 提供相同的接口函数, 根据第三方设备的具体通信需求, 调用 相应的驱动模块, 此种实现方式的优点包括: 接口之间相互独立, 减少了耦合性; 当某驱动模块变更时, 不影响其它模块;

当增加新的设备驱动时, 只需根据标准开发新的设备驱动动态链接库即 可, 方便升级维护和减少升级所需时间。

用户通过 DCS监控应用软件发起对第三方设备的调用请求 时, 通过 DCS 监控应用软件提供的 OPC客户端接口,向 OPC服务器发送对第三方设备的调 用请求, 并在所述调用请求中携带所述第三方设备的标 识信息。 通常, 所述标 识信息可以为所述第三方设备的地址信息。通 过第三方设备的地址信息, 可以 在多个第三方设备共存的情形时, 便捷地找到对应的第三方设备。 由此, OPC接口模块中的重要设计之一为 OPC数据的树形目录结构, 如 图 2所示。

OPC服务器中包含可供客户端访问的资源, 这些资源在 OPC中被称为项 ( ITEM ) 。 为了方便客户访问, 这些项应该按照一种合理的方式进行组织。 服务器中的每个项都有一个全局有效标识名 (FID, Full qualified ID ) 。 有了 该全局有效标识名,客户端就可以找到对应的 项, 因此称该全局有效标识名为 该项的服务器地址, 筒称地址。这种具有服务器地址的项按照一定 的方式组织 在一起, 就形成了服务器的地址空间。 筒言之, 服务器地址空间就是服务器上 包含的可以供客户访问的资源的集合。服务器 地址空间是由服务器确定和管理 的,它描述了服务器中包含了哪些项,以及这 些项是按照什么形式进行组织的。

本发明实施例中, OPC数据的树形目录结构中, 根对象(CRoot::m_Root ) 是四层目录结构的根, 维护与第三方设备通信的通道列表(ChannelList ) , 所 有的通道都可以通过 m_Root找到; 通道对象( CChannel::m_branches )是地址 空间的第一层, 维护设备列表(DeviceList ) , 每个通道都可以有 n个设备; 设备对象(CDevice::m_branches )是第二层, 维护组列表( GroupList ) , 组可 以将设备分为不同的类型; 组对象(CGroup::m_tags )是第三层, 维护标签列 表(TagList ) ; 标签(CExTag )是最后一层地址空间, 标签对应具体设备的 点。

由于在 OPC接口模块内含有地址空间的根, 用户通过配置通信通道、 设 备、组及选择组内的点之后即可完成第三方设 备地址空间的建立。 当地址空间 建立之后, OPC Client可以通过 OPC接口访问地址空间内任意标签点的值。 标签的地址格式可以为: ChName.DevName.GrpName.TagName。

OPC Client通过 OPC接口模块交换上行和下行数据, 其中, 上行数据为 OPC Client采集获得的第三方设备的数据, 当设备标签值发生变化时, 更新 OPC接口模块内树形目录结构中对应的 ITEM值; 下行数据为 OPC Client向 第三方设备发送的数据, 当 OPC客户端改变 ITEM值时, 则需要修改对应的 设备标签, 通过 OPC服务器向第三方设备下发相应的控制和设定 命令。 需要说明的是, 对应预置的多个驱动模块, 可以通过界面配置多个通道, 通道配置过程中可以选择配置通道号、通道类 型以及通道所采用的通信方式等 参数; 每个通道可配置多个设备(通信协议相同), 且设备可以选择其冗余的 主从通道;通过配置文件读取多个驱动模块的 地址信息,生成相应的地址空间。 每个具体的驱动模块都有一个和其协议相关的 协议处理类,用来处理该协议相 关的信息, 如: 组帧、 发帧、 收帧、 解帧。 所有和协议相关的一些处理, 都可 以放在协议类中, 因为每种协议的帧格式和通信流程都不相同。

除此之外, 可以通过界面选择通信方式,通常的通信方式 有串口通信以及 以太网通信, 然后配置相应的通讯参数: 如串口通信需要配置: 串口号, 波特 率, 数据位, 停止位, 奇偶校验等参数; 可以通过定时器或者中断方式(适用 于多线程)轮询设备;对通信类进行统一封装 ,实现与第三方设备的通讯功能。

在本发明的一个优选实施例中,提供对所述第 三方设备的通信状态以及采 集所述第三方设备的数据进行显示的功能。用 于显示当前通道和设备的通信状 态; 显示当前每个设备的标签值。 可以采用多视窗口 (Tree-List-Debug )的显 示方式,其中, Tree表示显示通道和设备信息, List表示显示设备的标签信息, Debug表示窗口显示通信状态; List显示的信息可以随着 Tree所选择的不同项 #文相应的切换。

同时, 根据与所述第三方设备的通信, 还可以进行日志信息的配置。 通过 界面配置日志文件所需要纪录的内容, 如时间, 串口号, 发送或者接收的报文 等信息, 实时纪录通讯状态和收发的数据; 以便可以通过日志文件诊断出通道 或者设备故障的原因。

因此, 对于采用 DLL方式设置的驱动模块来说, 实现对其的调度线程可 以提供四个通用的接口:

通道通信接口: 实现对通道的打开和关闭操作;

初始化设备接口: 每个通道维护一个设备列表,初始化设备接口 是将设备 转化为专用设备增加到相应的设备列表内;

轮询设备接口: 实现维护每个设备的控制与采集; 检测设备接口: 实现通过调用此接口可检测当前备状态。

相应上述分布式控制系统中采集第三方设备 数据的方法,本发明实施例还 提供了一种分布式控制系统中采集第三方设备 数据的系统,如图 3所示, 为该 系统的结构示意图, 该系统具体可以包括: OPC客户端 30、 OPC服务器 31 以及第三方设备 32;

其中, 所述 OPC服务器 31包括:

调用请求接收单元 310, 用于通过 OPC接口接收 OPC客户端发送的对第 三方设备的调用请求, 所述调用请求中携带有所述第三方设备的标识 信息; 驱动模块调用单元 311 , 用于根据所述标识信息, 调用预置的多个驱动模 块中对应所述第三方设备通信协议的驱动模块 , 建立与所述第三方设备的连 接;

数据采集单元 312, 用于采集所述第三方设备的数据, 并对获得的所述第 三方设备的数据进行相应处理。

其中, 所述多个驱动模块分别采用动态链接库的方式 进行设置,每个动态 链接库对应一种通信协议。

此外, 所述标识信息为所述第三方设备的地址信息。

在其他优选实施例中, 如图 4所示, 所述 OPC服务器 31还包括: 显示单元 313 , 用于对所述第三方设备的通信状态以及采集所 述第三方设 备的数据进行显示。

此外, 如图 5所示, 所述 OPC服务器 31还包括:

日志单元 314,用于根据与所述第三方设备的通信,进行 志信息的配置。 通信诊断单元 315 , 用于当出现与所述第三方设备的通信故障时, 进行故 障测试并根据所述日志信息进行故障原因的判 断。

可见, 通过在 OPC服务器中预置多个分别与各第三方设备通信 协议对应 的驱动模块, 当 DCS实时数据库需要采集某个第三方设备的数据 时, 仅需调 用对应该第三方设备的驱动模块,从而通过该 驱动模块建立与第三方设备的连 接, 满足第三方设备的通信要求。 由此, 对于任何一种第三方设备只需要提供 一种设备驱动模块就可以供任何 DCS软件系统使用,满足了 DCS或者其他上 层监控软件不断升级造成的设备驱动不断开发 的模式,使得方案的实施具有良 好的灵活性、 扩展性和可维护性。

对于系统实施例而言, 由于其基本相应于方法实施例, 所以描述得比较筒 单,相关之处参见方法实施例的部分说明即可 。 以上所描述的装置实施例仅仅 是示意性的,其中所述作为分离部件说明的单 元可以是或者也可以不是物理上 分开的,作为单元显示的部件可以是或者也可 以不是物理单元, 即可以位于一 个地方, 或者也可以分布到多个网络单元上。可以根据 实际的需要选择其中的 部分或者全部模块来实现本实施例方案的目的 。本领域普通技术人员在不付出 创造性劳动的情况下, 即可以理解并实施。

本领域普通技术人员可以理解实现上述实施例 方法中的全部或部分流程, 是可以通过计算机程序来指令相关的硬件来完 成,所述的程序可存储于计算机 可读取存储介质中, 该程序在执行时, 可包括如上述各方法的实施例的流程。 其中,所述的存储介质可为磁碟、光盘、只读 存储记忆体(Read-Only Memory, ROM )或随机存储记忆体(Random Access Memory, RAM )等。

对所公开的实施例的上述说明,使本领域专业 技术人员能够实现或使用本 发明。 对这些实施例的多种修改对本领域的专业技术 人员来说将是显而易见 的,本文中所定义的一般原理可以在不脱离本 发明实施例的精神或范围的情况 下, 在其它实施例中实现。 因此, 本发明实施例将不会被限制于本文所示的这 些实施例, 而是要符合与本文所公开的原理和新颖特点相 一致的最宽的范围。