using WIDESEAWCS_Model.Models;
|
using WIDESEAWCS_QuartzJob.DeviceBase;
|
|
namespace WIDESEAWCS_Tasks.StackerCraneJob
|
{
|
/// <summary>
|
/// 堆垛机任务命令数据类
|
/// </summary>
|
/// <remarks>
|
/// 继承自 DeviceCommand,用于与堆垛机进行 PLC 通信。
|
/// 包含任务号、作业类型、起止行列层坐标等字段。
|
/// 标准命令格式,用于大多数巷道的堆垛机。
|
/// </remarks>
|
public class StackerCraneTaskCommand : DeviceCommand
|
{
|
/// <summary>
|
/// 任务号
|
/// </summary>
|
/// <remarks>
|
/// WCS 分配的任务唯一标识号。
|
/// </remarks>
|
public int TaskNum { get; set; }
|
|
/// <summary>
|
/// 作业类型
|
/// </summary>
|
/// <remarks>
|
/// 标识任务的类型。
|
/// </remarks>
|
public short WorkType { get; set; }
|
|
/// <summary>
|
/// 无效字段(保留字段)
|
/// </summary>
|
/// <remarks>
|
/// 历史遗留字段,目前不再使用。
|
/// </remarks>
|
[DataLength(6)]
|
public string FieldName { get; set; } = "";
|
|
/// <summary>
|
/// 起始行
|
/// </summary>
|
/// <remarks>
|
/// 任务的起始位置-行坐标(货架行号)。
|
/// 入库时表示货物来自哪个位置。
|
/// </remarks>
|
public short StartRow { get; set; }
|
|
/// <summary>
|
/// 起始列
|
/// </summary>
|
/// <remarks>
|
/// 任务的起始位置-列坐标(货架列号)。
|
/// 入库时表示货物来自哪个位置。
|
/// </remarks>
|
public short StartColumn { get; set; }
|
|
/// <summary>
|
/// 起始层
|
/// </summary>
|
/// <remarks>
|
/// 任务的起始位置-层坐标(货架层号)。
|
/// 入库时表示货物来自哪个位置。
|
/// </remarks>
|
public short StartLayer { get; set; }
|
|
/// <summary>
|
/// 目标行
|
/// </summary>
|
/// <remarks>
|
/// 任务的目标位置-行坐标(货架行号)。
|
/// 入库时表示货物存放到哪个位置。
|
/// 出库时表示货物从哪个位置取出。
|
/// </remarks>
|
public short EndRow { get; set; }
|
|
/// <summary>
|
/// 目标列
|
/// </summary>
|
/// <remarks>
|
/// 任务的目标位置-列坐标(货架列号)。
|
/// 入库时表示货物存放到哪个位置。
|
/// 出库时表示货物从哪个位置取出。
|
/// </remarks>
|
public short EndColumn { get; set; }
|
|
/// <summary>
|
/// 目标层
|
/// </summary>
|
/// <remarks>
|
/// 任务的目标位置-层坐标(货架层号)。
|
/// 入库时表示货物存放到哪个位置。
|
/// 出库时表示货物从哪个位置取出。
|
/// </remarks>
|
public short EndLayer { get; set; }
|
|
/// <summary>
|
/// 作业命令
|
/// </summary>
|
/// <remarks>
|
/// 控制堆垛机的动作:
|
/// - 1: 开始执行任务
|
/// - 2: 任务完成/停止
|
/// - 3: 消防任务开始
|
/// </remarks>
|
public short WorkAction { get; set; }
|
}
|
}
|