diff --git a/CounterAcq/CounterDevice.cpp b/CounterAcq/CounterDevice.cpp index 46c14df..547952c 100644 --- a/CounterAcq/CounterDevice.cpp +++ b/CounterAcq/CounterDevice.cpp @@ -9,12 +9,9 @@ connect(&this->serialUtil, &QSerialPortUtil::dataRecieved, this, &CounterDevice::dataReceivedHandler); - connect(this, &CounterDevice::successDataCalculate, - this, &CounterDevice::afterFramePhase); - -// kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); -// kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); -// kafkaUtil.createProducer(); + kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); + kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); + kafkaUtil.createProducer(); } CounterDevice::~CounterDevice() @@ -81,7 +78,6 @@ { // 1. 清空dataBuff,等待下一帧的数据 // this->dataBuff.clear(); - std::cout << "+++" << frameByte.toStdString() << std::endl; // 2. 补充其他字段 QDateTime now = QDateTime::currentDateTime(); @@ -90,9 +86,6 @@ counterData->devCode = devCode; this->afterFramePhase(counterData); - - // 3 计算数据ID一样的测量数据的时差值,通道值-参考通道值 - // this->pushChannelRawFrame(counterData); } // 在此处释放内存,不影响后续显示 @@ -103,19 +96,6 @@ } } -void CounterDevice::dataReceivedHandlerByUDP() -{ - - QByteArray ba; - while(udpClient->hasPendingDatagrams()) - { - ba.resize(udpClient->pendingDatagramSize()); - udpClient->readDatagram(ba.data(), ba.size()); - std::cout << ba.data() << std::endl; - } - - dataReceivedHandler(ba); -} void CounterDevice::afterFramePhase(CounterDataDto * counterData) { @@ -151,7 +131,7 @@ QJsonObject jsonObj = counterData->toJSON(i - 1); jsonObj.insert("clientId", SettingConfig::getInstance().CLIENT_ID); jsonObj.insert("deviceId", deviceId); -// kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); + kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); } // 4. 在界面上简单显示相差数据结果 @@ -159,57 +139,3 @@ } } } - -void CounterDevice::pushChannelRawFrame(CounterDataDto * counterData) -{ - QString currentFrameId = counterData->frameId; - QString currentChannelId = QString("%1").arg(counterData->channelId); - - if (counterData->channelId == counterData->channelRefId) - { - // 自身是参考通道 - bench.insert(currentFrameId, counterData->channelData); - counterData->channelClockValue = 0; - - emit successDataCalculate(counterData); - - qlonglong thisBench = counterData->channelData; - // 遍历temp,处理之前的临时暂存的队列 - if (hisList.isEmpty() == false) - { - for (int i = 0; i < hisList.size(); i++) - { - CounterDataDto * hisItem = hisList.at(i); - if (hisItem->frameId == currentFrameId) - { - hisItem->channelClockValue = (hisItem->channelData - thisBench) * 10; - - emit successDataCalculate(hisItem); - delete hisItem; - } - } - - hisList.clear(); - } - } else - { - // 自身不是参考通道,减去相同frameId的参考通道值 - if (bench.contains(currentFrameId) == true) - { - // 在参考基准中能找到 - qlonglong currentBench = bench.find(currentFrameId).value(); - counterData->channelClockValue = (counterData->channelData - currentBench) * 10; // 10ps - - emit successDataCalculate(counterData); - } else - { - // 暂存,等收到基准之后再处置 - CounterDataDto * copyPoint = new CounterDataDto(); - - // ★clone一份对象,存入缓存队列 - counterData->clone(copyPoint); - - hisList.append(copyPoint); - } - } -} diff --git a/CounterAcq/CounterDevice.cpp b/CounterAcq/CounterDevice.cpp index 46c14df..547952c 100644 --- a/CounterAcq/CounterDevice.cpp +++ b/CounterAcq/CounterDevice.cpp @@ -9,12 +9,9 @@ connect(&this->serialUtil, &QSerialPortUtil::dataRecieved, this, &CounterDevice::dataReceivedHandler); - connect(this, &CounterDevice::successDataCalculate, - this, &CounterDevice::afterFramePhase); - -// kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); -// kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); -// kafkaUtil.createProducer(); + kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); + kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); + kafkaUtil.createProducer(); } CounterDevice::~CounterDevice() @@ -81,7 +78,6 @@ { // 1. 清空dataBuff,等待下一帧的数据 // this->dataBuff.clear(); - std::cout << "+++" << frameByte.toStdString() << std::endl; // 2. 补充其他字段 QDateTime now = QDateTime::currentDateTime(); @@ -90,9 +86,6 @@ counterData->devCode = devCode; this->afterFramePhase(counterData); - - // 3 计算数据ID一样的测量数据的时差值,通道值-参考通道值 - // this->pushChannelRawFrame(counterData); } // 在此处释放内存,不影响后续显示 @@ -103,19 +96,6 @@ } } -void CounterDevice::dataReceivedHandlerByUDP() -{ - - QByteArray ba; - while(udpClient->hasPendingDatagrams()) - { - ba.resize(udpClient->pendingDatagramSize()); - udpClient->readDatagram(ba.data(), ba.size()); - std::cout << ba.data() << std::endl; - } - - dataReceivedHandler(ba); -} void CounterDevice::afterFramePhase(CounterDataDto * counterData) { @@ -151,7 +131,7 @@ QJsonObject jsonObj = counterData->toJSON(i - 1); jsonObj.insert("clientId", SettingConfig::getInstance().CLIENT_ID); jsonObj.insert("deviceId", deviceId); -// kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); + kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); } // 4. 在界面上简单显示相差数据结果 @@ -159,57 +139,3 @@ } } } - -void CounterDevice::pushChannelRawFrame(CounterDataDto * counterData) -{ - QString currentFrameId = counterData->frameId; - QString currentChannelId = QString("%1").arg(counterData->channelId); - - if (counterData->channelId == counterData->channelRefId) - { - // 自身是参考通道 - bench.insert(currentFrameId, counterData->channelData); - counterData->channelClockValue = 0; - - emit successDataCalculate(counterData); - - qlonglong thisBench = counterData->channelData; - // 遍历temp,处理之前的临时暂存的队列 - if (hisList.isEmpty() == false) - { - for (int i = 0; i < hisList.size(); i++) - { - CounterDataDto * hisItem = hisList.at(i); - if (hisItem->frameId == currentFrameId) - { - hisItem->channelClockValue = (hisItem->channelData - thisBench) * 10; - - emit successDataCalculate(hisItem); - delete hisItem; - } - } - - hisList.clear(); - } - } else - { - // 自身不是参考通道,减去相同frameId的参考通道值 - if (bench.contains(currentFrameId) == true) - { - // 在参考基准中能找到 - qlonglong currentBench = bench.find(currentFrameId).value(); - counterData->channelClockValue = (counterData->channelData - currentBench) * 10; // 10ps - - emit successDataCalculate(counterData); - } else - { - // 暂存,等收到基准之后再处置 - CounterDataDto * copyPoint = new CounterDataDto(); - - // ★clone一份对象,存入缓存队列 - counterData->clone(copyPoint); - - hisList.append(copyPoint); - } - } -} diff --git a/CounterAcq/CounterDevice.h b/CounterAcq/CounterDevice.h index 3776042..d126933 100644 --- a/CounterAcq/CounterDevice.h +++ b/CounterAcq/CounterDevice.h @@ -5,7 +5,7 @@ #include #include "common/utils/QSerialPortUtil.h" -//#include "common/utils/QKafkaUtil.h" +#include "common/utils/QKafkaUtil.h" #include "common/utils/QByteUtil.h" #include "common/utils/QLogUtil.h" #include "common/utils/SettingConfig.h" @@ -35,23 +35,20 @@ int baudRate; QSerialPortUtil serialUtil; -// QKafkaUtil kafkaUtil; + QKafkaUtil kafkaUtil; QByteArray dataBuff; - QUdpSocket * udpClient; QMap bench; QList hisList; - void pushChannelRawFrame(CounterDataDto * counterData); + void afterFramePhase(CounterDataDto * counterData); signals: void sendDataToDraw(CounterDataDto * counterData); - void successDataCalculate(CounterDataDto * counterData); public slots: void dataReceivedHandler(QByteArray data); - void dataReceivedHandlerByUDP(); - void afterFramePhase(CounterDataDto * counterData); + }; #endif // COUNTERDEVICE_H diff --git a/CounterAcq/CounterDevice.cpp b/CounterAcq/CounterDevice.cpp index 46c14df..547952c 100644 --- a/CounterAcq/CounterDevice.cpp +++ b/CounterAcq/CounterDevice.cpp @@ -9,12 +9,9 @@ connect(&this->serialUtil, &QSerialPortUtil::dataRecieved, this, &CounterDevice::dataReceivedHandler); - connect(this, &CounterDevice::successDataCalculate, - this, &CounterDevice::afterFramePhase); - -// kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); -// kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); -// kafkaUtil.createProducer(); + kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); + kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); + kafkaUtil.createProducer(); } CounterDevice::~CounterDevice() @@ -81,7 +78,6 @@ { // 1. 清空dataBuff,等待下一帧的数据 // this->dataBuff.clear(); - std::cout << "+++" << frameByte.toStdString() << std::endl; // 2. 补充其他字段 QDateTime now = QDateTime::currentDateTime(); @@ -90,9 +86,6 @@ counterData->devCode = devCode; this->afterFramePhase(counterData); - - // 3 计算数据ID一样的测量数据的时差值,通道值-参考通道值 - // this->pushChannelRawFrame(counterData); } // 在此处释放内存,不影响后续显示 @@ -103,19 +96,6 @@ } } -void CounterDevice::dataReceivedHandlerByUDP() -{ - - QByteArray ba; - while(udpClient->hasPendingDatagrams()) - { - ba.resize(udpClient->pendingDatagramSize()); - udpClient->readDatagram(ba.data(), ba.size()); - std::cout << ba.data() << std::endl; - } - - dataReceivedHandler(ba); -} void CounterDevice::afterFramePhase(CounterDataDto * counterData) { @@ -151,7 +131,7 @@ QJsonObject jsonObj = counterData->toJSON(i - 1); jsonObj.insert("clientId", SettingConfig::getInstance().CLIENT_ID); jsonObj.insert("deviceId", deviceId); -// kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); + kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); } // 4. 在界面上简单显示相差数据结果 @@ -159,57 +139,3 @@ } } } - -void CounterDevice::pushChannelRawFrame(CounterDataDto * counterData) -{ - QString currentFrameId = counterData->frameId; - QString currentChannelId = QString("%1").arg(counterData->channelId); - - if (counterData->channelId == counterData->channelRefId) - { - // 自身是参考通道 - bench.insert(currentFrameId, counterData->channelData); - counterData->channelClockValue = 0; - - emit successDataCalculate(counterData); - - qlonglong thisBench = counterData->channelData; - // 遍历temp,处理之前的临时暂存的队列 - if (hisList.isEmpty() == false) - { - for (int i = 0; i < hisList.size(); i++) - { - CounterDataDto * hisItem = hisList.at(i); - if (hisItem->frameId == currentFrameId) - { - hisItem->channelClockValue = (hisItem->channelData - thisBench) * 10; - - emit successDataCalculate(hisItem); - delete hisItem; - } - } - - hisList.clear(); - } - } else - { - // 自身不是参考通道,减去相同frameId的参考通道值 - if (bench.contains(currentFrameId) == true) - { - // 在参考基准中能找到 - qlonglong currentBench = bench.find(currentFrameId).value(); - counterData->channelClockValue = (counterData->channelData - currentBench) * 10; // 10ps - - emit successDataCalculate(counterData); - } else - { - // 暂存,等收到基准之后再处置 - CounterDataDto * copyPoint = new CounterDataDto(); - - // ★clone一份对象,存入缓存队列 - counterData->clone(copyPoint); - - hisList.append(copyPoint); - } - } -} diff --git a/CounterAcq/CounterDevice.h b/CounterAcq/CounterDevice.h index 3776042..d126933 100644 --- a/CounterAcq/CounterDevice.h +++ b/CounterAcq/CounterDevice.h @@ -5,7 +5,7 @@ #include #include "common/utils/QSerialPortUtil.h" -//#include "common/utils/QKafkaUtil.h" +#include "common/utils/QKafkaUtil.h" #include "common/utils/QByteUtil.h" #include "common/utils/QLogUtil.h" #include "common/utils/SettingConfig.h" @@ -35,23 +35,20 @@ int baudRate; QSerialPortUtil serialUtil; -// QKafkaUtil kafkaUtil; + QKafkaUtil kafkaUtil; QByteArray dataBuff; - QUdpSocket * udpClient; QMap bench; QList hisList; - void pushChannelRawFrame(CounterDataDto * counterData); + void afterFramePhase(CounterDataDto * counterData); signals: void sendDataToDraw(CounterDataDto * counterData); - void successDataCalculate(CounterDataDto * counterData); public slots: void dataReceivedHandler(QByteArray data); - void dataReceivedHandlerByUDP(); - void afterFramePhase(CounterDataDto * counterData); + }; #endif // COUNTERDEVICE_H diff --git a/CounterAcq/common/common.pri b/CounterAcq/common/common.pri index 84f57ae..6280f64 100644 --- a/CounterAcq/common/common.pri +++ b/CounterAcq/common/common.pri @@ -3,7 +3,7 @@ SOURCES += $$PWD/utils/QByteUtil.cpp SOURCES += $$PWD/utils/QSerialPortUtil.cpp SOURCES += $$PWD/utils/QLogUtil.cpp -#SOURCES += $$PWD/utils/QKafkaUtil.cpp +SOURCES += $$PWD/utils/QKafkaUtil.cpp SOURCES += $$PWD/utils/HttpRequestUtil.cpp SOURCES += $$PWD/utils/MD5.cpp SOURCES += $$PWD/HttpRequestController.cpp @@ -12,7 +12,7 @@ HEADERS += $$PWD/utils/QByteUtil.h HEADERS += $$PWD/utils/QSerialPortUtil.h HEADERS += $$PWD/utils/QLogUtil.h -#HEADERS += $$PWD/utils/QKafkaUtil.h +HEADERS += $$PWD/utils/QKafkaUtil.h HEADERS += $$PWD/utils/HttpRequestUtil.h HEADERS += $$PWD/utils/DefHead.h HEADERS += $$PWD/utils/MD5.h diff --git a/CounterAcq/CounterDevice.cpp b/CounterAcq/CounterDevice.cpp index 46c14df..547952c 100644 --- a/CounterAcq/CounterDevice.cpp +++ b/CounterAcq/CounterDevice.cpp @@ -9,12 +9,9 @@ connect(&this->serialUtil, &QSerialPortUtil::dataRecieved, this, &CounterDevice::dataReceivedHandler); - connect(this, &CounterDevice::successDataCalculate, - this, &CounterDevice::afterFramePhase); - -// kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); -// kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); -// kafkaUtil.createProducer(); + kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); + kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); + kafkaUtil.createProducer(); } CounterDevice::~CounterDevice() @@ -81,7 +78,6 @@ { // 1. 清空dataBuff,等待下一帧的数据 // this->dataBuff.clear(); - std::cout << "+++" << frameByte.toStdString() << std::endl; // 2. 补充其他字段 QDateTime now = QDateTime::currentDateTime(); @@ -90,9 +86,6 @@ counterData->devCode = devCode; this->afterFramePhase(counterData); - - // 3 计算数据ID一样的测量数据的时差值,通道值-参考通道值 - // this->pushChannelRawFrame(counterData); } // 在此处释放内存,不影响后续显示 @@ -103,19 +96,6 @@ } } -void CounterDevice::dataReceivedHandlerByUDP() -{ - - QByteArray ba; - while(udpClient->hasPendingDatagrams()) - { - ba.resize(udpClient->pendingDatagramSize()); - udpClient->readDatagram(ba.data(), ba.size()); - std::cout << ba.data() << std::endl; - } - - dataReceivedHandler(ba); -} void CounterDevice::afterFramePhase(CounterDataDto * counterData) { @@ -151,7 +131,7 @@ QJsonObject jsonObj = counterData->toJSON(i - 1); jsonObj.insert("clientId", SettingConfig::getInstance().CLIENT_ID); jsonObj.insert("deviceId", deviceId); -// kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); + kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); } // 4. 在界面上简单显示相差数据结果 @@ -159,57 +139,3 @@ } } } - -void CounterDevice::pushChannelRawFrame(CounterDataDto * counterData) -{ - QString currentFrameId = counterData->frameId; - QString currentChannelId = QString("%1").arg(counterData->channelId); - - if (counterData->channelId == counterData->channelRefId) - { - // 自身是参考通道 - bench.insert(currentFrameId, counterData->channelData); - counterData->channelClockValue = 0; - - emit successDataCalculate(counterData); - - qlonglong thisBench = counterData->channelData; - // 遍历temp,处理之前的临时暂存的队列 - if (hisList.isEmpty() == false) - { - for (int i = 0; i < hisList.size(); i++) - { - CounterDataDto * hisItem = hisList.at(i); - if (hisItem->frameId == currentFrameId) - { - hisItem->channelClockValue = (hisItem->channelData - thisBench) * 10; - - emit successDataCalculate(hisItem); - delete hisItem; - } - } - - hisList.clear(); - } - } else - { - // 自身不是参考通道,减去相同frameId的参考通道值 - if (bench.contains(currentFrameId) == true) - { - // 在参考基准中能找到 - qlonglong currentBench = bench.find(currentFrameId).value(); - counterData->channelClockValue = (counterData->channelData - currentBench) * 10; // 10ps - - emit successDataCalculate(counterData); - } else - { - // 暂存,等收到基准之后再处置 - CounterDataDto * copyPoint = new CounterDataDto(); - - // ★clone一份对象,存入缓存队列 - counterData->clone(copyPoint); - - hisList.append(copyPoint); - } - } -} diff --git a/CounterAcq/CounterDevice.h b/CounterAcq/CounterDevice.h index 3776042..d126933 100644 --- a/CounterAcq/CounterDevice.h +++ b/CounterAcq/CounterDevice.h @@ -5,7 +5,7 @@ #include #include "common/utils/QSerialPortUtil.h" -//#include "common/utils/QKafkaUtil.h" +#include "common/utils/QKafkaUtil.h" #include "common/utils/QByteUtil.h" #include "common/utils/QLogUtil.h" #include "common/utils/SettingConfig.h" @@ -35,23 +35,20 @@ int baudRate; QSerialPortUtil serialUtil; -// QKafkaUtil kafkaUtil; + QKafkaUtil kafkaUtil; QByteArray dataBuff; - QUdpSocket * udpClient; QMap bench; QList hisList; - void pushChannelRawFrame(CounterDataDto * counterData); + void afterFramePhase(CounterDataDto * counterData); signals: void sendDataToDraw(CounterDataDto * counterData); - void successDataCalculate(CounterDataDto * counterData); public slots: void dataReceivedHandler(QByteArray data); - void dataReceivedHandlerByUDP(); - void afterFramePhase(CounterDataDto * counterData); + }; #endif // COUNTERDEVICE_H diff --git a/CounterAcq/common/common.pri b/CounterAcq/common/common.pri index 84f57ae..6280f64 100644 --- a/CounterAcq/common/common.pri +++ b/CounterAcq/common/common.pri @@ -3,7 +3,7 @@ SOURCES += $$PWD/utils/QByteUtil.cpp SOURCES += $$PWD/utils/QSerialPortUtil.cpp SOURCES += $$PWD/utils/QLogUtil.cpp -#SOURCES += $$PWD/utils/QKafkaUtil.cpp +SOURCES += $$PWD/utils/QKafkaUtil.cpp SOURCES += $$PWD/utils/HttpRequestUtil.cpp SOURCES += $$PWD/utils/MD5.cpp SOURCES += $$PWD/HttpRequestController.cpp @@ -12,7 +12,7 @@ HEADERS += $$PWD/utils/QByteUtil.h HEADERS += $$PWD/utils/QSerialPortUtil.h HEADERS += $$PWD/utils/QLogUtil.h -#HEADERS += $$PWD/utils/QKafkaUtil.h +HEADERS += $$PWD/utils/QKafkaUtil.h HEADERS += $$PWD/utils/HttpRequestUtil.h HEADERS += $$PWD/utils/DefHead.h HEADERS += $$PWD/utils/MD5.h diff --git a/CounterAcq/common/utils/QSerialPortUtil.cpp b/CounterAcq/common/utils/QSerialPortUtil.cpp index 22b6ad2..bd62a00 100644 --- a/CounterAcq/common/utils/QSerialPortUtil.cpp +++ b/CounterAcq/common/utils/QSerialPortUtil.cpp @@ -60,59 +60,9 @@ QDateTime now = QDateTime::currentDateTime(); QByteArray buffer; - buffer.append("$XHTS"); - buffer.append("03100010"); - buffer.append(now.toString("yyMMddHHmmss")); - buffer.append("276"); - qsrand(QDateTime::currentDateTime().toMSecsSinceEpoch()); - - QByteArray statusBuff; - QByteArray dataBuff; - - QString validStr = "1111010111001011"; - - statusBuff.append("|").append("1").append(validStr.toLocal8Bit()).append("01"); - dataBuff.append("|").append("+0.000000000112"); - - for (int i = 1; i < 16; i++) - { - int valid = validStr.mid(16 - i, 1).toInt(); - int zero = qrand() % 2; - double data = qrand() % 200 * 1e-12; - - dataBuff.append("|"); - if (valid == 0) - { - dataBuff.append("+0.000000000000"); - } else - { - dataBuff.append(zero == 0 ? "+" : "-"); - dataBuff.append(QString::number(data, 'f', 12)); - } - } - - buffer.append(statusBuff).append(dataBuff).append("0"); - - buffer.clear(); - buffer.append("$XHTSXHPT0001160101002806276|1000000000000001101|+0.000000000000|+0.033835598754|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000^"); + buffer.append("$XHTSXHPT0001160101002451276|1000000000000001101|+0.000000000000|+0.033835598632|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000Q").append("\r\n") + .append("$XHTDB114|1|+00000|-00296|-00362|+00115|-01472|-01109|-00908|-01427|+00125|+00202|-00228|-00861|-00958|-00957|-00657|-00959").append("\r\n"); emit dataRecieved(buffer); -// for (int i = 1; i <= 8; i++) -// { -// QByteArray buffer; - -// QString channel = QString("%1").arg(i); -// QString channelRef = "1"; -// QString dataValue = QString("%1").arg(qrand() % 400); -// QString level = QString("%1").arg(qrand() % 4 / (double) 10); -// QString frameId = QString("%1").arg(now.toSecsSinceEpoch() % 10000); - -// buffer.append("$GL,") -// .append("0,").append(channel + ",").append("1,").append(channelRef + ",") -// .append(dataValue + ",").append("1,").append(level + ",").append(frameId + "*") -// .append("00").append("\r\n"); - -// emit dataRecieved(buffer); -// } } diff --git a/CounterAcq/CounterDevice.cpp b/CounterAcq/CounterDevice.cpp index 46c14df..547952c 100644 --- a/CounterAcq/CounterDevice.cpp +++ b/CounterAcq/CounterDevice.cpp @@ -9,12 +9,9 @@ connect(&this->serialUtil, &QSerialPortUtil::dataRecieved, this, &CounterDevice::dataReceivedHandler); - connect(this, &CounterDevice::successDataCalculate, - this, &CounterDevice::afterFramePhase); - -// kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); -// kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); -// kafkaUtil.createProducer(); + kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); + kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); + kafkaUtil.createProducer(); } CounterDevice::~CounterDevice() @@ -81,7 +78,6 @@ { // 1. 清空dataBuff,等待下一帧的数据 // this->dataBuff.clear(); - std::cout << "+++" << frameByte.toStdString() << std::endl; // 2. 补充其他字段 QDateTime now = QDateTime::currentDateTime(); @@ -90,9 +86,6 @@ counterData->devCode = devCode; this->afterFramePhase(counterData); - - // 3 计算数据ID一样的测量数据的时差值,通道值-参考通道值 - // this->pushChannelRawFrame(counterData); } // 在此处释放内存,不影响后续显示 @@ -103,19 +96,6 @@ } } -void CounterDevice::dataReceivedHandlerByUDP() -{ - - QByteArray ba; - while(udpClient->hasPendingDatagrams()) - { - ba.resize(udpClient->pendingDatagramSize()); - udpClient->readDatagram(ba.data(), ba.size()); - std::cout << ba.data() << std::endl; - } - - dataReceivedHandler(ba); -} void CounterDevice::afterFramePhase(CounterDataDto * counterData) { @@ -151,7 +131,7 @@ QJsonObject jsonObj = counterData->toJSON(i - 1); jsonObj.insert("clientId", SettingConfig::getInstance().CLIENT_ID); jsonObj.insert("deviceId", deviceId); -// kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); + kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); } // 4. 在界面上简单显示相差数据结果 @@ -159,57 +139,3 @@ } } } - -void CounterDevice::pushChannelRawFrame(CounterDataDto * counterData) -{ - QString currentFrameId = counterData->frameId; - QString currentChannelId = QString("%1").arg(counterData->channelId); - - if (counterData->channelId == counterData->channelRefId) - { - // 自身是参考通道 - bench.insert(currentFrameId, counterData->channelData); - counterData->channelClockValue = 0; - - emit successDataCalculate(counterData); - - qlonglong thisBench = counterData->channelData; - // 遍历temp,处理之前的临时暂存的队列 - if (hisList.isEmpty() == false) - { - for (int i = 0; i < hisList.size(); i++) - { - CounterDataDto * hisItem = hisList.at(i); - if (hisItem->frameId == currentFrameId) - { - hisItem->channelClockValue = (hisItem->channelData - thisBench) * 10; - - emit successDataCalculate(hisItem); - delete hisItem; - } - } - - hisList.clear(); - } - } else - { - // 自身不是参考通道,减去相同frameId的参考通道值 - if (bench.contains(currentFrameId) == true) - { - // 在参考基准中能找到 - qlonglong currentBench = bench.find(currentFrameId).value(); - counterData->channelClockValue = (counterData->channelData - currentBench) * 10; // 10ps - - emit successDataCalculate(counterData); - } else - { - // 暂存,等收到基准之后再处置 - CounterDataDto * copyPoint = new CounterDataDto(); - - // ★clone一份对象,存入缓存队列 - counterData->clone(copyPoint); - - hisList.append(copyPoint); - } - } -} diff --git a/CounterAcq/CounterDevice.h b/CounterAcq/CounterDevice.h index 3776042..d126933 100644 --- a/CounterAcq/CounterDevice.h +++ b/CounterAcq/CounterDevice.h @@ -5,7 +5,7 @@ #include #include "common/utils/QSerialPortUtil.h" -//#include "common/utils/QKafkaUtil.h" +#include "common/utils/QKafkaUtil.h" #include "common/utils/QByteUtil.h" #include "common/utils/QLogUtil.h" #include "common/utils/SettingConfig.h" @@ -35,23 +35,20 @@ int baudRate; QSerialPortUtil serialUtil; -// QKafkaUtil kafkaUtil; + QKafkaUtil kafkaUtil; QByteArray dataBuff; - QUdpSocket * udpClient; QMap bench; QList hisList; - void pushChannelRawFrame(CounterDataDto * counterData); + void afterFramePhase(CounterDataDto * counterData); signals: void sendDataToDraw(CounterDataDto * counterData); - void successDataCalculate(CounterDataDto * counterData); public slots: void dataReceivedHandler(QByteArray data); - void dataReceivedHandlerByUDP(); - void afterFramePhase(CounterDataDto * counterData); + }; #endif // COUNTERDEVICE_H diff --git a/CounterAcq/common/common.pri b/CounterAcq/common/common.pri index 84f57ae..6280f64 100644 --- a/CounterAcq/common/common.pri +++ b/CounterAcq/common/common.pri @@ -3,7 +3,7 @@ SOURCES += $$PWD/utils/QByteUtil.cpp SOURCES += $$PWD/utils/QSerialPortUtil.cpp SOURCES += $$PWD/utils/QLogUtil.cpp -#SOURCES += $$PWD/utils/QKafkaUtil.cpp +SOURCES += $$PWD/utils/QKafkaUtil.cpp SOURCES += $$PWD/utils/HttpRequestUtil.cpp SOURCES += $$PWD/utils/MD5.cpp SOURCES += $$PWD/HttpRequestController.cpp @@ -12,7 +12,7 @@ HEADERS += $$PWD/utils/QByteUtil.h HEADERS += $$PWD/utils/QSerialPortUtil.h HEADERS += $$PWD/utils/QLogUtil.h -#HEADERS += $$PWD/utils/QKafkaUtil.h +HEADERS += $$PWD/utils/QKafkaUtil.h HEADERS += $$PWD/utils/HttpRequestUtil.h HEADERS += $$PWD/utils/DefHead.h HEADERS += $$PWD/utils/MD5.h diff --git a/CounterAcq/common/utils/QSerialPortUtil.cpp b/CounterAcq/common/utils/QSerialPortUtil.cpp index 22b6ad2..bd62a00 100644 --- a/CounterAcq/common/utils/QSerialPortUtil.cpp +++ b/CounterAcq/common/utils/QSerialPortUtil.cpp @@ -60,59 +60,9 @@ QDateTime now = QDateTime::currentDateTime(); QByteArray buffer; - buffer.append("$XHTS"); - buffer.append("03100010"); - buffer.append(now.toString("yyMMddHHmmss")); - buffer.append("276"); - qsrand(QDateTime::currentDateTime().toMSecsSinceEpoch()); - - QByteArray statusBuff; - QByteArray dataBuff; - - QString validStr = "1111010111001011"; - - statusBuff.append("|").append("1").append(validStr.toLocal8Bit()).append("01"); - dataBuff.append("|").append("+0.000000000112"); - - for (int i = 1; i < 16; i++) - { - int valid = validStr.mid(16 - i, 1).toInt(); - int zero = qrand() % 2; - double data = qrand() % 200 * 1e-12; - - dataBuff.append("|"); - if (valid == 0) - { - dataBuff.append("+0.000000000000"); - } else - { - dataBuff.append(zero == 0 ? "+" : "-"); - dataBuff.append(QString::number(data, 'f', 12)); - } - } - - buffer.append(statusBuff).append(dataBuff).append("0"); - - buffer.clear(); - buffer.append("$XHTSXHPT0001160101002806276|1000000000000001101|+0.000000000000|+0.033835598754|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000^"); + buffer.append("$XHTSXHPT0001160101002451276|1000000000000001101|+0.000000000000|+0.033835598632|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000Q").append("\r\n") + .append("$XHTDB114|1|+00000|-00296|-00362|+00115|-01472|-01109|-00908|-01427|+00125|+00202|-00228|-00861|-00958|-00957|-00657|-00959").append("\r\n"); emit dataRecieved(buffer); -// for (int i = 1; i <= 8; i++) -// { -// QByteArray buffer; - -// QString channel = QString("%1").arg(i); -// QString channelRef = "1"; -// QString dataValue = QString("%1").arg(qrand() % 400); -// QString level = QString("%1").arg(qrand() % 4 / (double) 10); -// QString frameId = QString("%1").arg(now.toSecsSinceEpoch() % 10000); - -// buffer.append("$GL,") -// .append("0,").append(channel + ",").append("1,").append(channelRef + ",") -// .append(dataValue + ",").append("1,").append(level + ",").append(frameId + "*") -// .append("00").append("\r\n"); - -// emit dataRecieved(buffer); -// } } diff --git a/CounterAcq/conf/config.ini b/CounterAcq/conf/config.ini index da0eacf..7307187 100644 --- a/CounterAcq/conf/config.ini +++ b/CounterAcq/conf/config.ini @@ -5,14 +5,16 @@ needKafka=0 brokers="111.198.10.15:12502" dataTopic="cppTest" +needSasl=0 +saslUsername="admin" +saslPassword="casicss" [client] clientId="clock" appKey="bd347bdd20943d2db8af558c3712a357" -devType="BM" [http] baseUrl="http://111.198.10.15:11410" [log] -basePath="D://Workspace Qt//ZXSSCJ-Release//Counter//logs//" +basePath="/home/admin/Qt/ZXSSCJ-Release/CounterAcq/logs/" diff --git a/CounterAcq/CounterDevice.cpp b/CounterAcq/CounterDevice.cpp index 46c14df..547952c 100644 --- a/CounterAcq/CounterDevice.cpp +++ b/CounterAcq/CounterDevice.cpp @@ -9,12 +9,9 @@ connect(&this->serialUtil, &QSerialPortUtil::dataRecieved, this, &CounterDevice::dataReceivedHandler); - connect(this, &CounterDevice::successDataCalculate, - this, &CounterDevice::afterFramePhase); - -// kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); -// kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); -// kafkaUtil.createProducer(); + kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); + kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); + kafkaUtil.createProducer(); } CounterDevice::~CounterDevice() @@ -81,7 +78,6 @@ { // 1. 清空dataBuff,等待下一帧的数据 // this->dataBuff.clear(); - std::cout << "+++" << frameByte.toStdString() << std::endl; // 2. 补充其他字段 QDateTime now = QDateTime::currentDateTime(); @@ -90,9 +86,6 @@ counterData->devCode = devCode; this->afterFramePhase(counterData); - - // 3 计算数据ID一样的测量数据的时差值,通道值-参考通道值 - // this->pushChannelRawFrame(counterData); } // 在此处释放内存,不影响后续显示 @@ -103,19 +96,6 @@ } } -void CounterDevice::dataReceivedHandlerByUDP() -{ - - QByteArray ba; - while(udpClient->hasPendingDatagrams()) - { - ba.resize(udpClient->pendingDatagramSize()); - udpClient->readDatagram(ba.data(), ba.size()); - std::cout << ba.data() << std::endl; - } - - dataReceivedHandler(ba); -} void CounterDevice::afterFramePhase(CounterDataDto * counterData) { @@ -151,7 +131,7 @@ QJsonObject jsonObj = counterData->toJSON(i - 1); jsonObj.insert("clientId", SettingConfig::getInstance().CLIENT_ID); jsonObj.insert("deviceId", deviceId); -// kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); + kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); } // 4. 在界面上简单显示相差数据结果 @@ -159,57 +139,3 @@ } } } - -void CounterDevice::pushChannelRawFrame(CounterDataDto * counterData) -{ - QString currentFrameId = counterData->frameId; - QString currentChannelId = QString("%1").arg(counterData->channelId); - - if (counterData->channelId == counterData->channelRefId) - { - // 自身是参考通道 - bench.insert(currentFrameId, counterData->channelData); - counterData->channelClockValue = 0; - - emit successDataCalculate(counterData); - - qlonglong thisBench = counterData->channelData; - // 遍历temp,处理之前的临时暂存的队列 - if (hisList.isEmpty() == false) - { - for (int i = 0; i < hisList.size(); i++) - { - CounterDataDto * hisItem = hisList.at(i); - if (hisItem->frameId == currentFrameId) - { - hisItem->channelClockValue = (hisItem->channelData - thisBench) * 10; - - emit successDataCalculate(hisItem); - delete hisItem; - } - } - - hisList.clear(); - } - } else - { - // 自身不是参考通道,减去相同frameId的参考通道值 - if (bench.contains(currentFrameId) == true) - { - // 在参考基准中能找到 - qlonglong currentBench = bench.find(currentFrameId).value(); - counterData->channelClockValue = (counterData->channelData - currentBench) * 10; // 10ps - - emit successDataCalculate(counterData); - } else - { - // 暂存,等收到基准之后再处置 - CounterDataDto * copyPoint = new CounterDataDto(); - - // ★clone一份对象,存入缓存队列 - counterData->clone(copyPoint); - - hisList.append(copyPoint); - } - } -} diff --git a/CounterAcq/CounterDevice.h b/CounterAcq/CounterDevice.h index 3776042..d126933 100644 --- a/CounterAcq/CounterDevice.h +++ b/CounterAcq/CounterDevice.h @@ -5,7 +5,7 @@ #include #include "common/utils/QSerialPortUtil.h" -//#include "common/utils/QKafkaUtil.h" +#include "common/utils/QKafkaUtil.h" #include "common/utils/QByteUtil.h" #include "common/utils/QLogUtil.h" #include "common/utils/SettingConfig.h" @@ -35,23 +35,20 @@ int baudRate; QSerialPortUtil serialUtil; -// QKafkaUtil kafkaUtil; + QKafkaUtil kafkaUtil; QByteArray dataBuff; - QUdpSocket * udpClient; QMap bench; QList hisList; - void pushChannelRawFrame(CounterDataDto * counterData); + void afterFramePhase(CounterDataDto * counterData); signals: void sendDataToDraw(CounterDataDto * counterData); - void successDataCalculate(CounterDataDto * counterData); public slots: void dataReceivedHandler(QByteArray data); - void dataReceivedHandlerByUDP(); - void afterFramePhase(CounterDataDto * counterData); + }; #endif // COUNTERDEVICE_H diff --git a/CounterAcq/common/common.pri b/CounterAcq/common/common.pri index 84f57ae..6280f64 100644 --- a/CounterAcq/common/common.pri +++ b/CounterAcq/common/common.pri @@ -3,7 +3,7 @@ SOURCES += $$PWD/utils/QByteUtil.cpp SOURCES += $$PWD/utils/QSerialPortUtil.cpp SOURCES += $$PWD/utils/QLogUtil.cpp -#SOURCES += $$PWD/utils/QKafkaUtil.cpp +SOURCES += $$PWD/utils/QKafkaUtil.cpp SOURCES += $$PWD/utils/HttpRequestUtil.cpp SOURCES += $$PWD/utils/MD5.cpp SOURCES += $$PWD/HttpRequestController.cpp @@ -12,7 +12,7 @@ HEADERS += $$PWD/utils/QByteUtil.h HEADERS += $$PWD/utils/QSerialPortUtil.h HEADERS += $$PWD/utils/QLogUtil.h -#HEADERS += $$PWD/utils/QKafkaUtil.h +HEADERS += $$PWD/utils/QKafkaUtil.h HEADERS += $$PWD/utils/HttpRequestUtil.h HEADERS += $$PWD/utils/DefHead.h HEADERS += $$PWD/utils/MD5.h diff --git a/CounterAcq/common/utils/QSerialPortUtil.cpp b/CounterAcq/common/utils/QSerialPortUtil.cpp index 22b6ad2..bd62a00 100644 --- a/CounterAcq/common/utils/QSerialPortUtil.cpp +++ b/CounterAcq/common/utils/QSerialPortUtil.cpp @@ -60,59 +60,9 @@ QDateTime now = QDateTime::currentDateTime(); QByteArray buffer; - buffer.append("$XHTS"); - buffer.append("03100010"); - buffer.append(now.toString("yyMMddHHmmss")); - buffer.append("276"); - qsrand(QDateTime::currentDateTime().toMSecsSinceEpoch()); - - QByteArray statusBuff; - QByteArray dataBuff; - - QString validStr = "1111010111001011"; - - statusBuff.append("|").append("1").append(validStr.toLocal8Bit()).append("01"); - dataBuff.append("|").append("+0.000000000112"); - - for (int i = 1; i < 16; i++) - { - int valid = validStr.mid(16 - i, 1).toInt(); - int zero = qrand() % 2; - double data = qrand() % 200 * 1e-12; - - dataBuff.append("|"); - if (valid == 0) - { - dataBuff.append("+0.000000000000"); - } else - { - dataBuff.append(zero == 0 ? "+" : "-"); - dataBuff.append(QString::number(data, 'f', 12)); - } - } - - buffer.append(statusBuff).append(dataBuff).append("0"); - - buffer.clear(); - buffer.append("$XHTSXHPT0001160101002806276|1000000000000001101|+0.000000000000|+0.033835598754|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000^"); + buffer.append("$XHTSXHPT0001160101002451276|1000000000000001101|+0.000000000000|+0.033835598632|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000Q").append("\r\n") + .append("$XHTDB114|1|+00000|-00296|-00362|+00115|-01472|-01109|-00908|-01427|+00125|+00202|-00228|-00861|-00958|-00957|-00657|-00959").append("\r\n"); emit dataRecieved(buffer); -// for (int i = 1; i <= 8; i++) -// { -// QByteArray buffer; - -// QString channel = QString("%1").arg(i); -// QString channelRef = "1"; -// QString dataValue = QString("%1").arg(qrand() % 400); -// QString level = QString("%1").arg(qrand() % 4 / (double) 10); -// QString frameId = QString("%1").arg(now.toSecsSinceEpoch() % 10000); - -// buffer.append("$GL,") -// .append("0,").append(channel + ",").append("1,").append(channelRef + ",") -// .append(dataValue + ",").append("1,").append(level + ",").append(frameId + "*") -// .append("00").append("\r\n"); - -// emit dataRecieved(buffer); -// } } diff --git a/CounterAcq/conf/config.ini b/CounterAcq/conf/config.ini index da0eacf..7307187 100644 --- a/CounterAcq/conf/config.ini +++ b/CounterAcq/conf/config.ini @@ -5,14 +5,16 @@ needKafka=0 brokers="111.198.10.15:12502" dataTopic="cppTest" +needSasl=0 +saslUsername="admin" +saslPassword="casicss" [client] clientId="clock" appKey="bd347bdd20943d2db8af558c3712a357" -devType="BM" [http] baseUrl="http://111.198.10.15:11410" [log] -basePath="D://Workspace Qt//ZXSSCJ-Release//Counter//logs//" +basePath="/home/admin/Qt/ZXSSCJ-Release/CounterAcq/logs/" diff --git a/CounterAcq/protocol/CounterProtocolXH.cpp b/CounterAcq/protocol/CounterProtocolXH.cpp index 6ba3e50..5d49032 100644 --- a/CounterAcq/protocol/CounterProtocolXH.cpp +++ b/CounterAcq/protocol/CounterProtocolXH.cpp @@ -50,7 +50,6 @@ } rawData = rawData.mid(head, rawData.size() - head + 2); - std::cout << rawData.toStdString() << std::endl; if (rawData.startsWith("$XHTS") == true) { @@ -64,7 +63,6 @@ { if (rawData.at(i + 1) == '\n') { - ba.append("\r\n"); resultList.append(ba); ba.clear(); i++; diff --git a/CounterAcq/CounterDevice.cpp b/CounterAcq/CounterDevice.cpp index 46c14df..547952c 100644 --- a/CounterAcq/CounterDevice.cpp +++ b/CounterAcq/CounterDevice.cpp @@ -9,12 +9,9 @@ connect(&this->serialUtil, &QSerialPortUtil::dataRecieved, this, &CounterDevice::dataReceivedHandler); - connect(this, &CounterDevice::successDataCalculate, - this, &CounterDevice::afterFramePhase); - -// kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); -// kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); -// kafkaUtil.createProducer(); + kafkaUtil.setBrokers(SettingConfig::getInstance().KAFKA_BROKERS); + kafkaUtil.setTopic(SettingConfig::getInstance().KAFKA_DATA_TOPIC); + kafkaUtil.createProducer(); } CounterDevice::~CounterDevice() @@ -81,7 +78,6 @@ { // 1. 清空dataBuff,等待下一帧的数据 // this->dataBuff.clear(); - std::cout << "+++" << frameByte.toStdString() << std::endl; // 2. 补充其他字段 QDateTime now = QDateTime::currentDateTime(); @@ -90,9 +86,6 @@ counterData->devCode = devCode; this->afterFramePhase(counterData); - - // 3 计算数据ID一样的测量数据的时差值,通道值-参考通道值 - // this->pushChannelRawFrame(counterData); } // 在此处释放内存,不影响后续显示 @@ -103,19 +96,6 @@ } } -void CounterDevice::dataReceivedHandlerByUDP() -{ - - QByteArray ba; - while(udpClient->hasPendingDatagrams()) - { - ba.resize(udpClient->pendingDatagramSize()); - udpClient->readDatagram(ba.data(), ba.size()); - std::cout << ba.data() << std::endl; - } - - dataReceivedHandler(ba); -} void CounterDevice::afterFramePhase(CounterDataDto * counterData) { @@ -151,7 +131,7 @@ QJsonObject jsonObj = counterData->toJSON(i - 1); jsonObj.insert("clientId", SettingConfig::getInstance().CLIENT_ID); jsonObj.insert("deviceId", deviceId); -// kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); + kafkaUtil.produceMessage(QString(QJsonDocument(jsonObj).toJson(QJsonDocument::Compact))); } // 4. 在界面上简单显示相差数据结果 @@ -159,57 +139,3 @@ } } } - -void CounterDevice::pushChannelRawFrame(CounterDataDto * counterData) -{ - QString currentFrameId = counterData->frameId; - QString currentChannelId = QString("%1").arg(counterData->channelId); - - if (counterData->channelId == counterData->channelRefId) - { - // 自身是参考通道 - bench.insert(currentFrameId, counterData->channelData); - counterData->channelClockValue = 0; - - emit successDataCalculate(counterData); - - qlonglong thisBench = counterData->channelData; - // 遍历temp,处理之前的临时暂存的队列 - if (hisList.isEmpty() == false) - { - for (int i = 0; i < hisList.size(); i++) - { - CounterDataDto * hisItem = hisList.at(i); - if (hisItem->frameId == currentFrameId) - { - hisItem->channelClockValue = (hisItem->channelData - thisBench) * 10; - - emit successDataCalculate(hisItem); - delete hisItem; - } - } - - hisList.clear(); - } - } else - { - // 自身不是参考通道,减去相同frameId的参考通道值 - if (bench.contains(currentFrameId) == true) - { - // 在参考基准中能找到 - qlonglong currentBench = bench.find(currentFrameId).value(); - counterData->channelClockValue = (counterData->channelData - currentBench) * 10; // 10ps - - emit successDataCalculate(counterData); - } else - { - // 暂存,等收到基准之后再处置 - CounterDataDto * copyPoint = new CounterDataDto(); - - // ★clone一份对象,存入缓存队列 - counterData->clone(copyPoint); - - hisList.append(copyPoint); - } - } -} diff --git a/CounterAcq/CounterDevice.h b/CounterAcq/CounterDevice.h index 3776042..d126933 100644 --- a/CounterAcq/CounterDevice.h +++ b/CounterAcq/CounterDevice.h @@ -5,7 +5,7 @@ #include #include "common/utils/QSerialPortUtil.h" -//#include "common/utils/QKafkaUtil.h" +#include "common/utils/QKafkaUtil.h" #include "common/utils/QByteUtil.h" #include "common/utils/QLogUtil.h" #include "common/utils/SettingConfig.h" @@ -35,23 +35,20 @@ int baudRate; QSerialPortUtil serialUtil; -// QKafkaUtil kafkaUtil; + QKafkaUtil kafkaUtil; QByteArray dataBuff; - QUdpSocket * udpClient; QMap bench; QList hisList; - void pushChannelRawFrame(CounterDataDto * counterData); + void afterFramePhase(CounterDataDto * counterData); signals: void sendDataToDraw(CounterDataDto * counterData); - void successDataCalculate(CounterDataDto * counterData); public slots: void dataReceivedHandler(QByteArray data); - void dataReceivedHandlerByUDP(); - void afterFramePhase(CounterDataDto * counterData); + }; #endif // COUNTERDEVICE_H diff --git a/CounterAcq/common/common.pri b/CounterAcq/common/common.pri index 84f57ae..6280f64 100644 --- a/CounterAcq/common/common.pri +++ b/CounterAcq/common/common.pri @@ -3,7 +3,7 @@ SOURCES += $$PWD/utils/QByteUtil.cpp SOURCES += $$PWD/utils/QSerialPortUtil.cpp SOURCES += $$PWD/utils/QLogUtil.cpp -#SOURCES += $$PWD/utils/QKafkaUtil.cpp +SOURCES += $$PWD/utils/QKafkaUtil.cpp SOURCES += $$PWD/utils/HttpRequestUtil.cpp SOURCES += $$PWD/utils/MD5.cpp SOURCES += $$PWD/HttpRequestController.cpp @@ -12,7 +12,7 @@ HEADERS += $$PWD/utils/QByteUtil.h HEADERS += $$PWD/utils/QSerialPortUtil.h HEADERS += $$PWD/utils/QLogUtil.h -#HEADERS += $$PWD/utils/QKafkaUtil.h +HEADERS += $$PWD/utils/QKafkaUtil.h HEADERS += $$PWD/utils/HttpRequestUtil.h HEADERS += $$PWD/utils/DefHead.h HEADERS += $$PWD/utils/MD5.h diff --git a/CounterAcq/common/utils/QSerialPortUtil.cpp b/CounterAcq/common/utils/QSerialPortUtil.cpp index 22b6ad2..bd62a00 100644 --- a/CounterAcq/common/utils/QSerialPortUtil.cpp +++ b/CounterAcq/common/utils/QSerialPortUtil.cpp @@ -60,59 +60,9 @@ QDateTime now = QDateTime::currentDateTime(); QByteArray buffer; - buffer.append("$XHTS"); - buffer.append("03100010"); - buffer.append(now.toString("yyMMddHHmmss")); - buffer.append("276"); - qsrand(QDateTime::currentDateTime().toMSecsSinceEpoch()); - - QByteArray statusBuff; - QByteArray dataBuff; - - QString validStr = "1111010111001011"; - - statusBuff.append("|").append("1").append(validStr.toLocal8Bit()).append("01"); - dataBuff.append("|").append("+0.000000000112"); - - for (int i = 1; i < 16; i++) - { - int valid = validStr.mid(16 - i, 1).toInt(); - int zero = qrand() % 2; - double data = qrand() % 200 * 1e-12; - - dataBuff.append("|"); - if (valid == 0) - { - dataBuff.append("+0.000000000000"); - } else - { - dataBuff.append(zero == 0 ? "+" : "-"); - dataBuff.append(QString::number(data, 'f', 12)); - } - } - - buffer.append(statusBuff).append(dataBuff).append("0"); - - buffer.clear(); - buffer.append("$XHTSXHPT0001160101002806276|1000000000000001101|+0.000000000000|+0.033835598754|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000^"); + buffer.append("$XHTSXHPT0001160101002451276|1000000000000001101|+0.000000000000|+0.033835598632|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000|+0.000000000000Q").append("\r\n") + .append("$XHTDB114|1|+00000|-00296|-00362|+00115|-01472|-01109|-00908|-01427|+00125|+00202|-00228|-00861|-00958|-00957|-00657|-00959").append("\r\n"); emit dataRecieved(buffer); -// for (int i = 1; i <= 8; i++) -// { -// QByteArray buffer; - -// QString channel = QString("%1").arg(i); -// QString channelRef = "1"; -// QString dataValue = QString("%1").arg(qrand() % 400); -// QString level = QString("%1").arg(qrand() % 4 / (double) 10); -// QString frameId = QString("%1").arg(now.toSecsSinceEpoch() % 10000); - -// buffer.append("$GL,") -// .append("0,").append(channel + ",").append("1,").append(channelRef + ",") -// .append(dataValue + ",").append("1,").append(level + ",").append(frameId + "*") -// .append("00").append("\r\n"); - -// emit dataRecieved(buffer); -// } } diff --git a/CounterAcq/conf/config.ini b/CounterAcq/conf/config.ini index da0eacf..7307187 100644 --- a/CounterAcq/conf/config.ini +++ b/CounterAcq/conf/config.ini @@ -5,14 +5,16 @@ needKafka=0 brokers="111.198.10.15:12502" dataTopic="cppTest" +needSasl=0 +saslUsername="admin" +saslPassword="casicss" [client] clientId="clock" appKey="bd347bdd20943d2db8af558c3712a357" -devType="BM" [http] baseUrl="http://111.198.10.15:11410" [log] -basePath="D://Workspace Qt//ZXSSCJ-Release//Counter//logs//" +basePath="/home/admin/Qt/ZXSSCJ-Release/CounterAcq/logs/" diff --git a/CounterAcq/protocol/CounterProtocolXH.cpp b/CounterAcq/protocol/CounterProtocolXH.cpp index 6ba3e50..5d49032 100644 --- a/CounterAcq/protocol/CounterProtocolXH.cpp +++ b/CounterAcq/protocol/CounterProtocolXH.cpp @@ -50,7 +50,6 @@ } rawData = rawData.mid(head, rawData.size() - head + 2); - std::cout << rawData.toStdString() << std::endl; if (rawData.startsWith("$XHTS") == true) { @@ -64,7 +63,6 @@ { if (rawData.at(i + 1) == '\n') { - ba.append("\r\n"); resultList.append(ba); ba.clear(); i++; diff --git a/ZXSSCJ.pro b/ZXSSCJ.pro index 0810c68..550c710 100644 --- a/ZXSSCJ.pro +++ b/ZXSSCJ.pro @@ -3,8 +3,8 @@ #定义了ordered表示子项目按照添加的顺序来编译 #CONFIG += ordered -#SUBDIRS += CounterAcq #计数器数据采集 -SUBDIRS += CounterAcqBM #6906计数器数据采集 +SUBDIRS += CounterAcq #计数器数据采集 +#SUBDIRS += CounterAcqBM #6906计数器数据采集 #SUBDIRS += PhaseCompAcq #比相仪数据采集 #SUBDIRS += DevStatusAcq #SUBDIRS += DeviceHub #