This commit is contained in:
2022-01-10 17:46:44 +08:00
parent 5f9208b9e1
commit a3d2319f56
49 changed files with 174 additions and 391 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

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

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

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

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

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

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

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

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -28,6 +28,12 @@ int main(int argc, char *argv[])
Scheduler m_sTimer; Scheduler m_sTimer;
CMainDataGrabber m_mdgGrabber; CMainDataGrabber m_mdgGrabber;
CMainDataUploader m_mduUploader; CMainDataUploader m_mduUploader;
ErrInfo m_eiErrInfo;
m_eiErrInfo.fChassisTempErr = 0;
m_eiErrInfo.fTecTempErr = 0;
m_eiErrInfo.iDataTransferErr = 0;
m_eiErrInfo.iShutterErr = 0;
//// ////
bool bRes; bool bRes;
@ -84,8 +90,10 @@ int main(int argc, char *argv[])
m_mdgGrabber.Init_Normal(); m_mdgGrabber.Init_Normal();
m_mduUploader.Initialize(); m_mduUploader.Initialize();
//m_mduUploader.UploadInfo(); m_mduUploader.SetErr(m_eiErrInfo);
m_mduUploader.UploadInfo();
m_mduUploader.UploadErr();
m_pqDataGrabberThreadHolder->start(); m_pqDataGrabberThreadHolder->start();
m_pqTimerThreadHolder->start(); m_pqTimerThreadHolder->start();
m_pqUploaderThreadHolder->start(); m_pqUploaderThreadHolder->start();

View File

