liuwf 1 year ago
commit af1a8e25fe

@ -36,15 +36,12 @@ namespace Aucma.Core.OldBoxFoam.Business
{ {
try try
{ {
///Task.Run(() => Thread.Sleep(3000);
//{
// Thread.Sleep(3000);
plc1 = PlcHelper.melsecList.FirstOrDefault(d => d.EquipName.Equals("OldMelsecPlc1")); plc1 = PlcHelper.melsecList.FirstOrDefault(d => d.EquipName.Equals("OldMelsecPlc1"));
plc2 = PlcHelper.melsecList.FirstOrDefault(d => d.EquipName.Equals("OldMelsecPlc2")); plc2 = PlcHelper.melsecList.FirstOrDefault(d => d.EquipName.Equals("OldMelsecPlc2"));
plc3 = PlcHelper.melsecList.FirstOrDefault(d => d.EquipName.Equals("OldMelsecPlc3")); plc3 = PlcHelper.melsecList.FirstOrDefault(d => d.EquipName.Equals("OldMelsecPlc3"));
plc4 = PlcHelper.melsecList.FirstOrDefault(d => d.EquipName.Equals("OldMelsecPlc4")); plc4 = PlcHelper.melsecList.FirstOrDefault(d => d.EquipName.Equals("OldMelsecPlc4"));
//while (true)
//{
BoxTypeList.Clear(); BoxTypeList.Clear();
HolderStatusList.Clear(); HolderStatusList.Clear();
HolderOutPutList.Clear(); HolderOutPutList.Clear();
@ -84,29 +81,41 @@ namespace Aucma.Core.OldBoxFoam.Business
ReadStoreAmount(plc4, StoreAmountList); ReadStoreAmount(plc4, StoreAmountList);
for (int i = 0; i < 24; i++) for (int i = 0; i < 24; i++)
{ {
//if (listFixtureStatus.Count > 0) FixtureStatus model = new FixtureStatus();
//{ model.ObjId = i + 1;
FixtureStatus model = new FixtureStatus(); if (BoxTypeList.Count > 0&& BoxTypeList!=null)
model.ObjId = i + 1; {
if (BoxTypeList.Count > 0) model.FixtureBoxType = BoxTypeList[i].ToString(); model.FixtureBoxType = BoxTypeList[i].ToString();
if (HolderStatusList.Count > 0) model.Status = HolderStatusList[i]; }
if (HolderOutPutList.Count > 0) model.Yield = HolderOutPutList[i]; else
if (SolidifyTimeList.Count > 0) model.PlanCuringTime = SolidifyTimeList[i]; {
model.FixtureBoxType = "";
listFixtureStatus.Add(model); }
//} if (HolderStatusList.Count > 0 && HolderStatusList != null)
//else {
//{ model.Status = HolderStatusList[i];
// FixtureStatus model = new FixtureStatus(); }
// model.ObjId = i + 1; else
// if (BoxTypeList.Count > 0) model.FixtureBoxType = BoxTypeList[i].ToString(); {
// if (HolderStatusList.Count > 0) model.Status = HolderStatusList[i]; model.Status = HolderStatusList[i];
// if (HolderOutPutList.Count > 0) model.Yield = HolderOutPutList[i]; }
// if (SolidifyTimeList.Count > 0) model.PlanCuringTime = SolidifyTimeList[i]; if (HolderOutPutList.Count > 0 && HolderOutPutList != null)
{
// listFixtureStatus.Add(model); model.Yield = HolderOutPutList[i];
//} }
else
{
model.Yield = 0;
}
if (SolidifyTimeList.Count > 0 && HolderOutPutList != null)
{
model.PlanCuringTime = SolidifyTimeList[i];
}
else
{
model.PlanCuringTime = 0;
}
listFixtureStatus.Add(model);
} }
for (int i = 0; i < 8; i++) for (int i = 0; i < 8; i++)
{ {
@ -116,9 +125,6 @@ namespace Aucma.Core.OldBoxFoam.Business
if (StoreAmountList.Count > 0) model.StoreAmount = Convert.ToInt32(StoreAmountList[i]); if (StoreAmountList.Count > 0) model.StoreAmount = Convert.ToInt32(StoreAmountList[i]);
spaceDetailModel.Add(model); spaceDetailModel.Add(model);
} }
// Thread.Sleep(10000);
//}
//});
}catch(Exception ex) }catch(Exception ex)
{ {
Console.WriteLine(ex.Message); Console.WriteLine(ex.Message);

@ -16,16 +16,11 @@ namespace Aucma.Core.RunPlc
#region 构造函数 #region 构造函数
public RunPlcService() public RunPlcService()
{ {
Task.Run(async () => StartMelsecMcPlcServer();
{ StartSiemensPlcServer();
await StartMelsecMcPlcServer();//三菱PLC
await StartSiemensPlcServer();//西门子
});
} }
#endregion #endregion
#region 心跳 #region 心跳
public Task StartPlcAsync() public Task StartPlcAsync()
{ {
@ -42,30 +37,30 @@ namespace Aucma.Core.RunPlc
return Task.CompletedTask; return Task.CompletedTask;
} }
private static Task StartMelsecMcPlcServer() private static void StartMelsecMcPlcServer()
{ {
var allPlcServices = Appsettings.app<PlcModel>("PLCServer").ToList(); var allPlcServices = Appsettings.app<PlcModel>("PLCServer").ToList();
if (allPlcServices == null) return Task.CompletedTask; if (allPlcServices == null) return ;
var list = allPlcServices.FindAll(d => d.PlcType == "Melsec" && d.Enabled == true); var list = allPlcServices.FindAll(d => d.PlcType == "Melsec" && d.Enabled == true);
foreach (var item in list) for (int i = 1; i <= list.Count; i++)
{ {
PlcModel model = new PlcModel(); PlcModel model = new PlcModel();
model.Id = item.Id; model.Id = list[i-1].Id;
model.EquipName = item.EquipName; model.EquipName = list[i - 1].EquipName;
model.IP = item.IP; model.IP = list[i - 1].IP;
model.Port = item.Port; model.Port = list[i - 1].Port;
model.PlcType = item.PlcType; model.PlcType = list[i - 1].PlcType;
model.plc = new MelsecPlc(item.IP, item.Port); model.plc = new MelsecPlc(list[i - 1].IP, list[i - 1].Port);
PlcHelper.melsecList.Add(model); PlcHelper.melsecList.Add(model);
} }
return Task.CompletedTask; // return Task.CompletedTask;
} }
private static Task StartSiemensPlcServer() private static void StartSiemensPlcServer()
{ {
List<PlcModel> allPlcServices = Appsettings.app<PlcModel>("PLCServer").ToList(); List<PlcModel> allPlcServices = Appsettings.app<PlcModel>("PLCServer").ToList();
if (allPlcServices == null) return Task.CompletedTask; if (allPlcServices == null) return ;
var list = allPlcServices.FindAll(d => d.PlcType=="Siemens" && d.Enabled == true); var list = allPlcServices.FindAll(d => d.PlcType=="Siemens" && d.Enabled == true);
foreach (var item in list) foreach (var item in list)
@ -79,7 +74,7 @@ namespace Aucma.Core.RunPlc
model.plc = new SiemensPlc(item.IP, item.Port); model.plc = new SiemensPlc(item.IP, item.Port);
PlcHelper.siemensList.Add(model); PlcHelper.siemensList.Add(model);
} }
return Task.CompletedTask;
} }
#endregion #endregion

Loading…
Cancel
Save