生成されたコードの展開
チュートリアルのこのステップでは、生成されたコードを展開するメカニズムについて確認します。
メイン プログラム例
生成されたコードの展開を容易にするために、コード ジェネレーターでは、開始時にすぐに利用できる main
プログラム例が生成されます。main
プログラム例はファイル ert_main.c
にあります。アプリケーション用に生成されたアルゴリズム コード (モデルのエントリポイント関数) を使用するには、ert_main.c
で定義されている不完全な関数をコピーし、カスタムのスケジューリング コードを挿入して関数を完成します。
モデル RollAxisAutopilot
に対して生成された main
プログラム例を確認します。
まだ開いていない場合は、モデル
RollAxisAutopilot
のコピーを開きます。アプリ ギャラリーで [Embedded Coder] をクリックします。
コードを再度生成します。
コード ビューで、ファイル
ert_main.c
を選択します。[検索] フィールド内をクリックし、関数
rt_OneStep
を選択します。不完全なラッパー関数
rt_OneStep
を確認します。この関数は、モデルの実行エントリポイント関数RollAxisAutopilot_step
を呼び出します。アプリケーション コードでrt_OneStep
を呼び出し、各実行サイクル中にモデルのアルゴリズムを実行します。[検索] フィールド内をクリックし、関数
main
を選択します。不完全な
main
関数の例を確認します。この関数では、rt_OneStep
およびモデルの他のエントリポイント関数をアプリケーション コードで呼び出す際の順序とコンテキストが定義されています。
詳細については、Deploy Applications to Target Hardwareを参照してください。
生成されたコード ファイルの移動
Embedded Coder® には、モデルの静的なコード ファイルと生成されたコード ファイルを別の開発環境に移動するための pack-n-go ユーティリティが用意されています。ファイルの移動は、システムまたは統合開発環境 (IDE) に MATLAB® 製品および Simulink® 製品が含まれていない場合に必要です。このユーティリティでは、ファイルは圧縮ファイルとしてパッケージ化され、移動先では標準 zip
ユーティリティを使って解凍することができます。グラフィカル インターフェイスやプログラミング インターフェイスから pack-n-go ユーティリティを適用できます。詳細については、生成コードの移動または共有を参照してください。
コード生成レポートの共有とアーカイブ
クイック スタート ツールでは、HTML コード生成レポートを生成するようにモデルが設定されます。モデルとコードに関する情報の概要に加え、レポートには次が含まれます。
サブシステム レポート
生成コード ファイル
コード インターフェイス レポート
トレーサビリティ レポート
静的なコード メトリクス レポート
コード置換レポート
コーダー仮定レポート
オプションで、モデルの Web ビュー
このレポートは、Simulink 環境以外で使用できるため、共有またはアーカイブ目的に適しています。レポートはツールから開くか、[C コード] タブで [レポートを開く] をクリックして開くことができます。
コード生成レポート ファイルの既定の場所は、ビルド フォルダーの html
サブフォルダー
です。この場合、model
_target
_rtw/html/
は、[コード生成] ペインで指定された [システム ターゲット ファイル] の名前になります。最上位の HTML レポート ファイルの既定名は、target
index.html
です。
その他のオプションの確認
以下のリンクを使用して、その他生成された量産コードのカスタマイズ、検証および展開の方法を確認できます。
タスク | リファレンス |
---|---|
可読性が高く効率的なコードをモデルからすばやく生成する | クイック スタート ツールを使用したコードの生成 |
コード生成に向けたモデルの設計と構成の考慮 | アーキテクチャとコンポーネントの設計 |
生成されたエントリポイント関数に関する学習 | |
コードの再利用 | コードの再利用のコンポーネント化手法の選択 |
モデルのデータ要素と関数に対するカテゴリに既定の構成を指定する | Configure Default C Code Generation for Categories of Data Elements and Functions |
別個のエントリポイント関数の既定の構成をオーバーライドする | 個々の C エントリポイント関数に対する名前の設定および個々のステップ関数に対する名前と引数の設定 |
別個のデータ要素の既定の構成をオーバーライドする | モデル インターフェイス要素の C コード生成の構成およびStruct ストレージ クラスを使用してパラメーター データを構造体に整理する |
ノーマル モードのシミュレーション結果を、ソフトウェアインザループ (SIL) またはプロセッサインザループ (PIL) のシミュレーション結果を比較して数値が等価か確認する | SIL シミュレーションおよび PIL シミュレーションおよびChoose a SIL or PIL Approach |
SIL シミュレーションまたは PIL シミュレーション中の生成コードのコード カバレッジ メトリクスの収集 | コード カバレッジ |
生成された main コード例を、生成された実行可能プログラムを展開する開始点として使用する | Deploy Applications to Target Hardware |