このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Simulink.ModelReference.protect
参照先のモデルの内容を見えなくして知的財産を隠す
構文
説明
Simulink.ModelReference.protect(
は、指定された model
)model
から保護モデルを作成します。保護モデルは、現在の作業フォルダーに配置されます。保護モデルの名前は元のモデルと同じです。拡張子 .slxp
をもちます。
Simulink.ModelReference.protect(
は、1 つ以上の名前と値のペアの引数で指定された追加のオプションを使用します。model
,Name,Value
)
[
は、保護モデルのハーネス モデルを作成します。ハーネス モデルのハンドルを harnessHandle
] = Simulink.ModelReference.protect(model
,'Harness
',true)harnessHandle
で返します。
[~ ,
は、保護モデルで使用されるベース ワークスペース変数の名前を含む cell 配列を返します。neededVars
] = Simulink.ModelReference.protect(model
)
例
参照モデルの保護
参照モデルを保護し、保護モデルを現在の作業フォルダーに配置します。
openExample('sldemo_mdlref_bus'); model= 'sldemo_mdlref_counter_bus' Simulink.ModelReference.protect(model);
sldemo_mdlref_counter_bus.slxp
という名前の保護モデルが作成されます。保護モデル ファイルは現在の作業フォルダーに配置されます。
指定したフォルダーへの保護モデルの保存
参照モデルを保護し、保護モデルを指定したフォルダーに保存します。
openExample('sldemo_mdlref_bus'); model= 'sldemo_mdlref_counter_bus' Simulink.ModelReference.protect(model,'Path','C:\Work');
sldemo_mdlref_counter_bus.slxp
という名前の保護モデルが作成されます。この保護モデル ファイルは、C:\Work
に配置されます。
保護モデルのコード生成
参照モデルを保護し、ノーマル モードでモデル用のコードを生成し、コードを難読化します。
openExample('sldemo_mdlref_bus'); model= 'sldemo_mdlref_counter_bus' Simulink.ModelReference.protect(model,'Path','C:\Work','Mode','CodeGeneration',... 'ObfuscateCode',true);
sldemo_mdlref_counter_bus.slxp
という名前の保護モデルが作成されます。この保護モデル ファイルは、C:\Work
フォルダーに配置されます。保護モデルは親モデルの子として実行されます。保護モデル用に生成されたコードは難読化されます。
保護モデル用の HDL コードの生成
参照モデルを保護し、その HDL コードをノーマル モードで生成します。
openExample('hdlcoder/ParentModelWithModelReferenceExample') parent_model= 'hdlcoder_protected_model_parent_harness'; reference_model_to_protect = 'hdlcoder_referenced_model_gain'; Simulink.ModelReference.protect(reference_model_to_protect, ... 'Mode','HDLCodeGeneration')
hdlcoder_referenced_model_gain.slxp
という名前の保護モデルが作成されます。この保護モデル ファイルは、親モデルおよび参照モデルと同じフォルダーに配置されます。保護モデルは親モデルの子として実行されます。
[モード] を CodeGeneration
に設定する共に [hdl] オプションを true
に設定し、作成する保護モデルの C コード生成と HDL コード生成の両方のサポートを有効にします。
openExample('hdlcoder/ParentModelWithModelReferenceExample') parent_model= 'hdlcoder_protected_model_parent_harness'; reference_model_to_protect = 'hdlcoder_referenced_model_gain'; Simulink.ModelReference.protect(reference_model_to_protect, ... 'Mode','CodeGeneration','hdl',true)
保護モデルのコード可視性の制御
保護モデル用に生成されたコードで、バイナリ ファイルとヘッダーのみを表示することによってコードの可視性を制御します。
openExample('sldemo_mdlref_bus'); model= 'sldemo_mdlref_counter_bus' Simulink.ModelReference.protect(model,'Mode','CodeGeneration','OutputFormat',... 'CompiledBinaries');
sldemo_mdlref_counter_bus.slxp
という名前の保護モデルが作成されます。保護モデル ファイルは現在の作業フォルダーに配置されます。保護モデル用に生成されたコードでは、バイナリ ファイルとヘッダーのみが表示されます。
保護モデル用のハーネス モデルの作成
保護モデル用にハーネス モデルを作成して、HTML レポートを生成します。
openExample('sldemo_mdlref_bus'); modelPath= 'sldemo_mdlref_bus/CounterA' [harnessHandle] = Simulink.ModelReference.protect(modelPath,'Path','C:\Work',... 'Harness',true,'Report',true);
sldemo_mdlref_counter_bus.slxp
という名前の保護モデルが作成され、名称未定義のハーネス モデルも作成されます。この保護モデル ファイルは、C:\Work
フォルダーに配置されます。このフォルダーには、HTML レポートも含まれます。ハーネス モデルのハンドルは、harnessHandle
で返されます。
保護モデルに必要な変数の特定
保護モデルを参照するモデルをシミュレートするには、ベース ワークスペースまたはデータ ディクショナリで変数の定義が必要になることがあります。たとえば、sldemo_mdlref_counter_bus
モデルには、モデルのルートの入力端子と出力端子のバスを指定する変数が必要です。保護モデルを出荷する際は、必要な変数の定義を含めないとモデルを使用できません。
ヒント
必要な変数の定義を保護モデルとともに自動的にプロジェクトにパッケージ化するには、Project
を true
に設定します。
保護モデルを生成し、必要な変数を調べます。
openExample('sldemo_mdlref_bus'); model= 'sldemo_mdlref_counter_bus' [~, neededVars] = Simulink.ModelReference.protect(model)
2 番目の出力の neededVars
で受信者に送信しなければならない変数が特定されます。neededVars
の値は、保護モデルに必要な変数の名前を含む cell 配列です。ただし、この cell 配列には、モデルには必要がない変数の名前も含まれる可能性があります。
保護モデルを共有する前に、neededVars
を編集して、モデルに必要がない変数を削除します。必要な変数をデータ ディクショナリに保存します。
入力引数
model
— モデル名
文字ベクトル | string スカラー
モデル名。文字ベクトルまたは string スカラーとして指定します。モデルの名前、または保護されるモデルを参照する Model ブロックのパス名が含まれます。
データ型: char
| string
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで、Name
は引数名、Value
は対応する値です。名前と値の引数は他の引数の後に配置しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用して各名前と値を区切り、Name
を引用符で囲みます。
例: 'Mode','CodeGeneration','OutputFormat','Binaries','ObfuscateCode',true
は、保護モデルに対して生成される難読化されたコードを指定します。また、保護モデルのユーザーにはバイナリ ファイルと生成されたコード内のヘッダーのみが表示されるように指定します。
Project
— プロジェクト内の依存関係を収集するためのオプション
false
(既定値) | true
R2020b 以降
プロジェクト内の依存関係を収集するためのオプション。true
または false
として指定します。
保護モデルとともにハーネス モデルを含むサポート ファイルをプロジェクト アーカイブにパッケージ化するかどうかを指定します。サポート ファイルのタイプと数は保護されるモデルによって異なります。ベース ワークスペース定義を含む MAT ファイルや、関連する定義に間引きされたデータ ディクショナリはサポート ファイルの例です。サポート ファイルは保護されません。
true
— 保護モデル、その依存関係、およびハーネス モデルが含まれるプロジェクト アーカイブ (.mlproj
) を作成します。サポート ファイルは保護されません。プロジェクト アーカイブは簡単に共有できる単一ファイルです。対話型のプロジェクトを作成するには、プロジェクト アーカイブを開きます。false
— 保護モデルのみを作成します。保護モデルに依存関係がある場合は、それらを個別に共有しなければなりません。同様に、保護モデルのハーネス モデルを作成する場合は、ハーネス モデルを個別に共有しなければなりません。
例: 'Project',true
ヒント
プロジェクトを共有する前に、プロジェクトに必要なサポート ファイルが含まれているかどうか確認してください。サポート ファイルが不足している場合は、関連するハーネス モデルのコードをシミュレーションまたは生成することで、それらを特定できます。不足している依存関係をプロジェクトに追加し、必要に応じてハーネス モデルを更新します。詳細については、プロジェクト ファイルの管理を参照してください。
依存関係
Project
を true
に設定するには、Mode
を、シミュレーションをサポートする値に設定します。たとえば、Mode
を 'Simulation'
(既定) に設定します。
データ型: logical
ProjectName
— カスタム プロジェクト名
文字ベクトル | string スカラー
R2020b 以降
カスタムのプロジェクト名。文字ベクトルまたは string スカラーとして指定します。
生成されたファイルが含まれるプロジェクト アーカイブの名前を指定します。アーカイブ内のプロジェクトは同じ名前を使用します。
カスタム名を指定しない場合、保護モデル名の後に _protected
が付いたものがプロジェクトの既定の名前になります。
例: 'ProjectName','myname'
依存関係
ProjectName
を有効にするには、Project
を true
に設定します。
データ型: char
| string
Harness
— ハーネス モデルを作成するためのオプション
false
(既定値) | true
ハーネス モデルを作成するためのオプション。ブール値として指定します。
保護モデルのハーネス モデルを作成するかどうかを指定します。ハーネス モデルは保護モデルのために Model ブロックで参照される分離された環境を提供します。
true
— 保護モデルのハーネス モデルを作成します。false
— 保護モデルのハーネス モデルを作成しません。
ベース ワークスペース定義に依存する保護モデル用のハーネス モデルを作成するときに、Simulink® はベース ワークスペース定義を含む MAT ファイルを作成します。
ハーネス モデルは、ベース ワークスペース定義を含む MAT ファイルやデータ ディクショナリといったサポート ファイルにアクセスできなければなりません。
例: 'Harness',true
依存関係
データ型: logical
Path
— 保護モデル用のフォルダー
現在の作業フォルダー (既定値) | 文字ベクトル | string スカラー
保護モデルのフォルダー。文字ベクトルまたは string スカラーとして指定します。
例: 'Path','C:\Work'
依存関係
保護対象のモデルは、MATLAB® パス上になければなりません。
データ型: char
| string
Report
— レポートを生成するためのオプション
false
(既定値) | true
レポートを生成するためのオプション。ブール値として指定します。
レポートを表示するには、次のいずれかのアクションを実行します。
Simulink エディター:Model ブロックで、保護モデル バッジ アイコン を右クリックします。次に、[レポートの表示] を選択します。
MATLAB コマンド ウィンドウ:関数
Simulink.ProtectedModel.open
を使用します。たとえば、sldemo_mdlref_counter
という名前の保護モデルのレポートを表示するには、次のコマンドを入力します。Simulink.ProtectedModel.open('sldemo_mdlref_counter','report');
レポートはHTML 形式で生成されます。保護モデルの環境、機能、およびインターフェイスに関する情報が含まれています。
例: 'Report',true
依存関係
Report
を true
に設定するには、Mode
を、シミュレーションをサポートする値に設定します。たとえば、Mode
を 'Simulation'
(既定) に設定します。
データ型: logical
Webview
— 読み取り専用 Web ビューを含めるためのオプション
false
(既定値) | true
読み取り専用 Web ビューを含めるためのオプション。ブール値として指定します。
受信者が Web ブラウザーで表示できる Simulink モデルの対話的な表現を共有するかどうかを指定します。モデルのこの読み取り専用 Web ビューには、モデルのコンテンツおよびブロック パラメーターが含まれます。
true
— 保護するモデルの Web ビューを共有します。false
— 保護するモデルの Web ビューを共有しません。
保護モデルの Web ビューを開くには、次のいずれかのアクションを実行します。
現在のフォルダー ブラウザー:保護モデル ファイル (
.slxp
) をダブルクリックします。MATLAB コマンド ウィンドウ:関数
Simulink.ProtectedModel.open
を使用します。たとえば、sldemo_mdlref_counter
という名前の保護モデルの Web ビューを表示するには、次のコマンドを入力します。Simulink.ProtectedModel.open('sldemo_mdlref_counter','webview');
例: 'Webview',true
依存関係
モデルの読み取り専用 Web ビューを作成するには、Simulink Report Generator™ ライセンスが必要です。
データ型: logical
Mode
— モデル保護モード
'Simulation'
(既定値) | 'CodeGeneration'
| 'HDLCodeGeneration'
| 'ViewOnly'
モデル保護モード。次のいずれかの値として指定します。
'Simulation'
(R2023b 以降):保護モデルを参照するモデルをノーマル、アクセラレータまたはラピッド アクセラレータのモードで実行できます。R2023b より前:
'Simulation'
の代わりに'Accelerator'
を使用します。'CodeGeneration'
:保護モデルを参照するモデルをノーマル、アクセラレータ、ラピッド アクセラレータ、またはエクスターナル モードで実行でき、そのモデルは C および C++ コード生成をサポートできます。このオプションには Simulink Coder™ ライセンスが必要です。'HDLCodeGeneration'
:保護モデルを参照するモデルをノーマル、アクセラレータまたはラピッド アクセラレータのモードで実行でき、そのモデルは HDL コード生成をサポートできます。このオプションには HDL Coder™ のライセンスが必要です。'ViewOnly'
:保護モデルは読み取り専用 Web ビューのみをサポートします。保護モデルはシミュレーションまたはコード生成はサポートしません。このオプションには Simulink Report Generator ライセンスが必要です。
モデルの階層構造におけるシミュレーション モードについては、モデルの階層構造内のシミュレーション モードの選択を参照してください。
例: 'Mode','Simulation'
CodeInterface
— 生成コードのインターフェイス
'Model reference'
(既定値) | 'Top model'
生成コードのインターフェイス。次のいずれかの値として指定します。
モデル参照
— モデル参照 Simulink Coder ターゲットをビルドします。このコードは、モデルの階層構造の一部として参照モデルから生成されます。コード生成では次のコマンドを使用します。slbuild('model','ModelReferenceCoderTarget')
最上位モデル
— 現在のモデル コンフィギュレーション設定を使用して、指定したモデルのスタンドアロンの Simulink Coder バイナリ実行可能ファイルをビルドします。このインターフェイスでは、参照モデルのモデル参照コーダー ターゲットもビルドします。コードはスタンドアロンのコード インターフェイスを使用して最上位モデルから生成されます。コード生成では次のコマンドを使用します。slbuild('model','StandaloneCoderTarget')
指定する値によって、ソフトウェアインザループ (SIL) シミュレーションとプロセッサインザループ (PIL) シミュレーションが保護モデルの生成コードを展開する方法が決まります。
モデル参照
— ソフトウェアは、参照モデルを使用するより大きなアプリケーションの一部として、生成コードを展開します。最上位モデル
— ソフトウェアは、スタンドアロン アプリケーションとして、生成コードを展開します。
SIL/PIL シミュレーションでは、保護モデルのコードを検証できます。
保護モデルを参照するモデルのコード生成をサポートするために、[モデル参照]
を指定します。
コード インターフェイスにかかわらず、保護モデルのシミュレーションをアクセラレータ モードで実行できます。
例: 'CodeInterface','Top model'
依存関係
[システム ターゲット ファイル] コンフィギュレーション パラメーターは、ERT ベースのシステム ターゲット ファイル (たとえば、ert.tlc
) に設定されなければなりません。このオプションには Embedded Coder® のライセンスが必要です。
hdl
— HDL コードを生成するためのオプション
false
(既定値) | true
HDL コードを生成するためのオプション。ブール値として指定します。
保護モデルでシミュレーション、C および C++ コード生成、HDL コード生成をサポートするために、Mode
を 'CodeGeneration'
に、hdl
を true
に設定します。
例: 'hdl',true
ヒント
保護モデルでシミュレーションおよび HDL コード生成をサポートし、C および C++ コード生成はサポートしないようにするには、Mode
を 'HDLCodeGeneration'
に設定します。hdl
を true
に設定する必要はありません。
依存関係
HDL コードを生成するには、HDL Coder ライセンスが必要です。
この引数は、
Mode
を'CodeGeneration'
に設定した場合のみ出力に影響します。
データ型: logical
TunableParameters
— シミュレーションの調整可能なパラメーター
'None'
または {}
(既定値) | 'All'
| string 配列 | 文字ベクトルの cell 配列
R2022a 以降
シミュレーションの調整可能なパラメーター。'None'
、{}
、'All'
、string 配列、または文字ベクトルの cell 配列として指定します。
受信者によるシミュレーション中の調整を可能にするパラメーターを指定します。調整可能なパラメーターについては、ブロック パラメーター値の調整と試行を参照してください。
1 つ以上の保護モデルを参照するモデルを保護する場合は、各参照保護モデルの調整可能なパラメーターを、保護している親モデルに対しても調整可能として指定する必要があります。
保護モデルの調整可能なパラメーターのリストを取得するには、関数 Simulink.ProtectedModel.getTunableParameters
を使用します。
例: 'TunableParameters',{'param1','param2'}
例: TunableParameters=["param1","param2"]
データ型: char
| string
| cell
Callbacks
— 保護モデルのコールバックを指定するためのオプション
{}
(既定値) | cell 配列
保護モデルのコールバックを指定するためのオプション。Simulink.ProtectedModel.Callback
オブジェクトの cell 配列として指定します。
例: 'Callbacks',{pmcallback_sim, pmcallback_cg}
データ型: cell
ObfuscateCode
— 生成されたコードを難読化するためのオプション
true
(既定値) | false
論理値として指定されている生成されたコードを難読化するためのオプションです。
例: 'ObfuscateCode',true
依存関係
このオプションは、Mode
を 'CodeGeneration'
に設定した場合のみ適用されます。難読化は HDL コード生成ではサポートされていません。
データ型: logical
OutputFormat
— 保護されたコードの可視性
'CompiledBinaries'
(既定値) | 'MinimalCode'
| 'AllReferencedHeaders'
保護されたコードの可視性。次のいずれかの値として指定します。
'CompiledBinaries'
— 生成されたコードのコンパイル済みバイナリのみ含みます。バイナリ ファイルおよびヘッダーが表示されます。'MinimalCode'
— 選択したビルド設定でコードをビルドするために必要な最小限のヘッダー ファイルのみを含めます。ビルド フォルダーのコードが表示されます。受信者は、保護モデルのレポート内のコードを検証し、目的に応じてそれを再コンパイルできます。'AllReferencedHeaders'
— インクルード パスにあるヘッダー ファイルを含めます。ビルド フォルダーのコードが表示されます。また、このコードによって参照されるヘッダーも表示されます。
この引数は、保護モデル用に生成されたコードのどの部分がユーザーに表示されるかを決定します。
例: 'OutputFormat','AllReferencedHeaders'
依存関係
この引数は、Mode
を 'Simulation'
、'Accelerator'
、または 'CodeGeneration'
に設定した場合のみ出力に影響します。
Encrypt
— 保護モデルを暗号化するためのオプション
false
(既定値) | true
保護モデルを暗号化するためのオプション。ブール値として指定します。このオプションは、保護に際してパスワードを指定した場合に、または以下の関数を使用することにより適用されます。
モデルの読み取り専用表示のパスワード:
Simulink.ModelReference.ProtectedModel.setPasswordForView
シミュレーションのパスワード:
Simulink.ModelReference.ProtectedModel.setPasswordForSimulation
コード生成のパスワード:
Simulink.ModelReference.ProtectedModel.setPasswordForCodeGeneration
HDL コード生成のパスワード:
Simulink.ModelReference.ProtectedModel.setPasswordForHDLCodeGeneration
(HDL Coder)
例: 'Encrypt',true
データ型: logical
Sign
— 保護モデルにデジタル証明書で署名するためのオプション
文字ベクトル | string スカラー
保護モデルにデジタル証明書で署名するためのオプション。デジタル証明書を指定する文字ベクトルまたは string スカラーとして指定します。証明書ファイルがパスワードで保護されている場合は、証明書を使用する前に、関数 Simulink.ModelReference.ProtectedModel.setPasswordForCertificate
を使用してパスワードを指定します。
例: 'Sign','my_certificate.pfx'
データ型: char
| string
Modifiable
— 変更可能な保護モデルを作成するためのオプション
false
(既定値) | true
変更可能な保護モデルを作成するためのオプション。ブール値として指定します。
このオプションを使用するには、次の手順に従います。
関数
Simulink.ModelReference.ProtectedModel.setPasswordForModify
を使用して変更用のパスワードを追加します。変更可能な保護モデルを作成するときにパスワードを追加していない場合、パスワードを作成するよう求められます。最初に関数
Simulink.ModelReference.ProtectedModel.setPasswordForModify
を使用して変更用のパスワードを指定し、保護モデルのオプションを変更します。次に、関数Simulink.ModelReference.modifyProtectedModel
を使用してオプションの変更を行います。
例: 'Modifiable',true
データ型: logical
CustomPostProcessingHook
— 保護モデル ファイル用に後処理関数を追加するオプション
関数ハンドル
関数ハンドルとして指定された保護モデル ファイル用に後処理関数を追加するオプションです。
この関数は Simulink.ModelReference.ProtectedModel.HookInfo
オブジェクトを入力変数として受け入れます。このオブジェクトはソース コード ファイルおよび保護モデルの作成中に生成されるその他のファイルについて情報を提供します。変更してはいけないエクスポート済みシンボルについても情報を提供します。保護モデルをパッケージ化する前に後処理関数が呼び出されます。
最上位モデル インターフェイスをもつ保護モデルの場合、Simulink.ModelReference.ProtectedModel.HookInfo
オブジェクトはエクスポート済みシンボルについての情報を提供できません。
例: 'CustomPostProcessingHook',@(protectedMdlInf)myHook(protectedMdlInf)
出力引数
neededVars
— ベース ワークスペース変数の名前
cell 配列
保護モデルで使用されるベース ワークスペース変数の名前。cell 配列として返されます。
cell 配列には以下が含まれます。
調整可能なパラメーター
モデル インターフェイスで使用されるパラメーター
バス オブジェクト、列挙型、値の型など、データ型の一部を指定するパラメーター
データ ストア メモリで使用されるパラメーター
cell 配列には保護モデルが使用しない変数も含めることができます。
バージョン履歴
R2012b で導入R2023b: Mode
が 'CodeGeneration'
に設定されたエクスターナル モードのサポート
Mode
を 'CodeGeneration'
に設定すると、保護モデルはエクスターナル モード シミュレーションをサポートします。
R2023b: Mode
の既定値は 'Simulation'
Mode
の既定値の名前は 'Accelerator'
から 'Simulation'
に変更されました。既定値の動作は変更されていません。
R2023b: 'Accelerator'
は推奨されない
Mode
の値 'Accelerator'
は推奨されません。代わりに 'Simulation'
を使用してください。
'Simulation'
と'Accelerator'
は同じ動作です。'Simulation'
は、[保護モデルの作成] ダイアログ ボックスのシミュレーション オプションとより適切に連携します。'Accelerator'
はサポート対象シミュレーション モードのいずれか 1 つのみを参照します。シミュレーションをサポートする保護モデルを参照するモデルを、ノーマル、アクセラレータ、またはラピッド アクセラレータのモードで実行できます。
'Accelerator'
を削除する予定はありません。
R2023a: Mode
はノーマル モードの制限をサポートしない
将来のリリースでは、Mode
を 'Normal'
にすると、この関数により作成される保護モデルは、親モデルのシミュレーションをノーマル、アクセラレータまたはラピッド アクセラレータのモードで実行するときに、シミュレーションをサポートします。この変更により、新しい保護モデルのシミュレーション サポートが標準化されます。この変更前に作成された保護モデルは影響を受けません。
現在、Mode
を 'Normal'
にすると、この関数により作成される保護モデルは、親モデルのシミュレーションをノーマル モードで実行する場合にのみシミュレーションをサポートします。
R2023a: Mode
の既定値は 'Accelerator'
引数 Mode
の既定値は 'Accelerator'
です。保護モデルを参照するモデルをノーマル、アクセラレータまたはラピッド アクセラレータのモードで実行できます。
この変更に伴い、[保護モデルの作成] ダイアログ ボックスと関数 Simulink.ModelReference.protect
では、同じ既定のモデル保護モードが使用されます。
以前は、引数 Mode
の既定値は 'Normal'
でした。'Normal'
のモデル保護モードでは保護モデルの使用が制限され、親モデルのシミュレーションをノーマル モードで実行する場合にのみ保護モデルがシミュレーションをサポートします。
R2022a: シミュレーションの調整可能なパラメーターは、TunableParameters
引数として指定される
名前と値の引数 TunableParameters
を使用して、シミュレーション中に調整可能にする保護モデルのパラメーターを指定する必要があります。既定では、シミュレーション中にパラメーターは調整できません。
保護モデルの調整可能なパラメーターのリストを取得するには、関数 Simulink.ProtectedModel.getTunableParameters
を使用します。
以前は、パラメーターのコード生成ストレージ クラスが Auto
以外の値に設定されている場合に、そのパラメーターは調整可能でした。既定では、個々のデータ要素のストレージ クラスは Auto
です。
R2020b: 依存関係を含む保護モデルの自動パッケージ化
保護モデルを作成する際に、プロジェクト アーカイブにその依存関係とハーネス モデルを含めて自動でパッケージ化できます。受信者がプロジェクト アーカイブのコンテンツを抽出し、ハーネス モデルを開くと、不足している変数またはオブジェクトを定義することなく、保護モデルのシミュレーションを実行できます。プロジェクト アーカイブを共有する前に、プロジェクトに必要なサポート ファイルが含まれているかどうか確認し、必要に応じてハーネス モデルを更新してください。
Project
を使用して、保護モデル、その依存関係、およびハーネス モデルをプロジェクト アーカイブ (.mlproj
) に保存します。プロジェクト アーカイブを使用することで、プロジェクトを 1 つのファイル内で共有できます。
ProjectName
を使用して、カスタム プロジェクト名を指定します。
詳細については、保護モデルのパッケージ化と共有を参照してください。
参考
ツール
関数
Simulink.ModelReference.modifyProtectedModel
|Simulink.ModelReference.ProtectedModel.setPasswordForModify
|Simulink.ModelReference.ProtectedModel.setPasswordForCodeGeneration
|Simulink.ModelReference.ProtectedModel.setPasswordForHDLCodeGeneration
(HDL Coder) |Simulink.ModelReference.ProtectedModel.setPasswordForSimulation
|Simulink.ModelReference.ProtectedModel.setPasswordForView
|Simulink.ModelReference.ProtectedModel.clearPasswords
|Simulink.ModelReference.ProtectedModel.clearPasswordsForModel
|Simulink.ProtectedModel.getTunableParameters
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)