主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

数据存储内存

データストアの定義

  • ライブラリ:
  • 金宝appSimulink /信号路由

  • 内存块

説明

数据存储内存ブロックは,名前付き共有データストアを定義して初期化します。共有データストアとは,同じデータストア名を指定する数据存储读取ブロックおよび数据存储写ブロックが使用できるメモリ領域です。

データストアを定義する数据存储内存ブロックの位置によって,そのデータストアにアクセスできる数据存储读取ブロックおよび数据存储写ブロックが決まります。

  • 数据存储内存ブロックが“最上位システム”内にある場合,数据存储读取ブロックと数据存储写ブロックはモデル内のどの位置にあっても,データストアにアクセスできます。

  • 数据存储内存ブロックが“サブシステム”内にある場合,モデルの階層構造内で同じサブシステムかそれより下にあるサブシステム内の数据存储读取ブロックと数据存储写ブロックが,データストアにアクセスできます。

数据存储读取ブロックと数据存储写ブロックは,模型ブロックを含むモデル内にあるか,参照モデル内にある数据存储内存ブロックにはアクセスできません。

为每个子系统に数据存储内存ブロックを含めないでください。

データストアから正しい結果を得るためには,データストアの読み取りと書き込みが,所定の順序で行われる必要があります。詳細は,以下を参照してください。

数据存储内存ブロックに加えて,またはその代わりとして,金宝app仿真软件。信号オブジェクトを使用してデータストアを定義することができます。信号オブジェクトのある”“ベースワークスペースに定義されたデータストアは,”“グローバルデータストアです。グローバルデータストアは,すべての参照モデルを含むすべてのモデルにアクセスできます。詳細については,データストアを参照してください。

数据存储读取ブロック,数据存储写ブロックまたは数据存储内存ブロックを選択して,それに関連するブロックを強調表示できます。

パラメーター

すべて展開する

メイン

このブロックで定義するデータストアの名前を指定します。同じ名前をもつ数据存储读取ブロックと数据存储写ブロックは,このブロックによって初期化されたデータストアから読み取りおよび書き込みを行うことができます。この名前は,数据存储内存ブロックを表すことも,データストアになるように定義された記号オブジェクトを表すこともできます。

プログラムでの使用

ブロックパラメーターDataStoreName
:文字ベクトル
' A ' |…
既定の設定:“一个”

数据存储读取ブロックと数据存储写ブロックがモデル内で使用するすべての場所のこのデータストアの名前を変更します。

制限

次の場合,[すべての名前の変更)を使用してデータストアの名前を変更することはできません。

  • データストア用に生成されたコードを制御するのにワークスペース内の金宝app仿真软件。信号オブジェクトを使用している

  • データストアを定義するのに数据存储内存ブロックではなく金宝app仿真软件。信号オブジェクトを使用している

代わりに,モデルエクスプローラーで対応する金宝app仿真软件。信号オブジェクトの名前を変更しなければなりません。例については,信号オブジェクトで定義されるデータストアの名前の変更を参照してください。

現在のブロックと同じデータストア名をもち,現在のシステムまたはモデルの階層構造内でそれより下にあるサブシステム内にある数据存储读取ブロックと数据存储写ブロックがすべてリストされます。ブロックパスをクリックすると、モデル内のそのブロックが表示および強調表示されます。

信号的属性

データストアに初期値を指定します。[最小値]パラメーターは,このパラメーターの最小値を指定し,[最大値]パラメーターは最大値を指定します。

非スカラー値を指定して,[次元]-1(既定値)に設定した場合,データストアの次元は配列と同じになります。データストアに(数据存储写ブロックを使用して)書き込むデータはこれらの次元でなければなりません。

[次元]パラメーターを-1以外の値に設定した場合,初期値がスカラーまたはMATLAB®構造体である場合を除き,初期値の次元と指定した次元は一致しなければなりません。スカラーを指定した場合,データストアの各要素は,初期値としてスカラーを使用します。この手法を使用して,初期値の次元をデータストアの次元に手動で合わせることなく,各要素に同じ初期値(指定したスカラー)を適用します。

このブロックを使用して非バーチャルバス信号を初期化するには,初期値をMATLAB構造体として指定し,モデルコンフィギュレーションパラメーターの指定不足の初期化の検出[簡易]に設定します。構造体を使用した非バーチャルバス信号の初期化についての詳細は,バス要素の初期条件の指定を参照してください。

プログラムでの使用

ブロックパラメーターInitialValue
:文字ベクトル
:スカラー|ベクトル|行列| N次元配列
既定の設定:' 0 '

ブロックが出力する最小値を指定します。既定値は[](指定なし)です。この数値は有限の実数で双のスカラー値でなければなりません。

メモ

このブロックのデータ型としてバスオブジェクトを指定した場合,ブロックのバスデータの最小値を設定しないでください。金宝app仿真软件によりこの設定は無視されます。代わりに,データ型として指定したバスオブジェクトのバス要素の最小値を設定してください。バス要素の[最小値]プロパティの詳細については,金宝app仿真软件。BusElementを参照してください。

