コード生成のためのevalinの代替方法について

9 Ansichten (letzte 30 Tage)
sshhssmm
sshhssmm am 4 Jun. 2019
Kommentiert: sshhssmm am 6 Jun. 2019
simulink におけるビルド時に matlab functionブロックにてコード生成時にエラーが発生しています。
エラーが発生している箇所は下記のような箇所であり、C/C++コード生成においてサポートされていないevalinを使用しているためです。
やりたいことは ベースワークスペースのある変数B、を関数ワークスペース変数Aに入力したいです。
コマンド上は右のような形:変数A = evalin('base',変数B);
前述のようなevalinの代替方法に関してお教え願います。
matlab function,matlab r2015b ,

Akzeptierte Antwort

Yoko
Yoko am 6 Jun. 2019
ベースワークスペースの値を MATLAB Function 内で使用するということであれば、MATLAB Function の入力引数として取り込むことで、利用可能になります。
下記のような形で使えます。
function y = fcn(x,'変数A')
y = 変数A * x;
入力引数として定義するには、MATLAB Functionエディタにある 'データの編集' を開き、変数を追加し、取り込みたい変数名を定義して、スコープを 'パラメータ' に設定します。
関連ドキュメントが、下記ドキュメントページにもあります。
  1 Kommentar
sshhssmm
sshhssmm am 6 Jun. 2019
回答ありがとうございます。頂きましたアドバイスに応じて、MATLAB Function を修正し、対応したところ、問題なくビルドでき、出力値の妥当性も確認できました。
早急回答ありがとうございます。

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Simulink Function finden Sie in Help Center und File Exchange

Produkte


Version

R2015b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!