基于OPC技术的上位机与PLC之间的通信

合集下载

通过OPC与小型PLC通讯

通过OPC与小型PLC通讯

通过OPC与小型PLC通讯如何通过OPC与小型PLC通讯一、将PLC串口设置为Modbus从站协议,并且设置好从站地址,波特率等参数二、在计算机上运行MBOPCsvr软件,通过Modbus协议与PLC 通讯。

具体设置如下:1、选择connection,选择串口号,进行串口参数设置和协议设置2、选择File—>New,新建数据标签其中,Slave是设置PLC从站地址。

不同数据类型所表示的PLC数据区不同,具体如下:COIL STATUS:%MX或%QXINPUT STATUS:%IXHOLDING REGISTER:%MW或%QWINPUT REGISTER:%IWPoint输入数据Modbus起始地址,注意相比PLC原始Modbus 地址需要加1,诸如%MW0,则Point应该输入3001,PLC原始Modbus地址对应换算关系见下表数据区类型地址范围Modbus地址映射公式Modbus数据类型%IX BOOL %IX0.0~%IX511.7 0~4095 IXm.n:m*8+n 1x I区%IW WORD %IW0~%IW510 0~255 IWm:m/2 3x%QX BOOL %QX0.0~%QX511.70~4095 QXm.n:m*8+n 0x Q区%QW WORD %QW0~%QW510 0~255 QWm:m/2 4x%MX BOOL %MX0.0~%MX7816.73000~65535MXm.n:m*8+n+3000 0x M区%MW WORD %MW0~%MW8190 3000~7095 MWm:m/2+3000 4x Scan输入连续读取的数据长度。

点击set default data type可以设置数据类型,如下图所示3、设置完成后,会出来以下界面:有数据显示,表示通讯成功。

4、假如有多种数据类型数据通讯,或者不同地址数据通讯,可以同时新建多个数据标签。

数据标签建成后,表示OPC软件与PLC之间Modbus通讯已经完成。

上位机通过OPC-UA-server与S71200-PLC相连的配置步骤

上位机通过OPC-UA-server与S71200-PLC相连的配置步骤

上位机通过OPC UA server与S71200 PLC通讯的配置步骤1、分配s71200的IP地址:(1)打开step 7 V11,新建一个项目,在项目视图界面中找到左侧树项目的在线访问(2)打开在线访问下拉菜单,找到本机的网络适配器(如:Realtek RTL8169、8110Family),双击更新可访问的设备,就会显示本机所连的s7 1200设备。

(3)选择一个设备(如:地址是192.168.1.3的PLC 46),在其下拉菜单中双击在线和诊断(4)在弹出的对话框中,选择左侧的功能下拉菜单,单击分配IP地址,如下图如果是新的1200PLC,它的IP地址和子网掩码都是0,这时查看本机所在的网络,在图示的IP地址中输入与本机所在同一网络的子网IP地址。

如本机IP为192.168.1.16,那么给PLC分配的地址可以为:192.168.1.2、192.168.1.3、。

,若使用路由器,输入路由器地址,如192.168.1.1,如没有使用路由器,则将路由器点掉,单击分配IP地址,即可。

如果1200PLC已经分配好了IP地址但与本机所在的地址并在同一网络内,如PLC的地址为:192.168.0.1,本机地址为192.168.1.16,更改1200的IP需要预先复位,具体如下。

(5)复位1200PLC。

在步骤(4)的对话框中,选择重置为工厂设置,弹出如下对话框。

选择重置IP地址,单击重置,确定。

重置IP之后,PLC的IP地址和子网掩码都修改为0,可以进行步骤(4)的工作。

如不复位就修改IP 地址,会出现无法完成此功能错误。

2、配置OPC UA服务器(1)启动OPC配置工具:C:\Program Files\SIEMENS\SIMATIC.NCM\S7BIN\S7tgtopx.exe(2)双击S7tgtopx.exe图标打开,新建一个项目,并命名,单击OK(3)右键新建的项目图标,插入一个PC站点(SIMATIC PC Station),如下图(4)单击新生成的SIMATIC PC Station(1),在右侧自动显示PC站点的硬件配置:Configuration(5)双击Configuration图标,在弹出的硬件配置对话框中,插槽1选择OPC Server(右侧选择SIMATIC PC Station—User Application—OPC Server—SW V7.0)(6)以同样的道理在插槽2,选择IE General(SIMATIC PC Station—CP Industrial Ethernet —IE General—SW V6.2)(7)在将SW V6.2 拖入插槽2后,会自动弹出IE General 参数对话框(8)在IP address 中输入本机的IP地址,如:192.168.1.12,下面的Subnet总单击New,确定即可出现Ethernet(1),单击OK完成硬件配置。

基于OPC技术的上位机与PLC之间的通信.

基于OPC技术的上位机与PLC之间的通信.

基于OPC技术的上位机与PLC之间的通信1 引言现代工业控制系统通常以PC机为上位机,通过与现场工控设备如PLC 的数据交换与处理,实现对生产过程的自动控制。

对于小型控制系统,采用专门的组态软件成本太高,用VB设计监控系统则可以降低成本,但首先要解决上位机与PLC之间通信问题。

以往使用较多的进程间通信方式是DDE(动态数据交换)方式,随着OPC技术的发展和普及,它已成为工业过程控制的通信标准。

OPC服务器有两类接口,其中自动化接口主要用于VB、Delphi等开发工具。

本文利用罗克韦尔公司提供的OPC接口,用VB编写了客户端应用程序,实现了上位机与AB可编程控制器之间的数据交换。

2 OPC技术简介OPC(OLE for Process Control—用于过程控制的对象连接与嵌入)是一套以微软对象连接与嵌入OLE、组件对象模型COM、分布式组件对象模型DCOM(Distributed COM)技术为基础,基于Windows操作平台,为工业应用程序之间提供高效的信息集成和交互功能的组件对象模型接口标准。

