- 제품진입 미감지 기능 추가(레드마인 #2818 참고)
1. 엔지니어 설정 '제품진입 미감지' 0.0 초과일 경우, 기능 작동
   2. 알람 8 - 제품진입 미감지 추가
   3. IsJudgmentNow1, 2 판정 시 true로 변경 -> 영점표시 시 false
      false일 경우만 알람 발생
      알람 발생 시, 장비 정지 신호 메인보드로 전송
   4. labelAlarmWindow 추가 -> 현재 제품진입 미감지 시에만 Pop up됨
      창 클릭 시, 운전 시 해제
   5. 알람 해제 조건 : 정지 시
			
			
				master
			
			
		
							parent
							
								
									3d5708196b
								
							
						
					
					
						commit
						333ab9ff18
					
				|  | @ -35,6 +35,8 @@ | ||||||
|             this.labelTitleCommunicationLog = new SmartX.SmartLabel(); |             this.labelTitleCommunicationLog = new SmartX.SmartLabel(); | ||||||
|             this.buttonCommunicationLog = new SmartX.SmartButton(); |             this.buttonCommunicationLog = new SmartX.SmartButton(); | ||||||
|             this.labelTitleEquipmentType = new SmartX.SmartLabel(); |             this.labelTitleEquipmentType = new SmartX.SmartLabel(); | ||||||
|  |             this.labelEntryNotDetected = new SmartX.SmartLabel(); | ||||||
|  |             this.labelTitleEntryNotDetected = new SmartX.SmartLabel(); | ||||||
|             this.smartGroupBox1.SuspendLayout(); |             this.smartGroupBox1.SuspendLayout(); | ||||||
|             this.SuspendLayout(); |             this.SuspendLayout(); | ||||||
|             //  |             //  | ||||||
|  | @ -43,6 +45,8 @@ | ||||||
|             this.smartGroupBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(46)))), ((int)(((byte)(46))))); |             this.smartGroupBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(46)))), ((int)(((byte)(46))))); | ||||||
|             this.smartGroupBox1.BackPictureBox = null; |             this.smartGroupBox1.BackPictureBox = null; | ||||||
|             this.smartGroupBox1.BackPictureBox1 = null; |             this.smartGroupBox1.BackPictureBox1 = null; | ||||||
|  |             this.smartGroupBox1.Controls.Add(this.labelEntryNotDetected); | ||||||
|  |             this.smartGroupBox1.Controls.Add(this.labelTitleEntryNotDetected); | ||||||
|             this.smartGroupBox1.Controls.Add(this.comboBoxEquipmentType); |             this.smartGroupBox1.Controls.Add(this.comboBoxEquipmentType); | ||||||
|             this.smartGroupBox1.Controls.Add(this.buttonCapture); |             this.smartGroupBox1.Controls.Add(this.buttonCapture); | ||||||
|             this.smartGroupBox1.Controls.Add(this.labelTitleCommunicationLog); |             this.smartGroupBox1.Controls.Add(this.labelTitleCommunicationLog); | ||||||
|  | @ -176,6 +180,46 @@ | ||||||
|             this.labelTitleEquipmentType.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; |             this.labelTitleEquipmentType.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; | ||||||
|             this.labelTitleEquipmentType.Wordwrap = false; |             this.labelTitleEquipmentType.Wordwrap = false; | ||||||
|             //  |             //  | ||||||
|  |             // labelEntryNotDetected | ||||||
|  |             //  | ||||||
|  |             this.labelEntryNotDetected.BackColor = System.Drawing.SystemColors.Window; | ||||||
|  |             this.labelEntryNotDetected.BackPictureBox = null; | ||||||
|  |             this.labelEntryNotDetected.BackPictureBox1 = null; | ||||||
|  |             this.labelEntryNotDetected.BackPictureBox2 = null; | ||||||
|  |             this.labelEntryNotDetected.BorderColor = System.Drawing.Color.Black; | ||||||
|  |             this.labelEntryNotDetected.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; | ||||||
|  |             this.labelEntryNotDetected.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); | ||||||
|  |             this.labelEntryNotDetected.InitVisible = true; | ||||||
|  |             this.labelEntryNotDetected.LineSpacing = 0F; | ||||||
|  |             this.labelEntryNotDetected.Location = new System.Drawing.Point(401, 84); | ||||||
|  |             this.labelEntryNotDetected.Name = "labelEntryNotDetected"; | ||||||
|  |             this.labelEntryNotDetected.Size = new System.Drawing.Size(120, 28); | ||||||
|  |             this.labelEntryNotDetected.TabIndex = 219; | ||||||
|  |             this.labelEntryNotDetected.Text = "0.0"; | ||||||
|  |             this.labelEntryNotDetected.TextHAlign = SmartX.SmartLabel.TextHorAlign.Right; | ||||||
|  |             this.labelEntryNotDetected.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; | ||||||
|  |             this.labelEntryNotDetected.Wordwrap = false; | ||||||
|  |             this.labelEntryNotDetected.Click += new System.EventHandler(this.labelEntryNotDeteced_Click); | ||||||
|  |             //  | ||||||
|  |             // labelTitleEntryNotDetected | ||||||
|  |             //  | ||||||
|  |             this.labelTitleEntryNotDetected.BackPictureBox1 = null; | ||||||
|  |             this.labelTitleEntryNotDetected.BackPictureBox2 = this.smartGroupBox1; | ||||||
|  |             this.labelTitleEntryNotDetected.BorderColor = System.Drawing.Color.Black; | ||||||
|  |             this.labelTitleEntryNotDetected.BorderStyle = System.Windows.Forms.BorderStyle.None; | ||||||
|  |             this.labelTitleEntryNotDetected.Font = new System.Drawing.Font("새굴림", 11F, System.Drawing.FontStyle.Bold); | ||||||
|  |             this.labelTitleEntryNotDetected.ForeColor = System.Drawing.Color.White; | ||||||
|  |             this.labelTitleEntryNotDetected.InitVisible = true; | ||||||
|  |             this.labelTitleEntryNotDetected.LineSpacing = 0F; | ||||||
|  |             this.labelTitleEntryNotDetected.Location = new System.Drawing.Point(130, 84); | ||||||
|  |             this.labelTitleEntryNotDetected.Name = "labelTitleEntryNotDetected"; | ||||||
|  |             this.labelTitleEntryNotDetected.Size = new System.Drawing.Size(265, 28); | ||||||
|  |             this.labelTitleEntryNotDetected.TabIndex = 218; | ||||||
|  |             this.labelTitleEntryNotDetected.Text = "제품진입 미감지"; | ||||||
|  |             this.labelTitleEntryNotDetected.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left; | ||||||
|  |             this.labelTitleEntryNotDetected.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; | ||||||
|  |             this.labelTitleEntryNotDetected.Wordwrap = false; | ||||||
|  |             //  | ||||||
|             // ControlCenterEquipEngineer |             // ControlCenterEquipEngineer | ||||||
|             //  |             //  | ||||||
|             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); |             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); | ||||||
|  | @ -196,5 +240,7 @@ | ||||||
|         private SmartX.SmartLabel labelTitleCommunicationLog; |         private SmartX.SmartLabel labelTitleCommunicationLog; | ||||||
|         private SmartX.SmartButton buttonCommunicationLog; |         private SmartX.SmartButton buttonCommunicationLog; | ||||||
|         private SmartX.SmartLabel labelTitleEquipmentType; |         private SmartX.SmartLabel labelTitleEquipmentType; | ||||||
|  |         public SmartX.SmartLabel labelEntryNotDetected; | ||||||
|  |         private SmartX.SmartLabel labelTitleEntryNotDetected; | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -138,9 +138,10 @@ namespace ITC81DB_2.Controls | ||||||
| 
 | 
 | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         private void UpdateParameterDisplay(SystemConfigurationItem item) |         private void UpdateParameterDisplay(SystemConfigurationItem item, SystemParameter9507 system) | ||||||
