diff --git a/BPASmartClient.Business/BPASmartClient.Business.csproj b/BPASmartClient.Business/BPASmartClient.Business.csproj
index 88631d12..517190e1 100644
--- a/BPASmartClient.Business/BPASmartClient.Business.csproj
+++ b/BPASmartClient.Business/BPASmartClient.Business.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/BPASmartClient.Business/Plugin/DeviceMgr.cs b/BPASmartClient.Business/Plugin/DeviceMgr.cs
index cc2245e9..3a81e207 100644
--- a/BPASmartClient.Business/Plugin/DeviceMgr.cs
+++ b/BPASmartClient.Business/Plugin/DeviceMgr.cs
@@ -5,6 +5,7 @@ using BPASmartClient.Helper;
using BPASmartClient.Http;
using BPASmartClient.Message;
using BPASmartClient.Model;
+using BPASmartClient.Model.小炒机;
using BPASmartClient.Peripheral;
using Newtonsoft.Json;
using System;
@@ -128,6 +129,15 @@ namespace BPASmartClient.Business
MessageLog.GetInstance.Show($"物料ID:=[{x.BatchingId}],{x.BatchingLoc}号位置:{x.BatchingCount}");
});
}
+ else if (PushType == 2)//小炒API流程获取,待定
+ {
+ new StirFryGoodsEvent()
+ {
+ DeviceId = device.DeviceId,
+ stirFrymessage = JsonConvert.DeserializeObject(result)
+ }.Publish();
+ MessageLog.GetInstance.Show("接收到【 API 】获取的小炒流程信息");
+ }
}
catch (Exception ex)
{
diff --git a/BPASmartClient.Business/Plugin/OrderProxy.cs b/BPASmartClient.Business/Plugin/OrderProxy.cs
index 04903d74..7e3b4e34 100644
--- a/BPASmartClient.Business/Plugin/OrderProxy.cs
+++ b/BPASmartClient.Business/Plugin/OrderProxy.cs
@@ -1,11 +1,14 @@
//#define test
using BPA.Message;
using BPA.Message.Enum;
+using BPA.Models;
+using BPASmartClient.Device;
using BPASmartClient.EventBus;
using BPASmartClient.Helper;
using BPASmartClient.Http;
using BPASmartClient.Message;
using BPASmartClient.Model;
+using BPASmartClient.Model.小炒机;
using Newtonsoft.Json;
using System;
using System.Collections.Concurrent;
@@ -99,6 +102,18 @@ namespace BPASmartClient.Business
MessageLog.GetInstance.Show($"物料ID:=[{x.BatchingId}],{x.BatchingLoc}号位置:{x.BatchingCount}");
});
}
+ //小炒流程信息
+ else if (message is StirFryPushMessage frybom)
+ {
+ IDevice device = deviceMgr.GetDevices().FirstOrDefault(x => x.DeviceId == 28);
+ new StirFryGoodsEvent() {
+ DeviceId = device.DeviceId,
+ stirFrymessage =frybom
+ }.Publish();
+ MessageLog.GetInstance.Show("接受到【MQTT】的小炒流程信息");
+
+
+ }
});
EventBus.EventBus.GetInstance().Subscribe(0, OrderStatusChangedHandle);
diff --git a/BPASmartClient.CustomResource/BPASmartClient.CustomResource.csproj b/BPASmartClient.CustomResource/BPASmartClient.CustomResource.csproj
index 5ae712a4..c514ab2e 100644
--- a/BPASmartClient.CustomResource/BPASmartClient.CustomResource.csproj
+++ b/BPASmartClient.CustomResource/BPASmartClient.CustomResource.csproj
@@ -235,7 +235,7 @@
-
+
diff --git a/BPASmartClient.Device/BPASmartClient.Device.csproj b/BPASmartClient.Device/BPASmartClient.Device.csproj
index 5e442528..5d81ef80 100644
--- a/BPASmartClient.Device/BPASmartClient.Device.csproj
+++ b/BPASmartClient.Device/BPASmartClient.Device.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/BPASmartClient.Model/BPASmartClient.Model.csproj b/BPASmartClient.Model/BPASmartClient.Model.csproj
index 9a94b652..a939251d 100644
--- a/BPASmartClient.Model/BPASmartClient.Model.csproj
+++ b/BPASmartClient.Model/BPASmartClient.Model.csproj
@@ -17,7 +17,7 @@
-
+
diff --git a/BPASmartClient.Model/小炒机/StirFryGoodsEvent.cs b/BPASmartClient.Model/小炒机/StirFryGoodsEvent.cs
new file mode 100644
index 00000000..cfabd6df
--- /dev/null
+++ b/BPASmartClient.Model/小炒机/StirFryGoodsEvent.cs
@@ -0,0 +1,18 @@
+using BPA.Message;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace BPASmartClient.Model.小炒机
+{
+ public class StirFryGoodsEvent : BaseEvent
+ {
+
+ ///
+ /// 小炒信息
+ ///
+ public StirFryPushMessage stirFrymessage { get; set; } = new StirFryPushMessage();
+ }
+}
diff --git a/BPASmartClient.MorkF/BPASmartClient.MorkF.csproj b/BPASmartClient.MorkF/BPASmartClient.MorkF.csproj
index 79c30eda..9e968e28 100644
--- a/BPASmartClient.MorkF/BPASmartClient.MorkF.csproj
+++ b/BPASmartClient.MorkF/BPASmartClient.MorkF.csproj
@@ -18,8 +18,4 @@
-
-
-
-
diff --git a/BPASmartClient.MorkF/Control_MorkF.cs b/BPASmartClient.MorkF/Control_MorkF.cs
index 936678a5..9326ba6c 100644
--- a/BPASmartClient.MorkF/Control_MorkF.cs
+++ b/BPASmartClient.MorkF/Control_MorkF.cs
@@ -8,18 +8,19 @@ using BPASmartClient.Model;
using BPASmartClient.Model.PLC;
using BPA.Models;
using static BPASmartClient.EventBus.EventBus;
-
+using BPASmartClient.Model.小炒机;
+using BPASmartClient.MorkF.Model;
namespace BPASmartClient.MorkF
{
public class Control_MorkF : BaseDevice
{
- public override DeviceClientType DeviceType => DeviceClientType.MORKSF;
+ public override DeviceClientType DeviceType => DeviceClientType.MORKCS;
public AutoResetEvent minorReset = new AutoResetEvent(false);
public AutoResetEvent mainReset = new AutoResetEvent(false);
GVL_MorkF morkF = new GVL_MorkF();//全局对象声明
public StirFryBom stirFryBom = new StirFryBom();//创建获取流程的对象
- StirFryGoods stirFryGoods = new StirFryGoods();//创建商品对象
+ List stirFryGoods = new List();//创建商品对象
List resultorder = new List();//调试变量
///
/// 入口
@@ -321,9 +322,9 @@ namespace BPASmartClient.MorkF
{
//队列
string subId = Guid.NewGuid().ToString();
- morkF.TakeMaterialQueue.Enqueue(new OrderLocInfo() { SuborderId = subId, MaterialLoc = 1 });//A料
- morkF.TakeMaterialQueue.Enqueue(new OrderLocInfo() { SuborderId = subId, MaterialLoc = 2 });//B料
- morkF.TakeMaterialQueue.Enqueue(new OrderLocInfo() { SuborderId = subId, MaterialLoc = 3 });//C料
+ morkF.TakeMaterialQueue.Enqueue(new OrderLocInfo() { SuborderId = subId, MaterialLoc = new List() { 1 } });//A料
+ morkF.TakeMaterialQueue.Enqueue(new OrderLocInfo() { SuborderId = subId, MaterialLoc = new List() { 2 } });//B料
+ morkF.TakeMaterialQueue.Enqueue(new OrderLocInfo() { SuborderId = subId, MaterialLoc = new List() { 3 } });//C料
morkF.TakePlateQueue.Enqueue(new OrderLocInfo() { SuborderId = subId });
resultorder.AddRange(new int[] { 1, 2, 3 });
morkF.listStirBom.Add(stirFryBom);
@@ -388,6 +389,7 @@ namespace BPASmartClient.MorkF
if (@event is MaterialDeliveryEvent material)
{
orderMaterialDelivery = material.orderMaterialDelivery;
+
}
});
@@ -401,6 +403,17 @@ namespace BPASmartClient.MorkF
WriteRecipeBoms();
}
});
+ //小炒流程信息
+ EventBus.EventBus.GetInstance().Subscribe(DeviceId, delegate (IEvent @event, EventCallBackHandle callback)
+ {
+ if (@event == null) return;
+ if (@event is StirFryGoodsEvent stirFry)
+ {
+ stirFryGoods = stirFry.stirFrymessage.stirFryGoods;
+ MessageLog.GetInstance.Show("接收到小炒流程信息");
+ }
+ });
+
}
private void OrderChange(string subid, ORDER_STATUS oRDER_STATUS)
@@ -423,41 +436,34 @@ namespace BPASmartClient.MorkF
if (order.MorkOrder.GoodBatchings == null) return;
OrderCount++;
DeviceProcessLogShow($"接收到{OrderCount}次订单");
- foreach (var item in order.MorkOrder.GoodBatchings)
+
+ var res = stirFryGoods?.FirstOrDefault(p => p.GoodsKey == order.MorkOrder.RecipeId);//匹配订单对应制作流程
+ if (res != null)
{
- var res = orderMaterialDelivery?.BatchingInfo?.FirstOrDefault(p => p.BatchingId == item.BatchingId);
- if (res != null)
+ morkF.listStirBom.Add(res.StirFryBomInfo);//添加订单制作流程
+ if (morkF.TakeMaterialQueue.FirstOrDefault(p => p.SuborderId == order.MorkOrder.SuborderId) == null)
{
- if (ushort.TryParse(res.BatchingLoc, out ushort loc))
- {
-
- //if (morkF.TakeMaterialQueue.FirstOrDefault(p => p.SuborderId == order.MorkOrder.SuborderId) == null)
- //将一个商品的ABC料位置存入队列
- morkF.TakeMaterialQueue.Enqueue(new OrderLocInfo() { SuborderId = order.MorkOrder.SuborderId, BatchingId = res.BatchingId, MaterialLoc = ushort.Parse(res.BatchingLoc) });
- }
-
+ morkF.TakeMaterialQueue.Enqueue(new OrderLocInfo() { SuborderId = order.MorkOrder.SuborderId, MaterialLoc = res.StirFryBomInfo.ALoc });
+ morkF.TakeMaterialQueue.Enqueue(new OrderLocInfo() { SuborderId = order.MorkOrder.SuborderId, MaterialLoc = res.StirFryBomInfo.BLoc });
+ morkF.TakeMaterialQueue.Enqueue(new OrderLocInfo() { SuborderId = order.MorkOrder.SuborderId, MaterialLoc = res.StirFryBomInfo.CLoc });
+ }
- //int index = 0;
- //if (recipeBoms != null)
- //{
- // index = Array.FindIndex(recipeBoms.RecipeIds?.ToArray(), p => p.RecipeId == order.MorkOrder.RecipeId);
- // index++;
- //}
- if (morkF.TakePlateQueue.FirstOrDefault(p => p.SuborderId == order.MorkOrder.SuborderId) == null)
- morkF.TakePlateQueue.Enqueue(new OrderLocInfo()
- {
- SuborderId = order.MorkOrder.SuborderId,
- BatchingId = res.BatchingId
- //RecipeNumber = (index >= 1 && index <= 10) ? (ushort)index : (ushort)0
- });
+ //foreach (var item in order.MorkOrder.GoodBatchings)
+ //{
+ if (morkF.TakePlateQueue.FirstOrDefault(p => p.SuborderId == order.MorkOrder.SuborderId) == null)
+ {
+ morkF.TakePlateQueue.Enqueue(new OrderLocInfo()
+ {
+ SuborderId = order.MorkOrder.SuborderId,
+ });
}
+ //}
}
- //根据ID 查找对应制作流程,
-
}
+
});
}
//}
@@ -572,7 +578,7 @@ namespace BPASmartClient.MorkF
if (morkF.MainProcessWait)
{
if (morkF.MinorHasTakeMaterial)
- {
+ {
}
else
{
@@ -582,7 +588,7 @@ namespace BPASmartClient.MorkF
//阻塞辅流程
minorReset.WaitOne();
}
-
+
}
morkF.MinorProessStatus = true;
morkF.MainProcessStatus = false;
@@ -624,13 +630,13 @@ namespace BPASmartClient.MorkF
case StirFryRobotAction.清洗槽取锅:
TakePotTask();//执行取锅操作
break;
- case StirFryRobotAction.加入A料:
+ case StirFryRobotAction.取A料:
TakeBurdenATask();//执行取A料操作
break;
- case StirFryRobotAction.加入B料:
+ case StirFryRobotAction.取B料:
TakeBurdenATask();//执行取B料操作
break;
- case StirFryRobotAction.加入C料:
+ case StirFryRobotAction.取C料:
TakeBurdenCTask();//执行取C料操作
break;
case StirFryRobotAction.灶取锅:
@@ -708,7 +714,7 @@ namespace BPASmartClient.MorkF
//阻塞主流程
mainReset.WaitOne();
}
-
+
}
morkF.MinorProessStatus = false;
morkF.MainProcessStatus = true;
@@ -771,27 +777,10 @@ namespace BPASmartClient.MorkF
///
private void TurntableControl()
{
- //正常轮询
- //if (morkF.TakeMaterialQueue.Count > 0 && !morkF.TurnTableLock)
- //{
- // var result = orderMaterialDelivery.BatchingInfo.Where(p => p.BatchingId == morkF.TakeMaterialQueue.ElementAt(0).BatchingId).ToList();
-
- // if (result != null)
- // {
- // if (ushort.TryParse(result[0].BatchingLoc, out ushort loc))
- // {
- // TurnMaterialStore(loc);
- // DeviceProcessLogShow($"转台转到【{loc}】位置");
- // morkF.TurnTableLock = true; //取料完成后置false
- // }
- // }
- // elseDeviceProcessLogShow("未找到可用的物料信息");
- //}
-
- //调试代码
- if (morkF.TakeMaterialQueue.Count > 0 && !morkF.TurnTableLock)
+ //模拟订单
+ if (morkF.TakeMaterialQueue.Count > 0 && !morkF.TurnTableLock && General_Config.SimOrderAllow)
{
- // var result = orderMaterialDelivery.BatchingInfo.Where(p => p.BatchingId == morkF.TakeMaterialQueue.ElementAt(0).BatchingId).ToList();
+
if (resultorder != null)
{
@@ -807,6 +796,25 @@ namespace BPASmartClient.MorkF
}
}
+ //正式订单
+ if (morkF.TakeMaterialQueue.Count > 0 && !morkF.TurnTableLock)
+ {
+ //var result = orderMaterialDelivery.BatchingInfo.Where(p => p.BatchingId == morkF.TakeMaterialQueue.ElementAt(0).BatchingId).ToList();
+ var materialLoc = morkF.TakeMaterialQueue.ElementAt(0).MaterialLoc;
+ if (materialLoc.Count != 0)
+ {
+ TurnMaterialStore(materialLoc[0]);
+ DeviceProcessLogShow($"转台转到【{materialLoc[0]}】位置");
+ morkF.TurnTableLock = true; //取料完成后置false
+
+ }
+ else
+ {
+ DeviceProcessLogShow("未找到可用的物料信息");
+ }
+
+ }
+
}
@@ -885,12 +893,12 @@ namespace BPASmartClient.MorkF
if (morkF.MainProcessStatus)
{
morkF.MainProcessPotLoc = morkF.CurrentPutPotLoc;
- DeviceProcessLogShow($"订单【{ morkF.MainCurrentOrderId}】执行取锅到灶台控制");
+ DeviceProcessLogShow($"订单【{morkF.MainCurrentOrderId}】执行取锅到灶台控制");
}
if (morkF.MinorProessStatus)
{
morkF.MinorProcessPotLoc = morkF.CurrentPutPotLoc;
- DeviceProcessLogShow($"订单【{ morkF.MinorCurrentOrderId}】执行取锅到灶台控制");
+ DeviceProcessLogShow($"订单【{morkF.MinorCurrentOrderId}】执行取锅到灶台控制");
}
if (morkF.CurrentPutPotLoc == 1)
{
@@ -983,11 +991,11 @@ namespace BPASmartClient.MorkF
}
if (morkF.TakeMaterialQueue.TryDequeue(out OrderLocInfo order))
{
- loc = order.MaterialLoc;
- TakeBurden(loc);
+ loc = order.MaterialLoc[0];
+ TakeBurden();
TurnReset(loc);//转台复位
- DeviceProcessLogShow($"订单【{ order.SuborderId}】,执行到转台{loc}位置取料");
+ DeviceProcessLogShow($"订单【{order.SuborderId}】,执行到转台{loc}位置取料");
}
//等待取料完成
while (!morkF.TakeMaterialComplete)
@@ -1016,11 +1024,11 @@ namespace BPASmartClient.MorkF
}
if (morkF.TakeMaterialQueue.TryDequeue(out OrderLocInfo order))
{
- loc = order.MaterialLoc;
- TakeBurden(loc);
+ loc = order.MaterialLoc[0];
+ TakeBurden();
TurnReset(loc);//转台复位
- DeviceProcessLogShow($"订单【{ order.SuborderId}】,执行到转台{loc}位置取料");
+ DeviceProcessLogShow($"订单【{order.SuborderId}】,执行到转台{loc}位置取料");
}
//等待取料完成
while (!morkF.TakeMaterialComplete)
@@ -1064,11 +1072,11 @@ namespace BPASmartClient.MorkF
}
if (morkF.TakeMaterialQueue.TryDequeue(out OrderLocInfo order))
{
- loc = order.MaterialLoc;
- TakeBurden(loc);
+ loc = order.MaterialLoc[0];
+ TakeBurden();
TurnReset(loc);//转台复位
- DeviceProcessLogShow($"订单【{ order.SuborderId}】,执行到转台{loc}位置取料");
+ DeviceProcessLogShow($"订单【{order.SuborderId}】,执行到转台{loc}位置取料");
}
//等待取料完成
while (!morkF.TakeMaterialComplete)
@@ -1097,11 +1105,11 @@ namespace BPASmartClient.MorkF
}
if (morkF.TakeMaterialQueue.TryDequeue(out OrderLocInfo order))
{
- loc = order.MaterialLoc;
- TakeBurden(loc);
+ loc = order.MaterialLoc[0];
+ TakeBurden();
TurnReset(loc);//转台复位
- DeviceProcessLogShow($"订单【{ order.SuborderId}】,执行到转台{loc}位置取料");
+ DeviceProcessLogShow($"订单【{order.SuborderId}】,执行到转台{loc}位置取料");
}
//等待取料完成
while (!morkF.TakeMaterialComplete)
@@ -1174,11 +1182,11 @@ namespace BPASmartClient.MorkF
}
if (morkF.TakeMaterialQueue.TryDequeue(out OrderLocInfo order))
{
- loc = order.MaterialLoc;
- TakeBurden(loc);
+ loc = order.MaterialLoc[0];
+ TakeBurden();
TurnReset(loc);//转台复位
- DeviceProcessLogShow($"订单【{ order.SuborderId}】,执行到转台{loc}位置取料");
+ DeviceProcessLogShow($"订单【{order.SuborderId}】,执行到转台{loc}位置取料");
}
//等待取料完成
while (!morkF.TakeMaterialComplete)
@@ -1207,11 +1215,11 @@ namespace BPASmartClient.MorkF
}
if (morkF.TakeMaterialQueue.TryDequeue(out OrderLocInfo order))
{
- loc = order.MaterialLoc;
- TakeBurden(loc);
+ loc = order.MaterialLoc[0];
+ TakeBurden();
TurnReset(loc);//转台复位
- DeviceProcessLogShow($"订单【{ order.SuborderId}】,执行到转台{loc}位置取料");
+ DeviceProcessLogShow($"订单【{order.SuborderId}】,执行到转台{loc}位置取料");
}
//等待取料完成
while (!morkF.TakeMaterialComplete)
@@ -1245,9 +1253,9 @@ namespace BPASmartClient.MorkF
RobotOutMeal();
WriteData("M1.2", false);//供盘复位
if (morkF.MainProcessStatus)
- DeviceProcessLogShow($"订单【{ morkF.MainCurrentOrderId}】执行取锅到清洗台控制");
+ DeviceProcessLogShow($"订单【{morkF.MainCurrentOrderId}】执行取锅到清洗台控制");
if (morkF.MinorProessStatus)
- DeviceProcessLogShow($"订单【{ morkF.MinorCurrentOrderId}】执行取锅到清洗台控制");
+ DeviceProcessLogShow($"订单【{morkF.MinorCurrentOrderId}】执行取锅到清洗台控制");
}
@@ -1271,7 +1279,7 @@ namespace BPASmartClient.MorkF
{
CleanModuleControl("Start", 2);
}
- DeviceProcessLogShow($"订单【{ morkF.MainCurrentOrderId}】执行清洗操作");
+ DeviceProcessLogShow($"订单【{morkF.MainCurrentOrderId}】执行清洗操作");
morkF.MainProcessFlag = false;
minorReset.Set();
}
@@ -1286,7 +1294,7 @@ namespace BPASmartClient.MorkF
{
CleanModuleControl("Start", 2);
}
- DeviceProcessLogShow($"订单【{ morkF.MinorCurrentOrderId}】执行清洗操作");
+ DeviceProcessLogShow($"订单【{morkF.MinorCurrentOrderId}】执行清洗操作");
morkF.MinorProcessFlag = false;
mainReset.Set();
}
@@ -1325,9 +1333,9 @@ namespace BPASmartClient.MorkF
///
public void TurnDownStatusDetect()
{
- int potLoc= TurnMachineOrientControl("Down");
+ int potLoc = TurnMachineOrientControl("Down");
- if (potLoc==1)
+ if (potLoc == 1)
{
while (!morkF.TurnMachineDownComplete)//等待翻转机下降完成
{
@@ -1335,7 +1343,7 @@ namespace BPASmartClient.MorkF
}
WriteData("M8.3", false);//下降完成复位
}
- if (potLoc==2)
+ if (potLoc == 2)
{
while (!morkF.SecondTurnMachineDownComplete)//等待翻转机下降完成
{
@@ -1354,7 +1362,7 @@ namespace BPASmartClient.MorkF
//}
}
-
+
///
/// 翻转机上升及状态检测
///
@@ -1367,7 +1375,7 @@ namespace BPASmartClient.MorkF
TurnMachineOrientControl("Top");//翻转机上升
if (morkF.MainProcessStatus)
{
- if (morkF.MainProcessPotLoc==1)
+ if (morkF.MainProcessPotLoc == 1)
{
while (!morkF.TurnMachineUpComplete)//等待翻转机上升完成以及取料完成
{
@@ -1392,14 +1400,14 @@ namespace BPASmartClient.MorkF
}
morkF.MainOrderMaterialCom = true;
morkF.MainHasTakeMaterial = false;
- DeviceProcessLogShow($"订单【{ morkF.MainCurrentOrderId}】,配料倒料完成");
+ DeviceProcessLogShow($"订单【{morkF.MainCurrentOrderId}】,配料倒料完成");
}
else //辅程准备阻塞
{
morkF.MainProcessWait = true;
}
}
- if (morkF.MainProcessPotLoc==2)
+ if (morkF.MainProcessPotLoc == 2)
{
while (!morkF.SecondTurnMachineUpComplete)//等待翻转机上升完成以及取料完成
{
@@ -1424,12 +1432,12 @@ namespace BPASmartClient.MorkF
}
morkF.MainOrderMaterialCom = true;
morkF.MainHasTakeMaterial = false;
- DeviceProcessLogShow($"订单【{ morkF.MinorCurrentOrderId}】,配料倒料完成");
+ DeviceProcessLogShow($"订单【{morkF.MinorCurrentOrderId}】,配料倒料完成");
}
else //辅流程准备阻塞
{
morkF.MainProcessWait = true;
- }
+ }
}
}
if (morkF.MinorProessStatus)
@@ -1459,14 +1467,14 @@ namespace BPASmartClient.MorkF
}
morkF.MinorOrderMaterialCom = true;
morkF.MinorHasTakeMaterial = false;
- DeviceProcessLogShow($"订单【{ morkF.MainCurrentOrderId}】,配料倒料完成");
+ DeviceProcessLogShow($"订单【{morkF.MainCurrentOrderId}】,配料倒料完成");
}
else //主程准备阻塞
{
morkF.MinorProcessWait = true;
}
}
- if (morkF.MinorProcessPotLoc==2)
+ if (morkF.MinorProcessPotLoc == 2)
{
while (!morkF.SecondTurnMachineUpComplete)//等待翻转机上升完成以及取料完成
{
@@ -1491,12 +1499,12 @@ namespace BPASmartClient.MorkF
}
morkF.MinorOrderMaterialCom = true;
morkF.MinorHasTakeMaterial = false;
- DeviceProcessLogShow($"订单【{ morkF.MinorCurrentOrderId}】,配料倒料完成");
+ DeviceProcessLogShow($"订单【{morkF.MinorCurrentOrderId}】,配料倒料完成");
}
else //主流程准备阻塞
{
morkF.MinorProcessWait = true;
- }
+ }
}
}
//if (morkF.MainProcessStatus)//代表主流程执行的操作
@@ -1702,7 +1710,7 @@ namespace BPASmartClient.MorkF
}
FirstPotGears(number);
}
- if (morkF.MinorProcessPotLoc==2)
+ if (morkF.MinorProcessPotLoc == 2)
{
while (!morkF.SecondPotInPlace)
{
@@ -1712,9 +1720,9 @@ namespace BPASmartClient.MorkF
}
}
if (morkF.MainProcessStatus)
- DeviceProcessLogShow($"订单【{ morkF.MainCurrentOrderId}】执行取锅到灶台控制");
+ DeviceProcessLogShow($"订单【{morkF.MainCurrentOrderId}】执行取锅到灶台控制");
if (morkF.MinorProessStatus)
- DeviceProcessLogShow($"订单【{ morkF.MinorCurrentOrderId}】执行取锅到灶台控制");
+ DeviceProcessLogShow($"订单【{morkF.MinorCurrentOrderId}】执行取锅到灶台控制");
}
///
/// PLC转台控制
@@ -1818,7 +1826,7 @@ namespace BPASmartClient.MorkF
Task.Delay(5).Wait();
}
}
- if (morkF.MainProcessPotLoc==2)
+ if (morkF.MainProcessPotLoc == 2)
{
while (!morkF.SecondPotInPlace)
{
@@ -1832,7 +1840,7 @@ namespace BPASmartClient.MorkF
Task.Delay(5).Wait();
}
}
-
+
}
if (morkF.MinorProessStatus)
{
@@ -1876,8 +1884,8 @@ namespace BPASmartClient.MorkF
{
switch (orientation)
{
- case "Top": WriteData("M8.0", true); break;
- case "Down": WriteData("M8.2", true); break;
+ case "Top": WriteData("M8.0", true); break;
+ case "Down": WriteData("M8.2", true); break;
}
}
public void SecondPotTurnMachine(string orientation)
@@ -1895,7 +1903,7 @@ namespace BPASmartClient.MorkF
///
public int TurnMachineOrientControl(string orientation)
{
- int potLoc=0; ;
+ int potLoc = 0; ;
//switch (orientation)
//{
// case "Top": if (morkF.MainProcessStatus) WriteData("M8.0", true); if (morkF.MinorProessStatus) WriteData("M8.4", true); break;
@@ -1911,7 +1919,7 @@ namespace BPASmartClient.MorkF
if (morkF.MainProcessPotLoc == 2)
{
SecondPotTurnMachine(orientation);
- potLoc=2;
+ potLoc = 2;
}
}
if (morkF.MinorProessStatus)
@@ -1971,7 +1979,7 @@ namespace BPASmartClient.MorkF
//}
if (morkF.MainProcessStatus)
{
- if (morkF.MainProcessPotLoc==1)
+ if (morkF.MainProcessPotLoc == 1)
{
FirstPotTurnMachine(gear);
}
@@ -1982,7 +1990,7 @@ namespace BPASmartClient.MorkF
}
if (morkF.MinorProessStatus)
{
- if (morkF.MinorProcessPotLoc==1)
+ if (morkF.MinorProcessPotLoc == 1)
{
FirstPotTurnMachine(gear);
}
@@ -1996,7 +2004,7 @@ namespace BPASmartClient.MorkF
///
/// 取A,B,C料
///
- public void TakeBurden(int loc)
+ public void TakeBurden()
{
if (morkF.MainProcessStatus && morkF.PotInPlace)
WriteData("M14.1", true);//机器人倒料至1号锅
diff --git a/BPASmartClient.MorkF/GVL_MorkF.cs b/BPASmartClient.MorkF/GVL_MorkF.cs
index a74c25d0..f9229946 100644
--- a/BPASmartClient.MorkF/GVL_MorkF.cs
+++ b/BPASmartClient.MorkF/GVL_MorkF.cs
@@ -10,6 +10,7 @@ namespace BPASmartClient.MorkF
{
internal class GVL_MorkF
{
+
///
/// 初始化完成状态
///
diff --git a/BPASmartClient.MorkF/Model/General_Config.cs b/BPASmartClient.MorkF/Model/General_Config.cs
new file mode 100644
index 00000000..39e2eb74
--- /dev/null
+++ b/BPASmartClient.MorkF/Model/General_Config.cs
@@ -0,0 +1,13 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace BPASmartClient.MorkF.Model
+{
+ internal class General_Config
+ {
+ public static bool SimOrderAllow { get; set; }
+ }
+}
diff --git a/BPASmartClient.MorkF/OrderLocInfo.cs b/BPASmartClient.MorkF/OrderLocInfo.cs
index d39a8a4e..4d171aa3 100644
--- a/BPASmartClient.MorkF/OrderLocInfo.cs
+++ b/BPASmartClient.MorkF/OrderLocInfo.cs
@@ -9,7 +9,7 @@ namespace BPASmartClient.MorkF
internal class OrderLocInfo
{
public string SuborderId { get; set; }
- public ushort MaterialLoc { get; set; }//物料位置
+ public List MaterialLoc { get; set; } = new List();//物料A位置
public ushort RecipeNumber { get; set; }
public int BatchingId { get; set; }
}
diff --git a/BPASmartClient.MorkF/View/DebugView.xaml b/BPASmartClient.MorkF/View/DebugView.xaml
index 5ec519b6..9bac5ef9 100644
--- a/BPASmartClient.MorkF/View/DebugView.xaml
+++ b/BPASmartClient.MorkF/View/DebugView.xaml
@@ -36,6 +36,7 @@
+
diff --git a/BPASmartClient.MorkF/View/DebugView.xaml.cs b/BPASmartClient.MorkF/View/DebugView.xaml.cs
index 2812751f..397537de 100644
--- a/BPASmartClient.MorkF/View/DebugView.xaml.cs
+++ b/BPASmartClient.MorkF/View/DebugView.xaml.cs
@@ -25,6 +25,7 @@ namespace BPASmartClient.MorkF.View
{
InitializeComponent();
this.DataContext = new DebugViewModel();
+
}
}
}
diff --git a/BPASmartClient.MorkF/ViewModel/DebugViewModel.cs b/BPASmartClient.MorkF/ViewModel/DebugViewModel.cs
index d7bf15cf..3ddf16ab 100644
--- a/BPASmartClient.MorkF/ViewModel/DebugViewModel.cs
+++ b/BPASmartClient.MorkF/ViewModel/DebugViewModel.cs
@@ -1,4 +1,5 @@
using BPASmartClient.Helper;
+using BPASmartClient.MorkF.Model;
using Microsoft.Toolkit.Mvvm.ComponentModel;
using Microsoft.Toolkit.Mvvm.Input;
using System;
@@ -11,6 +12,7 @@ namespace BPASmartClient.MorkF.ViewModel
{
internal class DebugViewModel : ObservableObject
{
+ public bool SimOrderEnable { get { return General_Config.SimOrderAllow; } set { General_Config.SimOrderAllow = value; OnPropertyChanged(); } }
public RelayCommand PlcInite { get; set; }
public RelayCommand SimulateOrder { get; set; }
@@ -64,7 +66,8 @@ namespace BPASmartClient.MorkF.ViewModel
public DebugViewModel()
{
PlcInite = new RelayCommand(() => { ActionManage.GetInstance.Send("InitCommand"); });
- SimulateOrder = new RelayCommand(() => { ActionManage.GetInstance.Send("SimultaorOrder"); });
+
+ SimulateOrder = new RelayCommand(() => {ActionManage.GetInstance.Send("SimultaorOrder"); });
MaterialOne= new RelayCommand(() => { ActionManage.GetInstance.Send("MaterialOne"); });
MaterialTwo = new RelayCommand(() => { ActionManage.GetInstance.Send("MaterialTwo"); });
MaterialThree = new RelayCommand(() => { ActionManage.GetInstance.Send("MaterialThree"); });
diff --git a/BPASmartClient.MorkM/Control_MORKM.cs b/BPASmartClient.MorkM/Control_MORKM.cs
index 73ad82f5..89a9b841 100644
--- a/BPASmartClient.MorkM/Control_MORKM.cs
+++ b/BPASmartClient.MorkM/Control_MORKM.cs
@@ -15,6 +15,7 @@ using BPASmartClient.MorkM.Model;
using System.Collections.ObjectModel;
using BPASmartClient.Model.PLC;
using BPASmartClient.MorkM.ViewModel;
+using BPA.Message;
namespace BPASmartClient.MorkM
{
@@ -800,6 +801,7 @@ namespace BPASmartClient.MorkM
}
});
+
//配方数据信息
EventBus.EventBus.GetInstance().Subscribe(DeviceId, delegate (IEvent @event, EventCallBackHandle callBack)
{
@@ -811,7 +813,7 @@ namespace BPASmartClient.MorkM
}
});
}
-
+
public override void DoMain()
{
MonitorViewModel.DeviceId = DeviceId;
diff --git a/BPASmartClient.MorkS/Control_Morks.cs b/BPASmartClient.MorkS/Control_Morks.cs
index 0e080003..e190d06d 100644
--- a/BPASmartClient.MorkS/Control_Morks.cs
+++ b/BPASmartClient.MorkS/Control_Morks.cs
@@ -18,6 +18,8 @@ using BPASmartClient.MorkS.Model;
using System.Collections.ObjectModel;
using BPASmartClient.MorkS.ViewModel;
using BPASmartClient.Business;
+using BPASmartClient.Model.小炒机;
+using BPA.Models;
namespace BPASmartClient.MorkS
{
@@ -113,8 +115,10 @@ namespace BPASmartClient.MorkS
WriteRecipeBoms();
}
});
+
+
}
-
+
private void OrderChange(string subid, ORDER_STATUS oRDER_STATUS)
{
var res = mORKS.doOrderEvents.FirstOrDefault(p => p.MorkOrder.SuborderId == subid);
diff --git a/BPASmartClient/App.config b/BPASmartClient/App.config
index 4e21d83c..fc532a83 100644
--- a/BPASmartClient/App.config
+++ b/BPASmartClient/App.config
@@ -7,14 +7,14 @@
-
+
-
+