2016-08-27 62 views
0

私はSimulinkで問題があります。変数 "k"を定数ブロック(開始値k = 1)にして、シミュレーションボタンをクリックするたびに "k"をインクリメントしたい"k"が4になるまで、それは再び1にリセットされます。Simulinkで変数をインクリメント

私はすでにこれを試しています(atached Image 1を参照してください)。しかし、この場合、シミュレーション時間が終了するまで(atached Image 2を参照してください)、それは長く必要です。

enter image description here enter image description here

私はあなただけの値にシミュレーションを実行するたびに更新したい場合は、あなたの最良のオプションはInitFcnにいくつかのコードを置くことであろう任意のヘルプに多くの感謝ジェイ

答えて

2

をapreciateます折り返し電話。

これは、モデルが初期化されるたびに実行される(オプションの)コードブロックです。これを行うにはFile > Model Properties > Model Properties

[コールバック]タブを選択し、次に左のInitFcnコールバックを選択します。次のコードは、ワークスペースにまだkが存在するかどうかをチェックし、そうでない場合は設定し、そうであればインクリメントします。コールバックに入れて定数ブロック値をkに設定すると、必要な動作が得られます。

if ~exist('k', 'var') 
    k = 1; 
else 
    k = k + 1; 
end 

if k>4 
    k = 1; 
end 
+0

クイードレスポンスのためのKhalidさん、ありがとうございます。 – Sami

+1

@Sam!似たような問題を抱えている他の人がそれを試してもらうために、私の答えがそのトリックをしたらうまくいったとマークしてください。おかげで – kabdulla

+0

ニースのソリューション! :) –

関連する問題