OPC实际上是提供了一种机制,通过这种机制,系统能够以服务器/客户端标准方式从服务器获取数据并将其传递给任何客户应用程序。

这样,只要生产商开发一套遵循OPC规范的服务器与数据进行通信,其他任何客户应用程序便能通过服务器访问设备。

OPC服务器有两类接口:定制接口和自动化接口。

定制接口为C++程序服务,自动化接口为VB这一类可使用自动化对象的程序服务。

定制接口是服务商必须提供的,而自动化接口则是可选的,不过OPC基金会提供了一个叫做“自动化包装器”的动态连接库,用于在两者间转换。

OPC数据存取规范规定的基本对象有三类:服务器(server)、组(group)和数据项(item)。

服务器对象包含服务器的所有信息,也是组对象的容器,一个服务器对应于一个OPC server,即一种设备的驱动程序。

组对象除了包含它自身信息外,还负责管理数据项。

上位机与PLC通讯及OPC数据采集实践一

上位机与PLC通讯及OPC数据采集实践一

上位机与PLC通讯及OPC数据采集实践一上位机与PLC通讯及OPC数据采集实践一背景由于项目的需要,上位机(工控机)需要与PLC通讯(AB的PLC)通过PLC控制相关的设备;另一部分需要做一个数据采集程序从一个OPC服务器(此服务器作为多个PLC数据的服务端用的是AB的RsLinx)采集一部分PLC的数据供另一个应用程序用。

由于之前没有接触过PLC,也没有听说过什么OPC,所以从网上找些资料,由于做的时候实际的环境可以调试,很多东西在写的时候都没啥底,最后在现场调试的时候有些东西才搞清楚,整个过程还是费了些周折,有些东西虽然还是没有完全弄懂,但基于这个项目的基本功能算是完成了。

所以记录下来,以便以来有可能用得着,也给初次接触这块的同学提供些参考。

上位机与PLC的通讯上位机基于C#写的,PLC是AB的,C#程序通过串口(RS232-485转换器)与PLC通讯,协议用的是标准modbus,程序发指令给PLC,PLC来控制电磁阀,继电器等工作。

由于PLC本身没有采集数据,上位机还要把采集到的数据写到PLC,数据原本是float的,但传给PLC 时转成small int(小于65536)的整数,PLC内部再作除法来还原float 数据.这部分基于串口通读,modbus协议倒时没费啥事。

串口通讯可以用串口调试助手测试;至于写数据有没有写成功可以用ModScan32来看,连上对应的串口,设置好波特率,从机地址就可以看到默认100个寄存器的值。

PLC还有一个I/O口是编程用的,连接后用rslogix可以查看实时的状态,不过不大会用,看到PLC编程的工程师是这么用的。

数据采集程序与OPC服务器的通讯与数据采集数据采集程序与OPC服务器在同一局域网,但不同网段,可以Ping通,但在程序里就是连不上OPC服务器,提示RPC服务器不可用。

在网上找资料说是要配置服务端及客户端的DCOM,于是照网上的方式把客户端的机器设置DCOM,但服务端控制不了,对方的工程师说已经配置好了,但死活还是连不上,提示还是一样。

基于OPC技术的PC与西门子PLC的实时通讯

基于OPC技术的PC与西门子PLC的实时通讯

基于OPC技术的PC与西门子PLC的实时通讯摘要:随着我国科学技术水平的不断进步,工业在这一时期得到了长足的发展。

这一行业发展现状是与OPC工业标准的确立分不开的,文章阐述了OPC技术在PC系统上的连接方式,详细的分析了其进行通讯过程的原理。

这一内容的指出明确了搭建OPC技术中的PC机与西门子PLC系统通信架构的方式。

在此过程中,Simatic NET应用软件实现了OPC客户端与OPC服务器的实时连接。

关键词:OPC技术的PC;西门子PLC控制系统;连接通讯引言伴随着工业发展不断先前推进,这就使科学技术人员面对着大量的信息数据处理和长距离实时通讯的问题。

西门子PLC由于其具有功能性强以及易操作性的特点,被广泛的应用于我国各类工业领域的建设过程中。

本文对西门子PLC技术的应用现状进行分析,旨在使相关行业建设者更加清晰PLC当前的使用情况。

一、OPC技术的PCOPC(OLE for Process Control),是一种用于过程控制的工业标准,它可以解决各种信息设备驱动程序的通信和应用软件的通信。

对于不同制造商提供的服务程序和驱动程序,具体的解决方式是将这两种程序结合在一起。

这就解决了以往要想及时存取现场设备的数据信息,必须对每一个应用软件开发商进行编写接口函数的技术难题。

随着科学技术的不断进步现场设备的型号种类繁多,与之对应的产品也跟着不断更新升级,这就为设备用户和软件开发人员带来了庞大的工作量。

OPC工业标准在这一时期应运而生。

OPC工业标准是以微软公司的OLE技术为研发基础的,而在OPC技术中所使用的技术是OLE 2技术。

OLE技术标准成功的连接起多台计算机,使之可以在相互之间交换图案、文档等信息数据。

可以说OPC工业标准的研发使用,为连接现场不同设备以及建立企业信息系统的复杂程序提供了一个工作效率高、可靠性强以及交互操作性好的进行方案。

此外,这一技术还定义了在Microsoft操作系统中PC之间过程信息数据的交换形式。

基于OPC技术的PC机与西门子PLC的通信

基于OPC技术的PC机与西门子PLC的通信

