pslinkoptions
Simulink モデル、生成コード、または S-Function ブロックのコンフィギュレーションをカスタマイズするオプション オブジェクトを作成。MATLAB コマンド ラインからの Polyspace 実行について、これらの Simulink オブジェクトのコンフィギュレーション オプションを、そのオブジェクトを使用して指定。
説明
は、S-Function のコンフィギュレーション オプションをもつオプション オブジェクトを返します。opts
= pslinkoptions(sfunc
)
メモ
Polyspace® を MATLAB® から実行する前に、Polyspace インストールと MATLAB インストールをリンクさせなければなりません。MATLAB や Simulink との Polyspace の統合 (Polyspace Bug Finder)を参照してください。
例
Embedded Coder で生成されたコードの汎用オプション オブジェクトの作成
この例は、Embedded Coder を使用して生成されたコードを解析するのに適した汎用の Polyspace オプション オブジェクトを作成する方法を示しています。このオプション オブジェクトは、適切な Embedded Coder パラメーターで事前入力されています。汎用解析を変更するにはオプション オブジェクトを編集します。
関数 pslinkoptions
を呼び出して新しい Polyspace コンフィギュレーション オブジェクト new_opt
を作成し、入力引数として 'ec'
を指定します。
new_opt = pslinkoptions('ec')
new_opt = ResultDir: 'results_$ModelName$' VerificationSettings: 'PrjConfig' OpenProjectManager: 0 AddSuffixToResultDir: 0 EnableAdditionalFileList: 0 AdditionalFileList: {} VerificationMode: 'CodeProver' EnablePrjConfigFile: 0 PrjConfigFile: '' AddToSimulinkProject: 0 InputRangeMode: 'DesignMinMax' ParamRangeMode: 'None' OutputRangeMode: 'None' ModelRefVerifDepth: 'Current model only' ModelRefByModelRefVerif: 0 AutoStubLUT: 1 CxxVerificationSettings: 'PrjConfig' CheckConfigBeforeAnalysis: 'OnWarn' VerifAllSFcnInstances: 0
既定では、このオプション オブジェクトは、Polyspace プロジェクトで指定したものと同じ検証設定を使用します。プロジェクトで指定した既存の検証に加えて、MISRA C® 2012 コーディング ルール違反を確認するには、次のコードを MATLAB コマンド ラインで実行します。
new_opt.VerificationSettings = 'PrjConfigAndMisraC2012'
new_opt = ResultDir: 'results_$ModelName$' VerificationSettings: 'PrjConfigAndMisraC2012' OpenProjectManager: 0 AddSuffixToResultDir: 0 EnableAdditionalFileList: 0 AdditionalFileList: {} VerificationMode: 'CodeProver' EnablePrjConfigFile: 0 PrjConfigFile: '' AddToSimulinkProject: 0 InputRangeMode: 'DesignMinMax' ParamRangeMode: 'None' OutputRangeMode: 'None' ModelRefVerifDepth: 'Current model only' ModelRefByModelRefVerif: 0 AutoStubLUT: 1 CxxVerificationSettings: 'PrjConfig' CheckConfigBeforeAnalysis: 'OnWarn' VerifAllSFcnInstances: 0
生成されたコードの Polyspace 解析を開始する場合、Polyspace ユーザー インターフェイスを開いて進行状況を確認し、後で結果を確認します。解析を開始するときに Polyspace インターフェイスを開くには、次のコードを実行します。
new_opt.OpenProjectManager = true
new_opt = ResultDir: 'results_$ModelName$' VerificationSettings: 'PrjConfigAndMisraC2012' OpenProjectManager: 1 AddSuffixToResultDir: 0 EnableAdditionalFileList: 0 AdditionalFileList: {} VerificationMode: 'CodeProver' EnablePrjConfigFile: 0 PrjConfigFile: '' AddToSimulinkProject: 0 InputRangeMode: 'DesignMinMax' ParamRangeMode: 'None' OutputRangeMode: 'None' ModelRefVerifDepth: 'Current model only' ModelRefByModelRefVerif: 0 AutoStubLUT: 1 CxxVerificationSettings: 'PrjConfig' CheckConfigBeforeAnalysis: 'OnWarn' VerifAllSFcnInstances: 0
Polyspace コンフィギュレーションを変更するためのオプション オブジェクトの作成および編集
この例は、Simulink モデルの Polyspace コンフィギュレーションをオブジェクトに保存し、そのオブジェクトを使用してコンフィギュレーション オプションを編集する方法を示しています。
モデル closed_loop_control
を読み込みます。
load_system('closed_loop_control');
モデルの Polyspace コンフィギュレーションを含むオブジェクトを作成するには、pslinkoptions
を呼び出します。
model_opt = pslinkoptions('closed_loop_control')
model_opt = ResultDir: 'results_$ModelName$' VerificationSettings: 'PrjConfig' OpenProjectManager: 0 AddSuffixToResultDir: 0 EnableAdditionalFileList: 0 AdditionalFileList: {} VerificationMode: 'BugFinder' EnablePrjConfigFile: 0 PrjConfigFile: '' AddToSimulinkProject: 0 InputRangeMode: 'DesignMinMax' ParamRangeMode: 'None' OutputRangeMode: 'None' ModelRefVerifDepth: 'Current model only' ModelRefByModelRefVerif: 0 AutoStubLUT: 1 CxxVerificationSettings: 'PrjConfig' CheckConfigBeforeAnalysis: 'OnWarn' VerifAllSFcnInstances: 0 ModelRefIgnoreList: [] EnableModelRefIgnoreList: 0 ModelRefMinMaxVerif: 'CheckAndConstrain'
モデルには Embedded Coder® が既に設定されているため、Embedded Coder コンフィギュレーション オプションのみがオブジェクト model_opt
のフィールドとして表示されます。
Polyspace コンフィギュレーション オプションを変更するには、model_opt
の対応するフィールドを設定します。たとえば、結果のディレクトリを変更して、検証モードを CodeProver
に設定するには、フィールド model_opt.ResultDir
および model_opt.VerificationMode
をそれぞれ変更します。
model_opt.ResultDir = 'results_v1_$ModelName$'; model_opt.VerificationMode = 'CodeProver'
model_opt = ResultDir: 'results_v1_$ModelName$' VerificationSettings: 'PrjConfig' OpenProjectManager: 0 AddSuffixToResultDir: 0 EnableAdditionalFileList: 0 AdditionalFileList: {} VerificationMode: 'CodeProver' EnablePrjConfigFile: 0 PrjConfigFile: '' AddToSimulinkProject: 0 InputRangeMode: 'DesignMinMax' ParamRangeMode: 'None' OutputRangeMode: 'None' ModelRefVerifDepth: 'Current model only' ModelRefByModelRefVerif: 0 AutoStubLUT: 1 CxxVerificationSettings: 'PrjConfig' CheckConfigBeforeAnalysis: 'OnWarn' VerifAllSFcnInstances: 0 ModelRefIgnoreList: [] EnableModelRefIgnoreList: 0 ModelRefMinMaxVerif: 'CheckAndConstrain'
コマンド ラインでの TargetLink のオプション オブジェクトの作成と編集
TargetLink® パラメーターを含む、new_opt
という名前の Polyspace® オプション オブジェクトを作成します。
new_opt = pslinkoptions('tl')
new_opt = ResultDir: 'results_$ModelName$' VerificationSettings: 'PrjConfig' OpenProjectManager: 0 AddSuffixToResultDir: 0 EnableAdditionalFileList: 0 AdditionalFileList: {} VerificationMode: 'CodeProver' EnablePrjConfigFile: 0 PrjConfigFile: '' AddToSimulinkProject: 0 InputRangeMode: 'DesignMinMax' ParamRangeMode: 'None' OutputRangeMode: 'None' AutoStubLUT: 1
Polyspace インターフェイスでの進捗状況を確認するために、OpenProjectManager
オプションを true に設定します。また、実行時エラーと MISRA C® コーディング ルール違反の両方を確認するようにコンフィギュレーションを変更します。
new_opt.OpenProjectManager = true;
new_opt.VerificationSettings = 'PrjConfigAndMisra'
new_opt = ResultDir: 'results_$ModelName$' VerificationSettings: 'PrjConfigAndMisra' OpenProjectManager: 1 AddSuffixToResultDir: 0 EnableAdditionalFileList: 0 AdditionalFileList: {} VerificationMode: 'CodeProver' EnablePrjConfigFile: 0 PrjConfigFile: '' AddToSimulinkProject: 0 InputRangeMode: 'DesignMinMax' ParamRangeMode: 'None' OutputRangeMode: 'None' AutoStubLUT: 1
入力引数
codegen
— コード ジェネレーター
'ec'
| 'tl'
コード ジェネレーター。Embedded Coder® の場合は 'ec'
、TargetLink® の場合は 'tl'
として指定します。各引数により、そのコード ジェネレーターに固有なプロパティをもつ Polyspace オプション オブジェクトが作成されます。
すべてのコンフィギュレーション オプションとその値の詳細については、pslinkoptions のプロパティ (Polyspace Bug Finder) を参照してください。
例: ec_opt = pslinkoptions('ec')
例: tl_opt = pslinkoptions('tl')
データ型: char
model
— Simulink モデル名
モデル名
Simulink モデル。モデル名で指定します。そのモデルのコンフィギュレーション オプションをもつ Polyspace オプション オブジェクトを作成します。オプションを何も指定していない場合、オブジェクトには既定のコンフィギュレーション オプションが設定されます。コード ジェネレーターを設定すると、オブジェクトにはコード ジェネレーターの既定のオプションが設定されます。
すべてのコンフィギュレーション オプションとその値の詳細については、pslinkoptions のプロパティ (Polyspace Bug Finder) を参照してください。
例: model_opt = pslinkoptions('my_model')
データ型: char
sfunc
— S-Function へのパス
文字ベクトル
S-Function へのパス。文字ベクトルとして指定します。S-Function のコンフィギュレーション オプションをもつ Polyspace オプション オブジェクトを作成します。オプションを何も指定していない場合、オブジェクトには既定のコンフィギュレーション オプションが設定されます。
すべてのコンフィギュレーション オプションとその値の詳細については、pslinkoptions のプロパティ (Polyspace Bug Finder) を参照してください。
例: sfunc_opt = pslinkoptions('path/to/sfunction')
データ型: char
出力引数
opts
— Polyspace コンフィギュレーション オプション
オプション オブジェクト
Polyspace コンフィギュレーション オプション。オプション オブジェクトとして返されます。オブジェクトを pslinkrun
と共に使用して、MATLAB コマンド ラインから Polyspace を実行します。
pslinkoptions
オブジェクトを使用して、Polyspace 解析の多くのプロパティを指定できます。オブジェクト プロパティのリストについては、pslinkoptions のプロパティ (Polyspace Bug Finder) を参照してください。
pslinkoption
オブジェクトを使用して指定するプロパティは、Polyspace 解析オプションのサブセットです。クラスを使用して追加のプロパティを指定できます。このクラスを使用すると、生成されたコードに対して解析を実行するためのオブジェクトのプロパティを指定できます。pslinkoptions
オブジェクトがある場合は、pslinkoptions
オブジェクトを使用してオブジェクトを作成できます。
例: opts= pslinkoptions('ec')
opts.VerificationSettings = 'Misra'
バージョン履歴
R2012a で導入
参考
pslinkoptions のプロパティ (Polyspace Bug Finder)
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)