Please enable JavaScript.
Coggle requires JavaScript to display documents.
Robot State manager - Coggle Diagram
Robot State manager
List of States
AutoRun
Conditions = AutoManual(TRUE), StartLached(TRUE), StopLached(FALSE), HWfault(FASLE), ErrorSTR("NULL"), SystemDiagnosticsLevel(ZERO)
-
WaitAutoRun
Conditions = AutoManual(TRUE), StartLatched(False), StopLachted(FALSE), HWfault(FASLE), ErrorSTR("NULL"), SystemDiagnosticsLevel(ZERO)
-
RobotNUCFault
Conditions =Automanual(TRUE, )HWfault(False) and HWErrorSTR("NULL") and SystemDiagnosticsLevel(2 or More).
Behavior = This is Nuc error handling state, HW has no fault so robot will run manual mode if AutoManual(False). Further, This state can require a reset ack and all system error solved to run in Auto without removing the robot from current mission.
RobotHWFault
Conditions =HWfault(True) and HWErrorSTR("ERROR") and SystemDiagnosticsLevel(NUC is OK to run other than HWfault).
Behavior = If HW is at Fault, and NUC is ok then HW will have to solve the error and if its not resetable then Robot leaves the mission
ManualRun
Conditions = AutoManual(FALSE), StartLached(Flase), StopLached(FALSE), HWfault(FASLE), ErrorSTR("NULL"), SystemDiagnosticsLevel(ZERO)
Behavior = Runs Velocities from manual pendent, UI joystick.
-
INIT
-
Behavior = Inits all vars, states, and gives out a first stable state
-
-
Interrupts
-
Estops
-
Behavior: calls Interrupt on current state, Stays in interrupt and looks for resetting.
HWFault
-
Behavior : Calls interrupts on current states, stays in interrupt and looks for resetting
NUCFault
-
Behavior : Calls interrupts on current states, stays in interrupt and looks for resetting
-
-
Tasks at hand
-
-
Handles transitions, Now transitions require unsetting and setting of env variables, Hence class based architecure should be followed with base architecture for states
-
Architechture
<BaseSate> - Gives methods for, OnInit(), OnActive(), OnExit(), OnInterrupt(), OnInteruptEND()
-
OnInterruptEnd will make switch to a stable state, most probably WaitAutoRun or ManualRun
<StateInterface> - Gives methods for Transitiontostate(), Tick()
Tick() will run state, transite state, give interrupts
-