4 。 4 组态 下载
( 1 ) 完成 P C站组态后 , 可在 n e t p r o窗 口点击功 能 按 钮栏 中下载按 钮将组 态下载到 P C站 中。
( 2 ) 下载完成后 , 可 以打 开 s t a t i o n c o n f i g u r a t i 0 n e d i t o r 窗 口检 查 组 件 状 态 。
n e t wo r k按 钮 , 进入 N e t P r o 配 置。
S i ma t i c NE T 是 西门子在 工业控制层面上提供 的一
个 开 放 的 多 元 的通 讯 系 统 , 是一款基于 O P C 技 术
的 自动 化 控 制 方 案 实术 与 应用 》 2 0 1 5年第 3 4卷 第 8期
‘ : 一 i 、 囊 篓 0
簿搂 季
瞧 套
( 3 ) 完 成 PC站 组 件 设 置 后 , 按 下 编 译 存 盘 按 钮
确 定且 存 储 当前 组 态 配 置 。编 译 无 误 , 点击 c o nf i g u r e
置为 S t a n d a r d也可设置为 DP, 如果 C P 5 6 1 3 作为 D P主
站 , B U S p r o f i l e 应 设 置为 D P 。
4 。 5 6 数据 通 讯 的测试 一 OP C Sc o u t
( 1 ) 打开 O P C S c o u t , 双击 O P C s i ma t i c Ne t , 在 随 之弹 出的 Ad d G r o u p 对话 框 中输入组名 , 本例命名 为
c onnec t i on

1 )。双 击此连接 , 可 出现可 能被 访 问的

上位机通过opc与ab系列plc串口通讯

上位机通过opc与ab系列plc串口通讯

上位机通过opc与ab系列plc串口通讯上位机通过opc与ab系列plc通讯(第一步)配置 ab plc 打开rslinx 点>>Communications>>Configure Drivers.选择:RS-232 DF1 devices点:Add New.点完上面,跳出如下画面,点击:Auto-Configure 如果成功,就会显示Auto-Configure successful!点OK,就会又回到这个画面。

点strat,在后面显示runing。

点到这里,就会在“树”里看见你的设备了。

在树里,找到你的设备,点右键,选择Configure New DDE/OPC Topic.在树里,找到你的设备,点右键,选择Configure New DDE/OPC Topic.到这里,就配置完毕了。

然后打开rslinx自带的测试工具OPC Test Client 测试一下。

点开opc test client 点新建。

选择RSLinx OPC Server 点OK。

点击后,你的蓝色的标题栏内就显示OPC Test Client – [~RSLinx OPC Server].点:Group>>Add Group.取一个组名,(我这里是test),然后点OK.组创建以后,Item就激活了,点击:Item>>Add Item.在access path 填入你上面写的通道名(我这是ML1500) 在Item Name 处写入你要检视的单元名。

OPC Test Client 也可以测试其他的opc连接。

比如下图,我在开物组态中设置一个变量,通过opc就可在OPC Test Client 中看见。

好,结束,到此,你就可以配置你的上位机了。

上位机通过opc与ab系列plc串口通讯

上位机通过opc与ab系列plc串口通讯

上位机通过opc与ab系列plc串口通讯上位机通过opc与ab系列plc通讯(第一步)配置 ab plc 打开rslinx 点>>Communications>>Configure Drivers.选择:RS-232 DF1 devices点:Add New.点完上面,跳出如下画面,点击:Auto-Configure 如果成功,就会显示Auto-Configure successful!点OK,就会又回到这个画面。

点strat,在后面显示runing。

点到这里,就会在“树”里看见你的设备了。

在树里,找到你的设备,点右键,选择Configure New DDE/OPC Topic.在树里,找到你的设备,点右键,选择Configure New DDE/OPC Topic.到这里,就配置完毕了。

然后打开rslinx自带的测试工具OPC Test Client 测试一下。

点开opc test client 点新建。

选择RSLinx OPC Server 点OK。

点击后,你的蓝色的标题栏内就显示OPC Test Client – [~RSLinx OPC Server].点:Group>>Add Group.取一个组名,(我这里是test),然后点OK.组创建以后,Item就激活了,点击:Item>>Add Item.在access path 填入你上面写的通道名(我这是ML1500) 在Item Name 处写入你要检视的单元名。

OPC Test Client 也可以测试其他的opc连接。

比如下图,我在开物组态中设置一个变量,通过opc就可在OPC Test Client 中看见。

好,结束,到此,你就可以配置你的上位机了。

基于OPC的WINCC与和利时PLC的通讯应用

基于OPC的WINCC与和利时PLC的通讯应用

基于OPC的WINCC与和利时PLC的通讯应用西门子WINCC是一款上位机组态软件,在工控自动化行业领域大量应用,运行稳定可靠,支持多种通讯接口,如Profibus、TCP/IP、Modbus,且每种通讯中预置了多个品牌系列PLC的驱动程序,通讯时直接使用PLC的内部存储地址,快捷方便,但是市场上的PLC产品种类繁多,不能够将所有的产品驱动都内置,为解决其他品牌PLC等产品通讯问题,WINCC内置了OPC通讯方式,通过第三方的OPC Server作为中间桥梁,可实现WINCC与PLC的通讯。

标签:WINCC;PLC;OPC;和利时1 引言在工业自动化行业中,各种现场总线广泛应用于电气设备、仪器、仪表、数字设备中,例如Profibus、TCP/IP、Modbus,支持同一种通讯协议的硬件就可以完成通讯连接,实现数据的交换,系统互联,大大提高了管理效率。

针对支持不同通讯协议的设备,市场上出现了各种进行协议转换的网关设备,但是这种方式成本高且不具有普遍性。

直到OPC的出现才大大提高了工业控制系统的开放性,实现了大范围的数据互通[1]。

OPC全称是Object Linking and Embedding(OLE)for Process Control,OPC 定义了一个开放的接口,基于微软的OLC技术,在这个接口上,基于PC的软件组件能交换数据。

OPC允许在不同供应商开发的硬件装置和应用软件之间通过公用接口进行数据交换,Windows技术和OPC 接口使之有可能将PLC 硬件和软件组合在一起,而无需开发大量专用通信接口程序,减少了人力物力资源的投入[2]。

