This commit is contained in:
zhangsheng 2026-03-20 20:15:37 +08:00
parent 8f8f6ced84
commit 86fc0aa285
2 changed files with 8 additions and 8 deletions

View File

@ -132,15 +132,15 @@ std::string JsonData::JsonCmd_Cgi_26(Param_26 &param) {
effect = vecResult[5]; effect = vecResult[5];
} }
jsSensorData["waveStatus"] = 3;
//同时满足时的优先级:低电量>低信号>停机 //同时满足时的优先级:低电量>低信号>停机
if(effect == "1"){ if(effect == "1"){
jsSensorData["waveStatus"] = 0; //灰色 jsSensorData["waveStatus"] = 0; //灰色
} }
if(lowSignal == 1 && atof(rssi.c_str()) < signalThreshold){ if(lowSignal == 1 && atof(rssi.c_str()) < signalThreshold / 100.0){
jsSensorData["waveStatus"] = 1;//红色 jsSensorData["waveStatus"] = 1;//红色
} }
if(lowBatteryLevel == 1 && fBatteryPower < batteryLevelThreshold){ if(lowBatteryLevel == 1 && ((fBatteryPower * 100) < batteryLevelThreshold)){
jsSensorData["waveStatus"] = 2;//红色 jsSensorData["waveStatus"] = 2;//红色
} }

View File

@ -68,13 +68,13 @@ void Uart::RecordBattery(std::string &strLongAddr, DataRecvStatic &dataStatic, s
if (dataStatic.nodeSendTime > 0){ if (dataStatic.nodeSendTime > 0){
actualRate = (wave_dataLen / 1024.0f) / (dataStatic.nodeSendTime / 1000.0f); //单位KB/s actualRate = (wave_dataLen / 1024.0f) / (dataStatic.nodeSendTime / 1000.0f); //单位KB/s
} }
float comprehensiveRSSI = (zigbeeSignal + zigbeeSignalNode) * (standardRate / actualRate); float comprehensiveRSSI = (((zigbeeSignal + zigbeeSignalNode) / 255.0) / 2.0) * (standardRate / actualRate);
if (comprehensiveRSSI > 1.0f) { if (comprehensiveRSSI > 1.0f) {
comprehensiveRSSI = 1.0f; //综合信号强度最大为1 comprehensiveRSSI = 1.0f; //综合信号强度最大为1
} }
zlog_info(zct, "dataNodeNo='%s',zigbeeSignal = '%d',zigbeeSignalNode = '%d',wave_dataLen=%d,nodeSendTime=%f,actualRate=%f", zlog_info(zct, "dataNodeNo='%s',zigbeeSignal = '%d',zigbeeSignalNode = '%d',wave_dataLen=%d,nodeSendTime=%f,actualRate=%f,comprehensiveRSSI = %f",
strLongAddr.c_str(),zigbeeSignal, zigbeeSignalNode,wave_dataLen, dataStatic.nodeSendTime, actualRate); strLongAddr.c_str(),zigbeeSignal, zigbeeSignalNode,wave_dataLen, dataStatic.nodeSendTime, actualRate,comprehensiveRSSI);
//更新综合信号强度到数据库 //更新综合信号强度到数据库
char updateSql[256] = {0}; char updateSql[256] = {0};
memset(whereCon, 0x00, sizeof(whereCon)); memset(whereCon, 0x00, sizeof(whereCon));
@ -1074,7 +1074,7 @@ void Uart::DealWave() {
sprintf(tableName, "t_dataStatic_%s", (char *)res[44].c_str()); sprintf(tableName, "t_dataStatic_%s", (char *)res[44].c_str());
memset(whereCon,0,sizeof(whereCon)); memset(whereCon,0,sizeof(whereCon));
sprintf(whereCon, "dataNodeNo='%s' order by timeStamp desc limit 1", strMeasurementID.c_str()); sprintf(whereCon, "dataNodeNo='%s' order by timeStamp desc limit 1", strMeasurementID.c_str());
std::string timestamp_last = sqlite_db_ctrl::instance().GetData(tableName, " timeStamp ", whereCon); std::string timestamp_last = sqlite_db_ctrl::instance().GetData(tableName, " timeStamp ", whereCon);//将数据绑定到最后一次特征值数据的时间戳上
std::string ran = ""; std::string ran = "";
int n = 0; int n = 0;