質問: simulinkで作成したpwm信号をcsvで出力するにはどうしたらいいですか? matlabのこちらの記事 https://jp.mathworks.com/help/simulink/slref/pulse-width-modulation-using-matlab-system-block.html で紹介されているsimulinkを用いてpwm信号を作成したのですがこれを時間と値の二列のcsvファイルに書き出ししたいです。 ログの作成を配列にしたところそれはできないというエラーが出てしまい配列出力もできません。 どのような処置をすれば配列データもしくはcsvとして出力できますか?
回答: shogo tanaka様 モデルを開くと、「モデル設定」でsimulink.simulationoutputが設定されているので、その結果を使ってみます。 モデルを開いてシミュレーション実行した後、次のスクリプトを実行すると、.csvファイルが出力します。スクリプトの各行の説明はコメント文に記載いたしました。 % 1.コンフィギュレーションセットで設定されているsimulink.simulationoutputを使ってout2ポートの値を取得 data = out.yout.signals.values(:); % 2.simulink.simulationoutputの時間データを取得 time = out.yout.time; % 3. 1,2で取得した値をテーブルデータに格納 tocsvdata = table(time,data); % 4. 3で格納したテーブルデータを.csvファイルに出力 writetable(tocsvdata,'pwmdata.csv'); ログ信号の設定を行っていただいても同様の処理で.csv出力は可能かと思います。 ご検討ください。 stozaki