Симулируйте вызовы компонентов AUTOSAR к блокировке функций Basic Software и связанным с ними службам с помощью ссылочных реализаций.
Стандарт AUTOSAR задает службы Basic Software (BSW), которые выполняются во время выполнения окружения AUTOSAR. К услугам относятся Diagnostic Event Manager (Dem), Function Inhibition Manager (FiM) и сервисы NVRAM Manager (NvM). В среде выполнения AUTOSAR программные компоненты AUTOSAR обычно получают доступ к службам BSW с помощью связи клиент-сервер или отправитель-получатель.
В модели компонента программного обеспечения AUTOSAR для реализации вызовов клиентов к интерфейсам FiM и связанным с ними сервисам Dem можно перетащить предварительно сконфигурированные блоки вызовов FiM и Dem. Каждый блок имеет предварительно заполненные параметры, такие как имя порта клиента и операция. Вы конфигурируете параметры блоков, для примера, чтобы выбрать сервисную операцию для вызова. Чтобы сконфигурировать добавленные блоки вызывающего абонента в программном компоненте AUTOSAR, синхронизируйте модель. Программное обеспечение создает интерфейсы, операции и порты клиента AUTOSAR и сопоставляет каждый вызов функции Simulink с клиентским портом и операцией AUTOSAR. Дополнительные сведения см. в разделе Настройка вызовов службы AUTOSAR Function Inhibition Manager.
Вот модель интегрирования с ингибированием функции, которая интегрирует два компонента датчика, компонент монитора и компонент операционного цикла. Компоненты датчика вызывают услуги BSW FiM и Dem (и NvM), компоненты монитора - услуги BSW FiM и Dem, а компоненты операционного цикла - услугу BSW Dem.
Каждый из компонентов датчика и монитора вызывает интерфейс FiM FunctionInhibition
. Вызовы реализуются с помощью библиотечного блока Inhibition Caller. Каждый образец блока сконфигурирован для вызова FunctionInhibition
операция GetFunctionPermission
.
Компонент цикла операции вызывает служебный интерфейс Dem OperationCycle
. Вызов реализован с помощью BSW библиотечного блока DiagnosticOperationCycleCaller. Блок сконфигурирован для вызова OperationCycle
операция SetOperationCycleState
.
Чтобы симулировать модель компонента AUTOSAR, которая вызывает службы BSW, создайте содержащую композицию, систему или модель тестовой обвязки. В той, которая содержит модель, обеспечивайте эталонные реализации операций обслуживания Dem, FiM и NvM, вызываемых компонентом.
Библиотека блоков AUTOSAR Basic Software включает блок Diagnostic Service Component и блок NVRAM Service Component. Блоки обеспечивают эталонные реализации операций обслуживания Dem, FiM и NvM. Чтобы поддержать симуляцию вызовов компонентов в сервисы Dem, FiM и NvM, включите блоки в содержащую модель. Можно вставить блоки любым из двух способов:
Автоматически вставьте блоки, создав модель тестовой обвязки Simulink Test
Вручную вставьте блоки в содержащую композицию, систему или модель тестовой обвязки, а затем обновите модель
Вот модель интегрирования ингибирования функции после ручной вставки блоков Diagnostic и NVRAM Service Component. Чтобы отобразить функциональные соединения, на вкладке Debug, выберите Information Overlays > Function Connectors.
open_system('autosar_bsw_fim');
Блок Diagnostic Service Component имеет предварительно заполненные параметры, включая параметры RTE service ID, параметры Dem Counter-Based Debouncing и параметры условия ингибирования FiM. На вкладке RTE перечислены клиентские порты компонентов и их отображение идентификаторам служб Dem или FiM для событий, циклов операций или функций с условиями ингибирования. Каждая строка таблицы представляет вызов в службы Dem или FiM из блока вызывающего абонента Basic Software, для которого можно изменить значение идентификатора.
На вкладке FIM перечислены идентификаторы функций (FIDs) и связанные с ними условия запрещения и клиентские порты. Вкладка предоставляет графические элементы управления для добавления или удаления условий ингибирования для выбранного FID. Для каждого условия ингибирования выберите идентификатор и значения маски.
Дополнительные сведения см. в разделе Настройка вызовов службы AUTOSAR Function Inhibition Manager.
После настройки блоков Diagnostic и NVRAM Service Компонента в модели интегрирования моделируйте модель. В симуляции выполняются сервисные вызовы AUTOSAR FiM и Dem в моделях компонента датчика, монитора и операционного цикла.
open_system('autosar_bsw_fim'); simOutIntegration = sim('autosar_bsw_fim');