添加 MX-PD-盘古 项目文件

将 MX-PD-盘古 - new 目录下的所有文件添加到主仓库
This commit is contained in:
Shi.Ji
2026-05-18 11:43:09 +08:00
parent 03632a379d
commit e31d3560bb
739 changed files with 99783 additions and 0 deletions

View File

@@ -0,0 +1,441 @@
using MwFramework.Controls.UIControl;
using MwFramework.ManagerService;
using Stylet;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MaxwellFramework.Core.Attributes;
using System.ComponentModel.Composition;
namespace MXJM.Parameter.Maintance
{
[Export(typeof(IParameter))]
public class HeightBaseSetting : ParameterBase
{
public HeightBaseItem HeightBaseItem { get; set; } = new HeightBaseItem();
public DiaHeightItem DiaHeightItem { get; set; } = new DiaHeightItem();
public CapHeightItem CapHeightItem { get; set; } = new CapHeightItem();
public override void Copy(IParameter source)
{
HeightBaseSetting setting = source as HeightBaseSetting;
if (setting != null)
{
ReflectionExtension.Copy<HeightBaseItem>(HeightBaseItem, setting.HeightBaseItem);
ReflectionExtension.Copy<DiaHeightItem>(DiaHeightItem, setting.DiaHeightItem);
ReflectionExtension.Copy<CapHeightItem>(CapHeightItem, setting.CapHeightItem);
}
}
}
public class HeightBaseItem : PropertyChangedBase, IParameterItem
{
private double _measureWaferHeightX11;
/// <summary>
/// 测量方片时X11坐标
/// </summary>
[WatchValue("测量方片时X11坐标")]
public double MeasureWaferHeightX11
{
get { return _measureWaferHeightX11; }
set { if (_measureWaferHeightX11 != value) { _measureWaferHeightX11 = value; OnPropertyChanged(nameof(MeasureWaferHeightX11)); } }
}
private double _measureWaferHeightY11;
/// <summary>
/// 测量方片时Y11坐标
/// </summary>
[WatchValue("测量方片时Y11坐标")]
public double MeasureWaferHeightY11
{
get { return _measureWaferHeightY11; }
set { if (_measureWaferHeightY11 != value) { _measureWaferHeightY11 = value; OnPropertyChanged(nameof(MeasureWaferHeightY11)); } }
}
//龙门2避让位
private double _avoidancePositionX21;
[WatchValue("龙门X21的避让位")]
public double AvoidancePositionX21
{
get { return _avoidancePositionX21; }
set { if (_avoidancePositionX21 != value) { _avoidancePositionX21 = value; OnPropertyChanged(nameof(AvoidancePositionX21)); } }
}
private double _avoidancePositionY21;
[WatchValue("龙门Y21的避让位")]
public double AvoidancePositionY21
{
get { return _avoidancePositionY21; }
set { if (_avoidancePositionY21 != value) { _avoidancePositionY21 = value; OnPropertyChanged(nameof(AvoidancePositionY21)); } }
}
private double _stageDatumHeight;
[WatchValue("载台基准高度")]
/// <summary>
/// 载台基准高度
/// </summary>
public double StageDatumHeight
{
get { return _stageDatumHeight; }
set { if (_stageDatumHeight != value) { _stageDatumHeight = value; OnPropertyChanged(nameof(StageDatumHeight)); } }
}
private double _needleTouchWaferZHeight;
[WatchValue("刺晶头接触到Wafer高度")]
/// <summary>
/// 刺晶头接触到Wafer高度
/// </summary>
public double NeedleTouchWaferZHeight
{
get { return _needleTouchWaferZHeight; }
set { if (_needleTouchWaferZHeight != value) { _needleTouchWaferZHeight = value; OnPropertyChanged(nameof(NeedleTouchWaferZHeight)); } }
}
private double _cZCalibrationHeight;
/// <summary>
/// CZ标定高度
/// </summary>
[WatchValue("CZ标定高度")]
public double CZCalibrationHeight
{
get { return _cZCalibrationHeight; }
set { if (_cZCalibrationHeight != value) { _cZCalibrationHeight = value; OnPropertyChanged(nameof(CZCalibrationHeight)); } }
}
private double _waferFilmThickness;
/// <summary>
/// 方片膜厚度
/// </summary>
[WatchValue("方片膜厚度")]
public double WaferFilmThickness
{
get { return _waferFilmThickness; }
set { if (_waferFilmThickness != value) { _waferFilmThickness = value; OnPropertyChanged(nameof(WaferFilmThickness)); } }
}
private double _dieThickness;
/// <summary>
/// 晶粒厚度
/// </summary>
[WatchValue("晶粒厚度")]
public double DieThickness
{
get { return _dieThickness; }
set { if (_dieThickness != value) { _dieThickness = value; OnPropertyChanged(nameof(DieThickness)); } }
}
private double _glassThickness = 0.5;
[WatchValue("Glass厚度")]
/// <summary>
/// //Glass厚度
/// </summary>
public double GlassThickness
{
get { return _glassThickness; }
set { if (_glassThickness != value) { _glassThickness = value; OnPropertyChanged(nameof(GlassThickness)); } }
}
private double _carrierThickness = 0.5;
[WatchValue("Carrier厚度")]
/// <summary>
/// Carrier厚度
/// </summary>
public double CarrierThickness
{
get { return _carrierThickness; }
set { if (_carrierThickness != value) { _carrierThickness = value; OnPropertyChanged(nameof(CarrierThickness)); } }
}
private double _fromDieToPadDistance;
/// <summary>
/// Gap2:Die到Pad的距离
/// </summary>
[WatchValue("Gap2:Die到Pad的距离")]
public double FromDieToPadDistance
{
get { return _fromDieToPadDistance; }
set { if (_fromDieToPadDistance != value) { _fromDieToPadDistance = value; OnPropertyChanged(nameof(FromDieToPadDistance)); } }
}
private double _gap1;
/// <summary>
/// Gap1
/// </summary>
[WatchValue("Gap1")]
public double Gap1
{
get { return _gap1; }
set { if (_gap1 != value) { _gap1 = value; OnPropertyChanged(nameof(Gap1)); } }
}
private double _glassZHeight;
/// <summary>
/// 测Glass时Z高度
/// </summary>
[WatchValue("测Glass时Z高度")]
public double GlassZHeight
{
get { return _glassZHeight; }
set { if (_glassZHeight != value) { _glassZHeight = value; OnPropertyChanged(nameof(GlassZHeight)); } }
}
private double _waferZHeight;
/// <summary>
/// 测Wafer时Z高度
/// </summary>
[WatchValue("测Wafer时Z高度")]
public double WaferZHeight
{
get { return _waferZHeight; }
set { if (_waferZHeight != value) { _waferZHeight = value; OnPropertyChanged(nameof(WaferZHeight)); } }
}
private ObservableCollection<TeachPoint> _glassHeightMeasureList = new ObservableCollection<TeachPoint>();
public ObservableCollection<TeachPoint> GlassHeightMeasureList
{
get { return _glassHeightMeasureList; }
set { if (_glassHeightMeasureList != value) { _glassHeightMeasureList = value; OnPropertyChanged(nameof(GlassHeightMeasureList)); } }
}
private ObservableCollection<TeachPoint> _waferHeightMeasureList = new ObservableCollection<TeachPoint>();
public ObservableCollection<TeachPoint> WaferHeightMeasureList
{
get { return _waferHeightMeasureList; }
set { if (_waferHeightMeasureList != value) { _waferHeightMeasureList = value; OnPropertyChanged(nameof(WaferHeightMeasureList)); } }
}
public IParameterItem Clone()
{
HeightBaseItem clone = new HeightBaseItem();
if (this.GlassHeightMeasureList != null && this.GlassHeightMeasureList.Count != 0)
{
foreach (var item in this.GlassHeightMeasureList)
{
clone.GlassHeightMeasureList.Add(item.Clone() as TeachPoint);
}
}
if (this.WaferHeightMeasureList != null && this.WaferHeightMeasureList.Count != 0)
{
foreach (var item in this.WaferHeightMeasureList)
{
clone.WaferHeightMeasureList.Add(item.Clone() as TeachPoint);
}
}
clone.NeedleTouchWaferZHeight = this.NeedleTouchWaferZHeight;
return clone;
}
}
public class DiaHeightItem : PropertyChangedBase, IParameterItem
{
public IParameterItem Clone()
{
return this.MemberwiseClone() as IParameterItem;
//DiaHeightItem clone = new DiaHeightItem();
//clone.CaliZHeightPositionX = this.CaliZHeightPositionX;
//clone.CaliZHeightPositionY = this.CaliZHeightPositionY;
//clone.CaliZHeightPositionZ = this.CaliZHeightPositionZ;
//clone.GlassZHeight = this.GlassZHeight;
//clone.WaferZHeight = this.WaferZHeight;
//return clone;
}
private double _needleTouchHeight;
/// <summary>
/// 标定时对刀高度
/// </summary>
[WatchValue("标定时对刀高度")]
public double NeedleTouchHeight
{
get { return _needleTouchHeight; }
set { if (_needleTouchHeight != value) { _needleTouchHeight = value; OnPropertyChanged(nameof(NeedleTouchHeight)); } }
}
private double _knifeOffset;
[WatchValue("对刀偏差值")]
/// <summary>
/// 对刀偏差值
/// </summary>
public double KnifeOffset
{
get { return _knifeOffset; }
set { if (_knifeOffset != value) { _knifeOffset = value; OnPropertyChanged(nameof(KnifeOffset)); } }
}
private double _laserToZ1Offset;
[WatchValue("激光与刺晶头偏差")]
/// <summary>
/// 激光与刺晶头偏差
/// </summary>
public double LaserToZ1Offset
{
get { return _laserToZ1Offset; }
set { if (_laserToZ1Offset != value) { _laserToZ1Offset = value; OnPropertyChanged(nameof(LaserToZ1Offset)); } }
}
private double _caliZHeightPositionX;
[WatchValue("激光打到对刀仪上X坐标")]
/// <summary>
/// 激光打到对刀仪上X坐标
/// </summary>
public double CaliZHeightPositionX
{
get { return _caliZHeightPositionX; }
set { if (_caliZHeightPositionX != value) { _caliZHeightPositionX = value; OnPropertyChanged(nameof(CaliZHeightPositionX)); } }
}
private double _caliZHeightPositionY;
[WatchValue("激光打到对刀仪上Y坐标")]
/// <summary>
/// 激光打到对刀仪上Y坐标
/// </summary>
public double CaliZHeightPositionY
{
get { return _caliZHeightPositionY; }
set { if (_caliZHeightPositionY != value) { _caliZHeightPositionY = value; OnPropertyChanged(nameof(CaliZHeightPositionY)); } }
}
public double CaliZHeight;
private double _caliZHeightPositionZ;
[WatchValue("激光打到对刀仪上Z坐标")]
/// <summary>
/// 激光打到对刀仪上Z坐标
/// </summary>
public double CaliZHeightPositionZ
{
get { return _caliZHeightPositionZ; }
set { if (_caliZHeightPositionZ != value) { _caliZHeightPositionZ = value; OnPropertyChanged(nameof(CaliZHeightPositionZ)); } }
}
private double _caliZHeightLaserReading;
[WatchValue("激光打到对刀仪上时激光读数")]
/// <summary>
/// 激光打到对刀仪上时激光读数
/// </summary>
public double CaliZHeightLaserReading
{
get { return _caliZHeightLaserReading; }
set { if (_caliZHeightLaserReading != value) { _caliZHeightLaserReading = value; OnPropertyChanged(nameof(CaliZHeightLaserReading)); } }
}
}
public class CapHeightItem : PropertyChangedBase, IParameterItem
{
public IParameterItem Clone()
{
return this.MemberwiseClone() as IParameterItem;
}
private double _capInitialValue;
/// <summary>
/// 电容初始值
/// </summary>
[WatchValue("电容初始值")]
public double CapInitialValue
{
get { return _capInitialValue; }
set { if (_capInitialValue != value) { _capInitialValue = value; OnPropertyChanged(nameof(CapInitialValue)); } }
}
}
public class TeachPoint : PropertyChangedBase, IParameterItem
{
private int _id = 1;
public int Id
{
get { return _id; }
set { if (_id != value) { _id = value; OnPropertyChanged(nameof(Id)); } }
}
private double _x = 0.0;
public double X
{
get { return _x; }
set { if (_x != value) { _x = value; OnPropertyChanged(nameof(X)); } }
}
private double _y = 0.0;
public double Y
{
get { return _y; }
set { if (_y != value) { _y = value; OnPropertyChanged(nameof(Y)); } }
}
private double _z = 5.0;
public double Z
{
get { return _z; }
set { if (_z != value) { _z = value; OnPropertyChanged(nameof(Z)); } }
}
private double _laserZ = 0.0;
public double LaserZ
{
get { return _laserZ; }
set { if (_laserZ != value) { _laserZ = value; OnPropertyChanged(nameof(LaserZ)); } }
}
private double _height = 0.0;
public double Height
{
get { return _height; }
set { if (_height != value) { _height = value; OnPropertyChanged(nameof(Height)); } }
}
private double _laserAndZHeightSum = 0.0;
public double LaserAndZHeightSum
{
get { return _laserAndZHeightSum; }
set { if (_laserAndZHeightSum != value) { _laserAndZHeightSum = value; OnPropertyChanged(nameof(LaserAndZHeightSum)); } }
}
private int _row = 1;
public int Row
{
get { return _row; }
set { SetAndNotify(ref _row, value); }
}
private int _column = 1;
public int Column
{
get { return _column; }
set { SetAndNotify(ref _column, value); }
}
private int _regionIndex;
public int RegionIndex
{
get { return _regionIndex; }
set { SetAndNotify(ref _regionIndex, value); }
}
public TeachPoint(double x, double y)
{
_x = x;
_y = y;
}
public TeachPoint()
{
}
IParameterItem IParameterItem.Clone()
{
return this.MemberwiseClone() as IParameterItem;
}
}
}