我使用python openopc远程连接另一台主机的matrikon服务器,以此来获取TAG数据,但是在连接中却报错,另一台服务器能够ping通,且已经关闭了防火墙。
代码如下:
opcser = 'Matrikon.OPC.Simulation.1'
TAG = 'opctest.plc01'
gateway = '192.168.199.171'
host = '4636'
opc = OpenOPC.open_client(gateway, host)
opc.connect(opcser)
报错如下:
请问这是什么原因?
这个端口开了吗?这个报错给我的感觉是远程服务挂掉了,或者压根没连上
谢谢您!应该是我连接的方式出错了,已经在两台dcom配置好的主机上连接好了,但是目前出现了数据获取超时错误,请问您有遇到过这种情况吗?
@Wb同学在此: 数据是从数据库获取的吗
@Micheal_L: 不是,是从另一台主机上的opc服务器获取的。
@Micheal_L: 报的错误是这个
raise TimeoutError, 'Callback:Timeout waiting for data'
OpenOPC.TimeoutError:Callback: Timeout waiting for data
@Wb同学在此: 不好意思,博客园没主动推给我,我才看到回复。 opc这块我没有具体用过,但是你的报错信息我好像是见过类似的,所以只能给你提一些建议,这个报错信息是获取数据超时,所以要么是请求端出了问题,要么是接收端出了问题,以我的经验,可能有以下几个原因:
1.如果你是通过ip+port获取的数据,那么此端口是否对外开放,是否可以通过公网访问。
2.在opc服务器上是否有设置连接时间的配置,如果有,看一下大小是多少,可以调大一些,有可能是请求超时。