微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > OPC在小型仓库监控系统上的应用

OPC在小型仓库监控系统上的应用

时间:05-24 来源:21IC 点击:

调用与切换,完成过程控制功能,而且在动态画面中显示设备各部分的主要参数及工作状态,如堆垛机运行参数、货叉位置、出入库控制,以及故障诊断等。

5   使用 VB开发 OPC客户端库存管理软件系统
   

由于在WinCC中不便于开发库存管理软件,而VB恰好为开发库存管理软件提供了一个良好的平台, 在VB中容易实现与数据库的连接,完成如记录出入库物品的详细情况、出入库时间、历史查询、报表打印等功能,以s7-200  PC  Access为 OPC服务器使用VB编写OPC客户端库存管理软件也可完成对立体库的各项操作。 
5.1 安装 OPC自动化接 口服务
    若要用 VB开发 OPC应用程序, 必须安装 OPC自动化接口服务,在 VB环境中, 按"T程" 的子菜单"引用…"后,选择其中的"Siemens  OPC  DAAutomation2.0" 项,这样才能使用自动化接口。

5.2 程序设计
   

用 VB编写了 OP C客户端应用程序,实现了上位管理软件通过OPC服务器可直接对s7-200控制器进行各种操作。以货物入库操作为例说明其实现过程,部分程序代码如下: 
   

(1) 在公共窗口中声明相关变量
    Di m  My OP Cs e r v e r   As   OPC Se r v e r 
    Di m  My g r o u p s   As   OP CGr o u ps 
    Di m  W i t h Ev e n t s   My Gr o u p   As   OPCGr o u p   ‘ 
    Di m  My i t e ms   As   OP Che ms 
    Di m  Mv I t e mS e r v e r Ha n dl e s ()As   Lo n g 
   

(2) 在客户端软件载人 MDI 窗体时创建与 OPC服务器的连接
    ’获取一个OP C服务器实例
    Set  My server =New  OPC Server 
    ’与s7-200 PC  Access的OP C服务器连接
    Call  Mv OPC server.Connect ("$7-200.OPC Server") 
    Set   My groups =My server.OPC Groups 
    My g r o u p s . D e f a u l t Gmu p I s Ac t i v e : T r u e ’ 默认组对象为激活状态
     ’ 加入OP C   G r o u p对象" Gr o u p   1 " 
    S e t   My Gmu p :My g mu p s . Add ( " Gr o upl ") 
    My G r o u p . D e f a u l t G r o u p up d a t a R a t e = 5 0 0  设置数据刷新时间
    My G r o u p . I s A c t i v e = T r u e ’ 设置该 G r o u p为激活状态
    My G r o u p . I s S u h s c r i b e d = T r u e ’ 设置该 G r o u p数据为后台刷新 

(3) 在客户端软件载人人库子窗体时创建 O P C项目 
    Dim  i   As   L o n g 
    Dim  I t e mO b j   A s   O P C I t e m 
    Dim  he ml Ds ( 7)As   S t r i n g 
    Dim  I t e mCl i e n t Ha n d l e s ( 7)As   L o n g 
    ’加入 O P CI t e m对象
    Set   My ltems =My Group . OPC itemS 
    ’设置所要监测的数据对应于 s 7 — 2 0 0中的标签
    itemIDS (1) = " 2, M1.5, Bo o l " 
    itemIDS (2) = " 2. M2.1 . Bo o l " 
    itemIDS (3) = " 2, M2 .2, Bo o I " 
    itemIDS (4) =" 2, M2.4, Bo o l " 
    itemIDS (5) = " 2, M2.6, Bo o l " 
    itemIDS (6) = " 2, MW0, Wo r d " 
    itemIDS (7) = " 2, MW2. Wo r d " 
    For i =1   To   7 
    ItemClientHandles (i) = i 
    Next 
    ’ 调用相应方法在数据项组中加入以 定义的数据项
    Ca l l   My l t e ms . Ad dhe ms ( 2,I t e ml Ds , 
    I t e mCl i e n t Ha n dl e s .Mv I t e mS e r v e r Ha n dI e s ,Er r o r s) 
    ( 4 ) 同步数据写入 P L C 
    Di m  r o w , c o l u mn   a s   L o n g 
    Di m  Va l u e s ( 7)As   Va r i a n t 
    Va l u e s ( 1 ) :1‘ 使 s 7 — 2 0 0中的变量 M1.5置位
    Va l u e s ( 2 ) = 0‘ 使 s 7 — 2 0 0中的变量 M2.1复位
    V a l u e s f 3 ) = 1‘ 使s 7 — 2 0 0中的变量 M2.2置位
    V a l u e s ( 4) = 1‘ 使s 7 — 2 0 0中的变量 M2.4嚣位
    V a l u e s ( 5 ) = I‘ 使 S 7 — 2 0 0中的变量 M2.6置位
    v   ( 6 ) = r o w‘ 0 j 人入库位置的行值
    V a 1 u e s ( 7 ) = c o l u mn‘ 写入入库位置的列值
    Ca l l My Gr o u 【   y n ( · w r i   r e ( 7, My l t e ms e r v e r Ha n ( 1 l e s , Va l u e s , E r r o r s ) 

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top