using DIT.SharedMemory; using Navigation; using System; using System.Collections.Generic; using System.Drawing; using System.Threading; using System.Windows.Forms; namespace SHARP_CLAS_UI.Screen { public partial class Form_Parameter_Position : Form { #region Property #endregion #region Field delegate void UI_Update_Delegate(); Form_Frame _Parent; System.Net.IPAddress _DBip = System.Net.IPAddress.Parse("127.0.0.1"); string _DBname = "SHARP_CLAS"; string _DBid = "sa"; string _DBPassword = "1234"; List position_parameters = new List(); Parameter_Position selected_parameter; Thread UI_Update_Th; Thread Data_Update_Th; bool update_check; #endregion #region Construct public Form_Parameter_Position(Form_Frame _Parent) { InitializeComponent(); this._Parent = _Parent; Get_Position_Parameter_from_DB(); Set_Grid_View(); UI_Update_Th = new Thread(UI_Update_Th_Set); Data_Update_Th = new Thread(Data_Update_Th_Set); selected_parameter = null; UI_Update_Th.Start(); Data_Update_Th.Start(); } #endregion #region Form_Function private void btn_Servo_On_Click(object sender, EventArgs e) { if (selected_parameter == null) return; _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].Amp_On(); } private void btn_Servo_Off_Click(object sender, EventArgs e) { if (selected_parameter == null) return; _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].Amp_Off(); } private void btn_Error_Reset_Click(object sender, EventArgs e) { if (selected_parameter == null) return; _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].MC_Error_Reset(); } private void btn_Home_Click(object sender, EventArgs e) { if (selected_parameter == null) return; _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].Home(); } private void btn_Absolute_Click(object sender, EventArgs e) { if (selected_parameter == null) return; double position; double speed; if (double.TryParse(tb_Move_Position.Text, out position) && double.TryParse(tb_Move_Speed.Text, out speed)) { position = double.Parse(position.ToString("F3")); speed = double.Parse(speed.ToString("F3")); _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].Move_Absolute_Pos(position, speed); } } private void btn_Relative_Click(object sender, EventArgs e) { if (selected_parameter == null) return; double position; double speed; if (double.TryParse(tb_Move_Position.Text, out position) && double.TryParse(tb_Move_Speed.Text, out speed)) { position = double.Parse(position.ToString("F3")); speed = double.Parse(speed.ToString("F3")); _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].Move_Relative_Pos(position, speed); } } private void btn_Move_Stop_Click(object sender, EventArgs e) { if (selected_parameter == null) return; _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].Move_Stop(); } private void btn_Negative_Move_MouseDown(object sender, MouseEventArgs e) { if (selected_parameter == null) return; double speed; if (double.TryParse(tb_Move_Speed.Text, out speed)) { speed = double.Parse(speed.ToString("F3")); _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].Negative_Zog(speed); btn_Negative_Move.BackColor = Color.Lime; } } private void btn_Negative_Move_MouseUp(object sender, MouseEventArgs e) { if (selected_parameter == null) return; _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].Move_Stop(); btn_Negative_Move.BackColor = Color.White; } private void btn_Positive_Move_MouseDown(object sender, MouseEventArgs e) { if (selected_parameter == null) return; double speed; if (double.TryParse(tb_Move_Speed.Text, out speed)) { speed = double.Parse(speed.ToString("F3")); _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].Positive_Zog(speed); btn_Positive_Move.BackColor = Color.Lime; } } private void btn_Positive_Move_MouseUp(object sender, MouseEventArgs e) { if (selected_parameter == null) return; _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].Move_Stop(); btn_Positive_Move.BackColor = Color.White; } private void btn_Get_Position_Click(object sender, EventArgs e) { tb_Setting_Postion.Text = lb_Current_Position.Text; } private void btn_Set_Position_Click(object sender, EventArgs e) { double position; double velocity; if (double.TryParse(tb_Setting_Postion.Text, out position) && double.TryParse(tb_Setting_Speed.Text, out velocity)) { position = double.Parse(position.ToString("F3")); velocity = double.Parse(velocity.ToString("F3")); _Parent.Write_Position_Parameter_Log($"{selected_parameter.Motor_Axis},{selected_parameter.Description},{lb_Set_Position.Text},{position},{lb_Set_Speed.Text},{velocity}"); Set_Position_Parameter_to_DB(selected_parameter.Position_Num, selected_parameter.Motor_Axis, position, velocity); Get_Position_Parameter_from_DB(); Set_Grid_View(); } } private void rb_CheckedChanged(object sender, EventArgs e) { Set_Grid_View(); } private void dgv_Position_Info_SelectionChanged(object sender, EventArgs e) { try { DataGridViewRow row = dgv_Position_Info.SelectedRows[0]; string position_name = $"{row.Cells[0].FormattedValue}"; int position_num; MotorAxis axis; string description = $"{row.Cells[3].FormattedValue}"; double position; double velocity; if (int.TryParse(row.Cells[1].FormattedValue.ToString(), out position_num) && Enum.TryParse(row.Cells[2].FormattedValue.ToString(), out axis) && double.TryParse(row.Cells[4].FormattedValue.ToString(), out position) && double.TryParse(row.Cells[5].FormattedValue.ToString(), out velocity)) { selected_parameter = new Parameter_Position(position_name, position_num, axis, description, position, velocity); } } catch (Exception ex) { } } private void btn_Teaching_Move_Click(object sender, EventArgs e) { if (selected_parameter == null) return; if (selected_parameter.Motor_Axis == MotorAxis.LD_Handler_1_X || selected_parameter.Motor_Axis == MotorAxis.LD_Handler_1_Y || selected_parameter.Motor_Axis == MotorAxis.LD_Tray_In_Lift || selected_parameter.Motor_Axis == MotorAxis.LD_Tray_TR_X) { if(_Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Lift_Up_1_1_Sensor) || _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Lift_Up_1_2_Sensor)) { MessageBox.Show("Lift Limit sensor detected."); return; } } else if (selected_parameter.Motor_Axis == MotorAxis.ULD_Handler_1_X || selected_parameter.Motor_Axis == MotorAxis.ULD_Handler_1_Y || selected_parameter.Motor_Axis == MotorAxis.ULD_Tray_OK_Lift_Z || selected_parameter.Motor_Axis == MotorAxis.ULD_Tray_NG_Lift_Z || selected_parameter.Motor_Axis == MotorAxis.ULD_Tray_TR_X) { if (_Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Lift_Up_1_1_Sensor) || _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Lift_Up_1_2_Sensor) || _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Lift_Up_1_1_Sensor) || _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Lift_Up_1_2_Sensor)) { MessageBox.Show("Lift Limit sensor detected."); return; } } double position; double speed; if (double.TryParse(lb_Set_Position.Text, out position) && double.TryParse(lb_Set_Speed.Text, out speed)) { position = double.Parse(position.ToString("F3")); speed = double.Parse(speed.ToString("F3")); _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis].Move_Absolute_Pos(position, speed); } } private void btn_LD_Tray_TR_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Transfer_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_Transfer_Vaccum_On_Sol_Valve, !check); } } private void btn_LD_Tray_TR_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Transfer_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_Transfer_Blow_On_Sol_Valve, !check); } } private void btn_LD_Tray_TR_Down_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_TR_Down, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_TR_Down, !check); } } private void btn_LD_Handler_1_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_1_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Handler_1_1_Vaccum_On_Sol_Valve, !check); } } private void btn_LD_Handler_1_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_1_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Handler_1_1_Blow_On_Sol_Valve, !check); } } private void btn_LD_Handler_1_1_Down_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Handler_1_1_Down, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Handler_1_1_Down, !check); } } private void btn_LD_Handler_1_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_1_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Handler_1_2_Vaccum_On_Sol_Valve, !check); } } private void btn_LD_Handler_1_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_1_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Handler_1_2_Blow_On_Sol_Valve, !check); } } private void btn_LD_Handler_1_2_Down_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Handler_1_2_Down, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Handler_1_2_Down, !check); } } private void btn_LD_Tray_Empty_Stacker_Sol_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Out_Stacker_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_Out_Stacker_Sol_Valve, !check); } } private void btn_LD_Tray_Empty_Clamp_Sol_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Out_Clamp_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_Out_Clamp_Sol_Valve, !check); } } private void btn_LD_Tray_Empty_Align_Top_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Out_Align_Top_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_Out_Align_Top_Sol_Valve, !check); } } private void btn_LD_Tray_Empty_Align_X_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Out_Align_X_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_Out_Align_X_Sol_Valve, !check); } } private void btn_LD_Tray_Empty_Align_Y_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Out_Align_Y_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_Out_Align_Y_Sol_Valve, !check); } } private void btn_LD_Tray_In_Stacker_Sol_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_In_Stacker_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_In_Stacker_Sol_Valve, !check); } } private void btn_LD_Tray_In_Clamp_Sol_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_In_Clamp_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_In_Clamp_Sol_Valve, !check); } } private void btn_LD_Tray_In_Aling_Top_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_In_Align_Top_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_In_Align_Top_Sol_Valve, !check); } } private void btn_LD_Tray_In_Aling_X_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_In_Align_X_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_In_Align_X_Sol_Valve, !check); } } private void btn_LD_Tray_In_Aling_Y_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_In_Align_Y_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Tray_In_Align_Y_Sol_Valve, !check); } } private void btn_LD_Handler_2_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_2_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Handler_2_2_Vaccum_On_Sol_Valve, !check); } } private void btn_LD_Handler_2_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_2_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Handler_2_2_Blow_On_Sol_Valve, !check); } } private void btn_LD_Handler_2_2_Down_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Handler_2_2_Down, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Handler_2_2_Down, !check); } } private void btn_LD_Handler_2_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_2_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Handler_2_1_Vaccum_On_Sol_Valve, !check); } } private void btn_LD_Handler_2_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_2_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Handler_2_1_Blow_On_Sol_Valve, !check); } } private void btn_LD_Handler_2_1_Down_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Handler_2_1_Down, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Handler_2_1_Down, !check); } } private void btn_Pre_Align_Stage_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Pre_Align_Stage_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Pre_Align_Stage_2_Vaccum_On_Sol_Valve, !check); } } private void btn_Pre_Align_Stage_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Pre_Align_Stage_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Pre_Align_Stage_2_Blow_On_Sol_Valve, !check); } } private void btn_Pre_Align_Stage_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Pre_Align_Stage_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Pre_Align_Stage_1_Vaccum_On_Sol_Valve, !check); } } private void btn_Pre_Align_Stage_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Pre_Align_Stage_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Pre_Align_Stage_1_Blow_On_Sol_Valve, !check); } } private void btn_LD_Reverse_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Reverse_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Reverse_2_Vaccum_On_Sol_Valve, !check); } } private void btn_LD_Reverse_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Reverse_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Reverse_2_Blow_On_Sol_Valve, !check); } } private void btn_LD_Reverse_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Reverse_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Reverse_1_Vaccum_On_Sol_Valve, !check); } } private void btn_LD_Reverse_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Reverse_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.LD_Cell_Reverse_1_Blow_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_1_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_1_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_1_1_Vaccum_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_1_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_1_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_1_1_Blow_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_1_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_1_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_1_2_Vaccum_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_1_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_1_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_1_2_Blow_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_2_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_2_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_2_1_Vaccum_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_2_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_2_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_2_1_Blow_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_2_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_2_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_2_2_Vaccum_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_2_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_2_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_2_2_Blow_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_3_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_3_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_3_1_Vaccum_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_3_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_3_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_3_1_Blow_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_3_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_3_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_3_2_Vaccum_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_3_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_3_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_3_2_Blow_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_4_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_4_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_4_1_Vaccum_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_4_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_4_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_4_1_Blow_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_4_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_4_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_4_2_Vaccum_On_Sol_Valve, !check); } } private void btn_Ablation_Stage_4_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_4_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.Ablation_Stage_4_2_Blow_On_Sol_Valve, !check); } } private void btn_ULD_Handler_2_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_2_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Handler_2_1_Vaccum_On_Sol_Valve, !check); } } private void btn_ULD_Handler_2_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_2_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Handler_2_1_Blow_On_Sol_Valve, !check); } } private void btn_ULD_Handler_2_1_Down_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Handler_2_1_Down, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Handler_2_1_Down, !check); } } private void btn_ULD_Handler_2_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_2_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Handler_2_2_Vaccum_On_Sol_Valve, !check); } } private void btn_ULD_Handler_2_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_2_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Handler_2_2_Blow_On_Sol_Valve, !check); } } private void btn_ULD_Handler_2_2_Down_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Handler_2_2_Down, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Handler_2_2_Down, !check); } } private void btn_AOI_Stage_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.AOI_Stage_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.AOI_Stage_1_Vaccum_On_Sol_Valve, !check); } } private void btn_AOI_Stage_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.AOI_Stage_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.AOI_Stage_1_Blow_On_Sol_Valve, !check); } } private void btn_AOI_Stage_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.AOI_Stage_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.AOI_Stage_2_Vaccum_On_Sol_Valve, !check); } } private void btn_AOI_Stage_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.AOI_Stage_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.AOI_Stage_2_Blow_On_Sol_Valve, !check); } } private void btn_ULD_Reverse_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Reverse_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Reverse_1_Vaccum_On_Sol_Valve, !check); } } private void btn_ULD_Reverse_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Reverse_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Reverse_1_Blow_On_Sol_Valve, !check); } } private void btn_ULD_Reverse_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Reverse_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Reverse_2_Vaccum_On_Sol_Valve, !check); } } private void btn_ULD_Reverse_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Reverse_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Reverse_2_Blow_On_Sol_Valve, !check); } } private void btn_ULD_Tray_Empty_Stacker_Sol_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Empty_In_Stacker_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Empty_In_Stacker_Sol_Valve, !check); } } private void btn_ULD_Tray_Empty_Clamp_Sol_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Empty_In_Clamp_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Empty_In_Clamp_Sol_Valve, !check); } } private void btn_ULD_Tray_Empty_Aling_Top_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Empty_In_Align_Top_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Empty_In_Align_Top_Sol_Valve, !check); } } private void btn_ULD_Tray_Empty_Aling_X_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Empty_In_Align_X_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Empty_In_Align_X_Sol_Valve, !check); } } private void btn_ULD_Tray_Empty_Aling_Y_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Empty_In_Align_Y_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Empty_In_Align_Y_Sol_Valve, !check); } } private void btn_ULD_Tray_NG_Stacker_Sol_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ng_Out_Stacker_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Ng_Out_Stacker_Sol_Valve, !check); } } private void btn_ULD_Tray_NG_Clamp_Sol_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ng_Out_Clamp_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Ng_Out_Clamp_Sol_Valve, !check); } } private void btn_ULD_Tray_NG_Align_Top_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ng_Out_Align_Top_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Ng_Out_Align_Top_Sol_Valve, !check); } } private void btn_ULD_Tray_NG_Tray_Fwd_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ng_Tray_Shuttle_Fwd_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Ng_Tray_Shuttle_Fwd_Sol_Valve, !check); } } private void btn_ULD_Tray_NG_Tray_Bwd_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ng_Tray_Shuttle_Bwd_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Ng_Tray_Shuttle_Bwd_Sol_Valve, !check); } } private void btn_ULD_Tray_OK_Stacker_Sol_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ok_Out_Stacker_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Ok_Out_Stacker_Sol_Valve, !check); } } private void btn_ULD_Tray_OK_Clamp_Sol_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ok_Out_Clamp_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Ok_Out_Clamp_Sol_Valve, !check); } } private void btn_ULD_Tray_OK_Align_Top_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ok_Out_Align_Top_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Ok_Out_Align_Top_Sol_Valve, !check); } } private void btn_ULD_Tray_OK_Align_X_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ok_Out_Align_X_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Ok_Out_Align_X_Sol_Valve, !check); } } private void btn_ULD_Tray_OK_Align_Y_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ok_Out_Align_Y_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Ok_Out_Align_Y_Sol_Valve, !check); } } private void btn_ULD_Tray_TR_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Tray_Transfer_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Tray_Transfer_Vaccum_On_Sol_Valve, !check); } } private void btn_ULD_Tray_TR_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Tray_Transfer_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Tray_Transfer_Blow_On_Sol_Valve, !check); } } private void btn_ULD_Tray_TR_Down_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Tray_TR_Down, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Tray_TR_Down, !check); } } private void btn_ULD_Handler_1_1_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_1_1_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Handler_1_1_Vaccum_On_Sol_Valve, !check); } } private void btn_ULD_Handler_1_1_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_1_1_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Handler_1_1_Blow_On_Sol_Valve, !check); } } private void btn_ULD_Handler_1_1_Down_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Handler_1_1_Down, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Handler_1_1_Down, !check); } } private void btn_ULD_Handler_1_2_Vacuum_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_1_2_Vaccum_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Handler_1_2_Vaccum_On_Sol_Valve, !check); } } private void btn_ULD_Handler_1_2_Blow_On_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_1_2_Blow_On_Sol_Valve, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Cell_Handler_1_2_Blow_On_Sol_Valve, !check); } } private void btn_ULD_Handler_1_2_Down_Click(object sender, EventArgs e) { bool check = false; if (_Parent.sm.Get_Bit(Output_Memory_Address.ULD_Handler_1_2_Down, out check)) { _Parent._equip.Board_Control.IO_manager.Set_Output(OutputData.ULD_Handler_1_2_Down, !check); } } private void btn_All_Error_Reset_Click(object sender, EventArgs e) { foreach (Axis axis in _Parent._equip.Board_Control.Motors.Values) { axis.MC_Error_Reset(); } } private void btn_All_Amp_On_Click(object sender, EventArgs e) { foreach (Axis axis in _Parent._equip.Board_Control.Motors.Values) { axis.Amp_On(); } } #endregion #region Function public void Set_Language() { try { rb_Loader.Text = resLanguage.Loader; rb_Before.Text = resLanguage.Before; rb_Process.Text = resLanguage.Process; rb_After.Text = resLanguage.After; rb_Unloader.Text = resLanguage.Unloader; if (dgv_Position_Info != null) { dgv_Position_Info.Columns[0].HeaderText = resLanguage.POSITION_NAME; dgv_Position_Info.Columns[1].HeaderText = resLanguage.NUM; dgv_Position_Info.Columns[2].HeaderText = resLanguage.AXIS; dgv_Position_Info.Columns[3].HeaderText = resLanguage.DESCRIPTION; dgv_Position_Info.Columns[4].HeaderText = resLanguage.POSITION + "(mm)"; dgv_Position_Info.Columns[5].HeaderText = resLanguage.SPEED + "(mm/s)"; } lb_Motor_Axis_.Text = resLanguage.Motor_Axis; gb_Position.Text = resLanguage.POSITION; lb_Current_Position_.Text = resLanguage.Current_Position + " : "; lb_Current_Speed_.Text = resLanguage.Current_Speed + " : "; lb_Move_Position_.Text = resLanguage.Move_Position; lb_Move_Speed_.Text = resLanguage.Move_Speed; btn_Absolute.Text = resLanguage.Absolute; btn_Relative.Text = resLanguage.Relative; gb_Control.Text = resLanguage.Control; btn_Servo_On.Text = resLanguage.Servo_On; btn_Servo_Off.Text = resLanguage.Servo_Off; btn_Error_Reset.Text = resLanguage.Error_Reset; btn_Home.Text = resLanguage.Home; btn_Move_Stop.Text = resLanguage.Move_Stop; gb_Status.Text = resLanguage.Status; lb_Servo_On.Text = resLanguage.Servo_On; lb_In_Position.Text = resLanguage.In_Position; lb_Home.Text = resLanguage.Home; lb_Error_Stop.Text = resLanguage.Error_Stop; lb_Positive_Limit.Text = resLanguage.Positive_Limit; lb_Negative_Limit.Text = resLanguage.Negative_Limit; lb_Position_setting.Text = resLanguage.POSITION_SETTING; lb_Position_Name_.Text = resLanguage.POSITION_NAME + " :"; lb_Num_.Text = resLanguage.NUM; lb_Axis_.Text = resLanguage.AXIS; lb_Description_.Text = resLanguage.DESCRIPTION; lb_Set_position_.Text = resLanguage.Set_Position; lb_Set_Speed_.Text = resLanguage.Set_Speed; lb_Setting_Position_.Text = resLanguage.Setting_Position; lb_Setting_Speed_.Text = resLanguage.Setting_Speed; btn_Get_Position.Text = resLanguage.Get_Position; btn_Set_Position.Text = resLanguage.Set_Position; btn_Teaching_Move.Text = resLanguage.Teaching_Move; tabControl1.TabPages[0].Text = resLanguage.Loader; tabControl1.TabPages[1].Text = resLanguage.Before; tabControl1.TabPages[2].Text = resLanguage.Process; tabControl1.TabPages[3].Text = resLanguage.After; tabControl1.TabPages[4].Text = resLanguage.Unloader; } catch(Exception ex) { } } public void Set_User_Level(Navigator.User_Level level) { if (_Parent._equip.User.Level <= En_User_Level.Operator) { btn_Absolute.Enabled = false; btn_Relative.Enabled = false; btn_Get_Position.Enabled = false; btn_Set_Position.Enabled = false; btn_Negative_Move.Enabled = false; btn_Positive_Move.Enabled = false; } else { btn_Absolute.Enabled = true; btn_Relative.Enabled = true; btn_Get_Position.Enabled = true; btn_Set_Position.Enabled = true; btn_Negative_Move.Enabled = true; btn_Positive_Move.Enabled = true; } } private void UI_Update_Th_Set() { while (!this.IsDisposed) { Thread.Sleep(100); if (!update_check) { update_check = true; UI_Update(); } } } private void UI_Update() { if (InvokeRequired) { BeginInvoke(new UI_Update_Delegate(UI_Update)); return; } else { try { if(_Parent._equip.equip_mode == En_Equipment_Mode.Auto && this.Enabled) { this.Enabled = false; } else if(_Parent._equip.equip_mode != En_Equipment_Mode.Auto && !this.Enabled) { this.Enabled = true; } UI_Update_Position(); } catch (Exception ex) { } finally { update_check = false; } } } private void Data_Update_Th_Set() { while (!this.IsDisposed) { Thread.Sleep(100); Data_Update(); } } private void Data_Update() { try { UI_Update_Out(); UI_Update_In(); } catch(Exception ex) { } } private void UI_Update_Position() { if (selected_parameter == null) return; lb_Motor_Axis.Text = $"{(uint)selected_parameter.Motor_Axis}"; lb_Motor_Name.Text = $"{selected_parameter.Motor_Axis}"; Axis motor = _Parent._equip.Board_Control.Motors[selected_parameter.Motor_Axis]; lb_Current_Position.Text = $"{motor.Position:000.000}"; lb_Current_Speed.Text = $"{motor.Velocity:000.000}:"; lb_Servo_On.BackColor = motor.PowerOn ? Color.Lime : Color.Green; lb_Error_Stop.BackColor = motor.ErrorStop ? Color.Lime : Color.Green; lb_Home.BackColor = motor.IsHomed ? Color.Lime : Color.Green; lb_Positive_Limit.BackColor = motor.LimitSwitchPos ? Color.Lime : Color.Green; lb_Negative_Limit.BackColor = motor.LimitSwitchNeg ? Color.Lime : Color.Green; lb_In_Position.BackColor = motor.MotionComplete ? Color.Lime : Color.Green; lb_Position_Name.Text = selected_parameter.Position_Name; lb_Position_Num.Text = $"{selected_parameter.Position_Num}"; lb_Axis.Text = $"{(uint)selected_parameter.Motor_Axis}"; lb_Description.Text = $"{selected_parameter.Description}"; lb_Set_Position.Text = $"{selected_parameter.Position}"; lb_Set_Speed.Text = $"{selected_parameter.Velocity}"; update_check = false; } private void UI_Update_Out() { bool check; //LOADER _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Transfer_Vaccum_On_Sol_Valve, out check); btn_LD_Tray_TR_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Transfer_Blow_On_Sol_Valve, out check); btn_LD_Tray_TR_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_TR_Down, out check); btn_LD_Tray_TR_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_1_1_Vaccum_On_Sol_Valve, out check); btn_LD_Handler_1_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_1_1_Blow_On_Sol_Valve, out check); btn_LD_Handler_1_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Handler_1_1_Down, out check); btn_LD_Handler_1_1_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_1_2_Vaccum_On_Sol_Valve, out check); btn_LD_Handler_1_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_1_2_Blow_On_Sol_Valve, out check); btn_LD_Handler_1_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Handler_1_2_Down, out check); btn_LD_Handler_1_2_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Out_Stacker_Sol_Valve, out check); btn_LD_Tray_Empty_Stacker_Sol.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Out_Clamp_Sol_Valve, out check); btn_LD_Tray_Empty_Clamp_Sol.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Out_Align_Top_Sol_Valve, out check); btn_LD_Tray_Empty_Align_Top.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Out_Align_X_Sol_Valve, out check); btn_LD_Tray_Empty_Align_X.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_Out_Align_Y_Sol_Valve, out check); btn_LD_Tray_Empty_Align_Y.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_In_Stacker_Sol_Valve, out check); btn_LD_Tray_In_Stacker_Sol.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_In_Clamp_Sol_Valve, out check); btn_LD_Tray_In_Clamp_Sol.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_In_Align_Top_Sol_Valve, out check); btn_LD_Tray_In_Aling_Top.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_In_Align_X_Sol_Valve, out check); btn_LD_Tray_In_Aling_X.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Tray_In_Align_Y_Sol_Valve, out check); btn_LD_Tray_In_Aling_Y.BackColor = check ? Color.Lime : Color.Green; //BEFORE _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_2_2_Vaccum_On_Sol_Valve, out check); btn_LD_Handler_2_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_2_2_Blow_On_Sol_Valve, out check); btn_LD_Handler_2_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Handler_2_2_Down, out check); btn_LD_Handler_2_2_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_2_1_Vaccum_On_Sol_Valve, out check); btn_LD_Handler_2_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Handler_2_1_Blow_On_Sol_Valve, out check); btn_LD_Handler_2_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Handler_2_1_Down, out check); btn_LD_Handler_2_1_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Pre_Align_Stage_2_Vaccum_On_Sol_Valve, out check); btn_Pre_Align_Stage_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Pre_Align_Stage_2_Blow_On_Sol_Valve, out check); btn_Pre_Align_Stage_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Pre_Align_Stage_1_Vaccum_On_Sol_Valve, out check); btn_Pre_Align_Stage_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Pre_Align_Stage_1_Blow_On_Sol_Valve, out check); btn_Pre_Align_Stage_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Reverse_2_Vaccum_On_Sol_Valve, out check); btn_LD_Reverse_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Reverse_2_Blow_On_Sol_Valve, out check); btn_LD_Reverse_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Reverse_1_Vaccum_On_Sol_Valve, out check); btn_LD_Reverse_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.LD_Cell_Reverse_1_Blow_On_Sol_Valve, out check); btn_LD_Reverse_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; //PROCESS _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_1_1_Vaccum_On_Sol_Valve, out check); btn_Ablation_Stage_1_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_1_1_Blow_On_Sol_Valve, out check); btn_Ablation_Stage_1_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_1_2_Vaccum_On_Sol_Valve, out check); btn_Ablation_Stage_1_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_1_2_Blow_On_Sol_Valve, out check); btn_Ablation_Stage_1_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_2_1_Vaccum_On_Sol_Valve, out check); btn_Ablation_Stage_2_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_2_1_Blow_On_Sol_Valve, out check); btn_Ablation_Stage_2_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_2_2_Vaccum_On_Sol_Valve, out check); btn_Ablation_Stage_2_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_2_2_Blow_On_Sol_Valve, out check); btn_Ablation_Stage_2_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_3_1_Vaccum_On_Sol_Valve, out check); btn_Ablation_Stage_3_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_3_1_Blow_On_Sol_Valve, out check); btn_Ablation_Stage_3_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_3_2_Vaccum_On_Sol_Valve, out check); btn_Ablation_Stage_3_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_3_2_Blow_On_Sol_Valve, out check); btn_Ablation_Stage_3_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_4_1_Vaccum_On_Sol_Valve, out check); btn_Ablation_Stage_4_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_4_1_Blow_On_Sol_Valve, out check); btn_Ablation_Stage_4_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_4_2_Vaccum_On_Sol_Valve, out check); btn_Ablation_Stage_4_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.Ablation_Stage_4_2_Blow_On_Sol_Valve, out check); btn_Ablation_Stage_4_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; //AFTER _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_2_1_Vaccum_On_Sol_Valve, out check); btn_ULD_Handler_2_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_2_1_Blow_On_Sol_Valve, out check); btn_ULD_Handler_2_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Handler_2_1_Down, out check); btn_ULD_Handler_2_1_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_2_2_Vaccum_On_Sol_Valve, out check); btn_ULD_Handler_2_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_2_2_Blow_On_Sol_Valve, out check); btn_ULD_Handler_2_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Handler_2_2_Down, out check); btn_ULD_Handler_2_2_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.AOI_Stage_1_Vaccum_On_Sol_Valve, out check); btn_AOI_Stage_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.AOI_Stage_1_Blow_On_Sol_Valve, out check); btn_AOI_Stage_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.AOI_Stage_2_Vaccum_On_Sol_Valve, out check); btn_AOI_Stage_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.AOI_Stage_2_Blow_On_Sol_Valve, out check); btn_AOI_Stage_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Reverse_1_Vaccum_On_Sol_Valve, out check); btn_ULD_Reverse_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Reverse_1_Blow_On_Sol_Valve, out check); btn_ULD_Reverse_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Reverse_2_Vaccum_On_Sol_Valve, out check); btn_ULD_Reverse_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Reverse_2_Blow_On_Sol_Valve, out check); btn_ULD_Reverse_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; //UNLOADER _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Empty_In_Stacker_Sol_Valve, out check); btn_ULD_Tray_Empty_Stacker_Sol.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Empty_In_Clamp_Sol_Valve, out check); btn_ULD_Tray_Empty_Clamp_Sol.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Empty_In_Align_Top_Sol_Valve, out check); btn_ULD_Tray_Empty_Aling_Top.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Empty_In_Align_X_Sol_Valve, out check); btn_ULD_Tray_Empty_Aling_X.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Empty_In_Align_Y_Sol_Valve, out check); btn_ULD_Tray_Empty_Aling_Y.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ng_Out_Stacker_Sol_Valve, out check); btn_ULD_Tray_NG_Stacker_Sol.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ng_Out_Clamp_Sol_Valve, out check); btn_ULD_Tray_NG_Clamp_Sol.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ng_Out_Align_Top_Sol_Valve, out check); btn_ULD_Tray_NG_Align_Top.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ng_Tray_Shuttle_Fwd_Sol_Valve, out check); btn_ULD_Tray_NG_Tray_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ng_Tray_Shuttle_Bwd_Sol_Valve, out check); btn_ULD_Tray_NG_Tray_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ok_Out_Stacker_Sol_Valve, out check); btn_ULD_Tray_OK_Stacker_Sol.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ok_Out_Clamp_Sol_Valve, out check); btn_ULD_Tray_OK_Clamp_Sol.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ok_Out_Align_Top_Sol_Valve, out check); btn_ULD_Tray_OK_Align_Top.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ok_Out_Align_X_Sol_Valve, out check); btn_ULD_Tray_OK_Align_X.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Ok_Out_Align_Y_Sol_Valve, out check); btn_ULD_Tray_OK_Align_Y.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Tray_Transfer_Vaccum_On_Sol_Valve, out check); btn_ULD_Tray_TR_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Tray_Transfer_Blow_On_Sol_Valve, out check); btn_ULD_Tray_TR_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Tray_TR_Down, out check); btn_ULD_Tray_TR_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_1_1_Vaccum_On_Sol_Valve, out check); btn_ULD_Handler_1_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_1_1_Blow_On_Sol_Valve, out check); btn_ULD_Handler_1_1_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Handler_1_1_Down, out check); btn_ULD_Handler_1_1_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_1_2_Vaccum_On_Sol_Valve, out check); btn_ULD_Handler_1_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Cell_Handler_1_2_Blow_On_Sol_Valve, out check); btn_ULD_Handler_1_2_Blow_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Output_Memory_Address.ULD_Handler_1_2_Down, out check); btn_ULD_Handler_1_2_Down.BackColor = check ? Color.Lime : Color.Green; } private void UI_Update_In() { bool check; //LOADER _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Transfer_Vaccum_On_Check, out check); lb_LD_Tray_TR_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Transfer_Up_Sensor, out check); lb_LD_Tray_TR_Up.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Transfer_Down_Sensor, out check); lb_LD_Tray_TR_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Cell_Handler_1_1_Vaccum_On_Check, out check); lb_LD_Handler_1_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Handler_Picker_1_1_Up_Sensor, out check); lb_LD_Handler_1_1_Up.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Handler_Picker_1_1_Down_Sensor, out check); lb_LD_Handler_1_1_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Cell_Handler_1_2_Vaccum_On_Check, out check); lb_LD_Handler_1_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Handler_Picker_1_2_Up_Sensor, out check); lb_LD_Handler_1_2_Up.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Handler_Picker_1_2_Down_Sensor, out check); lb_LD_Handler_1_2_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Stacker_1_Fwd_Sensor, out check); lb_LD_Tray_Empty_Stacker_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Stacker_1_Bwd_Sensor, out check); lb_LD_Tray_Empty_Stacker_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Stacker_2_Fwd_Sensor, out check); lb_LD_Tray_Empty_Stacker_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Stacker_2_Bwd_Sensor, out check); lb_LD_Tray_Empty_Stacker_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Stacker_3_Fwd_Sensor, out check); lb_LD_Tray_Empty_Stacker_3_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Stacker_3_Bwd_Sensor, out check); lb_LD_Tray_Empty_Stacker_3_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Stacker_4_Fwd_Sensor, out check); lb_LD_Tray_Empty_Stacker_4_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Stacker_4_Bwd_Sensor, out check); lb_LD_Tray_Empty_Stacker_4_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Clamp_1_Clamp_Sensor, out check); lb_LD_Tray_Empty_Clamp_1_Clamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Clamp_1_Unclamp_Sensor, out check); lb_LD_Tray_Empty_Clamp_1_UnClamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Clamp_2_Clamp_Sensor, out check); lb_LD_Tray_Empty_Clamp_2_Clamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Clamp_2_Unclamp_Sensor, out check); lb_LD_Tray_Empty_Clamp_2_UnClamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_Top_1_Fwd_Sensor, out check); lb_LD_Tray_Empty_Align_Top_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_Top_1_Bwd_Sensor, out check); lb_LD_Tray_Empty_Align_Top_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_Top_2_Fwd_Sensor, out check); lb_LD_Tray_Empty_Align_Top_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_Top_2_Bwd_Sensor, out check); lb_LD_Tray_Empty_Align_Top_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_X_1_Fwd_Sensor, out check); lb_LD_Tray_Empty_Align_X_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_X_1_Bwd_Sensor, out check); lb_LD_Tray_Empty_Align_X_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_X_2_Fwd_Sensor, out check); lb_LD_Tray_Empty_Align_X_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_X_2_Bwd_Sensor, out check); lb_LD_Tray_Empty_Align_X_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_Y_1_Fwd_Sensor, out check); lb_LD_Tray_Empty_Align_Y_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_Y_1_Bwd_Sensor, out check); lb_LD_Tray_Empty_Align_Y_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_Y_2_Fwd_Sensor, out check); lb_LD_Tray_Empty_Align_Y_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_Out_Align_Y_2_Bwd_Sensor, out check); lb_LD_Tray_Empty_Align_Y_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Stacker_1_Fwd_Sensor, out check); lb_LD_Tray_In_Stacker_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Stacker_1_Bwd_Sensor, out check); lb_LD_Tray_In_Stacker_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Stacker_2_Fwd_Sensor, out check); lb_LD_Tray_In_Stacker_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Stacker_2_Bwd_Sensor, out check); lb_LD_Tray_In_Stacker_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Stacker_3_Fwd_Sensor, out check); lb_LD_Tray_In_Stacker_3_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Stacker_3_Bwd_Sensor, out check); lb_LD_Tray_In_Stacker_3_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Stacker_4_Fwd_Sensor, out check); lb_LD_Tray_In_Stacker_4_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Stacker_4_Bwd_Sensor, out check); lb_LD_Tray_In_Stacker_4_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Clamp_1_Clamp_Sensor, out check); lb_LD_Tray_In_Clamp_1_Clamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Clamp_1_Unclamp_Sensor, out check); lb_LD_Tray_In_Clamp_1_UnClamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Clamp_2_Clamp_Sensor, out check); lb_LD_Tray_In_Clamp_2_Clamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Clamp_2_Unclamp_Sensor, out check); lb_LD_Tray_In_Clamp_2_UnClamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_Top_1_Fwd_Sensor, out check); lb_LD_Tray_In_Align_Top_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_Top_1_Bwd_Sensor, out check); lb_LD_Tray_In_Align_Top_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_Top_2_Fwd_Sensor, out check); lb_LD_Tray_In_Align_Top_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_Top_2_Bwd_Sensor, out check); lb_LD_Tray_In_Align_Top_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_X_1_Fwd_Sensor, out check); lb_LD_Tray_In_Align_X_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_X_1_Bwd_Sensor, out check); lb_LD_Tray_In_Align_X_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_X_2_Fwd_Sensor, out check); lb_LD_Tray_In_Align_X_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_X_2_Bwd_Sensor, out check); lb_LD_Tray_In_Align_X_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_Y_1_Fwd_Sensor, out check); lb_LD_Tray_In_Align_Y_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_Y_1_Bwd_Sensor, out check); lb_LD_Tray_In_Align_Y_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_Y_2_Fwd_Sensor, out check); lb_LD_Tray_In_Align_Y_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Tray_In_Align_Y_2_Bwd_Sensor, out check); lb_LD_Tray_In_Align_Y_2_Bwd.BackColor = check ? Color.Lime : Color.Green; //BEFORE _Parent.sm.Get_Bit(Input_Memory_Address.LD_Cell_Handler_2_2_Vaccum_On_Check, out check); lb_LD_Handler_2_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Handler_Picker_2_2_Up_Sensor, out check); lb_LD_Handler_2_2_Up.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Handler_Picker_2_2_Down_Sensor, out check); lb_LD_Handler_2_2_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Cell_Handler_2_1_Vaccum_On_Check, out check); lb_LD_Handler_2_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Handler_Picker_2_1_Up_Sensor, out check); lb_LD_Handler_2_1_Up.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Handler_Picker_2_1_Down_Sensor, out check); lb_LD_Handler_2_1_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.Pre_Align_Stage_1_Vaccum_On_Check, out check); lb_Pre_Align_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.Pre_Align_Stage_2_Vaccum_On_Check, out check); lb_Pre_Align_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Cell_Reverse_2_Vaccum_On_Check, out check); lb_LD_Reverse_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.LD_Cell_Reverse_1_Vaccum_On_Check, out check); lb_LD_Reverse_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; //PROCESS _Parent.sm.Get_Bit(Input_Memory_Address.Ablation_Stage_1_1_Vaccum_On_Check, out check); lb_Ablation_Stage_1_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.Ablation_Stage_1_2_Vaccum_On_Check, out check); lb_Ablation_Stage_1_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.Ablation_Stage_2_1_Vaccum_On_Check, out check); lb_Ablation_Stage_2_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.Ablation_Stage_2_2_Vaccum_On_Check, out check); lb_Ablation_Stage_2_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.Ablation_Stage_3_1_Vaccum_On_Check, out check); lb_Ablation_Stage_3_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.Ablation_Stage_3_2_Vaccum_On_Check, out check); lb_Ablation_Stage_3_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.Ablation_Stage_4_1_Vaccum_On_Check, out check); lb_Ablation_Stage_4_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.Ablation_Stage_4_2_Vaccum_On_Check, out check); lb_Ablation_Stage_4_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; //AFTER _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Cell_Handler_2_1_Vaccum_On_Check, out check); lb_ULD_Handler_2_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Handler_Picker_2_1_Up_Sensor, out check); lb_ULD_Handler_2_1_Up.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Handler_Picker_2_1_Down_Sensor, out check); lb_ULD_Handler_2_1_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Cell_Handler_2_2_Vaccum_On_Check, out check); lb_ULD_Handler_2_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Handler_Picker_2_2_Up_Sensor, out check); lb_ULD_Handler_2_2_Up.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Handler_Picker_2_2_Down_Sensor, out check); lb_ULD_Handler_2_2_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.AOI_Stage_1_Vaccum_On_Check, out check); lb_AOI_Stage_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.AOI_Stage_2_Vaccum_On_Check, out check); lb_AOI_Stage_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Cell_Reverse_1_Vaccum_On_Check, out check); lb_ULD_Reverse_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Cell_Reverse_2_Vaccum_On_Check, out check); lb_ULD_Reverse_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; //ULOADER _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Tray_Transfer_Vaccum_On_Check, out check); lb_ULD_Tray_TR_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Tray_Transfer_Up_Sensor, out check); lb_ULD_Tray_TR_Up.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Tray_Transfer_Down_Sensor, out check); lb_ULD_Tray_TR_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Cell_Handler_1_1_Vaccum_On_Check, out check); lb_ULD_Handler_1_1_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Handler_Picker_1_1_Up_Sensor, out check); lb_ULD_Handler_1_1_Up.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Handler_Picker_1_1_Down_Sensor, out check); lb_ULD_Handler_1_1_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Cell_Handler_1_2_Vaccum_On_Check, out check); lb_ULD_Handler_1_2_Vacuum_On.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Handler_Picker_1_2_Up_Sensor, out check); lb_ULD_Handler_1_2_Up.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Handler_Picker_1_2_Down_Sensor, out check); lb_ULD_Handler_1_2_Down.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Stacker_1_Fwd_Sensor, out check); lb_ULD_Tray_Empty_Stacker_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Stacker_1_Bwd_Sensor, out check); lb_ULD_Tray_Empty_Stacker_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Stacker_2_Fwd_Sensor, out check); lb_ULD_Tray_Empty_Stacker_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Stacker_2_Bwd_Sensor, out check); lb_ULD_Tray_Empty_Stacker_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Stacker_3_Fwd_Sensor, out check); lb_ULD_Tray_Empty_Stacker_3_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Stacker_3_Bwd_Sensor, out check); lb_ULD_Tray_Empty_Stacker_3_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Stacker_4_Fwd_Sensor, out check); lb_ULD_Tray_Empty_Stacker_4_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Stacker_4_Bwd_Sensor, out check); lb_ULD_Tray_Empty_Stacker_4_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Clamp_1_Clamp_Sensor, out check); lb_ULD_Tray_Empty_Clamp_1_Clamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Clamp_1_Unclamp_Sensor, out check); lb_ULD_Tray_Empty_Clamp_1_UnClamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Clamp_2_Clamp_Sensor, out check); lb_ULD_Tray_Empty_Clamp_2_Clamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Clamp_2_Unclamp_Sensor, out check); lb_ULD_Tray_Empty_Clamp_2_UnClamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_Top_1_Fwd_Sensor, out check); lb_ULD_Tray_Empty_Align_Top_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_Top_1_Bwd_Sensor, out check); lb_ULD_Tray_Empty_Align_Top_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_Top_2_Fwd_Sensor, out check); lb_ULD_Tray_Empty_Align_Top_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_Top_2_Bwd_Sensor, out check); lb_ULD_Tray_Empty_Align_Top_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_X_1_Fwd_Sensor, out check); lb_ULD_Tray_Empty_Align_X_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_X_1_Bwd_Sensor, out check); lb_ULD_Tray_Empty_Align_X_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_X_2_Fwd_Sensor, out check); lb_ULD_Tray_Empty_Align_X_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_X_2_Bwd_Sensor, out check); lb_ULD_Tray_Empty_Align_X_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_Y_1_Fwd_Sensor, out check); lb_ULD_Tray_Empty_Align_Y_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_Y_1_Bwd_Sensor, out check); lb_ULD_Tray_Empty_Align_Y_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_Y_2_Fwd_Sensor, out check); lb_ULD_Tray_Empty_Align_Y_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Empty_In_Align_Y_2_Bwd_Sensor, out check); lb_ULD_Tray_Empty_Align_Y_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Stacker_1_Fwd_Sensor, out check); lb_ULD_Tray_Ng_Stacker_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Stacker_1_Bwd_Sensor, out check); lb_ULD_Tray_Ng_Stacker_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Stacker_2_Fwd_Sensor, out check); lb_ULD_Tray_Ng_Stacker_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Stacker_2_Bwd_Sensor, out check); lb_ULD_Tray_Ng_Stacker_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Stacker_3_Fwd_Sensor, out check); lb_ULD_Tray_Ng_Stacker_3_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Stacker_3_Bwd_Sensor, out check); lb_ULD_Tray_Ng_Stacker_3_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Stacker_4_Fwd_Sensor, out check); lb_ULD_Tray_Ng_Stacker_4_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Stacker_4_Bwd_Sensor, out check); lb_ULD_Tray_Ng_Stacker_4_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Clamp_1_Clamp_Sensor, out check); lb_ULD_Tray_Ng_Clamp_1_Clamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Clamp_1_Unclamp_Sensor, out check); lb_ULD_Tray_Ng_Clamp_1_UnClamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Clamp_2_Clamp_Sensor, out check); lb_ULD_Tray_Ng_Clamp_2_Clamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Clamp_2_Unclamp_Sensor, out check); lb_ULD_Tray_Ng_Clamp_2_UnClamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Align_Top_1_Fwd_Sensor, out check); lb_ULD_Tray_Ng_Align_Top_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Align_Top_1_Bwd_Sensor, out check); lb_ULD_Tray_Ng_Align_Top_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Align_Top_2_Fwd_Sensor, out check); lb_ULD_Tray_Ng_Align_Top_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Align_Top_2_Bwd_Sensor, out check); lb_ULD_Tray_Ng_Align_Top_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Shuttle_Fwd_Sensor, out check); lb_ULD_Tray_Ng_Shuttle_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ng_Out_Shuttle_Bwd_Sensor, out check); lb_ULD_Tray_Ng_Shuttle_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Stacker_1_Fwd_Sensor, out check); lb_ULD_Tray_Ok_Stacker_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Stacker_1_Bwd_Sensor, out check); lb_ULD_Tray_Ok_Stacker_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Stacker_2_Fwd_Sensor, out check); lb_ULD_Tray_Ok_Stacker_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Stacker_2_Bwd_Sensor, out check); lb_ULD_Tray_Ok_Stacker_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Stacker_3_Fwd_Sensor, out check); lb_ULD_Tray_Ok_Stacker_3_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Stacker_3_Bwd_Sensor, out check); lb_ULD_Tray_Ok_Stacker_3_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Stacker_4_Fwd_Sensor, out check); lb_ULD_Tray_Ok_Stacker_4_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Stacker_4_Bwd_Sensor, out check); lb_ULD_Tray_Ok_Stacker_4_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Clamp_1_Clamp_Sensor, out check); lb_ULD_Tray_Ok_Clamp_1_Clamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Clamp_1_Unclamp_Sensor, out check); lb_ULD_Tray_Ok_Clamp_1_UnClamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Clamp_2_Clamp_Sensor, out check); lb_ULD_Tray_Ok_Clamp_2_Clamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Clamp_2_Unclamp_Sensor, out check); lb_ULD_Tray_Ok_Clamp_2_UnClamp.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_Top_1_Fwd_Sensor, out check); lb_ULD_Tray_Ok_Align_Top_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_Top_1_Bwd_Sensor, out check); lb_ULD_Tray_Ok_Align_Top_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_Top_2_Fwd_Sensor, out check); lb_ULD_Tray_Ok_Align_Top_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_Top_2_Bwd_Sensor, out check); lb_ULD_Tray_Ok_Align_Top_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_X_1_Fwd_Sensor, out check); lb_ULD_Tray_Ok_Align_X_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_X_1_Bwd_Sensor, out check); lb_ULD_Tray_Ok_Align_X_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_X_2_Fwd_Sensor, out check); lb_ULD_Tray_Ok_Align_X_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_X_2_Bwd_Sensor, out check); lb_ULD_Tray_Ok_Align_X_2_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_Y_1_Fwd_Sensor, out check); lb_ULD_Tray_Ok_Align_Y_1_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_Y_1_Bwd_Sensor, out check); lb_ULD_Tray_Ok_Align_Y_1_Bwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_Y_2_Fwd_Sensor, out check); lb_ULD_Tray_Ok_Align_Y_2_Fwd.BackColor = check ? Color.Lime : Color.Green; _Parent.sm.Get_Bit(Input_Memory_Address.ULD_Ok_Out_Align_Y_2_Bwd_Sensor, out check); lb_ULD_Tray_Ok_Align_Y_2_Bwd.BackColor = check ? Color.Lime : Color.Green; } public void Get_Position_Parameter_from_DB() { try { string connection_str = $"Server = {_DBip}; uid = {_DBid}; pwd = {_DBPassword}; database = {_DBname}"; using (System.Data.SqlClient.SqlConnection sqlcon = new System.Data.SqlClient.SqlConnection(connection_str)) { try { sqlcon.Open(); System.Data.SqlClient.SqlCommand scom = new System.Data.SqlClient.SqlCommand(); scom.Connection = sqlcon; scom.CommandText = "select * from Parameter_Position order by Position_Num"; SharedmemoryAddressInfo[] infos = Position_Parameter_Address.Get_Address_Infos(); int i = 0; using (System.Data.SqlClient.SqlDataReader sdr = scom.ExecuteReader()) { position_parameters.Clear(); while (sdr.Read()) { string position_name = (string)sdr["Position_Name"]; int position_num = (int)sdr["Position_Num"]; int axis = (int)sdr["Axis"]; string description = (string)sdr["Description"]; double position = (double)sdr["Position"]; double velocity = (double)sdr["Velocity"]; MotorAxis motoraxis; if (Enum.TryParse($"{axis}", out motoraxis)) { position_parameters.Add(new Parameter_Position(position_name, position_num, motoraxis, description, position, velocity)); _Parent.sm.Set_Value(infos[i++], float.Parse($"{position}")); _Parent.sm.Set_Value(infos[i++], float.Parse($"{velocity}")); } } sdr.Close(); } } catch (Exception ex) { Console.WriteLine(ex.Message); throw new Exception(ex.Message); } finally { sqlcon.Close(); } } } catch (Exception ex) { } } public bool Set_Position_Parameter_to_DB(int position_num, MotorAxis Axis, double position, double velocity) { string connection_str = $"Server = {_DBip}; uid = {_DBid}; pwd = {_DBPassword}; database = {_DBname}"; using (System.Data.SqlClient.SqlConnection sqlcon = new System.Data.SqlClient.SqlConnection(connection_str)) { try { sqlcon.Open(); System.Data.SqlClient.SqlCommand scom = new System.Data.SqlClient.SqlCommand(); scom.Connection = sqlcon; scom.CommandText = $"Update Parameter_Position Set Position = {position}, Velocity = {velocity} Where Position_Num = {position_num} AND Axis= {(uint)Axis}"; int row = scom.ExecuteNonQuery(); if (row < 1) return false; else return true; } catch (Exception ex) { Console.WriteLine(ex.Message); throw new Exception(ex.Message); } finally { sqlcon.Close(); } } } private void Set_Grid_View() { int start = 0; int end = 0; if (rb_Loader.Checked) { start = 0; end = 20; } else if (rb_Before.Checked) { start = 20; end = 40; } else if (rb_Process.Checked) { start = 40; end = 60; } else if (rb_After.Checked) { start = 60; end = 80; } else if (rb_Unloader.Checked) { start = 80; end = 100; } int rowindex = dgv_Position_Info.FirstDisplayedCell == null ? 0 : dgv_Position_Info.FirstDisplayedCell.RowIndex; int index = dgv_Position_Info.FirstDisplayedCell == null ? 0 : dgv_Position_Info.SelectedRows[0].Index; dgv_Position_Info.Rows.Clear(); foreach (Parameter_Position parameter in position_parameters) { if (start <= parameter.Position_Num && parameter.Position_Num < end) { string[] row = { parameter.Position_Name, $"{parameter.Position_Num}", $"{(uint)parameter.Motor_Axis }", parameter.Description, $"{parameter.Position}", $"{parameter.Velocity}" }; dgv_Position_Info.Rows.Add(row); } } if (dgv_Position_Info.Rows.Count > index) dgv_Position_Info.Rows[index].Selected = true; if (dgv_Position_Info.FirstDisplayedCell != null) dgv_Position_Info.FirstDisplayedScrollingRowIndex = rowindex; } #endregion } }