diff --git a/src/lpMain/IStation.h b/src/lpMain/IStation.h index d71d117..69662d8 100644 --- a/src/lpMain/IStation.h +++ b/src/lpMain/IStation.h @@ -23,7 +23,6 @@ public: virtual QVariant getVariant(){ return QVariant(); } virtual void revResult() = 0; virtual bool trigImage() = 0; - virtual bool isWorkingOk() = 0; virtual QString currentRunningModel() const = 0; virtual void setCurrentModel(QString strModel) = 0; diff --git a/src/lpMain/Station.cpp b/src/lpMain/Station.cpp index f061886..6598e37 100644 --- a/src/lpMain/Station.cpp +++ b/src/lpMain/Station.cpp @@ -450,11 +450,6 @@ WfModel * Station::wfModel(QString str) } -bool Station::isWorkingOk() -{ - return true; -} - QString Station::modelByPlcCmd(int nIndex) { //qWarning() << "modelByPlcCmd, nIndex is :" << nIndex; diff --git a/src/lpMain/Station.h b/src/lpMain/Station.h index 089161f..e7c23f3 100644 --- a/src/lpMain/Station.h +++ b/src/lpMain/Station.h @@ -32,7 +32,6 @@ public: virtual QVariant getVariant(); virtual void revResult(); virtual bool trigImage(); - virtual bool isWorkingOk(); virtual QString currentRunningModel() const { return m_strCurrentModel; } virtual QString currentSelectModel(); diff --git a/src/lpMain/WfCtrl.cpp b/src/lpMain/WfCtrl.cpp index c67aa31..a0d1d97 100644 --- a/src/lpMain/WfCtrl.cpp +++ b/src/lpMain/WfCtrl.cpp @@ -28,7 +28,7 @@ CWfCtrl::CWfCtrl(ICoreCtrl* p1, WfColossus* p3) QString strSrcImgPath = QCoreApplication::applicationDirPath() + "/DBFiles/SrcImages/"; QDiskCleanThread *pDCleanThread = new QDiskCleanThread; pDCleanThread->setModel(CleanDir); - pDCleanThread->setUseFlag(lpSysConfig::instance()->m_CheckEnable); + pDCleanThread->setUseFlag(lpSysConfig::instance()->m_CheckEnable_SrcImg); pDCleanThread->setDays(lpSysConfig::instance()->m_CheckFileDays); pDCleanThread->SetImgStorageFolder(strSrcImgPath); pDCleanThread->setMiniSize(lpSysConfig::instance()->m_MinSpaceSizeG); @@ -38,7 +38,7 @@ CWfCtrl::CWfCtrl(ICoreCtrl* p1, WfColossus* p3) QString strRltImgPath = QCoreApplication::applicationDirPath() + "/DBFiles/Images/"; QDiskCleanThread *pCleanDir = new QDiskCleanThread; pCleanDir->setModel(CleanDir); - pCleanDir->setUseFlag(lpSysConfig::instance()->m_CheckEnable); + pCleanDir->setUseFlag(lpSysConfig::instance()->m_CheckEnable_RltImg); pCleanDir->setDays(lpSysConfig::instance()->m_CheckFileDays); pCleanDir->SetImgStorageFolder(strRltImgPath); pCleanDir->setMiniSize(lpSysConfig::instance()->m_MinSpaceSizeG); @@ -141,6 +141,7 @@ bool CWfCtrl::initStation() { if (!m_pCoreCtrl) return false; + QStringList camKeys = m_pCoreCtrl->ICameraKeys(); for (QStringList::iterator it = camKeys.begin(); it != camKeys.end(); ++it) { TP_CAMERA_OPTION camOpt; @@ -151,16 +152,16 @@ bool CWfCtrl::initStation() pStation->setCamInfo(camOpt.id, camOpt.algorithm, camOpt.uniqueName, camOpt.showName); m_pStationMap.insert(camOpt.uniqueName, pStation); - if (camOpt.deviceType != 100)//虚拟相机模式下不开启定时删除图像的模式 - { - QDiskCleanThread *pDCleanThread = new QDiskCleanThread; - pDCleanThread->setUseFlag(lpSysConfig::instance()->m_CheckEnable); - pDCleanThread->setDays(lpSysConfig::instance()->m_CheckFileDays); - pDCleanThread->SetImgStorageFolder(camOpt.folder); - pDCleanThread->setMiniSize(lpSysConfig::instance()->m_MinSpaceSizeG); - pDCleanThread->start(); - m_pDCThreadList.append(pDCleanThread); - } +// if (camOpt.deviceType != 100)//虚拟相机模式下不开启定时删除图像的模式 +// { +// QDiskCleanThread *pDCleanThread = new QDiskCleanThread; +// pDCleanThread->setUseFlag(lpSysConfig::instance()->m_CheckEnable); +// pDCleanThread->setDays(lpSysConfig::instance()->m_CheckFileDays); +// pDCleanThread->SetImgStorageFolder(camOpt.folder); +// pDCleanThread->setMiniSize(lpSysConfig::instance()->m_MinSpaceSizeG); +// pDCleanThread->start(); +// m_pDCThreadList.append(pDCleanThread); +// } } return true; } diff --git a/tpvs17/lpMain/CMainWin.cpp b/tpvs17/lpMain/CMainWin.cpp index fd981ed..eb366da 100644 --- a/tpvs17/lpMain/CMainWin.cpp +++ b/tpvs17/lpMain/CMainWin.cpp @@ -208,8 +208,14 @@ void CMainWin::IVariantMapToUI(emTpUiDataType dataType, const QString& camKey, c QString str2 = pStation->currentRunningModel(); int ID = pStation->stationId(); QString strModelName = QString("%1_%2").arg(ID).arg(str2); - QString strImgPath = genSavePath(strModelName, image); - if(lpSysConfig::instance()->m_bSaveSrcImg == true) + QString strImgPath; + + if((lpSysConfig::instance()->m_bSaveRltImg_st1 == true && pStation->stationId() == 1) + ||(lpSysConfig::instance()->m_bSaveRltImg_st2 == true && pStation->stationId() == 2)) + strImgPath = genSavePath(strModelName, image); + + if((lpSysConfig::instance()->m_bSaveSrcImg_st1 == true&&pStation->stationId()==1) + || (lpSysConfig::instance()->m_bSaveSrcImg_st2 == true && pStation->stationId() == 2)) genSaveSrcImgPath(strModelName, srcImg); Struct2SaveData nStructData; nStructData.dAngle = dAngle; @@ -220,7 +226,7 @@ void CMainWin::IVariantMapToUI(emTpUiDataType dataType, const QString& camKey, c nStructData.stationName = pStation->stationShowName(); nStructData.value1 = strImgPath; nStructData.value2 = str2; - qWarning() << "Add Result to DB,cam=" << camKey; + //qWarning() << "Add Result to DB,cam=" << camKey; m_db->addData2DB(nStructData); } // else { diff --git a/tpvs17/lpMain/QDeviceMgrUI.cpp b/tpvs17/lpMain/QDeviceMgrUI.cpp index 7cb2f5d..c174d61 100644 --- a/tpvs17/lpMain/QDeviceMgrUI.cpp +++ b/tpvs17/lpMain/QDeviceMgrUI.cpp @@ -26,8 +26,12 @@ void QDeviceMgrUI::setParam() { ui.m_lineEdit_ComName->setText(lpSysConfig::instance()->m_ComName); ui.m_lineEdit_Baute->setText(QString("%1").arg(lpSysConfig::instance()->m_Baut)); - ui.checkBox->setChecked(lpSysConfig::instance()->m_bSaveSrcImg); - ui.checkBox_2->setChecked(lpSysConfig::instance()->m_CheckEnable); + ui.checkBox_RltImg->setChecked(lpSysConfig::instance()->m_CheckEnable_RltImg); + ui.checkBox_SrcImg->setChecked(lpSysConfig::instance()->m_CheckEnable_SrcImg); + ui.checkBox_SaveRltImg_st1->setChecked(lpSysConfig::instance()->m_bSaveRltImg_st1); + ui.checkBox_SaveRltImg_st2->setChecked(lpSysConfig::instance()->m_bSaveRltImg_st2); + ui.checkBox_SaveSrcImg_st1->setChecked(lpSysConfig::instance()->m_bSaveSrcImg_st1); + ui.checkBox_SaveSrcImg_st2->setChecked(lpSysConfig::instance()->m_bSaveSrcImg_st2); ui.spinBox->setValue(lpSysConfig::instance()->m_MinSpaceSizeG); ui.spinBox_2->setValue(lpSysConfig::instance()->m_CheckFileDays); @@ -37,10 +41,15 @@ void QDeviceMgrUI::getParam() { lpSysConfig::instance()->m_ComName = ui.m_lineEdit_ComName->text(); lpSysConfig::instance()->m_Baut = ui.m_lineEdit_Baute->text().toInt(); - lpSysConfig::instance()->m_bSaveSrcImg = ui.checkBox->isChecked(); - lpSysConfig::instance()->m_CheckEnable = ui.checkBox_2->isChecked(); lpSysConfig::instance()->m_MinSpaceSizeG = ui.spinBox->value(); lpSysConfig::instance()->m_CheckFileDays = ui.spinBox_2->value(); + + lpSysConfig::instance()->m_CheckEnable_RltImg = ui.checkBox_RltImg->isChecked(); + lpSysConfig::instance()->m_CheckEnable_SrcImg = ui.checkBox_SrcImg->isChecked(); + lpSysConfig::instance()->m_bSaveRltImg_st1 = ui.checkBox_SaveRltImg_st1->isChecked(); + lpSysConfig::instance()->m_bSaveRltImg_st2 = ui.checkBox_SaveRltImg_st2->isChecked(); + lpSysConfig::instance()->m_bSaveSrcImg_st1 = ui.checkBox_SaveSrcImg_st1->isChecked(); + lpSysConfig::instance()->m_bSaveSrcImg_st2 = ui.checkBox_SaveSrcImg_st2->isChecked(); } void QDeviceMgrUI::showEvent(QShowEvent *event) diff --git a/tpvs17/lpMain/QDeviceMgrUI.ui b/tpvs17/lpMain/QDeviceMgrUI.ui index 03cb139..7b1952b 100644 --- a/tpvs17/lpMain/QDeviceMgrUI.ui +++ b/tpvs17/lpMain/QDeviceMgrUI.ui @@ -6,15 +6,82 @@ 0 0 - 442 - 195 + 470 + 274 + + + 11 + + 设备管理 - - + + + + + + 11 + + + + 通讯设备配置: + + + + + + + 11 + + + + + + + + + 11 + + + + 波特率: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 11 + + + + 串口名: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 11 + + + + + + + + @@ -62,202 +129,193 @@ - - - - - - - 11 - - - - 通讯设备配置: - - - - + + + + 图像保存: + + + + + + + 11 + + + + 保存工位1结果图 + + + + + + + + 11 + + + + 保存工位2结果图 + + + + + + + + 11 + + + + 保存工位1原图 + + + + + + + + 11 + + + + 保存工位2原图 + + + + + + + + + + + 0 + 0 + + + + + 11 + + + + 维护相关: + + + + + + + 11 + + + + 是否启用原图定期删除功能 + + + + + + + 11 - 串口名: + 超期天数: - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + Qt::AlignCenter - - + + 11 - - - - - - - 11 - + + - - 波特率: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + 1 - - - - - - - 11 - + + 360 - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - 0 - 0 - - - - - 11 - - - - 其他相关: - - - - + + + + + 11 - 是否保存原图功能 + 预留磁盘大小: + + + Qt::AlignCenter - - + + 11 - - 是否启用定期删除功能 + + G + + + 1 + + + 10000 - - - - - - - 11 - - - - 预留磁盘大小: - - - Qt::AlignCenter - - - - - - - - 11 - - - - G - - - 1 - - - 10000 - - - - - - - - - - - - 11 - - - - 超期天数: - - - Qt::AlignCenter - - - - - - - - 11 - - - - - - - 1 - - - 360 - - - - - - - - + + + + + + 11 + + + + 是否启用结果图定期删除功能 + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + diff --git a/tpvs17/lpMain/lpSysConfig.cpp b/tpvs17/lpMain/lpSysConfig.cpp index 7a2b225..55d963f 100644 --- a/tpvs17/lpMain/lpSysConfig.cpp +++ b/tpvs17/lpMain/lpSysConfig.cpp @@ -21,12 +21,16 @@ void lpSysConfig::readConfig() m_CheckFileDays = setting.value("CheckThread/days", 7).toInt(); m_CheckDirDays = setting.value("CheckThread/days_dir", 30).toInt(); - m_CheckEnable = setting.value("CheckThread/Enable", false).toBool(); m_MinSpaceSizeG = setting.value("CheckThread/spacesize", 10).toInt();//G + m_CheckEnable_RltImg = setting.value("CheckThread/Enable_RltImg", false).toBool(); + m_CheckEnable_SrcImg = setting.value("CheckThread/Enable_SrcImg", false).toBool(); m_TrigerFilter = setting.value("TrigDetector/FilterTime", 10).toInt(); - m_bSaveSrcImg = setting.value("Image/Save", false).toBool(); + m_bSaveSrcImg_st1 = setting.value("Image/SrcImgSave_st1", false).toBool(); + m_bSaveSrcImg_st2 = setting.value("Image/SrcImgSave_st2", false).toBool(); + m_bSaveRltImg_st1 = setting.value("Image/RltImgSave_st1", false).toBool(); + m_bSaveRltImg_st2 = setting.value("Image/RltImgSave_st2", false).toBool(); } void lpSysConfig::writeConfig() @@ -38,10 +42,14 @@ void lpSysConfig::writeConfig() setting.setValue("CheckThread/days", m_CheckFileDays); setting.setValue("CheckThread/days_dir", m_CheckDirDays); - setting.setValue("CheckThread/Enable", m_CheckEnable); setting.setValue("CheckThread/spacesize", m_MinSpaceSizeG);//G + setting.setValue("CheckThread/Enable_RltImg", m_CheckEnable_RltImg); + setting.setValue("CheckThread/Enable_SrcImg", m_CheckEnable_SrcImg); setting.setValue("TrigDetector/FilterTime", m_TrigerFilter); - setting.setValue("Image/Save", m_bSaveSrcImg); + setting.setValue("Image/SrcImgSave_st1", m_bSaveSrcImg_st1); + setting.setValue("Image/SrcImgSave_st2", m_bSaveSrcImg_st2); + setting.setValue("Image/RltImgSave_st1", m_bSaveRltImg_st1); + setting.setValue("Image/RltImgSave_st2", m_bSaveRltImg_st2); } diff --git a/tpvs17/lpMain/lpSysConfig.h b/tpvs17/lpMain/lpSysConfig.h index fdcba33..c76db13 100644 --- a/tpvs17/lpMain/lpSysConfig.h +++ b/tpvs17/lpMain/lpSysConfig.h @@ -23,12 +23,17 @@ public: int m_CheckFileDays{ 7 };//ⱣͼƬʱ䣨bmpʽͼƬ 㷨Զģ2~5MС int m_CheckDirDays{ 30 };//ⱣͼƬļгʱ䣨ͼ 100kСͼƬ - bool m_CheckEnable{ false }; int m_MinSpaceSizeG{ 10 };//G + bool m_CheckEnable_SrcImg{ false }; + bool m_CheckEnable_RltImg{ false }; int m_TrigerFilter{ 10 }; - bool m_bSaveSrcImg{ false }; + bool m_bSaveSrcImg_st1{ false }; + bool m_bSaveSrcImg_st2{ false }; + + bool m_bSaveRltImg_st1{ false }; + bool m_bSaveRltImg_st2{ false }; private: QString m_CfgPath; }; diff --git a/tpvs17/valveDetector/valveDetector.cpp b/tpvs17/valveDetector/valveDetector.cpp index d824c70..6cb2ec4 100644 --- a/tpvs17/valveDetector/valveDetector.cpp +++ b/tpvs17/valveDetector/valveDetector.cpp @@ -1725,7 +1725,8 @@ cv::Point2f ValveDetector::getCenter(Mat & imgSrc, Point2f pt, InputParam ¶m bool ValveDetector::saveResult(Mat &img, InputParam ¶mIn, OutputParam ¶mOut, QString modelStr) { - if (0 == paramOut.nErrorType) { + return true; +/* if (0 == paramOut.nErrorType) { return true; } QString strName = ""; @@ -1745,7 +1746,7 @@ bool ValveDetector::saveResult(Mat &img, InputParam ¶mIn, OutputParam ¶m strName = str + strName; bool bSave = cv::imwrite(strName.toLocal8Bit().data(), img); qDebug() << "save error image:" << bSave; - return true; + return true;*/ } void ValveDetector::drawToImage(Mat &img, InputParam ¶mIn, OutputParam ¶mOut)