Browse Source

增加添加螺丝选择供料器功能

zly 1 month ago
parent
commit
6f720fcb9e

+ 3 - 0
.vscode/settings.json

@@ -0,0 +1,3 @@
+{
+    "dotnet.preferCSharpExtension": true
+}

+ 10 - 19
TeamAAS-VM/Models/CTQ_Data.cs

@@ -117,24 +117,17 @@ namespace TeamAAS_VP.Models
         /// </summary>
         public string PROCESS_MACHINE_ID { get => _PROCESS_MACHINE_ID; set => SetProperty(ref _PROCESS_MACHINE_ID, value); }
 
-        private string _Screwsize1;
+        private string _Feeder1ScrewSN;
         /// <summary>
-        /// 螺丝型号1
+        /// 供料器1螺丝SN
         /// </summary>
-        public string Screwsize1 { get => _Screwsize1; set => SetProperty(ref _Screwsize1, value); }
+        public string Feeder1ScrewSN { get => _Feeder1ScrewSN; set => SetProperty(ref _Feeder1ScrewSN, value); }
 
-        private string _Screwsize2;
+        private string _Feeder2ScrewSN;
         /// <summary>
-        /// 螺丝型号2
+        /// 供料器2螺丝SN
         /// </summary>
-        public string Screwsize2 { get => _Screwsize2; set => SetProperty(ref _Screwsize2, value); }
-
-
-        private string _Screwsize3;
-        /// <summary>
-        /// 螺丝型号3
-        /// </summary>
-        public string Screwsize3 { get => _Screwsize3; set => SetProperty(ref _Screwsize3, value); }
+        public string Feeder2ScrewSN { get => _Feeder2ScrewSN; set => SetProperty(ref _Feeder2ScrewSN, value); }
 
         private string _CTQ_UNIT_OF_MEASURE;
         /// <summary>
@@ -168,9 +161,8 @@ namespace TeamAAS_VP.Models
             PROCESS_MACHINE_ID = string.Empty;
             CTQ_UNIT_OF_MEASURE = string.Empty;
             ERROR_MESSAGE = string.Empty;
-            Screwsize1= string.Empty;
-            Screwsize2= string.Empty;
-            Screwsize3 = string.Empty;
+            Feeder1ScrewSN = string.Empty;
+            Feeder2ScrewSN = string.Empty;
         }
 
         public CTQ_Data Copy()
@@ -195,9 +187,8 @@ namespace TeamAAS_VP.Models
                 PROCESS_MACHINE_ID = this.PROCESS_MACHINE_ID,
                 CTQ_UNIT_OF_MEASURE = this.CTQ_UNIT_OF_MEASURE,
                 ERROR_MESSAGE = this.ERROR_MESSAGE,
-                Screwsize1=this.Screwsize1,
-                Screwsize2 = this.Screwsize2,
-                Screwsize3 = this.Screwsize3
+                Feeder1ScrewSN = this.Feeder1ScrewSN,
+                Feeder2ScrewSN = this.Feeder2ScrewSN
             };
         }
 

+ 44 - 7
TeamAAS-VM/ViewModels/AddScrewViewModel.cs

@@ -6,6 +6,7 @@ using Prism.Regions;
 using Prism.Services.Dialogs;
 using System;
 using System.Collections.Generic;
+using System.Collections.ObjectModel;
 using System.IO;
 using System.Linq;
 using System.Text;
@@ -47,6 +48,26 @@ namespace TeamAAS_VP.ViewModels
             set { SetProperty(ref _ScrewsizeCode, value); }
         }
 
+        private ObservableCollection<FeederInfo> _Feeders;
+        /// <summary>
+        /// 供料器列表
+        /// </summary>
+        public ObservableCollection<FeederInfo> Feeders
+        {
+            get { return _Feeders; }
+            set { SetProperty(ref _Feeders, value); }
+        }
+
+        private FeederInfo _SelectedFeeder;
+        /// <summary>
+        /// 当前选中的供料器
+        /// </summary>
+        public FeederInfo SelectedFeeder
+        {
+            get { return _SelectedFeeder; }
+            set { SetProperty(ref _SelectedFeeder, value); }
+        }
+
 
         private DelegateCommand _OkCommand;
         public DelegateCommand OkCommand =>
@@ -66,7 +87,7 @@ namespace TeamAAS_VP.ViewModels
             _configService = configService;
             _eventAggregator = eventAggregator;
             _plcService = plcService;
