You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
192 lines
5.3 KiB
C#
192 lines
5.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace DataBlockHelper.DBHelpers
|
|
{
|
|
public class Db2110Help: DBHelper
|
|
{
|
|
public Db2110Help()
|
|
{
|
|
bytes = PlcConnect.Instance.Read("DB2110.3384.0", 28).Content;
|
|
var content = bytes.ToArray();
|
|
|
|
queA0 = PlcConnect.Instance.ByteTransform.TransInt16(content, 0);
|
|
queA1 = PlcConnect.Instance.ByteTransform.TransInt16(content, 2);
|
|
queA2 = PlcConnect.Instance.ByteTransform.TransInt16(content, 4);
|
|
queA3 = PlcConnect.Instance.ByteTransform.TransInt16(content, 6);
|
|
queA4 = PlcConnect.Instance.ByteTransform.TransInt16(content, 8);
|
|
queB0 = PlcConnect.Instance.ByteTransform.TransInt16(content, 10);
|
|
queB1 = PlcConnect.Instance.ByteTransform.TransInt16(content, 12);
|
|
queB2 = PlcConnect.Instance.ByteTransform.TransInt16(content, 14);
|
|
queB3 = PlcConnect.Instance.ByteTransform.TransInt16(content, 16);
|
|
queB4 = PlcConnect.Instance.ByteTransform.TransInt16(content, 18);
|
|
queB5 = PlcConnect.Instance.ByteTransform.TransInt16(content, 20);
|
|
queB6 = PlcConnect.Instance.ByteTransform.TransInt16(content, 22);
|
|
queB7 = PlcConnect.Instance.ByteTransform.TransInt16(content, 24);
|
|
queB8 = PlcConnect.Instance.ByteTransform.TransInt16(content, 26);
|
|
|
|
}
|
|
|
|
|
|
public string GetA()
|
|
{
|
|
List<string> list = new List<string>();
|
|
list.Add(GetAvalue(queA0));
|
|
list.Add(GetAvalue(queA1));
|
|
list.Add(GetAvalue(queA2));
|
|
list.Add(GetAvalue(queA3));
|
|
list.Add(GetAvalue(queA4));
|
|
|
|
if (list.Count == list.Where(x => x == "0").Count())
|
|
{
|
|
return "";
|
|
}
|
|
|
|
StringBuilder stringBuilder = new StringBuilder();
|
|
|
|
for (int i = 0; i < list.Count; i++)
|
|
{
|
|
string a= list[i];
|
|
if (i > 0)
|
|
{
|
|
stringBuilder.Append("=> "+a);
|
|
}
|
|
else
|
|
{
|
|
stringBuilder.Append(a);
|
|
}
|
|
}
|
|
|
|
return stringBuilder.ToString();
|
|
|
|
|
|
}
|
|
|
|
public string GetB()
|
|
{
|
|
List<string> list = new List<string>();
|
|
list.Add(GetAvalue(queB0));
|
|
list.Add(GetAvalue(queB1));
|
|
list.Add(GetAvalue(queB2));
|
|
list.Add(GetAvalue(queB3));
|
|
list.Add(GetAvalue(queB4));
|
|
list.Add(GetAvalue(queB5));
|
|
list.Add(GetAvalue(queB6));
|
|
list.Add(GetAvalue(queB7));
|
|
list.Add(GetAvalue(queB8));
|
|
|
|
if (list.Count == list.Where(x => x == "0").Count())
|
|
{
|
|
return "";
|
|
}
|
|
|
|
StringBuilder stringBuilder = new StringBuilder();
|
|
|
|
for (int i = 0; i < list.Count; i++)
|
|
{
|
|
string a = list[i];
|
|
if (i > 0)
|
|
{
|
|
stringBuilder.Append("=> " + a);
|
|
}
|
|
else
|
|
{
|
|
stringBuilder.Append(a);
|
|
}
|
|
}
|
|
|
|
return stringBuilder.ToString();
|
|
|
|
|
|
}
|
|
|
|
|
|
private string GetBvalue(short shor)
|
|
{
|
|
if(shor == 1)
|
|
{
|
|
return shor.ToString();
|
|
}
|
|
|
|
if (shor == 3 || shor==4)
|
|
{
|
|
return (shor-1).ToString();
|
|
}
|
|
|
|
if (shor == 6 || shor == 7)
|
|
{
|
|
return (shor - 2).ToString();
|
|
}
|
|
|
|
if (shor == 9 || shor == 10)
|
|
{
|
|
return (shor - 3).ToString();
|
|
}
|
|
|
|
if (shor ==12)
|
|
{
|
|
return (shor - 4).ToString();
|
|
}
|
|
|
|
return shor.ToString();
|
|
|
|
}
|
|
private string GetAvalue(short shor)
|
|
{
|
|
|
|
if (shor == 2)
|
|
{
|
|
return "A";
|
|
}
|
|
else
|
|
{
|
|
if (shor == 5)
|
|
{
|
|
return "B";
|
|
}
|
|
else
|
|
{
|
|
if (shor == 8)
|
|
{
|
|
return "C";
|
|
}
|
|
else
|
|
{
|
|
if (shor == 11)
|
|
{
|
|
return "D";
|
|
}
|
|
else
|
|
{
|
|
return shor.ToString();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
public short queA0 { get; set; }
|
|
public short queA1 { get; set; }
|
|
public short queA2 { get; set; }
|
|
public short queA3 { get; set; }
|
|
public short queA4 { get; set; }
|
|
|
|
public short queB0 { get; set; }
|
|
public short queB1 { get; set; }
|
|
public short queB2 { get; set; }
|
|
public short queB3 { get; set; }
|
|
|
|
public short queB4 { get; set; }
|
|
public short queB5 { get; set; }
|
|
public short queB6 { get; set; }
|
|
public short queB7 { get; set; }
|
|
public short queB8 { get; set; }
|
|
}
|
|
}
|