Создайте объект опций настроить настройку модели Simulink, сгенерированного кода или Блока s-function. Используйте объект задать параметры конфигурации для этих объектов Simulink в Polyspace, запущенном из командной строки MATLAB
возвращает объект опций с параметрами конфигурации для S-функции.opts
= pslinkoptions(sfunc
)
Примечание
Прежде чем вы запустите Polyspace® от MATLAB®, необходимо соединить Polyspace и установки MATLAB. Смотрите Интегрируют Polyspace с 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
к истине.
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®, названный 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
опция к истине. Измените настройку, чтобы проверять на обе проверки и 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
опция к истине, чтобы следовать за прогрессом интерфейса 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 Свойства.
Пример: 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 ('ЕС')
opts.VerificationSettings = 'Misra'
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.