Simulink ライブラリのようにブロックのリンクが自動的に切れるようなライブラリを作成することはできますか?
6 ビュー (過去 30 日間)
古いコメントを表示
Simulink ライブラリのように、ライブラリはロックされているが、モデル上へコピーするとライブラリへのリンクが切れるようなオプションを持ったライブラリブロックを作成したいです。
採用された回答
MathWorks Support Team
2011 年 5 月 18 日
現状では、ユーザーが作成したライブラリ上からコピーしたブロックはライブラリへリンクされてしまい、リンクを切るためには明示的に、マウスや SAVE_SYSTEM コマンドを使用してリンクを切らなければなりません。
SAVE_SYSTEM の詳細は、help save_system とタイプしてください。
代替案として、2 通りの方法を紹介します。
1 つは、ライブラリの代わりにモデルを作成する方法です。この場合、モデルからコピーされたブロックは、リンクされません。この方法は、Simulink が2.1 のバージョン以前の Simulink ライブラリの方法です。この方法の短所は、ライブラリの中のブロックの変更がロックされない点です。
2 つ目の方法は、下記コマンドを使って、各ブロックのコピー関数(Copyfcn)にリンクを解除する設定を与える方法です。
set_param('libname/blockname','Copyfcn','set_param(gcb,''LinkStatus'',''none'')')
ここで、libname と blockname はユーザーのライブラリとブロック名に置き換える必要があります。
なお、ライブラリに上記変更を与える場合、まずは、ライブラリのロックを解除し、上記コマンドを実行、最後にまた、ライブラリのロックをオンに設定します。
set_param(gcs,'Lock','off')
set_param('libname/blockname','Copyfcn','set_param(gcb,''LinkStatus'',''none'')')
set_param(gcs,'Lock','on')
0 件のコメント
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!