4

OPC UA クライアント アプリケーションを構築しようとしています。
OPC ツリーで UA ノードを一意に識別できるようにしたいと考えています。
OPC DA では、標準のノード ID は「.」を含む文字列であることを知っています。ノードを識別するために使用できる区切り記号として。

OPC UA では、ノード ID は文字列である必要はありませんが、特定のノードにマップする一意の文字列を作成できるようにしたいと考えています。
ノード名に基づくことを考えています。例: Demo.MyNode.MyValue。
残念ながら、ノード名には「.」などの文字が含まれている可能性があります。これにより、IDが一意ではなくなります。

区切り文字として使用できる文字はありますか?
ノード ID を文字列 (パスを含む) として表現するより良い方法はありますか?

4

3 に答える 3

5

OPC-UA は、すべてのノードに固有の「BrowsePath」の概念を提供します。クライアントは、NodeId の代わりに BrowsePath を格納することを選択し、起動時に TranslateBrowsePathsToNodeIds サービスを呼び出すことができます。

実際、サーバーが再起動後に特定の Node に対して同じ NodeId を使用する必要はないため、これは意図された動作である可能性があります。

NodeId の変更が許可されていることについて、私は間違っていました。仕様には、「サーバーはノードの NodeId を保持する必要があります。つまり、再起動時に新しい NodeId を生成しません。」

NodeIds を保存し、BrowsePaths のみを使用して、型定義に対するプログラミングを支援するのが最善であると今では考えています。

于 2016-01-15T13:06:22.717 に答える
0

OPC Foundation は、「OPC UA オープン シェアード ソース」戦略を発表しました(2015 年 4 月 14 日)。

DA、ヒストリー、クライアント、サーバー用の多数のサンプルを含む .NET のスタックは、GitHub のOPCFoundation/UA-.NETから自由にダウンロードできます。

また、C#、VB.NET を使用して OPC UA .NET アプリケーションを構築する

「SampleApplications」ディレクトリのサンプルを見て、それらがどのように機能するかを確認できます...

于 2016-01-29T10:28:21.303 に答える