在我公司的一个项目中应用到和利时LK系列冗余PLC和西门子WINCC 7.3上位机组态软件,在WINCC变量管理中没有与和利时PLC的通讯驱动,通过和利时的OPC Server可以实现PLC到WINCC的数据交互。

2 OPC系统设计2.1 OPC服务器建立[3]在和利时LK的编程软件安装包PowerPro V4.3.1B中包含了OPC 通讯服务的安装组件,在打开OPC Server 之前,先进行OPC注册,在注册表写入完信息后,就表示完成了注册,此时本机OPC Server已经建立完成。

基于网络OPC技术的西门子PLC与计算机通信

基于网络OPC技术的西门子PLC与计算机通信

22LabVIEW的程序设计,通过数值控本文利用基于网络OPC功能技术的3通信程序设计本设计采用的PLC为西门子S7-200 件的数据绑定实现的。

选择数值型控件,西门子PLC与计算机通信的方法,通过SMART CPU SR60款,标准型CPU模块,然后点击属性-数据绑定(数据绑定选择LabVIEW程序设计,实现PLC与PC机之间继电器输出,220V AC供电,36输入Data socket,访问类型只读或只写,流量的通信控制,提供了一个有价值的工程/24输出,1个以太网口,1个RS485串口。

选择DSTP服务器……),最后在弹出的应用的参考。

本文软件开发环境采用LabVIEW即URL中,选择已经在西门子OPC中编辑好图形化编程语言,进行程序设计,并附带的条目,如图3所示。

1引言西门子PLC自带的开发软件STEP 7-自1977年,我国在工业应用领域逐步Micro/WIN SMART和PC Access Smart。

推广PLC以来,由最初的只是替代机械开首先通过西门子自带开发软件STEP关装置,逐步代替了继电器控制板,直到7-Micro/WIN SMART对PLC的端口进行现在PLC具有更多的功能,其用途从单一梯形图编程,如图1所示。

的过程控制延伸到整个系统的控制和监控。

在制造工业中存在大量的开关量、脉冲量、计时、计数器、模拟量的越限报警图3 LabVIEW程序设计前面板等状态量为主以及少量离散量的数据采集通过程序面板-函数-数据通信-打开监视。

由于这些控制和监视的要求,使Datasocket/读取或写入Datasocket/关闭PLC发展成了取代继电器线路和进行顺序Datasocket访问OPC中编辑好的条目,如控制为主的产品。

随着网络技术的更新发图4、图5所示。

展,PLC厂家在原来CPU模板上提逐渐增图1 PLC梯形图加了各种通讯接口,现场总线技术及以太通过编辑地址符号的值达到控制网技术也同步发展,使PLC的应用范围越PLC的输出及输入的控制及反馈逻辑,并来越广泛。

上位机通过OPCUAserver与S71200PLC相连地配置步骤

上位机通过OPCUAserver与S71200PLC相连地配置步骤

上位机通过OPC UA server与S71200 PLC通讯的配置步骤1、分配s71200的IP地址:(1)打开step 7 V11,新建一个项目,在项目视图界面中找到左侧树项目的在线访问(2)打开在线访问下拉菜单,找到本机的网络适配器(如:Realtek RTL8169、8110Family),双击更新可访问的设备,就会显示本机所连的s7 1200设备。

(3)选择一个设备(如:地址是192.168.1.3的PLC 46),在其下拉菜单中双击在线和诊断(4)在弹出的对话框中,选择左侧的功能下拉菜单,单击分配IP地址,如下图如果是新的1200PLC,它的IP地址和子网掩码都是0,这时查看本机所在的网络,在图示的IP地址中输入与本机所在同一网络的子网IP地址。

如本机IP为192.168.1.16,那么给PLC分配的地址可以为:192.168.1.2、192.168.1.3、。

,若使用路由器,输入路由器地址,如192.168.1.1,如没有使用路由器,则将路由器点掉,单击分配IP地址,即可。

如果1200PLC已经分配好了IP地址但与本机所在的地址并在同一网络内,如PLC的地址为:192.168.0.1,本机地址为192.168.1.16,更改1200的IP需要预先复位,具体如下。

(5)复位1200PLC。

在步骤(4)的对话框中,选择重置为工厂设置,弹出如下对话框。

选择重置IP地址,单击重置,确定。

重置IP之后,PLC的IP地址和子网掩码都修改为0,可以进行步骤(4)的工作。

如不复位就修改IP 地址,会出现无法完成此功能错误。

2、配置OPC UA服务器(1)启动OPC配置工具:C:\Program Files\SIEMENS\SIMATIC.NCM\S7BIN\S7tgtopx.exe (2)双击S7tgtopx.exe图标打开,新建一个项目,并命名,单击OK(3)右键新建的项目图标,插入一个PC站点(SIMATIC PC Station),如下图(4)单击新生成的SIMATIC PC Station(1),在右侧自动显示PC站点的硬件配置:Configuration(5)双击Configuration图标,在弹出的硬件配置对话框中,插槽1选择OPC Server(右侧选择SIMATIC PC Station—User Application—OPC Server—SW V7.0)(6)以同样的道理在插槽2,选择IE General(SIMATIC PC Station—CP Industrial Ethernet —IE General—SW V6.2)(7)在将SW V6.2 拖入插槽2后,会自动弹出IE General 参数对话框(8)在IP address 中输入本机的IP地址,如:192.168.1.12,下面的Subnet总单击New,确定即可出现Ethernet(1),单击OK完成硬件配置。

毕业设计(论文)-基于OPC技术的LabVIEW与PLCs通信

毕业设计(论文)-基于OPC技术的LabVIEW与PLCs通信

