大家好!现在现场的工控PC上已运行非西门子的OPC,通过着工业以太网连接着现场的S7-300PLC。我想在该PC上安装SIMATICNET软件,并同时运行SIMATICNETOPCserver,然后用VB来写个读写程序,请问这样同时在一台PC上运行两个OPCserver的这种方案可行吗?有两者可否同时对PLC的数据进行正常的读写?
问题补充:
引用:“为什么要用2个OPC,你自己用VB来编写客户端程序,你完全可以用以前的OPCSERVER来进行数据读写啊”
因为原厂OPCserver是设备厂商自行开发的,找不到关于该ScHMIdOPCserver的说明书,所以不知道调用它的函数是什么,例如不知道如何增加Group,Item,读写ltem等等的函数是什么。故只能另起炉灶。补充问题:不同厂家的OPCServer的调用函数不会都一样的吧?
最佳答案
不会影响,但是占用了CPU的通信资源,浪费!OPCSERVER之间不会相互影响的(2个OPC与PLC通信会占用2个独立的连接),你只要PLC的的连接数够,通信资源足够,2个OPC读写PLC数据,速度也不会有多大影响。
但是,我想不通了,为什么要用2个OPC,你自己用VB来编写客户端程序,你完全可以用以前的OPCSERVER来进行数据读写啊。
当然是一样的,在是你连接OPCSERVER的函数中OPCSERVER的注册名称不一样了
对于你编写VB客户端中添加GRPOUP.ITEMS等都是一样的。这个是OPCDA规范所确定。如果每个厂家的OPCSERVER都不按照OPC基金会的规范来说,那么就不叫OPC了
提问者对于答案的评价:
分析得好!但我用相同的函数调用SIMATICNETOPC就OK,而SCHMIDOPC就通不了,不知何为?请专家再释疑.
专家置评
已阅,最佳答案正确。