修改操作页面开始添加从逻辑
This commit is contained in:
commit
b6ce460d18
5 files changed
+470
-41
No files matched your search
@@ -300,6 +300,8 @@ namespace DyeingComputer.ViewModel
|
||||
private int MT39;//中水位
|
||||
private int MT40;//低水位
|
||||
private int MT41;//安全水位
|
||||
private int MT42;//水洗排水阀
|
||||
private int MT43;//水洗排水完成水位
|
||||
private static int MU01;//呼叫操作员
|
||||
public static string S01;//机台号
|
||||
public static string S03;//设备组
|
||||
@@ -353,6 +355,8 @@ namespace DyeingComputer.ViewModel
|
||||
MT39 = Convert.ToInt16(Selet_con("MT39"));//
|
||||
MT40 = Convert.ToInt16(Selet_con("MT40"));//
|
||||
MT41 = Convert.ToInt16(Selet_con("MT41"));//
|
||||
MT42 = Convert.ToInt16(Selet_con("MT42"));//
|
||||
MT43 = Convert.ToInt16(Selet_con("MT43"));//
|
||||
MU01 = Convert.ToInt16(Selet_con("MU01"));//呼叫操作员
|
||||
MS01 = Convert.ToDouble(Selet_con("MS01"));
|
||||
MS02 = Convert.ToDouble(Selet_con("MS02"));
|
||||
@@ -450,7 +454,8 @@ namespace DyeingComputer.ViewModel
|
||||
if (set_) { set_ = false; SYS_SET(); }//设置更新
|
||||
if (!SETP_runtime) DIDETime++;
|
||||
|
||||
STEP_RUN();
|
||||
STEP_RUN_master();
|
||||
STEP_RUN_slave();
|
||||
LOG_view();
|
||||
IO_view();
|
||||
|
||||
@@ -693,13 +698,31 @@ namespace DyeingComputer.ViewModel
|
||||
STEP_finish = false;
|
||||
break;
|
||||
case "013":
|
||||
|
||||
STEP_P1 = Convert.ToDouble(P1);
|
||||
STEP_P2 = Convert.ToDouble(P2);
|
||||
STEP_P3 = Convert.ToDouble(P3);
|
||||
STEP_P4 = Convert.ToDouble(P4);
|
||||
STEP_P5 = 0;
|
||||
SETP_runtime = true;
|
||||
STEP_finish = false;
|
||||
break;
|
||||
case "015":
|
||||
|
||||
STEP_P1 = Convert.ToDouble(P1);
|
||||
STEP_P2 = Convert.ToDouble(P2);
|
||||
STEP_P3 = Convert.ToDouble(P3);
|
||||
STEP_P4 = Convert.ToDouble(P4);
|
||||
STEP_P5 = Convert.ToDouble(P5);
|
||||
SETP_runtime = true;
|
||||
STEP_finish = false;
|
||||
break;
|
||||
case "017":
|
||||
|
||||
STEP_P1 = Convert.ToDouble(P1);
|
||||
STEP_P2 = Convert.ToDouble(P2);
|
||||
STEP_P3 = Convert.ToDouble(P3);
|
||||
STEP_P4 = Convert.ToDouble(P4);
|
||||
STEP_P5 = Convert.ToDouble(P5);
|
||||
SETP_runtime = true;
|
||||
STEP_finish = false;
|
||||
break;
|
||||
case "020":
|
||||
STEP_P1 = Convert.ToDouble(P1);
|
||||
@@ -869,7 +892,7 @@ namespace DyeingComputer.ViewModel
|
||||
private string TANK1, TANK2, TANK3;//料桶信息
|
||||
public static string TANK1_DYELOT, TANK2_DYELOT, TANK3_DYELOT;//料单号
|
||||
private int TANK1_REDYE,TANK1_STEP, TANK2_REDYE, TANK2_STEP, TANK3_REDYE, TANK3_STEP;
|
||||
void STEP_RUN()
|
||||
void STEP_RUN_master()
|
||||
{
|
||||
WORK_run = WORK_RUN;
|
||||
if (WORK_RUN == 2)
|
||||
@@ -1061,14 +1084,117 @@ namespace DyeingComputer.ViewModel
|
||||
}
|
||||
break;//流量入水
|
||||
case "013":
|
||||
if (STEP_P4 > 0)
|
||||
{
|
||||
if (STEP_P5 == 0)
|
||||
{
|
||||
if (STEP_P1.ToString() == "1")
|
||||
{
|
||||
Updata_dtd("3013", true);
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Washing +
|
||||
"(" + Resources.WaterLevel + ")" + "[" + STEP_P4 + "]" +
|
||||
":" + Resources.AddWater + "1";
|
||||
}
|
||||
else if (STEP_P1.ToString() == "2")
|
||||
{
|
||||
Updata_dtd("3014", true);
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Washing +
|
||||
"(" + Resources.WaterLevel + ")" + "[" + STEP_P4 + "]" +
|
||||
":" + Resources.AddWater + "2";
|
||||
}
|
||||
else if (STEP_P1.ToString() == "3")
|
||||
{
|
||||
Updata_dtd("3015", true);
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Washing +
|
||||
"(" + Resources.WaterLevel + ")" + "[" + STEP_P4 + "]" +
|
||||
":" + Resources.AddWater + "3";
|
||||
}
|
||||
else if (STEP_P1.ToString() == "4")
|
||||
{
|
||||
Updata_dtd("3016", true);
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Washing +
|
||||
"(" + Resources.WaterLevel + ")" + "[" + STEP_P4 + "]" +
|
||||
":" + Resources.AddWater + "4";
|
||||
}
|
||||
|
||||
break;
|
||||
if (Selet_dtm("1015") >= STEP_P2) //到达水位
|
||||
{
|
||||
STEP_P5 = 1;
|
||||
STEP_TIME = Convert.ToInt16(STEP_P3) * 60;
|
||||
Updata_dtd("3013", false);
|
||||
Updata_dtd("3014", false);
|
||||
Updata_dtd("3015", false);
|
||||
Updata_dtd("3016", false);
|
||||
Updata_dtd("3011", true);
|
||||
}
|
||||
}
|
||||
else if (STEP_P5 == 1)
|
||||
{
|
||||
if (STEP_TIME <= 0)//运转
|
||||
{
|
||||
STEP_P5 = 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
STEP_TIME--;
|
||||
TIME_M = STEP_TIME / 60;
|
||||
TIME_S = STEP_TIME - TIME_M * 60;
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Washing +
|
||||
"(" + Resources.WaterLevel + ")" + "[" + STEP_P4 + "]" +
|
||||
":" + Resources.Time + string.Format(" {0:D3}", TIME_M) +
|
||||
":" + string.Format(" {0:D2}", TIME_S);
|
||||
}
|
||||
}
|
||||
else if (STEP_P5 == 2) //排水
|
||||
{
|
||||
if (MT42 == 1)
|
||||
{
|
||||
Updata_dtd("3017", true);
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Washing +
|
||||
"[" + STEP_P4 + "]" + ":" + Resources.Drainage + "1";
|
||||
}
|
||||
else if (MT42 == 2)
|
||||
{
|
||||
Updata_dtd("3018", true);
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Washing +
|
||||
"[" + STEP_P4 + "]" + ":" + Resources.Drainage + "2";
|
||||
}
|
||||
else if (MT42 == 3)
|
||||
{
|
||||
Updata_dtd("3019", true);
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Washing +
|
||||
"[" + STEP_P4 + "]" + ":" + Resources.Drainage + "3";
|
||||
}
|
||||
|
||||
if (Selet_dtm("1015") <= STEP_P2) //排水状态完成
|
||||
{
|
||||
if (STEP_TIME <= 0)//排水延时
|
||||
{
|
||||
Updata_dtd("3017", false);
|
||||
Updata_dtd("3018", false);
|
||||
Updata_dtd("3019", false);
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Washing +
|
||||
"[" + STEP_P4 + "]" + ":" + Resources.Finish;
|
||||
STEP_P4--;
|
||||
STEP_P5=0;
|
||||
}
|
||||
else
|
||||
{
|
||||
STEP_TIME--; //排水延时计时
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Washing +
|
||||
"[" + STEP_P4 + "]" + ":" + Resources.Time + STEP_TIME;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else { STEP_finish = true; }
|
||||
break;//批次水位水洗
|
||||
case "015":
|
||||
|
||||
break;
|
||||
break;//溢流水洗
|
||||
case "017":
|
||||
|
||||
break;
|
||||
break;//降温水洗
|
||||
case "020":
|
||||
if (STEP_P1.ToString() == "1")
|
||||
{
|
||||
@@ -1657,8 +1783,7 @@ namespace DyeingComputer.ViewModel
|
||||
if (WORK_RUN == 0)
|
||||
{
|
||||
// if (Status_Str == Resources.Paused)
|
||||
// {
|
||||
|
||||
// {
|
||||
Updata_dtm("1004", 0);
|
||||
Updata_dtm("1005", Selet_dtm("1010"));
|
||||
for (int i = 1; i <128; i++)
|
||||
@@ -1676,7 +1801,275 @@ namespace DyeingComputer.ViewModel
|
||||
}
|
||||
}
|
||||
}
|
||||
void STEP_RUN_slave()
|
||||
{
|
||||
if (WORK_RUN == 2)
|
||||
{
|
||||
switch (STEP_ID)
|
||||
{
|
||||
|
||||
case "015":
|
||||
|
||||
break;//溢流水洗
|
||||
case "017":
|
||||
|
||||
break;//降温水洗
|
||||
case "064":
|
||||
if ((STEP_P1 == 1) || (STEP_P1 == 0))
|
||||
{
|
||||
if (Selet_dtm("1017") >= STEP_P3)//水位
|
||||
{
|
||||
TANK1 = Resources.Ready;
|
||||
Updata_dtd("3036", false);
|
||||
Updata_dtd("3037", false);
|
||||
Updata_dtd("3038", false);
|
||||
|
||||
if (Selet_dtm("1012") >= STEP_P4)//温度
|
||||
{
|
||||
Updata_dtd("3039", false);
|
||||
|
||||
if (Selet_dtd("2004"))//投料确认
|
||||
{
|
||||
if (STEP_TIME <= 0)//搅拌
|
||||
{
|
||||
TANK1 = Resources.Ready + Resources.Finish;
|
||||
Updata_dtd("3040", false);
|
||||
STEP_finish = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
STEP_TIME--;
|
||||
Updata_dtd("3040", true);
|
||||
}
|
||||
Alert_yellow = false;
|
||||
Alert_bell = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert_yellow = true;
|
||||
STEP_TIME = Convert.ToInt16(STEP_P5);
|
||||
Alert_bell = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Updata_dtd("3039", true);
|
||||
Updata_dtd("3040", true);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (STEP_P2 == 0) Updata_dtd("3038", true);
|
||||
else if (STEP_P2 == 1) Updata_dtd("3036", true);
|
||||
else if (STEP_P2 == 2) Updata_dtd("3037", true);
|
||||
}
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Tank + " 1 :" + Resources.Ready;
|
||||
} //药缸1
|
||||
else if (STEP_P1 == 2)
|
||||
{
|
||||
if (Selet_dtm("1018") >= STEP_P3)//水位
|
||||
{
|
||||
TANK2 = Resources.Ready;
|
||||
Updata_dtd("3046", false);
|
||||
Updata_dtd("3047", false);
|
||||
Updata_dtd("3048", false);
|
||||
|
||||
if (Selet_dtm("1013") >= STEP_P4)//温度
|
||||
{
|
||||
Updata_dtd("3049", false);
|
||||
|
||||
if (Selet_dtd("2004"))//投料确认
|
||||
{
|
||||
if (STEP_TIME <= 0)//搅拌
|
||||
{
|
||||
TANK2 = Resources.Ready + Resources.Finish;
|
||||
Updata_dtd("3050", false);
|
||||
STEP_finish = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
STEP_TIME--;
|
||||
Updata_dtd("3050", true);
|
||||
}
|
||||
Alert_yellow = false;
|
||||
Alert_bell = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert_yellow = true;
|
||||
STEP_TIME = Convert.ToInt16(STEP_P5);
|
||||
Alert_bell = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Updata_dtd("3049", true);
|
||||
Updata_dtd("3050", true);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (STEP_P2 == 0) Updata_dtd("3048", true);
|
||||
else if (STEP_P2 == 1) Updata_dtd("3046", true);
|
||||
else if (STEP_P2 == 2) Updata_dtd("3047", true);
|
||||
}
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Tank + " 2 :" + Resources.Ready;
|
||||
}//药缸2
|
||||
else if (STEP_P1 == 3)
|
||||
{
|
||||
if (Selet_dtm("1019") >= STEP_P3)//水位
|
||||
{
|
||||
TANK3 = Resources.Ready;
|
||||
Updata_dtd("3056", false);
|
||||
Updata_dtd("3057", false);
|
||||
Updata_dtd("3058", false);
|
||||
|
||||
if (Selet_dtm("1014") >= STEP_P4)//温度
|
||||
{
|
||||
Updata_dtd("3059", false);
|
||||
|
||||
if (Selet_dtd("2004"))//投料确认
|
||||
{
|
||||
if (STEP_TIME <= 0)//搅拌
|
||||
{
|
||||
TANK3 = Resources.Ready + Resources.Finish;
|
||||
Updata_dtd("3060", false);
|
||||
STEP_finish = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
STEP_TIME--;
|
||||
Updata_dtd("3060", true);
|
||||
}
|
||||
Alert_yellow = false;
|
||||
Alert_bell = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert_yellow = true;
|
||||
STEP_TIME = Convert.ToInt16(STEP_P5);
|
||||
Alert_bell = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Updata_dtd("3059", true);
|
||||
Updata_dtd("3060", true);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (STEP_P2 == 0) Updata_dtd("3058", true);
|
||||
else if (STEP_P2 == 1) Updata_dtd("3056", true);
|
||||
else if (STEP_P2 == 2) Updata_dtd("3057", true);
|
||||
}
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Tank + " 3 :" + Resources.Ready;
|
||||
}//药缸3
|
||||
break;//药缸备药
|
||||
case "065":
|
||||
if (STEP_P1 == 1)
|
||||
{
|
||||
if ((TANK1_L - Selet_dtm("1017")) > TANK1_SL) { TANK1_Pc = TANK2_Pc - 3.3; }//计算比例
|
||||
else { TANK1_Pc = TANK1_Pc + 3.3; }
|
||||
if (((TANK1_Pt - TANK1_Pc) > 5) || ((TANK1_Pt - TANK1_Pc) > -5)) TANK1_Pt = TANK1_Pc;//调整比例
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Tank + " 1 :" + Resources.AddTheMedicine;
|
||||
} //药缸1
|
||||
else if (STEP_P1 == 2)
|
||||
{
|
||||
if ((TANK2_L - Selet_dtm("1018")) > TANK2_SL) { TANK2_Pc = TANK2_Pc - 3.3; }//计算比例
|
||||
else { TANK2_Pc = TANK2_Pc + 3.3; }
|
||||
if (((TANK2_Pt - TANK2_Pc) > 5) || ((TANK2_Pt - TANK2_Pc) > -5)) TANK2_Pt = TANK2_Pc;//调整比例
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Tank + " 2 :" + Resources.AddTheMedicine;
|
||||
}//药缸2
|
||||
else if (STEP_P1 == 3)
|
||||
{
|
||||
if ((TANK3_L - Selet_dtm("1019")) > TANK3_SL) { TANK3_Pc = TANK3_Pc - 3.3; }//计算比例
|
||||
else { TANK3_Pc = TANK3_Pc + 3.3; }
|
||||
if (((TANK3_Pt - TANK3_Pc) > 5) || ((TANK3_Pt - TANK3_Pc) > -5)) TANK3_Pt = TANK3_Pc;//调整比例
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Tank + " 3 :" + Resources.AddTheMedicine;
|
||||
}//药缸3
|
||||
break;//药缸加药
|
||||
case "066":
|
||||
if (STEP_P1 == 1)
|
||||
{
|
||||
TANK1_REDYE = SYS_REDYE;
|
||||
if (string.IsNullOrEmpty(TANK1_DYELOT)) TANK1_DYELOT = WorkNumder.ToString();
|
||||
TANK1_STEP = Convert.ToInt16(STEP_P3);
|
||||
FeedingRecords(work_Numder, TANK1_DYELOT, Convert.ToInt16(STEP_P1), TANK1_STEP, Convert.ToInt16(STEP_P2));//调用呼叫
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Tank + " 1 :" + Resources.CallDistribution;
|
||||
STEP_finish = true;
|
||||
} //药缸1
|
||||
else if (STEP_P1 == 2)
|
||||
{
|
||||
TANK2_REDYE = SYS_REDYE;
|
||||
if (string.IsNullOrEmpty(TANK2_DYELOT)) TANK2_DYELOT = WorkNumder.ToString();
|
||||
TANK2_STEP = Convert.ToInt16(STEP_P3);
|
||||
FeedingRecords(work_Numder, TANK2_DYELOT, Convert.ToInt16(STEP_P1), TANK2_STEP, Convert.ToInt16(STEP_P2));//调用呼叫
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Tank + " 2 :" + Resources.CallDistribution;
|
||||
STEP_finish = true;
|
||||
}//药缸2
|
||||
else if (STEP_P1 == 3)
|
||||
{
|
||||
TANK3_REDYE = SYS_REDYE;
|
||||
if (string.IsNullOrEmpty(TANK3_DYELOT)) TANK3_DYELOT = WorkNumder.ToString();
|
||||
TANK3_STEP = Convert.ToInt16(STEP_P3);
|
||||
FeedingRecords(work_Numder, TANK3_DYELOT, Convert.ToInt16(STEP_P1), TANK3_STEP, Convert.ToInt16(STEP_P2));//调用呼叫
|
||||
if (errTabler.Rows.Count == 0) Status_Str = Resources.Tank + " 3 :" + Resources.CallDistribution;
|
||||
STEP_finish = true;
|
||||
}//药缸3
|
||||
//STEP_finish = true;
|
||||
break;//呼叫输送
|
||||
case "067":
|
||||
|
||||
STEP_finish = true;
|
||||
break;//等待输送
|
||||
case "090":
|
||||
if (((STEP_P1 - 1) < Selet_dtm("1010")) && (Selet_dtm("1010") < (STEP_P1 + 1))) PH_start = true;//达到温度开始ph控制
|
||||
if (PH_start)
|
||||
{
|
||||
if (STEP_P2 >= Selet_dtm("1009"))
|
||||
{
|
||||
PH_start = false;
|
||||
STEP_finish = true;
|
||||
}
|
||||
if (errTabler.Rows.Count == 0) Status_Str = "PH" + Resources.PHControl + "(" + Selet_dtm("1009") + "pH)";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (errTabler.Rows.Count == 0) Status_Str = "PH" + Resources.PHControl + "(" + Resources.Await + Resources.Temperature + ")";
|
||||
}
|
||||
break;//快速加酸
|
||||
case "091":
|
||||
if (STEP_P2 >= Selet_dtm("1009"))
|
||||
{
|
||||
PH_start = false;
|
||||
STEP_finish = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
PH_start = true;
|
||||
Status_Str = Status_Str + "(" + Selet_dtm("1009") + "pH)";
|
||||
}
|
||||
break;//PH温度控制
|
||||
case "093":
|
||||
if (STEP_TIME <= 0)
|
||||
{
|
||||
STEP_finish = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
STEP_TIME--;
|
||||
}
|
||||
if (errTabler.Rows.Count == 0) Status_Str = "PH" + Resources.PHDetection + "(" + STEP_TIME + ")";
|
||||
break;//PH检测
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
public static bool CALL_FR = false;//呼叫状态
|
||||
string SK5;
|
||||
void FeedingRecords(string WorkOrder,string Dyelot,int TANK,int STEP,int Type) //呼叫输送
|
||||
|
||||
Reference in new issue
Block a user