OPC技术在永宏PLC上的应用


摘要:OPC技术在工业自动化系统中应用的越来越广泛,论文详述了基于OPC技术介绍了何用Visual Basic编写监控软件在永宏PLC上面的应用。
关键词:OPC   FBs-PLC  Visual Basic   监控界面 永宏
Abstract::OPC technology applications in industrial control systems more and more extensive. Here, we are introduce How to use the Visual Basic Language write the Graphics Monitoring Interface basic on OPC which applications in FATEK PLC
Key Words:OPC  FBs-PLC   Visual Basic  Graphics Monitoring Interface  FATEK

1,前言:

    个人电脑在工业自动化系统中常作为上位机使用,以实现跟现场设备如PLC数据的处理,实现现场的集中控制。针对于小型的控制系统 ,若采用专业的工控机或者 组态软件,则系统的造价必会很高。随着OPC技术的发展与普及,已成为工业控制的一种通信标准。自动化厂家一般都提供OPC 接口 ,这样就轻而易举的解决了上位机与设备之间的通讯问题。再配合编程语言软件开发图控界面,达到低成本的监控系统。本文将利用永宏电机股份有限公司提供的OPC接口FaconServer.和结合Visual Basic2005编写客户端监控程序,实现上位机与永宏PLC之间的数据处理。

2,OPC介绍

    OPC是Object Linking and Embedding(OLE)for Process Control的缩写,基于微软的OLE(现在的Active X)、COM (部件对象模型)和DCOM (分布式部件对象模型)技术。OPC包括一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。它是基于Windows操作平台的对象链接和嵌入技术在过程控制方面的应用。OPC实际上是提供了一种机制,通过这种机制,系统能够以服务器/客户端标准方式从服务器获取数据并将其传递给任何客户应用程序。这样,只要生产商开发一套遵循OPC规范的服务器与 数据进行通信,其他任何客户应用程序便能通过服务器访问设备。

    OPC服务器通常支持两种类型的访问接口,它们分别为不同的编程语言环境提供访问机制。这两种接口是:自动化接口(Automation interface);自定义接口(Custom interface)。自动化接口通常是为基于脚本编程语言而定义的标准接口,可以使用Visual Basic、Delphi、PowerBuilder等编程语言开发OPC服务器的客户应用。而自定义接口是专门为C++等高级编程语言而制定的标准接口。OPC现已成为工业界系统互联的缺省方案,为工业监控编程带来了便利,用户不用为通讯协议的难题而苦恼。任何一家自动化软件解决方案的提供者,如果它不能全方位地支持OPC,则必将被历史所淘汰。

    通常在系统设计中采用OLE自动化标准接口。OLE自动化标准接口,及采用OLE自动化技术进行调用,其技术为上节所述的OLE自动化技术。OLE自动化标准接口定义了以下三层接口,依次呈包含关系:服务器(server)、组(group)和数据项(item)。OPC Server:OPC启动服务器,获得其他对象和服务的起始类,并用于返回OPC Group类对象;OPC Group:存储由若干OPC Item组成的Group信息,并用于返回OPC Item类对象。

3,永宏FaconServer介绍

    FaconServer是永宏电机股份有限公司配合自身的PLC与上位机连接的OPC服务器。通过该OPC可以很便捷的使上位机与PLC连接。


 
图1 FaconServer界面

     FaconServer提供串口、调制解调器和以太网的方式与PLC联机。

    同时可以建立多个通讯通道(Channel);另外每个通道下面也要实现挂多个不同站号的PLC(Station)。最后在PLC下面建立对应的数据组(Group),在对应的数据组里面填写要监控的寄存器(如R或D)或者继电器点(如X、Y)。

    下面我们简单的介绍一下在FaconServer下建立一个项目的过程。

    建立一个项目:通过单击“新建”来建议一个Project项目;默认名称为Project0。名称可以根据情况自行变更。一旦确定后,将不能在做变更。一个文件下面只能建立一个Project。

    建立联机装置:在建立好项目后,在下面可以添加联机装置。通过以下3个按钮来操作联机装置:
 :添加联机装置;建立一个联机Channel;
 :编辑联机装置;修改联机装置的通讯参数、名称等。
 :删除联机装置;删除不再需要保留的联机装置;

    在添加时,选择联机方式。其中有串口、Modem和以太网的联机方式以及做相关的叙述。添加成功后,联机装置默认为Channel0名称,在后面连续的添加中编号将递增。在一个Project下面,可以添加多个联机方式,只要注意通讯端口不重复占用即可。