金宝app®は,最小値を使って以下を行います。

プログラムでの使用

ブロックパラメーターOutMin
:文字ベクトル
:スカラー
既定の設定:“[]”

ブロックが出力する最大値を指定します。既定値は[](指定なし)です。この数値は有限の実数で双のスカラー値でなければなりません。

メモ

このブロックのデータ型としてバス オブジェクトを指定した場合、ブロックのバス データの最大値を設定しないでください。金宝app模拟によりこの設定は無視されます。代わりに、データ型として指定したバス オブジェクトのバス要素の最大値を設定します。バス要素の [最大値] プロパティの詳細については、金宝app仿真软件。BusElementを参照してください。

金宝app仿真软件は,最大値を使って以下を行います。

プログラムでの使用

ブロックパラメーターOutMax
:文字ベクトル
:スカラー
既定の設定:“[]”

出力データ型を指定します。以下を指定可能です。

  • データ型継承ルール(例:继承:汽车)。

  • 組み込みデータ型名(例:)。

  • データ型オブジェクト名(例:金宝app仿真软件。NumericTypeオブジェクト)。

  • データ型に評価される式(例:fixdt (1 16 0))。バスオブジェクトは式の中ではデータ型としては指定せず,总线:<对象名称>を使用してバスデータ型を指定してください。

[データ型アシスタントを表示)ボタンをクリックして,データ型の属性の設定に役立つ[データ型アシスタント]を表示します。詳細については,データ型アシスタントを利用したデータ型の指定を参照してください。

プログラムでの使用

ブロックパラメーター:OutDataTypeStr
型:文字ベクトル
値:继承:auto' | 'double' | 'single' | 'half' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'boolean' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | 'string' | 'Enum: '
既定の設定:“继承:汽车”

固定小数点ツールが,ブロックに指定した[出力]データ型をオーバーライドしないようにするには,このパラメーターを選択します。詳細については,(出力データ型の設定をロックする]の使用(定点设计师)を参照してください。

プログラムでの使用

ブロックパラメーター:LockScale
型:文字ベクトル
値:”从“|”“
既定の設定:“关闭”

データストアの次元。既定の値-1を使用すると,[初期値]パラメーターでデータストアの次元を設定できます。ただし,この場合,初期値にスカラー拡張を使用することはできません。必要な次元数をもつ配列を使用して初期値を指定しなければなりません。

-1以外の値を使用すると,初期値をスカラー(スカラー拡張用)またはMATLAB構造体として指定した場合を除き,[初期値]パラメーターと同じ次元を指定します。データストアがバス配列を表し、初期値に MATLAB 構造体を使用している場合、次元を指定して、この構造体でバス配列を初期化できます。

プログラムでの使用

ブロックパラメーター:
型:文字ベクトル
値:スカラー|ベクトル|行列
既定の設定:' 1 '

データストアがベクトルの初期値を1次元として解釈するよう指定します。

既定では,MATLABはベクトルデータを2次元の行列として表現します。たとえば、MATLABはベクトル(1 2 3)を1行3列の行列として表現します。

このパラメーターを選択すると,データストアは2次元ではなく1次元のみを使用してベクトルデータを表現します。たとえば,(1 2 3)を初期値に指定した場合,データストアは3つの要素をもつ1次元ベクトルを格納します。

詳細については,ソースブロックの出力の次元の決定を参照してください。

プログラムでの使用

ブロックパラメーターVectorParams1D
:文字ベクトル
”从“|”“
既定の設定:“上”

データストアに格納される値の数値型(実数または複素数)を指定します。

プログラムでの使用

ブロックパラメーター:SignalType
型:文字ベクトル
値:'auto' | 'real' | 'complex'
既定の設定:“汽车”

単一のモデル参照階層で,複数の模型ブロックを使用して数据存储内存ブロックが含まれるモデルを参照する場合,既定では,参照モデル(各模型ブロック)の各インスタンスはデータストアの個別のコピーに対して読み書きを行います。[モデルインスタンス間で共有する]を選択すると,個別のコピーを操作する代わりに,すべてのインスタンスが同じデータストアに対して読み書きを行います。

モデルコンフィギュレーションパラメーターの[コードインターフェイスのパッケージ化)(再利用可能な関数)に設定し,モデル(金宝app仿真软件编码器™)から再呼び出し可能なコードを生成すると,[モデルインスタンス間で共有する]が選択されているデータストアがエントリポイント関数を直接アクセスして生成したグローバルシンボルとしてコードに表示されます。たとえば,グローバルシンボルはグローバル変数またはグローバル構造体変数のフィールドです。したがって,エントリポイント関数に対してコードが行う各呼び出し(モデルの各インスタンス)でデータが共有されます。

例については,再利用可能なアルゴリズムのインスタンス間でのデータストアの共有を参照してください。詳細については,参照モデルインスタンス間でのデータの共有を参照してください。

プログラムでの使用

ブロックパラメーター:ShareAcrossModelInstances
型:文字ベクトル
値:”从“|”“
既定の設定:“关闭”

