DEENESPTFRRUARHIKOZHNL

сервисный интерфейс StateMachineService

Als ara::com-Dienst modellierte Schnittstelle; Methoden/Felder werden über generierte Proxies/Skeletons aufgerufen (Parameterrichtung IN/OUT).

Руководство пользователяСОЗДАНО ИИ

Позволяет управляющим приложениям запрашивать смену состояния для сконфигурированных конечных автоматов.
СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: e242ff13fc20 Происхождение Открытые вопросы (1)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Позволяет управляющим приложениям запрашивать смену состояния для сконфигурированных конечных автоматов.

Сервисный интерфейс StateMachineService предоставляется State Management для каждого сконфигурированного конечного автомата, чтобы SMControlApplication могло целенаправленно запрашивать смену состояния через метод RequestTransition [SWS_SM_00600], [SWS_SM_91107]. Сервис предлагается непосредственно после успешного выполнения шага запуска конечного автомата и квитирует запросы без семантики Fire-and-Forget. Однако запросы отклоняются со специфическими ошибками, если переданное значение недействительно, переход из текущего состояния недопустим или одновременно активен сеанс обновления либо восстановления (Recovery) [SWS_SM_91107].

Роль и системный контекст сервисного интерфейса

Сервисный интерфейс StateMachineService предоставляется функциональным кластером State Management (SM) через стандартизированный сервисный порт [SWS_SM_91021]. Согласно формальному определению интерфейса [SWS_SM_91022], State Management инстанцирует и предлагает данный сервис на базе ara::com для каждого отдельного сконфигурированного экземпляра StateMachine [SWS_SM_00600].

В качестве основного потребителя (Consumer) этого интерфейса выступает SMControlApplication, которое напрямую взаимодействует с конечным автоматом через данный сервис для запроса смены состояний SWS StateManagement §9.2.2 «StateMachine service». В то время как уведомления о наступивших состояниях передаются обычным адаптивным приложениям преимущественно через отдельный сервисный интерфейс StateMachineNotification [SWS_SM_00665], StateMachineService представляет собой активный интерфейс управления для инициирования переходов.

Методы и семантика вызова

Интерфейс определяет метод RequestTransition, который должен вызываться SMControlApplication для выполнения изменения состояния в указанном StateMachine [SWS_SM_91107]. Метод ожидает входной параметр TransitionRequest типа TransitionRequestType, представляющий требуемое значение перехода в базовом TransitionRequestTable [SWS_SM_91107], SWS StateManagement §7.x «TransitionRequestTable».

Для RequestTransition свойство Fire & Forget установлено в false [SWS_SM_91107]. Таким образом, вызывающее приложение получает обязательное квитирование запроса. Интерпретация: в рамках паттерна прокси-скелетона ara::com обратная связь, как правило, должна предоставляться через ara::core::Future или соответствующий объект результата, который завершается успешно в случае успеха или передает специфический статус ошибки в случае сбоя. Вопрос Q-41fa67738672c735 (открытый)

Жизненный цикл и зависимости от состояний

Каждый сконфигурированный для запускаемого StateMachine сервис ara::com — включая StateMachineService — должен быть доступен и предлагаться (Offer), как только ActionListItem «StartStateMachine» будет успешно выполнен [SWS_SM_00618]. Это позволяет SMControlApplication запрашивать переход сразу после успешного создания конечного автомата, даже если конечный автомат в этот момент все еще обрабатывает начальное ActionList SWS StateManagement §7.x «StateMachine service interfaces - Offer».

Предложение сервиса прекращается (StopOffer), как только начинается обработка останова соответствующего конечного автомата [SWS_SM_00619]. Вызовы также подчиняются функциональным предварительным условиям: если в системе в данный момент выполняется сеанс обновления, инициация смены состояний принципиально недопустима [SWS_SM_91107].

Обработка ошибок и Application Errors

При выполнении RequestTransition могут возникать специфические Application Errors, о которых State Management сообщает вызывающей стороне [SWS_SM_91107]:

  • kInvalidValue: переданное значение не сопоставлено ни с одним переходом в TransitionRequestTable [SWS_SM_91107].
  • kTransitionNotAllowed: запрошенный переход состояния недопустим, исходя из текущего состояния StateMachine [SWS_SM_91107].
  • kRecoveryTransitionOngoing: запрос отклонен, так как в данный момент выполняется устранение ошибок (Recovery) [SWS_SM_91107].
  • kTransitionFailed: во время выполнения перехода в целевое состояние произошла ошибка [SWS_SM_91107].
  • kOperationCanceled: запрос был отменен, так как он был заменен более новым запросом [SWS_SM_91107].
  • kUpdateInProgress: операция запрещена, так как в данный момент активен сеанс обновления [SWS_SM_91107].
Последовательность запроса перехода через StateMachineServiceSMControlApplicationStateMachineServiceState ManagementUse Case: Service-BereitstellungStartStateMachine verarbeitet: OfferService()Use Case: Запросить смену состоянияRequestTransition(TransitionRequest)Zustandswechsel verarbeitenaltУспешный переходВыполнить переход согласно TransitionRequestTableErfolgОтвет: успехFehlerfall (z. B. kTransitionNotAllowed, kUpdateInProgress)Application ErrorОтвет с кодом ошибки

