我正在寻找一些库和一些示例来创建可以与 opc 服务器连接的 Java 客户端 OPC 应用程序。提前致谢。
4 回答
您是否检查过使用 Java 进行 OPC 客户端编程?
他们为此区域提供了不同的链接:
- Utgard - 纯 Java OPC 库
Utgard是一个开源项目,提供一个用纯原生Java 编写的OPC 库,即不依赖于JNI 或其他DLL。它是根据 GPL 许可的。
- JEasyOPC 客户端
Antonín Fischer 的Java OPC 客户端现在得到了极大的增强并托管在 SourceForge 上。它使用一个用 Delphi 编码的 JNI 层。提供了完整的源代码(Java 和 Delphi)。
我认为您正在寻找的是Utgard,您可以在文档部分中找到示例代码,分别在文档下的项目源代码中。
你有两个选择:
按照 platzhirsch 的建议,选择传统的 OPC DCOM。DCOM 需要 JNI,并且只能在 Windows 环境中工作。
选择 OPC UA(统一架构),这是 OPC 的新版本。OPC UA 在纯 Java 中可用,并且在所有 Java SE 6 环境中可用。OPC UA 包含许多高级功能,例如内置安全性、信息建模等。
OPC UA 为您提供更好的未来证明,因为 OPC UA 是目前所有开发的地方。您还可以借助包装器(例如UaGateway )从 OPC UA 客户端连接到 OPC DCOM 服务器
对于 OPC UA,我可以建议Prosys OPC UA Java SDK,它是目前 Java 最先进的选项(商业,是的,我自己也参与其中)。
您可以从此处阅读有关 OPC UA 的更多信息
以下是 GitHub 上的一些开源 UPC UA 实现:
- https://github.com/digitalpetri/ua-server-sdk
- https://github.com/digitalpetri/opc-ua-stack
- https://github.com/bcopy/opc-ua-stack
它们正在出现且不完整,但如果您正在研究或制作原型,那么与功能齐全的商业图书馆相反,这是正确的开始方式。
在 C++ 中实现 OPC API。使其成为 DCOM 对象并作为 Windows 服务运行。
您可以通过 J-Interop 或 JACOB 连接到 DCOM 对象,两者都是 JAVA-DCOM 桥。