A.R.G.U.S 2.1.0
Adaptive Real-Time Guardian for Unsafe Situations
Loading...
Searching...
No Matches
Classes | Enumerations
RobotInterlock.hpp File Reference

Safety interlock gate between guardian decisions and robot motion. More...

#include <atomic>
#include <cstdint>

Go to the source code of this file.

Classes

class  RobotHardware
 Abstract hardware contract used by RobotInterlock. More...
 
class  RobotInterlock
 Thread-safe safety gate that owns interlock state transitions. More...
 
class  PhysicalRobotHardware
 Basic physical hardware adapter for interlock freeze/enable actions. More...
 

Enumerations

enum class  ControlEvent { FREEZE_NOW , ALLOW_MOTION }
 Control commands issued to the interlock. More...
 
enum class  InterlockState { SAFE , FROZEN , FAULT }
 Interlock state machine output states. More...
 
enum class  FreezeReason {
  NONE , MARKER_LOST , MARKER_OUT_OF_ROI , VISION_TIMEOUT ,
  POSITION_ERROR , DEPTH_EXCEEDED , WATCHDOG_TIMEOUT , UNKNOWN_FAULT
}
 Latched freeze/fault reason. More...
 

Enumeration Type Documentation

◆ ControlEvent

enum class ControlEvent
strong
Enumerator
FREEZE_NOW 

Immediately freeze/deny motion.

ALLOW_MOTION 

Attempt to allow motion when safety conditions permit.

Definition at line 14 of file RobotInterlock.hpp.

◆ FreezeReason

enum class FreezeReason
strong
Enumerator
NONE 

No freeze reason currently latched.

MARKER_LOST 

Vision lost expected marker.

MARKER_OUT_OF_ROI 

Marker/tool moved outside allowed ROI.

VISION_TIMEOUT 

Vision heartbeat/timing failure.

POSITION_ERROR 

Position-related safety violation.

DEPTH_EXCEEDED 

Forbidden depth-layer/colour detected.

WATCHDOG_TIMEOUT 

Guardian heartbeat timeout.

UNKNOWN_FAULT 

Unspecified fault reason.

Definition at line 31 of file RobotInterlock.hpp.

◆ InterlockState

enum class InterlockState
strong
Enumerator
SAFE 

Motion allowed.

FROZEN 

Motion blocked due to safety freeze.

FAULT 

Motion blocked due to hardware/path fault.

Definition at line 22 of file RobotInterlock.hpp.