fix bugs
This commit is contained in:
parent
42d759fe29
commit
ce8442de5f
@ -19,8 +19,14 @@ std::string JsonData::JsonCmd_Cgi_26(Param_26 ¶m) {
|
|||||||
jsonVal["dataNodeGatewayNo"] = GlobalConfig::MacAddr_G;
|
jsonVal["dataNodeGatewayNo"] = GlobalConfig::MacAddr_G;
|
||||||
jsonVal["success"] = true;
|
jsonVal["success"] = true;
|
||||||
jsonVal["message"] = " ";
|
jsonVal["message"] = " ";
|
||||||
|
int lowSignal = -1, signalThreshold = -1, lowBatteryLevel = -1, batteryLevelThreshold = -1;
|
||||||
|
lowSignal = readIntValue("config", "lowSignal", (char *)GlobalConfig::Config_G.c_str());
|
||||||
|
signalThreshold = readIntValue("config", "signalThreshold", (char *)GlobalConfig::Config_G.c_str());
|
||||||
|
lowBatteryLevel = readIntValue("config", "lowBatteryLevel", (char *)GlobalConfig::Config_G.c_str());
|
||||||
|
batteryLevelThreshold = readIntValue("config", "batteryLevelThreshold", (char *)GlobalConfig::Config_G.c_str());
|
||||||
char looseValue[10] = {0x00};
|
char looseValue[10] = {0x00};
|
||||||
|
char whereCon[100] = {0};
|
||||||
|
std::string effect = "" ,rssi = "",batteryPower = "";
|
||||||
readStringValue("config", "loose", looseValue, (char *)GlobalConfig::Config_G.c_str());
|
readStringValue("config", "loose", looseValue, (char *)GlobalConfig::Config_G.c_str());
|
||||||
Json::Value jsArray;
|
Json::Value jsArray;
|
||||||
array_t arrRes;
|
array_t arrRes;
|
||||||
@ -552,6 +558,7 @@ std::string JsonData::JsonCmd_Cgi_30(Param_30 ¶m) {
|
|||||||
while (inFile.read((char *)&fTemp, sizeof(fTemp))) {
|
while (inFile.read((char *)&fTemp, sizeof(fTemp))) {
|
||||||
vecWave.push_back(fTemp);
|
vecWave.push_back(fTemp);
|
||||||
}
|
}
|
||||||
|
zlog_info(zct,"LF vecWave size %zu",vecWave.size());
|
||||||
//进行傅立叶变换
|
//进行傅立叶变换
|
||||||
Calculation::FFTSpec(vecWave, fftWave);
|
Calculation::FFTSpec(vecWave, fftWave);
|
||||||
sampleRateReference = 1024;
|
sampleRateReference = 1024;
|
||||||
|
|||||||
@ -709,6 +709,7 @@ std::string JsonData::JsonCmd_Cgi_60(Param_60 ¶m){
|
|||||||
char file_path[64]={0};
|
char file_path[64]={0};
|
||||||
char cmd[128]={0};
|
char cmd[128]={0};
|
||||||
sprintf(cmd, "mv /opt/%s /opt/DataNode/",param.fileName.c_str());
|
sprintf(cmd, "mv /opt/%s /opt/DataNode/",param.fileName.c_str());
|
||||||
|
zlog_info(zct,"cmd = %s",cmd);
|
||||||
system(cmd);
|
system(cmd);
|
||||||
sprintf(file_path, "/opt/DataNode/%s",param.fileName.c_str());
|
sprintf(file_path, "/opt/DataNode/%s",param.fileName.c_str());
|
||||||
zlog_info(zct,"file_path = %s",file_path);
|
zlog_info(zct,"file_path = %s",file_path);
|
||||||
|
|||||||
@ -420,7 +420,7 @@ std::string LocalServer::HandleCgi_cmd(std::string &pData) {
|
|||||||
case kTransducerUpgrade:{
|
case kTransducerUpgrade:{
|
||||||
JsonData jd;
|
JsonData jd;
|
||||||
Param_60 param;
|
Param_60 param;
|
||||||
std::string type = recvBody["type"].asString();
|
std::string type = recvBody["cmd"].asString();
|
||||||
if (0 == type.compare("UPDATE")) {
|
if (0 == type.compare("UPDATE")) {
|
||||||
param.mMode = 0;
|
param.mMode = 0;
|
||||||
param.fileName = recvBody["fileName"].asString();
|
param.fileName = recvBody["fileName"].asString();
|
||||||
|
|||||||
@ -76,6 +76,11 @@ void Uart::RecordBattery(std::string &strLongAddr, DataRecvStatic &dataStatic, s
|
|||||||
sprintf(whereCon, "dataNodeNo='%s' and timeStamp = '%s'", strLongAddr.c_str(), res_static[8].c_str());
|
sprintf(whereCon, "dataNodeNo='%s' and timeStamp = '%s'", strLongAddr.c_str(), res_static[8].c_str());
|
||||||
sprintf(updateSql, "comprehensiveRSSI = '%f'", comprehensiveRSSI);
|
sprintf(updateSql, "comprehensiveRSSI = '%f'", comprehensiveRSSI);
|
||||||
sqlite_db_ctrl::instance().UpdateTableData(tableName, updateSql, whereCon);
|
sqlite_db_ctrl::instance().UpdateTableData(tableName, updateSql, whereCon);
|
||||||
|
memset(whereCon,0x00,sizeof(whereCon));
|
||||||
|
memset(updateSql,0x00,sizeof(updateSql));
|
||||||
|
sprintf(whereCon,"MeasurementID = '%s'", strLongAddr.c_str());
|
||||||
|
sprintf(updateSql,"RSSI = '%f'", comprehensiveRSSI);
|
||||||
|
sqlite_db_ctrl::instance().UpdateTableData(T_SENSOR_INFO(TNAME), updateSql, whereCon);
|
||||||
zlog_info(zct, "dataNodeNo='%s',zigbeeSignal=%d,zigbeeSignalNode=%d,actualRate=%f,comprehensiveRSSI=%f", strLongAddr.c_str(), zigbeeSignal, zigbeeSignalNode, actualRate, comprehensiveRSSI);
|
zlog_info(zct, "dataNodeNo='%s',zigbeeSignal=%d,zigbeeSignalNode=%d,actualRate=%f,comprehensiveRSSI=%f", strLongAddr.c_str(), zigbeeSignal, zigbeeSignalNode, actualRate, comprehensiveRSSI);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -936,15 +941,15 @@ std::vector<float> Uart::DealData(int iChannel, float coe, unsigned int sampleRa
|
|||||||
memcpy(dealdata, data, j * 92);
|
memcpy(dealdata, data, j * 92);
|
||||||
deallen = j * 92;
|
deallen = j * 92;
|
||||||
}
|
}
|
||||||
// if(iChannel == WAVE_X){
|
if(iChannel == WAVE_LF_X){
|
||||||
// for (size_t i = 0; i < 200; i++) {
|
for (size_t i = 0; i < 200; i++) {
|
||||||
// float fTemp = 0.0f;
|
float fTemp = 0.0f;
|
||||||
// memset(buf, 0, 8);
|
memset(buf, 0, 8);
|
||||||
// sprintf(buf, "%02x%02x", dealdata[2 * i + 1], dealdata[i * 2]);
|
sprintf(buf, "%02x%02x", dealdata[2 * i + 1], dealdata[i * 2]);
|
||||||
// printf("%s ", buf);
|
printf("%s ", buf);
|
||||||
// }
|
}
|
||||||
// printf("\n");
|
printf("\n");
|
||||||
// }
|
}
|
||||||
for (size_t i = 0; i < deallen; i++) {
|
for (size_t i = 0; i < deallen; i++) {
|
||||||
float fTemp = 0.0f;
|
float fTemp = 0.0f;
|
||||||
memset(buf, 0, 8);
|
memset(buf, 0, 8);
|
||||||
@ -1014,7 +1019,7 @@ void Uart::DealWave() {
|
|||||||
std::string strFileName = "";
|
std::string strFileName = "";
|
||||||
std::string strProduct = "";
|
std::string strProduct = "";
|
||||||
std::string softVersion = "";
|
std::string softVersion = "";
|
||||||
int version = 0;
|
int version = 0;// 0 新版本 1 旧版本
|
||||||
std::vector<float> vecDataX, vecDataY, vecDataZ,vecDataVolX, vecDataVolY, vecDataVolZ;
|
std::vector<float> vecDataX, vecDataY, vecDataZ,vecDataVolX, vecDataVolY, vecDataVolZ;
|
||||||
bool z = false;
|
bool z = false;
|
||||||
if (wave_trans_) { //对每个传感器的每个通道进行遍历然后处理数据,例如:传感器1x轴的数据处理完后,再去处理y轴的。传感器1的所有数据处理完后,再处理传感器2的
|
if (wave_trans_) { //对每个传感器的每个通道进行遍历然后处理数据,例如:传感器1x轴的数据处理完后,再去处理y轴的。传感器1的所有数据处理完后,再处理传感器2的
|
||||||
@ -1063,11 +1068,6 @@ void Uart::DealWave() {
|
|||||||
accSampleTimeZ = (float)ACCSampleTime;
|
accSampleTimeZ = (float)ACCSampleTime;
|
||||||
version = 1;
|
version = 1;
|
||||||
}
|
}
|
||||||
if (compareVersions(softVersion, "2.6") == -1 && strProduct == "01") {
|
|
||||||
accSampleTimeXY = (float)ACCSampleTime;
|
|
||||||
accSampleTimeZ = (float)ACCSampleTime;
|
|
||||||
version = 1;
|
|
||||||
}
|
|
||||||
if (m_waveCountX > 0 || VecWaveDataX.size() > 0) {
|
if (m_waveCountX > 0 || VecWaveDataX.size() > 0) {
|
||||||
zlog_info(zct, "m_waveCountX = %d,VecWaveData = %zu", m_waveCountX, VecWaveDataX.size());
|
zlog_info(zct, "m_waveCountX = %d,VecWaveData = %zu", m_waveCountX, VecWaveDataX.size());
|
||||||
coe = Calcoe(n, WAVE_X, strProduct, range);
|
coe = Calcoe(n, WAVE_X, strProduct, range);
|
||||||
@ -1292,37 +1292,10 @@ void Uart::WriteDatFile(int sampleRate, std::string &strMeasurementID, int iChan
|
|||||||
fwrite(localtimestamp,sizeof(localtimestamp),1,fp);
|
fwrite(localtimestamp,sizeof(localtimestamp),1,fp);
|
||||||
zlog_info(zct, " vecData.size : %zu,start ", vecData.size());
|
zlog_info(zct, " vecData.size : %zu,start ", vecData.size());
|
||||||
int id = 0;
|
int id = 0;
|
||||||
for (size_t i = 0; i < vecData.size(); i++) {
|
|
||||||
frTemp = vecData[i] - mean;
|
if ((product == "02" && sampleRate == 24000 && iChannel == WAVE_Z && version == 1) ||
|
||||||
memset(buf, 0x00, sizeof(buf));
|
|
||||||
sprintf(buf, "%.2f", frTemp);
|
|
||||||
fwrite(&frTemp,sizeof(float),1,fp);
|
|
||||||
if (iChannel == WAVE_X){
|
|
||||||
wave_channel.WaveChannelX[i] = frTemp;
|
|
||||||
}else if (iChannel == WAVE_Y){
|
|
||||||
wave_channel.WaveChannelY[i] = frTemp;
|
|
||||||
}else if (iChannel == WAVE_Z){
|
|
||||||
wave_channel.WaveChannelZ[i] = frTemp;
|
|
||||||
}else if (iChannel == WAVE_LF_X){
|
|
||||||
wave_vol_channel.WaveChannelVolX[i] = frTemp;
|
|
||||||
}else if (iChannel == WAVE_LF_Y){
|
|
||||||
wave_vol_channel.WaveChannelVolY[i] = frTemp;
|
|
||||||
}else if (iChannel == WAVE_LF_Z){
|
|
||||||
wave_vol_channel.WaveChannelVolZ[i] = frTemp;
|
|
||||||
}
|
|
||||||
if (i != vecData.size() -1){
|
|
||||||
strncpy(mqttData + id ,buf,strlen(buf));
|
|
||||||
id = id + strlen(buf);
|
|
||||||
strncpy(mqttData + id,",",1);
|
|
||||||
id = id + 1;
|
|
||||||
}else{
|
|
||||||
strncpy(mqttData + id ,buf,strlen(buf));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
fclose(fp);
|
|
||||||
if ((product == "02" && sampleRate == 24000 && iChannel == WAVE_Z && version == 0) ||
|
|
||||||
(iChannel == WAVE_Z && version == 1) ||
|
(iChannel == WAVE_Z && version == 1) ||
|
||||||
((iChannel == WAVE_LF_X || iChannel == WAVE_LF_Y|| iChannel == WAVE_LF_Z) && version == 1)){
|
((iChannel == WAVE_LF_X || iChannel == WAVE_LF_Y|| iChannel == WAVE_LF_Z) && version == 0)){
|
||||||
sampleRate = 25600;
|
sampleRate = 25600;
|
||||||
zlog_info(zct, " sampleRate = %d,product = %s,ACCSampleTime = %f ", sampleRate,product.c_str(),ACCSampleTime);
|
zlog_info(zct, " sampleRate = %d,product = %s,ACCSampleTime = %f ", sampleRate,product.c_str(),ACCSampleTime);
|
||||||
size_t outSize = 25600;
|
size_t outSize = 25600;
|
||||||
@ -1353,6 +1326,20 @@ void Uart::WriteDatFile(int sampleRate, std::string &strMeasurementID, int iChan
|
|||||||
frTemp = outputData[i] - mean;
|
frTemp = outputData[i] - mean;
|
||||||
memset(buf, 0x00, sizeof(buf));
|
memset(buf, 0x00, sizeof(buf));
|
||||||
sprintf(buf, "%.2f", frTemp);
|
sprintf(buf, "%.2f", frTemp);
|
||||||
|
fwrite(&frTemp,sizeof(float),1,fp);
|
||||||
|
if (iChannel == WAVE_X){
|
||||||
|
wave_channel.WaveChannelX[i] = frTemp;
|
||||||
|
}else if (iChannel == WAVE_Y){
|
||||||
|
wave_channel.WaveChannelY[i] = frTemp;
|
||||||
|
}else if (iChannel == WAVE_Z){
|
||||||
|
wave_channel.WaveChannelZ[i] = frTemp;
|
||||||
|
}else if (iChannel == WAVE_LF_X){
|
||||||
|
wave_vol_channel.WaveChannelVolX[i] = frTemp;
|
||||||
|
}else if (iChannel == WAVE_LF_Y){
|
||||||
|
wave_vol_channel.WaveChannelVolY[i] = frTemp;
|
||||||
|
}else if (iChannel == WAVE_LF_Z){
|
||||||
|
wave_vol_channel.WaveChannelVolZ[i] = frTemp;
|
||||||
|
}
|
||||||
if (i != outputData.size() -1){
|
if (i != outputData.size() -1){
|
||||||
strncpy(mqttData + id ,buf,strlen(buf));
|
strncpy(mqttData + id ,buf,strlen(buf));
|
||||||
id = id + strlen(buf);
|
id = id + strlen(buf);
|
||||||
@ -1362,7 +1349,36 @@ void Uart::WriteDatFile(int sampleRate, std::string &strMeasurementID, int iChan
|
|||||||
strncpy(mqttData + id ,buf,strlen(buf));
|
strncpy(mqttData + id ,buf,strlen(buf));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}else{
|
||||||
|
for (size_t i = 0; i < vecData.size(); i++) {
|
||||||
|
frTemp = vecData[i] - mean;
|
||||||
|
memset(buf, 0x00, sizeof(buf));
|
||||||
|
sprintf(buf, "%.2f", frTemp);
|
||||||
|
fwrite(&frTemp,sizeof(float),1,fp);
|
||||||
|
if (iChannel == WAVE_X){
|
||||||
|
wave_channel.WaveChannelX[i] = frTemp;
|
||||||
|
}else if (iChannel == WAVE_Y){
|
||||||
|
wave_channel.WaveChannelY[i] = frTemp;
|
||||||
|
}else if (iChannel == WAVE_Z){
|
||||||
|
wave_channel.WaveChannelZ[i] = frTemp;
|
||||||
|
}else if (iChannel == WAVE_LF_X){
|
||||||
|
wave_vol_channel.WaveChannelVolX[i] = frTemp;
|
||||||
|
}else if (iChannel == WAVE_LF_Y){
|
||||||
|
wave_vol_channel.WaveChannelVolY[i] = frTemp;
|
||||||
|
}else if (iChannel == WAVE_LF_Z){
|
||||||
|
wave_vol_channel.WaveChannelVolZ[i] = frTemp;
|
||||||
}
|
}
|
||||||
|
if (i != vecData.size() -1){
|
||||||
|
strncpy(mqttData + id ,buf,strlen(buf));
|
||||||
|
id = id + strlen(buf);
|
||||||
|
strncpy(mqttData + id,",",1);
|
||||||
|
id = id + 1;
|
||||||
|
}else{
|
||||||
|
strncpy(mqttData + id ,buf,strlen(buf));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fclose(fp);
|
||||||
zlog_info(zct, "fopen file vecData.size : %zu end ", vecData.size());
|
zlog_info(zct, "fopen file vecData.size : %zu end ", vecData.size());
|
||||||
wave_channel.wave_timestamp = nowTimetamp;
|
wave_channel.wave_timestamp = nowTimetamp;
|
||||||
g_mapWaveChannel[strMeasurementID] = wave_channel;
|
g_mapWaveChannel[strMeasurementID] = wave_channel;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user