このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
MATLAB Function
R2026aMATLAB コードを Simulink モデルに含める
ライブラリ:
Simulink /
User-Defined Functions
HDL Coder /
User-Defined Functions
説明
MATLAB Function ブロックでは、Simulink® モデルで実行される MATLAB® 関数を記述できます。MATLAB 関数はシミュレーション中に各タイム ステップで実行されます。Simulink モデルへの MATLAB コードの統合の詳細については、Simulink での MATLAB Function ブロックを使用した MATLAB 関数の実装を参照してください。Simulink Coder™ のライセンスがある場合は、MATLAB Function ブロックから Simulink Coder ターゲット用の C/C++ コードを生成することもできます。
MATLAB Function ブロックをダブルクリックして MATLAB Function ブロック エディターを開き、MATLAB 関数を記述します。また、モデル エクスプローラーまたは [シンボル] ペインを使用して、変数の定義、入力トリガーの追加、および関数呼び出し出力の作成も実行できます。詳細については、Create MATLAB Function Block Variables、MATLAB Function ブロックの入力トリガーの管理およびMATLAB Function ブロックの関数呼び出しの出力の管理を参照してください。
[シンボル] ペインで、ブロック入力を端子ではなく Simulink パラメーターとして宣言できます。MATLAB Function ブロックは、入力、出力、およびパラメーターについて、タイプとサイズの継承もサポートします。それらのプロパティは明示的に指定できます。MATLAB Function ブロック内の変数のデータ型の指定、MATLAB Function ブロック変数のサイズの指定、およびパラメーター変数を使用した MATLAB Function ブロック内でのワークスペース データへのアクセスを参照してください。
MATLAB Function ブロックが含まれるモデルをシミュレートするときに、ソフトウェアはブロックからバイナリ コードまたは C/C++ MATLAB 実行可能 (MEX) コードを生成し、このコードをモデルに統合します。MATLAB Function ブロックでは、Simulink の外部にある MATLAB コードから C/C++ コードを生成するために使用する、MATLAB Coder と同じインフラストラクチャが使用されます。したがって、MATLAB Function ブロックのコードでは、コード生成でサポートされる MATLAB の表記法を使用する必要があります。MATLAB Function ブロックのコードと統合に関する制限を参照してください。
データの可視化をサポートするために、MATLAB Function ブロックは、シミュレーションについてのみ、MATLAB 関数の呼び出しをサポートします。MATLAB Function ブロックでの MATLAB エンジンを使用した関数呼び出しの実行を参照してください。Simulink Coder を使用してコードを生成する場合、Simulink の入力または出力に直接影響しない関数呼び出しは生成コードに表示されません。
例
拡張例
制限
端子
入力
出力
パラメーター
ブロックの特性
ヒント
以下で定義された関数を呼び出すことができます。
Simulink Function ブロック。
チャート内の Stateflow® 関数。チャート内の関数を呼び出すには、[チャート レベルの関数をエクスポート] プロパティと [エクスポートされた関数をグローバルに可視として扱う] プロパティを有効にします。
既定では、MATLAB Function ブロックに
%#codegen命令は含まれませんが、含まれている場合と同様にエラーがチェックされます。MATLAB Function ブロックに%#codegen命令を追加しても、エラー チェックには影響しません。詳細については、コンパイル命令 %#codegenを参照してください。