添加控制器(PLC)
    在建立好联机通道后,接着就是添加控制,控制器通过一下3个按钮来操作:
 :添加控制器(PLC);添加PLC;
 :编辑控制器(PLC);编辑PLC名称和站号;
:删除控制器(PLC);删除不需保留的PLC;
    同样,在一个联机通道下可以建立多个控制器,但名称与站号不得重复。
建立PLC下的数据群组
    在对应的控制器下面,建立不同的数据群组,以分组的形式,方面监视与控制。操作方式由下说明:

建立监控数据
    最后就是在对应的监控群组下填写要监控的寄存器或者接点。数据通过下列3个按钮操作:

    通过上面的介绍,可以在FaconServer里面直接对PLC进行数据的操作。但从画面上来说不算太过于美观和便利,下面我们将介绍使用Visual Basic 2005编写监控画面,透过FaconServer来与PLC连接,达到简易的图形监控界面。

4,VB程序编写

    永宏PLC提供的FaconServer中,Visual Basic中使用的函数如下表所示:


表格1:FaconServer使用的函数


   我们以实例的写了来介绍这些函数的使用。

   首先,先直在程序当中打开FaconServer,然后建立一个项目:Project0,一个联机装置Channel0,以及一个控制器Station0。并在项目下面建立一个数据组Group0。建立好后将该项目以“FaconDEMO”名称保存到C盘根目录下:C:\FaconDEMO.fcs。

1.         开启FaconServer服务器:OpenProject()。


函数格式:变量.Openproject("文件路径")


现在我们就用OpenProject函数来打开“FaconDEMO.fcs”项目。


Dim Fsvr As Object ‘定义服务器对象变量Fsvr


在From1_Load的声明窗体中进行变量的声明。


范例:VB完整语句如下

Private Sub Form1_Load()
        Fsvr = CreateObject("FaconSvr.FaconServer") ‘建立Fsvr服务器对象变量
        Fsvr.Openproject("D:\DEMO.fcs")‘开启项目:FaconDEMO.fcs。
End Sub
将这两句语句放置到From1_load窗体中,即在启动图形界面时,可以自动的启动FaconServer,同时打开FaconDEMO文件。
2.         保存项目:Saveproject。

函数格式:变量.Saveproject("文件路径")


范例:VB完整语句如下

Private Sub SaveBTN_Click()
       Fsvr.Saveproject("D:\DEMO.fcs") ‘保存修改后的项目
End Sub

在窗体中创建一个“SaveBTN”按钮,通过单击按钮来实现修改后的窗体保存。

3.         连接PLC操作:Connect。

函数格式:变量.Connect()


VB范例:使用“ConnecBtn”按钮来实现离线操作。

Private Sub ConnecBtn_Click()
        PictureBox1.Image = FaconS.My.Resources.NET_YG ‘联系图标指示变化
        Fsvr.connect()‘FaconServer执行PLC联机
End Sub
使用“ConnectBtn”按钮,实现FaconServer与PLC的连接。另外通过改变图片物件“ PictureBox1”的图片,从VB界面中直观的了解到当前是联机或者断开状态。
4.         离线操作:Disconnect。

函数格式:变量. Disconnect ()


VB范例:使用“DisconBtn”按钮来实现离线操作。

Private Sub DisconBtn_Click()
        PictureBox1.Image = FaconS.My.Resources.ITTAI3D ‘离线图标指示变化
     &nbs

COPYRIGHT(C) 2011 厦门永宏亚得机电科技有限公司版权所有(闽ICP备05025945号) ALL RIGHTS RESERVED?

电话: 0592-5190891 传真: 0592-5190720 E-Mail: E-mail:yade8895@163.com
地址: 厦门市海沧区兴港六里17号2607室 邮编:361009 联系人:翟先生