Commit de588989 LN

1

1 个父辈 177a22bb
......@@ -123,10 +123,10 @@ PRO,模拟信号2默认高度,AIDI2_DefaultPosition,2960,,,,,,,
PRO,模拟信号3默认高度,AIDI3_DefaultPosition,2500,,,,,,,
PRO,模拟信号4默认高度,AIDI4_DefaultPosition,2500,,,,,,,
,,,,,,,,, ,
PRO,模拟信号1的地址,AIDI1_Addr,7,,,,,,,
PRO,模拟信号2的地址,AIDI2_Addr,8,,,,,,,
PRO,模拟信号3的地址,AIDI3_Addr,5,,,,,,,
PRO,模拟信号4的地址,AIDI4_Addr,6,,,,,,,
PRO,模拟信号1的地址,AIDI1_Addr,0,,,,,,,
PRO,模拟信号2的地址,AIDI2_Addr,1,,,,,,,
PRO,模拟信号3的地址,AIDI3_Addr,2,,,,,,,
PRO,模拟信号4的地址,AIDI4_Addr,3,,,,,,,
,,,,,,,,, ,
PRO,模拟转换系数,AI_ConvertPosition,55,,,,,,,
,,,,,,,,, ,
......
......@@ -47,6 +47,7 @@ namespace OnlineStore.DeviceLibrary
private System.Timers.Timer IoCheckTimer = new System.Timers.Timer();
public AC_SA_BoxBean(AC_SA_Config config)
{
// int value= CalHeight(37);
Init();
serverConnectTimer = new System.Timers.Timer();
serverConnectTimer.Interval = 1000;
......@@ -1563,6 +1564,8 @@ namespace OnlineStore.DeviceLibrary
#endregion
#region 高度传感器处理
// 0、1对应7寸盘,2对应13寸,3对应夹具
public int GetSize()
{
if (Config.Default_TrayWidth > 0)
......@@ -1570,11 +1573,11 @@ namespace OnlineStore.DeviceLibrary
//如果配置了默认宽度,使用默认宽度且不能修改
return Config.Default_TrayWidth;
}
if (Config.AIDI3_Addr <= 0 || Config.AIDI4_Addr <= 0)
if (Config.AIDI3_Addr < 0 )
{
return 7;
}
else if (Config.AIDI1_Addr <= 0 || Config.AIDI2_Addr <= 0)
else if (Config.AIDI1_Addr < 0 || Config.AIDI2_Addr < 0)
{
return 13;
}
......@@ -1587,9 +1590,21 @@ namespace OnlineStore.DeviceLibrary
return 7;
}
}
public int Get7Height()
public int GetHeight()
{
int value = Get13Height();
if (value > 0)
{
return value;
}
else
{
return Get7Height();
}
}
private int Get7Height()
{
if (Config.AIDI1_Addr <= 0 || Config.AIDI2_Addr <= 0)
if (Config.AIDI1_Addr < 0 || Config.AIDI2_Addr < 0)
{
return 0;
}
......@@ -1601,71 +1616,14 @@ namespace OnlineStore.DeviceLibrary
double ai1Value = AIManager.ConvertAI(AIManager.Instance.GetAIValue(Config.AIDevice_IP, Config.AIDI1_Addr), Config.AIDI1_DefaultPosition);
double ai2Value = AIManager.ConvertAI(AIManager.Instance.GetAIValue(Config.AIDevice_IP, Config.AIDI2_Addr), Config.AIDI2_DefaultPosition);
double Value = Math.Round((ai1Value + ai2Value) / 2, 1);
if (Value > 18)
{
if ((Value % 4).Equals(0))
{
result = (int)Value;
}
else
{
result = ((int)Value / 4 * 4) + 4;
}
}
else if (Value > 14)
{
result = 16;
}
else if (Value >= 10)
{
result = 12;
}
else if (Value >= 4)
{
if (ai1Value >= 10 || ai2Value >= 10)
{
result = 12;
}
else
{
result = 8;
}
}
else
{
result = 0;
}
return result;
double Value = Math.Round((ai1Value + ai2Value) / 2, 1);
return CalHeight(Value);
}
public int GetHeight()
{
if (Config.AIDI3_Addr <= 0 || Config.AIDI4_Addr <= 0)
{
return Get7Height();
}
else if (Config.AIDI1_Addr <= 0 || Config.AIDI2_Addr <= 0)
{
return Get13Height();
}
else
{
int value = Get13Height();
if (value > 0)
{
return value;
}
else
{
return Get7Height();
}
}
}
public int Get13Height()
private int Get13Height()
{
if (Config.AIDI3_Addr <= 0 || Config.AIDI4_Addr <= 0)
if (Config.AIDI3_Addr < 0)
{
return 0;
}
......@@ -1675,42 +1633,31 @@ namespace OnlineStore.DeviceLibrary
return result;
}
double ai1Value = AIManager.ConvertAI(AIManager.Instance.GetAIValue(Config.AIDevice_IP, Config.AIDI3_Addr), Config.AIDI3_DefaultPosition);
double ai2Value = AIManager.ConvertAI(AIManager.Instance.GetAIValue(Config.AIDevice_IP, Config.AIDI4_Addr), Config.AIDI4_DefaultPosition);
double Value = Math.Round((ai1Value + ai2Value) / 2, 1);
if (Value > 18)
{
if ((Value % 4).Equals(0))
{
result = (int)Value;
}
else
{
result = ((int)Value / 4 * 4) + 4;
}
}
else if (Value > 14)
// double ai2Value = AIManager.ConvertAI(AIManager.Instance.GetAIValue(Config.AIDevice_IP, Config.AIDI4_Addr), Config.AIDI4_DefaultPosition);
// double Value = Math.Round((ai1Value + ai2Value) / 2, 1);
return CalHeight(ai1Value);
}
private int CalHeight(double Value)
{
int result = 0;
if (Value < 5)
{
result = 16;
result = 0;
}
else if (Value >= 10)
else if (Value < 8)
{
result = 12;
result = 8;
}
else if (Value >= 4)
else
{
if (ai1Value >= 10 || ai2Value >= 10)
{
result = 12;
}
else
result = (int)Math.Floor(1F * (Value ) / 4) * 4;
if (result <= 8)
{
result = 8;
}
}
else
{
result = 0;
}
return result;
}
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!