|
|
|
@ -32,6 +32,8 @@ using NewLife.Security;
|
|
|
|
|
using ProductionSystem.Untils.Tool;
|
|
|
|
|
using DevExpress.Data.Diagram.Core;
|
|
|
|
|
using SqlSugar;
|
|
|
|
|
using ProductionSystem_Model.DbModel;
|
|
|
|
|
using NewLife.Reflection;
|
|
|
|
|
|
|
|
|
|
namespace ProductionSystem.Forms
|
|
|
|
|
{
|
|
|
|
@ -43,6 +45,7 @@ namespace ProductionSystem.Forms
|
|
|
|
|
private readonly ProtocolConfigService _protocolConfigService = new ProtocolConfigService();
|
|
|
|
|
private readonly PlcPointService _plcPointService = new PlcPointService();
|
|
|
|
|
private readonly ProductTypeService _productTypeService = new ProductTypeService();
|
|
|
|
|
private readonly ProductStepService productStepService = new ProductStepService();
|
|
|
|
|
private Random random = new Random();
|
|
|
|
|
|
|
|
|
|
DataProductService dataProductService = new DataProductService();
|
|
|
|
@ -746,17 +749,19 @@ namespace ProductionSystem.Forms
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ProductStepService stepService = new ProductStepService();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var d1300Value = GetPlcValue("D1300");
|
|
|
|
|
var d1300Value = GetPlcValue("D1300");
|
|
|
|
|
|
|
|
|
|
string[] str = new[] { "COM9", "COM10" };
|
|
|
|
|
//步骤1水泵1空载
|
|
|
|
|
if(Convert.ToInt32(Double.Parse(d1300Value).ToString("0")) == 0)
|
|
|
|
|
{
|
|
|
|
|
T_Product_Step step=new T_Product_Step();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
middleIsCanRound = false;
|
|
|
|
|
middleIsCanRound = false;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -789,6 +794,16 @@ namespace ProductionSystem.Forms
|
|
|
|
|
|
|
|
|
|
var ya= uxTool.ToAction();
|
|
|
|
|
|
|
|
|
|
step.Id = Guid.NewGuid().ToString("N");
|
|
|
|
|
step.ReturnValue = uxTool.Val;
|
|
|
|
|
step.WriteValue = uxTool.Write;
|
|
|
|
|
step.CreateTime = DateTime.Now;
|
|
|
|
|
step.ProductType = Program.ProductType;
|
|
|
|
|
step.EquipmentName = "SB1";
|
|
|
|
|
step.StepName = "";
|
|
|
|
|
|
|
|
|
|
stepService.AddProductStep(step);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Thread.Sleep(2000);
|
|
|
|
@ -981,6 +996,13 @@ namespace ProductionSystem.Forms
|
|
|
|
|
GetPlc(Program.BZ5, "BZ5");
|
|
|
|
|
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);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1191,6 +1213,9 @@ namespace ProductionSystem.Forms
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 一段速
|
|
|
|
|
/// </summary>
|
|
|
|
@ -1419,33 +1444,58 @@ namespace ProductionSystem.Forms
|
|
|
|
|
{
|
|
|
|
|
if (middleMyTestResultControls[j].IsHandleCreated && !middleMyTestResultControls[j].IsDisposed)
|
|
|
|
|
{
|
|
|
|
|
var result = string.Empty;
|
|
|
|
|
var val = string.Empty;
|
|
|
|
|
int result = 0;
|
|
|
|
|
var writeVal = string.Empty;
|
|
|
|
|
var returnVal = string.Empty;
|
|
|
|
|
var testResultPoint = middleMyTestResultControls[j].TestResultPLCPointCode;
|
|
|
|
|
var testValPoint = middleMyTestResultControls[j].TestValPLCPointCode;
|
|
|
|
|
|
|
|
|
|
//获取点位
|
|
|
|
|
var paraCode = middleMyTestResultControls[j].ParaCode;
|
|
|
|
|
|
|
|
|
|
var step = productStepService.QueryLatestStep(paraCategory, paraCode, Program.ProductType);
|
|
|
|
|
if (string.IsNullOrEmpty(testResultPoint) || string.IsNullOrEmpty(testValPoint))
|
|
|
|
|
{
|
|
|
|
|
//进行sql 进行查询sql
|
|
|
|
|
|
|
|
|
|
val=dataProductService.QueryDataProduct(paraCategory, paraCode);
|
|
|
|
|
//val=dataProductService.QueryDataProduct(paraCategory, paraCode);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.Invoke(new Action(() =>
|
|
|
|
|
{
|
|
|
|
|
if (middleMyTestResultControls[j].LblItemText == "总状态")
|
|
|
|
|
if (step == null)
|
|
|
|
|
{
|
|
|
|
|
result = val;
|
|
|
|
|
middleMyTestResultControls[j].TestResultText = "空闲";
|
|
|
|
|
middleMyTestResultControls[j].TestResultForeColor = Color.Gray;
|
|
|
|
|
middleMyTestResultControls[j].TestValText = "";
|
|
|
|
|
}
|
|
|
|
|
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].TestResultBackColor = result == 1 ? Color.Green : (result == 2 ? Color.Red : Color.Gainsboro);
|
|
|
|
|
middleMyTestResultControls[j].TestValText = returnVal;
|
|
|
|
|
}
|
|
|
|
|
middleMyTestResultControls[j].TestResultText = result == "1.000" ? "OK" : (result == "2.000" ? "NG" : "");
|
|
|
|
|
middleMyTestResultControls[j].TestResultForeColor = Color.White;
|
|
|
|
|
middleMyTestResultControls[j].TestResultBackColor = result == "1.000" ? Color.Green : (result == "2.000" ? Color.Red : Color.Gainsboro);
|
|
|
|
|
middleMyTestResultControls[j].TestValText = val;
|
|
|
|
|
}));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|