终端一体化运控平台
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

148 lines
5.4 KiB

  1. using BPASmartClient.JXJFoodSmallStation.Model.Siemens;
  2. using System;
  3. using System.Collections.Concurrent;
  4. using System.Collections.Generic;
  5. using System.Collections.ObjectModel;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. namespace BPASmartClient.JXJFoodSmallStation.Model
  10. {
  11. public class GVL_SmallStation
  12. {
  13. private volatile static GVL_SmallStation SmallStation;
  14. public static GVL_SmallStation GetInstance => SmallStation ?? (SmallStation = new GVL_SmallStation());
  15. private GVL_SmallStation() { }
  16. public static bool Order_Cancel { get; set; }
  17. public static string Order_CancelRecipeCode { get; set; } = "";
  18. /// <summary>
  19. /// 托盘1托盘到位 逻辑完成
  20. /// </summary>
  21. public static bool TrayLogicFinish { get; set; } = false;
  22. /// <summary>
  23. /// 托盘1有货架
  24. /// </summary>
  25. public static bool Station1HaveTray { get; set; }
  26. /// <summary>
  27. /// 托盘2有货架
  28. /// </summary>
  29. public static bool Station2HaveTray { get; set; }
  30. public static bool Station1Sensor { get; set; }
  31. /// <summary>
  32. /// 托盘2传感器信号
  33. /// </summary>
  34. public static bool Station2Sensor { get; set; }
  35. public static bool Station1Cylinder { get; set; }
  36. /// <summary>
  37. /// 托盘2气缸信号
  38. /// </summary>
  39. public static bool Station2Cylinder { get; set; }
  40. public static bool AGV_PutTray1Finish { get; set; }
  41. public static bool AGV_GetTray1Finish { get; set; }
  42. public static bool CylinderReset { get; set; }
  43. /// <summary>
  44. /// 配料站料仓数目
  45. /// </summary>
  46. public const int Max_DosingSotckBinNum = 15;
  47. /// <summary>
  48. /// 风送料仓数目
  49. /// </summary>
  50. public const int Max_PowderSotckBinNum = 5;
  51. public bool HeartBeatToPlc { get; set; } = false;
  52. public bool HeartBeatFromPlc { get; set; } = false;
  53. /// <summary>
  54. /// 是否允许西门子下发配方
  55. /// </summary>
  56. public static bool IsAllowSiemensSendRecipe { get; set; } = false;
  57. /// <summary>
  58. /// 西门子下发配方状态 0:等待下发配方 1:请求下发配方 2:上位机接收配方 3:配方接收完成 4:请求配料 5:西门子开始配料确认 6:配方配料完成 7:配料完成确认
  59. /// </summary>
  60. public static int SiemensSendRecipeStatus { get; set; } = 0;
  61. /// <summary>
  62. /// 配方下发状态 =0:配方未下发 ,1:配方下发给plc ,2:plc成功接收配方
  63. /// </summary>
  64. public int RecipeStatusID { get; set; } = 0;
  65. /// <summary>
  66. /// 配方下发状态 =0:配方未下发 ,1:配方下发给plc ,2:plc成功接收配方
  67. /// </summary>
  68. public int RecipeStatusIDTray2 { get; set; } = 0;
  69. /// <summary>
  70. /// Tray1的柔性味魔方配料标志(下发配方时,若柔性味魔方的状态=3,复位该状态)
  71. /// </summary>
  72. public bool DosingTray1 { get; set; } = false;//默认为true,初始时,判断柔性味魔方的状态。
  73. /// <summary>
  74. /// Tray2的柔性味魔方配料标志
  75. /// </summary>
  76. public bool DosingTray2 { get; set; } = false;
  77. public int DosingTray1Loc { get; set; } = 0;
  78. public int DosingTray2Loc { get; set; } = 0;
  79. /// <summary>
  80. /// 当前料仓的位置
  81. /// </summary>
  82. public int StockInIsWork { get; set; } = 0;
  83. /// <summary>
  84. /// 记录AGV进站送货的指令顺序
  85. /// </summary>
  86. public int AgvDeliveryPosition { get; set; }= 0;
  87. /// <summary>
  88. /// 记录AGV进站取货的指令顺序
  89. /// </summary>
  90. public int AgvPickUpPosition { get; set; } = 0;
  91. /// <summary>
  92. /// 是否使用粉仓
  93. /// </summary>
  94. public bool IsUseWindSend { get; set; } = false;
  95. /// <summary>
  96. /// 风送配料完成标志
  97. /// </summary>
  98. public bool WindSendDosingFinish { get; set; } = false;
  99. /// <summary>
  100. /// 顶升气缸的信号
  101. /// </summary>
  102. public bool[] Cylinder_JackInfo = new bool[15];
  103. #region 本地模拟配方
  104. /// <summary>
  105. /// 是否使用本地模拟配方
  106. /// </summary>
  107. public bool IsUseLocalRecipe { get; set; }
  108. /// <summary>
  109. /// 是否使用本地模拟订单+风送配方
  110. /// </summary>
  111. public bool IsUseWindSendDosing { get; set; }
  112. public static int test1 = 1;
  113. public DateTime time1;
  114. /// <summary>
  115. /// 风送是否允许AGV到工站
  116. /// </summary>
  117. public static bool WindSendAllowAGVPutGet { get; set; } = false;
  118. /// <summary>
  119. /// 粉料仓配料完成
  120. /// </summary>
  121. public static bool WindSendDosingComple { get; set; } = false;
  122. /// <summary>
  123. /// 系统模式
  124. /// </summary>
  125. public static bool SystemMode { get; set; } = false;
  126. /// <summary>
  127. /// 系统状态
  128. /// </summary>
  129. public static bool SystemStatus { get; set; } = false;
  130. /// <summary>
  131. /// 系统运行状态
  132. /// </summary>
  133. public static bool SystemRunStatus { get; set; } = false;
  134. #endregion
  135. }
  136. }