基于OPC技术的LabVIEW与PLCs通信摘要研究虚拟仪器软件LabVIEW与可编程控制器S7-200 PLC的数据接口技术。

应用美国国家仪器公司的OPC服务器和LabVIEW的DSC模块技术建立工作站与PLC软件的数据通信方式,为LabVIEW环境下PLC软件控制系统的动态监控提供一种通用方法。

OPC接口技术的出现使工业自动化系统中独立单元之间的互联趋于标准化,顺应了自动化系统向开放、互操作、网络化、标准化方向发展的趋势,是自动化控制系统中很有发展前景的一种数据交换标准。

美国国家仪器公司的LabVIEW是一种应用于领先工业软件的工具测试设计、测量和工业控制系统。

可编程逻辑控制器(PLC),或可编程序控制器是一个数字化的计算机用于自动化的工业生产过程,如控制机械的工厂装配生产线。

对于过程控制的对象连接与嵌入(OPC)是一种标准发展的原始命名通过工业自动化的工业任务。

NI OPC Servers 是一个32位的Windows应用窗口,它能提供一种从工业设备和系统带入信息和数据进入到客户端的PC上。

该论文探讨了如何利用LabVIEW数据记录和监控模块(DSC)和OPC技术开发监控软件。

LabVIEW8.6 DSC既可作为OPC Client从现场设备获取数据,又可作为OPC Server 为其他的应用软件提供一种便捷的数据访问方式。

LabVlEW DSC和OPC技术的结合为系统集成提供了一种高效的解决方案。

关键词:LabVIEW, OPC,PLC,数据通信Based on OPC between LabVIEW and PLCs CommunicationAbstractA new technique of data exchange between LabVIEW and PLCs is presented in this paper.By using the OPC(OLE for Process Contro1)server of NI and the DSC technique of LabVIEW,a communication mode between LabVIEW and PLCs is built up.This paper provides a general means to monitor PLC control system on LabVIEW environment.National Instruments LabVIEW is an industry-leading software tool for designing test, measurement, and control systems.A programmable logic controller (PLC), or programmable controller is a digital computer used for automation of industrial processes, such as control of machinery on factory assembly lines.OLE for Process Control (OPC) is the original name for a standard developed in 1996 by an industrial automation industry task force. NI OPC Servers are a 32-bit windows application that provides a means of bringing data and information from a wide range of industrial devices and systems into client applications on your windows PC.In this paper,a method based on LabVIEW DSC and OPC technology is introduced how to develop monitor and Control software.The LabVIEW8.6 Datalogging and Supervisory Control(DSC) Module can act as an OPC Client acquiring data from field devices as well as an OPC Server providing other applications a convenient way to access data.The combination of DSC module and OPC technology is an efficient solution for system integration.KEY WORDS:LabVIEW,OPC,PLC,Data communication目录摘要 (Ⅰ)ABSTRACT (Ⅱ)第一章绪论 (1)1.l 课题的来源、名称及引言 (1)1.1.1 本研究课题的来源 (1)1.1.2本研究课题名称 (3)1.2 Lab V IEW概述 (3)1.3 PLC概述 (3)1.4 OPC概述 (5)1.5论文的内容简介 (6)第二章系统的总体方案设计 (7)2.1系统总体设计方案概述 (7)2.2方案论证 (8)2.2.1可编程控制器PLC可行性论证 (8)2.2.2 上位机LabVIEW开发平台的论证 (10)2.2.3 上位机LabVIEW开发平台与PLC连接的论证 (12)第三章OPC技术规范介绍 (16)3.1 OPC服务器的组成 (16)3.2 OPC服务器对象(OPC Server Object)介绍 (18)3.3 OPC组对象(OPC Group Object)介绍 (19)3.4 OPC项对象(OPC Item Object)介绍 (20)3.5采用OPC技术的适用范围 (20)3.6 本章小结 (21)第四章LabVIEW DSC模块 (22)4.1 LabVIEW发展历程及功能介绍 (22)4.2 LabVIEW DSC介绍 (24)4.3 LabVIEW DSC模块功能介绍 (25)4.4 LabVIEW DSC模块与OPC Server连接 (25)4.4.1 LabVIEW访问OPC Server的途径 (25)4.4.2 通过LabVIEW 8.6 DSC模块访问NI OPC Server (25)4.4.3 PLC控制LabVIEW程序设计 (27)4.4.4利用LabVIEW开发自己的OPC Server (29)4.4.5 LabVIEW与OPC标签建立联系 (29)4.5本章小结 (32)第五章LabVIEW通过OPC与PLCs之间的连接与通信 (33)5.1测试系统的应用环境 (33)5.2 NI OPC技术测试系统 (33)5.3基于LabVIEW和OPC的测试系统的前期准备 (41)5.4 LabVIEW通过DSC模块与NI OPC服务器通信 (42)5.5 LabVIEW与PLCs进行读写数据 (43)5.6本章小结 (44)第六章总结和展望 (45)6.1论文总结 (45)6.2论文的展望 (45)致谢 (46)参考文献 (47)第一章绪论引言“软件即仪器“是一次彻底的计算机技术革命。

使用OPC与PLC通讯一

使用OPC与PLC通讯一

使⽤OPC与PLC通讯⼀总结⾃⼰在opc与⾃控开发的经验。

⾸先介绍OPC DA模式下的OPC各种操作。

在使⽤opc时需要引⽤到 OPCDAAuto.dll 这个类库。

在项⽬引⽤后需要注册这个类库,否则程序跑起来会报错,“未找到⼯⼚类。

”将该dll⽂件放在任意⽬录下,建议在引⽤程序的的同级⽬录下。

在 cmd 控制台输⼊regsvr32 Q:\PLCDataIntegration\packages\01OPCDaAuto\OPCDAAuto.dll注册完成后电脑会提⽰注册成功,这时,就可以使⽤⼯具类中的⽅法啦。