モデルをコンパイルする際に仿金宝app真软件が,モデルワークスペースとベースワークスペースで同じ名前をもつ金宝app仿真软件。信号オブジェクトを検索するよう指定します。詳細については,記号の解釈で説明されています。金宝app仿真软件がそのようなオブジェクトを見つけられない場合,コンパイルは停止してエラーが発生します。そうでない場合には,金宝app仿真软件は信号オブジェクトの属性を対応する数据存储内存ブロックの属性と比較します。ブロックとオブジェクトの属性が矛盾する場合,金宝app仿真软件はモデルコンパイルを停止し,エラーを表示します。

プログラムでの使用

ブロックパラメーター:状态必须解析为SignalObject
型:文字ベクトル
値:”从“|”“
既定の設定:“关闭”

診断

このタイムステップで,モデルがデータを書き込んでいないデータストアからデータを読み取ろうとしたときに実行する診断アクションを選択します。[モデルコンフィギュレーションパラメーター][診断][データ有効性)ペインの(数据存储内存ブロック]セクションの書き込み前の読み取りを検出診断も参照してください。

  • なし——応答しません。

  • 警告——警告が表示され,シミュレーションは続行されます。

  • エラー——シミュレーションを終了し,エラーを表示します。

プログラムでの使用

ブロックパラメーター:ReadBeforeWriteMsg
型:文字ベクトル
値:'无' | 'warning' | 'error'
既定の設定:“警告”

モデルがデータストアからデータを読み取った後,現在のタイムステップでモデルがデータストアにデータを書き込もうとしたときに,行う診断アクションを選択します。[モデルコンフィギュレーションパラメーター][診断][データ有効性)ペインの(数据存储内存ブロック]セクションの読み取り後の書き込みを検出診断も参照してください。

  • なし——応答しません。

  • 警告——警告が表示され,シミュレーションは続行されます。

  • エラー——シミュレーションを終了し,エラーを表示します。

プログラムでの使用

ブロックパラメーター:WriteAfterReadMsg
型:文字ベクトル
値:'无' | 'warning' | 'error'
既定の設定:“警告”

現在のタイム ステップで、モデルが 2.度連続してデータ ストアにデータを書き込もうとしたときに、行う診断アクションを選択します。[モデルコンフィギュレーションパラメーター][診断][データ有効性)ペインの(数据存储内存ブロック]セクションの書き込み後の書き込みを検出診断も参照してください。

  • なし——応答しません。

  • 警告——警告が表示され,シミュレーションは続行されます。

  • エラー——シミュレーションを終了し,エラーを表示します。

プログラムでの使用

ブロックパラメーター:WriteAfterWriteMsg
型:文字ベクトル
値:'无' | 'warning' | 'error'
既定の設定:“警告”

ログ

シミュレーション時にこの信号の値をMATLABワークスペースに保存するには,このオプションを選択します。詳細については,信号のログを参照してください。

プログラムでの使用

ブロックパラメーター:数据采集
型:文字ベクトル
値:”从“|”“
既定の設定:“关闭”

リストボックスと編集フィールドで構成されるこのコントロールのペアを使用して,ログに記録された信号データに関連付けられた名前を指定します。

既定の設定で,金宝app仿真软件は信号名をログ名として使用します。独自のログ名を指定するには,リストボックスから[カスタム]を選択し,隣接する編集フィールドにカスタム名を入力します。

プログラムでの使用

ブロックパラメーター:DataLoggingNameMode
型:文字ベクトル
値:“SignalName”|“定制”
既定の設定:''

メモ

DataLoggingNameMode自定义に設定すると,DataLoggingNameパラメーターを使用して,ログに記録された信号データに関連付けられた名前を指定しなければなりません。

ブロックパラメーター:DataLoggingName
型:文字ベクトル
値:文字ベクトル
既定の設定:''

最後のN個のデータ点を除いて,すべて破棄します。ここで,Nは隣の編集フィールドに入力された値です。詳細については,データストアのログ記録を参照してください。

プログラムでの使用

ブロックパラメーター:DataLoggingMaxPoints
型:文字ベクトル
値:非ゼロの整数
既定の設定:“5000”

N個ごとに1個のデータ点のログを作成します。ここで,Nは隣の編集フィールドに入力された値です。たとえば,ステップサイズが0.1の固定ステップソルバーをモデルで使用するとします。このオプションを選択し,既定の間引き値(2)を受け入れると,仿金宝app真软件はこの信号のデータ点を時刻0.00.20.4,などで記録します。詳細については,データストアのログ記録を参照してください。

プログラムでの使用

ブロックパラメーター:DataLoggingLimitDataPoints
型:文字ベクトル
値:非ゼロの整数
既定の設定:' 2 '

ブロックの特性

データ型

布尔|公共汽车||枚举|不动点|一半|整数||字符串

直接フィードスルー

はい

多次元信号

はい

可変サイズの信号

いいえ

ゼロクロッシング検出

いいえ

拡張機能

C / c++コード生成
金宝app仿真软件®编码器™を使用してCおよびc++コードを生成します。

固定小数点の変換
定点设计师™を使用して固定小数点システムの設計とシミュレーションを行います。

R2006aより前に導入