OPCUAサーバーの​EndpointUr​lのポートがプログラ​ムで指定したポートと​ずれる原因を教えてく​ださい

1 visualizzazione (ultimi 30 giorni)
千仁
千仁 il 30 Gen 2025
Modificato: 千仁 il 5 Feb 2025
MATLABで、下記のプログラムを実行しました。
uaserver = opcua('opc.tcp://abcde:51311');
connect(uaserver,'username','password');
作成されたクライアント変数の中身は以下のようになりました。
Hostname: 'abcde'
Port: 51311
EndpointUrl: 'opc.tcp://Devicegateway:51310'
EndpointUrlのポート番号がプログラムで設定した値と異なるため、所望の信号の値を取得することができません。
原因は何でしょうか?

Risposte (1)

Kojiro Saito
Kojiro Saito il 31 Gen 2025
OPCのエンドポイントが複数あるためにEndpointUrlが指定したポート番号と異なるのかと思われます。
opcuaserverinfo 関数を使ってエンドポイントの情報を動的に取得する方法を試してみてはいかがでしょうか?
serverInfo = opcuaserverinfo("abcde");
uaserver = opcua(serverInfo(1)); % またはserverInfo(2)
connect(uaserver,'username','password');
  1 Commento
千仁
千仁 il 5 Feb 2025
Modificato: 千仁 il 5 Feb 2025
ご回答いただきありがとうございました。
serverInfo = opcuaserverinfo("abcde");
こちらを実行しても、1つの情報しか取得できず(serverInfo(2)が存在しない)、こちらのポートが51310となっていました。
MATLAB側で、"abcde"のエンドポイントとしてポート51310しか認識していないように考えられるのですが、何か設定することによりポート51311も認識させることは可能でしょうか?

Accedi per commentare.

Prodotti


Release

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!