Files
StandardSence/StandardScene.Signal/Model/SignalEnums.cs
T

63 lines
2.6 KiB
C#
Raw Normal View History

namespace StandardScene.Signal.Model
{
2026-08-17 15:20:27 +08:00
/// <summary>
/// PLC → 调度:读字节含义。对齐反编译 <c>ENUM_READ_SIGNAL</c>。
/// 机构用这一个字节告诉 AGV 现在能不能进、能不能出。
/// </summary>
public enum SignalReadValue : byte
{
2026-08-17 15:20:27 +08:00
/// <summary>0:空闲 / 未允许。RequestIn 必须看到写字节也是无状态才放行。</summary>
无状态 = 0,
2026-08-17 15:20:27 +08:00
/// <summary>1:允许进入机构。扫车 RequestIn 的放行条件之一。</summary>
允许进入 = 1,
2026-08-17 15:20:27 +08:00
/// <summary>2:允许离开机构。下线升销钉、等待通行机构、PointControl 等会等这个值。</summary>
允许离开 = 2
}
2026-08-17 15:20:27 +08:00
/// <summary>
/// 调度 → PLC:写字节含义。对齐反编译 <c>ENUM_WRITE_SIGNAL</c>。
/// AGV 用这一个字节向机构汇报当前处于进站流程的哪一步。
/// </summary>
public enum SignalWriteValue : byte
{
2026-08-17 15:20:27 +08:00
/// <summary>0:空闲。离站清空后回到此值,下一辆才能 RequestIn。</summary>
无状态 = 0,
2026-08-17 15:20:27 +08:00
/// <summary>1:已获准进入、正在往机构开。RequestIn 成功时写入。</summary>
进入中 = 1,
2026-08-17 15:20:27 +08:00
/// <summary>2:已到达机构内地标。Arrived 或上线 AutoLeave 检测到离开进入包含区时写入。</summary>
到位 = 2,
2026-08-17 15:20:27 +08:00
/// <summary>3:正在离开机构。上线看到车在跑、下线/等待通行启动后写入。</summary>
离开中 = 3,
2026-08-17 15:20:27 +08:00
/// <summary>4:已离开包含地标。PLC 确认后调度清零写字节和车号。</summary>
已离开 = 4
}
2026-08-17 15:20:27 +08:00
/// <summary>
/// 机构类型。对齐反编译 <c>ENUM_JGTYPE</c>。
/// 决定 <see cref="StandardScene.Signal.Plc.PlcStationLogic.AutoLeave"/> 走哪套离站,以及 RequestIn 要不要查机构内是否有车。
/// </summary>
public enum SignalLineType : byte
{
2026-08-17 15:20:27 +08:00
/// <summary>0:未配置,AutoLeave 不处理。</summary>
未知 = 0,
2026-08-17 15:20:27 +08:00
/// <summary>1:上线。进站靠扫车 RequestIn/Arrived,离站跟车位自动推进到位/离开中/已离开。</summary>
上线机构 = 1,
2026-08-17 15:20:27 +08:00
/// <summary>2:单牵引下线。RequestIn 时若 JgPointId 上已有车则不放行;离站要升销钉1。</summary>
单牵引下线机构 = 2,
2026-08-17 15:20:27 +08:00
/// <summary>3:双牵引下线。同单牵引,离站还需销钉2到位。</summary>
双牵引下线机构 = 3,
2026-08-17 15:20:27 +08:00
/// <summary>4:等待通行。无销钉,允许离开后停充启动即可。</summary>
等待通行机构 = 4
}
}