测试前

This commit is contained in:
2021-12-16 15:50:17 +08:00
parent af00b1c47e
commit 2ab5c91d76
14 changed files with 227 additions and 52 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,27 +1,26 @@
[DEVICE INFO]
TotalSpectrometer=1
TotalSpectrometer=2
[FS1]
Model=OSIFAlpha
Port=-1
UID=FLMS15814
UID=FLMS15815
AEMax=0.85
AEMin=0.75
Depth=230000
Depth=65535
[FS2]
Model=OSIFBeta
Port=-1
UID=QEP02975
AEMax=0.85
AEMin=0.75
Depth=65535
Depth=230000
[FS3]
Model=Null
[LINEAR SHUTTER]
Port=COM8
Type=1
DCID=1
TotalPosition=2
TotalPosition=6
Position0=2000
Position1=110000
Position2=220000
@ -29,4 +28,4 @@ Position3=330000
Position4=440000
Position5=550000
[HUMITURE]
port=COM11
Port=COM11

122
main.cpp
View File

@ -12,43 +12,91 @@ using namespace std;
int main(int argc, char *argv[])
{
using namespace ZZ_MISCDEF::ZZ_RUNPARAMS;
using namespace ZZ_MISCDEF::MISC_DETECTOR;
QCoreApplication a(argc, argv);
//////////////////////////////////////////////////////////////////////////
////
GY39Controller m_ctrlHumitureDetector;
DataFileProcessor m_dfpSaver;
ZZ_SysConfigger m_scConfiggerLoader;
Scheduler m_sTimer;
CMainDataGrabber m_mdgGrabber;
////
bool bRes;
float m_fChassisTemp, m_fChassisHum;
RunTimeGrabberParams m_struRuntimeParams;
EContext m_struEC;
MEContext m_struMEC;
HumitureDeviceInfo m_struHumitureDI;
//////////////////////////////////////////////////////////////////////////logger
//QT_LOG::ZZ_InitLogger(QCoreApplication::applicationDirPath() + "/Log/");
float fTemp, fHum;
GY39Controller m_test123;
m_test123.Initialize("COM11");
m_test123.GetHumiture(fTemp, fHum);
//////////////////////////////////////////////////////////////////////////configger
DataFileProcessor testdp;
ZZ_SysConfigger test;
Scheduler testS;
RunTimeGrabberParams testp;
EContext testEC;
MEContext testMEC;
test.Initialize();
test.LoadSettingsFromFile_System();
test.LoadSettingsFromFile_MISC();
test.GetGrabberRunParams(testp);
test.GetECParams(testEC);
test.GetMECParams(testMEC);
testS.SetAcqTimeParams(testp.atsParams);
//m_test123;
//m_test123.Initialize("COM11");
//m_test123.GetHumiture(fTemp, fHum);
//////////////////////////////////////////////////////////////////////////config
bRes = m_scConfiggerLoader.Initialize();
if (bRes)
{
return -1;
}
testdp.SetEnvironmentContex(testEC);
testdp.SetManmadeEnviromentalContext(testMEC);
m_scConfiggerLoader.GetParams(m_struRuntimeParams, m_struEC, m_struMEC, m_struHumitureDI);
m_sTimer.SetAcqTimeParams(m_struRuntimeParams.atsParams);
m_dfpSaver.SetEnvironmentContex(m_struEC);
m_dfpSaver.SetManmadeEnviromentalContext(m_struMEC);
m_ctrlHumitureDetector.Initialize(m_struHumitureDI.qstrInterfaceName.toStdString());
//////////////////////////////////////////////////////////////////////////prepare
m_sTimer.Preheating();
m_ctrlHumitureDetector.GetHumiture_retry(m_fChassisTemp, m_fChassisHum);
//////////////////////////////////////////////////////////////////////////
QThread* m_pqDataGrabberThreadHolder = new QThread();
QThread* m_pqTimerThreadHolder = new QThread();
m_mdgGrabber.moveToThread(m_pqDataGrabberThreadHolder);
m_sTimer.moveToThread(m_pqTimerThreadHolder);
m_mdgGrabber.SetContext(m_struRuntimeParams, m_dfpSaver, m_sTimer);
m_mdgGrabber.Init_Normal();
m_pqDataGrabberThreadHolder->start();
m_pqTimerThreadHolder->start();
m_mdgGrabber.Init_Self();
m_sTimer.SelfStart();
//////////////////////////////////////////////////////////////////////////test
// DataFileProcessor testdp;
// ZZ_SysConfigger test;
// Scheduler testS;
//
// RunTimeGrabberParams testp;
// EContext testEC;
// MEContext testMEC;
// test.Initialize();
// test.LoadSettingsFromFile_System();
// test.LoadSettingsFromFile_MISC();
// test.GetGrabberRunParams(testp);
// test.GetECParams(testEC);
// test.GetMECParams(testMEC);
//
// testS.SetAcqTimeParams(testp.atsParams);
// testdp.SetEnvironmentContex(testEC);
// testdp.SetManmadeEnviromentalContext(testMEC);
//testdp.WriteDataFile();
//////////////////////////////////////////////////////////////////////////test
using namespace ZZ_MISCDEF::ZZ_RUNPARAMS;
CMainDataGrabber testDG;
QThread* m_pqDataGrabberThreadHolder = new QThread();
testDG.moveToThread(m_pqDataGrabberThreadHolder);
testDG.SetContext(testp, testdp, testS);
testDG.Init_Normal();
//CMainDataGrabber testDG;
//QThread* m_pqDataGrabberThreadHolder = new QThread();
//testDG.moveToThread(m_pqDataGrabberThreadHolder);
//testDG.SetContext(testp, testdp, testS);
//testDG.Init_Normal();
//testDG.SetGrabberFileProcessor(testdp);
//testDG.SetGrabberParams(testp);
//testDG.SetTimer(testS);
@ -56,23 +104,19 @@ int main(int argc, char *argv[])
//testDG.InitializeWorkers();
//testDG.SetupMsgPipelines();
//testDG.StartWorkers();
m_pqDataGrabberThreadHolder->start();
testDG.Init_Self();
//m_pqDataGrabberThreadHolder->start();
//testDG.Init_Self();
//testDG.InitThreadStatus();
//testDG.InitializeWorkers();
//testDG.InitLS();
//testDG.SetupMsgPipelines();
//testDG.StartWorkers();
//testDG.StartGrab();
QThread* m_pqTimerThreadHolder = new QThread();
testS.moveToThread(m_pqTimerThreadHolder);
m_pqTimerThreadHolder->start();
testS.SelfStart();
//QThread* m_pqTimerThreadHolder = new QThread();
//testS.moveToThread(m_pqTimerThreadHolder);
//m_pqTimerThreadHolder->start();
//testS.SelfStart();
//QString qstrTest = "This is a test message 2";
//qDebug() << qstrTest;

View File

@ -311,4 +311,12 @@ namespace ZZ_MISCDEF
}ATPDataHeader;
}
//misc detector
namespace MISC_DETECTOR
{
typedef struct tagHumitureDeviceInfo
{
QString qstrInterfaceName;
}HumitureDeviceInfo;
}
};

