使用tinyFSM优化了状态机
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
@startuml PowerManagerFsm状态图
|
||||
[*] --> InitState
|
||||
|
||||
state InitState {
|
||||
[*] --> 等待复合管控消息
|
||||
等待复合管控消息 --> 等待关键断路器闭合: 连接成功
|
||||
等待复合管控消息 --> FaultState: 超时(10秒)
|
||||
等待关键断路器闭合 --> StandbyState: 关键断路器闭合
|
||||
等待关键断路器闭合 --> FaultState: 系统错误
|
||||
}
|
||||
|
||||
state StandbyState {
|
||||
[*] --> 待机
|
||||
待机 --> FaultState: 检测到错误
|
||||
待机 --> 处理电源命令: 收到命令
|
||||
处理电源命令 --> 待机: 完成处理
|
||||
}
|
||||
|
||||
state FaultState {
|
||||
[*] --> 故障处理
|
||||
}
|
||||
|
||||
InitState --> FaultState : FaultEvent(faultCode=1/2)
|
||||
StandbyState --> FaultState : FaultEvent(faultCode)
|
||||
InitState --> StandbyState : StandbyEvent
|
||||
@enduml
|
||||
Reference in New Issue
Block a user