FP_OPERATION_RECORDING_WRITE_TO_SD

SDカードへ稼働履歴を書き込む

このFP命令は、稼働履歴機能によってs1_nNumberで指定したコンフィグレーション番号に記録したデータをCSVファイルに書き込みます。ファイルは、SDカードのOPH0OPH7フォルダに保存されます(使用するコンフィグレーション番号による)。このフォルダは自動的にSDカードに作成されます。

パラメータ

入力

s1_nNumber (ANY16)

コンフィグレーション番号を0–7の範囲で指定します。

s2_bTimeDescending (BOOL)

レコードをタイムスタンプの昇順と降順のどちらで書き込むかどうかを指定します。

  • FALSE: 昇順

  • TRUE:降順

s3_nLanguage (ANY16)

「稼働履歴」の設定で定義した言語番号を指定します。

  • 0: 言語0

  • 1: 言語1

s4_bClearRecordedDataAfterWriting (BOOL)

SDカードに書き込んだ後の動作を指定します。

  • FALSE: 記録したデータをクリアしない

  • TRUE: 記録したデータをクリアする

解説

  • この命令が実行中のとき、システム変数sys_bIsSDMemoryAccessActiveTRUEがセットされます。SDカードへの書き込みが完了すると、sys_bIsSDMemoryAccessActiveFALSEが再度セットされます。

  • この命令が実行中のとき、システム変数sys_bIsSDMemoryAccessDoneFALSEがセットされます。記録したデータがSDカードに書き込まれると、sys_bIsSDMemoryAccessDoneTRUEが再度セットされます。

  • この命令の実行が成功すると、システム変数sys_bIsSDMemoryAccessErrorFALSEがセットされます。記録したデータのSDカードへの書き込みに失敗すると、sys_bIsSDMemoryAccessErrorTRUEがセットされます。

  • この命令を使用せず、Control Web Creatorで作成したWebページからコマンドを送信することもできます。詳細は、Webサーバ 機能マニュアルを参照してください。

エラーフラグ

sys_bIsOperationErrorHold (TRUEになり、TRUEを保持)
  • 設定していないコンフィグレーション番号を指定したとき。

  • 指定されたコンフィグレーション番号が許容範囲外のとき。

  • インデックス修飾時にエリアを超えたとき

  • パラメータに指定された値が許容範囲外の場合。

sys_bIsOperationErrorNonHold (1回のスキャンに対してTRUE)
  • 設定していないコンフィグレーション番号を指定したとき。

  • 指定されたコンフィグレーション番号が許容範囲外のとき。

  • インデックス修飾時にエリアを超えたとき

  • パラメータに指定された値が許容範囲外の場合。

POUヘッダCopy code to clipboard

POUヘッダには、このプログラムで使用するすべての入力変数と出力変数を宣言します。POUヘッダは全プログラム言語で使用できます。

	VAR
		bWrite: BOOL:=FALSE;
	END_VAR

LDボディCopy code to clipboard

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 7 ;
        NETWORK_BODY
B(B_CONTACT,,bWrite,5,1,7,3,R);
B(B_F,FP_OPERATION_RECORDING_WRITE_TO_SD!,,14,0,34,7,,?DEN?Ds1_nNumber?Ds2_bTimeDescending?Ds3_nLanguage?Ds4_bClearRecordedDataAfterWriting?AENO);
B(B_VARIN,,0,12,2,14,4,);
B(B_VARIN,,FALSE,12,3,14,5,);
B(B_VARIN,,1,12,4,14,6,);
B(B_VARIN,,TRUE,12,5,14,7,);
L(1,0,1,7);
L(1,2,5,2);
L(7,2,14,2);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY
    END_NET_WORK
END_BODY

STボディCopy code to clipboard

If DF(bWrite) Then
    FP_OPERATION_RECORDING_WRITE_TO_SD(s1_nNumber := 0, s2_bTimeDescending := FALSE,
                                       s3_nLanguage := 1, s4_bClearRecordedDataAfterWriting := TRUE);
End_if;

最終修正日: 2023-11-21このページに関するフィードバックお問い合わせ窓口