Als ara::com-Dienst modellierte Schnittstelle; Methoden/Felder werden über generierte Proxies/Skeletons aufgerufen (Parameterrichtung IN/OUT).
Руководство пользователяСОЗДАНО ИИ
Информирует Adaptive Applications о текущем состоянии и выполняющихся переходах конечного автомата.
СОЗДАНО ИИне провереноМодель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 6ddf9de6db11ПроисхождениеОткрытые вопросы (1)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал
Информирует Adaptive Applications о текущем состоянии и выполняющихся переходах конечного автомата.
Сервисный интерфейс StateMachineNotification предоставляет Adaptive Applications состояние конечного автомата через доступное для чтения и подписки поле CurrentState ([SWS_SM_91028], [SWS_SM_91109]). При смене состояний поле сигнализирует о промежуточном значении "inTransition" до тех пор, пока не будут выполнены все действия ([SWS_SM_00616]). Интерфейс предоставляется после запуска конечного автомата и отзывается при его завершении ([SWS_SM_00618], [SWS_SM_00619]).
Роль и системный контекст сервисного интерфейса
Сервисный интерфейс StateMachineNotification предоставляется модулем State Management (SM) платформы AUTOSAR Adaptive Platform ([SWS_SM_91028]). В то время как управляющие приложения запрашивают новые переходы состояний через отдельные интерфейсы, StateMachineNotification взаимодействует главным образом с обычными Adaptive Applications на прикладном уровне (AUTOSAR_AP_SWS_StateManagement с. 44). Сервис выступает в роли поставщика (Skeleton), тогда как потребляющие приложения подключены в качестве потребителей (Proxy) через ara::com. Если это сконфигурировано для конкретного конечного автомата, State Management инстанцирует собственный экземпляр этого интерфейса ([SWS_SM_00665]). В проектах, где определенные конечные автоматы работают сугубо внутренне и не имеют значения для приложений, от конфигурации и предоставления можно отказаться (AUTOSAR_AP_SWS_StateManagement с. 45).
Методы, события и поля
Интерфейс не определяет классических методов или чистых событий, а инкапсулирует состояние контролируемого конечного автомата в центральном поле ([SWS_SM_91109]). Поле CurrentState имеет тип данных StateMachineStateNameType и предназначено исключительно для чтения: оно содержит геттер (HasGetter: true), а также нотификатор (HasNotifier: true), но не имеет сеттера (HasSetter: false) ([SWS_SM_91109]). Таким образом, Adaptive Applications могут как опрашивать текущее значение синхронно через геттер, так и подписываться на уведомления, чтобы асинхронно получать информацию через ara::com при смене состояний соответствующего конечного автомата ([SWS_SM_91109]).
Как только запускается переход состояния конечного автомата, поле CurrentState принимает фиксированное значение "inTransition" ([SWS_SM_00616]). Это промежуточное состояние устанавливается независимо от инициирующего источника — например, Execution Management, Platform Health Management или управляющего приложения — и сохраняется даже в том случае, если в ответ на уведомления об ошибках происходят дальнейшие переходы (AUTOSAR_AP_SWS_StateManagement с. 67). Значение обновляется до фактического целевого состояния конечного автомата только после того, как будут обработаны все сопутствующие действия ([SWS_SM_00617]).
Жизненный цикл, предоставление и зависимости состояний
Запуск конечного автомата представляет собой многоэтапный процесс (AUTOSAR_AP_SWS_StateManagement с. 59). С точки зрения вышестоящих контроллеров конечный автомат считается запущенным только тогда, когда он существует и предлагаются назначенные ему интерфейсы (AUTOSAR_AP_SWS_StateManagement с. 59). Каждый сконфигурированный экземпляр StateMachineNotification предоставляется (offered) через ara::com, как только ActionListItem будет успешно обработан с помощью команды StartStateMachine ([SWS_SM_00618]). Это позволяет приложениям заблаговременно выполнять привязку к сервису.
При завершении или свертывании работы конечного автомата сервис отзывается: интерфейс перестает быть доступным (StopOffer) с того момента, когда обрабатывается соответствующее действие завершения ([SWS_SM_00619]). Если конечные автоматы управляются контроллером, метамодель дополнительно требует, чтобы каждый список действий ссылался на полное множество контролируемых агентов ([SWS_SM_CONSTR_00016]).
Обработка ошибок и граничные условия
Для StateMachineNotification в модели интерфейса не определены собственные специфичные для приложения Application Errors (такие как kOperationRejected), поскольку интерфейс работает исключительно в режиме наблюдения и не предлагает модифицирующих методов ([SWS_SM_91109]). Обработка ошибок опирается на коммуникационные механизмы ara::com при опросе поля, а также на оценку статуса "inTransition": потребителям разрешено интерпретировать это промежуточное значение как признак выполняющегося процесса переключения или устранения ошибок (AUTOSAR_AP_SWS_StateManagement с. 67).
Настоящее руководство основано исключительно на выдержках из спецификации AUTOSAR Adaptive Platform R25-11.
Mitglieder
CurrentStateThis field represents the current state of StateMachine
This field represents the current state of StateMachine. If StateMachine is currently in transition between two different states, then the value of this field is set to "InTransition". Adaptive Applications can use this field for notifications if they are interested in state changes of a particular StateMachine.
CurrentState : StateMachineStateNameType // Field (Getter, Notifier)
CurrentState : StateMachineStateNameType // Field (Getter, Notifier)
This field represents the current state of StateMachine. If StateMachine is currently in transition between two different states, then the value of this field is set to "InTransition". Adaptive Applications can use this field for notifications if they are interested in state changes of a particular StateMachine.
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал