DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 935|回复: 0
打印 上一主题 下一主题

[安防] OPC在小型仓库监控系统上的应用

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-21 23:56:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1   前 言
    随着计算机技术的飞速发展, PC机已越来越多地应用于自动化立体仓库控制系统中,作为上位机实时地进行集中监控,完成可视化人机操作界面、图形显示、数据库、通讯及联网等功能。而下位机 PLC(可编程逻辑控制器) 则循环地读入设备信号, 并进行逻辑判断操作,输出控制信号, 控制设备执行。因此, 在自动化控制系统中,实现PLC和PC机之间的通信是非常重要的 。本文设计了一个三巷道自动化立体仓库, 现对该仓库的系统组成、监控管理系统软件以及上位机与 PLC的通信问题进行较详细的介绍 。
2   系统构成及 OP C技术
2.1 系统 组成
    系统的下位机由 3个 S7 — 200 (CPU226) 和 1个TP070触控屏以及多台直流调速器等组成,上位机是 l台安装有 WindowsXP、 S7—200  PC   Access、 WinCC6. OSP2和Vb
等软件的普通 P C机。上位机作为主站, 下位的 3个PLC都是从站并且站地址不同,上位机利用 RS232   PPI 智能电缆和下位机 3个 s7-200通讯。
2.2 OPC技 术
    OPC是一个基于COM技术的接口标准,提高了工业自动化软件与硬件,以及软件之间的互操作业。OPC采用客户/眼务器结构, 使得多个 OPC客户程序可与一个厂商提供的OP C服务器连接,并通过OPC服务器, 从数据源存取数据。
    正是由于 OP C标准化的接口能够显著节省昂贵的、用于人力和时间的投资,再加上使用经济型的PPI电缆连接、下位机,使得整个系统在保证功能的前提下变得十分经济实用.
3   S7-200 PC Access与 S7-200的通讯
3.1 S7-200  PC Access简介
    s7-200 PC Access是s7-200 PLC的一种OPC服务器,是唯一专供小型 PLC使用的低成本OPC工具,可与任何标准 OPC客户机配合使用,也可和Micro/WIN同时联机使用。s7-200 PC Access 使用 PPI 、 以太网或调制解调器与 PLC通讯,可同时从 8个 PLC读取数据, 并且服务器读取的项目数是没有限制的 。
3.2 使 用 S7 ~ 200   PC   Access 构建 OPC服务器
    (1) 连接 PLC: 在树形图 中添加 一个新 PLC连接。 然后配置通讯协议 : 选择 PG/PC接 口将接口配置为PC/PPI电缆(PPI),并为 s7-200  PC  Access 选择 网络地址和波特率, 在新建PLC的“ PLC属性 PPI 通讯” 属性对话框 中, 输入 P L C名称和站地址( 须与实际的设置一致)。
    (2) 建立 OPC项 目: 右击 PLC图标, 选择“ 新” 一“ 项目”,然后在项目属性中填写“ 地址” 和“ 数据类型”,地址和类型与 s7-200 PLC用于监控的变量相对应 ,例如 :“ MbO ” 和“ byte ”。
把所有想要监控的变量添加后便在 s7-200 PC。Access 下建立了 s7-200的 OPC Server。
    (3) 通信测试: S7-200  PC  Access 软件本身带有测试客户机,可以方便地了解客户机与眼务器的通讯情况.将建立完的项 目拖放至测试客户饥窗口内,单击 S7-200 PC Access 工具条中的“ 状态” 按钮,在窗口中就可显示出项目连接状态和项目值。
4   使用 Wi n CC开发 OP C客户端监控系统
4.1 WinCC客户端与 S7-200 PC Access 服务器的通讯连接由于 s7-200 PC Access是 s7-200的 OPC服务器,因此可将 WinCC配置为 OPC客户端通过 OPC接口访问s7-200 PC Access 服务器。只要将 OPC服务器中的项目添加到 WinCC的变量管理器中便可在组态中使用了,具体方法如下:
    (1) 在 Wincc变量管理器中添加一个新 的驱动程序,新的驱动程序选择 OPC.CHN。在 OPC Groups 通道标签上右键,选择“ 系统参数” 进入 OP C条目管理对话框。
    (2) 在对话框中点击“ Local” 条目前的加号, 此时会显示出本地计算机上的所有 OPC服务器列表, 选择“s7 200.OPC Server” 后点击“浏览服务器” 按钮,便可看到在 s7-200 PC Access中添加的所有OPC项 ,选择所需的项添加到 WinCC的变量管理器 中。
    (3) 建立 以上 OPC通道下的逻辑连接后命名为OPC Server 。
4.2 WinCC客户端监视系统
    WINCC提供了非常丰富而友好的人机交互界面,通过对OPC通道中变量的读写完成了对立体库设备状态的监控。监控站 以交互形式进行各类画面的调用与切换,完成过程控制功能,而且在动态画面中显示设备各部分的主要参数及工作状态,如堆垛机运行参数、货叉位置、出入库控制,以及故障诊断等。

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 )

6 结 语

    本文解决了上位机与下位 s7-200 PLC的通讯问题,并且数据传输稳定,实时性好,组态方便灵活,调试简单由于OPC协议是通用协议,得到很多公司的支持,通用性好,并且可以通过局域网甚至是 Internet 实现多台上位机参与控管理,极大地扩展了自动监控系统的使用范围。
                          
                       
                          
                               
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-11-15 05:51 , 耗时 0.079754 秒, 19 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表