设为首页 | 成都一卡通
人脸身份识别应用方案
OPC在小型仓库监控系统上的应用
发布时间:2013-06-19 来源:未知
1前言 随着计算机技术的飞速发展,PC机已越来越多地应用于自动化立体仓库控制系统中,作为上位机实时地进行集中监控,完成可视化人机操作界面、图形显示、数据库、通讯及联网等功能。而下位机PLC(可编程逻辑控制器)则循环地读入设备信号,并进行逻辑判断操作,输出控制信号,控制设备执行。因此,在自动化控制系统中,实现PLC和PC机之间的通信是非常重要的。本文设计了一个三巷道自动化立体仓库,现对该仓库的系统组成、监控管理系统软件以及上位机与PLC的通信问题进行较详细的介绍。 2系统构成及OPC技术 2.1系统组成 系统的下位机由3个S7—200(CPU226)和1个TP070触控屏以及多台直流调速器等组成,上位机是l台安装有WindowsXP、S7—200PCAccess、WinCC6.OSP2和VB等软件的普通PC机。上位机作为主站,下位的3个PLC都是从站并且站地址不同,上位机利用RS232PPI智能电缆和下位机3个s7-200通讯。 2.2OPC技术OPC是一个基于COM技术的接口标准,提高了工业自动化软件与硬件,以及软件之间的互操作业。OPC采用客户/眼务器结构,使得多个OPC客户程序可与一个厂商提供的OPC服务器连接,并通过OPC服务器,从数据源存取数据。 正是由于OPC标准化的接口能够显著节省昂贵的、用于人力和时间的投资,再加上使用经济型的PPI电缆连接、下位机,使得整个系统在保证功能的前提下变得十分经济实用. 3S7-200PCAccess与S7-200的通讯 3.1S7-200PCAccess简介s7-200PCAccess是s7-200PLC的一种OPC服务器,是专供小型PLC使用的低成本OPC工具,可与任何标准OPC客户机配合使用,也可和Micro/WIN同时联机使用。s7-200PCAccess使用PPI、以太网或调制解调器与PLC通讯,可同时从8个PLC读取数据,并且服务器读取的项目数是没有限制的。 3.2使用S7~200PCAccess构建OPC服务器(1)连接PLC:在树形图中添加一个新PLC连接。然后配置通讯协议:选择PG/PC接口将接口配置为PC/PPI电缆(PPI),并为s7-200PCAccess选择网络地址和波特率,在新建PLC的“PLC属性PPI通讯”属性对话框中,输入PLC名称和站地址(须与实际的设置一致)。 (2)建立OPC项目:右击PLC图标,选择“新”一“项目”,然后在项目属性中填写“地址”和“数据类型”,地址和类型与s7-200PLC用于监控的变量相对应,例如:“MBO”和“byte”。 把所有想要监控的变量添加后便在s7-200PC。Access下建立了s7-200的OPCServer。 (3)通信测试:S7-200PCAccess软件本身带有测试客户机,可以方便地了解客户机与眼务器的通讯情况.将建立完的项目拖放至测试客户饥窗口内,单击S7-200PCAccess工具条中的“状态”按钮,在窗口中就可显示出项目连接状态和项目值。 4使用WinCC开发OPC客户端监控系统 4.1WinCC客户端与S7-200PCAccess服务器的通讯连接由于s7-200PCAccess是s7-200的OPC服务器,因此可将WinCC配置为OPC客户端通过OPC接口访问s7-200PCAccess服务器。只要将OPC服务器中的项目添加到WinCC的变量管理器中便可在组态中使用了,具体方法如下:(1)在Wincc变量管理器中添加一个新的驱动程序,新的驱动程序选择OPC.CHN。在OPCGroups通道标签上右键,选择“系统参数”进入OPC条目管理对话框。 (2)在对话框中点击“Local”条目前的加号,此时会显示出本地计算机上的所有OPC服务器列表,选择“s7200.OPCServer”后点击“浏览服务器”按钮,便可看到在s7-200PCAccess中添加的所有OPC项,选择所需的项添加到WinCC的变量管理器中。 (3)建立以上OPC通道下的逻辑连接后命名为OPCServer。 4.2WinCC客户端监视系统WINCC提供了非常丰富而友好的人机交互界面,通过对OPC通道中变量的读写完成了对立体库设备状态的监控。监控站以交互形式进行各类画面的调用与切换,完成过程控制功能,而且在动态画面中显示设备各部分的主要参数及工作状态,如堆垛机运行参数、货叉位置、出入库控制,以及故障诊断等。 5使用VB开发OPC客户端库存管理软件系统由于在WinCC中不便于开发库存管理软件,而VB恰好为开发库存管理软件提供了一个良好的平台,在VB中容易实现与数据库的连接,完成如记录出入库物品的详细情况、出入库时间、历史查询、报表打印等功能,以s7-200PCAccess为OPC服务器使用VB编写OPC客户端库存管理软件也可完成对立体库的各项操作。 5.1安装OPC自动化接口服务若要用VB开发OPC应用程序,必须安装OPC自动化接口服务,在VB环境中,按“T程”的子菜单“引用…”后,选择其中的“SiemensOPCDAAutomation2.0”项,这样才能使用自动化接口。 5.2程序设计 用VB编写了OPC客户端应用程序,实现了上位管理软件通过OPC服务器可直接对s7-200控制器进行各种操作。以货物入库操作为例说明其实现过程,部分程序代码如下: (1)在公共窗口中声明相关变量 DimMyOPCserverAsOPCServer DimMygroupsAsOPCGroups DimWithEventsMyGroupAsOPCGroup‘ DimMyitemsAsOPChems DimMvItemServerHandles()AsLong (2)在客户端软件载人MDI窗体时创建与OPC服务器的连接 ’获取一个OPC服务器实例 SetMyserver=NewOPCServer ’与s7-200PCAccess的OPC服务器连接 CallMvOPCserver.Connect(“$7-200.OPCServer”) SetMygroups=Myserver.OPCGroups Mygroups.DefaultGmupIsActive:True’默认组对象为激活状态 ’加入OPCGroup对象“Group1” SetMyGmup:Mygmups.Add(“Groupl”) MyGroup.DefaultGroupupdataRate=500设置数据刷新时间 MyGroup.IsActive=True’设置该Group为激活状态 MyGroup.IsSuhscribed=True’设置该Group数据为后台刷新 (3)在客户端软件载人人库子窗体时创建OPC项目 DimiAsLong DimItemObjAsOPCItem DimhemlDs(7)AsString DimItemClientHandles(7)AsLong ’加入OPCItem对象 SetMyltems=MyGroup.OPCitemS ’设置所要监测的数据对应于s7—200中的标签 itemIDS(1)=“2,M1.5,Bool” itemIDS(2)=“2.M2.1.Bool” itemIDS(3)=“2,M2.2,BooI” itemIDS(4)=“2,M2.4,Bool” itemIDS(5)=“2,M2.6,Bool” itemIDS(6)=“2,MW0,Word” itemIDS(7)=“2,MW2.Word” Fori=1To7 ItemClientHandles(i)=i Next ’调用相应方法在数据项组中加入以定义的数据项 CallMyltems.Addhems(2,ItemlDs, ItemClientHandles.MvItemServerHandIes,Errors) (4)同步数据写入PLC Dimrow,columnasLong DimValues(7)AsVariant Values(1):1‘使s7—200中的变量M1.5置位 Values(2)=0‘使s7—200中的变量M2.1复位 Valuesf3)=1‘使s7—200中的变量M2.2置位 Values(4)=1‘使s7—200中的变量M2.4嚣位 Values(5)=I‘使S7—200中的变量M2.6置位 v(6)=row‘0j人入库位置的行值 Va1ues(7)=column‘写入入库位置的列值 CallMyGrou【yn(·wrire(7,MyltemserverHan(1les,Values,Errors)
6结语
本文解决了上位机与下位s7-200PLC的通讯问题,并且数据传输稳定,实时性好,组态方便灵活,调试简单由于OPC协议是通用协议,得到很多公司的支持,通用性好,并且可以通过局域网甚至是Internet实现多台上位机参与控管理,极大地扩展了自动监控系统的使用范围。