View File

@ -121,6 +121,7 @@ int GY39Controller::GetHumiture(float &fTemp, float &fHum)
qbSend[0] = (ZZ_U8)0xA5;
qbSend[1] = (ZZ_U8)0x52;
qbSend[2] = (ZZ_U8)0xF7;
int iRes = SendCommand(qbSend);
if (iRes)
{
@ -138,3 +139,21 @@ int GY39Controller::GetHumiture(float &fTemp, float &fHum)
fHum = m_fHumidity;
return 0;
}
int GY39Controller::GetHumiture_retry(float &fTemp, float &fHum)
{
int iCount = 0;
while (iCount<3)
{
if (GetHumiture(fTemp, fHum) == 0)
{
return 0;
}
else
{
iCount++;
}
}
return 1;
}

View File

@ -13,6 +13,7 @@ private:
public:
int Initialize(std::string ucPortName,bool bAuto15 = false,bool bAuto45 = false);
int GetHumiture(float &fTemp, float &fHum);
int GetHumiture_retry(float &fTemp, float &fHum);
public slots:
signals:

View File

@ -78,6 +78,9 @@
m_struLSContext.ucCmdID = m_qsDeviceConfig->value(QString("LINEAR SHUTTER/DCID")).toInt();
m_struLSContext.ucProtocolType = m_qsDeviceConfig->value(QString("LINEAR SHUTTER/Type")).toInt();
m_struLSContext.strInterface = m_qsDeviceConfig->value(QString("LINEAR SHUTTER/Port")).toString().toStdString();
//////////////////////////////////////////////////////////////////////////humiture
m_struHumitureDeviceInfo.qstrInterfaceName = m_qsDeviceConfig->value(QString("HUMITURE/Port")).toString();
//////////////////////////////////////////////////////////////////////////load json settings
qfJConfig.setFileName(m_qstrJSONConfigFilePath);
bool bRes = qfJConfig.open(QIODevice::ReadOnly);
@ -95,6 +98,21 @@
return 2;
}
m_qjoJObj = m_qjdJDoc.object();
int iRes = LoadSettingsFromFile_System();
if (iRes)
{
qDebug() << " SysConfigger Initialize Err...LoadSettingsFromFile_System";
return iRes;
}
iRes = LoadSettingsFromFile_MISC();
if (iRes)
{
qDebug() << " SysConfigger Initialize Err...LoadSettingsFromFile_MISC";
return iRes;
}
return 0;
}
@ -119,6 +137,21 @@
return 0;
}
int ZZ_SysConfigger::GetMiscParams(HumitureDeviceInfo &struHDI)
{
struHDI = m_struHumitureDeviceInfo;
return 0;
}
int ZZ_SysConfigger::GetParams(RunTimeGrabberParams &struGrabberRTParams, EContext &struEC, MEContext &struMEC, HumitureDeviceInfo &struHDI)
{
GetGrabberRunParams(struGrabberRTParams);
GetECParams(struEC);
GetMECParams(struMEC);
GetMiscParams(struHDI);
return 0;
}
int ZZ_SysConfigger::LoadSettingsFromFile_IS1()
{
m_struIS1Info.qstrCalFile_U0 = m_qjoJObj.value("IS1UpCalFile").toString();

View File

@ -3,7 +3,7 @@
#include "ZZ_Types.h"
using namespace ZZ_MISCDEF::ZZ_RUNPARAMS;
using namespace ZZ_MISCDEF::ZZ_DATAFILE;
using namespace ZZ_MISCDEF::MISC_DETECTOR;
class ZZ_SysConfigger :public QObject
{
Q_OBJECT
@ -16,6 +16,8 @@ public:
int GetGrabberRunParams(RunTimeGrabberParams &struGrabberRTParams);
int GetECParams(EContext &struEC);
int GetMECParams(MEContext &struMEC);
int GetMiscParams(HumitureDeviceInfo &struHDI);
int GetParams(RunTimeGrabberParams &struGrabberRTParams, EContext &struEC, MEContext &struMEC, HumitureDeviceInfo &struHDI);
int LoadSettingsFromFile_IS1();
int LoadSettingsFromFile_iSIF();
@ -38,6 +40,7 @@ public:
LSContext m_struLSContext;
FSContext m_struFSContext;
AcqPosSettings m_struAcqPosition;
HumitureDeviceInfo m_struHumitureDeviceInfo;
//////////////////////////////////////////////////////////////////////////
EContext m_struEC;
MEContext m_struMEC;

View File

@ -381,7 +381,7 @@ int CMainDataGrabber::GrabOnceFinished()
for (int i=0;i< m_struAcqPosSetting.iTotalPosition-1;i++)
{
////move to
m_ctrlLS.ILMES_MoveToPos(i+1);
// m_ctrlLS.ILMES_MoveToPos(i+1);
m_struAcqPosSetting.iPosition[i + 1];
m_iFlagIsCapturing_Signal = 1;
emit SignalStartGrabOnce_Signal();
@ -392,7 +392,7 @@ int CMainDataGrabber::GrabOnceFinished()
////move to
m_ctrlLS.ILMES_MoveToPos(0);
// m_ctrlLS.ILMES_MoveToPos(0);
m_struAcqPosSetting.iPosition[0];
m_iFlagIsCapturing_Dark = 1;
emit SignalStartGrabOnce_Dark();

View File

@ -50,7 +50,6 @@ void Scheduler::StartAsPlanned()
}
}
int iIntervalInMS = m_struAcqTime.qtInterval.hour() * 3600 * 1000 + m_struAcqTime.qtInterval.minute() * 60 * 1000 + m_struAcqTime.qtInterval.second() * 1000;
m_GrabTimer->start(iIntervalInMS);
@ -58,6 +57,14 @@ void Scheduler::StartAsPlanned()
int Scheduler::OnTimeCounter()
{
QTime qtTime = QTime::currentTime();
if (m_struAcqTime.qtStartTime <= qtTime && qtTime < m_struAcqTime.qtStopTime)
{
return 1;
qDebug() << "Non working time. Idling......";
}
emit SignalGrabOnce();
return 0;
}