Main Content

pslinkoptions

Simulink モデル、生成コード、または S-Function ブロックのコンフィギュレーションをカスタマイズするオプション オブジェクトを作成。MATLAB コマンド ラインからの Polyspace 実行について、これらの Simulink オブジェクトのコンフィギュレーション オプションを、そのオブジェクトを使用して指定。

説明

opts = pslinkoptions(codegen) は、codegen によって生成されたコードのコンフィギュレーション オプションをもつオプション オブジェクトを返します。

opts = pslinkoptions(model) は、Simulink® モデルのコンフィギュレーション オプションをもつオプション オブジェクトを返します。

opts = pslinkoptions(sfunc) は、S-Function のコンフィギュレーション オプションをもつオプション オブジェクトを返します。

メモ

Polyspace® を MATLAB® から実行する前に、Polyspace インストールと MATLAB インストールをリンクさせなければなりません。MATLAB や Simulink との Polyspace の統合 (Polyspace Bug Finder)を参照してください。

すべて折りたたむ

この例は、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

この例は、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® パラメーターを含む、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

入力引数

すべて折りたたむ

コード ジェネレーター。Embedded Coder® の場合は 'ec'、TargetLink® の場合は 'tl' として指定します。各引数により、そのコード ジェネレーターに固有なプロパティをもつ Polyspace オプション オブジェクトが作成されます。

すべてのコンフィギュレーション オプションとその値の詳細については、pslinkoptions のプロパティ (Polyspace Bug Finder) を参照してください。

例: ec_opt = pslinkoptions('ec')

例: tl_opt = pslinkoptions('tl')

データ型: char

Simulink モデル。モデル名で指定します。そのモデルのコンフィギュレーション オプションをもつ Polyspace オプション オブジェクトを作成します。オプションを何も指定していない場合、オブジェクトには既定のコンフィギュレーション オプションが設定されます。コード ジェネレーターを設定すると、オブジェクトにはコード ジェネレーターの既定のオプションが設定されます。

すべてのコンフィギュレーション オプションとその値の詳細については、pslinkoptions のプロパティ (Polyspace Bug Finder) を参照してください。

例: model_opt = pslinkoptions('my_model')

データ型: char

S-Function へのパス。文字ベクトルとして指定します。S-Function のコンフィギュレーション オプションをもつ Polyspace オプション オブジェクトを作成します。オプションを何も指定していない場合、オブジェクトには既定のコンフィギュレーション オプションが設定されます。

すべてのコンフィギュレーション オプションとその値の詳細については、pslinkoptions のプロパティ (Polyspace Bug Finder) を参照してください。

例: sfunc_opt = pslinkoptions('path/to/sfunction')

データ型: char

出力引数

すべて折りたたむ

Polyspace コンフィギュレーション オプション。オプション オブジェクトとして返されます。オブジェクトを pslinkrun と共に使用して、MATLAB コマンド ラインから Polyspace を実行します。

pslinkoptions オブジェクトを使用して、Polyspace 解析の多くのプロパティを指定できます。オブジェクト プロパティのリストについては、pslinkoptions のプロパティ (Polyspace Bug Finder) を参照してください。

pslinkoption オブジェクトを使用して指定するプロパティは、Polyspace 解析オプションのサブセットです。クラスを使用して追加のプロパティを指定できます。このクラスを使用すると、生成されたコードに対して解析を実行するためのオブジェクトのプロパティを指定できます。pslinkoptions オブジェクトがある場合は、pslinkoptions オブジェクトを使用してオブジェクトを作成できます。

例: opts= pslinkoptions('ec')
opts.VerificationSettings = 'Misra'

バージョン履歴

R2012a で導入

参考

(Polyspace Bug Finder)