|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using DataBlockHelper;
|
|
|
|
|
using Mesnac.Action.ChemicalWeighing.LjMixManager;
|
|
|
|
|
|
|
|
|
|
namespace Mesnac.Action.ChemicalWeighing.LjPlanning
|
|
|
|
|
{
|
|
|
|
|
public class LjPlanningPlcHelp
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
public static DryerView GetDryerD1 => GetDryerView(58);
|
|
|
|
|
public static DryerView GetDryerD2 => GetDryerView(298);
|
|
|
|
|
public static DryerView GetDryerD3 => GetDryerView(538);
|
|
|
|
|
public static DryerView GetDryerD4 => GetDryerView(778);
|
|
|
|
|
|
|
|
|
|
public static DryerView GetGelatG1 => GetGelatView(1018);
|
|
|
|
|
public static DryerView GetGelatG2 => GetGelatView(1158);
|
|
|
|
|
public static DryerView GetGelatG3 => GetGelatView(1298);
|
|
|
|
|
public static DryerView GetGelatG4 => GetGelatView(1438);
|
|
|
|
|
public static DryerView GetGelatG5 => GetGelatView(1578);
|
|
|
|
|
public static DryerView GetGelatG6 => GetGelatView(1718);
|
|
|
|
|
public static DryerView GetGelatG7 => GetGelatView(1858);
|
|
|
|
|
public static DryerView GetGelatG8 => GetGelatView(1998);
|
|
|
|
|
|
|
|
|
|
public static List<MixStep> GetWeterM1 => GetWeterView(2138);
|
|
|
|
|
public static List<MixStep> GetWeterM2 => GetWeterView(2338);
|
|
|
|
|
public static List<MixStep> GetWeterM3 => GetWeterView(2538);
|
|
|
|
|
public static List<MixStep> GetWeterM4 => GetWeterView(2738);
|
|
|
|
|
public static List<MixStep> GetWeterM5 => GetWeterView(2938);
|
|
|
|
|
public static List<MixStep> GetWeterM6 => GetWeterView(3138);
|
|
|
|
|
public static List<MixStep> GetWeterM7 => GetWeterView(3338);
|
|
|
|
|
public static List<MixStep> GetWeterM8 => GetWeterView(3538);
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 干混机1
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="recipePlcViews"></param>
|
|
|
|
|
/// <param name="recipeSteps"></param>
|
|
|
|
|
public static void DownD1Recipe(List<RecipePlcView> recipePlcViews, List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin = 58;
|
|
|
|
|
DownCleanD1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin += 178;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.53.6",true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void DownD2Recipe(List<RecipePlcView> recipePlcViews, List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin = 298;
|
|
|
|
|
DownCleanD1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin = 418;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.53.7", true);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static void DownD3Recipe(List<RecipePlcView> recipePlcViews, List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin = 538;
|
|
|
|
|
DownCleanD1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin = 658;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.54.0", true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void DownD4Recipe(List<RecipePlcView> recipePlcViews, List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin = 778;
|
|
|
|
|
DownCleanD1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin = 898;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.54.1", true);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void DownG1Recipe(List<RecipePlcView> recipePlcViews,List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin = 1018;
|
|
|
|
|
DownCleanG1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
begin = 1038;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.53.6",true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void DownG2Recipe(List<RecipePlcView> recipePlcViews, List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin = 1158;
|
|
|
|
|
DownCleanG1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin = 1178;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.54.2", true);
|
|
|
|
|
}
|
|
|
|
|
public static void DownG3Recipe(List<RecipePlcView> recipePlcViews, List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin = 1298;
|
|
|
|
|
DownCleanG1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin = 1318;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.53.7", true);
|
|
|
|
|
}
|
|
|
|
|
public static void DownG4Recipe(List<RecipePlcView> recipePlcViews, List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin = 1438;
|
|
|
|
|
DownCleanG1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin = 1458;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.54.4", true);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void DownG5Recipe(List<RecipePlcView> recipePlcViews, List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin = 1578;
|
|
|
|
|
DownCleanG1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin = 1598;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.54.6", true);
|
|
|
|
|
}
|
|
|
|
|
public static void DownG6Recipe(List<RecipePlcView> recipePlcViews, List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin =1718;
|
|
|
|
|
DownCleanG1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin = 1738;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.54.7", true);
|
|
|
|
|
}
|
|
|
|
|
public static void DownG7Recipe(List<RecipePlcView> recipePlcViews, List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin =1858;
|
|
|
|
|
DownCleanG1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin = 1878;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.55.0", true);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
public static void DownG8Recipe(List<RecipePlcView> recipePlcViews, List<Step> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
recipePlcViews = recipePlcViews.Where(x => x.Bin != -1).ToList();
|
|
|
|
|
int begin =1998;
|
|
|
|
|
DownCleanG1Recipe(begin);
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
begin = 2018;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.55.1", true);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void DownM1Recipe(List<MixStep> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
int begin = 2138;
|
|
|
|
|
DownM1CleanRecipe(begin);
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowMSteps(begin, view);
|
|
|
|
|
begin += 20;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.55.2", true);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void DownM2Recipe(List<MixStep> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
int begin = 2338;
|
|
|
|
|
DownM1CleanRecipe(begin);
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowMSteps(begin, view);
|
|
|
|
|
begin += 20;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.55.3", true);
|
|
|
|
|
}
|
|
|
|
|
public static void DownM3Recipe(List<MixStep> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
int begin = 2538;
|
|
|
|
|
DownM1CleanRecipe(begin);
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowMSteps(begin, view);
|
|
|
|
|
begin += 20;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.55.4", true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static void DownM4Recipe(List<MixStep> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
int begin = 2738;
|
|
|
|
|
DownM1CleanRecipe(begin);
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowMSteps(begin, view);
|
|
|
|
|
begin += 20;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.55.5", true);
|
|
|
|
|
}
|
|
|
|
|
public static void DownM5Recipe(List<MixStep> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
int begin = 2938;
|
|
|
|
|
DownM1CleanRecipe(begin);
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowMSteps(begin, view);
|
|
|
|
|
begin += 20;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.55.6", true);
|
|
|
|
|
}
|
|
|
|
|
public static void DownM6Recipe(List<MixStep> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
int begin = 3138;
|
|
|
|
|
DownM1CleanRecipe(begin);
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowMSteps(begin, view);
|
|
|
|
|
begin += 20;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.55.7", true);
|
|
|
|
|
}
|
|
|
|
|
public static void DownM7Recipe(List<MixStep> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
int begin = 3338;
|
|
|
|
|
DownM1CleanRecipe(begin);
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowMSteps(begin, view);
|
|
|
|
|
begin += 20;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.56.0", true);
|
|
|
|
|
}
|
|
|
|
|
public static void DownM8Recipe(List<MixStep> recipeSteps)
|
|
|
|
|
{
|
|
|
|
|
int begin = 3538;
|
|
|
|
|
DownM1CleanRecipe(begin);
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowMSteps(begin, view);
|
|
|
|
|
begin += 20;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.56.1", true);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static DryerView GetDryerView(int start)
|
|
|
|
|
{
|
|
|
|
|
var byteTransform = PlcConnect.Instance.ByteTransform;
|
|
|
|
|
DryerView view = new DryerView();
|
|
|
|
|
var operateResult = PlcConnect.Instance.Read($"DB2104.{start}.0", 240);
|
|
|
|
|
if (operateResult.IsSuccess)
|
|
|
|
|
{
|
|
|
|
|
List<RecipePlcView> ls = new List<RecipePlcView>();
|
|
|
|
|
var convert = operateResult.Content;
|
|
|
|
|
var data = convert.Skip(0).Take(120);
|
|
|
|
|
for (int i = 0; i < 12; i++)
|
|
|
|
|
{
|
|
|
|
|
var bytes = data.Skip(i * 10).Take(10).ToArray();
|
|
|
|
|
RecipePlcView plcView = new RecipePlcView
|
|
|
|
|
{
|
|
|
|
|
Bin = byteTransform.TransInt16(bytes, 0),
|
|
|
|
|
Set = byteTransform.TransSingle(bytes, 2),
|
|
|
|
|
Tolerance = byteTransform.TransSingle(bytes, 6)
|
|
|
|
|
};
|
|
|
|
|
ls.Add(plcView);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
view.RecipePlcViews = ls;
|
|
|
|
|
|
|
|
|
|
data = convert.Skip(120).Take(120);
|
|
|
|
|
|
|
|
|
|
List<Step> lsSteps = new List<Step>();
|
|
|
|
|
for (int i = 0; i < 10; i++)
|
|
|
|
|
{
|
|
|
|
|
var bytes = data.Skip(i * 12).Take(12).ToArray();
|
|
|
|
|
Step step = new Step()
|
|
|
|
|
{
|
|
|
|
|
MixCode = byteTransform.TransInt16(bytes, 0),
|
|
|
|
|
MixTime = byteTransform.TransInt16(bytes, 2),
|
|
|
|
|
MixTemp = byteTransform.TransSingle(bytes, 4),
|
|
|
|
|
MixSpeed = byteTransform.TransSingle(bytes, 8)
|
|
|
|
|
};
|
|
|
|
|
lsSteps.Add(step);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
view.RecipeSteps = lsSteps;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return view;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static DryerView GetGelatView(int start)
|
|
|
|
|
{
|
|
|
|
|
var byteTransform = PlcConnect.Instance.ByteTransform;
|
|
|
|
|
DryerView view = new DryerView();
|
|
|
|
|
var operateResult = PlcConnect.Instance.Read($"DB2104.{start}.0", 140);
|
|
|
|
|
if (operateResult.IsSuccess)
|
|
|
|
|
{
|
|
|
|
|
List<RecipePlcView> ls = new List<RecipePlcView>();
|
|
|
|
|
var convert = operateResult.Content;
|
|
|
|
|
var data = convert.Skip(0).Take(20);
|
|
|
|
|
for (int i = 0; i < 2; i++)
|
|
|
|
|
{
|
|
|
|
|
var bytes = data.Skip(i * 10).Take(10).ToArray();
|
|
|
|
|
RecipePlcView plcView = new RecipePlcView
|
|
|
|
|
{
|
|
|
|
|
Bin = byteTransform.TransInt16(bytes, 0),
|
|
|
|
|
Set = byteTransform.TransSingle(bytes, 2),
|
|
|
|
|
Tolerance = byteTransform.TransSingle(bytes, 6)
|
|
|
|
|
};
|
|
|
|
|
ls.Add(plcView);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
view.RecipePlcViews = ls;
|
|
|
|
|
|
|
|
|
|
data = convert.Skip(20).Take(120);
|
|
|
|
|
|
|
|
|
|
List<Step> lsSteps = new List<Step>();
|
|
|
|
|
for (int i = 0; i < 10; i++)
|
|
|
|
|
{
|
|
|
|
|
var bytes = data.Skip(i * 12).Take(12).ToArray();
|
|
|
|
|
Step step = new Step()
|
|
|
|
|
{
|
|
|
|
|
MixCode = byteTransform.TransInt16(bytes, 0),
|
|
|
|
|
MixTime = byteTransform.TransInt16(bytes, 2),
|
|
|
|
|
MixTemp = byteTransform.TransSingle(bytes, 4),
|
|
|
|
|
MixSpeed = byteTransform.TransSingle(bytes, 8)
|
|
|
|
|
};
|
|
|
|
|
lsSteps.Add(step);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
view.RecipeSteps = lsSteps;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return view;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static List<MixStep> GetWeterView(int start)
|
|
|
|
|
{
|
|
|
|
|
var byteTransform = PlcConnect.Instance.ByteTransform;
|
|
|
|
|
var operateResult = PlcConnect.Instance.Read($"DB2104.{start}.0", 200);
|
|
|
|
|
List<MixStep> lsSteps = new List<MixStep>();
|
|
|
|
|
if (operateResult.IsSuccess)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
var data = operateResult.Content;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for (int i = 0; i < 10; i++)
|
|
|
|
|
{
|
|
|
|
|
var bytes = data.Skip(i * 20).Take(20).ToArray();
|
|
|
|
|
MixStep step = new MixStep()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
MixCode = byteTransform.TransInt16(bytes, 0),
|
|
|
|
|
MixTime = byteTransform.TransInt16(bytes, 2),
|
|
|
|
|
MixTemp = byteTransform.TransSingle(bytes, 4),
|
|
|
|
|
MixSpeed = byteTransform.TransSingle(bytes, 8),
|
|
|
|
|
SetValue = byteTransform.TransSingle(bytes, 12),
|
|
|
|
|
SetTolerance = byteTransform.TransSingle(bytes, 16)
|
|
|
|
|
};
|
|
|
|
|
lsSteps.Add(step);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return lsSteps;
|
|
|
|
|
}
|
|
|
|
|
private static void DownCleanD1Recipe(int begin)
|
|
|
|
|
{
|
|
|
|
|
List<RecipePlcView> recipePlcViews = GetClean(12);
|
|
|
|
|
List<Step> recipeSteps = GetCleanStep(10);
|
|
|
|
|
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//begin += 120;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static void DownCleanG1Recipe(int begin)
|
|
|
|
|
{
|
|
|
|
|
List<RecipePlcView> recipePlcViews = GetClean(2);
|
|
|
|
|
List<Step> recipeSteps = GetCleanStep(10);
|
|
|
|
|
|
|
|
|
|
for (int i = 0; i < recipePlcViews.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipePlcViews[i];
|
|
|
|
|
Dowd(begin, view);
|
|
|
|
|
begin += 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//begin += 20;
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowSteps(begin, view);
|
|
|
|
|
begin += 12;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static void DownM1CleanRecipe(int begin)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
List<MixStep> recipeSteps = GetCleanMixStep(10);
|
|
|
|
|
|
|
|
|
|
for (int i = 0; i < recipeSteps.Count(); i++)
|
|
|
|
|
{
|
|
|
|
|
var view = recipeSteps[i];
|
|
|
|
|
DowMSteps(begin, view);
|
|
|
|
|
begin += 20;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static void Dowd(int start, RecipePlcView view)
|
|
|
|
|
{
|
|
|
|
|
int bin = start;
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{bin}.0", view.Bin);
|
|
|
|
|
int set = start + 2;
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{set}.0", view.Set);
|
|
|
|
|
int tolerance = start + 6;
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{tolerance}.0", view.Tolerance);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static void DowSteps(int start, Step step)
|
|
|
|
|
{
|
|
|
|
|
int mixCode = start;
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{mixCode}.0", step.MixCode);
|
|
|
|
|
int mixTime = start + 2;
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{mixTime}.0", step.MixTime);
|
|
|
|
|
|
|
|
|
|
int mixTemp = start + 4;
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{mixTemp}.0", step.MixTemp);
|
|
|
|
|
int mixSpeed = start + 8;
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{mixSpeed}.0", step.MixSpeed);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static void DowMSteps(int start, MixStep step)
|
|
|
|
|
{
|
|
|
|
|
int mixCode = start;
|
|
|
|
|
var s= PlcConnect.Instance.Write($"DB2104.{mixCode}.0", step.MixCode);
|
|
|
|
|
int mixTime = start + 2;
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{mixTime}.0", step.MixTime);
|
|
|
|
|
|
|
|
|
|
int mixTemp = start + 4;
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{mixTemp}.0", step.MixTemp);
|
|
|
|
|
int mixSpeed = start + 8;
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{mixSpeed}.0", step.MixSpeed);
|
|
|
|
|
|
|
|
|
|
int setValue = start + 12;
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{setValue}.0", step.SetValue);
|
|
|
|
|
|
|
|
|
|
int tolerance = start + 16;
|
|
|
|
|
|
|
|
|
|
PlcConnect.Instance.Write($"DB2104.{tolerance}.0", step.SetTolerance);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static List<RecipePlcView> GetClean(int num)
|
|
|
|
|
{
|
|
|
|
|
List<RecipePlcView> ls = new List<RecipePlcView>(num);
|
|
|
|
|
for (int i = 0; i < num; i++)
|
|
|
|
|
{
|
|
|
|
|
ls.Add(new RecipePlcView()
|
|
|
|
|
{
|
|
|
|
|
Bin = 0,
|
|
|
|
|
Tolerance = 0,
|
|
|
|
|
Set = 0
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return ls;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static List<Step> GetCleanStep(int num)
|
|
|
|
|
{
|
|
|
|
|
List<Step> ls = new List<Step>(num);
|
|
|
|
|
for (int i = 0; i < num; i++)
|
|
|
|
|
{
|
|
|
|
|
ls.Add(new Step()
|
|
|
|
|
{
|
|
|
|
|
MixCode = 0,
|
|
|
|
|
MixSpeed = 0,
|
|
|
|
|
MixTemp = 0,
|
|
|
|
|
MixTime = 0
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return ls;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static List<MixStep> GetCleanMixStep(int num)
|
|
|
|
|
{
|
|
|
|
|
List<MixStep> ls = new List<MixStep>(num);
|
|
|
|
|
for (int i = 0; i < num; i++)
|
|
|
|
|
{
|
|
|
|
|
ls.Add(new MixStep()
|
|
|
|
|
{
|
|
|
|
|
MixCode = 0,
|
|
|
|
|
MixSpeed = 0,
|
|
|
|
|
MixTemp = 0,
|
|
|
|
|
MixTime = 0,
|
|
|
|
|
SetTolerance = 0,
|
|
|
|
|
SetValue = 0
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return ls;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|