データ インターフェイスの更新
データ ソース変数は、実行時に周期的に更新されます。現在のビジュアライゼーションで使用されているか、プロパティを持つデータのみが更新されます。 常に更新.
時間間隔を定義できます。さらに、各更新間隔でデータが転送される変数を定義できるため、変数は常に更新されます。アプリケーション コードで使用されていない変数を更新するには、データ ソース マネージャーのインターフェイス関数を使用してプログラムで更新を実装できます。
重要
リモート デバイスとローカル デバイス間のデータ トラフィックが高すぎる場合、リフレッシュ レートは自動的に低下します。これにより、不完全な転送が発生する可能性があります。
リフレッシュレートの設定
データ ソースのエディターを開きます。
クリック 一般および診断 タブ。
で値を指定します。 リフレッシュレート 分野。
例:
100
リモート デバイスからローカル デバイスへのデータは、100 ms ごとに転送されます。
変数の選択 常に更新
重要
常に多くの変数を更新することは避けてください。更新のたびに、リモート デバイスとローカル デバイス間の接続で追加のデータ トラフィックが生成されます。データ トラフィックが多すぎる場合、リフレッシュ レートは自動的に低下します。これにより、不完全な転送が発生する可能性があります。
のエディタを開きます 情報源。
オプションを有効にする 常に更新 変数の場合。
変数のデータは、データが変更されていない場合でも、更新サイクルごとに転送されます。
プログラムによるデータの更新
データ ソース マネージャーは、 Datasources
図書館。データ ソース マネージャーがアプリケーション コードに統合されている場合、グローバル変数 g_Datasources
自動的にインスタンス化されます。これにより、インターフェース機能へのアクセスが提供されます。
次に、アクティブなビジュアライゼーションで呼び出されていない個々の変数を更新できます。
変数 ivar
からのメソッドによってアクティブ化および非アクティブ化されます。 Datasources
その値が転送されるようにライブラリ。さらに、転送容量を節約するために、変数が定義された期間のみ更新されるように構成できます。
//Synchronize with DatasourcesTask and block until access is possible //Regard the feedback in ERR_OK or in ERR_DE_MULTITASKING_LOCKED g_Datasources.BeginDataConfiguration(TRUE); // Activate variable g_Datasources.UseData(ADR('RemoteDevice.Application.PLC_PRG.iVar')); // Deactivate variable //g_Datasources.ReleaseData(ADR('RemoteDevice.Application.PLC_PRG.iVar')); g_Datasources.EndDataConfiguration();
データ構成は BeginDataConfiguration(TRUE)
、したがって、タスクの同期を初期化します DatasourceTask
アプリケーションタスクで。値 TRUE
変数へのアクセスが可能になるまで処理をブロックします。 FALSE
ブロックせずにアクセス試行を繰り返します。戻り値 ERR_OK
と ERR_DS_MULTITASKING_LOCKED
アクセス試行に関するフィードバックを提供します。
同期が成功すると、変数は UseData
方法。その後、データ構成は EndDataConfiguration
メソッドと、タスクで再度トリガーされた同期 DatasourceTask
.
の ReleaseData
メソッドは、目的の処理時間で変数を再度非アクティブ化するために同じ方法で使用されます。