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