|         { |         { | ||||||
|             int index = 0; |             int index = 0; | ||||||
|  |             string value = ""; | ||||||
| 
 | 
 | ||||||
|             // 장비타입 |             // 장비타입 | ||||||
|             this.comboBoxEquipmentType.SelectedIndexChanged -= new EventHandler(this.comboBoxEquipmentType_SelectedIndexChanged); |             this.comboBoxEquipmentType.SelectedIndexChanged -= new EventHandler(this.comboBoxEquipmentType_SelectedIndexChanged); | ||||||
|  | @ -162,6 +163,10 @@ namespace ITC81DB_2.Controls | ||||||
|                 this.buttonCommunicationLog.ButtonDown(); |                 this.buttonCommunicationLog.ButtonDown(); | ||||||
|             else |             else | ||||||
|                 this.buttonCommunicationLog.ButtonUp(); |                 this.buttonCommunicationLog.ButtonUp(); | ||||||
|  | 
 | ||||||
|  |             value = Helper.StringToDecimalPlaces(system.EntryNotDetectedWeight, this.ParentForm.ParentForm.SystemConfig.DecimalPlaces); | ||||||
|  |             if (this.labelEntryNotDetected.Text != value) | ||||||
|  |                 this.labelEntryNotDetected.Text = value; | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         public void DisplayRefresh(SystemStatus status) |         public void DisplayRefresh(SystemStatus status) | ||||||
|  | @ -170,7 +175,7 @@ namespace ITC81DB_2.Controls | ||||||
|             this.ParentForm.ParentForm.SetDisplayMode(DataStore.DisplayMode.Menu); |             this.ParentForm.ParentForm.SetDisplayMode(DataStore.DisplayMode.Menu); | ||||||
|             this.ParentForm.DisplayTitleRoot(this.ParentForm.ParentForm.CurrentSystemStatus); |             this.ParentForm.DisplayTitleRoot(this.ParentForm.ParentForm.CurrentSystemStatus); | ||||||
| 
 | 
 | ||||||
|             this.UpdateParameterDisplay(this.ParentForm.ParentForm.SystemConfig); |             this.UpdateParameterDisplay(this.ParentForm.ParentForm.SystemConfig, this.ParentForm.ParentForm.CurrentSystemParameter9507); | ||||||
|         } |         } | ||||||
|         #endregion |         #endregion | ||||||
| 
 | 
 | ||||||
|  | @ -203,6 +208,30 @@ namespace ITC81DB_2.Controls | ||||||
|             this.ParentForm.ParentForm.SaveSystemConfigurationFile(this.ParentForm.ParentForm.SystemConfig); |             this.ParentForm.ParentForm.SaveSystemConfigurationFile(this.ParentForm.ParentForm.SystemConfig); | ||||||
|             this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Write, CommunicationID.MainBoard, CommunicationAddress._1002_EquipmentType, value); |             this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Write, CommunicationID.MainBoard, CommunicationAddress._1002_EquipmentType, value); | ||||||
|         } |         } | ||||||
|  |         private void labelEntryNotDeteced_Click(object sender, EventArgs e) | ||||||
|  |         { | ||||||
|  |             string value = ""; | ||||||
|  |             DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelEntryNotDetected.Text, 5, this.ParentForm.ParentForm.SystemConfig.DecimalPlaces, | ||||||
|  |               false, this.ParentForm.ParentForm.SystemConfig.Language); | ||||||
|  | 
 | ||||||
|  |             if (myKeyPad.ShowDialog() == DialogResult.OK) | ||||||
|  |             { | ||||||
|  |                 if (myKeyPad.doubleValue < 0.0) | ||||||
|  |                 { | ||||||
|  |                     // 입력범위를 확인하세요 | ||||||
|  |                     DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.ParentForm.SystemConfig.Language); | ||||||
|  |                     myMsg.ShowDialog(); | ||||||
|  |                 } | ||||||
|  |                 else | ||||||
|  |                 { | ||||||
|  |                     this.labelEntryNotDetected.Text = myKeyPad.StringValue; | ||||||
|  |                     this.ParentForm.ParentForm.CurrentSystemParameter9507.EntryNotDetectedWeight = myKeyPad.StringValue.Replace(".", ""); | ||||||
|  | 
 | ||||||
|  |                     value = Helper.StringZeroFillDigits7(this.ParentForm.ParentForm.CurrentSystemParameter9507.EntryNotDetectedWeight); | ||||||
|  |                     this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Write, CommunicationID.MainBoard, CommunicationAddress._6010_EntryNotDetectedWeight, value); | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |         } | ||||||
| 
 | 
 | ||||||
|         private void buttonCapture_Click(object sender, EventArgs e) |         private void buttonCapture_Click(object sender, EventArgs e) | ||||||
|         { |         { | ||||||
|  |  | ||||||
|  | @ -63,7 +63,7 @@ namespace ITC81DB_2.Controls | ||||||
|         private void DefaultSetting() |         private void DefaultSetting() | ||||||
|         { |         { | ||||||
|             this.labelSerialNo.Text = this.ParentForm.ParentForm.SystemConfig.SerialNumber; |             this.labelSerialNo.Text = this.ParentForm.ParentForm.SystemConfig.SerialNumber; | ||||||
|             this.labelDisplayVer.Text = "2.4.0"; |             this.labelDisplayVer.Text = "2.5.0"; | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         public void UpdateMainBoardVersionDisplay(string version) |         public void UpdateMainBoardVersionDisplay(string version) | ||||||
|  |  | ||||||
|  | @ -351,7 +351,11 @@ namespace ITC81DB_2.Controls | ||||||
| 
 | 
 | ||||||
|             // 영점 아이콘표시 |             // 영점 아이콘표시 | ||||||
|             if (data.Status == DataStore.WeightStatus.WeightZero) |             if (data.Status == DataStore.WeightStatus.WeightZero) | ||||||
|  |             { | ||||||
|  |                 if (this.ParentForm.ParentForm.IsJudgmentNow1 == true) | ||||||
|  |                     this.ParentForm.ParentForm.IsJudgmentNow1 = false; | ||||||
|                 this.pictureBoxIconZero1.Visible = true; |                 this.pictureBoxIconZero1.Visible = true; | ||||||
|  |             } | ||||||
|             else |             else | ||||||
|                 this.pictureBoxIconZero1.Visible = false; |                 this.pictureBoxIconZero1.Visible = false; | ||||||
| 
 | 
 | ||||||
|  | @ -369,7 +373,11 @@ namespace ITC81DB_2.Controls | ||||||
| 
 | 
 | ||||||
|             // 영점 아이콘표시 |             // 영점 아이콘표시 | ||||||
|             if (data.Status == DataStore.WeightStatus.WeightZero) |             if (data.Status == DataStore.WeightStatus.WeightZero) | ||||||
|  |             { | ||||||
|  |                 if (this.ParentForm.ParentForm.IsJudgmentNow2 == true) | ||||||
|  |                     this.ParentForm.ParentForm.IsJudgmentNow2 = false; | ||||||
|                 this.pictureBoxIconZero2.Visible = true; |                 this.pictureBoxIconZero2.Visible = true; | ||||||
|  |             } | ||||||
|             else |             else | ||||||
|                 this.pictureBoxIconZero2.Visible = false; |                 this.pictureBoxIconZero2.Visible = false; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -567,6 +567,8 @@ namespace ITC81DB_2 | ||||||
|         public static readonly string _6006_Chattering = "6006"; |         public static readonly string _6006_Chattering = "6006"; | ||||||
|         // 옵션 - 외부 NG 입력 사용 |         // 옵션 - 외부 NG 입력 사용 | ||||||
|         public static readonly string _6007_ExternalInput = "6007"; |         public static readonly string _6007_ExternalInput = "6007"; | ||||||
|  |         // 옵션 - 제품진입 미감지 | ||||||
|  |         public static readonly string _6010_EntryNotDetectedWeight = "6010"; | ||||||
|         // 옵션 - OPT2_포트 |         // 옵션 - OPT2_포트 | ||||||
|         public static readonly string _6231_OPT2Port = "6231"; |         public static readonly string _6231_OPT2Port = "6231"; | ||||||
|         // 옵션 - OPT2_지연시간1 |         // 옵션 - OPT2_지연시간1 | ||||||
|  | @ -1222,6 +1224,7 @@ namespace ITC81DB_2 | ||||||
|         private bool m_IsPressureSensingError; |         private bool m_IsPressureSensingError; | ||||||
|         private bool m_IsEmergencyStop; |         private bool m_IsEmergencyStop; | ||||||
|         private bool m_IsDoorInterlock; |         private bool m_IsDoorInterlock; | ||||||
|  |         private bool m_IsEntryNotDetected; | ||||||
| 
 | 
 | ||||||
|         private DateTime m_StartTime; |         private DateTime m_StartTime; | ||||||
|         private DateTime m_StopTime; |         private DateTime m_StopTime; | ||||||
|  | @ -1289,6 +1292,11 @@ namespace ITC81DB_2 | ||||||
|             get { return this.m_IsDoorInterlock; } |             get { return this.m_IsDoorInterlock; } | ||||||
|             set { this.m_IsDoorInterlock = value; } |             set { this.m_IsDoorInterlock = value; } | ||||||
|         } |         } | ||||||
|  |         public bool IsEntryNotDetected | ||||||
|  |         { | ||||||
|  |             get { return this.m_IsEntryNotDetected; } | ||||||
|  |             set { this.m_IsEntryNotDetected = value; } | ||||||
|  |         } | ||||||
| 
 | 
 | ||||||
|         public DateTime StartTime |         public DateTime StartTime | ||||||
|         { |         { | ||||||
|  | @ -1590,6 +1598,7 @@ namespace ITC81DB_2 | ||||||
|             this.IsInverterError = false; |             this.IsInverterError = false; | ||||||
|             this.IsPressureSensingError = false; |             this.IsPressureSensingError = false; | ||||||
|             this.IsDoorInterlock = false; |             this.IsDoorInterlock = false; | ||||||
|  |             this.IsEntryNotDetected = false; | ||||||
| 
 | 
 | ||||||
|             this.StartTime = new DateTime(1111, 11, 11, 11, 11, 11); |             this.StartTime = new DateTime(1111, 11, 11, 11, 11, 11); | ||||||
|             this.StopTime = new DateTime(1111, 11, 11, 11, 11, 11); |             this.StopTime = new DateTime(1111, 11, 11, 11, 11, 11); | ||||||
|  | @ -1980,6 +1989,7 @@ namespace ITC81DB_2 | ||||||
|         private string m_RelayOnTime; |         private string m_RelayOnTime; | ||||||
|         private string m_Chattering; |         private string m_Chattering; | ||||||
|         private string m_SorterDoubleEntry; |         private string m_SorterDoubleEntry; | ||||||
|  |         private string m_EntryNotDetectedWeight; | ||||||
|          |          | ||||||
|         private string m_Dummy1; |         private string m_Dummy1; | ||||||
|         private string m_Dummy2; |         private string m_Dummy2; | ||||||
|  | @ -1993,10 +2003,6 @@ namespace ITC81DB_2 | ||||||
|         private string m_Dummy10; |         private string m_Dummy10; | ||||||
|         private string m_Dummy11; |         private string m_Dummy11; | ||||||
|         private string m_Dummy12; |         private string m_Dummy12; | ||||||
|         private string m_Dummy13; |  | ||||||
|         private string m_Dummy14; |  | ||||||
|         private string m_Dummy15; |  | ||||||
|         private string m_Dummy16; |  | ||||||
|         #endregion |         #endregion | ||||||
| 
 | 
 | ||||||
|         #region Constructor |         #region Constructor | ||||||
|  | @ -2027,6 +2033,11 @@ namespace ITC81DB_2 | ||||||
|             get { return this.m_SorterDoubleEntry; } |             get { return this.m_SorterDoubleEntry; } | ||||||
|             set { this.m_SorterDoubleEntry = value; } |             set { this.m_SorterDoubleEntry = value; } | ||||||
|         } |         } | ||||||
|  |         public string EntryNotDetectedWeight | ||||||
|  |         { | ||||||
|  |             get { return this.m_EntryNotDetectedWeight; } | ||||||
|  |             set { this.m_EntryNotDetectedWeight = value; } | ||||||
|  |         }  | ||||||
| 
 | 
 | ||||||
|         public string Dummy1 |         public string Dummy1 | ||||||
|         { |         { | ||||||
|  | @ -2088,26 +2099,6 @@ namespace ITC81DB_2 | ||||||
|             get { return this.m_Dummy12; } |             get { return this.m_Dummy12; } | ||||||
|             set { this.m_Dummy12 = value; } |             set { this.m_Dummy12 = value; } | ||||||
|         } |         } | ||||||
|         public string Dummy13 |  | ||||||
|         { |  | ||||||
|             get { return this.m_Dummy13; } |  | ||||||
|             set { this.m_Dummy13 = value; } |  | ||||||
|         } |  | ||||||
|         public string Dummy14 |  | ||||||
|         { |  | ||||||
|             get { return this.m_Dummy14; } |  | ||||||
|             set { this.m_Dummy14 = value; } |  | ||||||
|         } |  | ||||||
|         public string Dummy15 |  | ||||||
|         { |  | ||||||
|             get { return this.m_Dummy15; } |  | ||||||
|             set { this.m_Dummy15 = value; } |  | ||||||
|         } |  | ||||||
|         public string Dummy16 |  | ||||||
|         { |  | ||||||
|             get { return this.m_Dummy16; } |  | ||||||
|             set { this.m_Dummy16 = value; } |  | ||||||
|         }  |  | ||||||
|         #endregion |         #endregion | ||||||
| 
 | 
 | ||||||
|         #region Method |         #region Method | ||||||
|  | @ -2117,6 +2108,7 @@ namespace ITC81DB_2 | ||||||
|             this.RelayOnTime = "500"; |             this.RelayOnTime = "500"; | ||||||
|             this.Chattering = "0"; |             this.Chattering = "0"; | ||||||
|             this.SorterDoubleEntry = "0"; |             this.SorterDoubleEntry = "0"; | ||||||
|  |             this.EntryNotDetectedWeight = "0"; | ||||||
|              |              | ||||||
|             this.Dummy1 = "0"; |             this.Dummy1 = "0"; | ||||||
|             this.Dummy2 = "0"; |             this.Dummy2 = "0"; | ||||||
|  | @ -2130,10 +2122,6 @@ namespace ITC81DB_2 | ||||||
|             this.Dummy10 = "0"; |             this.Dummy10 = "0"; | ||||||
|             this.Dummy11 = "0"; |             this.Dummy11 = "0"; | ||||||
|             this.Dummy12 = "0"; |             this.Dummy12 = "0"; | ||||||
|             this.Dummy13 = "0"; |  | ||||||
|             this.Dummy14 = "0"; |  | ||||||
|             this.Dummy15 = "0"; |  | ||||||
|             this.Dummy16 = "0"; |  | ||||||
|         } |         } | ||||||
|         #endregion |         #endregion | ||||||
|     }  |     }  | ||||||
|  | @ -2170,6 +2158,8 @@ namespace ITC81DB_2 | ||||||
|         public string SorterDetecting; |         public string SorterDetecting; | ||||||
|         [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 10)] |         [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 10)] | ||||||
|         public string OptionBoard; |         public string OptionBoard; | ||||||
|  |         [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 10)] | ||||||
|  |         public string EntryNotDetectedWeight; | ||||||
| 
 | 
 | ||||||
|         [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 10)] |         [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 10)] | ||||||
|         public string Dummy1; |         public string Dummy1; | ||||||
|  | @ -2181,8 +2171,6 @@ namespace ITC81DB_2 | ||||||
|         public string Dummy4; |         public string Dummy4; | ||||||
|         [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 10)] |         [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 10)] | ||||||
|         public string Dummy5; |         public string Dummy5; | ||||||
|         [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 10)] |  | ||||||
|         public string Dummy6; |  | ||||||
|     } |     } | ||||||
|     #endregion |     #endregion | ||||||
|     #region SystemParameter9508 |     #region SystemParameter9508 | ||||||
|  |  | ||||||
|  | @ -23,6 +23,8 @@ namespace ITC81DB_2.Forms | ||||||
|         private int CommunicationCheckCount; |         private int CommunicationCheckCount; | ||||||
|         public bool IsBootingComplete; |         public bool IsBootingComplete; | ||||||
|         public int BufferSmartUart; |         public int BufferSmartUart; | ||||||
|  |         public bool IsJudgmentNow1; | ||||||
|  |         public bool IsJudgmentNow2; | ||||||
| 
 | 
 | ||||||
|         // 로그온 색상 |         // 로그온 색상 | ||||||
|         public Color ColorLogOff; |         public Color ColorLogOff; | ||||||
|  | @ -135,6 +137,8 @@ namespace ITC81DB_2.Forms | ||||||
|             this.CommunicationCheckCount = 0; |             this.CommunicationCheckCount = 0; | ||||||
|             this.IsBootingComplete = false; |             this.IsBootingComplete = false; | ||||||
|             this.BufferSmartUart = 1000000; |             this.BufferSmartUart = 1000000; | ||||||
|  |             this.IsJudgmentNow1 = false; | ||||||
|  |             this.IsJudgmentNow2 = false; | ||||||
| 
 | 
 | ||||||
