using BPASmartClient.JXJFoodSmallStation.Model.Siemens; using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using System.Text; using System.Threading.Tasks; namespace BPASmartClient.JXJFoodSmallStation.Model { public class GVL_SmallStation { private volatile static GVL_SmallStation SmallStation; public static GVL_SmallStation GetInstance => SmallStation ?? (SmallStation = new GVL_SmallStation()); private GVL_SmallStation() { } /// <summary> /// 配料站料仓数目 /// </summary> public const int Max_DosingSotckBinNum = 15; /// <summary> /// 风送料仓数目 /// </summary> public const int Max_PowderSotckBinNum = 15; public bool HeartBeatToPlc { get; set; } = false; public bool HeartBeatFromPlc { get; set; } = false; /// <summary> /// 是否允许西门子下发配方 /// </summary> public static bool IsAllowSiemensSendRecipe { get; set; } = false; /// <summary> /// 往输送带下发配方完成 /// </summary> public bool IssueRecipeFinishStation1 { get; set; } = false; /// <summary> /// 配方下发状态 =0:配方未下发 ,1:配方下发给plc ,2:plc成功接收配方 /// </summary> public int RecipeStatusID { get; set; } = 0; /// <summary> /// Tray1的柔性味魔方配料标志(下发配方时,若柔性味魔方的状态=3,复位该状态) /// </summary> public bool DosingTray1 { get; set; } = true;//默认为true,初始时,判断柔性味魔方的状态。 /// <summary> /// Tray2的柔性味魔方配料标志 /// </summary> public bool DosingTray2 { get; set; } = true; public int DosingTray1Loc { get; set; } = 0; public int DosingTray2Loc { get; set; } = 0; /// <summary> /// 配方下发状态 =0:配方未下发 ,1:配方下发给plc ,2:plc成功接收配方 /// </summary> public int RecipeStatusIDTray2 { get; set; } = 0; /// <summary> /// 往输送带下发配方完成 /// </summary> public bool IssueRecipeFinishStation2 { get; set; } = false; public bool IsAllow { get; set; } = false; public bool IsAllowOut { set; get; } = false; /// <summary> /// 当前料仓的位置 /// </summary> public int StockInIsWork { get; set; } = 0; /// <summary> /// 单个配方执行完成标志 /// </summary> public bool RecipeFinish { get; set; } = false; /// <summary> /// 记录AGV进站送货的指令顺序 /// </summary> public int AgvDeliveryPosition { get; set; }= 0; /// <summary> /// 记录AGV进站取货的指令顺序 /// </summary> public int AgvPickUpPosition { get; set; } = 0; /// <summary> /// 是否使用粉仓 /// </summary> public bool IsUseWindSend; /// <summary> /// 风送配料完成标志 /// </summary> public bool WindSendDosingFinish; /// <summary> /// 是否占用托盘1 /// </summary> public bool IsOccupationTray1 { get; set; } = true; /// <summary> /// 是否占用托盘2 /// </summary> public bool IsOccupationTray2 { get; set; } = true; /// <summary> /// 顶升气缸的信号 /// </summary> public bool[] Cylinder_JackInfo = new bool[15]; #region 本地模拟配方 /// <summary> /// 是否使用本地模拟配方 /// </summary> public bool IsUseLocalRecipe { get; set; } /// <summary> /// 是否使用本地模拟订单+风送配方 /// </summary> public bool IsUseWindSendDosing { get; set; } #endregion } }