質問: simulink corderで作ったーコードの中身を都度変えたい simulinkcoderでcコード化して以下のhpの流れでexe化にしました。 https://jp.mathworks.com/help/dsp/ug/generate-c-code-from-simulink-model.html#responsive_offcanvas exeも正常に動いたのですが、simulinkモデルではfrom workspaceでmatlab変数からデータを読み取っています。 cコード化するとその時の変数内容が表記されてしまいます。 任意で毎回値を変えたい時はどのようにすればよいのでしょうか。 ・モデルの入力は変数によって毎回変わる。 ・cコードにすると(exe化)コード化にした時の変数の値が入り値を変えられない。 宜しくお願いします。
回答: inportブロックを用いることで外部からの入力が行えるようになります。 サンプルモデルを添付しましたのでご確認ください。 今回の場合は、シミュレーション確認用のモデル「simulation_model」と、コード生成対象のモデル「controller_model」に分けています。「simulation_model」からモデル参照で「controller_model」を呼んでいます。 from workspaceは「simulation_model」の方で使っています。 生成されたコードでは、「controller_model_u.signal」に入力したい値を代入すればよいです。