Add QRValidation project to repository
- Added QRValidation vision control system - Includes CapCleaningControl UI components - WebSocket-based barcode validation system - Support for Crevis PLC integration - Test projects for PLC emulator, motion, IO panel, and Modbus 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
86
QRValidation/CapCleaningControl/CPicker.cs
Normal file
86
QRValidation/CapCleaningControl/CPicker.cs
Normal file
@@ -0,0 +1,86 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace UIControl
|
||||
{
|
||||
public class CPicker
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 릴의 크기가 들어있음 (7 or 13)
|
||||
/// </summary>
|
||||
public string ReelSize { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 릴이 있는 경우 해당 릴이 어느 포트에서 왔는지의 번호
|
||||
/// </summary>
|
||||
public short PortIndex { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 현재 작업이 프론트 포트의 작업인가? (portindex 값을 가지고 판단함)
|
||||
/// </summary>
|
||||
public Boolean isFrontJob
|
||||
{
|
||||
get
|
||||
{
|
||||
if (PortIndex <= 1) return true;
|
||||
else return false;
|
||||
}
|
||||
}
|
||||
|
||||
public Boolean Overload { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// VAC센서의 값을 가지고 있음, 현재 릴이 감지되었는가?
|
||||
/// </summary>
|
||||
public Boolean isReelDetect
|
||||
{
|
||||
get
|
||||
{
|
||||
return VacDetect.Where(t => t == true).Count() > 0;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// PICK후 60mm위치에서 미리 확인한 감지 상태값
|
||||
/// 이값을 가지고 도중에 떨궜을 상황을 감지한다
|
||||
/// </summary>
|
||||
public Boolean PreCheckItemOn { get; set; }
|
||||
public Boolean HasRealItemOn { get; set; }
|
||||
public Boolean ItemOn { get; set; }
|
||||
public Boolean[] VacDetect { get; set; }
|
||||
public Boolean[] VacOutput { get; set; }
|
||||
public CPicker()
|
||||
{
|
||||
this.Overload = false;
|
||||
ReelSize = "7";
|
||||
PortIndex = -1;
|
||||
HasRealItemOn = false;
|
||||
PreCheckItemOn = false;
|
||||
}
|
||||
public void Clear()
|
||||
{
|
||||
this.Overload = false;
|
||||
ItemOn = false;
|
||||
ReelSize = "--";
|
||||
PortIndex = -1;
|
||||
if(VacDetect != null && VacDetect.Length > 0)
|
||||
{
|
||||
for (int i = 0; i < VacDetect.Length; i++)
|
||||
VacDetect[i] = false;
|
||||
}
|
||||
if (VacOutput != null && VacOutput.Length > 0)
|
||||
{
|
||||
for (int i = 0; i < VacOutput.Length; i++)
|
||||
VacOutput[i] = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user