|
|
@@ -1,62 +1,30 @@
|
|
|
-using Basler.Pylon;
|
|
|
-using Cognex.VisionPro;
|
|
|
-using Cognex.VisionPro.ToolBlock;
|
|
|
-using CSScripting;
|
|
|
-using MathNet.Numerics.Distributions;
|
|
|
-using MathNet.Numerics.LinearAlgebra;
|
|
|
-using MathNet.Numerics.RootFinding;
|
|
|
-using NPOI.SS.Formula.Functions;
|
|
|
-using NPOI.Util;
|
|
|
-using Opc.Ua;
|
|
|
-using OpenCvSharp;
|
|
|
-using OpenCvSharp.Flann;
|
|
|
+using MathNet.Numerics.LinearAlgebra;
|
|
|
using Prism.Events;
|
|
|
using Prism.Ioc;
|
|
|
using Prism.Mvvm;
|
|
|
using Prism.Regions;
|
|
|
-using Prism.Services.Dialogs;
|
|
|
using System;
|
|
|
-using System.Collections;
|
|
|
using System.Collections.Generic;
|
|
|
using System.Collections.ObjectModel;
|
|
|
-using System.ComponentModel;
|
|
|
using System.Drawing;
|
|
|
using System.IO;
|
|
|
using System.Linq;
|
|
|
using System.Net.Sockets;
|
|
|
-using System.Reflection.Metadata;
|
|
|
-using System.Security.Cryptography;
|
|
|
using System.Text;
|
|
|
using System.Threading;
|
|
|
using System.Threading.Tasks;
|
|
|
-using System.Windows;
|
|
|
-using System.Windows.Documents;
|
|
|
-using System.Windows.Interop;
|
|
|
using System.Windows.Media;
|
|
|
-using System.Windows.Media.Media3D;
|
|
|
-using Team.FFFeederService;
|
|
|
using Team.FFFeederService.Interfaces;
|
|
|
-using TeamAAS_VP;
|
|
|
using TeamAAS_VP.Core.PLCs;
|
|
|
-using TeamAAS_VP.Core.Robots;
|
|
|
using TeamAAS_VP.Core.ScrewDriver;
|
|
|
-using TeamAAS_VP.Data;
|
|
|
using TeamAAS_VP.Enums;
|
|
|
using TeamAAS_VP.Events;
|
|
|
using TeamAAS_VP.Interfaces;
|
|
|
using TeamAAS_VP.Models;
|
|
|
-using TeamAAS_VP.Models.Calibration;
|
|
|
-using TeamAAS_VP.Models.Feeder;
|
|
|
-using TeamAAS_VP.Models.Product;
|
|
|
using TeamAAS_VP.Resources.Languages;
|
|
|
-using TeamAAS_VP.Services;
|
|
|
-using TeamAAS_VP.ViewModels.Home;
|
|
|
using TouchSocket.Core;
|
|
|
using TouchSocket.SerialPorts;
|
|
|
using TouchSocket.Sockets;
|
|
|
-using static MaterialDesignThemes.Wpf.Theme.ToolBar;
|
|
|
-using static Org.BouncyCastle.Math.EC.ECCurve;
|
|
|
-using static System.Windows.Forms.AxHost;
|
|
|
|
|
|
namespace TeamAAS_VP.Core
|
|
|
{
|
|
|
@@ -1225,17 +1193,14 @@ namespace TeamAAS_VP.Core
|
|
|
var addressConfig = _configService.GetPlcAddresses();
|
|
|
var plc = _plcService.GetPlcByNumber(addressConfig.PlcNo) as OpcUaClientPLC;
|
|
|
if (plc == null || !plc.IsConnected) return;
|
|
|
+ // 获取当前产品
|
|
|
+ var currentProduct = _productService.GetCurrentProduct();
|
|
|
+ if (currentProduct == null) return;
|
|
|
try
|
|
|
{
|
|
|
- PressureModel models = new PressureModel();
|
|
|
- if (!File.Exists(FilePath.PressureParamterConfigPath))
|
|
|
- {
|
|
|
- FileHelper.WriteJsonFile(models, FilePath.PressureParamterConfigPath);
|
|
|
- }
|
|
|
- models = FileHelper.ReadJsonFile<PressureModel>(FilePath.PressureParamterConfigPath);
|
|
|
- await plc.WriteNodeAsync(addressConfig.Down_Time.Address, models.PressureTime);
|
|
|
- await plc.WriteNodeAsync(addressConfig.Down_WetOut_Num.Address, models.PressureNum);
|
|
|
- await plc.WriteNodeAsync(addressConfig.Down_WetOut_Num_max.Address, models.PressureNumMax);
|
|
|
+ await plc.WriteNodeAsync(addressConfig.Down_Time.Address, currentProduct.GlobalParamEx.DownPressure.PressureTime);
|
|
|
+ await plc.WriteNodeAsync(addressConfig.Down_WetOut_Num.Address, currentProduct.GlobalParamEx.DownPressure.PressureNum);
|
|
|
+ await plc.WriteNodeAsync(addressConfig.Down_WetOut_Num_max.Address, currentProduct.GlobalParamEx.DownPressure.PressureNumMax);
|
|
|
}
|
|
|
catch (Exception)
|
|
|
{
|
|
|
@@ -2589,11 +2554,6 @@ namespace TeamAAS_VP.Core
|
|
|
assypress = currentPressure[i].ToString("F2");
|
|
|
SendTaskMessage($"组装压力:{assypress}", MessageLevel.Debug);
|
|
|
|
|
|
- var res = FileHelper.ReadJsonFile<PressureModel>(FilePath.PressureParamterConfigPath);
|
|
|
- if (res.PressureUpLimit > 0)
|
|
|
- {
|
|
|
-
|
|
|
- }
|
|
|
//cc-复检cc,assypress-组装站压力
|
|
|
(bool isSuccess, string response) = await _mesService.SubmitGetAsync(i, ProductMainSN[i], comp, cc, assypress, resultIndex == 1 ? true : false, _LastMesCheckTime[i], serverTimeResult.Now);
|
|
|
if (!stationConfig.EnableMES || isSuccess)
|
|
|
@@ -2618,7 +2578,6 @@ namespace TeamAAS_VP.Core
|
|
|
if (!string.IsNullOrEmpty(stationConfig.SaveCsvPath))
|
|
|
{
|
|
|
bool assyPress = resultIndex == 1 ? true : false;
|
|
|
- var pre = FileHelper.ReadJsonFile<PressureModel>(FilePath.PressureParamterConfigPath);
|
|
|
DFC.Clear();
|
|
|
|
|
|
foreach (var item in mes_cc)
|
|
|
@@ -2652,8 +2611,8 @@ namespace TeamAAS_VP.Core
|
|
|
PROCESS_START_TIME = _LastMesCheckTime[i].ToString(),
|
|
|
CTQ_NAME = "Assy_Pressure",
|
|
|
CTQ_VALUE = Math.Round(double.Parse(assypress), 3).ToString(),
|
|
|
- CTQ_LSL = pre.PressureDownLimit.ToString("F3"),
|
|
|
- CTQ_USL = pre.PressureUpLimit.ToString("F3"),
|
|
|
+ CTQ_LSL = currentProduct.GlobalParamEx.DownPressure.PressureDownLimit.ToString("F3"),
|
|
|
+ CTQ_USL = currentProduct.GlobalParamEx.DownPressure.PressureUpLimit.ToString("F3"),
|
|
|
PROCESS_END_TIME = serverTimeResult.Now.ToString(),
|
|
|
SUPPLIER_NAME = stationConfig.DataInfo.SUPPLIER_NAME,
|
|
|
COMMODITY_TYPE = stationConfig.DataInfo.COMMODITY_TYPE,
|