DEENESPTFRRUARHIKOZHNL

interface de service StateMachineService

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

Guide utilisateurGÉNÉRÉ PAR IA

Permet aux applications de commande de demander des changements d'état pour les machines à états configurées.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : e242ff13fc20 Provenance Questions ouvertes (1)
traduit du guide allemandGénéré par l'IAgemini-3.8-flash-low · 2026-10-13 · Original allemand

Permet aux applications de commande de demander des changements d'état pour les machines à états configurées.

L'interface de service StateMachineService est mise à disposition par State Management pour chaque machine à états configurée, afin qu'une SMControlApplication puisse demander de manière ciblée des changements d'état via la méthode RequestTransition [SWS_SM_00600], [SWS_SM_91107]. Le service est proposé immédiatement après le traitement réussi de l'étape de démarrage de la machine à états et acquitte les demandes sans sémantique Fire-and-Forget. Les demandes sont toutefois rejetées avec des erreurs spécifiques si la valeur transmise n'est pas valide, si la transition depuis l'état actuel est inadmissible ou si une session de mise à jour ou de récupération est active simultanément [SWS_SM_91107].

Rôle et contexte système de l'interface de service

L'interface de service StateMachineService est mise à disposition par le cluster fonctionnel State Management (SM) via un port de service standardisé [SWS_SM_91021]. Conformément à la définition formelle d'interface [SWS_SM_91022], State Management instancie et propose ce service basé sur ara::com pour chaque instance configurée individuelle d'une StateMachine [SWS_SM_00600].

Une SMControlApplication agit en tant que consommateur principal de cette interface et interagit directement avec la machine à états via le service afin de demander des changements d'état SWS StateManagement §9.2.2 « StateMachine service ». Alors que les notifications relatives aux états survenus vers les applications adaptatives régulières s'effectuent principalement via l'interface de service séparée StateMachineNotification [SWS_SM_00665], StateMachineService constitue l'interface de contrôle active pour l'initiation de transitions.

Méthodes et sémantique d'appel

L'interface définit la méthode RequestTransition, qui doit être appelée par la SMControlApplication afin de provoquer un changement d'état dans la StateMachine référencée [SWS_SM_91107]. La méthode attend le paramètre d'entrée TransitionRequest de type TransitionRequestType, qui représente la valeur de transition demandée au sein de la TransitionRequestTable sous-jacente [SWS_SM_91107], SWS StateManagement §7.x « TransitionRequestTable ».

Pour RequestTransition, la propriété Fire & Forget est définie sur false [SWS_SM_91107]. L'application appelante reçoit ainsi un acquittement contraignant de la requête. Interprétation : au sein du patron proxy-skeleton de ara::com, le retour d'information devrait typiquement être fourni via un ara::core::Future ou un objet de résultat correspondant, qui se résout en cas de succès ou transmet un statut d'erreur spécifique en cas d'erreur. Question Q-41fa67738672c735 (ouverte)

Cycle de vie et dépendances d'état

Chaque service ara::com configuré pour une StateMachine à démarrer – y compris StateMachineService – doit être disponible et proposé (Offer) dès que l'étape ActionListItem « StartStateMachine » a été traitée avec succès [SWS_SM_00618]. Cela autorise la SMControlApplication à demander une transition immédiatement après la création réussie de la machine à états, même si la machine à états traite encore à ce moment-là la ActionList initiale SWS StateManagement §7.x « StateMachine service interfaces - Offer ».

L'offre du service prend fin (StopOffer) dès que le traitement d'arrêt de la machine à états respective a lieu [SWS_SM_00619]. Les appels sont en outre soumis à des préconditions fonctionnelles : si une session de mise à jour est actuellement en cours d'exécution dans le système, le déclenchement de changements d'état est en principe inadmissible [SWS_SM_91107].

Gestion des erreurs et Application Errors

Lors de l'exécution de RequestTransition, des Application Errors spécifiques peuvent survenir et être renvoyés par State Management à l'appelant [SWS_SM_91107] :

  • kInvalidValue : la valeur transmise n'est associée à aucune transition dans la TransitionRequestTable [SWS_SM_91107].
  • kTransitionNotAllowed : la transition d'état demandée n'est pas autorisée à partir de l'état actuel de la StateMachine [SWS_SM_91107].
  • kRecoveryTransitionOngoing : la demande est rejetée car une récupération (Recovery) est actuellement en cours d'exécution [SWS_SM_91107].
  • kTransitionFailed : une erreur est survenue pendant l'exécution de la transition vers l'état cible [SWS_SM_91107].
  • kOperationCanceled : la demande a été interrompue car elle a été remplacée par une demande plus récente [SWS_SM_91107].
  • kUpdateInProgress : l'opération est interdite car une session de mise à jour est actuellement active [SWS_SM_91107].
