Создайте объект опций для настройки конфигурации модели Simulink, сгенерированного кода или блока S-Function. Используйте объект, чтобы задать опции конфигурации для этих объектов Simulink в выполнении Polyspace из командной строки MATLAB
возвращает объект options с опциями конфигурации для S-функции.opts = pslinkoptions(sfunc)
Примечание
Перед запуском Polyspace ® из MATLAB ® необходимо связать установки Polyspace и MATLAB. См. раздел Интеграция полиспейса с MATLAB и Simulink.
Груз closed_loop_control и создайте объект опций Polyspace ® из модели :
load_system('closed_loop_control'); model_opt = pslinkoptions('closed_loop_control')
model_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
Модель уже настроена для Embedded Coder ®, поэтому отображаются только опции конфигурации Embedded Coder. Изменить параметр и задать имя папки результатовOpenProjectManager к true.
model_opt.ResultDir = 'results_v1_$ModelName$';
model_opt.OpenProjectManager = truemodel_opt =
ResultDir: 'results_v1_$ModelName$'
VerificationSettings: 'PrjConfig'
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 ® с именемnew_opt со встроенными параметрами Coder ® :
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'
Для отслеживания хода выполнения в интерфейсе Polyspace установите OpenProjectManager значение true. Измените конфигурацию для проверки наличия нарушений правил кодирования MISRA C ® 2012 :
new_opt.OpenProjectManager = true;
new_opt.VerificationSettings = 'PrjConfigAndMisraC2012'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'
Создание объекта параметров Polyspace ® с именемnew_opt с параметрами TargetLink ® :
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
Установите OpenProjectManager значение true для отслеживания хода выполнения в интерфейсе Polyspace. Также измените конфигурацию, чтобы проверить наличие ошибок во время выполнения и нарушений правил кодирования 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'Генератор кода, указанный как 'ec' для встроенного кодера или 'tl' для TargetLink ®. Каждый аргумент создает объект параметров Polyspace со свойствами, специфичными для данного генератора кода .
Описание всех опций конфигурации и их значений см. в разделе Свойства pslinkoptions.
Пример: ec_opt = pslinkoptions('ec')
Пример: tl_opt = pslinkoptions('tl')
Типы данных: char
model - Имя модели SimulinkМодель Simulink, заданная именем модели. Создает объект опций Polyspace с опциями конфигурации этой модели. Если опции не заданы, объект имеет опции конфигурации по умолчанию. Если задан генератор кода, у объекта есть параметры по умолчанию для этого генератора кода.
Описание всех опций конфигурации и их значений см. в разделе Свойства pslinkoptions.
Пример: model_opt = pslinkoptions('my_model')
Типы данных: char
sfunc - путь к S-функцииПуть к S-функции, определяемый как символьный вектор. Создает объект опций Polyspace с опциями конфигурации для S-функции. Если опции не заданы, объект имеет опции конфигурации по умолчанию.
Описание всех опций конфигурации и их значений см. в разделе Свойства pslinkoptions.
Пример: sfunc_opt = pslinkoptions('path/to/sfunction')
Типы данных: char
opts - Параметры конфигурации PolyspaceОпции конфигурации Polyspace, возвращенные как объект опций. Объект используется с pslinkrun для запуска Polyspace из командной строки MATLAB.
Список свойств объекта см. в разделе Свойства pslinkoptions.
Пример: opts= pslinkoptions('ec')
opts.VerificationSettings = 'Misra'
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.