-
+            Feeders = new ObservableCollection<FeederInfo>(_configService.GetAllFeeders());
         }
 
 
@@ -74,6 +95,18 @@ namespace TeamAAS_VP.ViewModels
         {
             try
             {
+                if (SelectedFeeder == null)
+                {
+                    MessageBox.Show("请选择供料器", "提示", MessageBoxButton.OK, MessageBoxImage.Warning);
+                    return;
+                }
+
+                if (SelectedFeeder.FeederNo != 1 && SelectedFeeder.FeederNo != 2)
+                {
+                    MessageBox.Show("该供料器未配置螺丝型号", "提示", MessageBoxButton.OK, MessageBoxImage.Warning);
+                    return;
+                }
+
                 var addressConfig = _configService.GetPlcAddresses();
 
                 var plc = _plcService.GetPlcByNumber(addressConfig.PlcNo) as OpcUaClientPLC;
@@ -101,12 +134,16 @@ namespace TeamAAS_VP.ViewModels
                     //BarcodeTextBox.Focus(); // 重新聚焦
                     return;
                 }
-                if (a == stationConfig.DataInfo.Screwsize1 || a == stationConfig.DataInfo.Screwsize2 || a == stationConfig.DataInfo.Screwsize3)
+                string targetSN = SelectedFeeder.FeederNo == 1
+                    ? stationConfig.DataInfo.Feeder1ScrewSN
+                    : stationConfig.DataInfo.Feeder2ScrewSN;
+
+                if (a == targetSN)
                 {
                     await plc.WriteNodeAsync<bool>(addressConfig.Out_PlcFail.Address, false);
                     MessageBox.Show("螺丝型号匹配成功", "提示", MessageBoxButton.OK, MessageBoxImage.Warning);
                     //SendTaskMessage($"螺丝型号匹配成功", MessageLevel.Info);
-                    ExportDataToCsv(DateTime.Now.ToString("yyyy-MM-dd HH:mm"), a, stationConfig.DataInfo, true, UserID, @"D:\添加螺丝记录\螺丝上料Log.csv", appendMode: true);
+                    ExportDataToCsv(DateTime.Now.ToString("yyyy-MM-dd HH:mm"), a, stationConfig.DataInfo, true, UserID, SelectedFeeder.FeederName, @"D:\添加螺丝记录\螺丝上料Log.csv", appendMode: true);
                 }
                 else
                 {
@@ -114,7 +151,7 @@ namespace TeamAAS_VP.ViewModels
                     MessageBox.Show("螺丝型号匹配失败", "提示", MessageBoxButton.OK, MessageBoxImage.Warning);
 
                     //SendTaskMessage($"螺丝型号匹配失败", MessageLevel.Error);
-                    ExportDataToCsv(DateTime.Now.ToString("yyyy-MM-dd HH:mm"), a, stationConfig.DataInfo, false, UserID, @"D:\添加螺丝记录\螺丝上料Log.csv", appendMode: true);
+                    ExportDataToCsv(DateTime.Now.ToString("yyyy-MM-dd HH:mm"), a, stationConfig.DataInfo, false, UserID, SelectedFeeder.FeederName, @"D:\添加螺丝记录\螺丝上料Log.csv", appendMode: true);
                 }
                 //DialogResult = true;
                 //Close();
@@ -132,7 +169,7 @@ namespace TeamAAS_VP.ViewModels
             //DialogResult = false;
             //Close();
         }
-        public static void ExportDataToCsv(string dateTime, string model, CTQ_Data DataInfo, bool isMatch,string UserId, string savePath, bool appendMode = false)
+        public static void ExportDataToCsv(string dateTime, string model, CTQ_Data DataInfo, bool isMatch, string UserId, string feederName, string savePath, bool appendMode = false)
         {
             string directory = global::System.IO.Path.GetDirectoryName(savePath);
 
@@ -149,7 +186,7 @@ namespace TeamAAS_VP.ViewModels
             if (!appendMode || !File.Exists(savePath))
             {
                 //csvContent.AppendLine("日期时间,目标螺丝型号1,螺丝型号2,螺丝型号3,添加螺丝型号,添加螺丝员工,是否匹配");
-                csvContent.AppendLine("DateTime,Screw1,Screw2,Screw3,AddScrew,UserID,Results");
+                csvContent.AppendLine("DateTime,Feeder1SN,Feeder2SN,AddScrew,UserID,Feeder,Results");
             }
 
             // 处理数据行
@@ -162,7 +199,7 @@ namespace TeamAAS_VP.ViewModels
                 safeModel = $"\"{safeModel}\"";
             }
 
-            csvContent.AppendLine($"{dateTime},{DataInfo.Screwsize1},{DataInfo.Screwsize2},{DataInfo.Screwsize3},{model},{UserId},{matchStr}");
+            csvContent.AppendLine($"{dateTime},{DataInfo.Feeder1ScrewSN},{DataInfo.Feeder2ScrewSN},{model},{UserId},{feederName},{matchStr}");
 
             // 写入文件:UTF-8带BOM编码,Excel打开无乱码
             if (appendMode && File.Exists(savePath))

+ 21 - 5
TeamAAS-VM/Views/AddScrewView.xaml

@@ -18,7 +18,7 @@
              lex:ResxLocalizationProvider.DefaultDictionary="Lang"
              mc:Ignorable="d"
              d:Background="White"
-             d:Height="500"
+             d:Height="560"
              d:Width="800"
              prism:ViewModelLocator.AutoWireViewModel="True"
              FontFamily="{DynamicResource DefaultFont}">
@@ -29,35 +29,51 @@
             <RowDefinition Height="Auto"/>
             <RowDefinition Height="Auto"/>
             <RowDefinition Height="Auto"/>
+            <RowDefinition Height="Auto"/>
+            <RowDefinition Height="Auto"/>
         </Grid.RowDefinitions>
 
+        <!-- 供料器选择 -->
         <TextBlock Grid.Row="0" 
+                   Text="请选择供料器:" 
+                   FontSize="14" 
+                   Margin="0,0,0,10"/>
+
+        <ComboBox Grid.Row="1" 
+                  Height="30" 
+                  FontSize="14"
+                  ItemsSource="{Binding Feeders}"
+                  SelectedItem="{Binding SelectedFeeder}"
+                  DisplayMemberPath="FeederName"
+                  Margin="0,0,0,20"/>
+
+        <TextBlock Grid.Row="2" 
                    Text="请扫描螺丝条码:" 
                    FontSize="14" 
                    Margin="0,0,0,10"/>
 
         <!-- 输入框会自动接收并显示扫码枪的结果 -->
         <TextBox x:Name="BarcodeTextBox" 
-                 Grid.Row="1" 
+                 Grid.Row="3" 
                  Height="30" 
                  FontSize="14"
                  Text="{Binding ScrewsizeCode, Mode=TwoWay}"
                  Margin="0,0,0,20"/>
 
-        <TextBlock Grid.Row="2" 
+        <TextBlock Grid.Row="4" 
              Text="请扫描员工工号:" 
              FontSize="14" 
              Margin="0,0,0,10"/>
 
         <!-- 输入框会自动接收并显示扫码枪的结果 -->
         <TextBox x:Name="BarcodeTextBox1" 
-           Grid.Row="3" 
+           Grid.Row="5" 
            Height="30" 
            FontSize="14"
            Text="{Binding UserID, Mode=TwoWay}"
            Margin="0,0,0,20"/>
 
-        <StackPanel Grid.Row="4" 
+        <StackPanel Grid.Row="6" 
                     Orientation="Horizontal" 
                     HorizontalAlignment="Right">
             <Button x:Name="OkButton" 

+ 1 - 1
TeamAAS-VM/Views/AddScrewView.xaml.cs

@@ -247,7 +247,7 @@ namespace TeamAAS_VP.Views
                 safeModel = $"\"{safeModel}\"";
             }
 
-            csvContent.AppendLine($"{dateTime},{DataInfo.Screwsize1},{DataInfo.Screwsize2},{DataInfo.Screwsize3},{model},{matchStr}");
+            csvContent.AppendLine($"{dateTime},{DataInfo.Feeder1ScrewSN},{DataInfo.Feeder2ScrewSN},{model},{matchStr}");
 
             // 写入文件:UTF-8带BOM编码,Excel打开无乱码
             if (appendMode && File.Exists(savePath))

+ 4 - 15
TeamAAS-VM/Views/SettingView.xaml

@@ -717,34 +717,23 @@
                                     Grid.Column="0"
                                     HorizontalAlignment="Right"
                                     VerticalAlignment="Center"
-                                    Text="螺丝型号1:" />
+                                    Text="供料器1螺丝SN:" />
                                 <TextBox
                                     Grid.Row="24"
                                     Grid.Column="1"
                                     Margin="6,2"
