Создайте модель Simulink ® из XML-описания состава программного обеспечения AUTOSAR .
Вот программная композиция AUTOSAR, которая реализует систему управления положением дросселя. Композиция содержит шесть взаимосвязанных прототипов программных компонентов AUTOSAR - четыре компонента датчика/привода и два прикладных компонента.
Композиция была создана в авторском инструменте AUTOSAR и экспортирована в файл ThrottlePositionControlComposition.arxml
.
Используйте функцию MATLAB createCompositionAsModel
для импорта описания AUTOSAR XML (ARXML) и создания начального представления композиции AUTOSAR в Simulink.
ar = arxml.importer('ThrottlePositionControlComposition.arxml'); createCompositionAsModel(ar,'/Company/Components/ThrottlePositionControlComposition');
Creating model 'ThrottlePositionSensor' for component 1 of 5: /Company/Components/ThrottlePositionSensor Creating model 'ThrottlePositionMonitor' for component 2 of 5: /Company/Components/ThrottlePositionMonitor Creating model 'Controller' for component 3 of 5: /Company/Components/Controller Creating model 'AccelerationPedalPositionSensor' for component 4 of 5: /Company/Components/AccelerationPedalPositionSensor Creating model 'ThrottlePositionActuator' for component 5 of 5: /Company/Components/ThrottlePositionActuator Creating model 'ThrottlePositionControlComposition' for composition 1 of 1: /Company/Components/ThrottlePositionControlComposition
Вызов функции создает модель композиции, которая содержит шесть модели компонента, по одной для каждого атомарного программного компонента в композиции. Входные и выходные порты Simulink представляют порты AUTOSAR, а сигнальные линии - компонентные коннекторы AUTOSAR.
После создания начального представления композиции AUTOSAR в Simulink, вы разрабатываете каждый компонент в композиции. Для каждого компонента вы уточняете строение AUTOSAR и создаете содержимое алгоритмической модели.
Для примера, Controller
модель компонента в ThrottlePositionControlComposition
модель состава содержит атомарную подсистему Runnable_Step_sys
, который представляет возможность периодического выполнения AUTOSAR. The Runnable_Step_sys
Подсистема содержит начальную реализацию-заглушку поведения контроллера.
Вот возможная реализация поведения контроллера положения дросселя. (Чтобы исследовать эту реализацию, см. Модель autosar_swc_controller
, который поставляется с примером «Проект и моделирование компонентов AUTOSAR и генерация кода».) Компонент принимает за входы процентное значение датчика APP с датчика положения педали и процентное значение TPS с датчика положения дросселя. На основе этих значений контроллер вычисляет ошибку. Ошибка - это различие между тем, где оператор хочет дроссель, основанная на датчике педали, и текущим положением дросселя. В этой реализации блок Discrete ПИД-регулятора использует значение ошибки, чтобы вычислить команду процентного значения дросселя, чтобы обеспечить привод дросселя. Область возможностей отображает значение ошибки и выходное значение блока Discrete PID Controller с течением времени.
При разработке компонентов AUTOSAR можно:
Моделируйте модели компонента индивидуально или вместе в содержащей их композиции.
Сгенерируйте файлы описания компонента ARXML и алгоритмический код С для проверки в Simulink или интегрировании в окружение выполнения AUTOSAR. (Генерация кода AUTOSAR требует Simulink Coder и Embedded Coder.)
Для получения дополнительной информации о разработке, симуляции и создании компонентов AUTOSAR, смотрите пример «Проект и моделирование компонентов AUTOSAR и генерация кода».
Предположим, что после импорта композиции программного обеспечения AUTOSAR в Simulink и начала разработку алгоритмов в композицию были внесены архитектурные изменения в авторском инструменте AUTOSAR.
Вот пересмотренный состав. Изменения удаляют компонент датчика, добавляют компонент логгера и добавляют порты и соединения на уровне композиции и компонента. В авторском инструменте AUTOSAR пересмотренная композиция экспортируется в файл ThrottlePositionControlComposition_updated.arxml
.
Используйте функцию MATLAB updateModel
для импорта архитектурных ревизий из файла ARXML. Функция обновляет модель состава AUTOSAR с помощью изменений и сообщает результаты.
ar2 = arxml.importer('ThrottlePositionControlComposition_updated.arxml'); updateModel(ar2,'ThrottlePositionControlComposition');
Updating model 'ThrottlePositionSensor' for component 1 of 6: /Company/Components/ThrottlePositionSensor ### Updating model ThrottlePositionSensor ### Saving original model as ThrottlePositionSensor_backup.slx ### Creating HTML report ThrottlePositionSensor_update_report.html Updating model 'ThrottlePositionMonitor' for component 2 of 6: /Company/Components/ThrottlePositionMonitor ### Updating model ThrottlePositionMonitor ### Saving original model as ThrottlePositionMonitor_backup.slx ### Creating HTML report ThrottlePositionMonitor_update_report.html Creating model 'Logger' for component 3 of 6: /Company/Components/Logger Updating model 'Controller' for component 4 of 6: /Company/Components/Controller ### Updating model Controller ### Saving original model as Controller_backup.slx ### Creating HTML report Controller_update_report.html Updating model 'AccelerationPedalPositionSensor' for component 5 of 6: /Company/Components/AccelerationPedalPositionSensor ### Updating model AccelerationPedalPositionSensor ### Saving original model as AccelerationPedalPositionSensor_backup.slx ### Creating HTML report AccelerationPedalPositionSensor_update_report.html Updating model 'ThrottlePositionActuator' for component 6 of 6: /Company/Components/ThrottlePositionActuator ### Updating model ThrottlePositionActuator ### Saving original model as ThrottlePositionActuator_backup.slx ### Creating HTML report ThrottlePositionActuator_update_report.html Updating model 'ThrottlePositionControlComposition' for composition 1 of 1: /Company/Components/ThrottlePositionControlComposition ### Updating model ThrottlePositionControlComposition ### Saving original model as ThrottlePositionControlComposition_backup.slx ### Creating HTML report ThrottlePositionControlComposition_update_report.html
После обновления в модели состава подсветка указывает, где произошли изменения.
Функция также генерирует и отображает HTML отчет об обновлении авто-РСА. В отчете перечислены изменения, внесенные в элементы Simulink и AUTOSAR в модели композиции. В отчете можно щелкнуть гиперссылки, чтобы перейти от описаний изменений к изменениям модели и перейти от основного отчета к отдельным отчетам по компонентам.