Simulink ライブラリのようにブロックのリンクが自動的に切れるようなライブラリを作成することはできますか?
6 views (last 30 days)
Show older comments
Simulink ライブラリのように、ライブラリはロックされているが、モデル上へコピーするとライブラリへのリンクが切れるようなオプションを持ったライブラリブロックを作成したいです。
Accepted Answer
MathWorks Support Team
on 18 May 2011
現状では、ユーザーが作成したライブラリ上からコピーしたブロックはライブラリへリンクされてしまい、リンクを切るためには明示的に、マウスや 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 Comments
More Answers (0)
See Also
Categories
Find more on プログラムによるモデル編集 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!