1.定义相关变量private OPCServer opcServer;private OPCGroups opcGroups;private OPCGroup opcGroup;private List<int> itemHandleClient = new List<int>();private List<int> itemHandleServer = new List<int>();private List<string> itemNames = new List<string>();private List<model> modelValues = new List<model>();private OPCItems opcItems;private OPCItem opcItem;private Dictionary<string, string> itemValues = new Dictionary<string, string>();2.使⽤opc从plc中读取数据。

这个是使⽤OPC DAAuto中的Connect⽅法。

Connect之前要先创建OPCServer 对象opcServer = new OPCServer();OPCServer.StartTime:服务器的启动时间OPCServer.CurrentTime:服务器的当前时间,各个客户端可以通过这个属性值完成⼀些同步的操作//strHostIP 主机IP,DA模式下通常为127.0.0.1;//strHostName opc服务名,通常为字符串,例如kepsserver 的opc名称为 Kepware.KepServerEX.V6private bool ConnectServer(string strHostIP, string strHostName){try{opcServer = new OPCServer();opcServer.Connect(strHostName, strHostIP);}catch (Exception ex){SaveCommand("连接到OPC服务器失败!" + ex.Message);return false;}txtLog.Text += "连接到OPC服务器成功!" + "\r\n";return true;}3.连接成功后就可以⽤opcServer这个对象了。

通过OPC与小型PLC通讯

通过OPC与小型PLC通讯

如何通过OPC与小型PLC通讯一、将PLC串口设置为Modbus从站协议,并且设置好从站地址,波特率等参数二、在计算机上运行MBOPCsvr软件,通过Modbus协议与PLC通讯。

具体设置如下:1、选择connection,选择串口号,进行串口参数设置和协议设置2、选择File—>New,新建数据标签其中,Slave是设置PLC从站地址。

不同数据类型所表示的PLC数据区不同,具体如下:COIL STATUS:%MX或%QXINPUT STATUS:%IXHOLDING REGISTER:%MW或%QWINPUT REGISTER:%IWPoint输入数据Modbus起始地址,注意相比PLC原始Modbus地址需要加1,诸如%MW0,则Point应该输入3001,PLC原始Modbus地址对应换算关系见下表数据区类型地址范围Modbus地址映射公式Modbus数据类型%IX BOOL %IX0.0~%IX511.7 0~4095 IXm.n:m*8+n 1x I区%IW WORD %IW0~%IW510 0~255 IWm:m/2 3x%QX BOOL %QX0.0~%QX511.70~4095 QXm.n:m*8+n 0x Q区%QW WORD %QW0~%QW510 0~255 QWm:m/2 4x%MX BOOL %MX0.0~%MX7816.73000~65535MXm.n:m*8+n+3000 0x M区%MW WORD %MW0~%MW8190 3000~7095 MWm:m/2+3000 4x Scan输入连续读取的数据长度。

点击set default data type可以设置数据类型,如下图所示3、设置完成后,会出来以下界面:有数据显示,表示通讯成功。

4、假如有多种数据类型数据通讯,或者不同地址数据通讯,可以同时新建多个数据标签。

数据标签建成后,表示OPC软件与PLC之间Modbus通讯已经完成。

利用OPC实现西门子S7-200PLC与上位机iFix以太网通信探索

利用OPC实现西门子S7-200PLC与上位机iFix以太网通信探索

利用OPC实现西门子S7-200PLC与上位机iFix以太网通信探索林圳铠【摘要】介绍了利用OPC(OLE for Process Control,用于过程控制的OLE)实现西门子S7-200 PLC与上位机组态软件iFix以太网通讯,解决了在使用iFix软件组态时,因下位机自身通讯口采用非标准通讯协议而造成上下位机无法网络链接的限制.【期刊名称】《智能计算机与应用》【年(卷),期】2012(002)001【总页数】2页(P76-77)【关键词】OPC;iFix;PC ACCESS OPC【作者】林圳铠【作者单位】广东省潮州市桥东污水处理厂,广东潮州521000【正文语种】中文【中图分类】TP3930 引言在工业控制领域,设备的数据经常要与远程上位机进行实时动态链接,从而使运行的数据实时地在上位机上显示并使上位机控制命令快速地传送到现场设备。

在以Modbus为现场总线协议的网络中,利用西门子S7-200PLC对现场进行全程监控,由于上位机iFix是通过以太网进行组态,而西门子S7-200PLC的以太网网络协议尚未对外开放,所以iFix软件目前还没有I/O驱动程序与之直接通信连接。

本文详细介绍一种利用OPC服务器的方法,来解决S7-200PLC与上位机连接的问题,大幅提高系统的开放度及灵活性。

此技术通过数年的机器运行试验,证明通讯性能可靠且稳定。

1 iFix常见的通讯方式与OPC服务器介绍在一般集散控制系统中,iFix与下位机通讯的主要方法有如下3种:(1)采用标准的通讯协议,例如Modbus、Modbus TCP、Profibus-DP等,因为协议是公开及标准的,只要使用对应的I/O Driver就能建立组态,如MB1、MBE等。

(2)对于未采用标准协议的下位机,iFix在每一个工程项目中,驱动程序的开发需在设备制造商的配合下进行,难度大且兼容性很差,所以一般只在连接点数较多且实时性要求强的工程中才使用。

基于OPCDA的C#客户端与S7-1500PLC通讯

基于OPCDA的C#客户端与S7-1500PLC通讯

基于OPC DA的C#客户端与S7-1500 PLC通讯摘要:OPC为各种过程控制设备的通信提供了公用接口,详细介绍了使用KepWare公司的Kepserver作为 OPC服务器,以C# 编写客户端作为上位机监控,并利用 OPC技术实现与西门子 S7-1500PLC之间的实时通讯。

