我正在尝试连接到Siemens S7 1200 PLC的OPC服务器。为此,我使用了Matrikon application那是在我的本地机器上配置的。使用JeasyOPC library,我可以建立连接,所以就像这样:
JOpc jopc =新的JOpc(“ localhost”,“ Matrikon.OPC.SiemensPLC.1”,“ JOPC1”);
JOpc.coInitialize();
但是该库只能在Windows中使用,并且在64位中编译二进制文件时有问题。
因此,我尝试使用OPC Foundation UA JAVA Legacy,但我想建立相同的连接,但是在示例中,我们要求做更多的事情:
String publicHostname = InetAddress.getLocalHost().getHostName(); String url = "opc.tcp://localhost:102/"; // ServerExample1 // String url = "Matrikon.OPC.SiemensPLC.1"; // This not work for me EndpointDescription[] endpoints = myClient.discoverEndpoints(url);
我想尽可能地模仿jeasyOPC的操作,无论如何我都找不到适合我的示例。
我将不胜感激任何可以帮助我与Matrikon服务器一起使用的基本客户端的示例
谢谢。
JOpc jopc =新的JOpc(“ localhost”,“ Matrikon.OPC.SiemensPLC.1”,“ JOPC1”);
此协议版本是一个使用过的历史性窗口,使用COM库,并且只能在Windows计算机上实现。第二个是OPC UA,是新的实现,它像这样连接:
String url =“ opc.tcp://本地主机:102 /”; // ServerExample1
此版本已经与Windows,Linux和任何能够运行libria的系统兼容。问题是,就我而言,S7 1200仅使用OPC DA,如果不使用兼容的网关,则UA选项对我来说不可行。
我希望这些信息能对处于我状况的人有所帮助。
问候。