Диаграмма последовательности: процесс запроса перехода через StateMachineService с предоставлением, квитированием успешного выполнения и обработкой ошибок. Источники: [SWS_SM_91107], [SWS_SM_00618], SWS StateManagement §7.x «StateMachine service interfaces - Offer».

Данное руководство было сгенерировано ИИ на основе спецификации AUTOSAR R25-11.

Mitglieder

Карта членов

Подробный вид

Выберите элемент в оглавлении.

Методы

RequestTransition сервисный метод

Has to be called by a SMControlApplication to request a change in the referenced StateMachine.

RequestTransition (IN TransitionRequestType TransitionRequest)

Типы данных

TransitionRequestType тип данных

Ошибки приложения

kInvalidValue ошибка приложения

The provided value is not mapped to any transition.

kOperationCanceled ошибка приложения

The request was replaced by a newer one and therefore it was cancelled

kRecoveryTransitionOngoing ошибка приложения

Request will not be carried out, because currently recovery is ongoing.

kTransitionFailed ошибка приложения

During transition to the requested state an error occurred.

kTransitionNotAllowed ошибка приложения

Requested transition is not possible from current StateMachine state.

kUpdateInProgress ошибка приложения

Requested operation is not allowed as update session is in progress.

Документация

сервисный метод RequestTransition [SWS_SM_91107] Upstream: RS_SM_00001, RS_SM_00004

RequestTransition (IN TransitionRequestType TransitionRequest)

Has to be called by a SMControlApplication to request a change in the referenced StateMachine.

СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: e769039e5880 Происхождение
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Использование

Сервисный метод RequestTransition вызывается из SMControlApplication на интерфейсе StateMachineService для запроса смены состояния ассоциированного StateMachine ([SWS_SM_91107], SWS StateManagement §7.7 «SMControlApplication»). В качестве параметра передается TransitionRequest. Метод возвращает значения и не работает по принципу Fire-and-Forget. State Management сопоставляет входное значение через TransitionRequestTable в зависимости от текущего состояния со следующим состоянием ([SWS_SM_00607]) и запрашивает результирующие Function Group States через SetState() у Execution Management (AP EXP SWArchitecture §11.1 «Change System State»).

Обработка ошибок

В случае сбоя обработка прерывается и RequestTransition возвращает специфичные прикладные ошибки ([SWS_SM_91107]):

  • kInvalidValue: переданное значение для TransitionRequest не сконфигурировано в TransitionRequestTable ([SWS_SM_00604]).
  • kTransitionNotAllowed: переход, исходя из текущего состояния StateMachine, согласно конфигурации недопустим ([SWS_SM_00603]).
  • kRecoveryTransitionOngoing: активно внутреннее устранение ошибок, поэтому запрос дальше не обрабатывается ([SWS_SM_00605]).
  • kUpdateInProgress: во время активного сеанса обновления смена состояния недопустима ([SWS_SM_91107]).
  • kTransitionFailed: при обработке ActionListItems произошла ошибка ([SWS_SM_00650]).

Параллелизм и ограничения

Если принимается новый запрос на переход в то время, как для того же StateMachine еще ожидает выполнения более ранний вызов RequestTransition, предыдущий запрос отменяется и подтверждается с kOperationCanceled ([SWS_SM_00606]). Действия, управляемые по времени, такие как Sleep ActionListItem, не блокируют входящие триггеры; поэтому вызов RequestTransition может инициировать смену состояния также и во время такого ожидания (SWS StateManagement §7.7.9 «ActionListItem Sleep»).

Данное указание по использованию было сгенерировано автоматически и основано исключительно на спецификациях AUTOSAR R25-11.

Руководство разработчика реализации в подготовке (сложность I2)

Scopeservice interface StateMachineService
Fire & Forgetfalse
Version1.0

Parameter

NameRichtungTypBeschreibung
TransitionRequestINTransitionRequestTypeRepresents the value to be used as TransitionRequest value in the Transition RequestTable.

Application Errors

FehlerBeschreibung
kInvalidValueThe provided value is not mapped to any transition.
kTransitionNotAllowedRequested transition is not possible from current StateMachine state.
kRecoveryTransitionOngoingRequest will not be carried out, because currently recovery is ongoing.
kTransitionFailedDuring transition to the requested state an error occurred.
kOperationCanceledThe request was replaced by a newer one and therefore it was cancelled
kUpdateInProgressRequested operation is not allowed as update session is in progress.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_SM_91107
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_SM_91107@rel:R25-11#44375b36
Content hash
44375b36
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_StateManagement.pdf#nameddest=SWS_SM_91107
Status: valid/unmigrated Version: rel:R25-11#d4767b6b Versionshistorie & Revisions (1 transition, 3 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_SM_91107@rel:R25-11#d4767b6b
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#a5b9b5c32026-09-30
  • R24-11rel:R24-11#75ea2a2c2026-10-14
  • R25-11rel:R25-11#d4767b6b2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill