From 3af645f080afbabba3512b8059c745848d64b669 Mon Sep 17 00:00:00 2001 From: "DESKTOP-7I8SUIC\\zhang" Date: Tue, 29 Jul 2025 10:05:11 +0800 Subject: [PATCH] add codes --- acceleration.cpp | 39 +++-- acceleration.ui | 6 +- config_mgr.cpp | 375 ++++++++++++++++++++++++++---------------- data_config.h | 2 + pressure_pulsation.ui | 2 +- radial_vibration.cpp | 72 +++++--- radial_vibration.ui | 8 +- seismic_monitor.cpp | 16 ++ seismic_monitor.ui | 82 ++++----- trust.cpp | 133 ++++++++------- trust.ui | 8 +- velocity.cpp | 39 +++-- velocity.ui | 4 +- 13 files changed, 488 insertions(+), 298 deletions(-) diff --git a/acceleration.cpp b/acceleration.cpp index ac9ad99..76c8bc3 100644 --- a/acceleration.cpp +++ b/acceleration.cpp @@ -65,30 +65,33 @@ void Acceleration::Init() { ui->comboBox_output_used->setCurrentIndex(0); else ui->comboBox_output_used->setCurrentIndex(1); + ui->comboBox_engineering_unit->setCurrentText(variable_ptr->general.engineering_unit); + ui->comboBox_rectifier_funtion->setCurrentText(variable_ptr->general.rectifier_function); // -alarm ui->lineEdit_danger_high_level->setText(QString::number(variable_ptr->danger_high.level)); - ui->lineEdit_danger_high_hysteresis->setText(QString::number(variable_ptr->danger_high.level)); - ui->lineEdit_danger_high_delay->setText(QString::number(variable_ptr->danger_high.level)); + ui->lineEdit_danger_high_hysteresis->setText(QString::number(variable_ptr->danger_high.hysteresis)); + ui->lineEdit_danger_high_delay->setText(QString::number(variable_ptr->danger_high.delay)); ui->checkBox_danger_high_enable->setChecked(variable_ptr->danger_high.enable); ui->checkBox_danger_high_latch->setChecked(variable_ptr->danger_high.latch); ui->lineEdit_alert_high_level->setText(QString::number(variable_ptr->alert_high.level)); - ui->lineEdit_alert_high_hysteresis->setText(QString::number(variable_ptr->alert_high.level)); - ui->lineEdit_alert_high_delay->setText(QString::number(variable_ptr->alert_high.level)); + ui->lineEdit_alert_high_hysteresis->setText(QString::number(variable_ptr->alert_high.hysteresis)); + ui->lineEdit_alert_high_delay->setText(QString::number(variable_ptr->alert_high.delay)); ui->checkBox_alert_high_enable->setChecked(variable_ptr->alert_high.enable); ui->checkBox_alert_high_latch->setChecked(variable_ptr->alert_high.latch); ui->lineEdit_danger_low_level->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->danger_low.level)); + ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->danger_low.hysteresis)); + ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->danger_low.delay)); ui->checkBox_danger_low_enable->setChecked(variable_ptr->danger_low.enable); ui->checkBox_danger_low_latch->setChecked(variable_ptr->danger_low.latch); - ui->lineEdit_danger_low_level->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->danger_low.level)); - ui->checkBox_danger_low_enable->setChecked(variable_ptr->danger_low.enable); - ui->checkBox_danger_low_latch->setChecked(variable_ptr->danger_low.latch); + ui->lineEdit_alert_low_level->setText(QString::number(variable_ptr->alert_low.level)); + ui->lineEdit_alert_low_hysteresis->setText(QString::number(variable_ptr->alert_low.hysteresis)); + ui->lineEdit_alert_low_delay->setText(QString::number(variable_ptr->alert_low.delay)); + ui->checkBox_alert_low_enable->setChecked(variable_ptr->alert_low.enable); + ui->checkBox_alert_low_latch->setChecked(variable_ptr->alert_low.latch); + // ui->checkBox_enable->setChecked(variable_ptr->freband_output[0].enable); ui->lineEdit_start->setText(QString::number(variable_ptr->freband_output[0].start)); @@ -157,6 +160,8 @@ void Acceleration::on_pushButton_confirm_clicked() { variable->general.output_used = true; else variable->general.output_used = false; + variable->general.engineering_unit = ui->comboBox_engineering_unit->currentText(); + variable->general.rectifier_function = ui->comboBox_rectifier_funtion->currentText(); // -alarm variable->danger_high.level = ui->lineEdit_danger_high_level->text().toDouble(); variable->danger_high.hysteresis = ui->lineEdit_danger_high_hysteresis->text().toDouble(); @@ -173,6 +178,11 @@ void Acceleration::on_pushButton_confirm_clicked() { variable->danger_low.delay = ui->lineEdit_danger_low_delay->text().toDouble(); variable->danger_low.enable = ui->checkBox_danger_low_enable->isChecked(); variable->danger_low.latch = ui->checkBox_danger_low_latch->isChecked(); + variable->alert_low.level = ui->lineEdit_alert_low_level->text().toDouble(); + variable->alert_low.hysteresis = ui->lineEdit_alert_low_hysteresis->text().toDouble(); + variable->alert_low.delay = ui->lineEdit_alert_low_delay->text().toDouble(); + variable->alert_low.enable = ui->checkBox_alert_low_enable->isChecked(); + variable->alert_low.latch = ui->checkBox_alert_low_latch->isChecked(); // -freband output variable->freband_output[0].enable = ui->checkBox_enable->isChecked(); variable->freband_output[0].start = ui->lineEdit_start->text().toDouble(); @@ -224,6 +234,8 @@ void Acceleration::on_pushButton_confirm_clicked() { variable->general.output_used = true; else variable->general.output_used = false; + variable->general.engineering_unit = ui->comboBox_engineering_unit->currentText(); + variable->general.rectifier_function = ui->comboBox_rectifier_funtion->currentText(); // -alarm variable->danger_high.level = ui->lineEdit_danger_high_level->text().toDouble(); variable->danger_high.hysteresis = ui->lineEdit_danger_high_hysteresis->text().toDouble(); @@ -240,6 +252,11 @@ void Acceleration::on_pushButton_confirm_clicked() { variable->danger_low.delay = ui->lineEdit_danger_low_delay->text().toDouble(); variable->danger_low.enable = ui->checkBox_danger_low_enable->isChecked(); variable->danger_low.latch = ui->checkBox_danger_low_latch->isChecked(); + variable->alert_low.level = ui->lineEdit_alert_low_level->text().toDouble(); + variable->alert_low.hysteresis = ui->lineEdit_alert_low_hysteresis->text().toDouble(); + variable->alert_low.delay = ui->lineEdit_alert_low_delay->text().toDouble(); + variable->alert_low.enable = ui->checkBox_alert_low_enable->isChecked(); + variable->alert_low.latch = ui->checkBox_alert_low_latch->isChecked(); // -freband output variable->freband_output[0].enable = ui->checkBox_enable->isChecked(); variable->freband_output[0].start = ui->lineEdit_start->text().toDouble(); diff --git a/acceleration.ui b/acceleration.ui index 3397641..fab8d3e 100644 --- a/acceleration.ui +++ b/acceleration.ui @@ -107,7 +107,7 @@ - 2 + 1 @@ -739,7 +739,7 @@ - + 80 @@ -759,7 +759,7 @@ - + 80 diff --git a/config_mgr.cpp b/config_mgr.cpp index c33a65d..61b6a31 100644 --- a/config_mgr.cpp +++ b/config_mgr.cpp @@ -58,52 +58,55 @@ void ConfigMgr::Save(QString & file_path) { std::shared_ptr ptr = std::dynamic_pointer_cast(base_ptr); channel_item["standby"] = ptr->base_config_[cid].standby; channel_item["active"] = ptr->base_config_[cid].active; - channel_item["rack_type"] = 0; // TODO: +// channel_item["rack_type"] = 0; // TODO: channel_item["channel_type"] = ptr->base_config_[cid].channel_type; - channel_item["transducer_id"] = ptr->base_config_[cid].transducer_id; - channel_item["scale_factor"] = ptr->base_config_[cid].scale_factor; - channel_item["sampling_rate"] = ptr->base_config_[cid].sampling_rate; +// channel_item["transducer_id"] = ptr->base_config_[cid].transducer_id; +// channel_item["scale_factor"] = ptr->base_config_[cid].scale_factor; +// channel_item["sampling_rate"] = ptr->base_config_[cid].sampling_rate; channel_item["power"] = ptr->base_config_[cid].power; channel_item["point_name"] = ptr->base_config_[cid].point_name; channel_item["chan_id"] = ptr->base_config_[cid].chan_id; + channel_item["sensitivity_unit"] = ptr->base_config_[cid].sensitivity_unit; + channel_item["signal_sensitivity"] = ptr->base_config_[cid].signal_sensitivity; + QJsonArray voltage_range; voltage_range.append(ptr->base_config_[cid].normal_voltage_low); voltage_range.append(ptr->base_config_[cid].normal_voltage_high); channel_item["normal_voltage_range"] = voltage_range; - QJsonObject setpoint_data; - if(ptr->base_config_[cid].channel_type == kVibRadial || ptr->base_config_[cid].channel_type == kVibThrust || - ptr->base_config_[cid].channel_type == kVibAcc || ptr->base_config_[cid].channel_type == kVibVelocity ){ - if(ptr->base_config_[cid].channel_type != kVibThrust){ - setpoint_data["1x_ampl_upper"] = qRound(ptr->alert_danger[cid].x1_ampl_upper * 10)/10.0; - setpoint_data["1x_ampl_lower"] = qRound(ptr->alert_danger[cid].x1_ampl_lower * 10)/10.0; - setpoint_data["1x_ampl_enable"] = ptr->alert_danger[cid].x1_ampl_enable; - setpoint_data["2x_ampl_upper"] = qRound(ptr->alert_danger[cid].x2_ampl_upper * 10)/10.0; - setpoint_data["2x_ampl_lower"] = qRound(ptr->alert_danger[cid].x2_ampl_lower * 10)/10.0; - setpoint_data["2x_ampl_enable"] = ptr->alert_danger[cid].x2_ampl_enable; - channel_item["keyphase"] = ptr->base_config_[cid].keyphase; - channel_item["keyphase_slot"] = ptr->base_config_[cid].keyphase_slot; - channel_item["keyphase_ch"] = ptr->base_config_[cid].keyphase_ch; - } - setpoint_data["direct_upper"] = qRound(ptr->alert_danger[cid].direct_upper * 10)/10.0; - setpoint_data["direct_enable"] = ptr->alert_danger[cid].direct_enable; - setpoint_data["danger_param"] = ptr->alert_danger[cid].danger_param; - setpoint_data["danger_upper"] = qRound(ptr->alert_danger[cid].danger_upper * 10)/10.0; - setpoint_data["danger_enable"] = ptr->alert_danger[cid].danger_enable; +// QJsonObject setpoint_data; +// if(ptr->base_config_[cid].channel_type == kVibRadial || ptr->base_config_[cid].channel_type == kVibThrust || +// ptr->base_config_[cid].channel_type == kVibAcc || ptr->base_config_[cid].channel_type == kVibVelocity ){ +// if(ptr->base_config_[cid].channel_type != kVibThrust){ +// setpoint_data["1x_ampl_upper"] = qRound(ptr->alert_danger[cid].x1_ampl_upper * 10)/10.0; +// setpoint_data["1x_ampl_lower"] = qRound(ptr->alert_danger[cid].x1_ampl_lower * 10)/10.0; +// setpoint_data["1x_ampl_enable"] = ptr->alert_danger[cid].x1_ampl_enable; +// setpoint_data["2x_ampl_upper"] = qRound(ptr->alert_danger[cid].x2_ampl_upper * 10)/10.0; +// setpoint_data["2x_ampl_lower"] = qRound(ptr->alert_danger[cid].x2_ampl_lower * 10)/10.0; +// setpoint_data["2x_ampl_enable"] = ptr->alert_danger[cid].x2_ampl_enable; +// channel_item["keyphase"] = ptr->base_config_[cid].keyphase; +// channel_item["keyphase_slot"] = ptr->base_config_[cid].keyphase_slot; +// channel_item["keyphase_ch"] = ptr->base_config_[cid].keyphase_ch; +// } +// setpoint_data["direct_upper"] = qRound(ptr->alert_danger[cid].direct_upper * 10)/10.0; +// setpoint_data["direct_enable"] = ptr->alert_danger[cid].direct_enable; +// setpoint_data["danger_param"] = ptr->alert_danger[cid].danger_param; +// setpoint_data["danger_upper"] = qRound(ptr->alert_danger[cid].danger_upper * 10)/10.0; +// setpoint_data["danger_enable"] = ptr->alert_danger[cid].danger_enable; - } - if(ptr->base_config_[cid].channel_type == kVibPressurePulsation){ - setpoint_data["low_upper"] = qRound(ptr->alert_danger_press[cid].low_upper * 10)/10.0; - setpoint_data["low_enable"] = ptr->alert_danger_press[cid].low_enable; - setpoint_data["mid1_upper"] = qRound(ptr->alert_danger_press[cid].mid1_upper * 10)/10.0; - setpoint_data["mid1_enable"] = ptr->alert_danger_press[cid].mid1_enable; - setpoint_data["mid2_upper"] = qRound(ptr->alert_danger_press[cid].mid2_upper * 10)/10.0; - setpoint_data["mid2_enable"] = ptr->alert_danger_press[cid].mid2_enable; - setpoint_data["danger_param"] = ptr->alert_danger_press[cid].danger_param; - setpoint_data["danger_upper"] = qRound(ptr->alert_danger_press[cid].danger_upper * 10)/10.0; - setpoint_data["danger_enable"] = ptr->alert_danger_press[cid].danger_enable; - } - channel_item["setpoint"] = setpoint_data; +// } +// if(ptr->base_config_[cid].channel_type == kVibPressurePulsation){ +// setpoint_data["low_upper"] = qRound(ptr->alert_danger_press[cid].low_upper * 10)/10.0; +// setpoint_data["low_enable"] = ptr->alert_danger_press[cid].low_enable; +// setpoint_data["mid1_upper"] = qRound(ptr->alert_danger_press[cid].mid1_upper * 10)/10.0; +// setpoint_data["mid1_enable"] = ptr->alert_danger_press[cid].mid1_enable; +// setpoint_data["mid2_upper"] = qRound(ptr->alert_danger_press[cid].mid2_upper * 10)/10.0; +// setpoint_data["mid2_enable"] = ptr->alert_danger_press[cid].mid2_enable; +// setpoint_data["danger_param"] = ptr->alert_danger_press[cid].danger_param; +// setpoint_data["danger_upper"] = qRound(ptr->alert_danger_press[cid].danger_upper * 10)/10.0; +// setpoint_data["danger_enable"] = ptr->alert_danger_press[cid].danger_enable; +// } +// channel_item["setpoint"] = setpoint_data; // variables QJsonObject variables; std::shared_ptr base_channel_ptr = ptr->GetChannelPtr(cid + 1); @@ -154,6 +157,11 @@ void ConfigMgr::Save(QString & file_path) { alarm["danger_low_delay"] = radial_ptr->danger_low.delay; alarm["danger_low_enable"] = radial_ptr->danger_low.enable; alarm["danger_low_latch"] = radial_ptr->danger_low.latch; + alarm["alert_low_level"] = radial_ptr->alert_low.level; + alarm["alert_low_hysteresis"] = radial_ptr->alert_low.hysteresis; + alarm["alert_low_delay"] = radial_ptr->alert_low.delay; + alarm["alert_low_enable"] = radial_ptr->alert_low.enable; + alarm["alert_low_latch"] = radial_ptr->alert_low.latch; measurement["general"] = general; measurement["alarm"] = alarm; variables["measurement"] = measurement; @@ -178,6 +186,11 @@ void ConfigMgr::Save(QString & file_path) { gap_alarm["danger_low_delay"] = radial_ptr->gap_danger_low.delay; gap_alarm["danger_low_enable"] = radial_ptr->gap_danger_low.enable; gap_alarm["danger_low_latch"] = radial_ptr->gap_danger_low.latch; + gap_alarm["alert_low_level"] = radial_ptr->gap_alert_low.level; + gap_alarm["alert_low_hysteresis"] = radial_ptr->gap_alert_low.hysteresis; + gap_alarm["alert_low_delay"] = radial_ptr->gap_alert_low.delay; + gap_alarm["alert_low_enable"] = radial_ptr->gap_alert_low.enable; + gap_alarm["alert_low_latch"] = radial_ptr->gap_alert_low.latch; gap["general"] = gap_general; gap["alarm"] = gap_alarm; variables["gap"] = gap; @@ -227,6 +240,11 @@ void ConfigMgr::Save(QString & file_path) { gap_alarm["danger_low_delay"] = thrust_ptr->gap_danger_low.delay; gap_alarm["danger_low_enable"] = thrust_ptr->gap_danger_low.enable; gap_alarm["danger_low_latch"] = thrust_ptr->gap_danger_low.latch; + gap_alarm["alert_low_level"] = thrust_ptr->gap_alert_low.level; + gap_alarm["alert_low_hysteresis"] = thrust_ptr->gap_alert_low.hysteresis; + gap_alarm["alert_low_delay"] = thrust_ptr->gap_alert_low.delay; + gap_alarm["alert_low_enable"] = thrust_ptr->gap_alert_low.enable; + gap_alarm["alert_low_latch"] = thrust_ptr->gap_alert_low.latch; gap["general"] = gap_general; gap["alarm"] = gap_alarm; variables["gap"] = gap; @@ -272,10 +290,12 @@ void ConfigMgr::Save(QString & file_path) { QJsonArray freband_output_array; QJsonObject freband_output; for (int var = 0; var < 10; ++var) { - freband_output["enable"] = pressure_ptr->freband_output[var].enable; - freband_output["start"] = pressure_ptr->freband_output[var].start; - freband_output["end"] = pressure_ptr->freband_output[var].end; - freband_output_array.append(freband_output); + if(pressure_ptr->freband_output[var].enable){ + freband_output["enable"] = pressure_ptr->freband_output[var].enable; + freband_output["start"] = pressure_ptr->freband_output[var].start; + freband_output["end"] = pressure_ptr->freband_output[var].end; + freband_output_array.append(freband_output); + } } variables["freband_output"] = freband_output_array; @@ -323,19 +343,78 @@ void ConfigMgr::Save(QString & file_path) { alarm["danger_low_delay"] = av_ptr->danger_low.delay; alarm["danger_low_enable"] = av_ptr->danger_low.enable; alarm["danger_low_latch"] = av_ptr->danger_low.latch; + alarm["alert_low_level"] = av_ptr->alert_low.level; + alarm["alert_low_hysteresis"] = av_ptr->alert_low.hysteresis; + alarm["alert_low_delay"] = av_ptr->alert_low.delay; + alarm["alert_low_enable"] = av_ptr->alert_low.enable; + alarm["alert_low_latch"] = av_ptr->alert_low.latch; processed_output["general"] = general; processed_output["alarm"] = alarm; variables["processed_output"] = processed_output; QJsonArray freband_output_array; QJsonObject freband_output; for (int var = 0; var < 10; ++var) { - freband_output["enable"] = av_ptr->freband_output[var].enable; - freband_output["start"] = av_ptr->freband_output[var].start; - freband_output["end"] = av_ptr->freband_output[var].end; - freband_output_array.append(freband_output); + if(av_ptr->freband_output[var].enable){ + freband_output["enable"] = av_ptr->freband_output[var].enable; + freband_output["start"] = av_ptr->freband_output[var].start; + freband_output["end"] = av_ptr->freband_output[var].end; + freband_output_array.append(freband_output); + } } variables["freband_output"] = freband_output_array; + }else if(ptr->base_config_[cid].channel_type == kVibVelocity){ + std::shared_ptr vel_ptr = std::dynamic_pointer_cast(base_channel_ptr); + if(vel_ptr == nullptr){ + continue; + } + // filter + QJsonArray filter; + QJsonObject low_pass; + low_pass["low"] = vel_ptr->filter_[0].low; + low_pass["high"] = vel_ptr->filter_[0].high; + low_pass["checked"] = vel_ptr->filter_[0].checked; + filter.append(low_pass); + QJsonObject high_pass; + high_pass["low"] = vel_ptr->filter_[1].low; + high_pass["high"] = vel_ptr->filter_[1].high; + high_pass["checked"] = vel_ptr->filter_[1].checked; + filter.append(high_pass); + QJsonObject band_pass; + band_pass["low"] = vel_ptr->filter_[2].low; + band_pass["high"] = vel_ptr->filter_[2].high; + band_pass["checked"] = vel_ptr->filter_[2].checked; + filter.append(band_pass); + variables["filter"] = filter; + // processed output + QJsonObject processed_output,general,alarm; + general["output_used"] = vel_ptr->general.output_used; + general["engieneering_unit"] = vel_ptr->general.engineering_unit; + general["rectifier_function"] = vel_ptr->general.rectifier_function; + + alarm["danger_high_level"] = vel_ptr->danger_high.level; + alarm["danger_high_hysteresis"] = vel_ptr->danger_high.hysteresis; + alarm["danger_high_delay"] = vel_ptr->danger_high.delay; + alarm["danger_high_enable"] = vel_ptr->danger_high.enable; + alarm["danger_high_latch"] = vel_ptr->danger_high.latch; + alarm["alert_high_level"] = vel_ptr->alert_high.level; + alarm["alert_high_hysteresis"] = vel_ptr->alert_high.hysteresis; + alarm["alert_high_delay"] = vel_ptr->alert_high.delay; + alarm["alert_high_enable"] = vel_ptr->alert_high.enable; + alarm["alert_high_latch"] = vel_ptr->alert_high.latch; + alarm["danger_low_level"] = vel_ptr->danger_low.level; + alarm["danger_low_hysteresis"] = vel_ptr->danger_low.hysteresis; + alarm["danger_low_delay"] = vel_ptr->danger_low.delay; + alarm["danger_low_enable"] = vel_ptr->danger_low.enable; + alarm["danger_low_latch"] = vel_ptr->danger_low.latch; + alarm["alert_low_level"] = vel_ptr->alert_low.level; + alarm["alert_low_hysteresis"] = vel_ptr->alert_low.hysteresis; + alarm["alert_low_delay"] = vel_ptr->alert_low.delay; + alarm["alert_low_enable"] = vel_ptr->alert_low.enable; + alarm["alert_low_latch"] = vel_ptr->alert_low.latch; + processed_output["general"] = general; + processed_output["alarm"] = alarm; + variables["processed_output"] = processed_output; } channel_item["variable"] = variables; } else if (card_type_[i] == kCardSpeedSingle || card_type_[i] == kCardSpeedTMRPrimary) { @@ -478,49 +557,51 @@ void ConfigMgr::Load(QString filename) { // base info vib_data->base_config_[j].standby = channel["standby"].toBool(); vib_data->base_config_[j].active = channel["active"].toBool(); - vib_data->base_config_[j].rack_type = channel["rack_type"].toInt(); +// vib_data->base_config_[j].rack_type = channel["rack_type"].toInt(); // vib_data->base_config_[j].tmr_group = channel["tmr_group"].toString(); vib_data->base_config_[j].channel_type = channel["channel_type"].toInt(); vib_data->base_config_[j].transducer_id = channel["transducer_id"].toInt(); - vib_data->base_config_[j].scale_factor = channel["scale_factor"].toDouble(); - vib_data->base_config_[j].sampling_rate = channel["sampling_rate"].toInt(); +// vib_data->base_config_[j].scale_factor = channel["scale_factor"].toDouble(); +// vib_data->base_config_[j].sampling_rate = channel["sampling_rate"].toInt(); QJsonArray voltage_range_array = channel["normal_voltage_range"].toArray(); vib_data->base_config_[j].normal_voltage_low = voltage_range_array[0].toDouble(); vib_data->base_config_[j].normal_voltage_high = voltage_range_array[1].toDouble(); vib_data->base_config_[j].power = channel["power"].toBool(); vib_data->base_config_[j].point_name = channel["point_name"].toString(); vib_data->base_config_[j].chan_id = channel["chan_id"].toString(); + vib_data->base_config_[j].sensitivity_unit = channel["sensitivity_unit"].toInt(); + vib_data->base_config_[j].signal_sensitivity = channel["signal_sensitivity"].toDouble(); //setpoint - QJsonObject setpoint_data = channel["setpoint"].toObject(); - if(vib_data->base_config_[j].channel_type == kVibRadial || vib_data->base_config_[j].channel_type == kVibThrust || - vib_data->base_config_[j].channel_type == kVibAcc ||vib_data->base_config_[j].channel_type == kVibVelocity ){ - vib_data->alert_danger[j].direct_upper = setpoint_data["direct_upper"].toDouble(); - vib_data->alert_danger[j].direct_enable = setpoint_data["direct_enable"].toBool(); - vib_data->alert_danger[j].x1_ampl_upper = setpoint_data["1x_ampl_upper"].toDouble(); - vib_data->alert_danger[j].x1_ampl_lower = setpoint_data["1x_ampl_lower"].toDouble(); - vib_data->alert_danger[j].x1_ampl_enable = setpoint_data["1x_ampl_enable"].toBool(); - vib_data->alert_danger[j].x2_ampl_upper = setpoint_data["2x_ampl_upper"].toDouble(); - vib_data->alert_danger[j].x2_ampl_lower = setpoint_data["2x_ampl_lower"].toDouble(); - vib_data->alert_danger[j].x2_ampl_enable = setpoint_data["2x_ampl_enable"].toBool(); - vib_data->alert_danger[j].danger_param = setpoint_data["danger_param"].toInt(); - vib_data->alert_danger[j].danger_upper = setpoint_data["danger_upper"].toDouble(); - vib_data->alert_danger[j].danger_enable = setpoint_data["danger_enable"].toBool(); - vib_data->base_config_[j].keyphase = channel["keyphase"].toBool(); - vib_data->base_config_[j].keyphase_slot = channel["keyphase_slot"].toInt(); - vib_data->base_config_[j].keyphase_ch = channel["keyphase_ch"].toInt(); - } - if(vib_data->base_config_[j].channel_type == kVibPressurePulsation){ - vib_data->alert_danger_press[j].low_upper = setpoint_data["low_upper"].toDouble(); - vib_data->alert_danger_press[j].low_enable = setpoint_data["low_enable"].toBool(); - vib_data->alert_danger_press[j].mid1_upper = setpoint_data["mid1_upper"].toDouble(); - vib_data->alert_danger_press[j].mid1_enable = setpoint_data["mid1_enable"].toBool(); - vib_data->alert_danger_press[j].mid2_upper = setpoint_data["mid2_upper"].toDouble(); - vib_data->alert_danger_press[j].mid2_enable = setpoint_data["mid2_enable"].toBool(); - vib_data->alert_danger_press[j].danger_param = setpoint_data["danger_param"].toInt(); - vib_data->alert_danger_press[j].danger_upper = setpoint_data["danger_upper"].toDouble(); - vib_data->alert_danger_press[j].danger_enable = setpoint_data["danger_enable"].toBool(); - } +// QJsonObject setpoint_data = channel["setpoint"].toObject(); +// if(vib_data->base_config_[j].channel_type == kVibRadial || vib_data->base_config_[j].channel_type == kVibThrust || +// vib_data->base_config_[j].channel_type == kVibAcc ||vib_data->base_config_[j].channel_type == kVibVelocity ){ +// vib_data->alert_danger[j].direct_upper = setpoint_data["direct_upper"].toDouble(); +// vib_data->alert_danger[j].direct_enable = setpoint_data["direct_enable"].toBool(); +// vib_data->alert_danger[j].x1_ampl_upper = setpoint_data["1x_ampl_upper"].toDouble(); +// vib_data->alert_danger[j].x1_ampl_lower = setpoint_data["1x_ampl_lower"].toDouble(); +// vib_data->alert_danger[j].x1_ampl_enable = setpoint_data["1x_ampl_enable"].toBool(); +// vib_data->alert_danger[j].x2_ampl_upper = setpoint_data["2x_ampl_upper"].toDouble(); +// vib_data->alert_danger[j].x2_ampl_lower = setpoint_data["2x_ampl_lower"].toDouble(); +// vib_data->alert_danger[j].x2_ampl_enable = setpoint_data["2x_ampl_enable"].toBool(); +// vib_data->alert_danger[j].danger_param = setpoint_data["danger_param"].toInt(); +// vib_data->alert_danger[j].danger_upper = setpoint_data["danger_upper"].toDouble(); +// vib_data->alert_danger[j].danger_enable = setpoint_data["danger_enable"].toBool(); +// vib_data->base_config_[j].keyphase = channel["keyphase"].toBool(); +// vib_data->base_config_[j].keyphase_slot = channel["keyphase_slot"].toInt(); +// vib_data->base_config_[j].keyphase_ch = channel["keyphase_ch"].toInt(); +// } +// if(vib_data->base_config_[j].channel_type == kVibPressurePulsation){ +// vib_data->alert_danger_press[j].low_upper = setpoint_data["low_upper"].toDouble(); +// vib_data->alert_danger_press[j].low_enable = setpoint_data["low_enable"].toBool(); +// vib_data->alert_danger_press[j].mid1_upper = setpoint_data["mid1_upper"].toDouble(); +// vib_data->alert_danger_press[j].mid1_enable = setpoint_data["mid1_enable"].toBool(); +// vib_data->alert_danger_press[j].mid2_upper = setpoint_data["mid2_upper"].toDouble(); +// vib_data->alert_danger_press[j].mid2_enable = setpoint_data["mid2_enable"].toBool(); +// vib_data->alert_danger_press[j].danger_param = setpoint_data["danger_param"].toInt(); +// vib_data->alert_danger_press[j].danger_upper = setpoint_data["danger_upper"].toDouble(); +// vib_data->alert_danger_press[j].danger_enable = setpoint_data["danger_enable"].toBool(); +// } // variables QJsonObject tmp_variable = channel["variable"].toObject(); switch (vib_data->base_config_[j].channel_type) { @@ -535,53 +616,60 @@ void ConfigMgr::Load(QString filename) { variable->filter_[k].checked = filter_ele["checked"].toBool(); } variable->id_ = j + 1; - QJsonObject measurement, gap; + QJsonObject measurement, gap,m_general,m_alarm,g_general,g_alarm; measurement = tmp_variable["measurement"].toObject(); gap = tmp_variable["gap"].toObject(); - variable->general.output_used = measurement["output_used"].toBool(); - variable->general.engineering_unit = measurement["engieneering_unit"].toString(); - variable->general.rectifier_function = measurement["rectifier_function"].toString(); - variable->danger_high.level = measurement["danger_high_level"].toDouble(); - variable->danger_high.hysteresis = measurement["danger_high_hysteresis"].toDouble(); - variable->danger_high.delay = measurement["danger_high_delay"].toInt(); - variable->danger_high.enable = measurement["danger_high_enable"].toBool(); - variable->danger_high.latch = measurement["danger_high_latch"].toBool(); - variable->alert_high.level = measurement["alert_high_level"].toDouble(); - variable->alert_high.hysteresis = measurement["alert_high_hysteresis"].toDouble(); - variable->alert_high.delay = measurement["alert_high_delay"].toInt(); - variable->alert_high.enable = measurement["alert_high_enable"].toBool(); - variable->alert_high.latch = measurement["alert_high_latch"].toBool(); - variable->danger_low.level = measurement["danger_low_level"].toDouble(); - variable->danger_low.hysteresis = measurement["danger_low_hysteresis"].toDouble(); - variable->danger_low.delay = measurement["danger_low_delay"].toInt(); - variable->danger_low.enable = measurement["danger_low_enable"].toBool(); - variable->danger_low.latch = measurement["danger_low_latch"].toBool(); - variable->alert_low.level = measurement["alert_low_level"].toDouble(); - variable->alert_low.hysteresis = measurement["alert_low_hysteresis"].toDouble(); - variable->alert_low.delay = measurement["alert_low_delay"].toInt(); - variable->alert_low.enable = measurement["alert_low_enable"].toBool(); - variable->alert_low.latch = measurement["alert_low_latch"].toBool(); + m_general = measurement["general"].toObject(); + m_alarm = measurement["alarm"].toObject(); + g_general = gap["general"].toObject(); + g_alarm = gap["alarm"].toObject(); + variable->general.output_used = m_general["output_used"].toBool(); + variable->general.engineering_unit = m_general["engieneering_unit"].toString(); + variable->general.rectifier_function = m_general["rectifier_function"].toString(); + variable->danger_high.level = m_alarm["danger_high_level"].toDouble(); + variable->danger_high.hysteresis = m_alarm["danger_high_hysteresis"].toDouble(); + variable->danger_high.delay = m_alarm["danger_high_delay"].toInt(); + variable->danger_high.enable = m_alarm["danger_high_enable"].toBool(); + variable->danger_high.latch = m_alarm["danger_high_latch"].toBool(); + variable->alert_high.level = m_alarm["alert_high_level"].toDouble(); + variable->alert_high.hysteresis = m_alarm["alert_high_hysteresis"].toDouble(); + variable->alert_high.delay = m_alarm["alert_high_delay"].toInt(); + variable->alert_high.enable = m_alarm["alert_high_enable"].toBool(); + variable->alert_high.latch = m_alarm["alert_high_latch"].toBool(); + variable->danger_low.level = m_alarm["danger_low_level"].toDouble(); + variable->danger_low.hysteresis = m_alarm["danger_low_hysteresis"].toDouble(); + variable->danger_low.delay = m_alarm["danger_low_delay"].toInt(); + variable->danger_low.enable = m_alarm["danger_low_enable"].toBool(); + variable->danger_low.latch = m_alarm["danger_low_latch"].toBool(); + variable->alert_low.level = m_alarm["alert_low_level"].toDouble(); + variable->alert_low.hysteresis = m_alarm["alert_low_hysteresis"].toDouble(); + variable->alert_low.delay = m_alarm["alert_low_delay"].toInt(); + variable->alert_low.enable = m_alarm["alert_low_enable"].toBool(); + variable->alert_low.latch = m_alarm["alert_low_latch"].toBool(); - variable->gap_danger_high.level = gap["danger_high_level"].toDouble(); - variable->gap_danger_high.hysteresis = gap["danger_high_hysteresis"].toDouble(); - variable->gap_danger_high.delay = gap["danger_high_delay"].toInt(); - variable->gap_danger_high.enable = gap["danger_high_enable"].toBool(); - variable->gap_danger_high.latch = gap["danger_high_latch"].toBool(); - variable->gap_alert_high.level = gap["alert_high_level"].toDouble(); - variable->gap_alert_high.hysteresis = gap["alert_high_hysteresis"].toDouble(); - variable->gap_alert_high.delay = gap["alert_high_delay"].toInt(); - variable->gap_alert_high.enable = gap["alert_high_enable"].toBool(); - variable->gap_alert_high.latch = gap["alert_high_latch"].toBool(); - variable->gap_danger_low.level = gap["danger_low_level"].toDouble(); - variable->gap_danger_low.hysteresis = gap["danger_low_hysteresis"].toDouble(); - variable->gap_danger_low.delay = gap["danger_low_delay"].toInt(); - variable->gap_danger_low.enable = gap["danger_low_enable"].toBool(); - variable->gap_danger_low.latch = gap["danger_low_latch"].toBool(); - variable->gap_alert_low.level = gap["alert_low_level"].toDouble(); - variable->gap_alert_low.hysteresis = gap["alert_low_hysteresis"].toDouble(); - variable->gap_alert_low.delay = gap["alert_low_delay"].toInt(); - variable->gap_alert_low.enable = gap["alert_low_enable"].toBool(); - variable->gap_alert_low.latch = gap["alert_low_latch"].toBool(); + variable->gap_general.output_used = g_general["output_used"].toBool(); + variable->gap_general.engineering_unit = g_general["engieneering_unit"].toString(); + variable->gap_general.rectifier_function = g_general["rectifier_function"].toString(); + variable->gap_danger_high.level = g_alarm["danger_high_level"].toDouble(); + variable->gap_danger_high.hysteresis = g_alarm["danger_high_hysteresis"].toDouble(); + variable->gap_danger_high.delay = g_alarm["danger_high_delay"].toInt(); + variable->gap_danger_high.enable = g_alarm["danger_high_enable"].toBool(); + variable->gap_danger_high.latch = g_alarm["danger_high_latch"].toBool(); + variable->gap_alert_high.level = g_alarm["alert_high_level"].toDouble(); + variable->gap_alert_high.hysteresis = g_alarm["alert_high_hysteresis"].toDouble(); + variable->gap_alert_high.delay = g_alarm["alert_high_delay"].toInt(); + variable->gap_alert_high.enable = g_alarm["alert_high_enable"].toBool(); + variable->gap_alert_high.latch = g_alarm["alert_high_latch"].toBool(); + variable->gap_danger_low.level = g_alarm["danger_low_level"].toDouble(); + variable->gap_danger_low.hysteresis = g_alarm["danger_low_hysteresis"].toDouble(); + variable->gap_danger_low.delay = g_alarm["danger_low_delay"].toInt(); + variable->gap_danger_low.enable = g_alarm["danger_low_enable"].toBool(); + variable->gap_danger_low.latch = g_alarm["danger_low_latch"].toBool(); + variable->gap_alert_low.level = g_alarm["alert_low_level"].toDouble(); + variable->gap_alert_low.hysteresis = g_alarm["alert_low_hysteresis"].toDouble(); + variable->gap_alert_low.delay = g_alarm["alert_low_delay"].toInt(); + variable->gap_alert_low.enable = g_alarm["alert_low_enable"].toBool(); + variable->gap_alert_low.latch = g_alarm["alert_low_latch"].toBool(); vib_data->variables_.push_back(variable); break; @@ -597,28 +685,33 @@ void ConfigMgr::Load(QString filename) { variable->filter_[k].checked = filter_ele["checked"].toBool(); } variable->id_ = j + 1; - QJsonObject gap; + QJsonObject gap,g_general,g_alarm; gap = tmp_variable["gap"].toObject(); - variable->gap_danger_high.level = gap["danger_high_level"].toDouble(); - variable->gap_danger_high.hysteresis = gap["danger_high_hysteresis"].toDouble(); - variable->gap_danger_high.delay = gap["danger_high_delay"].toInt(); - variable->gap_danger_high.enable = gap["danger_high_enable"].toBool(); - variable->gap_danger_high.latch = gap["danger_high_latch"].toBool(); - variable->gap_alert_high.level = gap["alert_high_level"].toDouble(); - variable->gap_alert_high.hysteresis = gap["alert_high_hysteresis"].toDouble(); - variable->gap_alert_high.delay = gap["alert_high_delay"].toInt(); - variable->gap_alert_high.enable = gap["alert_high_enable"].toBool(); - variable->gap_alert_high.latch = gap["alert_high_latch"].toBool(); - variable->gap_danger_low.level = gap["danger_low_level"].toDouble(); - variable->gap_danger_low.hysteresis = gap["danger_low_hysteresis"].toDouble(); - variable->gap_danger_low.delay = gap["danger_low_delay"].toInt(); - variable->gap_danger_low.enable = gap["danger_low_enable"].toBool(); - variable->gap_danger_low.latch = gap["danger_low_latch"].toBool(); - variable->gap_alert_low.level = gap["alert_low_level"].toDouble(); - variable->gap_alert_low.hysteresis = gap["alert_low_hysteresis"].toDouble(); - variable->gap_alert_low.delay = gap["alert_low_delay"].toInt(); - variable->gap_alert_low.enable = gap["alert_low_enable"].toBool(); - variable->gap_alert_low.latch = gap["alert_low_latch"].toBool(); + g_general = gap["general"].toObject(); + g_alarm = gap["alarm"].toObject(); + variable->gap_general.output_used = g_general["output_used"].toBool(); + variable->gap_general.engineering_unit = g_general["engieneering_unit"].toString(); + variable->gap_general.rectifier_function = g_general["rectifier_function"].toString(); + variable->gap_danger_high.level = g_alarm["danger_high_level"].toDouble(); + variable->gap_danger_high.hysteresis = g_alarm["danger_high_hysteresis"].toDouble(); + variable->gap_danger_high.delay = g_alarm["danger_high_delay"].toInt(); + variable->gap_danger_high.enable = g_alarm["danger_high_enable"].toBool(); + variable->gap_danger_high.latch = g_alarm["danger_high_latch"].toBool(); + variable->gap_alert_high.level = g_alarm["alert_high_level"].toDouble(); + variable->gap_alert_high.hysteresis = g_alarm["alert_high_hysteresis"].toDouble(); + variable->gap_alert_high.delay = g_alarm["alert_high_delay"].toInt(); + variable->gap_alert_high.enable = g_alarm["alert_high_enable"].toBool(); + variable->gap_alert_high.latch = g_alarm["alert_high_latch"].toBool(); + variable->gap_danger_low.level = g_alarm["danger_low_level"].toDouble(); + variable->gap_danger_low.hysteresis = g_alarm["danger_low_hysteresis"].toDouble(); + variable->gap_danger_low.delay = g_alarm["danger_low_delay"].toInt(); + variable->gap_danger_low.enable = g_alarm["danger_low_enable"].toBool(); + variable->gap_danger_low.latch = g_alarm["danger_low_latch"].toBool(); + variable->gap_alert_low.level = g_alarm["alert_low_level"].toDouble(); + variable->gap_alert_low.hysteresis = g_alarm["alert_low_hysteresis"].toDouble(); + variable->gap_alert_low.delay = g_alarm["alert_low_delay"].toInt(); + variable->gap_alert_low.enable = g_alarm["alert_low_enable"].toBool(); + variable->gap_alert_low.latch = g_alarm["alert_low_latch"].toBool(); variable->zero_position.value = tmp_variable["zero_position"].toDouble(); variable->zero_position.negation = tmp_variable["negation"].toBool(); vib_data->variables_.push_back(variable); diff --git a/data_config.h b/data_config.h index 09a54dc..69132e7 100644 --- a/data_config.h +++ b/data_config.h @@ -135,6 +135,8 @@ typedef struct { bool keyphase; int keyphase_slot; int keyphase_ch; + int sensitivity_unit; + float signal_sensitivity; } SeismicMonitor; typedef enum { diff --git a/pressure_pulsation.ui b/pressure_pulsation.ui index bd0e8cb..0a008a4 100644 --- a/pressure_pulsation.ui +++ b/pressure_pulsation.ui @@ -11,7 +11,7 @@ - Form + 压力脉动 diff --git a/radial_vibration.cpp b/radial_vibration.cpp index c528a0a..927c452 100644 --- a/radial_vibration.cpp +++ b/radial_vibration.cpp @@ -76,30 +76,32 @@ void Radial::Init() { ui->comboBox_output_used->setCurrentIndex(0); else ui->comboBox_output_used->setCurrentIndex(1); + ui->comboBox_engineering_unit->setCurrentText(variable_ptr->general.engineering_unit); + ui->comboBox_rectifier_funtion->setCurrentText(variable_ptr->general.rectifier_function); // -alarm ui->lineEdit_danger_high_level->setText(QString::number(variable_ptr->danger_high.level)); - ui->lineEdit_danger_high_hysteresis->setText(QString::number(variable_ptr->danger_high.level)); - ui->lineEdit_danger_high_delay->setText(QString::number(variable_ptr->danger_high.level)); + ui->lineEdit_danger_high_hysteresis->setText(QString::number(variable_ptr->danger_high.hysteresis)); + ui->lineEdit_danger_high_delay->setText(QString::number(variable_ptr->danger_high.delay)); ui->checkBox_danger_high_enable->setChecked(variable_ptr->danger_high.enable); ui->checkBox_danger_high_latch->setChecked(variable_ptr->danger_high.latch); ui->lineEdit_alert_high_level->setText(QString::number(variable_ptr->alert_high.level)); - ui->lineEdit_alert_high_hysteresis->setText(QString::number(variable_ptr->alert_high.level)); - ui->lineEdit_alert_high_delay->setText(QString::number(variable_ptr->alert_high.level)); + ui->lineEdit_alert_high_hysteresis->setText(QString::number(variable_ptr->alert_high.hysteresis)); + ui->lineEdit_alert_high_delay->setText(QString::number(variable_ptr->alert_high.delay)); ui->checkBox_alert_high_enable->setChecked(variable_ptr->alert_high.enable); ui->checkBox_alert_high_latch->setChecked(variable_ptr->alert_high.latch); ui->lineEdit_danger_low_level->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->danger_low.level)); + ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->danger_low.hysteresis)); + ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->danger_low.delay)); ui->checkBox_danger_low_enable->setChecked(variable_ptr->danger_low.enable); ui->checkBox_danger_low_latch->setChecked(variable_ptr->danger_low.latch); - ui->lineEdit_danger_low_level->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->danger_low.level)); - ui->checkBox_danger_low_enable->setChecked(variable_ptr->danger_low.enable); - ui->checkBox_danger_low_latch->setChecked(variable_ptr->danger_low.latch); + ui->lineEdit_alert_low_level->setText(QString::number(variable_ptr->alert_low.level)); + ui->lineEdit_alert_low_hysteresis->setText(QString::number(variable_ptr->alert_low.hysteresis)); + ui->lineEdit_alert_low_delay->setText(QString::number(variable_ptr->alert_low.delay)); + ui->checkBox_alert_low_enable->setChecked(variable_ptr->alert_low.enable); + ui->checkBox_alert_low_latch->setChecked(variable_ptr->alert_low.latch); // Gap // -general @@ -107,30 +109,32 @@ void Radial::Init() { ui->comboBox_output_used_2->setCurrentIndex(0); else ui->comboBox_output_used_2->setCurrentIndex(1); + ui->comboBox_engineering_unit_2->setCurrentText(variable_ptr->general.engineering_unit); + ui->comboBox_rectifier_funtion_2->setCurrentText(variable_ptr->general.rectifier_function); // -alarm ui->lineEdit_danger_high_level_2->setText(QString::number(variable_ptr->gap_danger_high.level)); - ui->lineEdit_danger_high_hysteresis_2->setText(QString::number(variable_ptr->gap_danger_high.level)); - ui->lineEdit_danger_high_delay_2->setText(QString::number(variable_ptr->gap_danger_high.level)); + ui->lineEdit_danger_high_hysteresis_2->setText(QString::number(variable_ptr->gap_danger_high.hysteresis)); + ui->lineEdit_danger_high_delay_2->setText(QString::number(variable_ptr->gap_danger_high.delay)); ui->checkBox_danger_high_enable_2->setChecked(variable_ptr->gap_danger_high.enable); ui->checkBox_danger_high_latch_2->setChecked(variable_ptr->gap_danger_high.latch); ui->lineEdit_alert_high_level_2->setText(QString::number(variable_ptr->gap_alert_high.level)); - ui->lineEdit_alert_high_hysteresis_2->setText(QString::number(variable_ptr->gap_alert_high.level)); - ui->lineEdit_alert_high_delay_2->setText(QString::number(variable_ptr->gap_alert_high.level)); + ui->lineEdit_alert_high_hysteresis_2->setText(QString::number(variable_ptr->gap_alert_high.hysteresis)); + ui->lineEdit_alert_high_delay_2->setText(QString::number(variable_ptr->gap_alert_high.delay)); ui->checkBox_alert_high_enable_2->setChecked(variable_ptr->gap_alert_high.enable); ui->checkBox_alert_high_latch_2->setChecked(variable_ptr->gap_alert_high.latch); ui->lineEdit_danger_low_level_2->setText(QString::number(variable_ptr->gap_danger_low.level)); - ui->lineEdit_danger_low_hysteresis_2->setText(QString::number(variable_ptr->gap_danger_low.level)); - ui->lineEdit_danger_low_delay_2->setText(QString::number(variable_ptr->gap_danger_low.level)); + ui->lineEdit_danger_low_hysteresis_2->setText(QString::number(variable_ptr->gap_danger_low.hysteresis)); + ui->lineEdit_danger_low_delay_2->setText(QString::number(variable_ptr->gap_danger_low.delay)); ui->checkBox_danger_low_enable_2->setChecked(variable_ptr->gap_danger_low.enable); ui->checkBox_danger_low_latch_2->setChecked(variable_ptr->gap_danger_low.latch); - ui->lineEdit_danger_low_level_2->setText(QString::number(variable_ptr->gap_danger_low.level)); - ui->lineEdit_danger_low_hysteresis_2->setText(QString::number(variable_ptr->gap_danger_low.level)); - ui->lineEdit_danger_low_delay_2->setText(QString::number(variable_ptr->gap_danger_low.level)); - ui->checkBox_danger_low_enable_2->setChecked(variable_ptr->gap_danger_low.enable); - ui->checkBox_danger_low_latch_2->setChecked(variable_ptr->gap_danger_low.latch); + ui->lineEdit_alert_low_level_2->setText(QString::number(variable_ptr->gap_alert_low.level)); + ui->lineEdit_alert_low_hysteresis_2->setText(QString::number(variable_ptr->gap_alert_low.hysteresis)); + ui->lineEdit_alert_low_delay_2->setText(QString::number(variable_ptr->gap_alert_low.delay)); + ui->checkBox_alert_low_enable_2->setChecked(variable_ptr->gap_alert_low.enable); + ui->checkBox_alert_low_latch_2->setChecked(variable_ptr->gap_alert_low.latch); } void Radial::on_pushButton_confirm_clicked() { @@ -166,6 +170,8 @@ void Radial::on_pushButton_confirm_clicked() { variable->general.output_used = true; else variable->general.output_used = false; + variable->general.engineering_unit = ui->comboBox_engineering_unit->currentText(); + variable->general.rectifier_function = ui->comboBox_rectifier_funtion->currentText(); // -alarm variable->danger_high.level = ui->lineEdit_danger_high_level->text().toDouble(); variable->danger_high.hysteresis = ui->lineEdit_danger_high_hysteresis->text().toDouble(); @@ -182,12 +188,19 @@ void Radial::on_pushButton_confirm_clicked() { variable->danger_low.delay = ui->lineEdit_danger_low_delay->text().toDouble(); variable->danger_low.enable = ui->checkBox_danger_low_enable->isChecked(); variable->danger_low.latch = ui->checkBox_danger_low_latch->isChecked(); + variable->alert_low.level = ui->lineEdit_alert_low_level->text().toDouble(); + variable->alert_low.hysteresis = ui->lineEdit_alert_low_hysteresis->text().toDouble(); + variable->alert_low.delay = ui->lineEdit_alert_low_delay->text().toDouble(); + variable->alert_low.enable = ui->checkBox_alert_low_enable->isChecked(); + variable->alert_low.latch = ui->checkBox_alert_low_latch->isChecked(); // Gap // -general if(ui->comboBox_output_used_2->currentIndex() == 0) variable->gap_general.output_used = true; else variable->gap_general.output_used = false; + variable->gap_general.engineering_unit = ui->comboBox_engineering_unit_2->currentText(); + variable->gap_general.rectifier_function = ui->comboBox_rectifier_funtion_2->currentText(); // -alarm variable->gap_danger_high.level = ui->lineEdit_danger_high_level_2->text().toDouble(); variable->gap_danger_high.hysteresis = ui->lineEdit_danger_high_hysteresis_2->text().toDouble(); @@ -204,6 +217,11 @@ void Radial::on_pushButton_confirm_clicked() { variable->gap_danger_low.delay = ui->lineEdit_danger_low_delay_2->text().toDouble(); variable->gap_danger_low.enable = ui->checkBox_danger_low_enable_2->isChecked(); variable->gap_danger_low.latch = ui->checkBox_danger_low_latch_2->isChecked(); + variable->gap_alert_low.level = ui->lineEdit_alert_low_level_2->text().toDouble(); + variable->gap_alert_low.hysteresis = ui->lineEdit_alert_low_hysteresis_2->text().toDouble(); + variable->gap_alert_low.delay = ui->lineEdit_alert_low_delay_2->text().toDouble(); + variable->gap_alert_low.enable = ui->checkBox_alert_low_enable_2->isChecked(); + variable->gap_alert_low.latch = ui->checkBox_alert_low_latch_2->isChecked(); // add to ptr ptr->variables_.push_back(variable); this->close(); @@ -241,6 +259,11 @@ void Radial::on_pushButton_confirm_clicked() { variable->danger_low.delay = ui->lineEdit_danger_low_delay->text().toDouble(); variable->danger_low.enable = ui->checkBox_danger_low_enable->isChecked(); variable->danger_low.latch = ui->checkBox_danger_low_latch->isChecked(); + variable->alert_low.level = ui->lineEdit_alert_low_level->text().toDouble(); + variable->alert_low.hysteresis = ui->lineEdit_alert_low_hysteresis->text().toDouble(); + variable->alert_low.delay = ui->lineEdit_alert_low_delay->text().toDouble(); + variable->alert_low.enable = ui->checkBox_alert_low_enable->isChecked(); + variable->alert_low.latch = ui->checkBox_alert_low_latch->isChecked(); // Gap // -general if(ui->comboBox_output_used_2->currentIndex() == 0) @@ -263,6 +286,11 @@ void Radial::on_pushButton_confirm_clicked() { variable->gap_danger_low.delay = ui->lineEdit_danger_low_delay_2->text().toDouble(); variable->gap_danger_low.enable = ui->checkBox_danger_low_enable_2->isChecked(); variable->gap_danger_low.latch = ui->checkBox_danger_low_latch_2->isChecked(); + variable->gap_alert_low.level = ui->lineEdit_alert_low_level_2->text().toDouble(); + variable->gap_alert_low.hysteresis = ui->lineEdit_alert_low_hysteresis_2->text().toDouble(); + variable->gap_alert_low.delay = ui->lineEdit_alert_low_delay_2->text().toDouble(); + variable->gap_alert_low.enable = ui->checkBox_alert_low_enable_2->isChecked(); + variable->gap_alert_low.latch = ui->checkBox_alert_low_latch_2->isChecked(); this->close(); } diff --git a/radial_vibration.ui b/radial_vibration.ui index 6cb64dc..c305bbb 100644 --- a/radial_vibration.ui +++ b/radial_vibration.ui @@ -636,7 +636,7 @@ - + 80 @@ -656,7 +656,7 @@ - + 80 @@ -1133,7 +1133,7 @@ - + 80 @@ -1153,7 +1153,7 @@ - + 80 diff --git a/seismic_monitor.cpp b/seismic_monitor.cpp index 48f81aa..bcfc301 100644 --- a/seismic_monitor.cpp +++ b/seismic_monitor.cpp @@ -62,6 +62,8 @@ void Seismic_monitor::Init() { qDebug() << vib_data->base_config_[i].channel_type ; ui->comboBox_chan_type_1->setCurrentIndex(vib_data->base_config_[i].channel_type); ui->checkBox_standby_1->setChecked(vib_data->base_config_[i].standby); + ui->comboBox_sensitivity_unit_1->setCurrentIndex(vib_data->base_config_[i].sensitivity_unit); + ui->lineEdit_signal_sensitivity_1->setText(QString::number(vib_data->base_config_[i].signal_sensitivity)); ui->checkBox_enable_1->setChecked(vib_data->base_config_[i].active); ui->doubleSpinBox_low_1->setValue(vib_data->base_config_[i].normal_voltage_low); @@ -69,6 +71,8 @@ void Seismic_monitor::Init() { } else if (i + 1 == 2) { ui->comboBox_chan_type_2->setCurrentIndex(vib_data->base_config_[i].channel_type); + ui->comboBox_sensitivity_unit_2->setCurrentIndex(vib_data->base_config_[i].sensitivity_unit); + ui->lineEdit_signal_sensitivity_2->setText(QString::number(vib_data->base_config_[i].signal_sensitivity)); ui->checkBox_enable_2->setChecked(vib_data->base_config_[i].active); ui->doubleSpinBox_low_2->setValue(vib_data->base_config_[i].normal_voltage_low); @@ -77,6 +81,8 @@ void Seismic_monitor::Init() { } else if (i + 1 == 3) { ui->checkBox_standby_2->setChecked(vib_data->base_config_[i].standby); ui->comboBox_chan_type_3->setCurrentIndex(vib_data->base_config_[i].channel_type); + ui->comboBox_sensitivity_unit_3->setCurrentIndex(vib_data->base_config_[i].sensitivity_unit); + ui->lineEdit_signal_sensitivity_3->setText(QString::number(vib_data->base_config_[i].signal_sensitivity)); ui->checkBox_enable_3->setChecked(vib_data->base_config_[i].active); ui->doubleSpinBox_low_3->setValue(vib_data->base_config_[i].normal_voltage_low); @@ -84,6 +90,8 @@ void Seismic_monitor::Init() { } else if (i + 1 == 4) { ui->comboBox_chan_type_4->setCurrentIndex(vib_data->base_config_[i].channel_type); + ui->comboBox_sensitivity_unit_4->setCurrentIndex(vib_data->base_config_[i].sensitivity_unit); + ui->lineEdit_signal_sensitivity_4->setText(QString::number(vib_data->base_config_[i].signal_sensitivity)); ui->checkBox_enable_4->setChecked(vib_data->base_config_[i].active); ui->doubleSpinBox_low_4->setValue(vib_data->base_config_[i].normal_voltage_low); @@ -100,6 +108,8 @@ void Seismic_monitor::UpdateData(std::shared_ptr vib_data) { vib_data->base_config_[var].active = ui->checkBox_enable_1->isChecked(); vib_data->base_config_[var].rack_type = 0; vib_data->base_config_[var].channel_type = ui->comboBox_chan_type_1->currentIndex(); + vib_data->base_config_[var].sensitivity_unit = ui->comboBox_sensitivity_unit_1->currentIndex(); + vib_data->base_config_[var].signal_sensitivity = ui->lineEdit_signal_sensitivity_1->text().toFloat(); vib_data->base_config_[var].normal_voltage_low = ui->doubleSpinBox_low_1->value(); vib_data->base_config_[var].normal_voltage_high = ui->doubleSpinBox_high_1->value(); @@ -112,6 +122,8 @@ void Seismic_monitor::UpdateData(std::shared_ptr vib_data) { vib_data->base_config_[var].active = ui->checkBox_enable_2->isChecked(); vib_data->base_config_[var].rack_type = 0; vib_data->base_config_[var].channel_type = ui->comboBox_chan_type_2->currentIndex(); + vib_data->base_config_[var].sensitivity_unit = ui->comboBox_sensitivity_unit_2->currentIndex(); + vib_data->base_config_[var].signal_sensitivity = ui->lineEdit_signal_sensitivity_2->text().toFloat(); vib_data->base_config_[var].normal_voltage_low = ui->doubleSpinBox_low_2->value(); vib_data->base_config_[var].normal_voltage_high = ui->doubleSpinBox_high_2->value(); @@ -125,6 +137,8 @@ void Seismic_monitor::UpdateData(std::shared_ptr vib_data) { vib_data->base_config_[var].active = ui->checkBox_enable_3->isChecked(); vib_data->base_config_[var].rack_type = 0; vib_data->base_config_[var].channel_type = ui->comboBox_chan_type_3->currentIndex(); + vib_data->base_config_[var].sensitivity_unit = ui->comboBox_sensitivity_unit_3->currentIndex(); + vib_data->base_config_[var].signal_sensitivity = ui->lineEdit_signal_sensitivity_3->text().toFloat(); vib_data->base_config_[var].normal_voltage_low = ui->doubleSpinBox_low_3->value(); vib_data->base_config_[var].normal_voltage_high = ui->doubleSpinBox_high_3->value(); @@ -138,6 +152,8 @@ void Seismic_monitor::UpdateData(std::shared_ptr vib_data) { vib_data->base_config_[var].active = ui->checkBox_enable_4->isChecked(); vib_data->base_config_[var].rack_type = 0; vib_data->base_config_[var].channel_type = ui->comboBox_chan_type_4->currentIndex(); + vib_data->base_config_[var].sensitivity_unit = ui->comboBox_sensitivity_unit_4->currentIndex(); + vib_data->base_config_[var].signal_sensitivity = ui->lineEdit_signal_sensitivity_4->text().toFloat(); vib_data->base_config_[var].normal_voltage_low = ui->doubleSpinBox_low_4->value(); vib_data->base_config_[var].normal_voltage_high = ui->doubleSpinBox_high_4->value(); vib_data->base_config_[var].chan_id = QString("S%1C%2").arg(QString::number(slot_no, 10).rightJustified(2, '0')).arg(QString::number(var+1, 10).rightJustified(2, '0')); diff --git a/seismic_monitor.ui b/seismic_monitor.ui index e299192..b5aa93b 100644 --- a/seismic_monitor.ui +++ b/seismic_monitor.ui @@ -364,6 +364,11 @@ 16777215 + + + 轴振 + + 加速度 @@ -374,21 +379,16 @@ 速度 - - - 压力脉动 - - - - - 轴振 - - 轴位移 + + + 压力脉动 + + DC @@ -799,6 +799,11 @@ 16777215 + + + 轴振 + + 加速度 @@ -809,21 +814,16 @@ 速度 - - - 压力脉动 - - - - - 轴振 - - 轴位移 + + + 压力脉动 + + DC @@ -1469,7 +1469,7 @@ - 1 + 0 @@ -1492,6 +1492,11 @@ 16777215 + + + 轴振 + + 加速度 @@ -1502,21 +1507,16 @@ 速度 - - - 压力脉动 - - - - - 轴振 - - 轴位移 + + + 压力脉动 + + DC @@ -1927,6 +1927,11 @@ 16777215 + + + 轴振 + + 加速度 @@ -1937,21 +1942,16 @@ 速度 - - - 压力脉动 - - - - - 轴振 - - 轴位移 + + + 压力脉动 + + DC diff --git a/trust.cpp b/trust.cpp index 67dc28f..0d5a54b 100644 --- a/trust.cpp +++ b/trust.cpp @@ -63,36 +63,39 @@ void Trust::Init() { ui->doubleSpinBox_zero_position->setValue(variable_ptr->zero_position.value); ui->checkBox_negation->setChecked(variable_ptr->zero_position.negation); - // processed output + // gap // -general - if(variable_ptr->general.output_used) + if(variable_ptr->gap_general.output_used) ui->comboBox_output_used->setCurrentIndex(0); else ui->comboBox_output_used->setCurrentIndex(1); + ui->comboBox_engineering_unit->setCurrentText(variable_ptr->gap_general.engineering_unit); + ui->comboBox_rectifier_funtion->setCurrentText(variable_ptr->gap_general.rectifier_function); // -alarm - ui->lineEdit_danger_high_level->setText(QString::number(variable_ptr->danger_high.level)); - ui->lineEdit_danger_high_hysteresis->setText(QString::number(variable_ptr->danger_high.level)); - ui->lineEdit_danger_high_delay->setText(QString::number(variable_ptr->danger_high.level)); - ui->checkBox_danger_high_enable->setChecked(variable_ptr->danger_high.enable); - ui->checkBox_danger_high_latch->setChecked(variable_ptr->danger_high.latch); + ui->lineEdit_danger_high_level->setText(QString::number(variable_ptr->gap_danger_high.level)); + ui->lineEdit_danger_high_hysteresis->setText(QString::number(variable_ptr->gap_danger_high.hysteresis)); + ui->lineEdit_danger_high_delay->setText(QString::number(variable_ptr->gap_danger_high.delay)); + ui->checkBox_danger_high_enable->setChecked(variable_ptr->gap_danger_high.enable); + ui->checkBox_danger_high_latch->setChecked(variable_ptr->gap_danger_high.latch); - ui->lineEdit_alert_high_level->setText(QString::number(variable_ptr->alert_high.level)); - ui->lineEdit_alert_high_hysteresis->setText(QString::number(variable_ptr->alert_high.level)); - ui->lineEdit_alert_high_delay->setText(QString::number(variable_ptr->alert_high.level)); - ui->checkBox_alert_high_enable->setChecked(variable_ptr->alert_high.enable); - ui->checkBox_alert_high_latch->setChecked(variable_ptr->alert_high.latch); + ui->lineEdit_alert_high_level->setText(QString::number(variable_ptr->gap_alert_high.level)); + ui->lineEdit_alert_high_hysteresis->setText(QString::number(variable_ptr->gap_alert_high.hysteresis)); + ui->lineEdit_alert_high_delay->setText(QString::number(variable_ptr->gap_alert_high.delay)); + ui->checkBox_alert_high_enable->setChecked(variable_ptr->gap_alert_high.enable); + ui->checkBox_alert_high_latch->setChecked(variable_ptr->gap_alert_high.latch); - ui->lineEdit_danger_low_level->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->danger_low.level)); - ui->checkBox_danger_low_enable->setChecked(variable_ptr->danger_low.enable); - ui->checkBox_danger_low_latch->setChecked(variable_ptr->danger_low.latch); + ui->lineEdit_danger_low_level->setText(QString::number(variable_ptr->gap_danger_low.level)); + ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->gap_danger_low.hysteresis)); + ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->gap_danger_low.delay)); + ui->checkBox_danger_low_enable->setChecked(variable_ptr->gap_danger_low.enable); + ui->checkBox_danger_low_latch->setChecked(variable_ptr->gap_danger_low.latch); + + ui->lineEdit_alert_low_level->setText(QString::number(variable_ptr->gap_alert_low.level)); + ui->lineEdit_alert_low_hysteresis->setText(QString::number(variable_ptr->gap_alert_low.hysteresis)); + ui->lineEdit_alert_low_delay->setText(QString::number(variable_ptr->gap_alert_low.delay)); + ui->checkBox_alert_low_enable->setChecked(variable_ptr->gap_alert_low.enable); + ui->checkBox_alert_low_latch->setChecked(variable_ptr->gap_alert_low.latch); - ui->lineEdit_danger_low_level->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->danger_low.level)); - ui->checkBox_danger_low_enable->setChecked(variable_ptr->danger_low.enable); - ui->checkBox_danger_low_latch->setChecked(variable_ptr->danger_low.latch); } void Trust::on_pushButton_confirm_clicked() { @@ -126,28 +129,35 @@ void Trust::on_pushButton_confirm_clicked() variable->zero_position.value = ui->doubleSpinBox_zero_position->value(); variable->zero_position.negation = ui->checkBox_negation->isChecked(); - // processed output + // gap // -general if(ui->comboBox_output_used->currentIndex() == 0) - variable->general.output_used = true; + variable->gap_general.output_used = true; else - variable->general.output_used = false; + variable->gap_general.output_used = false; + variable->gap_general.engineering_unit = ui->comboBox_engineering_unit->currentText(); + variable->gap_general.rectifier_function = ui->comboBox_rectifier_funtion->currentText(); // -alarm - variable->danger_high.level = ui->lineEdit_danger_high_level->text().toDouble(); - variable->danger_high.hysteresis = ui->lineEdit_danger_high_hysteresis->text().toDouble(); - variable->danger_high.delay = ui->lineEdit_danger_high_delay->text().toDouble(); - variable->danger_high.enable = ui->checkBox_danger_high_enable->isChecked(); - variable->danger_high.latch = ui->checkBox_danger_high_latch->isChecked(); - variable->alert_high.level = ui->lineEdit_alert_high_level->text().toDouble(); - variable->alert_high.hysteresis = ui->lineEdit_alert_high_hysteresis->text().toDouble(); - variable->alert_high.delay = ui->lineEdit_alert_high_delay->text().toDouble(); - variable->alert_high.enable = ui->checkBox_alert_high_enable->isChecked(); - variable->alert_high.latch = ui->checkBox_alert_high_latch->isChecked(); - variable->danger_low.level = ui->lineEdit_danger_low_level->text().toDouble(); - variable->danger_low.hysteresis = ui->lineEdit_danger_low_hysteresis->text().toDouble(); - variable->danger_low.delay = ui->lineEdit_danger_low_delay->text().toDouble(); - variable->danger_low.enable = ui->checkBox_danger_low_enable->isChecked(); - variable->danger_low.latch = ui->checkBox_danger_low_latch->isChecked(); + variable->gap_danger_high.level = ui->lineEdit_danger_high_level->text().toDouble(); + variable->gap_danger_high.hysteresis = ui->lineEdit_danger_high_hysteresis->text().toDouble(); + variable->gap_danger_high.delay = ui->lineEdit_danger_high_delay->text().toDouble(); + variable->gap_danger_high.enable = ui->checkBox_danger_high_enable->isChecked(); + variable->gap_danger_high.latch = ui->checkBox_danger_high_latch->isChecked(); + variable->gap_alert_high.level = ui->lineEdit_alert_high_level->text().toDouble(); + variable->gap_alert_high.hysteresis = ui->lineEdit_alert_high_hysteresis->text().toDouble(); + variable->gap_alert_high.delay = ui->lineEdit_alert_high_delay->text().toDouble(); + variable->gap_alert_high.enable = ui->checkBox_alert_high_enable->isChecked(); + variable->gap_alert_high.latch = ui->checkBox_alert_high_latch->isChecked(); + variable->gap_danger_low.level = ui->lineEdit_danger_low_level->text().toDouble(); + variable->gap_danger_low.hysteresis = ui->lineEdit_danger_low_hysteresis->text().toDouble(); + variable->gap_danger_low.delay = ui->lineEdit_danger_low_delay->text().toDouble(); + variable->gap_danger_low.enable = ui->checkBox_danger_low_enable->isChecked(); + variable->gap_danger_low.latch = ui->checkBox_danger_low_latch->isChecked(); + variable->gap_alert_low.level = ui->lineEdit_alert_low_level->text().toDouble(); + variable->gap_alert_low.hysteresis = ui->lineEdit_alert_low_hysteresis->text().toDouble(); + variable->gap_alert_low.delay = ui->lineEdit_alert_low_delay->text().toDouble(); + variable->gap_alert_low.enable = ui->checkBox_alert_low_enable->isChecked(); + variable->gap_alert_low.latch = ui->checkBox_alert_low_latch->isChecked(); ptr->variables_.push_back(variable); this->close(); return; @@ -166,28 +176,35 @@ void Trust::on_pushButton_confirm_clicked() variable->zero_position.value = ui->doubleSpinBox_zero_position->value(); variable->zero_position.negation = ui->checkBox_negation->isChecked(); - // processed output + // gap // -general if(ui->comboBox_output_used->currentIndex() == 0) - variable->general.output_used = true; + variable->gap_general.output_used = true; else - variable->general.output_used = false; + variable->gap_general.output_used = false; + variable->gap_general.engineering_unit = ui->comboBox_engineering_unit->currentText(); + variable->gap_general.rectifier_function = ui->comboBox_rectifier_funtion->currentText(); // -alarm - variable->danger_high.level = ui->lineEdit_danger_high_level->text().toDouble(); - variable->danger_high.hysteresis = ui->lineEdit_danger_high_hysteresis->text().toDouble(); - variable->danger_high.delay = ui->lineEdit_danger_high_delay->text().toDouble(); - variable->danger_high.enable = ui->checkBox_danger_high_enable->isChecked(); - variable->danger_high.latch = ui->checkBox_danger_high_latch->isChecked(); - variable->alert_high.level = ui->lineEdit_alert_high_level->text().toDouble(); - variable->alert_high.hysteresis = ui->lineEdit_alert_high_hysteresis->text().toDouble(); - variable->alert_high.delay = ui->lineEdit_alert_high_delay->text().toDouble(); - variable->alert_high.enable = ui->checkBox_alert_high_enable->isChecked(); - variable->alert_high.latch = ui->checkBox_alert_high_latch->isChecked(); - variable->danger_low.level = ui->lineEdit_danger_low_level->text().toDouble(); - variable->danger_low.hysteresis = ui->lineEdit_danger_low_hysteresis->text().toDouble(); - variable->danger_low.delay = ui->lineEdit_danger_low_delay->text().toDouble(); - variable->danger_low.enable = ui->checkBox_danger_low_enable->isChecked(); - variable->danger_low.latch = ui->checkBox_danger_low_latch->isChecked(); + variable->gap_danger_high.level = ui->lineEdit_danger_high_level->text().toDouble(); + variable->gap_danger_high.hysteresis = ui->lineEdit_danger_high_hysteresis->text().toDouble(); + variable->gap_danger_high.delay = ui->lineEdit_danger_high_delay->text().toDouble(); + variable->gap_danger_high.enable = ui->checkBox_danger_high_enable->isChecked(); + variable->gap_danger_high.latch = ui->checkBox_danger_high_latch->isChecked(); + variable->gap_alert_high.level = ui->lineEdit_alert_high_level->text().toDouble(); + variable->gap_alert_high.hysteresis = ui->lineEdit_alert_high_hysteresis->text().toDouble(); + variable->gap_alert_high.delay = ui->lineEdit_alert_high_delay->text().toDouble(); + variable->gap_alert_high.enable = ui->checkBox_alert_high_enable->isChecked(); + variable->gap_alert_high.latch = ui->checkBox_alert_high_latch->isChecked(); + variable->gap_danger_low.level = ui->lineEdit_danger_low_level->text().toDouble(); + variable->gap_danger_low.hysteresis = ui->lineEdit_danger_low_hysteresis->text().toDouble(); + variable->gap_danger_low.delay = ui->lineEdit_danger_low_delay->text().toDouble(); + variable->gap_danger_low.enable = ui->checkBox_danger_low_enable->isChecked(); + variable->gap_danger_low.latch = ui->checkBox_danger_low_latch->isChecked(); + variable->gap_alert_low.level = ui->lineEdit_alert_low_level->text().toDouble(); + variable->gap_alert_low.hysteresis = ui->lineEdit_alert_low_hysteresis->text().toDouble(); + variable->gap_alert_low.delay = ui->lineEdit_alert_low_delay->text().toDouble(); + variable->gap_alert_low.enable = ui->checkBox_alert_low_enable->isChecked(); + variable->gap_alert_low.latch = ui->checkBox_alert_low_latch->isChecked(); this->close(); } diff --git a/trust.ui b/trust.ui index b95bd22..4f70b64 100644 --- a/trust.ui +++ b/trust.ui @@ -11,7 +11,7 @@ - Form + 轴向位移 @@ -287,7 +287,7 @@ - 0 + 1 @@ -681,7 +681,7 @@ - + 80 @@ -701,7 +701,7 @@ - + 80 diff --git a/velocity.cpp b/velocity.cpp index 9ee0a41..6a7b904 100644 --- a/velocity.cpp +++ b/velocity.cpp @@ -69,30 +69,33 @@ void Velocity::Init() { ui->comboBox_output_used->setCurrentIndex(0); else ui->comboBox_output_used->setCurrentIndex(1); + ui->comboBox_engineering_unit->setCurrentText(variable_ptr->general.engineering_unit); + ui->comboBox_rectifier_funtion->setCurrentText(variable_ptr->general.rectifier_function); // -alarm ui->lineEdit_danger_high_level->setText(QString::number(variable_ptr->danger_high.level)); - ui->lineEdit_danger_high_hysteresis->setText(QString::number(variable_ptr->danger_high.level)); - ui->lineEdit_danger_high_delay->setText(QString::number(variable_ptr->danger_high.level)); + ui->lineEdit_danger_high_hysteresis->setText(QString::number(variable_ptr->danger_high.hysteresis)); + ui->lineEdit_danger_high_delay->setText(QString::number(variable_ptr->danger_high.delay)); ui->checkBox_danger_high_enable->setChecked(variable_ptr->danger_high.enable); ui->checkBox_danger_high_latch->setChecked(variable_ptr->danger_high.latch); ui->lineEdit_alert_high_level->setText(QString::number(variable_ptr->alert_high.level)); - ui->lineEdit_alert_high_hysteresis->setText(QString::number(variable_ptr->alert_high.level)); - ui->lineEdit_alert_high_delay->setText(QString::number(variable_ptr->alert_high.level)); + ui->lineEdit_alert_high_hysteresis->setText(QString::number(variable_ptr->alert_high.hysteresis)); + ui->lineEdit_alert_high_delay->setText(QString::number(variable_ptr->alert_high.delay)); ui->checkBox_alert_high_enable->setChecked(variable_ptr->alert_high.enable); ui->checkBox_alert_high_latch->setChecked(variable_ptr->alert_high.latch); ui->lineEdit_danger_low_level->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->danger_low.level)); + ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->danger_low.hysteresis)); + ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->danger_low.delay)); ui->checkBox_danger_low_enable->setChecked(variable_ptr->danger_low.enable); ui->checkBox_danger_low_latch->setChecked(variable_ptr->danger_low.latch); - ui->lineEdit_danger_low_level->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_hysteresis->setText(QString::number(variable_ptr->danger_low.level)); - ui->lineEdit_danger_low_delay->setText(QString::number(variable_ptr->danger_low.level)); - ui->checkBox_danger_low_enable->setChecked(variable_ptr->danger_low.enable); - ui->checkBox_danger_low_latch->setChecked(variable_ptr->danger_low.latch); + ui->lineEdit_alert_low_level->setText(QString::number(variable_ptr->alert_low.level)); + ui->lineEdit_alert_low_hysteresis->setText(QString::number(variable_ptr->alert_low.hysteresis)); + ui->lineEdit_alert_low_delay->setText(QString::number(variable_ptr->alert_low.delay)); + ui->checkBox_alert_low_enable->setChecked(variable_ptr->alert_low.enable); + ui->checkBox_alert_low_latch->setChecked(variable_ptr->alert_low.latch); + } @@ -129,6 +132,8 @@ void Velocity::on_pushButton_confirm_clicked() { variable->general.output_used = true; else variable->general.output_used = false; + variable->general.engineering_unit = ui->comboBox_engineering_unit->currentText(); + variable->general.rectifier_function = ui->comboBox_rectifier_funtion->currentText(); // -alarm variable->danger_high.level = ui->lineEdit_danger_high_level->text().toDouble(); variable->danger_high.hysteresis = ui->lineEdit_danger_high_hysteresis->text().toDouble(); @@ -145,6 +150,11 @@ void Velocity::on_pushButton_confirm_clicked() { variable->danger_low.delay = ui->lineEdit_danger_low_delay->text().toDouble(); variable->danger_low.enable = ui->checkBox_danger_low_enable->isChecked(); variable->danger_low.latch = ui->checkBox_danger_low_latch->isChecked(); + variable->alert_low.level = ui->lineEdit_alert_low_level->text().toDouble(); + variable->alert_low.hysteresis = ui->lineEdit_alert_low_hysteresis->text().toDouble(); + variable->alert_low.delay = ui->lineEdit_alert_low_delay->text().toDouble(); + variable->alert_low.enable = ui->checkBox_alert_low_enable->isChecked(); + variable->alert_low.latch = ui->checkBox_alert_low_latch->isChecked(); ptr->variables_.push_back(variable); this->close(); return; @@ -165,6 +175,8 @@ void Velocity::on_pushButton_confirm_clicked() { variable->general.output_used = true; else variable->general.output_used = false; + variable->general.engineering_unit = ui->comboBox_engineering_unit->currentText(); + variable->general.rectifier_function = ui->comboBox_rectifier_funtion->currentText(); // -alarm variable->danger_high.level = ui->lineEdit_danger_high_level->text().toDouble(); variable->danger_high.hysteresis = ui->lineEdit_danger_high_hysteresis->text().toDouble(); @@ -181,5 +193,10 @@ void Velocity::on_pushButton_confirm_clicked() { variable->danger_low.delay = ui->lineEdit_danger_low_delay->text().toDouble(); variable->danger_low.enable = ui->checkBox_danger_low_enable->isChecked(); variable->danger_low.latch = ui->checkBox_danger_low_latch->isChecked(); + variable->alert_low.level = ui->lineEdit_alert_low_level->text().toDouble(); + variable->alert_low.hysteresis = ui->lineEdit_alert_low_hysteresis->text().toDouble(); + variable->alert_low.delay = ui->lineEdit_alert_low_delay->text().toDouble(); + variable->alert_low.enable = ui->checkBox_alert_low_enable->isChecked(); + variable->alert_low.latch = ui->checkBox_alert_low_latch->isChecked(); this->close(); } diff --git a/velocity.ui b/velocity.ui index b24891c..6e24a2b 100644 --- a/velocity.ui +++ b/velocity.ui @@ -636,7 +636,7 @@ - + 80 @@ -656,7 +656,7 @@ - + 80