wcs_server_kate_suzhou/WcsMain/EquipOperation/Entity/Stacker/StackerPlcTask.cs

145 lines
3.3 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System.Collections;
using WcsMain.Enum.Stacker;
namespace WcsMain.EquipOperation.Entity.Stacker;
/// <summary>
/// 写入PLC的任务 ---- 堆垛机
/// </summary>
public class StackerPlcTask
{
/// <summary>
/// 设备号,用于识别写入哪个堆垛机
/// </summary>
public int? StackerId { get; set; }
/// <summary>
/// 任务号
/// </summary>
public int? PlcId { get; set; } = 0;
/// <summary>
/// 任务类型
/// </summary>
public short? TaskType { get; set; } = 0;
/// <summary>
/// 取货站台
/// </summary>
public short? GetStand { get; set; } = 0;
/// <summary>
/// 入库巷道号
/// </summary>
public short? InTunnelId { get; set; } = 0;
/// <summary>
/// 出库巷道号
/// </summary>
public short? OutTunnelId { get; set; } = 0;
/// <summary>
/// 卸货站台
/// </summary>
public short? SetStand { get; set; } = 0;
/// <summary>
/// 取货排
/// </summary>
public short? GetQueue { get; set; } = 0;
/// <summary>
/// 取货列
/// </summary>
public short? GetLine { get; set; } = 0;
/// <summary>
/// 取货层
/// </summary>
public short? GetLayer { get; set; } = 0;
/// <summary>
/// 卸货排
/// </summary>
public short? SetQueue { get; set; } = 0;
/// <summary>
/// 卸货列
/// </summary>
public short? SetLine { get; set; } = 0;
/// <summary>
/// 卸货层
/// </summary>
public short? SetLayer { get; set; } = 0;
/// <summary>
/// 取货深度
/// </summary>
public short? GetDeep { get; set; } = 0;
/// <summary>
/// 卸货深度
/// </summary>
public short? SetDeep { get; set; } = 0;
/// <summary>
/// 尺寸
/// </summary>
public short? Size { get; set; } = 0;
/// <summary>
/// 重量
/// </summary>
public short? Weight { get; set; } = 0;
/// <summary>
/// 料箱码
/// </summary>
public int Code { get; set; }
public override string ToString()
{
return $"PlcId{PlcId}{GetQueue}排{GetLine}列{GetLayer}层{GetDeep}深 --> {SetQueue}排{SetLine}列{SetLayer}层{SetDeep}深";
}
/// <summary>
/// 默认的直接从入口搬出去的任务
/// </summary>
/// <param name="plcId"></param>
/// <param name="stackerId"></param>
/// <param name="forkId"></param>
/// <param name="vehicleNo"></param>
/// <returns></returns>
public static StackerPlcTask DefaultErrTask(int plcId, int stackerId, int forkId, int vehicleNo = 999999999)
{
StackerPlcTask stackerTask = new()
{
StackerId = stackerId,
PlcId = plcId,
TaskType = Convert.ToInt16(WcsTaskTypeEnum.moveTask),
GetStand = 0,
InTunnelId = Convert.ToInt16(stackerId),
OutTunnelId = Convert.ToInt16(stackerId),
SetStand = 0,
GetQueue = 2,
GetLine = Convert.ToInt16(forkId),
GetLayer = 1,
GetDeep = 1,
SetQueue = 2,
SetLine = Convert.ToInt16(forkId),
SetLayer = 2,
SetDeep = 1,
Size = 0,
Weight = 0,
Code = vehicleNo,
};
return stackerTask;
}
}