add eigenvalue codes
This commit is contained in:
parent
ac2d4163fb
commit
faa1938e82
@ -190,7 +190,7 @@ void JsonData::CmtCmd_82(char* MeasurementID,char* send_data,int& channel,int& s
|
||||
{
|
||||
FILE* pFile = NULL;
|
||||
char* buffer = NULL;
|
||||
int thisSize = 0;
|
||||
int thisSize = 32;
|
||||
WaveRes wave;
|
||||
char whereCon[64]={0};
|
||||
sprintf(whereCon,"MeasurementID = '%s'",MeasurementID);
|
||||
@ -217,7 +217,6 @@ void JsonData::CmtCmd_82(char* MeasurementID,char* send_data,int& channel,int& s
|
||||
buffer = (char*)malloc(thisSize - 32);
|
||||
fread(buffer, sizeof(char), thisSize - 32, pFile);
|
||||
fclose(pFile);
|
||||
}
|
||||
wave.sampling_rate = atoi(vecRes[0].c_str());
|
||||
wave.sampling_time = atoi(vecRes[1].c_str());
|
||||
wave.version = 1;
|
||||
@ -225,6 +224,8 @@ void JsonData::CmtCmd_82(char* MeasurementID,char* send_data,int& channel,int& s
|
||||
memcpy(send_data,(char*)&wave,sizeof(WaveRes));
|
||||
memcpy(send_data + sizeof(WaveRes) ,buffer,thisSize - 32);
|
||||
free(buffer);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void JsonData::CmtCmd_83(char* recv_body,int& count,char* send_data,int& send_length)
|
||||
@ -238,7 +239,6 @@ void JsonData::CmtCmd_83(char* recv_body,int& count,char* send_data,int& send_le
|
||||
for (size_t i = 0; i < count; i++){
|
||||
char temp[21]={0};
|
||||
memcpy(temp,recv_body + i * 20,20);
|
||||
printf("short_addr = %s\n",temp);
|
||||
strcat(MeasurementID_,"'");
|
||||
strcat(MeasurementID_,temp);
|
||||
strcat(MeasurementID_,"'");
|
||||
@ -402,7 +402,7 @@ void JsonData::CmtCmd_84(char* filename,char* file_md5,char* send_data,int& sen
|
||||
|
||||
void JsonData::CmtCmd_85(char* filename,char* file_md5,char* send_data,int& send_length)
|
||||
{
|
||||
zlog_info(zct,"file_path = %s,file_md5 = %d",filename,file_md5);
|
||||
zlog_info(zct,"file_path = %s,file_md5 = %s",filename,file_md5);
|
||||
sleep(3);
|
||||
int iRet = system("/opt/opt.sh");
|
||||
zlog_info(zct, "iRet = %d", iRet);
|
||||
@ -413,7 +413,7 @@ void JsonData::CmtCmd_85(char* filename,char* file_md5,char* send_data,int& sen
|
||||
|
||||
void JsonData::CmtCmd_86(char* recv_body,int& count,char* filename,char* file_md5,char* send_data,int& send_length)
|
||||
{
|
||||
zlog_info(zct,"file_path = %s,file_md5 = %d",filename,file_md5);
|
||||
zlog_info(zct,"file_path = %s,file_md5 = %s",filename,file_md5);
|
||||
UpgradeSensorRes upgrade_sensor_res;
|
||||
upgrade_sensor_res.code = 0;
|
||||
sprintf(upgrade_sensor_res.message ,"%s","");
|
||||
@ -508,8 +508,49 @@ void JsonData::CmtCmd_86(char* recv_body,int& count,char* filename,char* file_m
|
||||
}
|
||||
free(buffer);
|
||||
}
|
||||
void JsonData::CmtCmd_87(char* MeasurementID,char* send_data,int& send_length)
|
||||
{
|
||||
array_t arrRes;
|
||||
GetEigenvalueRes get_eigenvalue_res;
|
||||
char whereCon[128] = {};
|
||||
sprintf(whereCon, "channelID like '%%%s%%' ORDER BY timeStamp DESC LIMIT 0,3", MeasurementID);
|
||||
arrRes = sqlite_db_ctrl::instance().GetDataMultiLineTransaction(T_DATA_INFO(TNAME), "*", whereCon);
|
||||
int iResult = arrRes.size();
|
||||
if (iResult > 0) {
|
||||
int j = 0;
|
||||
GetEigenvalueRes get_eigenvalue_res[iResult];
|
||||
for (; j < iResult; j++) {
|
||||
get_eigenvalue_res[j].version = 1;
|
||||
if(arrRes[j][1] == (std::string(MeasurementID) +"-X")){
|
||||
get_eigenvalue_res[j].channel = 1;
|
||||
}else if (arrRes[j][1] == (std::string(MeasurementID) +"-Y")){
|
||||
get_eigenvalue_res[j].channel = 2;
|
||||
}else if (arrRes[j][1] == (std::string(MeasurementID) +"-Z")){
|
||||
get_eigenvalue_res[j].channel = 3;
|
||||
}
|
||||
printf("channle = %d\n",get_eigenvalue_res[j].channel);
|
||||
get_eigenvalue_res[j].DiagnosisPk = atof(arrRes[j][2].c_str());
|
||||
get_eigenvalue_res[j].IntegratPk = atof(arrRes[j][3].c_str());
|
||||
get_eigenvalue_res[j].IntegratRMS = atof(arrRes[j][4].c_str());
|
||||
get_eigenvalue_res[j].RmsValues = atof(arrRes[j][5].c_str());
|
||||
get_eigenvalue_res[j].EnvelopEnergy = atof(arrRes[j][6].c_str());
|
||||
get_eigenvalue_res[j].Amp1 = atof(arrRes[j][7].c_str());
|
||||
get_eigenvalue_res[j].Amp2 = atof(arrRes[j][8].c_str());
|
||||
get_eigenvalue_res[j].Amp3 = atof(arrRes[j][9].c_str());
|
||||
get_eigenvalue_res[j].Amp4 = atof(arrRes[j][10].c_str());
|
||||
get_eigenvalue_res[j].Amp5 = atof(arrRes[j][11].c_str());
|
||||
get_eigenvalue_res[j].Phase1 = atof(arrRes[j][12].c_str());
|
||||
get_eigenvalue_res[j].Phase2 = atof(arrRes[j][13].c_str());
|
||||
get_eigenvalue_res[j].Phase3 = atof(arrRes[j][14].c_str());
|
||||
get_eigenvalue_res[j].Phase4 = atof(arrRes[j][15].c_str());
|
||||
get_eigenvalue_res[j].Time = atoi(arrRes[j][17].c_str());
|
||||
}
|
||||
memcpy(send_data,(char*)&get_eigenvalue_res,sizeof(GetEigenvalueRes) * j);
|
||||
send_length = sizeof(GetEigenvalueRes) * j;
|
||||
}
|
||||
}
|
||||
|
||||
void JsonData::CmtCmd_88(char* recv_body,int& count)
|
||||
void JsonData::CmtCmd_88(int& short_addr,char* send_data,int& send_length)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
@ -76,14 +76,15 @@ public:
|
||||
std::string JsonCmd_Cgi_default();
|
||||
|
||||
//CMT tcp
|
||||
void CmtCmd_80(char* send_data,int& return_length);
|
||||
void CmtCmd_81(char* recv_body,int& count,char* send_data,int& return_length);
|
||||
void CmtCmd_82(char* MeasurementID,char* send_data,int& channel,int& return_length);
|
||||
void CmtCmd_83(char* recv_body,int& count,char* send_data,int& return_length);
|
||||
void CmtCmd_80(char* send_data,int& send_length);
|
||||
void CmtCmd_81(char* recv_body,int& count,char* send_data,int& send_length);
|
||||
void CmtCmd_82(char* MeasurementID,char* send_data,int& channel,int& send_length);
|
||||
void CmtCmd_83(char* recv_body,int& count,char* send_data,int& send_length);
|
||||
void CmtCmd_84(char* filename,char* file_md5,char* send_data,int& send_length);
|
||||
void CmtCmd_85(char* filename,char* file_md5,char* send_data,int& send_length);
|
||||
void CmtCmd_86(char* recv_body,int& count,char* filename,char* file_md5,char* send_data,int& send_length);
|
||||
void CmtCmd_88(char* recv_body,int& count);
|
||||
void CmtCmd_87(char* MeasurementID,char* send_data,int& send_length);
|
||||
void CmtCmd_88(int& short_addr,char* send_data,int& send_length);
|
||||
|
||||
private:
|
||||
Json::FastWriter show_value_;
|
||||
|
||||
@ -87,20 +87,12 @@ void LocalServer::HandleTcp_cmd(const char* recv_data,char* send_data,uint8_t& r
|
||||
jd.CmtCmd_86(recv_body,count,upgrade_sensor.filename,upgrade_sensor.md5,send_data,send_length);
|
||||
}break;
|
||||
case KEigenvalue:{
|
||||
|
||||
GetEigenvalueReq get_eigenvalue;
|
||||
memcpy(&get_eigenvalue,recv_data + sizeof(PackageHead),sizeof(GetEigenvalueReq));
|
||||
jd.CmtCmd_87(get_eigenvalue.measurement_id,send_data,send_length);
|
||||
}
|
||||
break;
|
||||
case KUpgradeSensorStop:{
|
||||
char *recv_body = NULL;
|
||||
int count = 0;
|
||||
if (recvbody_length > 0){
|
||||
recv_body = (char*)malloc(recvbody_length - 4);
|
||||
memcpy((char*)&count,(char*)recv_data + sizeof(PackageHead) ,4);
|
||||
memcpy(recv_body,recv_data + sizeof(PackageHead) + 4 ,recvbody_length - 4);
|
||||
}
|
||||
UpgradeSensorReq upgrade_sensor;
|
||||
memcpy(&upgrade_sensor,recv_data + sizeof(PackageHead),sizeof(UpgradeSensorReq));
|
||||
jd.CmtCmd_88(recv_body,count);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
||||
@ -75,7 +75,7 @@ void CMTSession::do_read() {
|
||||
pkg_head.head[2] = 0xAA;
|
||||
pkg_head.cmd = cmd;
|
||||
pkg_head.len = send_data_len;
|
||||
memset(data_,0,sizeof(data_));
|
||||
memset(data_,0,CMT_TCP_LEN);
|
||||
memcpy(data_, &pkg_head, head_len_);
|
||||
memcpy(data_ + head_len_, &send_data, send_data_len);
|
||||
do_write(head_len_ + send_data_len);
|
||||
|
||||
@ -171,7 +171,28 @@ struct UpgradeSensorRes{
|
||||
char message[64];
|
||||
};
|
||||
//获取特征值 cmd 87
|
||||
|
||||
struct GetEigenvalueReq{
|
||||
char measurement_id[20];
|
||||
};
|
||||
struct GetEigenvalueRes{
|
||||
int version;
|
||||
int channel;//参考 ChannelType
|
||||
float DiagnosisPk;
|
||||
float IntegratPk;
|
||||
float IntegratRMS;
|
||||
float RmsValues;
|
||||
float EnvelopEnergy;
|
||||
float Amp1;
|
||||
float Amp2;
|
||||
float Amp3;
|
||||
float Amp4;
|
||||
float Amp5;
|
||||
float Phase1;
|
||||
float Phase2;
|
||||
float Phase3;
|
||||
float Phase4;
|
||||
int Time;
|
||||
};
|
||||
|
||||
//停止更新传感器 cmd 88
|
||||
struct UpgradeStopReq{
|
||||
|
||||
@ -599,7 +599,7 @@ void Uart::DealDataNodeName(const char *pData) {
|
||||
sprintf(szShortAdd, "%02x%02x", pData[3] & 0xFF, pData[4] & 0xFF);
|
||||
memcpy(NodeName, &pData[7], 64);
|
||||
memcpy(shortAdd, &pData[3], 2);
|
||||
char whereCon[64] = {0};
|
||||
char whereCon[128] = {0};
|
||||
char uplCon[200] = {0x00};
|
||||
char nodeWaveSend[10] = {0x00};
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user