一种实现不同品牌plc之间数据传输的方法

文档序号:6283382阅读:379来源:国知局
专利名称:一种实现不同品牌plc之间数据传输的方法
技术领域
本发明涉及工业控制领域,特别是涉及一种实现不同品牌PLC之间数据 传输的方法。
技术背景在现代化工厂中,除厂级可编程序逻辑控制器(PLC: Programmable Logic Controller)系统外,还存在很多独立的子系统。比如,各个生产车间的PLC 系统、或同一生产车间的不同生产流程的PLC系统。对一个大型工厂,由于 生产线的不断改造、新老流程的不断更新,这些PLC系统往往是由不同的制 造商提供的,且这些PLC系统之间很多都需要进行相互通讯。在实际应用中,虽然各制造商提供的PLC系统都支持工业以太网。但是 不同制造商生产的PLC系统支持的通讯协议有所不同。比如,西门子 (S正MENS )公司的PLC系统支持PROFIBUS协议,施耐德(SCHNEIDER) 公司的PLC系统支持MODBUSPLUS协议等。对于支持不同通讯协议的PLC 系统,虽然采用相同的电缆、网络接头、网卡、以及交换机,但是它们对同一 种信息的解释方式是不相同的。由此也造成了支持不同通讯协议的PLC系统 之间无法直接进行通讯。如图1所示,为现有技术中混合PLC系统结构图。所述系统包括A品 牌PLC系统10和B品牌PLC系统20。 4艮设所述A品牌为SCHNEIDER, B 品牌为S正MENS。所述SCHNEIDER的PLC系统10包括PLCll、 PLC12 PLCln。所述 多台PLC基于MODBUSPLUS网络组合为一个系统,通过数据总线与人机界 面(HMI: Human Machine Interface ) 1相连。所述S正MENS的PLC系统20包括PLC21、 PLC22 . PLC2n。所述多 台PLC基于PROFIBUS-DP网络组合为一个系统,通过数据总线与人机界面 HMI2相连。为了实现基于MODBUSPLUS网络的PLC与基于PROFIBUS-DP网络的 PLC之间的通讯,选择SCHNEIDER的PLC系统10中的PLCll作为通讯管 理单元。在所述作为通讯管理单元的PLCll上增加一块SCHNEIDER公司的
针对PROFIBUS-DP网络的通讯才莫块30,并订购相关的支持软件,建立 PROFIBUS-DP电缆连接,使配置了通讯模块30的PLCll作为PROFIBUS-DP网络中的一个节点,然后设置通讯内容。当所述SCHNEIDER的PLC系统10中的PLCll接收到来自S正MENS 的PLC系统20中任一台PLC的信息时,所述通讯模块30对所述信息进行转 化,将所述信息按照MODBUSPLUS协议的方式进行解释,使SCHNEIDER 的PLCll能够识别接收到的信息。同样,在SCHNEIDER的PLCll向S正MENS 的PLC发送信息之前,所述通讯模块30对信息进行转化,将信息按照 PROFIBUS-DP协议的方式进行解释,然后将转化后的信息发送给SIEMENS 的PLC。由此实现SCHNEIDER的PLCll与SIEMENS的PLC之间的通讯。当SCHNEIDER的PLC系统10中的其他PLC需要和SIEMENS的PLC 进行通讯时,必须通过所述配置了通讯模块30的PLCll中转数据,或者是选 择S正MENS的PLC系统10中的一台PLC作为通讯管理单元,在其上配置针 对于MODBUSPLUS网络的通讯模块。现有技术所述实现不同品牌PLC系统之间通讯的系统,需要选择一台PLC 作为通讯管理单元,在所述PLC上增加通讯模块,而且每块通讯模块只能针 对一种品牌PLC系统。当存在第三品牌、第四品牌、甚至于更多品牌的PLC 系统时,需要针对每种品牌PLC都增加一块通讯模块,致使系统繁杂且不易 于实现。 发明内容本发明所要解决的技术问题是提供一种实现不同品牌PLC之间数据传输 的方法,可以简便的解决不同品牌PLC之间的数据传输问题。本发明提供了 一种实现不同品牌PLC之间数据传输的方法,包括 分别建立人机界面与各品牌PLC系统中每一台PLC之间的通讯连4妄; 在人机界面中,分别定义指向被读取数据的PLC的源标签和指向读取数 据的PLC的目的标签;在人机界面中,将所述源标签的值赋予目的标签,实现读取数据的PLC 与被读取数据的PLC之间的数据传输。优选地,采用下列步骤建立人机界面与各品牌PLC系统中每一台PLC之间的通ifl连4妄在人机界面中安装针对各品牌PLC系统的通讯卡及驱动程序;建立人机界面与各品牌PLC系统中的每一台PLC的电缆连接;在人机界面各品牌PLC系统对应的通讯卡中,分别设置各品牌PLC系统 中每一 台PLC的网络地址;分别定义各品牌PLC系统中每一台PLC的连接名称。优选地,所述每一台PLC对应的连接名称包括所述PLC的品牌、所述 PLC支持的网络协议、所述PLC的网络地址、通讯区域、以及数据类型;所述通讯区域为,所述PLC能够与其他PLC进行数据交换的存储空间;所述数据类型为,所述PLC存储数据的类型。优选地,所述指向被读取数据的PLC的源标签包括被读取数据的数据 类型、所述被读取数据的PLC与人机界面之间的连接名称、以及存储地址; 所述存储地址为,被读取数据在所述被读取数据PLC内的存储地址。 优选地,所述存储地址为所述被读取数据PLC的连接名称中定义的通讯 区域的子集。优选地,所述指向读取数据的PLC的目的标签包括读取数据的数据类 型、所述读取数据的PLC与人机界面之间的连接名称、以及存储地址;所述存储地址为,读取到的数据存储到所述读取数据PLC内的存储地址。 优选地,所述存储地址为所述读取数据PLC的连接名称中定义的通讯区 域的子集。优选地,所述源标签的数据类型与所述目的标签的数据类型相一致。 优选地,所述各品牌PLC系统中每一 台PLC对应的网络地址各不相同。 优选地,所述各品牌PLC系统中每一 台PLC对应的连接名称各不相同。 与现有技术相比,本发明具有以下优点本发明所述实现不同品牌PLC之间数据传输的方法,分别建立人机界面 与各品牌PLC系统中每一台PLC之间的通讯连接。在人机界面中,定义源标 签和目的标签,使所述源标签指向被读取数据的PLC中所述被读取数据所在 的存储地址,所述目的标签指向读取数据的PLC中所述读取到的数据将被存 储到的存储地址。然后在人机界面中,将所述源标签的值赋予所述目的标签,
实现将所述被读取数据的PLC中的数据传输的所述读取数据的PLC的存储地 址中。采用本发明所述的方法,无需增加任何软硬件设备,可以简便的实现不 同品牌PLC之间的数据传输,不仅实现简单,而且节省生产成本。


