类 CoEEmcy.CoEEmcyRecorder

java.lang.Object
com.darra.ethercat.slave.CoEEmcy.CoEEmcyRecorder
封闭类:
CoEEmcy

public static class CoEEmcy.CoEEmcyRecorder extends Object
CoE EMCY 紧急消息历史记录器 对应 C# CoEInstance 的 EMCY 历史记录扩展 使用环形缓冲区存储,最多保留最近 maxHistorySize 条记录。 所有操作线程安全。
  • 构造器详细资料

    • CoEEmcyRecorder

      public CoEEmcyRecorder(int slaveIndex)
      初始化 EMCY 记录器 (默认容量 256)
      参数:
      slaveIndex - 从站索引
    • CoEEmcyRecorder

      public CoEEmcyRecorder(int slaveIndex, int maxHistorySize)
      初始化 EMCY 记录器
      参数:
      slaveIndex - 从站索引
      maxHistorySize - 最大历史容量 (最小值 1)
  • 方法详细资料

    • Record

      public void Record(CoEEmcy.EmergencyMessage msg)
      记录一条 EMCY 紧急消息
      参数:
      msg - 紧急消息
    • RecordEmergency

      public void RecordEmergency(int errorCode, int errorReg, int b1, int w1, int w2)
      记录一条 EMCY 紧急消息 (由事件系统内部调用) 根据原始数据构造消息并记录
      参数:
      errorCode - 紧急错误代码
      errorReg - 错误寄存器
      b1 - 厂商特定字节
      w1 - 厂商特定字 1
      w2 - 厂商特定字 2
    • GetHistory

      public List<CoEEmcy.EmergencyMessage> GetHistory()
      获取 EMCY 历史记录 (副本)
      返回:
      历史记录列表副本
    • Clear

      public void Clear()
      清除 EMCY 历史记录
    • GetCount

      public int GetCount()
      获取当前记录数量
      返回:
      记录数量
    • MaxHistorySize

      public int MaxHistorySize()
      获取/设置最大历史容量
      返回:
      最大历史容量
    • MaxHistorySize

      public void MaxHistorySize(int value)
      设置最大历史容量,容量缩小时裁剪多余旧记录
      参数:
      value - 新容量 (最小值 1)
    • toString

      public String toString()
      覆盖:
      toString 在类中 Object