2016-09-23 10 views
0

私はMatlabとSIMULINKを初めて使いました。これは簡単かもしれません。しかし、私はちょうどインターネット上で答えを見つけることができません。SIMULINkの制御変数

私はSIMULINKモデル(ブロックのグループ)を構築しています。変数としてブロック内の値を設定したいので、mファイルなどから制御することができます。これどうやってするの?

+1

あなたは、単に内の変数を宣言することができますあなたのワークスペースは、これらの変数が何であれ、ブロック内の値を設定します。 – rayryeng

答えて

1

@rayryengは、ブロックのパラメータ値の代わりに変数の名前を入力するだけで、Matlabワークスペースで変数が設定されている値が使用されることを指摘しています。

私がこれを行うときは、モデル初期化コールバック関数の詳細変数hereの変数のデフォルト値を設定したいと思います。そうすれば、あなたのモデルは移植性があり、独自のモデルで実行されます。

0

Simulinkモデルの Constant Blockの 'Value'フィールドに変数名を入力します。一定のブロックは、このようになります。あなたは、変数の値を変更したいときはいつでも、M-ファイルを介して、次のコマンドを実行し、今

enter image description here

(uplimとlowlimを参照してください):

ましょう変数の名前が圧力であり、新しい値が5であると仮定します。

assignin( 'base'、 'pressure'、5); set_param( '定数ブロックのパス'、 '値'、 '圧力');

定数ブロック(または任意のSimulinkブロック)へのパスのようなものになります。モデル名/ Constant2(それはあなたのモデルの最上位レベルで考えると、Constantブロックの数は異なります)

関連する問題