using System;
|
using System.Collections.Generic;
|
using System.ComponentModel;
|
using System.Drawing;
|
using System.Data;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
using System.Windows.Forms;
|
using SA_LTT.Parameter;
|
|
namespace SA_LTT_UI.Screen
|
{
|
public partial class ScreenParameter : UserControl
|
{
|
private MainFrame _mainFrame;
|
|
private SettingParameter settingParameter;
|
private ModeParameter modeParameter;
|
|
public ScreenParameter(MainFrame mainFrame)
|
{
|
InitializeComponent();
|
_mainFrame = mainFrame;
|
|
settingParameter = _mainFrame.equipment.settingParameterManager.SettingParameter;
|
modeParameter = _mainFrame.equipment.modeParameterManager.ModeParameter;
|
|
UpdateModeParameterUI();
|
UpdateSettingParameterUI();
|
}
|
|
private void btn_Mode_Click(object sender, EventArgs e)
|
{
|
Button btn = (Button)sender;
|
|
if(btn == btn_EnergyDropCheckUse)
|
{
|
modeParameter.EnergyDropCheckUse = true;
|
}
|
else if(btn == btn_EnergyDropCheckNotUse)
|
{
|
modeParameter.EnergyDropCheckUse = false;
|
}
|
|
if (btn == btn_AttenuatorCalUse)
|
{
|
modeParameter.AttenuatorCalUse = true;
|
}
|
else if (btn == btn_AttenuatorCalNotUse)
|
{
|
modeParameter.AttenuatorCalUse = false;
|
}
|
|
if (btn == btn_EnergyMeasurementUse)
|
{
|
modeParameter.EnergyMeasurementUse = true;
|
}
|
else if (btn == btn_EnergyMeasurementNotUse)
|
{
|
modeParameter.EnergyMeasurementUse = false;
|
}
|
|
if(btn == btn_ShutterAlwaysOnUse)
|
{
|
modeParameter.ShutterAlwaysUse = true;
|
}
|
else if(btn == btn_ShutterAlwaysOnNotUse)
|
{
|
modeParameter.ShutterAlwaysUse = false;
|
}
|
|
if(btn == btn_AlignUse)
|
{
|
modeParameter.AlignUse = true;
|
}
|
else if (btn == btn_AlignNotUse)
|
{
|
modeParameter.AlignUse = false;
|
}
|
|
UpdateModeParameterUI();
|
}
|
|
private void SetSettingData(object sender)
|
{
|
TextBox tb = (TextBox)sender;
|
|
double doubleData;
|
float floatData;
|
int intData;
|
|
if (tb == tb_EnergyDropCheckCycle)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.EnergyDropCheckCycle = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_EnergyDropCheckMeasurementTime)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.EnergyDropCheckMeasurementTime = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_EnergyDropCheckTargetAngle)
|
{
|
float.TryParse(tb.Text, out floatData);
|
|
floatData = float.Parse(floatData.ToString("F3"));
|
|
if (floatData < 0)
|
{
|
floatData = 0;
|
}
|
|
settingParameter.EnergyDropCheckTargetAngle = floatData;
|
tb.Text = $"{floatData}";
|
}
|
else if (tb == tb_EnergyDropCheckTargetEnergy)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F4"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.EnergyDropCheckTargetEnergy = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_EnergyDropCheckErrorOccuredRange)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.EnergyDropCheckErrorOccuredRange = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_AttenuatorCalCycle)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.AttenuatorCalCycle = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_AttenuatorCalMeasurementTime)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.AttenuatorCalMeasurementTime = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_AttenuatorCalCoolingTime)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.AttenuatorCalCoolingTime = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_AttenuatorCalStartAngle)
|
{
|
float.TryParse(tb.Text, out floatData);
|
|
floatData = float.Parse(floatData.ToString("F3"));
|
|
if (floatData < 0)
|
{
|
floatData = 0;
|
}
|
|
settingParameter.AttenuatorCalStartAngle = floatData;
|
tb.Text = $"{floatData}";
|
}
|
else if (tb == tb_AttenuatorCalEndAngle)
|
{
|
float.TryParse(tb.Text, out floatData);
|
|
floatData = float.Parse(floatData.ToString("F3"));
|
|
if (floatData < settingParameter.AttenuatorCalStartAngle)
|
{
|
floatData = settingParameter.AttenuatorCalStartAngle;
|
}
|
|
settingParameter.AttenuatorCalEndAngle = floatData;
|
tb.Text = $"{floatData}";
|
}
|
else if (tb == tb_AttenuatorCalAngleStep)
|
{
|
float.TryParse(tb.Text, out floatData);
|
|
floatData = float.Parse(floatData.ToString("F3"));
|
|
if (floatData <= 0)
|
{
|
floatData = 0.01f;
|
}
|
|
settingParameter.AttenuatorCalAngleStep = floatData;
|
tb.Text = $"{floatData}";
|
}
|
else if (tb == tb_EnergyMeasurementCycle)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.EnergyMeasurementCycle = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_EnergyMeasurementWaferCountCycle)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.EnergyMeasurementWaferCountCycle = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_EnergyMeasurementErrorOccuredRange)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.EnergyMeasurementErrorOccuredRange = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_EnergyMeasurementTime)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.EnergyMeasurementTime = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_EnergyMeasurementStep)
|
{
|
float.TryParse(tb.Text, out floatData);
|
|
floatData = float.Parse(floatData.ToString("F3"));
|
|
if (floatData <= 0)
|
{
|
floatData = 0.1f;
|
}
|
|
settingParameter.EnergyMeasurmentStepAngle = floatData;
|
tb.Text = $"{floatData}";
|
}
|
else if (tb == tb_EnergyMeasurementTime)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.EnergyMeasurementTime = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_BeamHeight)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData <= 0)
|
{
|
doubleData = 0.1;
|
}
|
|
settingParameter.BeamHeight = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_BeamWidth)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData <= 0)
|
{
|
doubleData = 0.1;
|
}
|
|
settingParameter.BeamWidth = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_EnergyMeterHeatingTime)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 0)
|
{
|
doubleData = 0;
|
}
|
|
settingParameter.EnergyMeterHeatingTime = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_EnergyMeasurementRetryCount)
|
{
|
int.TryParse(tb.Text, out intData);
|
|
if (intData < 0)
|
{
|
intData = 0;
|
}
|
|
settingParameter.EnergyMeasurementRetryCount = intData;
|
tb.Text = $"{intData}";
|
}
|
else if (tb == tb_VisionTimeOut)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 1)
|
{
|
doubleData = 1;
|
}
|
|
settingParameter.VisionTimeOut = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
else if (tb == tb_VisionHeartBeatTimeOut)
|
{
|
double.TryParse(tb.Text, out doubleData);
|
|
doubleData = double.Parse(doubleData.ToString("F3"));
|
|
if (doubleData < 1)
|
{
|
doubleData = 1;
|
}
|
|
settingParameter.VisionHeartBeatTimeOut = doubleData;
|
tb.Text = $"{doubleData}";
|
}
|
|
|
UpdateSettingParameterUI();
|
}
|
|
private void UpdateModeParameterUI()
|
{
|
ModeParameter modeParameter = _mainFrame.equipment.modeParameterManager.ModeParameter;
|
|
btn_EnergyDropCheckUse.BackColor = this.modeParameter.EnergyDropCheckUse ? this.modeParameter.EnergyDropCheckUse != modeParameter.EnergyDropCheckUse ? Color.Red : Color.DodgerBlue : Color.White;
|
btn_EnergyDropCheckNotUse.BackColor = !this.modeParameter.EnergyDropCheckUse ? this.modeParameter.EnergyDropCheckUse != modeParameter.EnergyDropCheckUse ? Color.Red : Color.DodgerBlue : Color.White;
|
|
btn_AttenuatorCalUse.BackColor = this.modeParameter.AttenuatorCalUse ? this.modeParameter.AttenuatorCalUse != modeParameter.AttenuatorCalUse ? Color.Red : Color.DodgerBlue : Color.White;
|
btn_AttenuatorCalNotUse.BackColor = !this.modeParameter.AttenuatorCalUse ? this.modeParameter.AttenuatorCalUse != modeParameter.AttenuatorCalUse ? Color.Red : Color.DodgerBlue : Color.White;
|
|
btn_EnergyMeasurementUse.BackColor = this.modeParameter.EnergyMeasurementUse ? this.modeParameter.EnergyMeasurementUse != modeParameter.EnergyMeasurementUse ? Color.Red : Color.DodgerBlue : Color.White;
|
btn_EnergyMeasurementNotUse.BackColor = !this.modeParameter.EnergyMeasurementUse ? this.modeParameter.EnergyMeasurementUse != modeParameter.EnergyMeasurementUse ? Color.Red : Color.DodgerBlue : Color.White;
|
|
btn_ShutterAlwaysOnUse.BackColor = this.modeParameter.ShutterAlwaysUse ? this.modeParameter.ShutterAlwaysUse != modeParameter.ShutterAlwaysUse ? Color.Red : Color.DodgerBlue : Color.White;
|
btn_ShutterAlwaysOnNotUse.BackColor = !this.modeParameter.ShutterAlwaysUse ? this.modeParameter.ShutterAlwaysUse != modeParameter.ShutterAlwaysUse ? Color.Red : Color.DodgerBlue : Color.White;
|
|
btn_AlignUse.BackColor = this.modeParameter.AlignUse ? this.modeParameter.AlignUse != modeParameter.AlignUse ? Color.Red : Color.DodgerBlue : Color.White;
|
btn_AlignNotUse.BackColor = !this.modeParameter.AlignUse ? this.modeParameter.AlignUse != modeParameter.AlignUse ? Color.Red : Color.DodgerBlue : Color.White;
|
}
|
|
private void UpdateSettingParameterUI()
|
{
|
SettingParameter settingParameter = _mainFrame.equipment.settingParameterManager.SettingParameter;
|
|
tb_EnergyDropCheckCycle.BackColor = this.settingParameter.EnergyDropCheckCycle != settingParameter.EnergyDropCheckCycle ? Color.Red : Color.White;
|
tb_EnergyDropCheckMeasurementTime.BackColor = this.settingParameter.EnergyDropCheckMeasurementTime != settingParameter.EnergyDropCheckMeasurementTime ? Color.Red : Color.White;
|
tb_EnergyDropCheckTargetAngle.BackColor = this.settingParameter.EnergyDropCheckTargetAngle != settingParameter.EnergyDropCheckTargetAngle ? Color.Red : Color.White;
|
tb_EnergyDropCheckTargetEnergy.BackColor = this.settingParameter.EnergyDropCheckTargetEnergy != settingParameter.EnergyDropCheckTargetEnergy ? Color.Red : Color.White;
|
tb_EnergyDropCheckErrorOccuredRange.BackColor = this.settingParameter.EnergyDropCheckErrorOccuredRange != settingParameter.EnergyDropCheckErrorOccuredRange ? Color.Red : Color.White;
|
|
tb_AttenuatorCalCycle.BackColor = this.settingParameter.AttenuatorCalCycle != settingParameter.AttenuatorCalCycle ? Color.Red : Color.White;
|
tb_AttenuatorCalMeasurementTime.BackColor = this.settingParameter.AttenuatorCalMeasurementTime != settingParameter.AttenuatorCalMeasurementTime ? Color.Red : Color.White;
|
tb_AttenuatorCalCoolingTime.BackColor = this.settingParameter.AttenuatorCalCoolingTime != settingParameter.AttenuatorCalCoolingTime ? Color.Red : Color.White;
|
tb_AttenuatorCalStartAngle.BackColor = this.settingParameter.AttenuatorCalStartAngle != settingParameter.AttenuatorCalStartAngle ? Color.Red : Color.White;
|
tb_AttenuatorCalEndAngle.BackColor = this.settingParameter.AttenuatorCalEndAngle != settingParameter.AttenuatorCalEndAngle ? Color.Red : Color.White;
|
tb_AttenuatorCalAngleStep.BackColor = this.settingParameter.AttenuatorCalAngleStep != settingParameter.AttenuatorCalAngleStep ? Color.Red : Color.White;
|
|
tb_EnergyMeasurementCycle.BackColor = this.settingParameter.EnergyMeasurementCycle != settingParameter.EnergyMeasurementCycle ? Color.Red : Color.White;
|
tb_EnergyMeasurementWaferCountCycle.BackColor = this.settingParameter.EnergyMeasurementWaferCountCycle != settingParameter.EnergyMeasurementWaferCountCycle ? Color.Red : Color.White;
|
tb_EnergyMeasurementErrorOccuredRange.BackColor = this.settingParameter.EnergyMeasurementErrorOccuredRange != settingParameter.EnergyMeasurementErrorOccuredRange ? Color.Red : Color.White;
|
tb_EnergyMeasurementTime.BackColor = this.settingParameter.EnergyMeasurementTime != settingParameter.EnergyMeasurementTime ? Color.Red : Color.White;
|
tb_EnergyMeasurementStep.BackColor = this.settingParameter.EnergyMeasurmentStepAngle != settingParameter.EnergyMeasurmentStepAngle ? Color.Red : Color.White;
|
tb_EnergyMeasurementRetryCount.BackColor = this.settingParameter.EnergyMeasurementRetryCount != settingParameter.EnergyMeasurementRetryCount ? Color.Red : Color.White;
|
|
tb_BeamHeight.BackColor = this.settingParameter.BeamHeight != settingParameter.BeamHeight ? Color.Red : Color.White;
|
tb_BeamWidth.BackColor = this.settingParameter.BeamWidth != settingParameter.BeamWidth ? Color.Red : Color.White;
|
tb_EnergyMeterHeatingTime.BackColor = this.settingParameter.EnergyMeterHeatingTime != settingParameter.EnergyMeterHeatingTime ? Color.Red : Color.White;
|
|
tb_VisionTimeOut.BackColor = this.settingParameter.VisionTimeOut != settingParameter.VisionTimeOut ? Color.Red : Color.White;
|
tb_VisionHeartBeatTimeOut.BackColor = this.settingParameter.VisionHeartBeatTimeOut != settingParameter.VisionHeartBeatTimeOut ? Color.Red : Color.White;
|
//===
|
tb_EnergyDropCheckCycle.Text = this.settingParameter.EnergyDropCheckCycle.ToString();
|
tb_EnergyDropCheckMeasurementTime.Text = this.settingParameter.EnergyDropCheckMeasurementTime.ToString();
|
tb_EnergyDropCheckTargetAngle.Text = this.settingParameter.EnergyDropCheckTargetAngle.ToString();
|
tb_EnergyDropCheckTargetEnergy.Text = this.settingParameter.EnergyDropCheckTargetEnergy.ToString();
|
tb_EnergyDropCheckErrorOccuredRange.Text = this.settingParameter.EnergyDropCheckErrorOccuredRange.ToString();
|
|
tb_AttenuatorCalCycle.Text = this.settingParameter.AttenuatorCalCycle.ToString();
|
tb_AttenuatorCalMeasurementTime.Text = this.settingParameter.AttenuatorCalMeasurementTime.ToString();
|
tb_AttenuatorCalCoolingTime.Text = this.settingParameter.AttenuatorCalCoolingTime.ToString();
|
tb_AttenuatorCalStartAngle.Text = this.settingParameter.AttenuatorCalStartAngle.ToString();
|
tb_AttenuatorCalEndAngle.Text = this.settingParameter.AttenuatorCalEndAngle.ToString();
|
tb_AttenuatorCalAngleStep.Text = this.settingParameter.AttenuatorCalAngleStep.ToString();
|
|
tb_EnergyMeasurementCycle.Text = this.settingParameter.EnergyMeasurementCycle.ToString();
|
tb_EnergyMeasurementWaferCountCycle.Text = this.settingParameter.EnergyMeasurementWaferCountCycle.ToString();
|
tb_EnergyMeasurementErrorOccuredRange.Text = this.settingParameter.EnergyMeasurementErrorOccuredRange.ToString();
|
tb_EnergyMeasurementTime.Text = this.settingParameter.EnergyMeasurementTime.ToString();
|
tb_EnergyMeasurementStep.Text = this.settingParameter.EnergyMeasurmentStepAngle.ToString();
|
tb_EnergyMeasurementRetryCount.Text = this.settingParameter.EnergyMeasurementRetryCount.ToString();
|
|
tb_BeamHeight.Text = this.settingParameter.BeamHeight.ToString();
|
tb_BeamWidth.Text = this.settingParameter.BeamWidth.ToString();
|
tb_EnergyMeterHeatingTime.Text = this.settingParameter.EnergyMeterHeatingTime.ToString();
|
|
tb_VisionTimeOut.Text = this.settingParameter.VisionTimeOut.ToString();
|
tb_VisionHeartBeatTimeOut.Text = this.settingParameter.VisionHeartBeatTimeOut.ToString();
|
}
|
|
private void btn_Mode_Save_Click(object sender, EventArgs e)
|
{
|
string strMsg = $"Mode Parameter를 저장 하시겠습니까 ?";
|
if (MessageBox.Show(strMsg, "확인", MessageBoxButtons.YesNo) == DialogResult.Yes)
|
{
|
_mainFrame.equipment.modeParameterManager.Save(modeParameter);
|
UpdateModeParameterUI();
|
}
|
}
|
|
private void btn_Mode_Reset_Click(object sender, EventArgs e)
|
{
|
string strMsg = $"Mode Parameter를 Reset 하시겠습니까 ?";
|
if (MessageBox.Show(strMsg, "확인", MessageBoxButtons.YesNo) == DialogResult.Yes)
|
{
|
modeParameter = _mainFrame.equipment.modeParameterManager.ModeParameter;
|
UpdateModeParameterUI();
|
}
|
}
|
|
private void tb_SettingData_Leave(object sender, EventArgs e)
|
{
|
SetSettingData(sender);
|
}
|
|
private void tb_SettingData_KeyDown(object sender, KeyEventArgs e)
|
{
|
if (e.KeyData == Keys.Enter)
|
{
|
SetSettingData(sender);
|
}
|
}
|
|
private void btn_Setting_Save_Click(object sender, EventArgs e)
|
{
|
string strMsg = $"Setting Parameter를 저장 하시겠습니까 ?";
|
if (MessageBox.Show(strMsg, "확인", MessageBoxButtons.YesNo) == DialogResult.Yes)
|
{
|
_mainFrame.equipment.settingParameterManager.Save(settingParameter);
|
UpdateSettingParameterUI();
|
}
|
}
|
|
private void btn_Setting_Reset_Click(object sender, EventArgs e)
|
{
|
string strMsg = $"Setting Parameter를 Reset 하시겠습니까 ?";
|
if (MessageBox.Show(strMsg, "확인", MessageBoxButtons.YesNo) == DialogResult.Yes)
|
{
|
settingParameter = _mainFrame.equipment.settingParameterManager.SettingParameter;
|
UpdateSettingParameterUI();
|
}
|
}
|
}
|
}
|