-                                    Text="{Binding SelectDeviceInfo.DataInfo.Screwsize1, Mode=TwoWay}" />
+                                    Text="{Binding SelectDeviceInfo.DataInfo.Feeder1ScrewSN, Mode=TwoWay}" />
                                 <TextBlock
                                     Grid.Row="25"
                                     Grid.Column="0"
                                     HorizontalAlignment="Right"
                                     VerticalAlignment="Center"
-                                    Text="螺丝型号2:" />
+                                    Text="供料器2螺丝SN:" />
                                 <TextBox
                                     Grid.Row="25"
                                     Grid.Column="1"
                                     Margin="6,2"
-                                    Text="{Binding SelectDeviceInfo.DataInfo.Screwsize2, Mode=TwoWay}" />
-                                <TextBlock
-                                    Grid.Row="26"
-                                    Grid.Column="0"
-                                    HorizontalAlignment="Right"
-                                    VerticalAlignment="Center"
-                                    Text="螺丝型号3:" />
-                                <TextBox
-                                    Grid.Row="26"
-                                    Grid.Column="1"
-                                    Margin="6,2"
-                                    Text="{Binding SelectDeviceInfo.DataInfo.Screwsize3, Mode=TwoWay}" />
+                                    Text="{Binding SelectDeviceInfo.DataInfo.Feeder2ScrewSN, Mode=TwoWay}" />
                             </Grid>
                         </Grid>
                     </ScrollViewer>

+ 418 - 0
h origin 208ebb92 统一程序,优化产品切换功能,修改csv保存时间格式master

