- 締切済み
ラダー回路で文字列データのCSVへの書き込み方法を教えてください
- 三菱Qシリーズシーケンサでは文字列のCSV出力ができないため、アスキーデータをBIN形式に変換してからCSV書き込みを試みましたが、正しい値に変換できませんでした。
- ご質問のアスキーデータ「00001」をCSVファイルに書き込む方法を教えてください。
- データレジスタD0以降に格納されたアスキーデータをCSVファイルに正しく書き込む方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- lumiheart
- ベストアンサー率47% (1141/2405)
回答1です > CSVファイル内 > 12336 12336 49 これをHEX表記すると h3030 h3030 h31 < ちゃんとASCIIで"00001" 正しい値に変換できてるね! ただ単にモニタ表記をHEXするのを忘れてるダケじゃん こんなペースじゃあサービス残業から抜け出れないね
- lumiheart
- ベストアンサー率47% (1141/2405)
本質問シリーズは https://www.mitsubishielectric.co.jp/fa/download/index.html MELSEC-Q/L プログラミングマニュアル(共通命令編)SH-080804 (23.74MB) 781/1072ページ 指定ファイルへデータ書込み SP.FWRITE についての質問なのでしょうか? この命令文を使用した事が無いのでアレですが マニュアルを読む限りではASCIIでもバイナリでも読み書き可能なようですが? 具体的にどんな構文でどんなデータを書きたいのでしょう? 以下を開示して頂ければそれなりに検証可能です CPU型番 元データ配列 命令文 実際に書き込まれた配列 恐らく、命令を実行した結果が自分の期待した結果と異なるので この長い質問シリーズになってると思われる 長時間に亘ってサービス残業してるのを見てる方も辛いので、 解決に向かって前進させたい 無駄な質問文をダラダラと書かれても解決には繋がらない
補足
ご返答の通り、SP.FWRITE命令でデバイス値をCSVファイルに書き込むのが目的なのですが、 書込先のCSVファイル内だとASCIIコードが10進数に変換されて表示されてしまうのです。 元のデバイス値 "00" "00" "1" ↓ CSVファイル内 12336 12336 49 ですので、一旦ASCIIコード値をBIN値に変換してから、それをSP.FWRITEで書き込もうと 考えたのですが、質問文のような結果になるという訳です。
補足
表記が違うだけで、変換すれば所望のASCIIコード値になっているということは承知しております。 私が望むのは、この"00001"という表記のままCSVファイル内にデータを書き込みたい、ということです。 質問の意図が分かりずらくなってしまい、申し訳ありません。