增加模拟演示数据
This commit is contained in:
commit
b3e33b2f27
1 file changed
+40
-21
@@ -375,7 +375,7 @@ namespace DyeingComputer.ViewModel
|
|||||||
pid.Kd = Convert.ToDouble(Selet_con("MT23"));
|
pid.Kd = Convert.ToDouble(Selet_con("MT23"));
|
||||||
pid.N = Convert.ToDouble(Selet_con("MT24"));
|
pid.N = Convert.ToDouble(Selet_con("MT24"));
|
||||||
pid.OutputUpperLimit = Convert.ToDouble(Selet_con("MT25"));
|
pid.OutputUpperLimit = Convert.ToDouble(Selet_con("MT25"));
|
||||||
pid.OutputLowerLimit = Convert.ToDouble(Selet_con("MT26"));
|
pid.OutputLowerLimit = - Convert.ToDouble(Selet_con("MT26"));
|
||||||
|
|
||||||
MT05 = Convert.ToInt16(Selet_con("MT05"));//主缸排水延时
|
MT05 = Convert.ToInt16(Selet_con("MT05"));//主缸排水延时
|
||||||
MT06 = Convert.ToInt16(Selet_con("MT06"));//动力排水延时
|
MT06 = Convert.ToInt16(Selet_con("MT06"));//动力排水延时
|
||||||
@@ -531,7 +531,7 @@ namespace DyeingComputer.ViewModel
|
|||||||
if (set_) { set_ = false; SYS_SET(); }//设置更新
|
if (set_) { set_ = false; SYS_SET(); }//设置更新
|
||||||
if (!SETP_runtime) DIDETime++;
|
if (!SETP_runtime) DIDETime++;
|
||||||
|
|
||||||
STEP_RUN_master();
|
STEP_RUN_master(); if (S04 == "1") { Simulate(); }
|
||||||
STEP_RUN_slave();
|
STEP_RUN_slave();
|
||||||
LOG_view();
|
LOG_view();
|
||||||
IO_view();
|
IO_view();
|
||||||
@@ -557,23 +557,32 @@ namespace DyeingComputer.ViewModel
|
|||||||
else { AUTO_bool = _AUTO_bool; }//手自动图标
|
else { AUTO_bool = _AUTO_bool; }//手自动图标
|
||||||
|
|
||||||
if ((Selet_dtm("1010") < 1) || (Selet_dtm("1010") > 160))
|
if ((Selet_dtm("1010") < 1) || (Selet_dtm("1010") > 160))
|
||||||
{ ERRinf.ERRinf_w(errTabler, Resources.Temperature + Resources.Sensor + Resources.Malfunction, "ERR101"); } //温度故障提示
|
{ ERRinf.ERRinf_w(errTabler, Resources.Temperature + Resources.Sensor +
|
||||||
|
Resources.Malfunction, "ERR101"); } //温度故障提示
|
||||||
else { ERRinf.ERRinf_d(errTabler, "ERR101"); }
|
else { ERRinf.ERRinf_d(errTabler, "ERR101"); }
|
||||||
if (Selet_dtd("2001")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" + Resources.EmergencyStop, "ERR100"); } //急停
|
if (Selet_dtd("2001")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" +
|
||||||
|
Resources.EmergencyStop, "ERR100"); } //急停
|
||||||
else { ERRinf.ERRinf_d(errTabler, "ERR100"); }
|
else { ERRinf.ERRinf_d(errTabler, "ERR100"); }
|
||||||
if (Selet_dtd("2008")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" + Resources.Blower, "ERR102"); } //风机
|
if (Selet_dtd("2008")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" +
|
||||||
|
Resources.Blower, "ERR102"); } //风机
|
||||||
else { ERRinf.ERRinf_d(errTabler, "ERR102"); }
|
else { ERRinf.ERRinf_d(errTabler, "ERR102"); }
|
||||||
if (Selet_dtd("2009")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" + Resources.Pump + "-0", "ERR103"); } //主泵
|
if (Selet_dtd("2009")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" +
|
||||||
|
Resources.Pump + "-0", "ERR103"); } //主泵
|
||||||
else { ERRinf.ERRinf_d(errTabler, "ERR103"); }
|
else { ERRinf.ERRinf_d(errTabler, "ERR103"); }
|
||||||
if (Selet_dtd("2012")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" + Resources.Wiggle, "ERR109"); } //摆布故障
|
if (Selet_dtd("2012")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" +
|
||||||
|
Resources.Wiggle, "ERR109"); } //摆布故障
|
||||||
else { ERRinf.ERRinf_d(errTabler, "ERR109"); }
|
else { ERRinf.ERRinf_d(errTabler, "ERR109"); }
|
||||||
if (Selet_dtd("2013")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" + Resources.OtherCircuits, "ERR108"); } //其它电器故障
|
if (Selet_dtd("2013")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" +
|
||||||
|
Resources.OtherCircuits, "ERR108"); } //其它电器故障
|
||||||
else { ERRinf.ERRinf_d(errTabler, "ERR108"); }
|
else { ERRinf.ERRinf_d(errTabler, "ERR108"); }
|
||||||
if (Selet_dtd("2014")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" + Resources.Pump + "-1", "ERR104-1"); } //加料泵
|
if (Selet_dtd("2014")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" +
|
||||||
|
Resources.Pump + "-1", "ERR104-1"); } //加料泵
|
||||||
else { ERRinf.ERRinf_d(errTabler, "ERR104-1"); }
|
else { ERRinf.ERRinf_d(errTabler, "ERR104-1"); }
|
||||||
if (Selet_dtd("2015")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" + Resources.Pump + "-2", "ERR104-2"); } //加料泵
|
if (Selet_dtd("2015")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" +
|
||||||
|
Resources.Pump + "-2", "ERR104-2"); } //加料泵
|
||||||
else { ERRinf.ERRinf_d(errTabler, "ERR104-2"); }
|
else { ERRinf.ERRinf_d(errTabler, "ERR104-2"); }
|
||||||
if (Selet_dtd("2016")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" + Resources.Pump + "-3", "ERR104-3"); } //加料泵
|
if (Selet_dtd("2016")) { ERRinf.ERRinf_w(errTabler, Resources.Fault + ":" +
|
||||||
|
Resources.Pump + "-3", "ERR104-3"); } //加料泵
|
||||||
else { ERRinf.ERRinf_d(errTabler, "ERR104-3"); }
|
else { ERRinf.ERRinf_d(errTabler, "ERR104-3"); }
|
||||||
}
|
}
|
||||||
void Tick_Event_5S()//Tick_Event周期执行事件5S
|
void Tick_Event_5S()//Tick_Event周期执行事件5S
|
||||||
@@ -1057,6 +1066,8 @@ namespace DyeingComputer.ViewModel
|
|||||||
Updata_dtm("1004", 0);
|
Updata_dtm("1004", 0);
|
||||||
Updata_dtd("3009", false);
|
Updata_dtd("3009", false);
|
||||||
Updata_dtd("3010", false);
|
Updata_dtd("3010", false);
|
||||||
|
Updata_dta("5001", 0);
|
||||||
|
Updata_dta("5002", 0);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -1081,6 +1092,7 @@ namespace DyeingComputer.ViewModel
|
|||||||
if (errTabler.Rows.Count == 0)
|
if (errTabler.Rows.Count == 0)
|
||||||
{
|
{
|
||||||
Status_Str = Resources.Heats + ":" + Resources.Target + Resources.Temperature + string.Format(" {0:###.#}", STEP_P1) + "°C";
|
Status_Str = Resources.Heats + ":" + Resources.Target + Resources.Temperature + string.Format(" {0:###.#}", STEP_P1) + "°C";
|
||||||
|
}
|
||||||
if ((TEMP_co - T) > 5)
|
if ((TEMP_co - T) > 5)
|
||||||
{
|
{
|
||||||
ERRinf.ERRinf_w(errTabler, Status_Str + "[" + Resources.Heats + Resources.LnsufficientPower + "]", "201-1");//写入
|
ERRinf.ERRinf_w(errTabler, Status_Str + "[" + Resources.Heats + Resources.LnsufficientPower + "]", "201-1");//写入
|
||||||
@@ -1091,7 +1103,6 @@ namespace DyeingComputer.ViewModel
|
|||||||
Status_Str = Status_Str + Resources.Expected + string.Format(" {0:D2}", TIME_M) + Resources.Min;
|
Status_Str = Status_Str + Resources.Expected + string.Format(" {0:D2}", TIME_M) + Resources.Min;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
else if (THL_mode == 2)//降温
|
else if (THL_mode == 2)//降温
|
||||||
{
|
{
|
||||||
if (STEP_P1 < TEMP_co) TEMP_co = TEMP_co - (STEP_P2 / 60);
|
if (STEP_P1 < TEMP_co) TEMP_co = TEMP_co - (STEP_P2 / 60);
|
||||||
@@ -1110,6 +1121,7 @@ namespace DyeingComputer.ViewModel
|
|||||||
if (errTabler.Rows.Count == 0)
|
if (errTabler.Rows.Count == 0)
|
||||||
{
|
{
|
||||||
Status_Str = Resources.Cooling + ":" + Resources.Target + Resources.Temperature + string.Format(" {0:###.#}", STEP_P1) + "°C";
|
Status_Str = Resources.Cooling + ":" + Resources.Target + Resources.Temperature + string.Format(" {0:###.#}", STEP_P1) + "°C";
|
||||||
|
}
|
||||||
if ((T - TEMP_co) > 5)
|
if ((T - TEMP_co) > 5)
|
||||||
{
|
{
|
||||||
ERRinf.ERRinf_w(errTabler, Status_Str + "[" + Resources.Cooling + Resources.LnsufficientPower + "]", "201-2");//写入
|
ERRinf.ERRinf_w(errTabler, Status_Str + "[" + Resources.Cooling + Resources.LnsufficientPower + "]", "201-2");//写入
|
||||||
@@ -1120,19 +1132,12 @@ namespace DyeingComputer.ViewModel
|
|||||||
Status_Str = Status_Str + Resources.Expected + string.Format(" {0:D2}", TIME_M) + Resources.Min;
|
Status_Str = Status_Str + Resources.Expected + string.Format(" {0:D2}", TIME_M) + Resources.Min;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
Updata_dtm("1004", TO);
|
Updata_dtm("1004", TO);
|
||||||
Updata_dtm("1005", TEMP_co);
|
Updata_dtm("1005", TEMP_co);
|
||||||
if (MT12 == 1)//输出类型0开关1模拟
|
if (MT12 == 1)//输出类型0开关1模拟
|
||||||
{
|
{
|
||||||
if (THL_mode == 2)
|
if (THL_mode == 2) Updata_dta("5002", Convert.ToInt16(TO));
|
||||||
{
|
if (THL_mode == 1) Updata_dta("5001", Convert.ToInt16(TO));
|
||||||
Updata_dta("5002", Convert.ToInt16(TO));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Updata_dta("5001", Convert.ToInt16(TO));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -3219,6 +3224,20 @@ namespace DyeingComputer.ViewModel
|
|||||||
Sys_log = SYSlog;
|
Sys_log = SYSlog;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private Random _random=new Random();
|
||||||
|
private void Simulate()//模拟
|
||||||
|
{
|
||||||
|
double _rd = (double)_random.Next(1, 5) / 10;
|
||||||
|
if (THL_mode == 1 || THL_mode == 0) {
|
||||||
|
if (Selet_dta("4001") > 16)
|
||||||
|
{
|
||||||
|
Updata_dta("4001", (int)(Selet_dta("4001") + Selet_dta("5001") / 100 * _rd));
|
||||||
|
Updata_dta("4001", (int)(Selet_dta("4001") - _rd));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (THL_mode == 2) { Updata_dta("4001", (int)(Selet_dta("4001") - Selet_dta("5002") / 100*_rd)); }
|
||||||
|
}
|
||||||
|
|
||||||
public static DataTable dt_d = new DataTable("DIO");
|
public static DataTable dt_d = new DataTable("DIO");
|
||||||
public static DataTable dt_a = new DataTable("AIO");
|
public static DataTable dt_a = new DataTable("AIO");
|
||||||
public static DataTable dt_m = new DataTable("M");
|
public static DataTable dt_m = new DataTable("M");
|
||||||
|
|||||||
Reference in new issue
Block a user