0

我对 OPCDA 和 OpenOPC 有很大的问题。我应该(必须)从远程服务器读取一组标签,我无法以任何方式访问机器。我只知道 IP 和 OPC 服务器名称。

使用此代码在本地测试 OpenOPC 一切正常。否则,使用远程主机名更改主机名无效,出现 0x800706BA 错误。

import OpenOPC
import time

try:
    opc = OpenOPC.client()

    opc.servers()

    #change localhost to remote
    opc.connect('Matrikon.OPC.Simulation.1', 'localhost')

    srvList = opc.list()

    print(srvList)

    tags = opc.read(opc.list('Simulation Items.Random.Int*'), group='myTest')

    for name, value, quality, tagTime in opc.read(opc.list('Simulation Items.Random.Int*'), group='myTest'):
    print(name, value, quality, tagTime)

    for tag in tags:
        print(tag)

    except Exception as e:
        print('OPC failed')
        print(str(e))
        pass
    finally:
        print('END')

有人对此有任何想法吗?

由于无法访问服务器(设置为匿名登录),我已经尽可能地进行了 DCOM 配置。

有谁知道可能的解决方案的程序?

谢谢!

4

0 回答 0