采用西门子最新的编程组态软件TIA Portal V16配置 PLC硬件机架和 PC站,采用效率更高的OPC异步读写方式。

实际应用表明,该方法编写的客户端运行稳定、可靠性高、效果良好。

关键词:OPC;Kepserver;C#; S7-1500 PLC; TIAPortal V161 引言近年来,随着西门子 S7-1500 PLC的大力推广,在汽车工业现场技术方案的设计上,尤其是工业4.0的数字化生产线工业项目上,优先选择 S7-1500PLC。

如果项目的监控需要通过HMI设备完成,则监控画面可与PLC程序同时在TIA Portal集成环境里进行开发。

此外,也可以选择用 C#编写客户端来监视和读写,本文介绍基于OPC通信技术实现以C#编写客户端与S7-1500PLC通信, 通过编写的客户端监测实时数据和过程动态、多平台支持等特点的嵌入式操作系统。

2 技术简介2.1 S7-1500 PLCSIMATIC S7-1500的通讯接口符合工业通讯的最高标准,且具有全面的集成工艺功能,可以作为一个组件集成在完整的综合自动化解决方案中。

S7-1500配备了自身以太网口通讯,可以通过开放的以太网协议支持与第三方设备的通讯,可以和大量的第三方进行自定义字符通讯。

2.2 OPC技术OPC全称是OLE for ProcessControl,是一个工业标准,包括一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。

采用这项标准后,开发商可开发统一的OPC接口程序,减轻了用户和软件开发商不必要的工作负担。

2.3 C# 语言C#是由C和C++衍生出来的面向对象的编程语言,C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、语言特性和面向对象编程的支持,成为.NET开发的首选语言。

OPC的DCS与PLC系统的通讯设计方案

OPC的DCS与PLC系统的通讯设计方案

OPC的DCS与PLC系统的通讯设计方案上海槽烃热电有限责任公司蒸汽-燃气联合循环机组辅机控制系统包括化学水处理和热网系统等(简称BOP)。

燃机控制系统采用美国GE公司制造的MARK VI 系统,余热锅炉及公用部分控制系统采用美国西屋公司制造的Ovation DCS,化学水处理和热网部分控制系统采用国电南瑞科技股份有限公司制造的GKS lO00监控系统。

GKSlO00监控系统采用上位机、PLC相结合的控制方式,选用施耐德电气公司的MODICON QUANTUM系列PLC和INTELLUTION公司的IFIX上位机软件,在DCS集控室实现对BOP的监控和BOP无人值班。

一、系统通讯1.1直连方案在原BOP中增加1台上位机操作员站,配置及功能与原上位机操作员站相同,并将该站放置在DCS集控室。

这样,运行人员就可以在DCS集控室对BOP进行监控,其系统结构见图1。

该方案系统结构简单,技术上易于实施,仅需要增加1台操作员站。

由于DCS 集控室距离BOP较远,需采用光纤通讯,并且DCS网络与BOP网络相互独立,无法形成统一的数据库。

1.2Modbus方案采用Modbus协议实现DCS与BOP PLC系统的联网。

Modbus协议是国际标准通讯规约,Ovation DCS和MODICON QUANTUM系列PLC均支持该协议,其系统结构见图2。

该方案可使DCS通过Modbus协议直接对PLC进行读写操作,从而实现在DCS 集控室监控BOP;在DCS侧形成一个完整的数据库,且无需增加过多的额外设备。

不足之处是:MODICON QUANTUM系列Pl,C的ModbuS接口为RS2.32口,远距离通讯时需要转换为RS485,通讯介质为屏蔽双绞线;Modbus通讯速率较低,当通讯数据量大时,会造成网络堵塞;采用热备配置的BOP PLC系统,主、从控制器切换时会造成数据在切换过程中的丢失。

1.3OPC方案DCS、PLC都具有OPC接口能力,采用OPC技术实现DCS与BOP PLC系统的联网,其系统结构见图3。

基于OPC服务的上位机与PLC系统在自动化项目中的开发与应用

基于OPC服务的上位机与PLC系统在自动化项目中的开发与应用

基于OPC服务的上位机与PLC系统在自动化项目中的开发与应用彭亚彬【期刊名称】《计算机光盘软件与应用》【年(卷),期】2011(000)012【摘要】This paper briefly introduces the principle of OPC,KEP Server EX and three OPC servers,and through the implementation of OPC service communication of IFIX SCADA and SIEMENS S7 series PLC automation control system,and according to the engineering practice in the way of industrial automation control system structure and function,can be used for the fields of automation design and reference works.%本文简要介绍了OPC原理、KEPServerEX等第三方OPC服务器,以及通过0Pc服务实现通讯的IFIXSCADA和SIEMENSs7系列PLC的自动化控制系统,并根据工程实践简述该方式的工业自动化控制系统的控制结构和功能,可供该领域的自动化设计及工程人员参考。

【总页数】2页(P194-195)【作者】彭亚彬【作者单位】浙江开元机电工程有限公司,浙江金华321014【正文语种】中文【中图分类】TP323【相关文献】1.基于OPC技术的上位机与西门子PLC的通信 [J], 陈欣;王浩宇;郎朗2.基于OPC技术的西门子S5 PLC与上位机通信 [J], 苗旭亮;曹鸣3.基于VC的上位机与PLC间的OPC通讯 [J], 赵芳婷;陈树亮4.基于OPC技术的上位机与OMRON PLC的以太网通信 [J], 王进5.基于OPC技术的PLC上位机管理系统 [J], 张宏坡;康龙云因版权原因,仅展示原文概要,查看原文内容请购买。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于OPC技术的上位机与PLC之间的通信
2008-10-31 11:02:00网络转载供稿1 引言
现代工业控制系统通常以pc机为上位机,通过与现场工控设备如plc的数据交换与处理,实现对生产过程的自动控制。

