Skip to main content

データ インターフェイスの更新

データ ソース変数は、実行時に周期的に更新されます。現在のビジュアライゼーションで使用されているか、プロパティを持つデータのみが更新されます。 常に更新.

時間間隔を定義できます。さらに、各更新間隔でデータが転送される変数を定義できるため、変数は常に更新されます。アプリケーション コードで使用されていない変数を更新するには、データ ソース マネージャーのインターフェイス関数を使用してプログラムで更新を実装できます。

重要

リモート デバイスとローカル デバイス間のデータ トラフィックが高すぎる場合、リフレッシュ レートは自動的に低下します。これにより、不完全な転送が発生する可能性があります。

リフレッシュレートの設定

  1. データ ソースのエディターを開きます。

  2. クリック 一般および診断 タブ。

  3. で値を指定します。 リフレッシュレート 分野。

    例: 100

    リモート デバイスからローカル デバイスへのデータは、100 ms ごとに転送されます。

変数の選択 常に更新

重要

常に多くの変数を更新することは避けてください。更新のたびに、リモート デバイスとローカル デバイス間の接続で追加のデータ トラフィックが生成されます。データ トラフィックが多すぎる場合、リフレッシュ レートは自動的に低下します。これにより、不完全な転送が発生する可能性があります。

  1. のエディタを開きます 情報源

  2. オプションを有効にする 常に更新 変数の場合。

    変数のデータは、データが変更されていない場合でも、更新サイクルごとに転送されます。

プログラムによるデータの更新

データ ソース マネージャーは、 Datasources 図書館。データ ソース マネージャーがアプリケーション コードに統合されている場合、グローバル変数 g_Datasources 自動的にインスタンス化されます。これにより、インターフェース機能へのアクセスが提供されます。

次に、アクティブなビジュアライゼーションで呼び出されていない個々の変数を更新できます。

7.

変数 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_OKERR_DS_MULTITASKING_LOCKED アクセス試行に関するフィードバックを提供します。

同期が成功すると、変数は UseData 方法。その後、データ構成は EndDataConfiguration メソッドと、タスクで再度トリガーされた同期 DatasourceTask.

ReleaseData メソッドは、目的の処理時間で変数を再度非アクティブ化するために同じ方法で使用されます。