|
|
@ -67,7 +67,9 @@ namespace DyeingComputer.ViewModel |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
double MT33; |
|
|
private static double MT05;//主缸排水延时
|
|
|
|
|
|
private static double MT06;//主缸排水延时
|
|
|
|
|
|
private static double MT33;//主缸温度偏差
|
|
|
void SYS_SET() |
|
|
void SYS_SET() |
|
|
{ |
|
|
{ |
|
|
SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
|
|
|
SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径
|
|
|
@ -81,6 +83,9 @@ namespace DyeingComputer.ViewModel |
|
|
pid.N = Convert.ToDouble(Selet_sys("MT24")); |
|
|
pid.N = Convert.ToDouble(Selet_sys("MT24")); |
|
|
pid.OutputUpperLimit = Convert.ToDouble(Selet_sys("MT25")); |
|
|
pid.OutputUpperLimit = Convert.ToDouble(Selet_sys("MT25")); |
|
|
pid.OutputLowerLimit = Convert.ToDouble(Selet_sys("MT26")); |
|
|
pid.OutputLowerLimit = Convert.ToDouble(Selet_sys("MT26")); |
|
|
|
|
|
|
|
|
|
|
|
MT05 = Convert.ToDouble(Selet_sys("MT05"));//主缸排水延时
|
|
|
|
|
|
MT06 = Convert.ToDouble(Selet_sys("MT06"));//动力排水延时
|
|
|
MT33 = Convert.ToDouble(Selet_sys("MT33"));//温度偏差参数
|
|
|
MT33 = Convert.ToDouble(Selet_sys("MT33"));//温度偏差参数
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -126,7 +131,6 @@ namespace DyeingComputer.ViewModel |
|
|
get { return sys_Time; } |
|
|
get { return sys_Time; } |
|
|
set { sys_Time = value; OnPropertyChanged("Sys_Time"); } |
|
|
set { sys_Time = value; OnPropertyChanged("Sys_Time"); } |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public void CountDown() |
|
|
public void CountDown() |
|
|
{ |
|
|
{ |
|
|
DispatcherTimer timer1s = new DispatcherTimer//初始化循环,每1秒调用一次Tick
|
|
|
DispatcherTimer timer1s = new DispatcherTimer//初始化循环,每1秒调用一次Tick
|
|
|
@ -201,25 +205,33 @@ namespace DyeingComputer.ViewModel |
|
|
{ |
|
|
{ |
|
|
case "001": |
|
|
case "001": |
|
|
STEP_ID = "001"; |
|
|
STEP_ID = "001"; |
|
|
STEP_P1 = Convert.ToDouble(P1); |
|
|
STEP_P1 = Convert.ToDouble(P1); |
|
|
STEP_P2 = Convert.ToDouble(P2); |
|
|
STEP_P2 = Convert.ToDouble(P2); |
|
|
STEP_P3 = Convert.ToDouble(P3); |
|
|
STEP_P3 = Convert.ToDouble(P3); |
|
|
|
|
|
|
|
|
double t_t = Convert.ToDouble(Selet_dtm("1010")); |
|
|
double t_t = Convert.ToDouble(Selet_dtm("1010")); |
|
|
if (STEP_P1 > t_t) { THL_mode = 1; } |
|
|
if (STEP_P1 > t_t) { THL_mode = 1; } |
|
|
else if (STEP_P1 < t_t) { THL_mode = 2; } |
|
|
else if (STEP_P1 < t_t) { THL_mode = 2; } |
|
|
|
|
|
TEMP_co = t_t; |
|
|
TEMP_co = t_t; |
|
|
updata_dtm("1003", STEP_P2 / 600); |
|
|
updata_dtm("1003", STEP_P2 / 600); |
|
|
STEP_TIME = Convert.ToInt16(STEP_P3) * 60; |
|
|
STEP_TIME = Convert.ToInt16(STEP_P3) * 60; |
|
|
WORK_RUN = 2; |
|
|
WORK_RUN = 2; |
|
|
SETP_runtime = true; |
|
|
SETP_runtime = true; |
|
|
STEP_finish = false; |
|
|
break; |
|
|
break; |
|
|
case "007": |
|
|
case "007": |
|
|
|
|
|
STEP_P1 = Convert.ToDouble(P1); |
|
|
|
|
|
STEP_P2 = Convert.ToDouble(P2); |
|
|
|
|
|
WORK_RUN = 2; |
|
|
|
|
|
SETP_runtime = true; |
|
|
|
|
|
STEP_finish = false; |
|
|
break; |
|
|
break; |
|
|
case "009": |
|
|
case "008": |
|
|
|
|
|
STEP_P1 = Convert.ToDouble(P1); |
|
|
|
|
|
STEP_P2 = Convert.ToDouble(P2); |
|
|
|
|
|
WORK_RUN = 2; |
|
|
|
|
|
SETP_runtime = true; |
|
|
|
|
|
STEP_finish = false; |
|
|
break; |
|
|
break; |
|
|
case "013": |
|
|
case "013": |
|
|
|
|
|
|
|
|
@ -231,9 +243,37 @@ namespace DyeingComputer.ViewModel |
|
|
|
|
|
|
|
|
break; |
|
|
break; |
|
|
case "020": |
|
|
case "020": |
|
|
|
|
|
STEP_P1 = Convert.ToDouble(P1); |
|
|
|
|
|
STEP_P2 = Convert.ToDouble(P2); |
|
|
|
|
|
STEP_TIME = Convert.ToInt16(MT05); //排水倒计时
|
|
|
|
|
|
WORK_RUN = 2; |
|
|
|
|
|
SETP_runtime = true; |
|
|
|
|
|
STEP_finish = false; |
|
|
break; |
|
|
break; |
|
|
case "022": |
|
|
case "022": |
|
|
|
|
|
STEP_P1 = Convert.ToDouble(P1); |
|
|
|
|
|
STEP_P2 = Convert.ToDouble(P2); |
|
|
|
|
|
STEP_TIME = Convert.ToInt16(MT06); //动力排水倒计时
|
|
|
|
|
|
WORK_RUN = 2; |
|
|
|
|
|
SETP_runtime = true; |
|
|
|
|
|
STEP_finish = false; |
|
|
|
|
|
break; |
|
|
|
|
|
case "031": |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case "035": |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case "036": |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case "039": |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case "040": |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case "041": |
|
|
|
|
|
|
|
|
break; |
|
|
break; |
|
|
default: |
|
|
default: |
|
|
@ -246,11 +286,11 @@ namespace DyeingComputer.ViewModel |
|
|
{ |
|
|
{ |
|
|
if (WORK_RUN == 2) |
|
|
if (WORK_RUN == 2) |
|
|
{ |
|
|
{ |
|
|
if (SETP_runtime) |
|
|
if (SETP_runtime && (!STEP_finish))//
|
|
|
{ |
|
|
{ |
|
|
switch (STEP_ID) |
|
|
switch (STEP_ID) |
|
|
{ |
|
|
{ |
|
|
case "001": //功能模块001温度控制
|
|
|
case "001": |
|
|
int TIME_H; |
|
|
int TIME_H; |
|
|
int TIME_M; |
|
|
int TIME_M; |
|
|
int TIME_S; |
|
|
int TIME_S; |
|
|
@ -303,13 +343,96 @@ namespace DyeingComputer.ViewModel |
|
|
} |
|
|
} |
|
|
updata_dtm("1004", TO); |
|
|
updata_dtm("1004", TO); |
|
|
updata_dtm("1005", TEMP_co); |
|
|
updata_dtm("1005", TEMP_co); |
|
|
break; |
|
|
break;//功能模块001温度控制
|
|
|
case "007": |
|
|
case "007": |
|
|
|
|
|
if (STEP_P1.ToString() == "1") |
|
|
|
|
|
{ |
|
|
|
|
|
updata_dtd("3012", true); |
|
|
|
|
|
updata_dtd("3013", false); |
|
|
|
|
|
updata_dtd("3014", false); |
|
|
|
|
|
updata_dtd("3015", false); |
|
|
|
|
|
Status_Str = Resources.AddWater + ":" + Resources.AddWater + "1"; |
|
|
|
|
|
} |
|
|
|
|
|
else if (STEP_P1.ToString() == "2") |
|
|
|
|
|
{ |
|
|
|
|
|
updata_dtd("3012", false); |
|
|
|
|
|
updata_dtd("3013", true); |
|
|
|
|
|
updata_dtd("3014", false); |
|
|
|
|
|
updata_dtd("3015", false); |
|
|
|
|
|
Status_Str = Resources.AddWater + ":" + Resources.AddWater + "2"; |
|
|
|
|
|
} |
|
|
|
|
|
else if (STEP_P1.ToString() == "3") |
|
|
|
|
|
{ |
|
|
|
|
|
updata_dtd("3012", false); |
|
|
|
|
|
updata_dtd("3013", false); |
|
|
|
|
|
updata_dtd("3014", true); |
|
|
|
|
|
updata_dtd("3015", false); |
|
|
|
|
|
Status_Str = Resources.AddWater + ":" + Resources.AddWater + "3"; |
|
|
|
|
|
} |
|
|
|
|
|
else if (STEP_P1.ToString() == "4") |
|
|
|
|
|
{ |
|
|
|
|
|
updata_dtd("3012", false); |
|
|
|
|
|
updata_dtd("3013", false); |
|
|
|
|
|
updata_dtd("3014", false); |
|
|
|
|
|
updata_dtd("3015", true); |
|
|
|
|
|
Status_Str = Resources.AddWater + ":" + Resources.AddWater + "4"; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
break; |
|
|
if (Selet_dtm("1015") >= STEP_P2) //到达水位
|
|
|
case "009": |
|
|
{ |
|
|
|
|
|
STEP_finish = true; |
|
|
|
|
|
updata_dtd("3012", false); |
|
|
|
|
|
updata_dtd("3013", false); |
|
|
|
|
|
updata_dtd("3014", false); |
|
|
|
|
|
updata_dtd("3015", false); |
|
|
|
|
|
Status_Str = Resources.AddWater + ":" + Resources.Finish; |
|
|
|
|
|
} |
|
|
|
|
|
break;//液位入水
|
|
|
|
|
|
case "008": |
|
|
|
|
|
if (STEP_P1.ToString() == "1") |
|
|
|
|
|
{ |
|
|
|
|
|
updata_dtd("3012", true); |
|
|
|
|
|
updata_dtd("3013", false); |
|
|
|
|
|
updata_dtd("3014", false); |
|
|
|
|
|
updata_dtd("3015", false); |
|
|
|
|
|
|
|
|
break; |
|
|
Status_Str = Resources. AddWater + ":" + Resources.AddWater + "1"; |
|
|
|
|
|
} |
|
|
|
|
|
else if (STEP_P1.ToString() == "2") |
|
|
|
|
|
{ |
|
|
|
|
|
updata_dtd("3012", false); |
|
|
|
|
|
updata_dtd("3013", true); |
|
|
|
|
|
updata_dtd("3014", false); |
|
|
|
|
|
updata_dtd("3015", false); |
|
|
|
|
|
Status_Str = Resources.AddWater + ":" + Resources.AddWater + "2"; |
|
|
|
|
|
} |
|
|
|
|
|
else if (STEP_P1.ToString() == "3") |
|
|
|
|
|
{ |
|
|
|
|
|
updata_dtd("3012", false); |
|
|
|
|
|
updata_dtd("3013", false); |
|
|
|
|
|
updata_dtd("3014", true); |
|
|
|
|
|
updata_dtd("3015", false); |
|
|
|
|
|
Status_Str = Resources.AddWater + ":" + Resources.AddWater + "3"; |
|
|
|
|
|
} |
|
|
|
|
|
else if (STEP_P1.ToString() == "4") |
|
|
|
|
|
{ |
|
|
|
|
|
updata_dtd("3012", false); |
|
|
|
|
|
updata_dtd("3013", false); |
|
|
|
|
|
updata_dtd("3014", false); |
|
|
|
|
|
updata_dtd("3015", true); |
|
|
|
|
|
Status_Str = Resources.AddWater + ":" + Resources.AddWater + "4"; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (Selet_dtm("1016") >= STEP_P2) //到达水量
|
|
|
|
|
|
{ |
|
|
|
|
|
STEP_finish = true; |
|
|
|
|
|
updata_dtd("3012", false); |
|
|
|
|
|
updata_dtd("3013", false); |
|
|
|
|
|
updata_dtd("3014", false); |
|
|
|
|
|
updata_dtd("3015", false); |
|
|
|
|
|
Status_Str = Resources.AddWater + ":" + Resources.Finish; |
|
|
|
|
|
} |
|
|
|
|
|
break;//流量入水
|
|
|
case "013": |
|
|
case "013": |
|
|
|
|
|
|
|
|
break; |
|
|
break; |
|
|
@ -320,10 +443,66 @@ namespace DyeingComputer.ViewModel |
|
|
|
|
|
|
|
|
break; |
|
|
break; |
|
|
case "020": |
|
|
case "020": |
|
|
|
|
|
if (STEP_P1.ToString() == "1") |
|
|
|
|
|
{ |
|
|
|
|
|
updata_dtd("3016", true); |
|
|
|
|
|
updata_dtd("3017", false); |
|
|
|
|
|
updata_dtd("3018", false); |
|
|
|
|
|
Status_Str = Resources.Drainage + ":" + Resources.Drainage + "1"; |
|
|
|
|
|
|
|
|
break; |
|
|
} |
|
|
|
|
|
else if (STEP_P1.ToString() == "2") |
|
|
|
|
|
{ |
|
|
|
|
|
updata_dtd("3016", false); |
|
|
|
|
|
updata_dtd("3017", true); |
|
|
|
|
|
updata_dtd("3018", false); |
|
|
|
|
|
Status_Str = Resources.Drainage + ":" + Resources.Drainage + "2"; |
|
|
|
|
|
} |
|
|
|
|
|
else if (STEP_P1.ToString() == "3") |
|
|
|
|
|
{ |
|
|
|
|
|
updata_dtd("3016", false); |
|
|
|
|
|
updata_dtd("3017", false); |
|
|
|
|
|
updata_dtd("3018", true); |
|
|
|
|
|
Status_Str = Resources.Drainage + ":" + Resources.Drainage + "3"; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (Selet_dtm("1015") <= STEP_P2) //排水状态完成
|
|
|
|
|
|
{ |
|
|
|
|
|
if (STEP_TIME == 0)//排水延时
|
|
|
|
|
|
{ |
|
|
|
|
|
STEP_finish = true; |
|
|
|
|
|
updata_dtd("3016", false); |
|
|
|
|
|
updata_dtd("3017", false); |
|
|
|
|
|
updata_dtd("3018", false); |
|
|
|
|
|
Status_Str = Resources.Drainage + ":" + Resources.Finish; |
|
|
|
|
|
} |
|
|
|
|
|
else |
|
|
|
|
|
{ |
|
|
|
|
|
STEP_TIME--; //排水延时计时
|
|
|
|
|
|
Status_Str = Resources.Drainage + ":" + Resources.Time + STEP_TIME; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
break;//排水
|
|
|
case "022": |
|
|
case "022": |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case "031": |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case "035": |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case "036": |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case "039": |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case "040": |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case "041": |
|
|
|
|
|
|
|
|
break; |
|
|
break; |
|
|
default: |
|
|
default: |
|
|
break; |
|
|
break; |
|
|
|