|             this.ColorLogOff = Color.Red; |             this.ColorLogOff = Color.Red; | ||||||
|             this.ColorLogOn = Color.Lime; |             this.ColorLogOn = Color.Lime; | ||||||
|  | @ -283,7 +287,7 @@ namespace ITC81DB_2.Forms | ||||||
|             this.TransferDataStream(CommunicationCommand.Write, CommunicationID.MainBoard, CommunicationAddress._9017_SystemParameterWrite, sb.ToString()); |             this.TransferDataStream(CommunicationCommand.Write, CommunicationID.MainBoard, CommunicationAddress._9017_SystemParameterWrite, sb.ToString()); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         private void ConverterAlarm(ref WeightData data, string alarm) |         private void ConverterAlarm(ref WeightData data, string alarm, int laneNum) | ||||||
|         { |         { | ||||||
|             string sValue1 = "", sValue2 = "", sValue3 = ""; |             string sValue1 = "", sValue2 = "", sValue3 = ""; | ||||||
| 
 | 
 | ||||||
|  | @ -314,11 +318,30 @@ namespace ITC81DB_2.Forms | ||||||
|             { } |             { } | ||||||
|             else |             else | ||||||
|             { } |             { } | ||||||
|             // 알람 8- |             // 알람 8-제품진입 미감지 | ||||||
|             if (sValue2[0] == '0') |             if (sValue2[0] == '0') | ||||||
|             { } |                 data.IsEntryNotDetected = false; | ||||||
|             else |             else | ||||||
|             { } |             { | ||||||
|  |                 if (laneNum == 1) | ||||||
|  |                 { | ||||||
|  |                     if (this.IsJudgmentNow1 == false) | ||||||
|  |                     { | ||||||
|  |                         data.IsEntryNotDetected = true; | ||||||
|  |                         if (this.CurrentSystemStatus.Equipment == DataStore.EquipmentStatus.Start) | ||||||
|  |                             this.TransferData(CommunicationCommand.Stop, CommunicationID.MainBoard); | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |                 else | ||||||
|  |                 { | ||||||
|  |                     if (this.IsJudgmentNow2 == false) | ||||||
|  |                     { | ||||||
|  |                         data.IsEntryNotDetected = true; | ||||||
|  |                         if (this.CurrentSystemStatus.Equipment == DataStore.EquipmentStatus.Start) | ||||||
|  |                             this.TransferData(CommunicationCommand.Stop, CommunicationID.MainBoard); | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|             // 알람 7-리젝터 동작 감지 |             // 알람 7-리젝터 동작 감지 | ||||||
|             if (sValue2[1] == '0') |             if (sValue2[1] == '0') | ||||||
|             { } |             { } | ||||||
|  | @ -613,8 +636,8 @@ namespace ITC81DB_2.Forms | ||||||
|             #region Test 용 통신 로그 |             #region Test 용 통신 로그 | ||||||
|             fullPath = this.PathDataBackupFolder + "Communicationlog.txt"; |             fullPath = this.PathDataBackupFolder + "Communicationlog.txt"; | ||||||
|             this.smartFileCommunicationLog.FilePathName = fullPath; |             this.smartFileCommunicationLog.FilePathName = fullPath; | ||||||
|             //this.smartFileCommunicationLog.Open(); |             this.smartFileCommunicationLog.Open(); | ||||||
|             //this.IsCommunicationLogOpen = true; |             this.IsCommunicationLogOpen = true; | ||||||
|             #endregion |             #endregion | ||||||
|         } |         } | ||||||
|         public void CloseSmartUartLink() |         public void CloseSmartUartLink() | ||||||
|  | @ -877,6 +900,9 @@ namespace ITC81DB_2.Forms | ||||||
|                         this.SaveCounterFile2(this.CurrentWeightData2, this.SystemConfig.ProductNumber - 1); |                         this.SaveCounterFile2(this.CurrentWeightData2, this.SystemConfig.ProductNumber - 1); | ||||||
|                     } |                     } | ||||||
| 
 | 
 | ||||||
|  |                     // 운전 시, 진입센서 미감지 Pop up 창 자동 Close | ||||||
|  |                     this.ChildFormMainDisplay.PopUpWarningClose(); | ||||||
|  | 
 | ||||||
|                     if (this.CurrentSystemStatus.CurrentDisplay == DataStore.DisplayStore.MainDisplay) |                     if (this.CurrentSystemStatus.CurrentDisplay == DataStore.DisplayStore.MainDisplay) | ||||||
|                         this.ChildFormMainDisplay.UpdateEquipmentStatusDisplay(this.CurrentSystemStatus.Equipment); |                         this.ChildFormMainDisplay.UpdateEquipmentStatusDisplay(this.CurrentSystemStatus.Equipment); | ||||||
|                     else |                     else | ||||||
|  | @ -1194,22 +1220,19 @@ namespace ITC81DB_2.Forms | ||||||
|                         this.CurrentSystemParameter9507.RelayOnTime = receiveData.Substring(4, 4).Trim(); |                         this.CurrentSystemParameter9507.RelayOnTime = receiveData.Substring(4, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.SorterDoubleEntry = receiveData.Substring(8, 4).Trim(); |                         this.CurrentSystemParameter9507.SorterDoubleEntry = receiveData.Substring(8, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Chattering = receiveData.Substring(12, 4).Trim(); |                         this.CurrentSystemParameter9507.Chattering = receiveData.Substring(12, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy1 = receiveData.Substring(16, 4).Trim(); |                         this.CurrentSystemParameter9507.EntryNotDetectedWeight = receiveData.Substring(16, 7).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy2 = receiveData.Substring(20, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy1 = receiveData.Substring(23, 7).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy3 = receiveData.Substring(24, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy2 = receiveData.Substring(30, 7).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy4 = receiveData.Substring(28, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy3 = receiveData.Substring(37, 7).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy5 = receiveData.Substring(32, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy4 = receiveData.Substring(44, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy6 = receiveData.Substring(36, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy5 = receiveData.Substring(48, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy7 = receiveData.Substring(40, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy6 = receiveData.Substring(52, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy8 = receiveData.Substring(44, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy7 = receiveData.Substring(56, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy9 = receiveData.Substring(48, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy8 = receiveData.Substring(60, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy10 = receiveData.Substring(52, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy9 = receiveData.Substring(64, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy11 = receiveData.Substring(56, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy10 = receiveData.Substring(68, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy12 = receiveData.Substring(60, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy11 = receiveData.Substring(72, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy13 = receiveData.Substring(64, 4).Trim(); |                         this.CurrentSystemParameter9507.Dummy12 = receiveData.Substring(76, 4).Trim(); | ||||||
|                         this.CurrentSystemParameter9507.Dummy14 = receiveData.Substring(68, 4).Trim(); |  | ||||||
|                         this.CurrentSystemParameter9507.Dummy15 = receiveData.Substring(72, 4).Trim(); |  | ||||||
|                         this.CurrentSystemParameter9507.Dummy16 = receiveData.Substring(76, 4).Trim(); |  | ||||||
|                         #endregion |                         #endregion | ||||||
|                         // Read SystemParameter9508 |                         // Read SystemParameter9508 | ||||||
|                         this.TransferDataStream(CommunicationCommand.Read, CommunicationID.MainBoard, CommunicationAddress._9508_SystemParameterRead, ""); |                         this.TransferDataStream(CommunicationCommand.Read, CommunicationID.MainBoard, CommunicationAddress._9508_SystemParameterRead, ""); | ||||||
|  | @ -1429,22 +1452,22 @@ namespace ITC81DB_2.Forms | ||||||
|                         if (this.CurrentSystemStatus.Equipment == DataStore.EquipmentStatus.Stop) |                         if (this.CurrentSystemStatus.Equipment == DataStore.EquipmentStatus.Stop) | ||||||
|                         { |                         { | ||||||
|                             this.CurrentWeightData1.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); |                             this.CurrentWeightData1.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); | ||||||
|                             this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3)); |                             this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3), 1); | ||||||
|                             this.CurrentWeightData1.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); |                             this.CurrentWeightData1.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); | ||||||
|                             this.CurrentWeightData1.ADCValue = receiveData.Substring(10, 5); |                             this.CurrentWeightData1.ADCValue = receiveData.Substring(10, 5); | ||||||
| 
 | 
 | ||||||
|                             this.CurrentWeightData2.Status = Helper.StringToWeightStatus(receiveData.Substring(19, 2)); |                             this.CurrentWeightData2.Status = Helper.StringToWeightStatus(receiveData.Substring(19, 2)); | ||||||
|                             this.ConverterAlarm(ref this.CurrentWeightData2, receiveData.Substring(21, 3)); |                             this.ConverterAlarm(ref this.CurrentWeightData2, receiveData.Substring(21, 3), 2); | ||||||
|                             this.CurrentWeightData2.Weight = Helper.StringToWeight(receiveData.Substring(24, 5), this.SystemConfig.DecimalPlaces); |                             this.CurrentWeightData2.Weight = Helper.StringToWeight(receiveData.Substring(24, 5), this.SystemConfig.DecimalPlaces); | ||||||
|                             this.CurrentWeightData2.ADCValue = receiveData.Substring(29, 5); |                             this.CurrentWeightData2.ADCValue = receiveData.Substring(29, 5); | ||||||
|                         } |                         } | ||||||
|                         else |                         else | ||||||
|                         { |                         { | ||||||
|                             this.CurrentWeightData1.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); |                             this.CurrentWeightData1.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); | ||||||
|                             this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3)); |                             this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3), 1); | ||||||
| 
 | 
 | ||||||
|                             this.CurrentWeightData2.Status = Helper.StringToWeightStatus(receiveData.Substring(19, 2)); |                             this.CurrentWeightData2.Status = Helper.StringToWeightStatus(receiveData.Substring(19, 2)); | ||||||
|                             this.ConverterAlarm(ref this.CurrentWeightData2, receiveData.Substring(21, 3)); |                             this.ConverterAlarm(ref this.CurrentWeightData2, receiveData.Substring(21, 3), 2); | ||||||
|                         } |                         } | ||||||
| 
 | 
 | ||||||
|                         #endregion |                         #endregion | ||||||
|  | @ -1474,7 +1497,7 @@ namespace ITC81DB_2.Forms | ||||||
|                     case "A": |                     case "A": | ||||||
|                         #region Value Assign |                         #region Value Assign | ||||||
|                         this.CurrentWeightData1.JudgmentStatus = Helper.StringToJudgmentStatus(receiveData.Substring(0, 2)); |                         this.CurrentWeightData1.JudgmentStatus = Helper.StringToJudgmentStatus(receiveData.Substring(0, 2)); | ||||||
|                         this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3)); |                         this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3), 1); | ||||||
|                         this.CurrentWeightData1.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); |                         this.CurrentWeightData1.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); | ||||||
|                         this.CurrentWeightData1.WeightString = receiveData.Substring(5, 5); |                         this.CurrentWeightData1.WeightString = receiveData.Substring(5, 5); | ||||||
|                         this.CurrentWeightData1.ADCValue = receiveData.Substring(10, 5); |                         this.CurrentWeightData1.ADCValue = receiveData.Substring(10, 5); | ||||||
|  | @ -1485,6 +1508,8 @@ namespace ITC81DB_2.Forms | ||||||
|                         // 통신 제대로 받으면 ACK |                         // 통신 제대로 받으면 ACK | ||||||
|                         this.TransferData(string.Format("{0}{1}{2}", CommunicationCommand.RunWeightData, (int)DataStore.ResponseData.ACK, transferCount), CommunicationID.MainBoard); |                         this.TransferData(string.Format("{0}{1}{2}", CommunicationCommand.RunWeightData, (int)DataStore.ResponseData.ACK, transferCount), CommunicationID.MainBoard); | ||||||
| 
 | 
 | ||||||
|  |                         this.IsJudgmentNow1 = true; | ||||||
|  |                          | ||||||
|                         // 통신 COM1 |                         // 통신 COM1 | ||||||
|                         if (this.SystemConfig.SerialCOM1Mode != 0) |                         if (this.SystemConfig.SerialCOM1Mode != 0) | ||||||
|                         { |                         { | ||||||
|  | @ -1551,7 +1576,7 @@ namespace ITC81DB_2.Forms | ||||||
|                     case "B": |                     case "B": | ||||||
|                         #region Value Assign |                         #region Value Assign | ||||||
|                         this.CurrentWeightData2.JudgmentStatus = Helper.StringToJudgmentStatus(receiveData.Substring(0, 2)); |                         this.CurrentWeightData2.JudgmentStatus = Helper.StringToJudgmentStatus(receiveData.Substring(0, 2)); | ||||||
|                         this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3)); |                         this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3), 2); | ||||||
|                         this.CurrentWeightData2.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); |                         this.CurrentWeightData2.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); | ||||||
|                         this.CurrentWeightData2.WeightString = receiveData.Substring(5, 5); |                         this.CurrentWeightData2.WeightString = receiveData.Substring(5, 5); | ||||||
|                         this.CurrentWeightData2.ADCValue = receiveData.Substring(10, 5); |                         this.CurrentWeightData2.ADCValue = receiveData.Substring(10, 5); | ||||||
|  | @ -1562,6 +1587,8 @@ namespace ITC81DB_2.Forms | ||||||
|                         // 통신 제대로 받으면 ACK |                         // 통신 제대로 받으면 ACK | ||||||
|                         this.TransferData(string.Format("{0}{1}{2}", CommunicationCommand.RunWeightData, (int)DataStore.ResponseData.ACK, transferCount), CommunicationID.MainBoard); |                         this.TransferData(string.Format("{0}{1}{2}", CommunicationCommand.RunWeightData, (int)DataStore.ResponseData.ACK, transferCount), CommunicationID.MainBoard); | ||||||
| 
 | 
 | ||||||
|  |                         this.IsJudgmentNow2 = true; | ||||||
|  | 
 | ||||||
|                         // 통신 COM1 |                         // 통신 COM1 | ||||||
|                         if (this.SystemConfig.SerialCOM1Mode != 0) |                         if (this.SystemConfig.SerialCOM1Mode != 0) | ||||||
|                         { |                         { | ||||||
|  | @ -1646,12 +1673,12 @@ namespace ITC81DB_2.Forms | ||||||
|                 case "Z": |                 case "Z": | ||||||
|                     #region Value Assign |                     #region Value Assign | ||||||
|                     this.CurrentWeightData1.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); |                     this.CurrentWeightData1.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); | ||||||
|                     this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3)); |                     this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3), 1); | ||||||
|                     this.CurrentWeightData1.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); |                     this.CurrentWeightData1.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); | ||||||
|                     this.CurrentWeightData1.ADCValue = receiveData.Substring(10, 5); |                     this.CurrentWeightData1.ADCValue = receiveData.Substring(10, 5); | ||||||
| 
 | 
 | ||||||
|                     this.CurrentWeightData2.Status = Helper.StringToWeightStatus(receiveData.Substring(19, 2)); |                     this.CurrentWeightData2.Status = Helper.StringToWeightStatus(receiveData.Substring(19, 2)); | ||||||
|                     this.ConverterAlarm(ref this.CurrentWeightData2, receiveData.Substring(21, 3)); |                     this.ConverterAlarm(ref this.CurrentWeightData2, receiveData.Substring(21, 3), 2); | ||||||
|                     this.CurrentWeightData2.Weight = Helper.StringToWeight(receiveData.Substring(24, 5), this.SystemConfig.DecimalPlaces); |                     this.CurrentWeightData2.Weight = Helper.StringToWeight(receiveData.Substring(24, 5), this.SystemConfig.DecimalPlaces); | ||||||
|                     this.CurrentWeightData2.ADCValue = receiveData.Substring(29, 5); |                     this.CurrentWeightData2.ADCValue = receiveData.Substring(29, 5); | ||||||
|                     #endregion |                     #endregion | ||||||
|  | @ -1694,12 +1721,12 @@ namespace ITC81DB_2.Forms | ||||||
|                 case "Z": |                 case "Z": | ||||||
|                     #region Value Assign |                     #region Value Assign | ||||||
|                     this.CurrentWeightData1.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); |                     this.CurrentWeightData1.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); | ||||||
|                     this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3)); |                     this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3), 1); | ||||||
|                     this.CurrentWeightData1.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); |                     this.CurrentWeightData1.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); | ||||||
|                     this.CurrentWeightData1.ADCValue = receiveData.Substring(10, 5); |                     this.CurrentWeightData1.ADCValue = receiveData.Substring(10, 5); | ||||||
| 
 | 
 | ||||||
