You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
187 lines
8.3 KiB
187 lines
8.3 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using Module.DB.Model;
|
|
using Module.Common;
|
|
|
|
namespace Module.Plc.Profinet.Tool
|
|
{
|
|
/// <summary>
|
|
/// 读写PLC中打胶设置
|
|
/// </summary>
|
|
public class PlcGlueModelUtils
|
|
{
|
|
/// <summary>
|
|
/// 保留一位小数
|
|
/// </summary>
|
|
/// <param name="number"></param>
|
|
/// <returns></returns>
|
|
private static string FormatDataOne(double number)
|
|
{
|
|
return Math.Round(Convert.ToDecimal(number), 1).ToString("#0.0");
|
|
}
|
|
|
|
private static string FormatData(double number)
|
|
{
|
|
return Math.Round(Convert.ToDecimal(number), 2).ToString("#0.00");
|
|
}
|
|
|
|
/// <summary>
|
|
/// 读通道1胶臂设置参数数值
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public static GlueModel ReadT1GlueData()
|
|
{
|
|
try
|
|
{
|
|
GlueModel glueModelResult = null;
|
|
if (PublicParams.T1ConnectPlc)
|
|
{
|
|
glueModelResult = new GlueModel();
|
|
var reader1 = PlcCommon.DeltaTcpNetClient01.Read("D3540", 16);
|
|
|
|
glueModelResult.pr1Enable = PlcCommon.DeltaTcpNetClient01.ReadBool("D3510.0").Content;
|
|
glueModelResult.pr1Empty = PlcCommon.DeltaTcpNetClient01.ReadBool("D3510.1").Content;
|
|
glueModelResult.pr1Execute = PlcCommon.DeltaTcpNetClient01.ReadBool("D3510.3").Content;
|
|
glueModelResult.pr1Yy = FormatDataOne(ByteConvert.ToInt32(reader1.Content, 0) * 0.1);
|
|
glueModelResult.pr1Dj = FormatDataOne(ByteConvert.ToInt32(reader1.Content, 4) * 0.1);
|
|
glueModelResult.pr1Hx = FormatData(ByteConvert.ToInt32(reader1.Content, 8) * 0.001);
|
|
glueModelResult.pr1Xj = FormatDataOne(ByteConvert.ToInt32(reader1.Content, 12) * 0.1);
|
|
|
|
var reader2 = PlcCommon.DeltaTcpNetClient01.Read("D3640", 16);
|
|
var reader12 = PlcCommon.DeltaTcpNetClient01.ReadBool("D3610.0", 10);
|
|
|
|
glueModelResult.pr2Enable = PlcCommon.DeltaTcpNetClient01.ReadBool("D3610.0").Content;
|
|
glueModelResult.pr2Empty = PlcCommon.DeltaTcpNetClient01.ReadBool("D3610.1").Content;
|
|
glueModelResult.pr2Execute = PlcCommon.DeltaTcpNetClient01.ReadBool("D3610.3").Content;
|
|
glueModelResult.pr2Yy = FormatDataOne(ByteConvert.ToInt32(reader2.Content, 0) * 0.1);
|
|
glueModelResult.pr2Dj = FormatDataOne(ByteConvert.ToInt32(reader2.Content, 4) * 0.1);
|
|
glueModelResult.pr2Hx = FormatData(ByteConvert.ToInt32(reader2.Content, 8) * 0.001);
|
|
glueModelResult.pr2Xj = FormatDataOne(ByteConvert.ToInt32(reader2.Content, 12) * 0.1);
|
|
|
|
|
|
var reader3 = PlcCommon.DeltaTcpNetClient01.Read("D3740", 16);
|
|
var reader13 = PlcCommon.DeltaTcpNetClient01.ReadBool("D3710.0", 10);
|
|
|
|
glueModelResult.pr3Enable = PlcCommon.DeltaTcpNetClient01.ReadBool("D3710.0").Content;
|
|
glueModelResult.pr3Empty = PlcCommon.DeltaTcpNetClient01.ReadBool("D3710.1").Content;
|
|
glueModelResult.pr3Execute = PlcCommon.DeltaTcpNetClient01.ReadBool("D3710.3").Content;
|
|
glueModelResult.pr3Yy = FormatDataOne(ByteConvert.ToInt32(reader3.Content, 0) * 0.1);
|
|
glueModelResult.pr3Dj = FormatDataOne(ByteConvert.ToInt32(reader3.Content, 4) * 0.1);
|
|
glueModelResult.pr3Hx = FormatData(ByteConvert.ToInt32(reader3.Content, 8) * 0.001);
|
|
glueModelResult.pr3Xj = FormatDataOne(ByteConvert.ToInt32(reader3.Content, 12) * 0.1);
|
|
}
|
|
|
|
return glueModelResult;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
ex.ToString();
|
|
return null;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 读通道2胶臂设置参数数值
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public static GlueModel ReadT2GlueData()
|
|
{
|
|
try
|
|
{
|
|
GlueModel glueModelResult = null;
|
|
if (PublicParams.T2ConnectPlc)
|
|
{
|
|
glueModelResult = new GlueModel();
|
|
var reader1 = PlcCommon.DeltaTcpNetClient02.Read("D3540", 16);
|
|
|
|
glueModelResult.pr1Enable = PlcCommon.DeltaTcpNetClient02.ReadBool("D3510.0").Content;
|
|
glueModelResult.pr1Empty = PlcCommon.DeltaTcpNetClient02.ReadBool("D3510.1").Content;
|
|
glueModelResult.pr1Execute = PlcCommon.DeltaTcpNetClient02.ReadBool("D3510.3").Content;
|
|
glueModelResult.pr1Yy = FormatDataOne(ByteConvert.ToInt32(reader1.Content, 0) * 0.1);
|
|
glueModelResult.pr1Dj = FormatDataOne(ByteConvert.ToInt32(reader1.Content, 4) * 0.1);
|
|
glueModelResult.pr1Hx = FormatData(ByteConvert.ToInt32(reader1.Content, 8) * 0.001);
|
|
glueModelResult.pr1Xj = FormatDataOne(ByteConvert.ToInt32(reader1.Content, 12) * 0.1);
|
|
|
|
var reader2 = PlcCommon.DeltaTcpNetClient02.Read("D3640", 16);
|
|
var reader12 = PlcCommon.DeltaTcpNetClient02.ReadBool("D3610.0", 10);
|
|
|
|
glueModelResult.pr2Enable = PlcCommon.DeltaTcpNetClient02.ReadBool("D3610.0").Content;
|
|
glueModelResult.pr2Empty = PlcCommon.DeltaTcpNetClient02.ReadBool("D3610.1").Content;
|
|
glueModelResult.pr2Execute = PlcCommon.DeltaTcpNetClient02.ReadBool("D3610.3").Content;
|
|
glueModelResult.pr2Yy = FormatDataOne(ByteConvert.ToInt32(reader2.Content, 0) * 0.1);
|
|
glueModelResult.pr2Dj = FormatDataOne(ByteConvert.ToInt32(reader2.Content, 4) * 0.1);
|
|
glueModelResult.pr2Hx = FormatData(ByteConvert.ToInt32(reader2.Content, 8) * 0.001);
|
|
glueModelResult.pr2Xj = FormatDataOne(ByteConvert.ToInt32(reader2.Content, 12) * 0.1);
|
|
|
|
|
|
var reader3 = PlcCommon.DeltaTcpNetClient02.Read("D3740", 16);
|
|
var reader13 = PlcCommon.DeltaTcpNetClient02.ReadBool("D3710.0", 10);
|
|
|
|
glueModelResult.pr3Enable = PlcCommon.DeltaTcpNetClient02.ReadBool("D3710.0").Content;
|
|
glueModelResult.pr3Empty = PlcCommon.DeltaTcpNetClient02.ReadBool("D3710.1").Content;
|
|
glueModelResult.pr3Execute = PlcCommon.DeltaTcpNetClient02.ReadBool("D3710.3").Content;
|
|
glueModelResult.pr3Yy = FormatDataOne(ByteConvert.ToInt32(reader3.Content, 0) * 0.1);
|
|
glueModelResult.pr3Dj = FormatDataOne(ByteConvert.ToInt32(reader3.Content, 4) * 0.1);
|
|
glueModelResult.pr3Hx = FormatData(ByteConvert.ToInt32(reader3.Content, 8) * 0.001);
|
|
glueModelResult.pr3Xj = FormatDataOne(ByteConvert.ToInt32(reader3.Content, 12) * 0.1);
|
|
}
|
|
return glueModelResult;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
ex.ToString();
|
|
return null;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 读通道1胶泵阀状态
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public static bool[] ReadT1PumpValveStatus()
|
|
{
|
|
try
|
|
{
|
|
bool[] yBits = null;
|
|
if (PublicParams.T1ConnectPlc)
|
|
{
|
|
yBits = PlcCommon.DeltaTcpNetClient01.ReadBool("Y4.0", 15).Content;
|
|
}
|
|
return yBits;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
ex.ToString();
|
|
return null;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 读通道1胶泵阀状态
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public static bool[] ReadT2PumpValveStatus()
|
|
{
|
|
try
|
|
{
|
|
bool[] yBits = null;
|
|
if (PublicParams.T2ConnectPlc)
|
|
{
|
|
yBits = PlcCommon.DeltaTcpNetClient02.ReadBool("Y4.0", 15).Content;
|
|
}
|
|
return yBits;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
ex.ToString();
|
|
return null;
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|