グローバル変数
このページでは、グローバル変数をどのように変換するべきかに関してModelifyに詳しい情報を与えることができます。定数型のグローバル変数をConstantブロック、または、Inport/Outportとして変換するように設定することが可能です。グローバル変数がポインタ型の場合は、Modelifyはポインタの大きさを特定することができない可能性があり、このページを使ってグローバル変数のサイズを設定することができます。
このページ内の表にプロジェクトで使用しているグローバル変数が自動的に追加されていきます。
定数型のグローバル変数の変換方法を変更するには、Simulink ブロックカラム内のセル内をクリックします。すると、Constant ブロックとInport/Outport ブロックのオプションを持つドロップダウンボックスが表示されます。このオプションは定数型のグローバル変数のみに有効です。
ポインタ型グローバル変数のサイズを変更するには、次元カラムのセル内をクリックします。すると、セルを編集することが可能になり、当該のグローバル変数のサイズを入力することができます。グローバル変数が入力のサイズを継承する必要がある場合は、値-1を利用します。
定数型でもポインタ型でもないグローバル変数に対しては設定を行う必要はありません。
このページには次のアイテムも含まれます。
- グローバル定数に対してMATLABの変数を作成するチェックボックス:有効にするとModelifyは「const」と表示された、または一度も記述されていないグローバル変数に対してMATLABの変数を作成します。
- Simulink.Signalのオブジェクトをポートに適用する(Embedded Coder)チェックボックス:グローバル変数に対応するポートのコード生成のオプションを設定することができます。詳細は以下のセクションでご確認下さい。
- 検索ボックス:表の上部にある検索ボックスはグローバル変数カラムでグローバル変数を探すことができます。
Simulink.Signalの生成を設定し、Embedded Coderで使用
以下の手順に従うと、ポートに対するSimulink.Signalのオブジェクトを設定し、コード生成のオプションを指定することができます。
- Simulink.Signalのオブジェクトをポートに適用する(Embedded Coder)チェックボックスにチェックを入れます。すると、表の下の3つのカラムでSimulink.Signalオブジェクトの生成を設定することが可能になります。Modelifyはヘッダーファイルおよび/または定義ファイルのカラムをグローバル変数が宣言/定義された場所の情報を用いて自動的に埋めます。
これらの値は好みに応じて変更することができます。
- Simulink.Signalを作成:グローバル変数に対してSimulink.Signalを作成する必要があるかどうかを示します。表の上部には全ての変数または変数なしに対するSimulink.Signalsを作成するための便利な全てのSimulink.Signalsを作成するボタンとSimulink.Signalsを作成しないボタンがそれぞれ用意されています。
- ヘッダーファイル:グローバル変数のヘッダーファイルを指定します。ファイル拡張子(.h)を使用する必要があります。
- 定義ファイル:グローバル変数の定義ファイルを指定します。ファイル拡張子(.c)を使用する必要があります。
- 設定したグローバル変数を用いる関数を変換します
- Initializationファイル内でSimulink.Signalのオブジェクトが生成されます。Initializationファイル内で手動で変更を実行することが可能ですが、今後の変換が手動の編集をオーバーライドする可能性があることに注意して下さい。
以下の画像はSimulink.Signalのオブジェクトを持つM-ScriptのInitializationファイルの例を示すものです。