例:
9.7 ファイル検索 / 比較命令 (FSC)
FSC命令は、検索/比較演算を実行します。FSC命令は、複合式を含め、比
較(CMP)命令と同じ演算を行ないます(エンハンストPLC-5プロセッサの
み)。2つの命令は、FSC命令がファイル上で論理演算を実行するのに対し、
CMP命令はワードまたはエレメント上で演算を行なう点が異なります。さ らに、FSC命令は出力命令であるのに対して、CMP命令は入力命令です。
説明:
FSC命令は、式で指定した論理演算について、ソースファイルの値をワー ドごとに比較する出力命令です。指定された比較がTrue (1)であると判断す ると、命令は検出ビット.FDをセットし、True (1)の比較が検出されたPosition (.POS)を記録します。使用禁止ビット.INは、ファイルを検索しす
ぎるのを防ぐためにセットします。
正しい処置を行なうためには、ラダープログラムで検出ビット.FDと
Position (.POS)を評価する必要があります。ラダープログラムは、使用禁止
ビット.INをリセットして、命令が続行できるようにする必要があります。
ファイル処理モードの選択によって、1回のプログラムスキャンでファイル を処理するか、複数のプログラムスキャンで処理するかが設定されます。
ファイル処理モードについては、第8章を参照してください。
この命令を使用して、以下のような処理を実行することができます。
• 複数のアナログ入力に対して高および低プロセスアラームをセットする。
• バッチ処理を行なう前に、参照ファイルに対照させてバッチ変数を比較 する。
(EN) (DN) FAL
FILE ARITH/LOGICAL
Control R6:2
Length 12
Position 0
Mode ALL
Destination #N14:0 Expression
TOD #N7:0
(ER)
(EN) (DN) FSC
FILE SEARCH/COMPARE Control
Length Position Mode Expression
(ER)
9.7.1 ステータスビットの使用
FSC命令を正しく使用するためには、ラダープログラムで制御構造内のス テータスビットを評価し、制御する必要があります。ニーモニックによっ て、これらのビットをアドレス指定します。
FSC命令の場合、最大80文字までのExpression (式)を表示できます。入 力した式が80文字に近いときに命令が指定されたラングを受入れると、プ ロセッサはそれを80文字以上に拡張します。その式を編集しようとすると、
最初の80文字のみが表示され、ラングはエラーラングとして表示されます。
ただし、プロセッサは完全な式を持っており、正しく実行されます。
この表示の問題は、プロセッサ・メモリ・ファイルをエクスポートしてPC5 テキストファイルとし、テキストファイルをインポートすることによって解 決できます。プロセッサ・メモリ・ファイルのインポート/エクスポートに ついては、プログラミングソフトウェアのプログラミングマニュアルを参照 してください。
ビット セットの条件
有効.EN (ビット15)
ラングがTrue (1)にセットされるとセットされ、命令が有効であ
ることを示す。
インクリメンタルモードでは、このビットはラング状態に従う。
数値モードとAllモードの場合、このビットはラング状態とは無 関係に、命令がその演算を完了するまでセットされたままにな る。.ENビットはラング状態がFalse (0)にリセットされると、リ セットされるが、命令が完了ビットをセットした後でなければリ セットされない。
完了.DN (ビット13)
命令が最後のワード上での演算を完了すると、セットされる。
数値モードの場合、命令が完了時にFalse (0)にリセットされてい ると、演算が完了した後の1プログラムスキャンによって.DN ビットがリセットされる。それ以外の場合は、.DNビットが.EN ビットによりリセットされる。
エラー.ER (ビット11)
演算によってオーバーフローが発生すると、セットされる。命令 は、ラダープログラムが.ERビットをリセットするまで停止す る。
プロセッサがエラーを検出すると、Position値にはフォルトが発 生したエレメントの番号が格納される。
禁止.IN (ビット9)
指定された比較がTrue (1)にセットされると、セットされる。
検索を続行するためには、ラダープログラムで、.FDビットを評 価することによって起動する処置を行なった後、このビットをリ セットする必要がある。
検出.FD (ビット8)
指定された比較がTrue (1)にセットされると、セットされる。
プロセッサは検索を中止し、さらに使用禁止ビット.INをセット する。.FDビットは、FSC命令の出力です。
ファイル命令(FAL, FSC, COP, FLL) 9-15
以下のALLモードのタイミングチャートに、命令が、比較が2回True (1) であると検出した場合におけるステータスビットと命令の実行との関係を示 します。
FSC命令が比較を検出しなかった場合の応答については、第8章のタイミ ングチャートを参照してください。
スキャンマーカ
1スキャ ンのみ
ラング状態 有効ビット(.EN) 完了ビット(.DN) 命令の実行 使用禁止 (.IN)および 検出 (.FD)ビット
比較を検出する。
ラダープログラムは禁止(.IN) ビットをリセットする。