jace.tang
2023-02-11 ed8d469ccdc0e627d8f180bb92a9d78dbdb008b1
HeightDetection.cs
@@ -192,6 +192,31 @@
                                cellHeightResult = MeasureState.NA;
                            }
                            #endregion
                            //保存高度图片
                            if (cellHeightResult == MeasureState.OK)
                            {
                                heightResult = MeasureState.OK;
                                DateTime dt = DateTime.Now;
                                if (dt.Second >= 10 && dt.Second <= 15)
                                {
                                    heightFileName = VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + $"_{heightResult.ToString()}\\{ tempFileName}");
                                }
                            }
                            else if (cellHeightResult == MeasureState.NG)
                            {
                                heightResult = MeasureState.NG;
                                heightFileName = VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + $"_{heightResult.ToString()}\\{ tempFileName}");
                            }
                            else
                            {
                                heightResult = MeasureState.NA;
                                heightFileName = VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + $"_{heightResult.ToString()}\\{ tempFileName}");
                            }
                        }
                        else
                        {
@@ -203,15 +228,40 @@
                                compv = (double)fi.GetValue(opcConfig.compensationZ);
                                batteryHeight[0] += compv;
                                cellHeightResult = batteryHeight[0] >= opcConfig.standardHeightLimit.Min
                                && batteryHeight[0] <= opcConfig.standardHeightLimit.Max ? MeasureState.OK : MeasureState.NG;
                            }
                            //batteryHeight[1] = 999.999;
                            else
                            {
                                cellHeightResult = MeasureState.NA;
                            }
                            cellHeightResult = batteryHeight[0] >= opcConfig.standardHeightLimit.Min
                            && batteryHeight[0] <= opcConfig.standardHeightLimit.Max ? MeasureState.OK : MeasureState.NG;
                            //保存高度图片
                            if (cellHeightResult == MeasureState.OK)
                            {
                                heightResult = MeasureState.OK;
                                heightFileName = VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + @"\" + tempFileName);
                            }
                            else if (cellHeightResult == MeasureState.NG)
                            {
                                heightResult = MeasureState.NG;
                                heightFileName = VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + @"\" + tempFileName);
                            }
                            else
                            {
                                heightResult = MeasureState.NA;
                                heightFileName = VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + $"_{heightResult.ToString()}\\{ tempFileName}");
                            }
                        }
                        timeStr = DateTime.Now.ToString("hh:mm:ss fff");
                        heightResult = cellHeightResult;
                        //保存高度图片
                        //if (cellHeightResult == MeasureState.OK)
@@ -225,25 +275,41 @@
                        //    heightFileName = VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + @"_NG\" + tempFileName);
                        //}
                        heightResult = cellHeightResult;
                        //保存产品及标准块高度图片
                        //if (heightResult != MeasureState.OK)
                        //{
                        //    if (CommonUtil.DetectionOption == DetectionOption.doStandardBlock)
                        //    {
                        //        heightFileName=VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + @"\" + tempFileName);
                        //    }
                        //    else
                        //    {
                        //        heightFileName = VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + $"_{heightResult.ToString()}\\{ tempFileName}");
                        //    }
                        //}
                        //else
                        //{
                        //    if (opcConfig.IsSaveHeightOKImage||CommonUtil.DetectionOption == DetectionOption.doStandardBlock)
                        //    {
                        //        if (CommonUtil.DetectionOption == DetectionOption.doStandardBlock)
                        //        {
                        //            heightFileName = VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + @"\" + tempFileName);
                        //        }
                        //        else
                        //        {
                        //            DateTime dt = DateTime.Now;
                        //            if (dt.Second >= 10 && dt.Second <= 15)
                        //            {
                        //                heightFileName = VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + @"_OK\" + tempFileName);
                        //            }
                        //        }
                        //    }
                        if (heightResult != MeasureState.OK)
                        {
                            heightFileName = VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + $"_{heightResult.ToString()}\\{ tempFileName}");
                        }
                        else
                        {
                            if (opcConfig.IsSaveHeightOKImage || CommonUtil.DetectionOption == DetectionOption.doStandardBlock)
                            {
                                //DateTime dt = DateTime.Now;
                                //if (dt.Second >= 10 && dt.Second <= 15)
                                {
                                    VisionDetect.SaveImageAs(hi, CommonUtil.ProductHeightImageDir + @"_OK\" + tempFileName);
                                }
                            }
                        }
                        //}
                        CommonUtil.WriteLog(LogType.Inf, string.Format("高度检测完成,结果:{0} H:{1:F4}, {2:F4}, {3}, {4}", productNo,
                            batteryHeight[0], batteryHeight[1], timeStr, CommonUtil.StepControl.ToString()));
@@ -266,7 +332,7 @@
                {
                    tempFileName = DateTime.Now.ToString("HHmmssfff");
                }
                VisionDetect.SaveImageAs(ihImage, $"{CommonUtil.ProductSizeImageDir}_NA\\{tempFileName}");
                VisionDetect.SaveImageAs(ihImage, $"{CommonUtil.ProductNoImageDir}_NA\\{tempFileName}");
            }
            finally
            {