0

皆さん!

Simulink の現在のシミュレーション時間を表示しようとしています。私の場合、一度 load_system を使用するとシステムが表示されないことに注意する必要があります。シミュレーションがどのように進行しているかを知ることは非常に役立ちます。

そのためには、関数「ssGetT」を使用する必要があることを読みました。それを実装するために、S-Function ビルダー ブロックを使用していますが、成功しました。つまり、現在のシミュレーション時間を取得できました。

ただし、進行状況バーまたはメッセージ ボックスまたはその他の方法で表示する方法がわからないため、この時点で引っ掛かります。重要、S-Function Builder で C 環境から表示します。

他に方法があればお願いします。=)

誰かが私を助けてくれれば、本当に感謝しています。

4

2 に答える 2

1

更新中...

コマンドビューで進行状況を表示するには、Phil の提案を受けました。

このシステムを symulink に実装しました。ここで、fcn入力はクロックからのシミュレーション時間と最終的なシミュレーション時間です。

Digital ClockブロックでFinal Simulation time/stepsとして定義SampleTimeします。ここで、stepsは進行状況を更新する時間数です。私の場合、100% になるまで 5% ごとに更新するので、stepsは 20 です。

fncブロックは次のとおりです。

function fcn(t,tsim)
coder.extrinsic('fprintf');

persistent firstTime

if isempty(firstTime)
    firstTime = false;
    fprintf('\nSimulating...\n\n');
end

prog = 100*t/tsim;
fprintf(' %1.0f%%',prog);
于 2014-07-23T11:11:56.887 に答える