|
|
@ -45,6 +45,7 @@ namespace ProductionSystem.Forms
|
|
|
|
private readonly ProtocolConfigService _protocolConfigService = new ProtocolConfigService();
|
|
|
|
private readonly ProtocolConfigService _protocolConfigService = new ProtocolConfigService();
|
|
|
|
private readonly PlcPointService _plcPointService = new PlcPointService();
|
|
|
|
private readonly PlcPointService _plcPointService = new PlcPointService();
|
|
|
|
private readonly ProductTypeService _productTypeService = new ProductTypeService();
|
|
|
|
private readonly ProductTypeService _productTypeService = new ProductTypeService();
|
|
|
|
|
|
|
|
private readonly ProductStepService productStepService = new ProductStepService();
|
|
|
|
private Random random = new Random();
|
|
|
|
private Random random = new Random();
|
|
|
|
|
|
|
|
|
|
|
|
DataProductService dataProductService = new DataProductService();
|
|
|
|
DataProductService dataProductService = new DataProductService();
|
|
|
@ -1023,6 +1024,13 @@ namespace ProductionSystem.Forms
|
|
|
|
GetPlc(Program.BZ5, "BZ5");
|
|
|
|
GetPlc(Program.BZ5, "BZ5");
|
|
|
|
GetPlc(Program.BZ6, "BZ6");
|
|
|
|
GetPlc(Program.BZ6, "BZ6");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SetMiddleData("BZ1_DB");
|
|
|
|
|
|
|
|
SetMiddleData("BZ2_DB");
|
|
|
|
|
|
|
|
SetMiddleData("BZ3_DB");
|
|
|
|
|
|
|
|
SetMiddleData("BZ4_DB");
|
|
|
|
|
|
|
|
SetMiddleData("BZ5_DB");
|
|
|
|
|
|
|
|
SetMiddleData("BZ6_DB");
|
|
|
|
|
|
|
|
|
|
|
|
Thread.Sleep(Program.ReadPlcRate);
|
|
|
|
Thread.Sleep(Program.ReadPlcRate);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -1233,6 +1241,9 @@ namespace ProductionSystem.Forms
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// <summary>
|
|
|
@ -1336,33 +1347,58 @@ namespace ProductionSystem.Forms
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if (middleMyTestResultControls[j].IsHandleCreated && !middleMyTestResultControls[j].IsDisposed)
|
|
|
|
if (middleMyTestResultControls[j].IsHandleCreated && !middleMyTestResultControls[j].IsDisposed)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
var result = string.Empty;
|
|
|
|
int result = 0;
|
|
|
|
var val = string.Empty;
|
|
|
|
var writeVal = string.Empty;
|
|
|
|
|
|
|
|
var returnVal = string.Empty;
|
|
|
|
var testResultPoint = middleMyTestResultControls[j].TestResultPLCPointCode;
|
|
|
|
var testResultPoint = middleMyTestResultControls[j].TestResultPLCPointCode;
|
|
|
|
var testValPoint = middleMyTestResultControls[j].TestValPLCPointCode;
|
|
|
|
var testValPoint = middleMyTestResultControls[j].TestValPLCPointCode;
|
|
|
|
|
|
|
|
|
|
|
|
//获取点位
|
|
|
|
//获取点位
|
|
|
|
var paraCode = middleMyTestResultControls[j].ParaCode;
|
|
|
|
var paraCode = middleMyTestResultControls[j].ParaCode;
|
|
|
|
|
|
|
|
var step = productStepService.QueryLatestStep(paraCategory, paraCode, Program.ProductType);
|
|
|
|
if (string.IsNullOrEmpty(testResultPoint) || string.IsNullOrEmpty(testValPoint))
|
|
|
|
if (string.IsNullOrEmpty(testResultPoint) || string.IsNullOrEmpty(testValPoint))
|
|
|
|
{
|
|
|
|
{
|
|
|
|
//进行sql 进行查询sql
|
|
|
|
//进行sql 进行查询sql
|
|
|
|
|
|
|
|
|
|
|
|
val=dataProductService.QueryDataProduct(paraCategory, paraCode);
|
|
|
|
//val=dataProductService.QueryDataProduct(paraCategory, paraCode);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.Invoke(new Action(() =>
|
|
|
|
this.Invoke(new Action(() =>
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if (middleMyTestResultControls[j].LblItemText == "总状态")
|
|
|
|
if (step == null)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
result = val;
|
|
|
|
middleMyTestResultControls[j].TestResultText = "空闲";
|
|
|
|
|
|
|
|
middleMyTestResultControls[j].TestResultForeColor = Color.Gray;
|
|
|
|
|
|
|
|
middleMyTestResultControls[j].TestValText = "";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
middleMyTestResultControls[j].TestResultText = result == "1.000" ? "OK" : (result == "2.000" ? "NG" : "");
|
|
|
|
else
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
writeVal = step.WriteValue;
|
|
|
|
|
|
|
|
returnVal = step.ReturnValue;
|
|
|
|
|
|
|
|
int val1 = Convert.ToInt32(writeVal);
|
|
|
|
|
|
|
|
int val2 = Convert.ToInt32(returnVal);
|
|
|
|
|
|
|
|
if (returnVal == null)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
result = 2;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (Math.Abs(val2 - val1) <= 10)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
result = 1;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
result = 2;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
middleMyTestResultControls[j].TestResultText = result == 1 ? "OK" : (result == 2 ? "NG" : "");
|
|
|
|
middleMyTestResultControls[j].TestResultForeColor = Color.White;
|
|
|
|
middleMyTestResultControls[j].TestResultForeColor = Color.White;
|
|
|
|
middleMyTestResultControls[j].TestResultBackColor = result == "1.000" ? Color.Green : (result == "2.000" ? Color.Red : Color.Gainsboro);
|
|
|
|
middleMyTestResultControls[j].TestResultBackColor = result == 1 ? Color.Green : (result == 2 ? Color.Red : Color.Gainsboro);
|
|
|
|
middleMyTestResultControls[j].TestValText = val;
|
|
|
|
middleMyTestResultControls[j].TestValText = returnVal;
|
|
|
|
|
|
|
|
}
|
|
|
|
}));
|
|
|
|
}));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|