スポンサーリンク

【PLC】KV-STUDIO 【MWRIT】ストレージ書込み命令について

PLC

今回は、【MWRIT】ストレージ書込み命令について紹介します。

【MWRIT】はPLCに挿入してあるSDカードまたは、CPUメモリ(KV-7000シリーズ以降)に書き込むための命令です。キーエンスの場合、ロギングなどの設定もあるのですが、あまり可変ができません。なので、【MWRIT】を利用してCSVファイルの内容をアレンジするのに便利です。(※:KV-N14 ~ KV60:端子台タイプについては、この命令は実行できませんので、ご注意下さい

紹介しているプログラムは参考にして製作しても良いですが、装置(機械)損害などに関しては一切の責任を負いかねますので、予めご了承ください。また、製作時は必ずユーザマニュアルを熟読し、理解しながら製作を行って下さい
また、KV-STUDIOでは、命令言語上で”F1”を押すと、【命令語 ヘルプ】が表示されるので確認してください。

MWRITについて

このラダーで使用しているシーケンサはKV-5500(Ver2.0)となっております。

まずは、【MWRIT】についてです。

  • 【S1】には、保存先のファイル名称
  • 【S2】には、保存したいデータの先頭チャンネルを指定
  • 【n】には、【S2】のデータの占有数または文字数を指定する
  • 【D1】には、MWRITのパラメータを指定する
  • 【D2】には、通知ビットを指定する

S1:保存先ファイル名称

【S1】に、保存先のファイル名称を指定します。直接文字列を入力してもいいですが、ファイル名称が異なることも想定して、今回はデータレジスタ(EM)で指定します。今回は、フォルダの直下に書込むことを想定しているため、フォルダのパスなどは省いています。他フォルダに保存する場合は”フォルダ名称¥ファイル名称”としてください

今回は、PLCの内部時計を使用しました。(※:PLC内部時計は、【CM700~】コントロールメモリにあります)

過去に紹介した【DASC】(10進数 アスキーコード変換命令)にて時間を文字列に変換しました。そして、変換した文字列を”年ー月ー日”と表現したかったので、【SADD】(文字列結合命令)を使用して結合して変換しました。【MWRIT】実行後、実際にファイルが生成されます。その時、自動的に上記のファイル名称の末尾に”.CSV”と付きます。(KV-5500で確認済み)

上記で変換した内容は下記のアドレスに代入しました。(参考までに)

  • EM10 : CSVファイル名称 年
  • EM14 : CSVファイル名称 月
  • EM18 : CSVファイル名称 日
  • EM40 : 年-月-日.csv ← CSVファイル名称

過去に【DASC】について紹介しています。

過去に【SADD】について紹介しています。

S2:保存したいデータ

【S2】に、保存したいデータのアドレスを指定します。今回は【RND】(乱数発生命令)にて取得した値(2種類)を、文字列に変換した値を指定します。(※【RND】及び、【FLOAT】、【FASC】については別記事で紹介します。更新後、この記事にもリンク貼付します。)

上記で変換した内容は下記のアドレスに代入しました。(参考までに)

  • EM1000 : 乱数1の文字列

 n:データ数

【n】に、【S2】で指定したアドレスの占有数を指定します。今回指定しているEM1000(文字列)は13占有している(EM1000 ~ EM1012)ので、”13”と設定しました。また、数値ではなく文字(項目やタイトルなど)については、【LEN】(文字列長検出命令)を使用して、その結果を設定すると良いです。

過去に【LEN】について紹介しています。

D1:パラメータ

【D1】に【MWRIT】のパラメータを設定します。パラメータとは下図のことを指します。(今回使用していないパラメータもあります。)

まず、パラメータの【D1】についてですが、こちらは保存するデータの保存形式を設定します。今回は、取得した値を文字列に変換しているので”8”を選択しました。

【D1+1】は書込みモードの設定です。CSVファイル内でどのように表示したいかを設定できます。今回は”0”の追加モードを選択しました。

【D1+2】はオプションの設定です。”改行”や”固定出力”について設定できます。今回は、1つ目の取得値については”0”を選択、2つ目の取得値は、”1”を選択しました。

【D1 +3 ,4】は、書込み位置の指定です。今回は【D1+1】にて”0”を選択しているので、設定はしていません。(上書きなどを行う場合は、設定が必要となります)

【D1+5】は書き込んだデータ数です。これは設定項目ではなく、実際に命令実行後、書き込んだデータ数を格納してくれます。

上記で設定した内容は下記のアドレスに代入しました。(参考までに)

  • EM104~ : MWRITのパラメータ設定

D2:通知ビット

【D2】は通知ビットです。

【D2】は完了通知です。【D2+1】はエラー通知です。基本的には、この完了通知ビットを確認して、次の動作を行うのが良いです。

上記で設定した内容は下記のアドレスに代入しました。(参考までに)

  • MR3100,MR3101 : 通知ビット

ラダー図

では、実際にラダー図(一部)を書くと下記のようになります。(※この全体回路については別記事で紹介します。更新後、この記事にもリンク貼付します。)

さいごに

今回は【MWRIT】について紹介しました。この命令はSDカードやCPUメモリに書き込めるので便利です。

  • 【S1】には、保存先のファイル名称
  • 【S2】には、保存したいデータの先頭チャンネルを指定
  • 【n】には、【S2】のデータの占有数または文字数を指定する
  • 【D1】には、MWRITのパラメータを指定する
  • 【D2】には、通知ビットを指定する
この記事を書いた人
雑魚FA

27歳からこの界隈に足を踏み入れて、日々勉強中の身です。当サイトでは主にFA電気制御に関することを発信していきます。記事についての質問、依頼などがありましたお問い合わせよりご連絡頂けると幸いです。

雑魚FAをフォローする
PLC
スポンサーリンク
シェアする
スポンサーリンク
雑魚FA.com