ISaGRAF Ver.4 |
ISaGRAF Ver.4ではいくつかの2000年コンプライアンス試験にパスしています。
試験に当たっては、以下のようなISaGRAF Ver.4のプロジェクトが使用されています。
- BLINK ブロック:5秒毎にカウントとリスタートを繰り返します。
- TON ブロック:2000年をまたいでタイマをカウントします。
- TOF ブロック:2000年をまたいでタイををカウントします。
- TPブロック:TPのダイアグラムの4つの状態それぞれで2000年になるよう設定した4種類のテストを行います。
- SIG_GENブロック:入力パラメータ‘run’がTRUEの間に2000年になるように設定します。SFCプログラムでトークンが2秒毎に2つのステップの間を行き来するようにプログラムします (自動的に付加される、ステップの活性化時間をあらわすタイマ変数を利用) 。
- バインディング
- NTターゲットで、2つのリモートコンフィギュレーション間でのバインディング
- NTターゲットで、複数のローカルリソース間でのバインディング
- OS-9ターゲットで、2つのリモートコンフィギュレーション間でのバインディング
- OS-9ターゲットで、複数のローカルリソース間でのバインディング
全てのテストにおいて、下記の項目をテストしました。-
1. プロジェクトを1999年の12月31日の24時数分前にコンパイルする
-
2. コードをダウンロードしてテストを開始する。
-
3. 2000年になったところでシステムの動作をチェックする
-
4. 0時を過ぎてからデバッグを停止する。
結果
ISaGRAF Ver.4 ワークベンチ Ver4.02、ターゲット Ver4.02において、
- NTターゲット→OK VxWorksターゲット→VxWorksにはカレンダ-の概念がないため、強制的に1999年12月31日に日付を設定して、事前に2000年テストを行うことは出来ません。
- OS-9ターゲット→OK
ワークベンチのテスト(WindowsNTとWindows 95で実施)- プロジェクト(複数のリソースと、各リソースに1つのプログラム)を2000年の前にコンパイルし、更に同じプロジェクトを2000年の1月にまたコンパイルする。
- ISaGRAF Ver4.02 →OK (プログラム自体はリコンパイルされず、辞書のチェックとリンクのみ実行される)プロジェクト(複数のリソースと、各リソースには1つのプログラム)を2000年の前にコンパイルし、プログラムを1つ変更してから2000年の1月にプログラムをまたコンパイルする。
- ISaGRAF Ver4.02 →OK (全てのプログラムはコンパイルされず、変更されたプログラムのみコンパイルされる。)
- 2000年に変わる時の日付の表示→OK
- ISaGRAF Ver.4には日付の表示機能はありません。
- 2000年の1月にプロジェクトドキュメントの印刷→OK (日付は正確に印刷される)
OSの西暦2000年テストの一例
ご使用のOSのシステム時計を1999年12月31日の24:00直前に変更し、タイマーを起動する。2000年の1月1日になったところで、タイマー値が正しいか確認する。
-
1. リソース数は1個です。
SFCプログラムのトランジションでタイマ型の変数を評価しています。
プログラム内ではタイマが関連するBLINK, TON, TOF, TP, SIG_GENブロックを使用しています。
2. バインディングを使用します。下図をご覧下さい。3つのリソースが2つのコンフィギュレーションに存在し、以下のようにバインディングが設定されています。
DINSTANT_manyFB と ImportingData.
LocalExportingBlink3 と ImportingData
バインディングリストは全ての単純な変数型(BOOL, SINT, DINT, REAL, TIME, STRING)と一つの配列(200個のBOOL型変数)から構成されています。
使用環境
ISaGRAF Ver4.02
ワークベンチ環境:Windows NT V4.0 とWindows95
ターゲット環境 :WindowsNTターゲット(Windows NT V4.0)
OS-9ターゲット(OS-9 V3.0.3 VM42-68040CPU)
テストの詳細