|                     this.CurrentWeightData2.Status = Helper.StringToWeightStatus(receiveData.Substring(19, 2)); |                     this.CurrentWeightData2.Status = Helper.StringToWeightStatus(receiveData.Substring(19, 2)); | ||||||
|                     this.ConverterAlarm(ref this.CurrentWeightData2, receiveData.Substring(21, 3)); |                     this.ConverterAlarm(ref this.CurrentWeightData2, receiveData.Substring(21, 3), 2); | ||||||
|                     this.CurrentWeightData2.Weight = Helper.StringToWeight(receiveData.Substring(24, 5), this.SystemConfig.DecimalPlaces); |                     this.CurrentWeightData2.Weight = Helper.StringToWeight(receiveData.Substring(24, 5), this.SystemConfig.DecimalPlaces); | ||||||
|                     this.CurrentWeightData2.ADCValue = receiveData.Substring(29, 5); |                     this.CurrentWeightData2.ADCValue = receiveData.Substring(29, 5); | ||||||
|                     #endregion |                     #endregion | ||||||
|  | @ -1722,7 +1749,7 @@ namespace ITC81DB_2.Forms | ||||||
|                 case "A": |                 case "A": | ||||||
|                     #region Value Assign |                     #region Value Assign | ||||||
|                     this.CurrentWeightData1.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); |                     this.CurrentWeightData1.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); | ||||||
|                     this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3)); |                     this.ConverterAlarm(ref this.CurrentWeightData1, receiveData.Substring(2, 3), 1); | ||||||
|                     this.CurrentWeightData1.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); |                     this.CurrentWeightData1.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); | ||||||
|                     this.CurrentWeightData1.ADCValue = receiveData.Substring(10, 5); |                     this.CurrentWeightData1.ADCValue = receiveData.Substring(10, 5); | ||||||
| 
 | 
 | ||||||
|  | @ -1737,7 +1764,7 @@ namespace ITC81DB_2.Forms | ||||||
|                 case "B": |                 case "B": | ||||||
|                     #region Value Assign |                     #region Value Assign | ||||||
|                     this.CurrentWeightData2.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); |                     this.CurrentWeightData2.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); | ||||||
|                     this.ConverterAlarm(ref this.CurrentWeightData2, receiveData.Substring(2, 3)); |                     this.ConverterAlarm(ref this.CurrentWeightData2, receiveData.Substring(2, 3), 2); | ||||||
|                     this.CurrentWeightData2.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); |                     this.CurrentWeightData2.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig.DecimalPlaces); | ||||||
|                     this.CurrentWeightData2.ADCValue = receiveData.Substring(10, 5); |                     this.CurrentWeightData2.ADCValue = receiveData.Substring(10, 5); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -65,6 +65,7 @@ | ||||||
|             this.pictureBoxIconUsbDesable = new System.Windows.Forms.PictureBox(); |             this.pictureBoxIconUsbDesable = new System.Windows.Forms.PictureBox(); | ||||||
|             this.buttonConveyorUpDown = new SmartX.SmartButton(); |             this.buttonConveyorUpDown = new SmartX.SmartButton(); | ||||||
|             this.buttonPrint2 = new SmartX.SmartButton(); |             this.buttonPrint2 = new SmartX.SmartButton(); | ||||||
|  |             this.labelAlarmWindow = new SmartX.SmartLabel(); | ||||||
|             ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit(); |             ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit(); | ||||||
|             this.panel1.SuspendLayout(); |             this.panel1.SuspendLayout(); | ||||||
|             this.SuspendLayout(); |             this.SuspendLayout(); | ||||||
|  | @ -771,12 +772,36 @@ | ||||||
|             this.buttonPrint2.Visible = false; |             this.buttonPrint2.Visible = false; | ||||||
|             this.buttonPrint2.Click += new System.EventHandler(this.buttonPrint2_Click); |             this.buttonPrint2.Click += new System.EventHandler(this.buttonPrint2_Click); | ||||||
|             //  |             //  | ||||||
|  |             // labelAlarmWindow | ||||||
|  |             //  | ||||||
|  |             this.labelAlarmWindow.BackColor = System.Drawing.Color.DarkRed; | ||||||
|  |             this.labelAlarmWindow.BackPictureBox = null; | ||||||
|  |             this.labelAlarmWindow.BackPictureBox1 = null; | ||||||
|  |             this.labelAlarmWindow.BackPictureBox2 = null; | ||||||
|  |             this.labelAlarmWindow.BorderColor = System.Drawing.Color.Black; | ||||||
|  |             this.labelAlarmWindow.BorderStyle = System.Windows.Forms.BorderStyle.None; | ||||||
|  |             this.labelAlarmWindow.Font = new System.Drawing.Font("새굴림", 20F, System.Drawing.FontStyle.Bold); | ||||||
|  |             this.labelAlarmWindow.ForeColor = System.Drawing.Color.White; | ||||||
|  |             this.labelAlarmWindow.InitVisible = true; | ||||||
|  |             this.labelAlarmWindow.LineSpacing = 0F; | ||||||
|  |             this.labelAlarmWindow.Location = new System.Drawing.Point(140, 125); | ||||||
|  |             this.labelAlarmWindow.Name = "labelAlarmWindow"; | ||||||
|  |             this.labelAlarmWindow.Size = new System.Drawing.Size(500, 100); | ||||||
|  |             this.labelAlarmWindow.TabIndex = 576; | ||||||
|  |             this.labelAlarmWindow.Text = "선별부 에러"; | ||||||
|  |             this.labelAlarmWindow.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle; | ||||||
|  |             this.labelAlarmWindow.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; | ||||||
|  |             this.labelAlarmWindow.Visible = false; | ||||||
|  |             this.labelAlarmWindow.Wordwrap = false; | ||||||
|  |             this.labelAlarmWindow.Click += new System.EventHandler(this.labelAlarmWindow_Click); | ||||||
|  |             //  | ||||||
|             // FormMainDisplay |             // FormMainDisplay | ||||||
|             //  |             //  | ||||||
|             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); |             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); | ||||||
|             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi; |             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi; | ||||||
|             this.AutoScroll = true; |             this.AutoScroll = true; | ||||||
|             this.ClientSize = new System.Drawing.Size(800, 600); |             this.ClientSize = new System.Drawing.Size(800, 600); | ||||||
|  |             this.Controls.Add(this.labelAlarmWindow); | ||||||
|             this.Controls.Add(this.buttonPrint2); |             this.Controls.Add(this.buttonPrint2); | ||||||
|             this.Controls.Add(this.buttonConveyorUpDown); |             this.Controls.Add(this.buttonConveyorUpDown); | ||||||
|             this.Controls.Add(this.pictureBoxIconUsbEnable); |             this.Controls.Add(this.pictureBoxIconUsbEnable); | ||||||
|  | @ -849,5 +874,6 @@ | ||||||
|         private System.Windows.Forms.PictureBox pictureBoxIconUsbDesable; |         private System.Windows.Forms.PictureBox pictureBoxIconUsbDesable; | ||||||
|         private SmartX.SmartButton buttonConveyorUpDown; |         private SmartX.SmartButton buttonConveyorUpDown; | ||||||
|         private SmartX.SmartButton buttonPrint2; |         private SmartX.SmartButton buttonPrint2; | ||||||
|  |         private SmartX.SmartLabel labelAlarmWindow; | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  | @ -191,6 +191,8 @@ namespace ITC81DB_2.Forms | ||||||
|                 if (this.AlarmListBool[2] != data1.IsEmergencyStop) flagChange = true; |                 if (this.AlarmListBool[2] != data1.IsEmergencyStop) flagChange = true; | ||||||
|                 if (this.AlarmListBool[3] != data1.IsEntrySensorError) flagChange = true; |                 if (this.AlarmListBool[3] != data1.IsEntrySensorError) flagChange = true; | ||||||
|                 if (this.AlarmListBool[4] != data2.IsEntrySensorError) flagChange = true; |                 if (this.AlarmListBool[4] != data2.IsEntrySensorError) flagChange = true; | ||||||
|  |                 if (this.AlarmListBool[5] != data1.IsEntryNotDetected) flagChange = true; | ||||||
|  |                 if (this.AlarmListBool[6] != data2.IsEntryNotDetected) flagChange = true; | ||||||
|             } |             } | ||||||
| 
 | 
 | ||||||
