-
大小: 63.46MB文件类型: .rar金币: 2下载: 1 次发布日期: 2022-01-01
- 语言: 其他
- 标签: OpenOPC;opc server;opc client;
资源简介
使用说明:
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
评论
共有 条评论