Simulink モデル上にダブルクリ​ックすると様々なコー​ルバックを実行するボ​タンを作成するにはど​うすればよいですか?

6 visualizzazioni (ultimi 30 giorni)
MathWorks Support Team
MathWorks Support Team il 25 Ott 2013
ダブルクリックすることで様々なコール(シミュレーション開始、変数データのファイル保存など)を行うようなブロックを作る方法を教えてください。

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 17 Feb 2021
Modificato: MathWorks Support Team il 17 Feb 2021
ブロックをダブルクリックしたときに特定の動作を実行させたい場合、通常、Subsystem ブロックの OpenFcn コールバック関数を利用します。
下記は、シミュレーション開始ボタンを作成する際の手順です。
1. Ports & Subsystems ライブラリの下の Subsystem ブロックをモデル上に配置
2. Subsystem ブロックをダブルクリックし、サブシステム内の内容をすべて削除
"In1ブロック"、"Out1ブロック"、および"ライン"のすべてを削除します。
3. Subsystemブロックを右クリックし、[サブシステムのマスク] を選択し、マスクエディタ画面を開く
4. [アイコンと端子] タブの [アイコンを描画するコマンド] の欄に下記のコマンドを入力して [OK] ボタンをクリックし、マスクエディタ画面を閉じる
disp('シミュレーション開始')
5. Subsystemブロックを右クリックし、[書式] → [ブロック名の非表示] を選択
6. ブロックを右クリックし、[ブロックプロパティ] を選択、次に [コールバック] タブを選択し、左側のコールバック関数リストから [OpenFcn] を選択し、右側の [コールバック関数の内容:"OpenFcn"] の箇所に、ブロックをダブルクリックすると実行されるコマンドを記述します。
たとえば、ブロックをダブルクリックするとシミュレーションを実行したい場合は、
sim(bdroot)
と記述します。
下記の関連ドキュメントのサンプルをご参照ください。
クリックするとシミュレーションが開始されるボタンと、変数が保存されるボタンの例です。
なお、Simulink のコールバックの詳細は、下記のドキュメントの節をご参照ください。
・Simulinkユーザーガイド > 動的システムのモデル作成 > モデルの作成 > コールバック関数の使用

Più risposte (0)

Categorie

Scopri di più su モデル、ブロックおよび端子のコールバック in Help Center e File Exchange

Tag

Non è stata ancora inserito alcun tag.

Prodotti


Release

R2010b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!