Создайте модель Simulink® из XML-описания состава программного обеспечения AUTOSAR.
Вот состав программного обеспечения AUTOSAR, который реализует систему управления положения дросселя. Состав содержит шесть, соединил прототипы компонента программного обеспечения AUTOSAR - четыре компонента датчика/привода и два компонента приложения.
Состав был создан в инструменте разработки AUTOSAR и экспортирован в файл ThrottlePositionControlComposition.arxml
.
Используйте функцию MATLAB createCompositionAsModel
импортировать AUTOSAR XML (ARXML) описание и создать начальное представление Simulink состава AUTOSAR. Во-первых, проанализируйте файл описания ARXML и перечислите составы, которые он содержит.
ar = arxml.importer('ThrottlePositionControlComposition.arxml'); names = getComponentNames(ar,'Composition')
names = 1x1 cell array
{'/Company/Components/ThrottlePositionControlComposition'}
Для перечисленного состава программного обеспечения используйте createCompositionAsModel
создать представление Simulink.
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.
После создания начального представления Simulink состава AUTOSAR вы разрабатываете каждый компонент в составе. Для каждого компонента вы совершенствовали настройку AUTOSAR и создаете алгоритмическое содержимое модели.
Например, Controller
модель компонента в ThrottlePositionControlComposition
модель состава содержит атомарную подсистему Runnable_Step_sys
, который представляет периодическое выполнимое AUTOSAR. Runnable_Step_sys
подсистема содержит начальную тупиковую реализацию поведения контроллера.
Вот является возможная реализация контроллера положения дросселя поведением. (Чтобы исследовать эту реализацию, см. модель autosar_swc_controller
, которому предоставляют Проект в качестве примера, и Симулируйте Компоненты AUTOSAR и Сгенерируйте Код.) Компонент берет в качестве входных параметров процентное значение датчика APP от датчика положений педали и процентное значение TPS от датчика положений дросселя. На основе этих значений контроллер вычисляет ошибку. Ошибка является различием между тем, где оператор хочет дроссель, на основе датчика педали и текущего положения дросселя. В этой реализации блок Discrete PID Controller использует ошибочное значение, чтобы вычислить процентное значение команды дросселя, чтобы обеспечить на привод дросселя. Осциллограф отображает ошибочное значение и выходное значение блока 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 отчет обновления AUTOSAR. Отчет перечисляет изменения что обновление, сделанное к Simulink и элементам AUTOSAR в модели состава. В отчете можно кликнуть по гиперссылкам, чтобы перейти от описаний изменения до изменений модели и перейти от основного отчета до отдельных отчетов компонента.