对于小型控制系统,采用专门的组态软件成本太高,用vb设计监控系统则可以降低成本,但首先要解决上位机与plc之间通信问题。

以往使用较多的进程间通信方式是dde(动态数据交换)方式,随着opc技术的发展和普及,它已成为工业过程控制的通信标准。

opc服务器有两类接口,其中自动化接口主要用于vb、delphi等开发工具。

本文利用罗克韦尔公司提供的opc接口,用vb编写了客户端应用程序,实现了上位机与ab可编程控制器之间的数据交换。

2 opc技术简介
opc(ole for process control—用于过程控制的对象连接与嵌入)是一套以微软对象连接与嵌入ole、组件对象模型com、分布式组件对象模型dcom(distributed com)技术为基础,基于wind ows操作平台,为工业应用程序之间提供高效的信息集成和交互功能的组件对象模型接口标准。

opc 实际上是提供了一种机制,通过这种机制,系统能够以服务器/客户端标准方式从服务器获取数据并将其传递给任何客户应用程序。

这样,只要生产商开发一套遵循opc规范的服务器与数据进行通信,其他任何客户应用程序便能通过服务器访问设备。

opc服务器有两类接口:定制接口和自动化接口。

定制接口为c++程序服务,自动化接口为vb这一类可使用自动化对象的程序服务。

定制接口是服务商必须提供的,而自动化接口则是可选的,不过o pc基金会提供了一个叫做“自动化包装器”的动态连接库,用于在两者间转换。

opc数据存取规范规定的基本对象有三类:服务器(server)、组(group)和数据项(item)。

服务器对象包含服务器的所有信息,也是组对象的容器,一个服务器对应于一个opc server,即一种设备的驱动程序。

组对象除了包含它自身信息外,还负责管理数据项。

每一个数据项代表到数据源的一个连接,但它没有提供外部接口,客户端程序无法对数据项直接进行操作,应用程序必须依靠数据项的容器组对象来对它进行操作。

3 通信实现
3.1 rslinx的配置
rslinx是ab可编程控制器在windows环境下建立工厂所用通信方案的工具,它不仅提供了多种网络驱动程序,而且提供了最快速的opc、dde和custom c/c++接口。

本设计中上位机与logix55 50控制器采用rs-232串口方式连接,在rslinx中要对df1网络驱动程序组态,设置串口特性:com 1、波特率19200bps、一个停止位、无奇偶校验、全双工、bcc校验码。

此外要使用rslinx的opc
接口作为服务器,还要在rslinx中对opc进行配置。

3.2 安装opc自动化接口服务
若要用vb开发opc应用程序,必须安装opc自动化接口服务,保证计算机系统目录下有opcdaa uto.dll。

opc基金会提供了一个叫做“自动化包装器”的动态连接库,从opc基金会的网站(www.op )可下载。

在vb环境中,按“工程”的子菜单“引用…”后,弹出对话框,选择其中的“r slinx opc automation 2.0”项,这样才能使用自动化接口。

3.3 程序设计
用vb编写了opc客户端应用程序,实现了上位机与logix5550控制器之间的通信。

主要程序代码如下:
(1)连接opc服务器
dim withevents myopcserver as opcserver …定义服务器对象变量myopcserver
dim withevents myopcgroup as opcgroup …定义opc组对象变量myopcgroup
set myopcserver = new opcserver
myopcserver.connect "rslinx opc server" …连接rslinx 的opc服务器
(2)添加opc组对象
set myopcgroup=myopcserver.opcgroups.add("group1")
…添加opc组对象myopcgroup.issubscribed= true
…设置该组数据为后台刷新
myopcgroup.isactive = true
…设置该组为激活状态
myopcgroup.updaterate=1000
…设置数据刷新时间为1000
(3)添加数据项
dim abitemids() as string
…项标识符
dim abclienthandles() as long
…客户端句柄
dim abserverhandles() as long
…服务器端句柄
dim aberrors() as long
dim i as long
itemcount=5
dim oopcitem as rslinxopcautomation.opcitem
for i = 1 to 5
abitemids(i) = "[" & txttopic & "]" & txtitem(i)…将topic名和标签名赋给项标识符abclienthandles(i) = i
…给客户端句柄赋值
next i
myopcgroup.opcitems.additems itemcount, abitemids, abclienthandles, abserverhandle s, aberrors
…添加数据项操作
(4)同步数据读写
opc数据存取有同步方式和异步方式两种。

异步读写数据复杂,需要与事件结合使用,与同步相比速度慢但准确性高。

同步读写数据简单,直接使用opcitem的方法即可。

dim one as opcitem
dim index as long
…index为标签顺序号
dim oneread as string
dim xie as string
set one = myopcgroup.opcitems(index)
one.read opccache
oneread = one.value
…读数据
one.write (xie)
…写数据
若只读取数据,可以使用datachange事件,当控制器中所要访问的数据一旦发生改变时将会触发该事件,并将该数据自动读到txtvalue文本框。

private sub myopcgroup_datachange(byval transactionid as long, byval numitems as l ong, clienthandles() as long, itemvalues() as variant, qualities() as long, timesta mps() as date)
…自动刷新数据
dim i as long
for i = 1 to numitems
txtvalue(clienthandles(i)) = itemvalues(i)
…获取项的值
txttime(clienthandles(i)) = timestamps(i)
…获取项的时间戳
txtquantity(clienthandles(i))=getqualitystring(qualities(i))
…获取项的品质
next i
end sub
(5)断开opc服务器
myopcserver.opcgroups.removeall
…移除所有opc group,空出资源
set myopcgroup = nothing
myopcserver.disconnect
…断开连接
4 结束语
利用本文介绍的方法,在实验室实现了上位机和plc之间的通信,图1是opc客户端设置界面。

此外我们还设计了城市供水监控系统,鉴于篇幅,监控界面不再一一列出。

相关文档
最新文档