Déroulement d’une demande de transition via StateMachineServiceSMControlApplicationStateMachineServiceState ManagementUse Case: Service-BereitstellungStartStateMachine verarbeitet: OfferService()Use Case: Demander une transition d’étatRequestTransition(TransitionRequest)Zustandswechsel verarbeitenaltTransition réussieExécuter la transition conformément à TransitionRequestTableErfolgRetour : succèsFehlerfall (z. B. kTransitionNotAllowed, kUpdateInProgress)Application ErrorRetour avec code d’erreur

Diagramme de séquence : déroulement d'une demande de transition via StateMachineService avec mise à disposition, acquittement de succès et traitement des erreurs. Sources : [SWS_SM_91107], [SWS_SM_00618], SWS StateManagement §7.x « StateMachine service interfaces - Offer ».

Ce guide a été généré par une IA sur la base de la spécification AUTOSAR R25-11.

Mitglieder

Carte des membres

Vue détaillée

Sélectionnez une entrée dans le plan.

Méthodes

RequestTransition méthode de service

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

RequestTransition (IN TransitionRequestType TransitionRequest)

Types de données

TransitionRequestType type de données

Erreurs d'application

kInvalidValue erreur d'application

The provided value is not mapped to any transition.

kOperationCanceled erreur d'application

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

kRecoveryTransitionOngoing erreur d'application

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

kTransitionFailed erreur d'application

During transition to the requested state an error occurred.

kTransitionNotAllowed erreur d'application

Requested transition is not possible from current StateMachine state.

kUpdateInProgress erreur d'application

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

Documentation

méthode de service 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.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : e769039e5880 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation

La méthode de service RequestTransition est appelée par une SMControlApplication sur l'interface StateMachineService afin de demander un changement d'état d'une StateMachine référencée ([SWS_SM_91107], SWS StateManagement §7.7 « SMControlApplication »). TransitionRequest est transmis en tant que paramètre. La méthode possède des valeurs de retour et ne fonctionne pas selon le principe du « fire and forget ». State Management mappe la valeur d'entrée via la TransitionRequestTable en fonction de l'état actuel vers un état suivant ([SWS_SM_00607]) et demande les Function Group States résultants auprès d'Execution Management via SetState() (AP EXP SWArchitecture §11.1 « Change System State »).

Gestion des erreurs

En cas d'erreur, le traitement s'interrompt et RequestTransition renvoie des erreurs d'application spécifiques ([SWS_SM_91107]) :

  • kInvalidValue : la valeur transmise pour TransitionRequest n'est pas configurée dans la TransitionRequestTable ([SWS_SM_00604]).
  • kTransitionNotAllowed : la transition n'est pas autorisée par la configuration à partir de l'état actuel de la StateMachine ([SWS_SM_00603]).
  • kRecoveryTransitionOngoing : une récupération d'erreur interne est active, raison pour laquelle la demande n'est pas traitée davantage ([SWS_SM_00605]).
  • kUpdateInProgress : le changement d'état n'est pas autorisé pendant une session de mise à jour active ([SWS_SM_91107]).
  • kTransitionFailed : une erreur est survenue lors du traitement de ActionListItems ([SWS_SM_00650]).

Concurrence et restrictions

Si une nouvelle demande de transition est acceptée alors qu'un appel RequestTransition précédent est encore en attente pour la même StateMachine, la demande précédente est interrompue et acquittée par kOperationCanceled ([SWS_SM_00606]). Les actions temporisées telles que Sleep ActionListItem ne bloquent pas les déclencheurs entrants ; un appel RequestTransition peut donc également déclencher un changement d'état pendant un tel temps d'attente (SWS StateManagement §7.7.9 « ActionListItem Sleep »).

Cette note d'utilisation a été générée automatiquement et repose exclusivement sur les spécifications d'AUTOSAR R25-11.

Guide de l'implémenteur à venir (complexité 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#0b2d3edc
Content hash
0b2d3edc
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