我剛剛檢出了Eclipse Milo項目(https://projects.eclipse.org/proposals/milo),這對於「開放式」OPC UA客戶機/服務器(即使使用實施的OPC堆棧)來說似乎是一個很好的項目。 github上的項目(https://github.com/eclipse/milo)包含一個Hello World示例,其中啓動OPC服務器並從客戶端發送和接收示例節點。一切正常!配置OPC UA服務器(米洛)?
但在我的下一步中,我想檢查服務器配置是否正確。因此,我安裝了Matrikon Explorer,但資源管理器在啓動後立即聲明「沒有安裝在此機器上的OPC服務器」(當然,運行OPC Server的hello world示例正在運行)。
也查了,如果SAP工廠連接是認識的OPC服務器(這是我的項目的目標) - >「發現你的系統上/沒有OPC服務器localhost」
哪裏是我的問題,我什麼必須這樣做才能正確安裝和配置服務器?
這裏的Hello World示例:
public static void main(String[] args) throws Exception {
// Start server
int port = 12686;
String serverName = "test-server";
OpcUaServerConfig serverConfig = OpcUaServerConfig.builder()
.setBindPort(port)
.setCertificateManager(new DefaultCertificateManager())
.setCertificateValidator(new DefaultCertificateValidator(createTempDir()))
.setServerName(serverName)
.setUserTokenPolicies(singletonList(USER_TOKEN_POLICY_ANONYMOUS))
.build();
OpcUaServer server = new OpcUaServer(serverConfig);
server.getNamespaceManager().registerAndAdd(
"urn:eclipse:milo:opcua:test-namespace",
idx -> new HelloNamespace());
server.startup();
while(true){
System.out.println("server running");
}
}
感謝您的快速和有益的答案。您可能會注意到我是一種新手@ OPC體系結構。現在對OPC-COM/DA與OPC-UA進行了一些研究...... – Martin
......我當前的問題:我已將OPC服務器配置爲SAP Plannt Connectivity中的源系統(它支持普通opc ua系統作爲源系統)。我已將服務器端點配置爲「opc.tcp:// localhost:12686/test-server」。通過測試連接,服務器似乎被識別,但它表明「服務器沒有返回與用於創建安全通道的EndpointDescription相匹配的端點描述」。這是我的Milo服務器配置問題還是SAP方面更可能出現的問題?你知道這種錯誤或有任何建議來解決它嗎? – Martin
這樣的錯誤通常可以固定在任何一方。基本上,您已將示例設置爲綁定到本地主機,但SAP通過其他IP地址連接並注意到差異。有時候這是不可避免的,就像當你連接到一個遠程服務器那裏的外部IP不是你可以綁定的那個。在這種情況下,您可能只需更改Milo的配置以包含要綁定的其他地址。構建服務器配置時調用'setBindAddresses'。 –