@ -179,6 +179,14 @@ namespace ZZ_MISCDEF
//<2F><><EFBFBD>в<EFBFBD><D0B2><EFBFBD> //<2F><><EFBFBD>в<EFBFBD><D0B2><EFBFBD>
namespace ZZ_RUNPARAMS namespace ZZ_RUNPARAMS
{ {
typedef struct tagErrorInfo
{
int iDataTransferErr = -1000;
float fTecTempErr = -1000;
int iShutterErr = -1000;
float fChassisTempErr = -1000;
}ErrInfo;
typedef struct tagFiberSpecContext typedef struct tagFiberSpecContext
{ {
ZZ_U8 ucDeviceNumber; ZZ_U8 ucDeviceNumber;

View File

@ -7,6 +7,7 @@
m_qstrDeviceConfigFilePath = "E:/WorkSpace/TowerOptoSifAndSpectral/config/DeviceSettings.ini"; m_qstrDeviceConfigFilePath = "E:/WorkSpace/TowerOptoSifAndSpectral/config/DeviceSettings.ini";
m_qstrJSONConfigFilePath = "E:/WorkSpace/TowerOptoSifAndSpectral/config/config.json"; m_qstrJSONConfigFilePath = "E:/WorkSpace/TowerOptoSifAndSpectral/config/config.json";
#else #else
m_qstrDeviceConfigFilePath = "/home/data/Setting/DeviceSettings.ini";
m_qstrJSONConfigFilePath = ("/home/data/Setting/config.json"); m_qstrJSONConfigFilePath = ("/home/data/Setting/config.json");
#endif // DEBUG #endif // DEBUG

View File

@ -2,6 +2,8 @@
ZZ_HttpTransfer::ZZ_HttpTransfer(QObject* parent /*= nullptr*/) ZZ_HttpTransfer::ZZ_HttpTransfer(QObject* parent /*= nullptr*/)
{ {
m_pNetworkManager = nullptr; m_pNetworkManager = nullptr;
m_pNetworkManagerThread = nullptr;
//connect(this, &ZZ_HttpTransfer::SignalInit_Self, this, &ZZ_HttpTransfer::SlotInit_Self);
} }
ZZ_HttpTransfer::~ZZ_HttpTransfer() ZZ_HttpTransfer::~ZZ_HttpTransfer()
@ -10,14 +12,24 @@ ZZ_HttpTransfer::~ZZ_HttpTransfer()
{ {
delete m_pNetworkManager; delete m_pNetworkManager;
} }
if (m_pNetworkManagerThread != nullptr)
{
delete m_pNetworkManagerThread;
}
} }
// void ZZ_HttpTransfer::Init_Self()
// {
// emit SignalInit_Self();
// }
int ZZ_HttpTransfer::SendData() int ZZ_HttpTransfer::SendData()
{ {
if (m_pNetworkManager == nullptr) if (m_pNetworkManagerThread == nullptr)
{ {
m_pNetworkManager = new QNetworkAccessManager(); m_pNetworkManagerThread = new QNetworkAccessManager();
connect(m_pNetworkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(SlotReplyFinished(QNetworkReply*))); connect(m_pNetworkManagerThread, SIGNAL(finished(QNetworkReply*)), this, SLOT(SlotReplyFinishedThread(QNetworkReply*)));
} }
QNetworkRequest qnRequest; QNetworkRequest qnRequest;
@ -44,7 +56,7 @@ int ZZ_HttpTransfer::SendData()
qbSend.append(qstrSend.toLatin1()); qbSend.append(qstrSend.toLatin1());
qbSend.append((char*)m_vecCalcedData[i][j].fData, sizeof(float)*m_vecCalcedData[i][j].iPixels); qbSend.append((char*)m_vecCalcedData[i][j].fData, sizeof(float)*m_vecCalcedData[i][j].iPixels);
m_pNetworkManager->post(qnRequest, qbSend); m_pNetworkManagerThread->post(qnRequest, qbSend);
iFlagIsReplied = 0; iFlagIsReplied = 0;
int iCount = 0; int iCount = 0;
while (!iFlagIsReplied) while (!iFlagIsReplied)
@ -120,7 +132,7 @@ int ZZ_HttpTransfer::SendInfo()
{ {
iCount++; iCount++;
Delay_MSec(500); Delay_MSec(500);
if (iCount>20) if (iCount>2)
{ {
iFlagIsReplied = 1; iFlagIsReplied = 1;
qDebug() << "Reply Timeout:Upload Info "; qDebug() << "Reply Timeout:Upload Info ";
@ -135,16 +147,73 @@ int ZZ_HttpTransfer::SendInfo()
int ZZ_HttpTransfer::SendErr() int ZZ_HttpTransfer::SendErr()
{ {
if (m_pNetworkManager == nullptr)
{
m_pNetworkManager = new QNetworkAccessManager();
connect(m_pNetworkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(SlotReplyFinished(QNetworkReply*)));
}
QNetworkRequest qnRequest; QNetworkRequest qnRequest;
qnRequest.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("application/json")); qnRequest.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("application/json"));
qnRequest.setUrl(QUrl("http://172.16.0.234/fileup/Warning.php")); qnRequest.setUrl(QUrl("http://172.16.0.234/fileup/Warning.php"));
QByteArray abTest; QByteArray qbSend;
QString qstrSend;
qbSend.clear();
qstrSend.clear();
m_pNetworkManager->post(qnRequest, abTest); if (m_struErrInfo.fChassisTempErr==-1000)
{
}
else
{
qstrSend += "Case_Temp:" + QString("%1").arg(m_struErrInfo.iDataTransferErr);
}
if (m_struErrInfo.fTecTempErr == -1000)
{
}
else
{
qstrSend += "##TEC_Temp:" + QString("%1").arg(m_struErrInfo.fTecTempErr);
}
if (m_struErrInfo.iDataTransferErr == -1000)
{
}
else
{
qstrSend += "##No_Data:" + QString("%1").arg(m_struErrInfo.iDataTransferErr);
}
if (m_struErrInfo.iShutterErr == -1000)
{
}
else
{
qstrSend += "##Shutter_Pos:" + QString("%1").arg(m_struErrInfo.iDataTransferErr);
}
qbSend = qstrSend.toLatin1();
m_pNetworkManager->post(qnRequest, qbSend);
iFlagIsReplied = 0;
int iCount = 0;
while (!iFlagIsReplied)
{
iCount++;
Delay_MSec(500);
if (iCount > 2)
{
iFlagIsReplied = 1;
qDebug() << "Reply Timeout:Upload Info ";
}
}
return 0; return 0;
} }
void ZZ_HttpTransfer::SetErrInfo(ErrInfo struErrInfo)
{
m_struErrInfo = struErrInfo;
}
void ZZ_HttpTransfer::SetContext(EContext struEC, MEContext struMEC) void ZZ_HttpTransfer::SetContext(EContext struEC, MEContext struMEC)
{ {
m_struEC = struEC; m_struEC = struEC;
@ -172,8 +241,8 @@ void ZZ_HttpTransfer::Delay_MSec(ZZ_U16 usMS)
int ZZ_HttpTransfer::SlotReplyFinished(QNetworkReply* qnReply) int ZZ_HttpTransfer::SlotReplyFinished(QNetworkReply* qnReply)
{ {
//QString qstrURL = qnReply->url().toString(); QString qstrURL = qnReply->url().toString();
//QByteArray qbData = qnReply->readAll(); QByteArray qbData = qnReply->readAll();
if (qnReply->error()== QNetworkReply::NoError) if (qnReply->error()== QNetworkReply::NoError)
{ {
iFlagIsReplied = 1; iFlagIsReplied = 1;
@ -185,3 +254,36 @@ int ZZ_HttpTransfer::SlotReplyFinished(QNetworkReply* qnReply)
//delete qnReply; //delete qnReply;
return 0; return 0;
} }
int ZZ_HttpTransfer::SlotReplyFinishedThread(QNetworkReply* qnReply)
{
QString qstrURL = qnReply->url().toString();
QByteArray qbData = qnReply->readAll();
if (qnReply->error() == QNetworkReply::NoError)
{
iFlagIsReplied = 1;
}
qnReply->abort();
qnReply->close();
qnReply->deleteLater();
qnReply = NULL;
//delete qnReply;
return 0;
}
// int ZZ_HttpTransfer::SlotInit_Self()
// {
// if (m_pNetworkManager == nullptr)
// {
// m_pNetworkManager = new QNetworkAccessManager();
// connect(m_pNetworkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(SlotReplyFinished(QNetworkReply*)));
// }
// else
// {
// delete m_pNetworkManager;
// m_pNetworkManager = new QNetworkAccessManager();
// connect(m_pNetworkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(SlotReplyFinished(QNetworkReply*)));
// }
// return 0;
// }

View File

@ -19,10 +19,13 @@ public:
~ZZ_HttpTransfer(); ~ZZ_HttpTransfer();
public: public:
public: public:
//void Init_Self();
int SendData(); int SendData();
int SendInfo(); int SendInfo();
int SendErr(); int SendErr();
void SetErrInfo(ErrInfo struErrInfo);
void SetContext(EContext struEC, MEContext struMEC); void SetContext(EContext struEC, MEContext struMEC);
void SetDeviceInfo(RunTimeGrabberParams struGrabberRTParams); void SetDeviceInfo(RunTimeGrabberParams struGrabberRTParams);
void SetCalData(vector<vector<CalDataFrame>> vecCalcedData); void SetCalData(vector<vector<CalDataFrame>> vecCalcedData);
@ -31,6 +34,9 @@ private:
private: private:
QNetworkAccessManager *m_pNetworkManager; QNetworkAccessManager *m_pNetworkManager;
QNetworkAccessManager *m_pNetworkManagerThread;
ErrInfo m_struErrInfo;
EContext m_struEC; EContext m_struEC;
MEContext m_struMEC; MEContext m_struMEC;
RunTimeGrabberParams m_struGrabberRTParams; RunTimeGrabberParams m_struGrabberRTParams;
@ -39,4 +45,8 @@ private:
int iFlagIsReplied; int iFlagIsReplied;
public slots: public slots:
int SlotReplyFinished(QNetworkReply* qnReply); int SlotReplyFinished(QNetworkReply* qnReply);
int SlotReplyFinishedThread(QNetworkReply* qnReply);
//int SlotInit_Self();
signals:
//void SignalInit_Self();
}; };

View File

@ -4,6 +4,7 @@ CMainDataUploader::CMainDataUploader(QObject* parent /*= nullptr*/)
{ {
m_pRadConverter = new RadConverter; m_pRadConverter = new RadConverter;
m_pTransfer = new ZZ_HttpTransfer; m_pTransfer = new ZZ_HttpTransfer;
//connect(this, &CMainDataUploader::SignalInit_Self, m_pTransfer, &ZZ_HttpTransfer::SlotInit_Self);
} }
CMainDataUploader::~CMainDataUploader() CMainDataUploader::~CMainDataUploader()
@ -18,6 +19,12 @@ CMainDataUploader::~CMainDataUploader()
} }
} }
void CMainDataUploader::SetErr(ErrInfo struErrInfo)
{
m_pTransfer->SetErrInfo(struErrInfo);
//m_struErrInfo = struErrInfo;
}
void CMainDataUploader::SetData(vector<vector<DataFrame>> vecData) void CMainDataUploader::SetData(vector<vector<DataFrame>> vecData)
{ {
QDateTime qdtTime = QDateTime::currentDateTime(); QDateTime qdtTime = QDateTime::currentDateTime();
@ -77,6 +84,7 @@ int CMainDataUploader::UploadInfo()
int CMainDataUploader::UploadErr() int CMainDataUploader::UploadErr()
{ {
m_pTransfer->SendErr();
return 0; return 0;
} }
@ -92,9 +100,16 @@ int CMainDataUploader::Initialize()
m_pRadConverter->LoadCalibrationFrames(m_struGrabberRTParams,m_vecCalData); m_pRadConverter->LoadCalibrationFrames(m_struGrabberRTParams,m_vecCalData);
m_pTransfer->SetContext(m_struEC, m_struMEC); m_pTransfer->SetContext(m_struEC, m_struMEC);
m_pTransfer->SetDeviceInfo(m_struGrabberRTParams); m_pTransfer->SetDeviceInfo(m_struGrabberRTParams);
//m_pTransfer->Init_Self();
return 0; return 0;
} }
// int CMainDataUploader::Init_Self()
// {
// emit SignalInit_Self();
// return 0;
// }
// int CMainDataUploader::SlotPushOneDataFrame(vector<vector<DataFrame>> vecData) // int CMainDataUploader::SlotPushOneDataFrame(vector<vector<DataFrame>> vecData)
// { // {
// return 0; // return 0;
@ -107,3 +122,13 @@ int CMainDataUploader::SlotPushOneDataFrame()
m_vecData.clear(); m_vecData.clear();
return 0; return 0;
} }
int CMainDataUploader::SlotUpdateErrorInfo()
{
return 0;
}
// int CMainDataUploader::SlotInit_Self()
// {
//
// }

View File

@ -20,12 +20,14 @@ public:
public: public:
//set attributes //set attributes
void SetErr(ErrInfo struErrInfo);
void SetData(vector<vector<DataFrame>> vecData); void SetData(vector<vector<DataFrame>> vecData);
void SetRTGP(RunTimeGrabberParams struGrabberRTParams); void SetRTGP(RunTimeGrabberParams struGrabberRTParams);
void SetContext(EContext struEC, MEContext struMEC); void SetContext(EContext struEC, MEContext struMEC);
//load calibration file after set attributes //load calibration file after set attributes
int Initialize(); int Initialize();
//int Init_Self();
void Calibration(); void Calibration();
@ -33,10 +35,11 @@ public:
int UploadErr(); int UploadErr();
int UploadData(); int UploadData();
private: public:
RadConverter *m_pRadConverter = NULL; RadConverter *m_pRadConverter = NULL;
ZZ_HttpTransfer *m_pTransfer = NULL; ZZ_HttpTransfer *m_pTransfer = NULL;
private: private:
//ErrInfo m_struErrInfo;
EContext m_struEC; EContext m_struEC;
MEContext m_struMEC; MEContext m_struMEC;
RunTimeGrabberParams m_struGrabberRTParams; RunTimeGrabberParams m_struGrabberRTParams;
@ -48,4 +51,9 @@ private:
public slots: public slots:
//int SlotPushOneDataFrame(vector<vector<DataFrame>> vecData); //int SlotPushOneDataFrame(vector<vector<DataFrame>> vecData);
int SlotPushOneDataFrame(); int SlotPushOneDataFrame();
int SlotUpdateErrorInfo();
signals:
//void SignalInit_Self();
}; };