問題タブ [milo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
320 参照

java - OPC UA サーバーから OPC UA クライアントにプレトリガー値を発行する

OPC UA の次のユースケースで誰か助けてもらえますか?: トリガー条件が発生する直前の期間に発生した追加の測定値を使用して、OPC UA サーバーからトリガーされた測定値を読み取る このプレトリガー期間は設定可能で、0.5 秒としましょう。これにより、対象のトリガーが発生する直前に何が起こったかを確認できます。

どのように対処しますか?: トリガーが発生するとすぐに、OPC UA クライアントが結果を利用できるようになり、クライアントは同じトリガーを操作して、トリガーが発生する前の期間の過去の測定値を取得する必要があります。クライアントがステートレスなままでいられるように、よりスマートな方法があることを願っています。また、プレトリガー値が最初に送信されてからポストトリガー値がクライアントに送信されるように、データが少し遅れて到着する必要はありません。

これを可能にするために何らかの方法でデータをバッファリングする必要がある場合、これは機能しますか?:

  • OPC UA サーバー内のバックエンド測定データ プロバイダーは、0.5 秒前 (構成されたプレトリガー期間) の値からデータ値をクライアントに返し始めることができます。つまり、現在の測定値を返すのではなく、トリガー前の値から開始します。

Milo サーバーの例で、ExampleNameSpace 内で動的ノードに AttributeValueDelegate コンストラクトが使用されていることを見てきました。これにより、タイムスタンプを含むデータ値を一度に 1 つずつ返すことができるようです。相対的に古い値を返し始めた場合に機能するかどうかを確認するための適切なテスト ツールがありません。

もう 1 つは、これが監視項目とサンプリング間隔にどのように関係するかです。たとえば、クライアントが 1 秒あたり 10 サンプルのサンプリング レートを要求した場合、返された監視項目が実際にその範囲内にあるかどうかを確認しますか? つまり、遅れて到着した古い値は破棄されますか、それともクライアントによって取り込まれますか?

0 投票する
1 に答える
535 参照

java - Milo OPCUA クライアントを使用してノードをブラウズするにはどうすればよいですか。Datatyp を確認してください。

私はMilo OPCUAクライアントでノードを閲覧しています:

この変数が配列である場合は、この変数をチェックしてから、referencesChilds リストに追加してください。

どうすればいいですか、どんなアイデアでも、ReferenceDescription オブジェクトにはデータ型をチェックするメソッドがありません。