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: '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

既定では、このオプション オブジェクトは、Polyspace プロジェクトで指定したものと同じ検証設定を使用します。プロジェクトで指定した既存の検証に加えて、MISRA C® 2012 コーディング ルール違反を確認するには、次のコードを MATLAB コマンド ラインで実行します。

new_opt.VerificationSettings = 'PrjConfigAndMisraC2012'
new_opt =

                    ResultDir: 'results_$ModelName$'
         VerificationSettings: 'PrjConfigAndMisraC2012'
           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

生成されたコードの Polyspace 解析を開始する場合、Polyspace ユーザー インターフェイスを開いて進行状況を確認し、後で結果を確認します。解析を開始するときに Polyspace インターフェイスを開くには、次のコードを実行します。

new_opt.OpenProjectManager = true
new_opt =

                    ResultDir: 'results_$ModelName$'
         VerificationSettings: 'PrjConfigAndMisraC2012'
           OpenProjectManager: 1
         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

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

モデルには 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

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 Bug Finder) を参照してください。

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

バージョン履歴

R2012a で導入

参考

(Polyspace Bug Finder)