图1,为现有技术所述混合PLC系统结构图;图2,为本发明所述混合PLC系统第一实施例结构图;图3,为本发明第一实施例所述混合PLC系统中实现不同品牌PLC之间数据传输的方法流程图;图4,为本发明所述混合PLC系统第二实施例结构图;图5,为本发明第二实施例所述混合PLC系统中实现不同品牌PLC之间数据传输的方法流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本发明作进一步详细的说明。本发明所述实现不同品牌PLC之间数据传输的方法,分别建立人机界面 与各品牌PLC系统中每一 台PLC之间的通讯连接。在所述通讯连接中,针对 各品牌PLC系统中每一台PLC,分别定义所述PLC与人机界面之间的连接名 称,所述连接名称中包含所述PLC支持的网络协议、网络地址、数据类型等 信息。通过在人机界面中,定义源标签和目的标签,使所述源标签指向被读取 数据的PLC中所述被读取数据所在的存储地址,所述目的标签指向读取数据 的PLC中所述读取到的数据将被存储到的存储地址。然后在人机界面中,将 所述源标签的值赋予所述目的标签,实现将所述被读取数据的PLC中的数据 传输的所述读取数据的PLC的存储地址中。参见图2,为本发明所述混合PLC系统第一实施例结构图。如图2所示,为典型的混合PLC系统结构图。所述系统包括第一品牌PLC系统1、第二品牌PLC系统2、第三品牌PLC系统3......以及第n品牌PLC系统n (n正整数)。每个品牌的PLC系统均由数据总线、人才几界面HMI、以及PLC组成。所 述人机界面HMI和PLC可以为多台。为简便起见,本发明实施例中以多台PLC
和单台人机界面HMi构成的PLC系统进行说明。所述第一品牌PLC系统1包括PLC11、PLC12 .. .PLClm( m为正整数)。 所述多台PLC基于第一品牌PLC所支持的通讯网络组成一个系统,通过数据 总线与人机界面HMI相连。所述第二品牌PLC系统2包括PLC21、 PLC22 .. .PLC2k( k为正整数)。 所述多台PLC基于第二品牌PLC所支持的通讯网络组成一个系统,通过数据 总线与人才几界面HMI相连。依次类推,所述第n品牌PLC系统n包括PLCnl、 PLCn2 . . PLCnj (j 为正整数)。所述多台PLC基于第n品牌PLC所支持的通讯网络组成一个系 统,通过数据总线与人机界面HMI相连。所述人机界面HMI为安装了组态软件IFIX的工控机(IPC: Industrial Personal Computer )。所述组态软件IFIX是安装在工控机内的软件,它提供一个软件平台,通 过这个软件平台可以将工厂以图形方式表示,将PLC传送来的数据变化以图 形变化(颜色、形状、填充等)、文字显示的方式表示,从而反映工厂的生产 情况、设备状态等信息,将工控机接收到的操作指令写入到PLC内。参见图3,为本发明第一实施例所述混合PLC系统中实现不同品牌PLC 之间数据传输的方法流程图。步骤S31:分别建立人机界面HMI与各品牌PLC系统中每一台PLC之间 的通讯连接。具体包括以下步骤步骤S311:在人机界面HMI中安装针对各品牌PLC系统的通讯卡及驱动 程序。对于不同品牌的PLC系统,其与人机界面HMI实现通讯所需的通讯卡均 不同。所述通讯卡一^1为PLC系统的标配元件,由所述PLC系统的生产厂家 提供。针对每一种通讯卡,安装对应的驱动程序。步骤S312:建立人机界面HMI与各品牌PLC系统中每一台PLC的电缆 连接。对于不同品牌的PLC系统,其支持的通讯协议有所不同。不同品牌的PLC与人机界面HMI之间建立连接所采用的通讯电缆不一定相同。因此,针对各 品牌PLC系统中的每一台PLC,分别制作与之对应的通讯电缆,建立每一台 PLC与人机界面HMI的电缆连接。步骤S313:在人机界面各品牌PLC系统对应的通讯卡中,分别设置各品 牌PLC系统中每一 台PLC的网络地址。针对不同品牌PLC支持的通讯协议,在所述品牌PLC对应的通讯卡上, 为每一台所述品牌的PLC设置网络地址。对每一台PLC设置网络地址时,要确保不同PLC的网络地址不相同,避 免出现网络地址沖突。步骤S314:配置人机界面HMI中的组态软件IFIX,分别定义与其通讯的 各品牌PLC系统中每一台PLC的连接名称。针对每一台PLC,所述连接名称包括所述PLC系统品牌、所述PLC支 持的网络协议、所述PLC的网络地址、通讯区域、数据类型。所述通讯区域是指所述PLC能够与其他PLC进行数据交换的存储空间。所述数据类型是指所述PLC支持的存储数据的类型。步骤S32:在人机界面中,分别定义指向被读取数据的PLC的源标签和 读取数据的PLC的目的标签。所述指向被读取数据的PLC的源标签包括被读取数据的数据类型、所 述被读取数据的PLC与人机界面之间的连接名称、以及存储地址。所述源标签的存储地址为,所述源标签指向的PLC中要^^皮读取的数据所 在的存储地址。所述存储地址为所述被读取数据PLC的连接名称中定义的通 讯区域的子集。如果超出所述通讯区域范围,所述地址为无效。所述指向读取数据的PLC的目的标签包括读取数据的数据类型、所述 读取数据的PLC与人机界面之间的连接名称、以及存储地址。所述目的标签的存储地址为,所述目的标签指向的PLC中,所述读取到 的数据将被存储到的存储地址。所述存储地址为所述读取数据PLC的连接名 称中定义的通讯区域的子集。如果超出所述通讯区域范围,所述地址为无效。步骤S33:在人机界面中,将所述源标签的值赋予所述目的标签,实现读 取数据的PLC与被读取数据的PLC之间的数据传输。
在组态软件IFIX中,调用VBA程序,将源标签的值赋予目的标签。所述 人机界面HMI从所述被读取数据PLC中所述源标签指定的存储地址中取出所 述被读取数据,并将所述数据存储到所述读取数据PLC中所述目的标签指定 的存储地址中。至此,实现了不同品牌PLC之间数据的传输。下面,仍以SCHNEIDER品牌的PLC系统和SIEMENS品牌的PLC系统组成的混合PLC系统为例,进行更加详细的说明。参见图4,为本发明所述混合PLC系统第二实施例结构图。如图4所示,为典型的混合PLC系统结构图。所述系统包括A品牌PLC系统10和B品牌PLC系统20。假设所述A品牌为SCHNEIDER, B品牌为S正MENS。每个品牌的PLC系统均有总线、人机界面HMI、以及PLC组成。所述人 机界面HMI和PLC可以为多台。为简便起见,本发明实施例中以多台PLC 和单台人机界面HMI构成的PLC系统进行说明。所述SCHNEIDER的PLC系统10包括PLCll、 PLC12 PLCln ( n为 正整数)。所述多台PLC基于MODBUSPLUS网络组合为一个系统,通过数据 总线与人机界面HMI相连。所述S正MENS的PLC系统20包括PLC21 、 PLC22 PLC2m(m为正整 数)。所述多台PLC基于PROFIBUS-DP网络组合为一个系统,通过数据总线 与人机界面HMI相连。所述人机界面HMI为安装了组态软件IFIX的工控机(IPC: Industrial Personal Computer )。参见图5,为本发明第二实施例所述混合PLC系统中实现不同品牌PLC 之间数据传输的方法流程图。步骤S51:建立人机界面HMI与SCHNEIDER的PLC系统10中每一台 PLC的通讯连才妻。具体包括以下步骤步骤S511:在人机界面HMI中安装针对MODBUSPLUS网络的通讯SA85 卡,并安装驱动程序。步骤S512:制作MODBUSPLUS通讯电缆,将PLC系统10和人机界面 画I联入同一 MODBUSPLUS网内。步骤S513:在每一台PLC的通讯卡上设置MODBUSPLUS网络地址,在 SA85卡上设置人机界面HMI的MODBUSPLUS网络地址。对每一台PLC设置网络地址时,要确保不同PLC的网络地址不相同,避 免出现网络地址冲突。步骤S514:配置组态软件IFIX,分别定义与其通讯的SCHNEIDER的PLC 系统10中每一台PLC的连接名称。 所述连接名称包括PLC系统品牌、网络协议、网络地址、通讯区域、数 据类型。所述通讯区域是指所述PLC能够与其他PLC进行数据交换的存储空间。以SCHNEIDER的PLC 11为例说明,定义其连接名称为Q1 。所述PLC 11的品牌为Quantum(昆腾)。所述网络协议为MODBUSPLUS。对于Quantum (昆腾)PLCll,其支持的存储数据有4种类型数字量输出及数字量内存点,其表示形式为OXXXXX;数字量输入点,其表示形式为1XXXXX;模拟量输出及寄存器,其表示形式为4XXXXX;模拟量输入点,其表示形式为3XXXXX。其中,X表示任意值。比如001002表示数字量输出点或数字量内存点;400100表示模拟量输 出点或寄存器点。在定义连接Ql之前,首先要定义人机界面HMI对应于SCHNEIDER的 PLCll的存储空间。比如,000001 -004000; 100001 - 102000; 300001 -300400; 400001 ~ 401000。超出上述存储空间地址区域的地址均为非法地址。人机界面HMI对应于SCHNEIDER的PLCll的通讯区域,为小于存储空 间的一个或多个区域。比如,对应于上述存^f诸空间,可以定义通讯区域为数字量输出及数字量内存点000001 -000160; 000201 -000400; 数字量输入点100001 ~ 100400; 100800 ~ 102000;; 模拟量输出及寄存器400001 -400100; 才莫拟量输入点300001 -300200。
与上述步骤相同,分别定义与所述人才几界面HMI通讯的SCHNEIDER的 其他PLC 12 ~ In的连4妄名称Q2 ~ Qn。步骤S52:建立人机界面HMI与SIEMENS的PLC系统20中每一台PLC 的通讯连接。
具体包括以下步骤
步骤S521:在人机界面HMI中安装针对PROFIBUS-DP网络的通讯 CP5611卡,并安装其驱动程序。
步骤S522:制作PROFIBUS-DP通讯电缆,将PLC系统20和人机界面 固I联入同一 PROFIBUS-DP网内。
步骤S523:在每一台PLC的通讯卡上设置PROFIBUS-DP网络地址,在 CP5611卡上设置人机界面HMI的PROFIBUS-DP网络地址。
对每一台PLC设置网络地址时,要确保不同PLC的网络地址不相同,避 免出现网络地址冲突。
步骤S524:配置组态软件IFIX,分别定义与其通讯的S正MENS的PLC 系统20中每一台PLC的连4^名称。
所述连接名称包括PLC系统品牌、网络协议、节点地址、通讯区域、数 据类型。
由于SIEMENS的PLC与SCHNEIDER的PLC的内部凄史据表示方式不同,因此所述连接名称的各参数取值也有所不同。
以SIEMENS的PLC21为例说明,定义其连接名称为Sl。
所述PLC201的品牌为S7( SIEMENS )。所述网络协议为PROFIBUS-DP。对于S7 (S正MENS) PLC 201,其内部凄t据表示形式为输入变量为Ix;输出变量为Ox;内存变量为Mx。
比如IIOO表示1个模拟量输入点;Q100表示1个模拟量输出点;M100表示1个内部寄存器。I100.0~ 1100.7表示8个不同的开关量输入点;Q100.0~Q100.7表示8个不同的开关量输出点;M100.0 M100.7表示8个不同的内存 开关量点。与上述步骤相同,分别定义与所述人机界面HMI通讯的SIEMENS的其 他PLC22 ~ 2n的连接名称S2 ~ Sn。步骤S53:在人机界面中,分别定义指向被读取数据的PLC的源标签和 指向读取数据的目的标签。步骤S54:在人机界面中,将所述源标签的值赋予目的标签,实现 SCHNEIDER的PLC和SIMENS的PLC之间的数据传丰lr。下面详细介绍实现SCHNEIDER的PLC系统10中各台PLC与SIEMENS 的PLC系统20中的各台PLC之间通讯,进行数据传输的具体过程。分别以SCHNEIDER的PLCll和SIEMENS的PLC21为例进行说明。所述人机界面HMI读取SCHNEIDER的PLC 11中的数据,并将所述数据 存放到S正MENS的PLC 21中去时,以下述两个示例-说明。(1 )读取PLC 11的数字量输入点100001的值,再传送到PLC 21的内 存变量MIOO.O中。步骤SA1:所述人才几界面HMI定义指向SCHNEIDER的PLC 11的源标 签Tagl。所述源标签Tagl,名称为SOUCE1;数据类型为BOOL输入;对应连接 名称为Ql;存储地址为100001。步骤SA2:所述人机界面HMI定义指向SIMENS的PLC 21的目的标签 Tag2。所述目的标签Tag2,名称为TARGET1;数据类型为BOOL输出;对应连 接名称为SI;存储地址为MIOO.O。步骤SA3:在组态软件IFIX中,调用VBA程序,将源标签SOUCE1的 值赋予目的标签TAGERT1,完成将连接名称Ql指向的PLCll的内存变量 100001中存储的数据传送到连接名称SI指向的PLC21的内存变量MIOO.O中。 (2)读取PLC21的整形数M81的值,再传送到PLC 11的整形数400011中。步骤B1:所述人机界面HMI定义指向SIMENS的PLC21的源标签Tag3。 所述源Tag3,名称为SOUCE2;数据类型为INT输入;对应连接名称为
Sl;具体地址为M81。步骤B2:所述人机界面HMI定义指向SCHNEIDER的PLC 11的目的标 签Tag2。所述目的标签Tag2,名称为TARGET2;数据类型为INT输出;对应连接 名称为Q1;具体地址为400011。步骤B3:在组态软件IFIX中,调用VBA程序,将SOUCE2的值赋给 TAGERT2 ,完成将连接名称S1指向的PLC21的内存变量M81中存储的数据 传送到连接名称为Ql指向的PLCll的内存变量400011中。当SIMENS的PLC系统10中其他PLC需要与SCHNEIDER的PLC系统 20中其他PLC之间进行通讯,实现数据传输时,只要在所述人机界面HMI 中定义相应的源标签和目的标签,设置对应的数据类型、连接名称和具体地址 即可。以上对本发明所提供的一种实现不同品牌PLC之间数据传输的方法,进 行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐 述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时, 对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围 上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1、一种实现不同品牌PLC之间数据传输的方法,其特征在于,包括分别建立人机界面与各品牌PLC系统中每一台PLC之间的通讯连接;在人机界面中,分别定义指向被读取数据的PLC的源标签和指向读取数据的PLC的目的标签;在人机界面中,将所述源标签的值赋予目的标签,实现读取数据的PLC与被读取数据的PLC之间的数据传输。
2、 根据权利要求1所述的方法,其特征在于,采用下列步骤建立人机界 面与各品牌PLC系统中每一台PLC之间的通讯连接在人机界面中安装针对各品牌PLC系统的通讯卡及驱动程序; 建立人机界面与各品牌PLC系统中的每一台PLC的电缆连接; 在人机界面各品牌PLC系统对应的通讯卡中,分别设置各品牌PLC系统 中每一 台PLC的网络地址;分别定义各品牌PLC系统中每一台PLC的连接名称。
3、 根据权利要求2所述的方法,其特征在于,所述每一台PLC对应的连 接名称包括所述PLC的品牌、所述PLC支持的网络协议、所述PLC的网络 地址、通讯区域、以及^L据类型;所述通讯区域为,所述PLC能够与其他PLC进行it据交换的存储空间; 所述数据类型为,所述PLC存储数据的类型。
4、 根据权利要求3所述的方法,其特征在于,所述指向被读取数据的PLC 的源标签包括被读取数据的数据类型、所述被读取数据的PLC与人机界面 之间的连接名称、以及存储地址;所述存储地址为,被读取数据在所述被读取数据PLC内的存储地址。
5、 根据权利要求4所述的方法,其特征在于,所述存储地址为所述被读 取数据PLC的连接名称中定义的通讯区域的子集。
6、 根据权利要求5所述的方法,其特征在于,所述指向读取数据的PLC 的目的标签包括读取数据的数据类型、所述读取数据的PLC与人机界面之间的连4妄名称、以及存储地址;所述存储地址为,读取到的数据存储到所述读取数据PLC内的存储地址。
7、 根据权利要求6所述的方法,其特征在于,所述存储地址为所述读取 数据PLC的连接名称中定义的通讯区域的子集。
8、 根据权利要求7所述的方法,其特征在于,所述源标签的数据类型与 所述目的标签的数据类型相一致。
9、 根据权利要求7所述的方法,其特征在于,所述各品牌PLC系统中每 一台PLC对应的网络地址各不相同。
10、 根据权利要求7所述的方法,其特征在于,所述各品牌PLC系统中 每一台PLC对应的连接名称各不相同。
全文摘要
本发明提供了一种实现不同品牌PLC之间数据传输的方法,包括分别建立人机界面与各品牌PLC系统中每一台PLC之间的通讯连接;在人机界面中,分别定义指向被读取数据的PLC的源标签和指向读取数据的PLC的目的标签;在人机界面中,将所述源标签的值赋予目的标签,实现读取数据的PLC与被读取数据的PLC之间的数据传输。采用本发明所述实现不同品牌PLC之间数据传输的方法,可以简便的实现不同品牌PLC之间的数据传输。
文档编号G05B19/05GK101393445SQ20081017329
公开日2009年3月25日 申请日期2008年10月31日 优先权日2008年10月31日
发明者刘雁飞, 高鹏双 申请人:中冶长天国际工程有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1