본문 바로가기

Study_Engineering

State Machine 이란

728x90
반응형

간단한 State Machine 예시. 출처 : https://medium.com/meliopayments/simplify-your-code-with-state-machines-c9a0f12e0e62

1. State Machine

  • System Modeling에 사용되는, System이 가질 수 있는 State와 그들간의 Transition(전이)를 정의한 수학적 모델
  • 각각의 State들을 어떤 조건에 따라 연결한 Model of Computation(계산 모델)
    • Model of Computation : 주어진 Input에 따른 Function의 Output이 어떻게 계산되는지 설명하는 Model
    • 계산, 메모리 및 통신 단위 등에 대해 설명
  • 가질 수 있는 State의 수에 따라 FSM / ISM으로 구분되며, 주로 FSM을 사용함 
    • FSM (Finite State Machine) : Finite한 State로 구성된 State Machine
    • ISM (Inficite State Machine) : Infinite한 State로 구성된 State Machine

FSM (Finite State Macine)

  • 한 번에 오직 한 개의 State만을 가지며, Current State는 임의의 주어진 시간동안의 State를 의미 
  • 어떠한 Event에 의해 한 상태에서 다른 상태로 변할 수 있으며, 이를 상태 천이(Transition)이라 한다
    • 하나의 Input을 통해 State Transition이 이뤄짐
  • FSM은 현재 상태로부터 가능한 천이 상태와, 그 천이를 일으키는 조건의 집합으로서 정의

사용 이유

  • 안정성 : 정해진 Event에 따라서만 System이 동작
  • 편의성 : 설계가 간단해지며 문서화에 걸리는 시간 단축

예시 : 충전기 State Machine

Simple Charger State Machine Example

  • A. Init State : 시스템 초기화
    1. 초기화 완료 후 Idle State로 Transition
  • B. Idle State : 대기
    2. 충전기 연결 시 Charge State로 Transition
  • C. Charge State : 충전 시작
    3. 충전 완료 시 Idle State로 Transition
    4. 충전 중 오류 발생 시 Error State로 Transition
  • D. Error State : 충전 중 오류 발생
    5. 복구 가능한 오류인 경우 Recover State로 Transition
    6. 복구 불가능한 오류인 경우 Reset State로 Transition
  • E. Recover State : 발생 오류 복구
    7. 오류 복구 완료 후 Idle State로 Transition
  • F. Reset State : 시스템 Reset
    8. 시스템 Reset 후 Idle State로 Transition
위의 A~F가 State, 1~8이 Event에 해당

 

 

 


참고 자료 : 

https://ko.wikipedia.org/wiki/%EC%9C%A0%ED%95%9C_%EC%83%81%ED%83%9C_%EA%B8%B0%EA%B3%84

 

유한 상태 기계 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 오토마타 벤 다이어그램 (각 레이어를 클릭하면 해당 글로 이동합니다.) 유한 상태 기계(finite-state machine, FSM) 또는 유한 오토마톤(finite automaton, FA; 복수형: 유한

ko.wikipedia.org

 

https://ko.wikipedia.org/wiki/%EA%B3%84%EC%82%B0_%EB%AA%A8%EB%8D%B8

 

계산 모델 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전.

ko.wikipedia.org

 

https://underflow101.tistory.com/55

 

State Machine 이란 무엇인가 - 1

서 론 State Machine. 스테이트 머신은 흔히들 여러 이름으로 불린다. State Machine (상태 기계), Finite State Machine (유한 상태 기계), Finite Automaton (유한 오토마톤), Finite Automata (유한 오토마타), 등등... 보

underflow101.tistory.com

 

https://blog.naver.com/artera87/50005424128

 

State Machine 이란?

제목: State Machine 이란?   State Machine 이란 각각의 State들을 어떤 조건에 따라 연결해 놓...

blog.naver.com

 

 

 

728x90
반응형

'Study_Engineering' 카테고리의 다른 글

Inrush Current(돌입 전류)란  (0) 2025.09.30
USB 충전  (1) 2025.05.23
Thread란  (0) 2024.07.09
Nelder-Mead Algorithm 이란  (0) 2024.05.03
Unscented Kalman Filter란  (0) 2024.02.13