@@ -0,0 +1,418 @@
+d49fb4c2 (HEAD -> master) reset
+ee166f28 (origin/master, origin/HEAD) 螺丝锁付NG上传带FixtureId号
+02a2891e update
+04eed8d0 update
+9145973b update
+5b4f326b 优化计数
+a343466e 人工站屏蔽信号
+43b31e46 update
+1752da03 update
+f773ca21 界面优化还原
+47aec6ae 合并
+208ebb92 统一程序,优化产品切换功能,修改csv保存时间格式
+e4b4e7e1 update
+1bb98979 优化界面,增加主界面语言切换
+b8a590e4 修改界面显示问题
+aef72a00 优化用户权限
+6a2fb495 屏蔽刷卡机
+102ca7a1 修改用户登陆权限
+18a1616f 修改用户登陆逻辑
+072b7b0f 根据客户要求修改用户登陆权限等
+f0094218 修改添加螺丝功能
+4a13d254 处理合并bug
+64514326 合并
+019d9ae5 增加抖螺丝相机拍照
+03f8ea26 合并
+29d78da3 增加添加螺丝判断与记录
+7224b341 合并
+ef74cb83 优化通讯程序
+2509b857 修改PLC交互bug
+523df1a8 Reapply "修改与PLC交互出现的BUG,增加锁螺丝XY超限"
+f5b56b73 Revert "修改与PLC交互出现的BUG,增加锁螺丝XY超限"
+ff8d3ad9 修改与PLC交互出现的BUG,增加锁螺丝XY超限
+e773cd65 优化报警
+6f9a30a8 增加plc报警显示
+e61c8152 增加kb螺丝机流线功能配合plc,具体需求待定
+b205ea3c 合并
+feb579e9 增加螺丝锁付上下限设置
+d370f845 update
+820995e3 update
+11383202 update
+768c8142 版本控制-1.3.0.3
+4e18492e 修复合并异常
+51f4c789 合并
+84e7201e 优化扫码程序,增加检测kb错误信息上传
+b451fafe 增加上传mes强制pass
+f3ea6ae7 增加压力不合格log显示
+284501dd 修复界面数据SN错乱问题
+90dbe1de Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+ff379e70 支持OPC UA自定义轮询订阅及订阅模式配置
+69e3d2a5 合并
+2e7a52e5 修改拍照光源打开方式,增加kb复检,优化mes上传程序
+8be99af4 修改界面状态显示的整体架构,使其后期跟方便优化改进
+a1a25aa9 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+f35f8eab 增加二次查询功能
+409b16fa 合并
+18d40de8 修改mes上传数据
+d9e35743 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+82ff1b8b 修复拍照ng跳过当前螺丝锁付没有ng信息上传mes
+a3f7b812 修改锁电池的plc交互信息
+b9f73f91 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+a1b9fe3f 修复曲线二次保存问题
+f5f37f9b 修改csv上传
+32670e22 修改
+a23fe9c8 修复延迟保存图片的问题
+f978dcdb 新增界面显示状态
+3301b4cf Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+433657aa 取消压力读取
+ec4cb895 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+2a92b4d7 修改
+40ed6d18 修改界面按钮文字显示
+751279dc 优化扭力曲线图上传(待测试)
+abcaf6b0 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+5cc04c00 版本控制,统一使用1.3.0.2
+1b14b1a8 优化数据上传功能
+c72d64da Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+70ff6228 添加越南语切换的功能
+2e2eae5e 增加读取plc当前状态并变换相应的顶部颜色
+bde7298f 暂时取消保压曲线
+2d7ec174 合并
+c8d8c5d4 新增界面图像可选显示,修改界面显示
+fb3a40a4 update
+d251a1d8 更改csv保存数据
+17d2188f 增加压力数据最大值显示
+b4c3dccc update
+338923a6 修复曲线图路径报错
+890f800f 更改mes查询语句
+fa710cf2 优化扭力曲线图的复制
+870339f5 更改csv,图片储存方式,路径
+e86a9b90 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+3bf75881 增加界面显示双击放大,修复上传服务器数据没有扭力曲线图
+683594f8 完善csv数据,添加ppid
+a563764b Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+cbcc5255 增加扭矩上下限曲线
+feefdfa5 update
+68d70645 添加产品切换,并支持写入PLC相关型号编号
+10ebbafc 修复csv时间数据格式
+85518875 版本控制1.3.0.4
+3d3972e6 增加图片带当前螺丝编号命名格式
+8823620e Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+f7ed3dbd 增加csv添加螺丝编号
+6a7e1286 调整螺丝机Mes结果上传
+05365714 当前产品SN不存在,无法保存图片!
+76564699 针对图片保存的优化,当拍照时,还没有获得流程码;将图片缓存,等待SN到位,再存储
+e4191043 版本控制1.3.0.3
+6df03e82 update
+bb501385 dataToMes.Add($"LastResult{lockResult.Number}", $"{lastRes}"); 添加一组螺丝结果,便于后端查询处理
+4267e575 修改
+3f01a9de 修改
+daba869d 添加上传图片,修改mes上传的数据格式
+5e2c9552 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+c8075d6a 增加锁付拍照点位,锁付点位,复检点位可选写入plc,需保证每个点位启用或关闭相同,默认为启用,版本更新到1.3.0.3
+9ec4c20e Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+bf3377b3 修改
+290d3e25 pass,fail大小写
+26f2a90e Revert "修复自动模式下拍披头执行ConvertPixelToPosition的时候robotCoord为null,版本更新到1.3.0.3"
+475bb110 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+7c183cdd 修改
+18653ca7 修复自动模式下拍披头执行ConvertPixelToPosition的时候robotCoord为null,版本更新到1.3.0.3
+36b31f91 版本控制1.3.0.2
+0115ba39 修复在未启用mes时进行锁付产品时创建文件夹,保存图片,csv失败与无界面锁付记录
+0e786217 update
+7082c0b5 修复漏洞的包
+28922bec Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+8597fe25 修改log等文件上传
+3bf47bc5 版本控制
+bce8f69d 修改
+99483aa9 update
+cfce6d1b 修改
+11010ad5 修改
+d17720f9 修改
+e9e05529 修改显示
+e3ed407a 添加计数
+afba586a update
+3b95985c update
+6798e4bb update
+78143536 update
+74261816 update
+12c24762 修复图片被提前释放与是否通过零件码判断螺丝型号
+12dc530c 调整MES查询参数,增加wo字段返回
+7af57404 新增设备名称(DeviceName)显示控件
+930ce1b3 自定义图片文件名格式与CTQ配置优化
+86e1414c 重置曲线图坐标轴以自适应新数据
+fdeb6dfb Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+e9366a88 修正命令属性及方法命名错误
+1da9cda7 增强数据保存,增加产品信息字段
+f651db07 版本号升级及命名空间引用优化
+d75c6d72 优化MES过站检查及数据上传流程,增强记录功能
+04ea75f5 优化图片保存路径,按检测结果分文件夹
+84d20b6b 支持设备信息多设备管理及MES多设备接口
+ca3651d6 更新视觉接口参数,新增产品名称属性
+075e3cfe 扩展MES接口支持电池SN查询及日志优化
+a5fe64c2 (origin/螺丝机分支_MES两次询问) new
+7d96a0be new
+86a06a75 new
+b6ab3cc4 update
+c802360b update
+69db2a32 update
+1030f24e 合并
+361ecba2 修改
+c208e096 修改
+a670f67a 修改
+a5fbdcf8 修改
+9f93abd8 合并
+39feb8e8 修改图片保存
+4a2be291 优化图像显示
+9c682e70 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+897e280d update
+01fd70da 修改
+52065d38 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+7bf3746a 修改
+7695c044 update
+b4f52142 update
+0e1d6f57 updata
+0b0fa07c updata
+753c0e37 修改mes中ptl模式
+ba15fd9a 修改mes参数
+c82012ef Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+8e89915b 修改mes功能
+3efc4b5d Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+670e867a 修改复检
+4890677d Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+4ee79ed1 update
+7476fddc 设备信息界面
+693f3d85 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+ff1eb5f4 修复生成报表值为null与字典空Key调用
+31d56278 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+2a1c7b8a 优化一些小问题与垂直精度检查新增判断螺丝供料机状态等待
+09d1b2e0 update
+c80dfa47 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+d375802f 新增垂直精度检测
+e8de835e Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+439e9333 修改
+84da534f Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+d4992d4b updata
+08e7a196 升级程序集版本至 1.2.1.0
+2f712846 新增VisionPro文件安全读写辅助类及全面替换
+b5599079 升级程序集和文件版本至1.2.0.9
+1c6fd5d4 上相机检测流程优化及界面显示调整
+90edddfa 调整配置文件保存路径并新增清理任务保存
+a0aaf344 将产品加载由异步改为同步调用
+4ee4d003 修复OPT图像软触发采集方式
+23d26747 异步化PLC连接事件并增强日志记录
+74ae3061 新增点位文件导入导出功能(支持XML批量操作)
+808a2ec4 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+50f02a25 增加动态取料检测功能
+bd96ef62 优化相机采集流程与异常处理,提升兼容性
+233581bd 拍照功能支持拍照编号记录与展示
+aef3813a 照片采集查询导出与显示字段扩展优化
+ae1ee9f2 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+894e7641 优化生产记录导出与界面字段显示
+9e1db077 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+6904ecdb 修复二维码扫描拍照触发两次
+704c3969 统一产品信息获取方式,完善拍照记录模型
+27695ca4 修复抓取策略与串口配置等细节问题
+e42746a7 修改
+d1ad3db5 添加相机读取二维码
+c1337dab 重构ICamera接口及日志本地化,优化采集策略
+140b26a6 增强KCS亮度读取与设置的响应兼容性
+804e5a15 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+b89de328 增加电批扭矩测试仪界面及连接
+8588b0cf Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+f935f40a Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+dda7e8bf 修复自动流程下读取plc的mes数据结果点位失败与点检扭矩细节改动
+791fa36f 修复拍一打一点位为null
+59730ac1 修复拍一打一的点位逻辑
+2aa6d8a8 统计查询模块支持多类记录分页与导出
+18229ef1 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+3692dd3c updata
+1f1c660d Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+cde70971 完善生产记录功能,补充PLC结果地址配置
+acf9890e Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+69c2b7b1 修改
+81e8360e 添加二维码拍照点位面板
+86812c6e Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+65da9fc4 修改
+7555195d 新增白夜班切换
+c0e63f75 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+2e066dbb 修改
+3bc3a7f2 恢复CTtime计算逻辑以记录MES检查间隔
+103b3bda Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+0b791e05 updata
+4c3f7e4c Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+e1874624 修改扭力点检
+18d74fa9 修改锁付深度范围和光标闪烁
+1aee114b 移除CTtime计算中的i==0条件限制
+a96207df 优化MES交互及CT时间计算方式
+e5162f64 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+c79f7f06 优化MES时间记录及设置界面辅助说明
+093deb15 update
+2ec9af73 update
+79cfc971 合并
+f1d7a11c 修改扭力点检
+339fc07c 修改
+311c3f2f 添加ct
+75a9e1b6 新增锁付压力采集与自动保存功能
+2fb359f3 批量设置点位补偿值功能及视觉流程优化
+8ca4ee86 修复了视觉静态测试移动相机输出绝对坐标问题 修复了刷卡登录的报错
+4e22a33f Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+e114f715 刷卡登录与多用户支持重构,优化配置与语言切换
+949c0897 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+3f0a1f06 修改
+163e025c 新增刷卡登录窗口及刷卡器配置管理功能
+7aace5ee 修复8通道光源亮度获取命令
+ca06aff1 支持KCS_KDC3_24V300W_8T灯控器型号注册
+26e4a0af 支持KCS_KDC3_24V300W_8T型号并优化控制器配置逻辑
+8a7f4d43 调整视觉单点接口参数并完善拍照记录remark传递
+91eeda84 修正取料位本地化文本,去除末尾冒号
+f68e1bd3 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+e53bf309 新增图片保存路径模式及拍照记录功能完善
+2aba951d Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+6dd0f426 修改轴精度检测
+92e73e19 螺丝/披头/吸嘴批次与计数重构,界面优化
+6e4d82b3 MES服务接口重构与集成,增强管理层联动
+569746c9 导出PDF/CSV时增加设备信息(线别/站别/机台号)
+933cdc60 新增设备信息配置及MES通信服务接口实现
+1dd951ba 增加视觉动态精度分析仪参数配置的持久化
+ec3d267f 修复运动模组及视觉动态测试功能
+4be55692 新增机器人SafeZ安全高度属性及界面配置
+927dd843 视觉动态精度分析仪重构与功能增强
+7b9ffecb 新增视觉动态精度分析仪完整功能模块
+0d0ed9a0 视觉静态精度分析仪支持统计分析与报告导出
+a2311b4f 新增视觉静态精度分析功能及相关界面
+3e896bff 修改合并之后出现的错误,代码本地化
+4c43745d 代码本地化
+2250f7d6 多语言本地化
+8d9a198e Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+419d3f5b 修改点检
+81f72fd3 多语言本地化优化及资源文件更新
+9f5c32c6 支持多通道MesCheck状态及去抖处理
+083c2d84 恢复之前的意外恢复和优化相机标定时的及时停止 优化机器人到位的检测逻辑
+81d44ac2 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+e09b71bb 修改点检
+de0035fb 1.2.0.4
+77fe30b3 MES过站Bug修复
+ffc54412 修复OPT相机图像采集
+27525093 更改PLC过站地址
+6be151c8 修改
+ad41939c 修改
+dd465795 合并
+0680e97d 添加点检和批头计数
+a3c00ead Revert "Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine"
+5a7c44a6 Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+2a1ce582 添加 lex:Loc 标识并补充英语、日语,中文(繁体)翻译
+e1f580d3 update
+e828c2f3 update
+e2aa51ef 修复OPT相机采集图像缓存未清除
+46ee0024 图像采集时间长,及发现的bug修复
+cc95b284 UPDATE
+9ef027bd UPDATE
+bb8e7785 增加
+046c0456 update
+4d501ac5 优化图像中心十字线绘制及命令刷新逻辑
+03f20303 """ feat: 点位参数界面支持相机采集与图像显示
+14b6916c update
+bb0719af 锁付点位校准与示教流程优化与安全增强
+a8f7679e 新增视觉图像弹窗及锁付点位自动矫正优化
+ceb541ee UPDATE
+9f727ff7 UPDATE
+91b41549 新增螺丝供料器管理功能及锁付数据完善
+4d5b9756 新增运动指令执行前的确认对话框
+46caebdf Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+6f47f06c 点动安全提示与代码规范优化
+551b8463 update
+4a376570 新增产品编码生成逻辑及LockResult字段优化
+3b2cdf20 锁付点位矫正前增加Z坐标一致性检查
+f0bbf3f1 update
+9d388b37 合并冲突
+dba2c602 优化运动超时检测与批量参数设置安全性
+19578c30 update
+7862a8e5 update
+1138d498 UPDATE
+0da4d48f update
+b1ece88c 修复自动校准锁付点位校准
+46828eb0 update
+c4433091 修复错误
+d9fdbf5c 修复错误
+6d55124c 修复错误
+79f9101c 新增螺丝供料器管理及批次记录功能
+1fd0c3f8 新增FeederBatchNumber属性及界面显示支持
+9a92c198 界面优化与数据列扩展:丰富DataGrid字段及美化
+7dc9001b 新增锁付结果查询与导出功能,优化相机分析
+3ac88edd 重构相机焦距评价为Debug模块独立视图
+ec2cf1e6 update
+e3355b81 优化“锁付结果”列为彩色状态显示
+d80c7af2 锁付结果采集与事件通知及前端展示实现
+6b9e9eb7 首页界面重构,新增锁付曲线与结果表格
+03247190 新增视觉拍照接口,支持返回图像与图形数据
+e5e0b7bb 新增锁附点位相机自动矫正功能
+5f13058a 拍照点位输入面板重构,优化布局与交互
+48ec13c7 视觉与锁付点参数批量设置优化及UI调整
+8193b9b8 新增基于两对点的坐标系变换构造函数
+61c92b0f 锁付点位批量设置与拍照点CAD导入功能增强
+144906ff 视觉拍照流程支持自动控制光源并异步化
+7101bfa4 优化DXF缩放体验及PLC订阅健壮性提升
+6d728151 机器人手动界面优化,支持实时显示当前位置
+4d58500b 支持光源控制器及通道自定义名称与配置
+602a2b68 修复相机拍照死锁及移动相机校准过程中的错误
+c149a906 新增取料拍照点位自动矫正功能
+e2286227 update
+92e2669b 新增CAD导入点位功能,支持自定义起始编号
+5f130bd6 update
+d0cecb0e 修复OPT相机采集图像
+dee34dc7 修改OPT相机适配的一些问题
+5940847c 提取选中实体关键点并新增Points依赖属性
+de31b536 新增OPT(奥普特)相机全流程支持
+5c821ce7 增强光源通道亮灭控制及界面优化
+fcb31fd5 光源通道选择弹窗化,点位管理功能增强
+239865c1 引入DXF可视化与交互模块,支持图纸查看
+459b74e0 新增流程光源通道配置及亮度调节功能
+f9ae5b03 新增XYD电批驱动及配置管理支持
+953befdf 多相机视觉流程配置与调用链路优化
+ae2d00bb update
+32cbb9ac update
+a8ab2fed update
+e2c80abe 通过下相机自动获取P0功能支持及流程完善
+1b3a7649 产品服务与标定流程接口优化及注释完善
+45a2cd1a update
+d683c8aa 增强PlcCommandTrigger任务消息提示与可观测性
+367804eb update
+150fe5d8 增强PLC点位写入与监控,支持MES过站检查
+c688061b Merge branch 'master' of http://49.235.130.76/XXF_1122/DaisyNPILine
+231af52c update
+1a53da63 update
+1bf1a5f6 update
+20d262a0 新增PLC点位参数模块及产品点位管理优化
+1d58d888 重构PLC模型目录及构造函数完善
+36461de5 update
+f92c3987 重构PLC参数配置与系统参数模型,支持点位扩展
+b026502e update
+73baaf4f 新增系统参数“工作模式”和“取料位置”支持
+7ba17a20 新增PLC地址配置及系统参数写入功能
+383dee07 新增系统参数配置功能及界面支持
+ab5d4192 九点标定与验证流程完善,接口与健壮性提升
+69bab2d8 重构相机标定接口及实现,移除旧模型
+c7b0b9d0 新增相机标定接口、数据模型及服务实现
+4bc77bfa 为核心服务类补充详细XML注释文档
+c8098343 重构棋盘格清晰度分析控件及算法服务
+2fe25ef9 图像清晰度分析控件重构,支持旋转ROI与MVVM
+9f8e4c18 为灯控核心接口与实现类补充详细中文注释
+60be1495 修改标定
+351aed0a 实现XYZ,标定时速度设置
+c175fcb7 亮度滑动时去抖
+b2ab67f2 修改光源控制器控制
+3f93677f 优化串口参数下拉框为枚举自动绑定
+60bcb6c6 注册LightManagerService及AddLightController对话框
+81e60499 手动调光页支持多通道动态管理与操作
+87d8cbb9 新增光源控制器手动调试界面及初始化支持
+7bf9c658 新增光源控制器添加对话框及多语言支持优化
+c392a38a 新增光源控制器配置功能及界面支持
+981bdefa 引入通用光源控制系统基础架构
+39d22c0a 修复流程删除与视觉刷新逻辑,优化资源管理
+79fb36e5 重构相机图像清晰度分析架构并增强功能
+4b045fbd 相机类线程安全重构&新增图像清晰度分析工具
+76a61473 机器人与PLC配置增强,界面及多语言优化
+f05b646e 修改模组移动问题
+baedb4eb update
+74cd4002 支持XYZ/XYZU平台机器人及多轴通用模型
+8432bfd0 添加项目文件。