资源简介

使用说明: 1、首先安装OpenOPC-1.3.1.win32-py2.7.exe到你电脑的指定路径; 2、进入安装好的OpenOPC路径下的src目录下,把测试代码中的源代码可以拷入此目录进行测试; 3、安装opc server of simulation到你电脑的指定目录; 4、在opc server中还提供了MACSV系统OPC Server,可以用上面的测试代码进行测试; 关于Matrikon OPC Simulation的使用说明请关注安装后的PDF文件,这些测试代码都能跑通。

资源截图

代码片段和文件信息

#-------------------------------------------------------------------------------
# Name:        OPC Test
# Purpose:
#
# Author:      Thinkpad
#
# Created:     16/06/2015
# Copyright:   (c) Thinkpad 2015
# Licence:     
#-------------------------------------------------------------------------------

from sys import *
from getopt import *
from os import *
import signal
import sys
import os
import types
import datetime
import re time csv
import OpenOPC
import Pyro


# Helper class for handling signals (i.e. Ctrl-C)

class SigHandler:
  def __init__(self):
      self.signaled = 0
      self.sn = None
  def __call__(self sn sf):
      self.sn = sn
      self.signaled += 1

def main():
    opc_class = OpenOPC.OPC_CLASS
    client_name = OpenOPC.OPC_CLIENT
    opc_host = ‘localhost‘
    opc_server = OpenOPC.OPC_SERVER
    open_host = ‘localhost‘
    open_port = 7766

    action = ‘read‘
    style = ‘table‘
    append = ‘‘
    num_columns = 0
    pipe = False
    verbose = False
    recursive = False
    read_function = ‘async‘
    data_source = ‘hybrid‘
    group_size = None
    update_rate = None
    timeout = 5000
    tx_pause = 0
    repeat = 1
    repeat_pause = None
    property_ids = None
    include_err_msg = False
    taglist = [‘Random.Int4‘‘Random.Real4‘‘qw.as‘]

    if environ.has_key(‘OPC_MODE‘):         opc_mode = environ[‘OPC_MODE‘]
    if environ.has_key(‘OPC_CLASS‘):        opc_class = environ[‘OPC_CLASS‘]
    if environ.has_key(‘OPC_CLIENT‘):       client_name = environ[‘OPC_CLIENT‘]
    if environ.has_key(‘OPC_HOST‘):         opc_host = environ[‘OPC_HOST‘]
    if environ.has_key(‘OPC_SERVER‘):       opc_server = environ[‘OPC_SERVER‘]
    if environ.has_key(‘OPC_GATE_HOST‘):    open_host = environ[‘OPC_GATE_HOST‘]
    if environ.has_key(‘OPC_GATE_PORT‘):    open_port = environ[‘OPC_GATE_PORT‘]
    if environ.has_key(‘OPC_TIMEOUT‘):      timeout = int(environ[‘OPC_TIMEOUT‘])
    print ‘opc_mode:‘ opc_mode
    print ‘opc_class:‘ opc_class
    print ‘client_name:‘ client_name
    print ‘opc_host:‘ opc_host
    print ‘opc_server:‘ opc_server
    print ‘open_host:‘ open_host
    print ‘open_port:‘ open_port
    print ‘timeout:‘ timeout
    print “#### load succussful!“
    opc_server = ‘Hollysys.MACSV5OPCServer‘
    print ‘opc_server:‘ opc_server
    opc_host = ‘127.0.0.1‘
    #open_port = ‘7766‘

    # Establish signal handler for keyboard interrupts
    sh = SigHandler()
    signal.signal(signal.SIGINTsh)
    if os.name == ‘nt‘:
        signal.signal(signal.SIGBREAKsh)
    signal.signal(signal.SIGTERMsh)
    print “#### establish signal!“

    open_host = ‘127.0.0.1‘
    opc = OpenOPC.open_client(open_host open_port)
    print “#### create opc!“
    opc.connect(opc_server opc_host)
    print “###  connect opc server!“
    v = opc.read(taglist)
    opc_info = opc.info()
    opc_list = opc.list
    print type(

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件    2575959  2015-06-19 09:40  OpenOPC\OPC Server仿真工具\DCOM Config Tool.rar

     文件    3499108  2015-06-19 09:40  OpenOPC\OPC Server仿真工具\MACSV系统OPC Server通信软件.rar

     文件   50497548  2015-06-17 13:57  OpenOPC\OPC Server仿真工具\MatrikonOPCSimulation.EXE

     文件    9757005  2015-06-15 12:37  OpenOPC\OpenOPC-1.3.1.win32-py2.7.exe

     文件     298769  2015-06-15 18:48  OpenOPC\Pyro-3.16.tar.gz

     文件         70  2015-06-17 13:48  OpenOPC\测试代码\config.ini

     文件       3495  2015-06-17 15:51  OpenOPC\测试代码\opctest.py

     文件       3052  2015-06-18 14:39  OpenOPC\测试代码\opctest1.py

     文件        551  2015-06-17 13:48  OpenOPC\测试代码\OPC_config.py

     文件        380  2015-06-19 09:52  OpenOPC\测试代码\readme.txt

     目录          0  2015-06-19 09:40  OpenOPC\OPC Server仿真工具

     目录          0  2015-06-19 09:46  OpenOPC\测试代码

     目录          0  2015-06-19 10:01  OpenOPC

----------- ---------  ---------- -----  ----

             66635937                    13


评论

共有 条评论

相关资源