统计数据转换结构调整

This commit is contained in:
2025-12-02 10:52:06 +08:00
parent c02f0cbbdd
commit a1d8a55357
3 changed files with 84 additions and 14 deletions

View File

@@ -981,6 +981,40 @@ public:
float_buffer.push_back(UL_Flicker[i]); float_buffer.push_back(UL_Flicker[i]);
} }
//<2F><>12λ A<><41>P1 Q1 S1 B<><42>P1 Q1 S1 C<><43>P1 Q1 S1 T<><54>P1 Q1 S1
float_buffer.push_back(Harm_Power[0][0].P);
float_buffer.push_back(Harm_Power[0][0].Q);
float_buffer.push_back(Harm_Power[0][0].S);
float_buffer.push_back(Harm_Power[1][0].P);
float_buffer.push_back(Harm_Power[1][0].Q);
float_buffer.push_back(Harm_Power[1][0].S);
float_buffer.push_back(Harm_Power[2][0].P);
float_buffer.push_back(Harm_Power[2][0].Q);
float_buffer.push_back(Harm_Power[2][0].S);
float_buffer.push_back(Harm_Power[3][0].P);
float_buffer.push_back(Harm_Power[3][0].Q);
float_buffer.push_back(Harm_Power[3][0].S);
//<2F><><20><><EFBFBD><EFBFBD>ѹ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ߵ<EFBFBD>ѹ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Чֵ A B C V1 I1<49><31>FuHarmȡ<6D><C8A1><EFBFBD><EFBFBD>
float_buffer.push_back(3.14159f);//A V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
float_buffer.push_back(3.14159f);//B V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
float_buffer.push_back(3.14159f);//C V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
float_buffer.push_back(FuHarm[3][0]);//A I1
float_buffer.push_back(FuHarm[4][0]);//B I1
float_buffer.push_back(FuHarm[5][0]);//C I1
float_buffer.push_back(FuHarm[0][0]);//AB V1
float_buffer.push_back(FuHarm[1][0]);//BC V1
float_buffer.push_back(FuHarm[2][0]);//CA V1
//<2F><><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FuHarmPhaseȡ<65><C8A1><EFBFBD><EFBFBD>
float_buffer.push_back(3.14159f);//A V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
float_buffer.push_back(3.14159f);//B V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
float_buffer.push_back(3.14159f);//C V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
float_buffer.push_back(FuHarmPhase[3][0]);//A I1
float_buffer.push_back(FuHarmPhase[4][0]);//B I1
float_buffer.push_back(FuHarmPhase[5][0]);//C I1
float_buffer.push_back(FuHarmPhase[0][0]);//AB V1
float_buffer.push_back(FuHarmPhase[1][0]);//BC V1
float_buffer.push_back(FuHarmPhase[2][0]);//CA V1
// ת<><D7AA>ΪBase64 // ת<><D7AA>ΪBase64
const size_t byte_size = float_buffer.size() * sizeof(float); const size_t byte_size = float_buffer.size() * sizeof(float);
const unsigned char* byte_data = reinterpret_cast<const unsigned char*>(float_buffer.data()); const unsigned char* byte_data = reinterpret_cast<const unsigned char*>(float_buffer.data());
@@ -1190,6 +1224,40 @@ public:
float_buffer.push_back(3.14159f); float_buffer.push_back(3.14159f);
} }
//<2F><>12λ A<><41>P1 Q1 S1 B<><42>P1 Q1 S1 C<><43>P1 Q1 S1 T<><54>P1 Q1 S1
float_buffer.push_back(Harm_Power[0][0].P);
float_buffer.push_back(Harm_Power[0][0].Q);
float_buffer.push_back(Harm_Power[0][0].S);
float_buffer.push_back(Harm_Power[1][0].P);
float_buffer.push_back(Harm_Power[1][0].Q);
float_buffer.push_back(Harm_Power[1][0].S);
float_buffer.push_back(Harm_Power[2][0].P);
float_buffer.push_back(Harm_Power[2][0].Q);
float_buffer.push_back(Harm_Power[2][0].S);
float_buffer.push_back(Harm_Power[3][0].P);
float_buffer.push_back(Harm_Power[3][0].Q);
float_buffer.push_back(Harm_Power[3][0].S);
//<2F><><20><><EFBFBD><EFBFBD>ѹ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ߵ<EFBFBD>ѹ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Чֵ A B C V1 I1<49><31>FuHarmȡ<6D><C8A1><EFBFBD><EFBFBD>
float_buffer.push_back(FuHarm[0][0]);//A V1
float_buffer.push_back(FuHarm[1][0]);//B V1
float_buffer.push_back(FuHarm[2][0]);//C V1
float_buffer.push_back(FuHarm[3][0]);//A I1
float_buffer.push_back(FuHarm[4][0]);//B I1
float_buffer.push_back(FuHarm[5][0]);//C I1
float_buffer.push_back(3.14159f);//AB V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
float_buffer.push_back(3.14159f);//BC V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
float_buffer.push_back(3.14159f);//CA V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
//<2F><><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FuHarmPhaseȡ<65><C8A1><EFBFBD><EFBFBD>
float_buffer.push_back(FuHarmPhase[0][0]);//A V1
float_buffer.push_back(FuHarmPhase[1][0]);//B V1
float_buffer.push_back(FuHarmPhase[2][0]);//C V1
float_buffer.push_back(FuHarmPhase[3][0]);//A I1
float_buffer.push_back(FuHarmPhase[4][0]);//B I1
float_buffer.push_back(FuHarmPhase[5][0]);//C I1
float_buffer.push_back(3.14159f);//AB V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
float_buffer.push_back(3.14159f);//BC V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
float_buffer.push_back(3.14159f);//CA V1 <20><><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>
// ת<><D7AA>ΪBase64 // ת<><D7AA>ΪBase64
const size_t byte_size = float_buffer.size() * sizeof(float); const size_t byte_size = float_buffer.size() * sizeof(float);
const unsigned char* byte_data = reinterpret_cast<const unsigned char*>(float_buffer.data()); const unsigned char* byte_data = reinterpret_cast<const unsigned char*>(float_buffer.data());
@@ -1966,7 +2034,11 @@ public:
std::vector<float> float_buffer; std::vector<float> float_buffer;
//THD<48>ߵ<EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD>ʣ<EFBFBD>3-5<><35> //THD<48>ߵ<EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD>ʣ<EFBFBD>3-5<><35>
for (int i = 3; i < 6; ++i) { /*for (int i = 3; i < 6; ++i) {
float_buffer.push_back(THD[i]);
}*/
//<2F><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD>ָ<EFBFBD><EFBFBD><EAB1BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼȡ0-2<><32><EFBFBD><EFBFBD>ȡ3-5
for (int i = 0; i < 3; ++i) {
float_buffer.push_back(THD[i]); float_buffer.push_back(THD[i]);
} }
@@ -1985,7 +2057,7 @@ public:
std::string ConvertToBase64_Star_RtHarmV() const { std::string ConvertToBase64_Star_RtHarmV() const {
std::vector<float> float_buffer; std::vector<float> float_buffer;
//THD<48>ߵ<EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʣ<EFBFBD>3-5<EFBFBD><EFBFBD> //THD<48><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʣ<EFBFBD>0-2<EFBFBD><EFBFBD>
for (int i = 0; i < 3; ++i) { for (int i = 0; i < 3; ++i) {
float_buffer.push_back(THD[i]); float_buffer.push_back(THD[i]);
} }

View File

@@ -95,7 +95,7 @@ void process_received_message(string mac, string id,const char* data, size_t len
//ClientManager::instance().get_dev_status(id);//设备在线情况判断 ture在线 false离线 //ClientManager::instance().get_dev_status(id);//设备在线情况判断 ture在线 false离线
//ClientManager::instance().set_real_state_count("D002", 1,1);//登录后测试实时 //ClientManager::instance().set_real_state_count("D002", 1,1);//登录后测试实时
//ClientManager::instance().add_file_menu_action_to_device("D002","/etc");//测试文件目录读取 //ClientManager::instance().add_file_menu_action_to_device(id,"/etc");//测试文件目录读取
//ClientManager::instance().add_file_download_action_to_device("D002", "/etc/NPQS570_VX_ZJ_2(V103).icd");//测试文件下载 //ClientManager::instance().add_file_download_action_to_device("D002", "/etc/NPQS570_VX_ZJ_2(V103).icd");//测试文件下载
//ClientManager::instance().get_fixedvalue_action_to_device(id,1);//测试获取装置测点定值数据 //ClientManager::instance().get_fixedvalue_action_to_device(id,1);//测试获取装置测点定值数据
//ClientManager::instance().get_fixedvaluedes_action_to_device(id);//测试获取装置定值描述 //ClientManager::instance().get_fixedvaluedes_action_to_device(id);//测试获取装置定值描述
@@ -767,15 +767,17 @@ void process_received_message(string mac, string id,const char* data, size_t len
tag_dir_info dir_info; tag_dir_info dir_info;
memcpy(&dir_info, data_ptr + i, struct_size); memcpy(&dir_info, data_ptr + i, struct_size);
// 字节序转换 (大端 -> 小端)
dir_info.flag = ntohl(dir_info.flag);
dir_info.size = ntohl(dir_info.size);
std::string gbk_name(dir_info.name, strnlen(dir_info.name, sizeof(dir_info.name))); std::string gbk_name(dir_info.name, strnlen(dir_info.name, sizeof(dir_info.name)));
if (dir_info.flag > 1000) {
//大于1000默认为大端序的文件 需要进行转换
// 字节序转换 (大端 -> 小端)
dir_info.flag = ntohl(dir_info.flag);
dir_info.size = ntohl(dir_info.size);
}
// 打印文件名 // 打印文件名
std::cout << "file name:" << gbk_name << std::endl; std::cout << "file name:" << gbk_name << " size:" << dir_info.size << " type:" << dir_info.flag <<std::endl;
// 添加到文件列表 // 添加到文件列表
FileList.push_back(dir_info); FileList.push_back(dir_info);

View File

@@ -166,12 +166,8 @@ void* client_manager_thread(void* arg) {
//// <20><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD>б<EFBFBD> //// <20><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD>б<EFBFBD>
//std::vector<DeviceInfo> devices = { //std::vector<DeviceInfo> devices = {
// { // {
// "D001", "Primary Device", "Model-X", "00-B7-8D-01-88-7f", // "D001", "Primary Device", "Model-X", "00-B7-8D-00-BB-03",
// 1, points1,true // 1, points1,true
// },
// {
// "D002", "Primary Device1", "Model-X1", "00-B7-8D-01-71-09",
// 1, points2,true
// } // }
//}; //};