整理昂坤测温
This commit is contained in:
parent
532cba6e37
commit
545b0a689b
@ -195,65 +195,35 @@ namespace MECF.Framework.RT.EquipmentLibrary.HardwareUnits.Temps
|
|||||||
return calZone;
|
return calZone;
|
||||||
}
|
}
|
||||||
|
|
||||||
//public double[] GetWaferTemp()
|
|
||||||
//{
|
|
||||||
// double[] waferTemps = Enumerable.Repeat(_minTemp, _waferNum).ToArray();
|
|
||||||
// if (_waferTempDataList.Count < _waferNum)
|
|
||||||
// return waferTemps;
|
|
||||||
|
|
||||||
// int count = (_waferTempDataList.Count - 1) / _waferNum ;//分区数计算,最后一个数据是托盘的,所以减一,
|
|
||||||
// if ((_waferTempDataList.Count - 1) % _waferNum != 0)//分区数量不是整数,温度不解析防呆,
|
|
||||||
// return waferTemps;
|
|
||||||
|
|
||||||
// for (int i = 0; i < _waferNum; i++) //Wafer温度只取每个晶圆的第一个设置的中心温度
|
|
||||||
// {
|
|
||||||
// var index = i * count;
|
|
||||||
// waferTemps[i] = _waferTempDataList[index].Temp;//直接使用第一个中心温度作为中心温度
|
|
||||||
|
|
||||||
// //要求不判断中心点,只用第一个分区温度
|
|
||||||
// //for (int j = index; j < index + count ; j++)
|
|
||||||
// //{
|
|
||||||
// // if(_waferTempDataList[j].ZoneNum==0)
|
|
||||||
// // {
|
|
||||||
// // waferTemps[i] = _waferTempDataList[j].Temp;//有中心温度设置,获取第一个中心温度作为晶圆温度
|
|
||||||
// // break;
|
|
||||||
// // }
|
|
||||||
// //}
|
|
||||||
// }
|
|
||||||
|
|
||||||
// return waferTemps;
|
|
||||||
//}
|
|
||||||
|
|
||||||
public double[] GetWaferTemp()
|
public double[] GetWaferTemp()
|
||||||
{
|
{
|
||||||
double[] waferTemps = Enumerable.Repeat(_minTemp, _waferNum).ToArray();
|
double[] waferTemps = Enumerable.Repeat(_minTemp, _waferNum).ToArray();
|
||||||
if (_waferTempDataList.Count < _waferNum)
|
if (_waferTempDataList.Count < _waferNum)
|
||||||
return waferTemps;
|
return waferTemps;
|
||||||
|
|
||||||
//这届
|
|
||||||
for (int i = 0; i < _waferNum; i++) //只有前面几个温度数据,才是需要统计的
|
//for (int i = 0; i < _waferNum; i++) //只有前面几个温度数据,才是需要统计的
|
||||||
|
//{
|
||||||
|
// waferTemps[i] = _waferTempDataList[i].Temp;
|
||||||
|
//}
|
||||||
|
|
||||||
|
for (int i = 0; i < _waferNum; i++)
|
||||||
{
|
{
|
||||||
waferTemps[i] = _waferTempDataList[i].Temp;
|
//根据编号,获取同一分区所有温度数据
|
||||||
|
var tempCaches = _waferTempDataList.Where(item => item.PocketNum == i + 1);
|
||||||
|
if (tempCaches != null && tempCaches.Count() > 0)
|
||||||
|
{
|
||||||
|
//同一分区所有温度数据,查找第一个CalZone为true的温度数据
|
||||||
|
var matchedItem = tempCaches.Where(item => item.CalZone).FirstOrDefault();
|
||||||
|
|
||||||
|
if (matchedItem != null)
|
||||||
|
waferTemps[i] = matchedItem.Temp;
|
||||||
|
else
|
||||||
|
waferTemps[i] = tempCaches.First().Temp;//未设置CalZone为true,使用当前分区第一个数据作为默认温度值
|
||||||
|
}
|
||||||
|
else
|
||||||
|
waferTemps[i] = -1;//没有分区温度是乱的无法解析,使用-1作为提示
|
||||||
}
|
}
|
||||||
|
|
||||||
//_waferTempDataList[i].CalZone
|
|
||||||
//for (int i = 0; i < _waferNum; i++)
|
|
||||||
//{
|
|
||||||
// //根据编号,获取同一分区所有温度数据
|
|
||||||
// var tempCaches = _waferTempDataList.Where(item => item.PocketNum == i + 1);
|
|
||||||
// if (tempCaches != null && tempCaches.Count() > 0)
|
|
||||||
// {
|
|
||||||
// //同一分区所有温度数据,查找第一个CalZone为true的温度数据
|
|
||||||
// var matchedItem = tempCaches.Where(item => item.CalZone).FirstOrDefault();
|
|
||||||
|
|
||||||
// if (matchedItem != null)
|
|
||||||
// waferTemps[i] = matchedItem.Temp;
|
|
||||||
// else
|
|
||||||
// waferTemps[i] = tempCaches.First().Temp;//未设置CalZone为true,使用当前分区第一个数据作为默认温度值
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// waferTemps[i] = -1;//没有分区温度是乱的无法解析,使用-1作为提示
|
|
||||||
//}
|
|
||||||
|
|
||||||
return waferTemps;
|
return waferTemps;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -62,7 +62,7 @@ namespace MECF.Framework.RT.EquipmentLibrary.HardwareUnits.Temps
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 反射率数组
|
/// 反射率数组
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private List<double[]> _reflects;
|
//private List<double[]> _reflects;
|
||||||
|
|
||||||
//private AKunTriggerChannelWaferTempData[] _tempDataArray;
|
//private AKunTriggerChannelWaferTempData[] _tempDataArray;
|
||||||
|
|
||||||
@ -113,18 +113,18 @@ namespace MECF.Framework.RT.EquipmentLibrary.HardwareUnits.Temps
|
|||||||
//DATA.Subscribe($"TempSensor.{Name}.CalZone", () => _calZone);
|
//DATA.Subscribe($"TempSensor.{Name}.CalZone", () => _calZone);
|
||||||
|
|
||||||
#region 注册反射率数据
|
#region 注册反射率数据
|
||||||
_reflects = Enumerable
|
//_reflects = Enumerable
|
||||||
.Range(0, _waferNum)
|
// .Range(0, _waferNum)
|
||||||
.Select(i => new double[3])
|
// .Select(i => new double[3])
|
||||||
.ToList();
|
// .ToList();
|
||||||
|
|
||||||
for (int i = 0; i < _waferNum; i++)
|
//for (int i = 0; i < _waferNum; i++)
|
||||||
{
|
//{
|
||||||
var index = i;
|
// var index = i;
|
||||||
DATA.Subscribe($"TempSensor.{Name}.Wafer{index + 1}.Reflect1", () => _reflects[index][0]);
|
// DATA.Subscribe($"TempSensor.{Name}.Wafer{index + 1}.Reflect1", () => _reflects[index][0]);
|
||||||
DATA.Subscribe($"TempSensor.{Name}.Wafer{index + 1}.Reflect2", () => _reflects[index][1]);
|
// DATA.Subscribe($"TempSensor.{Name}.Wafer{index + 1}.Reflect2", () => _reflects[index][1]);
|
||||||
DATA.Subscribe($"TempSensor.{Name}.Wafer{index + 1}.Reflect3", () => _reflects[index][2]);
|
// DATA.Subscribe($"TempSensor.{Name}.Wafer{index + 1}.Reflect3", () => _reflects[index][2]);
|
||||||
}
|
//}
|
||||||
|
|
||||||
#endregion 注册反射率数据
|
#endregion 注册反射率数据
|
||||||
|
|
||||||
@ -289,7 +289,7 @@ namespace MECF.Framework.RT.EquipmentLibrary.HardwareUnits.Temps
|
|||||||
//昂坤的温度数据上位机在这里被动接受
|
//昂坤的温度数据上位机在这里被动接受
|
||||||
//_calZone = _aKunTempManager.GetCalZone();
|
//_calZone = _aKunTempManager.GetCalZone();
|
||||||
_trayTemp = _aKunTempManager.GetTrayTemp();
|
_trayTemp = _aKunTempManager.GetTrayTemp();
|
||||||
_reflects = _aKunTempManager.GetReflectValue();
|
//_reflects = _aKunTempManager.GetReflectValue();
|
||||||
|
|
||||||
return _aKunTempManager.GetWaferTemp();
|
return _aKunTempManager.GetWaferTemp();
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user