|             this.AlarmListBool.Clear(); |             this.AlarmListBool.Clear(); | ||||||
|  | @ -199,6 +201,8 @@ namespace ITC81DB_2.Forms | ||||||
|             this.AlarmListBool.Add(data1.IsEmergencyStop); |             this.AlarmListBool.Add(data1.IsEmergencyStop); | ||||||
|             this.AlarmListBool.Add(data1.IsEntrySensorError); |             this.AlarmListBool.Add(data1.IsEntrySensorError); | ||||||
|             this.AlarmListBool.Add(data2.IsEntrySensorError); |             this.AlarmListBool.Add(data2.IsEntrySensorError); | ||||||
|  |             this.AlarmListBool.Add(data1.IsEntryNotDetected); | ||||||
|  |             this.AlarmListBool.Add(data2.IsEntryNotDetected); | ||||||
| 
 | 
 | ||||||
|             foreach (bool listBool in this.AlarmListBool) |             foreach (bool listBool in this.AlarmListBool) | ||||||
|             { |             { | ||||||
|  | @ -234,6 +238,22 @@ namespace ITC81DB_2.Forms | ||||||
|                 this.MainDisplayAlarm.listBoxMessage.Items.Add("#1 Entry Sensor Error"); |                 this.MainDisplayAlarm.listBoxMessage.Items.Add("#1 Entry Sensor Error"); | ||||||
|             if (data2.IsEntrySensorError == true) |             if (data2.IsEntrySensorError == true) | ||||||
|                 this.MainDisplayAlarm.listBoxMessage.Items.Add("#2 Entry Sensor Error"); |                 this.MainDisplayAlarm.listBoxMessage.Items.Add("#2 Entry Sensor Error"); | ||||||
|  |             if (data1.IsEntryNotDetected == true) | ||||||
|  |             { | ||||||
|  |                 this.MainDisplayAlarm.listBoxMessage.Items.Add("#1 Entry Not Detected"); | ||||||
|  |                 if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.Korean) | ||||||
|  |                     this.PopUpWarning("제품진입 미감지"); | ||||||
|  |                 else | ||||||
|  |                     this.PopUpWarning("Entry not detected"); | ||||||
|  |             } | ||||||
|  |             if (data2.IsEntryNotDetected == true) | ||||||
|  |             { | ||||||
|  |                 this.MainDisplayAlarm.listBoxMessage.Items.Add("#2 Entry Not Detected"); | ||||||
|  |                 if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.Korean) | ||||||
|  |                     this.PopUpWarning("제품진입 미감지"); | ||||||
|  |                 else | ||||||
|  |                     this.PopUpWarning("Entry not detected"); | ||||||
|  |             } | ||||||
| 
 | 
 | ||||||
|             if (flagChange == true && this.MainDisplayAlarm.listBoxMessage.Items.Count > 0) |             if (flagChange == true && this.MainDisplayAlarm.listBoxMessage.Items.Count > 0) | ||||||
|             { |             { | ||||||
|  | @ -576,6 +596,17 @@ namespace ITC81DB_2.Forms | ||||||
|             if (this.MainDisplayMenu != null) |             if (this.MainDisplayMenu != null) | ||||||
|                 this.MainDisplayMenu.UpdateStartWeightDisplay2(status, data); |                 this.MainDisplayMenu.UpdateStartWeightDisplay2(status, data); | ||||||
|         } |         } | ||||||
|  |         public void PopUpWarning(string warning) | ||||||
|  |         { | ||||||
|  |             this.labelAlarmWindow.Text = warning; | ||||||
|  |             this.labelAlarmWindow.BringToFront(); | ||||||
|  |             this.labelAlarmWindow.Visible = true; | ||||||
|  |         } | ||||||
|  |         public void PopUpWarningClose() | ||||||
|  |         { | ||||||
|  |             if (this.labelAlarmWindow.Visible == true) | ||||||
|  |                 this.labelAlarmWindow.Visible = false; | ||||||
|  |         } | ||||||
| 
 | 
 | ||||||
|         public void CurrentBottomMenuControlEnable(DataStore.EquipmentStatus status) |         public void CurrentBottomMenuControlEnable(DataStore.EquipmentStatus status) | ||||||
|         { |         { | ||||||
|  | @ -824,6 +855,11 @@ namespace ITC81DB_2.Forms | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  |         private void labelAlarmWindow_Click(object sender, EventArgs e) | ||||||
|  |         { | ||||||
|  |             this.PopUpWarningClose(); | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|         private void buttonPrint1_Click(object sender, EventArgs e) |         private void buttonPrint1_Click(object sender, EventArgs e) | ||||||
|         { |         { | ||||||
|             if (this.buttonPrint1.ButtonStatus == SmartButton.BUTSTATUS.DOWN) |             if (this.buttonPrint1.ButtonStatus == SmartButton.BUTSTATUS.DOWN) | ||||||
|  |  | ||||||
											
												
													File diff suppressed because it is too large
													Load Diff
												
											
										
									
								|  | @ -13,6 +13,19 @@ | ||||||
| 	2열 기본형 컨베어 계량기 | 	2열 기본형 컨베어 계량기 | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
|  | @ Ver 2.5.0 by CJY | ||||||
|  | 	- 2022.12.05 | ||||||
|  | 	- Ver 2.4.0 Modify | ||||||
|  | 	- 제품진입 미감지 기능 추가(레드마인 #2818 참고) | ||||||
|  | 	  1. 엔지니어 설정 '제품진입 미감지' 0.0 초과일 경우, 기능 작동 | ||||||
|  | 	  2. 알람 8 - 제품진입 미감지 추가 | ||||||
|  | 	  3. IsJudgmentNow1, 2 판정 시 true로 변경 -> 영점표시 시 false | ||||||
|  | 	     false일 경우만 알람 발생 | ||||||
|  | 	     알람 발생 시, 장비 정지 신호 메인보드로 전송 | ||||||
|  | 	  4. labelAlarmWindow 추가 -> 현재 제품진입 미감지 시에만 Pop up됨 | ||||||
|  | 	     창 클릭 시, 운전 시 해제 | ||||||
|  | 	  5. 알람 해제 조건 : 정지 시 | ||||||
|  | 
 | ||||||
| @ Ver 2.4.0 by CJY | @ Ver 2.4.0 by CJY | ||||||
| 	- 2022.07.29 | 	- 2022.07.29 | ||||||
| 	- Ver 2.3.0 Modify | 	- Ver 2.3.0 Modify | ||||||
|  |  | ||||||
											
												Binary file not shown.
											
										
									
								
											
												Binary file not shown.
											
										
									
								
											
												Binary file not shown.
											
										
									
								
		Loading…
	
		Reference in New Issue