modify code

This commit is contained in:
zhangsheng 2025-08-05 20:49:25 +08:00
parent 648b8b0f70
commit 340f9316ee
18 changed files with 2237 additions and 1237 deletions

View File

@ -483,11 +483,36 @@
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>g</string>
</property>
</item>
<item>
<property name="text">
<string>m/s**2</string>
</property>
</item>
<item>
<property name="text">
<string>mm/s</string>
</property>
</item>
<item>
<property name="text">
<string>inch/s</string>
</property>
</item>
<item>
<property name="text">
<string>um</string>
</property>
</item>
<item>
<property name="text">
<string>mm</string>
</property>
</item>
</widget>
<widget class="QLabel" name="label_28">
<property name="geometry">
@ -720,6 +745,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_delay">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>220</x>
@ -730,6 +758,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_hysteresis">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>150</x>
@ -740,6 +771,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_level">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>80</x>
@ -750,6 +784,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_delay">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>220</x>
@ -760,6 +797,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_level">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>80</x>
@ -770,6 +810,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_hysteresis">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>150</x>
@ -806,6 +849,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_alert_low_enable">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>290</x>
@ -819,6 +865,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_danger_low_enable">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>290</x>
@ -845,6 +894,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_danger_low_latch">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>350</x>
@ -871,6 +923,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_alert_low_latch">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>350</x>

View File

@ -41,13 +41,13 @@ void ConfigMgr::Save(QString & file_path) {
card_type_[i] != kCardRelaySingleNOK) {
continue;
}
qDebug() << "i" << i ;
// process slot
QJsonObject slot_item;
if (card_type_[i] != kCardRelaySingle &&
card_type_[i] != kCardRelayTMRPrimary &&
card_type_[i] != kCardRelaySingleNOK &&
card_type_[i] != kCardRelayTMRBackup) {
QJsonObject dc_output;
for (int cid = 0; cid < CHANNEL_COUNT; ++cid) {
QJsonObject channel_item;
if (card_type_[i] == kCardVibSingle ||
@ -75,8 +75,14 @@ void ConfigMgr::Save(QString & file_path) {
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 dc_output;
QJsonArray dc_output_array;
// output channel
QJsonObject dc_output_item;
if(ptr->dc_output[cid].output_channel != -1){
dc_output_item["output_channel"] = ptr->dc_output[cid].output_channel;
dc_output_item["minmum"] = ptr->dc_output[cid].minmum;
dc_output_item["maxmum"] = ptr->dc_output[cid].maxmum;
dc_output[QString::number(cid + 1)] = dc_output_item;
}
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){
@ -85,16 +91,6 @@ void ConfigMgr::Save(QString & file_path) {
channel_item["keyphase_ch"] = ptr->base_config_[cid].keyphase_ch;
}
}
for(int var = 0 ; var < CHANNEL_COUNT; ++ var ){
if(ptr->dc_output[cid][var].output_channel > 0){
dc_output["output_channel"] = ptr->dc_output[cid][var].output_channel;
dc_output["minmum"] = ptr->dc_output[cid][var].minmum;
dc_output["maxmum"] = ptr->dc_output[cid][var].maxmum;
dc_output_array.append(dc_output);
}
}
channel_item["dc_output"] = dc_output_array;
// 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;
@ -152,16 +148,16 @@ void ConfigMgr::Save(QString & file_path) {
alarm["alert_high_delay"] = radial_ptr->alert_high.delay;
alarm["alert_high_enable"] = radial_ptr->alert_high.enable;
alarm["alert_high_latch"] = radial_ptr->alert_high.latch;
alarm["danger_low_level"] = radial_ptr->danger_low.level;
alarm["danger_low_hysteresis"] = radial_ptr->danger_low.hysteresis;
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;
// alarm["danger_low_level"] = radial_ptr->danger_low.level;
// alarm["danger_low_hysteresis"] = radial_ptr->danger_low.hysteresis;
// 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;
@ -181,16 +177,16 @@ void ConfigMgr::Save(QString & file_path) {
gap_alarm["alert_high_delay"] = radial_ptr->gap_alert_high.delay;
gap_alarm["alert_high_enable"] = radial_ptr->gap_alert_high.enable;
gap_alarm["alert_high_latch"] = radial_ptr->gap_alert_high.latch;
gap_alarm["danger_low_level"] = radial_ptr->gap_danger_low.level;
gap_alarm["danger_low_hysteresis"] = radial_ptr->gap_danger_low.hysteresis;
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_alarm["danger_low_level"] = radial_ptr->gap_danger_low.level;
// gap_alarm["danger_low_hysteresis"] = radial_ptr->gap_danger_low.hysteresis;
// 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;
@ -285,7 +281,9 @@ void ConfigMgr::Save(QString & file_path) {
scaling["scale_max"] = pressure_ptr->scale_max;
variables["sampling"] = sampling;
variables["scaling"] = scaling;
QJsonObject general;
general["engieneering_unit"] = pressure_ptr->general.engineering_unit;
variables["general"] = general;
QJsonObject freband_output,number;
for (int var = 0; var < 10; ++var) {
if(pressure_ptr->freband_output[var].start != 0 || pressure_ptr->freband_output[var].end != 0){
@ -293,7 +291,6 @@ void ConfigMgr::Save(QString & file_path) {
freband_output["start"] = pressure_ptr->freband_output[var].start;
freband_output["end"] = pressure_ptr->freband_output[var].end;
number[QString::number(var + 1)] = freband_output;
//freband_output_array.append(freband_output);
}
}
variables["freband_output"] = number;
@ -337,20 +334,19 @@ void ConfigMgr::Save(QString & file_path) {
alarm["alert_high_delay"] = av_ptr->alert_high.delay;
alarm["alert_high_enable"] = av_ptr->alert_high.enable;
alarm["alert_high_latch"] = av_ptr->alert_high.latch;
alarm["danger_low_level"] = av_ptr->danger_low.level;
alarm["danger_low_hysteresis"] = av_ptr->danger_low.hysteresis;
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;
// alarm["danger_low_level"] = av_ptr->danger_low.level;
// alarm["danger_low_hysteresis"] = av_ptr->danger_low.hysteresis;
// 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,number;
for (int var = 0; var < 10; ++var) {
if(av_ptr->freband_output[var].start != 0 || av_ptr->freband_output[var].end != 0){
@ -358,7 +354,6 @@ void ConfigMgr::Save(QString & file_path) {
freband_output["start"] = av_ptr->freband_output[var].start;
freband_output["end"] = av_ptr->freband_output[var].end;
number[QString::number(var + 1)] = freband_output;
//freband_output_array.append(freband_output);
}
}
variables["freband_output"] = number;
@ -402,16 +397,16 @@ void ConfigMgr::Save(QString & file_path) {
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;
// 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;
@ -465,6 +460,7 @@ void ConfigMgr::Save(QString & file_path) {
channel_item.insert("automatic_threshold",ptr->variables_[cid].automatic_threshold);
}
slot_item[QString::number(cid + 1)] = channel_item;
slot_item["dc_output"] = dc_output;
}
slot_item["version"] = 1;
}else{
@ -549,6 +545,20 @@ void ConfigMgr::Load(QString filename) {
vib_data->version_ = temp_obj["version"].toInt();
vib_data->card_type_ = static_cast<CardType>(card_type_[i]);
vib_data->slot_ = slot;
// dc_output
QJsonObject dc_output_obj = temp_obj["dc_output"].toObject();
if(!dc_output_obj.isEmpty()){
QJsonObject output_obj;
for (int var = 0; var < CHANNEL_COUNT; ++var) {
output_obj = dc_output_obj[QString::number(var + 1)].toObject();
if(output_obj.isEmpty())
continue;
vib_data->dc_output[var].output_channel = output_obj["output_channel"].toInt();
vib_data->dc_output[var].minmum = output_obj["minmum"].toDouble();
vib_data->dc_output[var].maxmum = output_obj["maxmum"].toDouble();
}
}
for (int j = 0; j < CHANNEL_COUNT; ++j) {
std::shared_ptr<VariableBase> base_channel_ptr = vib_data->GetChannelPtr(j + 1);
channel = temp_obj[QString::number(j + 1)].toObject();
@ -582,16 +592,7 @@ void ConfigMgr::Load(QString filename) {
vib_data->base_config_[j].keyphase_slot = channel["keyphase_slot"].toInt();
vib_data->base_config_[j].keyphase_ch = channel["keyphase_ch"].toInt();
}
// dc_output
QJsonArray dc_output_array = channel["dc_output"].toArray();
if(!dc_output_array.isEmpty()){
for(int var = 0 ; var < CHANNEL_COUNT; ++var){
QJsonObject dc_output_obj = dc_output_array[var].toObject();
vib_data->dc_output[j][var].output_channel = dc_output_obj["output_channel"].toInt();
vib_data->dc_output[j][var].minmum = dc_output_obj["minmum"].toInt();
vib_data->dc_output[j][var].maxmum = dc_output_obj["maxmum"].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();
@ -637,16 +638,16 @@ void ConfigMgr::Load(QString filename) {
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->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_general.output_used = g_general["output_used"].toBool();
variable->gap_general.engineering_unit = g_general["engieneering_unit"].toInt();
@ -661,16 +662,16 @@ void ConfigMgr::Load(QString filename) {
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->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;
@ -728,17 +729,33 @@ void ConfigMgr::Load(QString filename) {
variable->filter_[k].checked = filter_ele["checked"].toBool();
}
variable->id_ = j + 1;
QJsonObject sampling,scaling;
sampling = tmp_variable["sampling"].toObject();
scaling = tmp_variable["scaling"].toObject();
variable->fixed = sampling["fixed"].toBool();
variable->sample_rate = sampling["sample_rate"].toInt();
variable->bandwidth = sampling["band_width"].toInt();
variable->fft_points = sampling["fft_points"].toInt();
variable->measuring_min = scaling["measuring_min"].toInt();
variable->measuring_max = scaling["measuring_max"].toInt();
variable->scale_min = scaling["scale_min"].toInt();
variable->scale_max = scaling["scale_max"].toInt();
QJsonObject processed_output, general, alarm;
processed_output = tmp_variable["processed_output"].toObject();
general = processed_output["general"].toObject();
alarm = processed_output["alarm"].toObject();
variable->general.output_used = general["output_used"].toBool();
variable->general.engineering_unit = general["engieneering_unit"].toInt();
variable->general.rectifier_function = general["rectifier_function"].toInt();
variable->danger_high.level = alarm["danger_high_level"].toDouble();
variable->danger_high.hysteresis = alarm["danger_high_hysteresis"].toDouble();
variable->danger_high.delay = alarm["danger_high_delay"].toInt();
variable->danger_high.enable = alarm["danger_high_enable"].toBool();
variable->danger_high.latch = alarm["danger_high_latch"].toBool();
variable->alert_high.level = alarm["alert_high_level"].toDouble();
variable->alert_high.hysteresis = alarm["alert_high_hysteresis"].toDouble();
variable->alert_high.delay = alarm["alert_high_delay"].toInt();
variable->alert_high.enable = alarm["alert_high_enable"].toBool();
variable->alert_high.latch = alarm["alert_high_latch"].toBool();
// variable->danger_low.level = alarm["danger_low_level"].toDouble();
// variable->danger_low.hysteresis = alarm["danger_low_hysteresis"].toDouble();
// variable->danger_low.delay = alarm["danger_low_delay"].toInt();
// variable->danger_low.enable = alarm["danger_low_enable"].toBool();
// variable->danger_low.latch = alarm["danger_low_latch"].toBool();
// variable->alert_low.level = alarm["alert_low_level"].toDouble();
// variable->alert_low.hysteresis = alarm["alert_low_hysteresis"].toDouble();
// variable->alert_low.delay = alarm["alert_low_delay"].toInt();
// variable->alert_low.enable = alarm["alert_low_enable"].toBool();
// variable->alert_low.latch = alarm["alert_low_latch"].toBool();
QJsonObject freband_output_obj = tmp_variable["freband_output"].toObject();
QJsonObject number_obj;
for (int k = 0; k < 10; ++k) {
@ -782,16 +799,16 @@ void ConfigMgr::Load(QString filename) {
variable->alert_high.delay = alarm["alert_high_delay"].toInt();
variable->alert_high.enable = alarm["alert_high_enable"].toBool();
variable->alert_high.latch = alarm["alert_high_latch"].toBool();
variable->danger_low.level = alarm["danger_low_level"].toDouble();
variable->danger_low.hysteresis = alarm["danger_low_hysteresis"].toDouble();
variable->danger_low.delay = alarm["danger_low_delay"].toInt();
variable->danger_low.enable = alarm["danger_low_enable"].toBool();
variable->danger_low.latch = alarm["danger_low_latch"].toBool();
variable->alert_low.level = alarm["alert_low_level"].toDouble();
variable->alert_low.hysteresis = alarm["alert_low_hysteresis"].toDouble();
variable->alert_low.delay = alarm["alert_low_delay"].toInt();
variable->alert_low.enable = alarm["alert_low_enable"].toBool();
variable->alert_low.latch = alarm["alert_low_latch"].toBool();
// variable->danger_low.level = alarm["danger_low_level"].toDouble();
// variable->danger_low.hysteresis = alarm["danger_low_hysteresis"].toDouble();
// variable->danger_low.delay = alarm["danger_low_delay"].toInt();
// variable->danger_low.enable = alarm["danger_low_enable"].toBool();
// variable->danger_low.latch = alarm["danger_low_latch"].toBool();
// variable->alert_low.level = alarm["alert_low_level"].toDouble();
// variable->alert_low.hysteresis = alarm["alert_low_hysteresis"].toDouble();
// variable->alert_low.delay = alarm["alert_low_delay"].toInt();
// variable->alert_low.enable = alarm["alert_low_enable"].toBool();
// variable->alert_low.latch = alarm["alert_low_latch"].toBool();
vib_data->variables_.push_back(variable);
break;
}
@ -823,16 +840,16 @@ void ConfigMgr::Load(QString filename) {
variable->alert_high.delay = alarm["alert_high_delay"].toInt();
variable->alert_high.enable = alarm["alert_high_enable"].toBool();
variable->alert_high.latch = alarm["alert_high_latch"].toBool();
variable->danger_low.level = alarm["danger_low_level"].toDouble();
variable->danger_low.hysteresis = alarm["danger_low_hysteresis"].toDouble();
variable->danger_low.delay = alarm["danger_low_delay"].toInt();
variable->danger_low.enable = alarm["danger_low_enable"].toBool();
variable->danger_low.latch = alarm["danger_low_latch"].toBool();
variable->alert_low.level = alarm["alert_low_level"].toDouble();
variable->alert_low.hysteresis = alarm["alert_low_hysteresis"].toDouble();
variable->alert_low.delay = alarm["alert_low_delay"].toInt();
variable->alert_low.enable = alarm["alert_low_enable"].toBool();
variable->alert_low.latch = alarm["alert_low_latch"].toBool();
// variable->danger_low.level = alarm["danger_low_level"].toDouble();
// variable->danger_low.hysteresis = alarm["danger_low_hysteresis"].toDouble();
// variable->danger_low.delay = alarm["danger_low_delay"].toInt();
// variable->danger_low.enable = alarm["danger_low_enable"].toBool();
// variable->danger_low.latch = alarm["danger_low_latch"].toBool();
// variable->alert_low.level = alarm["alert_low_level"].toDouble();
// variable->alert_low.hysteresis = alarm["alert_low_hysteresis"].toDouble();
// variable->alert_low.delay = alarm["alert_low_delay"].toInt();
// variable->alert_low.enable = alarm["alert_low_enable"].toBool();
// variable->alert_low.latch = alarm["alert_low_latch"].toBool();
QJsonObject freband_output_obj = tmp_variable["freband_output"].toObject();
QJsonObject number_obj;
for (int k = 0; k < 10; ++k) {
@ -894,8 +911,10 @@ void ConfigMgr::Load(QString filename) {
channel = temp_obj[QString::number(j + 1)].toObject();
keyphase_data->variables_[j].active = channel["active"].toBool();
QJsonArray voltage_range_array = channel["normal_voltage_range"].toArray();
keyphase_data->variables_[j].normal_voltage_high = voltage_range_array[1].toDouble();
keyphase_data->variables_[j].normal_voltage_low = voltage_range_array[0].toDouble();
if(voltage_range_array.size() > 0){
keyphase_data->variables_[j].normal_voltage_high = voltage_range_array[1].toDouble();
keyphase_data->variables_[j].normal_voltage_low = voltage_range_array[0].toDouble();
}
keyphase_data->variables_[j].threshold = channel["threshold"].toDouble();
keyphase_data->variables_[j].hysteresis = channel["hysteresis"].toDouble();
keyphase_data->variables_[j].events_per_revolution = channel["events_per_revolution"].toInt();

View File

@ -10,11 +10,12 @@ typedef unsigned short uint16_t;
typedef struct {
bool used[4]; // 是否已配置
int channel;
}ChannelUsed;
extern QString g_strServerIp; // 服务端IP
extern QString g_version;
extern ChannelUsed ch_used;
extern ChannelUsed ch_used[22];
#define SLOT_NUM 15
#define CHANNEL_COUNT 4
#define RELAY_COUNT 16
@ -273,7 +274,7 @@ typedef struct DCOutput_{
float minmum;
float maxmum;
DCOutput_(){
output_channel = 0;
output_channel = -1;
minmum = 0;
maxmum = 0;
}

View File

@ -2,24 +2,39 @@
#include "ui_dc_output_channel.h"
#include <QMessageBox>
#include "data_config.h"
#include <QDebug>
DC_Output_Channel::DC_Output_Channel(QString unit_str_,QWidget *parent) :
DC_Output_Channel::DC_Output_Channel(QString unit_str_,int current_index_,QWidget *parent) :
QWidget(parent),
ui(new Ui::DC_Output_Channel)
{
ui->setupUi(this);
unit_str = unit_str_;
current_index = current_index_;
ui->label_min_unit->setText(unit_str);
ui->label_max_unit->setText(unit_str);
radiobtn[0] = ui->radioButton;
radiobtn[1] = ui->radioButton_2;
radiobtn[2] = ui->radioButton_3;
radiobtn[3] = ui->radioButton_4;
for (int i = 0; i < 4; i++) {
if(ch_used.used[i])
radiobtn[i]->setEnabled(false);
radiobtn[4] = ui->radioButton_5;
int not_used = 0;
for (int i = 0; i < 22; i++) {
for (int j = 0; j < 4; j++){
if(ch_used[i].used[j] && current_index == i){
radiobtn[j]->setEnabled(true);
radiobtn[j]->setChecked(true);
first_used = j;
}else if(ch_used[i].used[j] && current_index != i){
radiobtn[j]->setEnabled(false);
}else if(!ch_used[i].used[j] && current_index == i){
not_used ++;
}
}
}
if(not_used == 4){
ui->radioButton_5->setChecked(true);
}
}
@ -31,8 +46,8 @@ DC_Output_Channel::~DC_Output_Channel()
void DC_Output_Channel::on_pushButton_confirm_clicked()
{
int channel = 0;
if((ui->lineEdit_minmum->text().toFloat() >= ui->lineEdit_maxmum->text().toFloat()) ||
(ui->lineEdit_minmum->text().toFloat() == 0 && ui->lineEdit_maxmum->text().toFloat() == 0)){
if(!ui->radioButton_5->isChecked() && ((ui->lineEdit_minmum->text().toFloat() >= ui->lineEdit_maxmum->text().toFloat()) ||
(ui->lineEdit_minmum->text().toFloat() == 0 && ui->lineEdit_maxmum->text().toFloat() == 0))){
QMessageBox::information(this, QStringLiteral("提示"), "请填写正确的最小值和最大值");
return;
}
@ -44,11 +59,14 @@ void DC_Output_Channel::on_pushButton_confirm_clicked()
channel = 3;
}else if(ui->radioButton_4->isChecked()){
channel = 4;
}else if(ui->radioButton_5->isChecked()){
ch_used[current_index].used[first_used] = false;
channel = 5;
}else {
QMessageBox::information(this, QStringLiteral("提示"), "请选择正确的通道");
return;
}
emit output_channel_data_sg(channel,ui->lineEdit_minmum->text().toFloat(),ui->lineEdit_maxmum->text().toFloat());
emit output_channel_data_sg(channel,ui->lineEdit_minmum->text().toFloat(),ui->lineEdit_maxmum->text().toFloat(),first_used);
this->close();
}

View File

@ -13,10 +13,10 @@ class DC_Output_Channel : public QWidget
Q_OBJECT
public:
explicit DC_Output_Channel(QString unit_str_,QWidget *parent = nullptr);
explicit DC_Output_Channel(QString unit_str_,int current_index_,QWidget *parent = nullptr);
~DC_Output_Channel();
signals:
void output_channel_data_sg(int channel,float minmun,float maxmum);
void output_channel_data_sg(int channel,float minmun,float maxmum,int not_used);
private slots:
void on_pushButton_confirm_clicked();
@ -25,8 +25,9 @@ private slots:
private:
Ui::DC_Output_Channel *ui;
QString unit_str;
QRadioButton *radiobtn[4];
bool channel_used[4] = {false,false,false,false};
int current_index;
int first_used;
QRadioButton *radiobtn[5];
};
#endif // DC_OUTPUT_CHANNEL_H

View File

@ -89,6 +89,22 @@
<string notr="true">buttonGroup</string>
</attribute>
</widget>
<widget class="QRadioButton" name="radioButton_5">
<property name="geometry">
<rect>
<x>40</x>
<y>150</y>
<width>89</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>不使用</string>
</property>
<attribute name="buttonGroup">
<string notr="true">buttonGroup</string>
</attribute>
</widget>
</widget>
<widget class="QLineEdit" name="lineEdit_minmum">
<property name="geometry">

View File

@ -7,7 +7,7 @@
#include "data_config.h"
#include "vibrationdata.h"
ChannelUsed ch_used;
ChannelUsed ch_used[22];
DC_Outputs::DC_Outputs(int slot_no_,int cardtype,QWidget *parent) :
QWidget(parent),
@ -19,6 +19,30 @@ DC_Outputs::DC_Outputs(int slot_no_,int cardtype,QWidget *parent) :
car_type = static_cast<CardType>(cardtype);
unit = "";
current_index = ui->comboBox_ch_output->currentIndex();
label_ch1[0] = ui->label_ch_1;
label_ch1[1] = ui->label_ch_1_min;
label_ch1[2] = ui->label_ch_1_min_unit;
label_ch1[3] = ui->label_ch_1_max;
label_ch1[4] = ui->label_ch_1_max_unit;
label_ch2[0] = ui->label_ch_2;
label_ch2[1] = ui->label_ch_2_min;
label_ch2[2] = ui->label_ch_2_min_unit;
label_ch2[3] = ui->label_ch_2_max;
label_ch2[4] = ui->label_ch_2_max_unit;
label_ch3[0] = ui->label_ch_3;
label_ch3[1] = ui->label_ch_3_min;
label_ch3[2] = ui->label_ch_3_min_unit;
label_ch3[3] = ui->label_ch_3_max;
label_ch3[4] = ui->label_ch_3_max_unit;
label_ch4[0] = ui->label_ch_4;
label_ch4[1] = ui->label_ch_4_min;
label_ch4[2] = ui->label_ch_4_min_unit;
label_ch4[3] = ui->label_ch_4_max;
label_ch4[4] = ui->label_ch_4_max_unit;
Init();
}
@ -30,62 +54,98 @@ DC_Outputs::~DC_Outputs()
void DC_Outputs::Init(){
std::shared_ptr<CardBase> base_ptr = ConfigMgr::Instance()->GetSlotPtr(slot_no);
if (base_ptr == nullptr) {
qCritical() << "[DC_Outputs"
"::Init] should not be here";
qCritical() << "[DC_Outputs::Init] should not be here";
return;
}
vib_dc_output_ptr = std::dynamic_pointer_cast<VibrationData>(base_ptr);
QString unit_str = GetUnit();
if(vib_dc_output_ptr->dc_output[current_index][0].output_channel == 1){
ui->label_ch_1->setText("通道1");
ui->label_ch_1_min->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][0].minmum));
ui->label_ch_1_max->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][0].maxmum));
ch_used.used[0] = true;
}
if(vib_dc_output_ptr->dc_output[current_index][1].output_channel == 2){
ui->label_ch_2->setText("通道2");
ui->label_ch_2_min->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][1].minmum));
ui->label_ch_2_max->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][1].maxmum));
ch_used.used[1] = true;
}
if(vib_dc_output_ptr->dc_output[current_index][2].output_channel == 3){
ui->label_ch_3->setText("通道3");
ui->label_ch_3_min->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][2].minmum));
ui->label_ch_3_max->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][2].maxmum));
ch_used.used[2] = true;
}
if(vib_dc_output_ptr->dc_output[current_index][3].output_channel == 4){
ui->label_ch_4->setText("通道4");
ui->label_ch_4_min->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][3].minmum));
ui->label_ch_4_max->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][3].maxmum));
ch_used.used[3] = true;
}
QString unit_str = "";
if(vib_dc_output_ptr->dc_output[0].output_channel != -1){
unit_str = GetUnit(vib_dc_output_ptr->dc_output[0].output_channel);
ui->label_ch_1->setText(ui->comboBox_ch_output->itemText(vib_dc_output_ptr->dc_output[0].output_channel));
ui->label_ch_1_min->setText(QString::number(vib_dc_output_ptr->dc_output[0].minmum));
ui->label_ch_1_max->setText(QString::number(vib_dc_output_ptr->dc_output[0].maxmum));
ui->label_ch_1_min_unit->setText(unit_str);
ui->label_ch_1_max_unit->setText(unit_str);
ch_used[vib_dc_output_ptr->dc_output[0].output_channel].used[0] = true;
}
if(vib_dc_output_ptr->dc_output[1].output_channel != -1){
unit_str = GetUnit(vib_dc_output_ptr->dc_output[1].output_channel);
ui->label_ch_2->setText(ui->comboBox_ch_output->itemText(vib_dc_output_ptr->dc_output[1].output_channel));
ui->label_ch_2_min->setText(QString::number(vib_dc_output_ptr->dc_output[1].minmum));
ui->label_ch_2_max->setText(QString::number(vib_dc_output_ptr->dc_output[1].maxmum));
ui->label_ch_2_min_unit->setText(unit_str);
ui->label_ch_2_max_unit->setText(unit_str);
ch_used[vib_dc_output_ptr->dc_output[1].output_channel].used[1] = true;
}
if(vib_dc_output_ptr->dc_output[2].output_channel != -1){
unit_str = GetUnit(vib_dc_output_ptr->dc_output[2].output_channel);
ui->label_ch_3->setText(ui->comboBox_ch_output->itemText(vib_dc_output_ptr->dc_output[2].output_channel));
ui->label_ch_3_min->setText(QString::number(vib_dc_output_ptr->dc_output[2].minmum));
ui->label_ch_3_max->setText(QString::number(vib_dc_output_ptr->dc_output[2].maxmum));
ui->label_ch_3_min_unit->setText(unit_str);
ui->label_ch_3_max_unit->setText(unit_str);
ch_used[vib_dc_output_ptr->dc_output[2].output_channel].used[2] = true;
}
if(vib_dc_output_ptr->dc_output[3].output_channel != -1){
unit_str = GetUnit(vib_dc_output_ptr->dc_output[3].output_channel);
ui->label_ch_4->setText(ui->comboBox_ch_output->itemText(vib_dc_output_ptr->dc_output[3].output_channel));
ui->label_ch_4_min->setText(QString::number(vib_dc_output_ptr->dc_output[3].minmum));
ui->label_ch_4_max->setText(QString::number(vib_dc_output_ptr->dc_output[3].maxmum));
ui->label_ch_4_min_unit->setText(unit_str);
ui->label_ch_4_max_unit->setText(unit_str);
ch_used[vib_dc_output_ptr->dc_output[3].output_channel].used[3] = true;
}
}
QString DC_Outputs::GetUnit(){
int unit_num = -1;
QString DC_Outputs::GetUnit(int com_index){
int unit_num = -1,channel_num = 0;
QString unit_str = "";
std::shared_ptr<VariableBase> variable_base = vib_dc_output_ptr->GetChannelPtr(current_index + 1);
if (vib_dc_output_ptr->base_config_[current_index].channel_type == kVibRadial) {
channel_num = com_index;
if(com_index > 5 && com_index < 9){
channel_num = 0;
}
if(com_index > 9 && com_index < 13){
channel_num = 1;
}
if(com_index > 13 && com_index < 17){
channel_num = 2;
}
if(com_index > 17 && com_index < 21){
channel_num = 3;
}
if(com_index == 4) {
channel_num = 0;
}else if(com_index == 5){
channel_num = 2;
}
std::shared_ptr<VariableBase> variable_base = vib_dc_output_ptr->GetChannelPtr(channel_num + 1);
if (vib_dc_output_ptr->base_config_[channel_num].channel_type == kVibRadial) {
std::shared_ptr<RadialVariable> variable_ptr = std::dynamic_pointer_cast<RadialVariable>(variable_base);
unit_num = variable_ptr->general.engineering_unit;
qDebug() << "unit_num1" << unit_num ;
}
if (vib_dc_output_ptr->base_config_[current_index].channel_type == kVibAcc) {
if (vib_dc_output_ptr->base_config_[channel_num].channel_type == kVibAcc) {
std::shared_ptr<AccVelVariable> variable_ptr = std::dynamic_pointer_cast<AccVelVariable>(variable_base);
unit_num = variable_ptr->general.engineering_unit;
qDebug() << "unit_num2" << unit_num ;
}
if (vib_dc_output_ptr->base_config_[current_index].channel_type == kVibVelocity) {
if (vib_dc_output_ptr->base_config_[channel_num].channel_type == kVibVelocity) {
std::shared_ptr<AccVelVariable> variable_ptr = std::dynamic_pointer_cast<AccVelVariable>(variable_base);
unit_num = variable_ptr->general.engineering_unit;
qDebug() << "unit_num3" << unit_num ;
}
if (vib_dc_output_ptr->base_config_[current_index].channel_type == kVibThrust) {
if (vib_dc_output_ptr->base_config_[channel_num].channel_type == kVibThrust) {
std::shared_ptr<ThrustVariable> variable_ptr = std::dynamic_pointer_cast<ThrustVariable>(variable_base);
unit_num = variable_ptr->general.engineering_unit;
qDebug() << "unit_num4" << unit_num ;
}
if (vib_dc_output_ptr->base_config_[current_index].channel_type == kVibPressurePulsation) {
if (vib_dc_output_ptr->base_config_[channel_num].channel_type == kVibPressurePulsation) {
std::shared_ptr<PressurePulsationVariable> variable_ptr = std::dynamic_pointer_cast<PressurePulsationVariable>(variable_base);
unit_num = variable_ptr->general.engineering_unit;
qDebug() << "unit_num5" << unit_num ;
}
switch (unit_num) {
case kUnit1:{
@ -142,62 +202,121 @@ QString DC_Outputs::GetUnit(){
void DC_Outputs::on_comboBox_ch_output_activated(int index)
{
current_index = index;
QString unit_str = GetUnit();
DC_Output_Channel *dc_output_channel = new DC_Output_Channel(unit_str);
QString unit_str = GetUnit(current_index);
DC_Output_Channel *dc_output_channel = new DC_Output_Channel(unit_str,current_index);
dc_output_channel->setWindowModality(Qt::ApplicationModal);
connect(dc_output_channel,SIGNAL(output_channel_data_sg(int,float,float)),this,SLOT(output_channel_data(int,float,float)));
connect(dc_output_channel,SIGNAL(output_channel_data_sg(int,float,float,int)),this,SLOT(output_channel_data(int,float,float,int)));
dc_output_channel->show();
}
void DC_Outputs::output_channel_data(int channel,float minmun,float maxmum){
void DC_Outputs::output_channel_data(int channel,float minmun,float maxmum,int not_used){
qDebug() << channel << minmun << maxmum ;
QString unit_str = GetUnit();
QString unit_str = GetUnit(current_index);
if(channel == 1){
ui->label_ch_1->setText("通道1");
ui->label_ch_1->setText(ui->comboBox_ch_output->currentText());
ui->label_ch_1_min->setText(QString::number(minmun));
ui->label_ch_1_max->setText(QString::number(maxmum));
ch_used.used[0] = true;
ui->label_ch_1_min_unit->setText(unit_str);
ui->label_ch_1_max_unit->setText(unit_str);
ch_used[ui->comboBox_ch_output->currentIndex()].used[0] = true;
vib_dc_output_ptr->dc_output[0].output_channel = current_index;
vib_dc_output_ptr->dc_output[0].minmum = ui->label_ch_1_min->text().toFloat();
vib_dc_output_ptr->dc_output[0].maxmum = ui->label_ch_1_max->text().toFloat();
}else if(channel == 2){
ui->label_ch_2->setText("通道2");
ui->label_ch_2->setText(ui->comboBox_ch_output->currentText());
ui->label_ch_2_min->setText(QString::number(minmun));
ui->label_ch_2_max->setText(QString::number(maxmum));
ch_used.used[1] = true;
ui->label_ch_2_min_unit->setText(unit_str);
ui->label_ch_2_max_unit->setText(unit_str);
ch_used[ui->comboBox_ch_output->currentIndex()].used[1] = true;
vib_dc_output_ptr->dc_output[1].output_channel = current_index;
vib_dc_output_ptr->dc_output[1].minmum = ui->label_ch_2_min->text().toFloat();
vib_dc_output_ptr->dc_output[1].maxmum = ui->label_ch_2_max->text().toFloat();
}else if(channel == 3){
ui->label_ch_3->setText("通道3");
ui->label_ch_3->setText(ui->comboBox_ch_output->currentText());
ui->label_ch_3_min->setText(QString::number(minmun));
ui->label_ch_3_max->setText(QString::number(maxmum));
ch_used.used[2] = true;
ui->label_ch_3_min_unit->setText(unit_str);
ui->label_ch_3_max_unit->setText(unit_str);
ch_used[ui->comboBox_ch_output->currentIndex()].used[2] = true;
vib_dc_output_ptr->dc_output[2].output_channel = current_index;
vib_dc_output_ptr->dc_output[2].minmum = ui->label_ch_3_min->text().toFloat();
vib_dc_output_ptr->dc_output[2].maxmum = ui->label_ch_3_max->text().toFloat();
}else if(channel == 4){
ui->label_ch_4->setText("通道4");
ui->label_ch_4->setText(ui->comboBox_ch_output->currentText());
ui->label_ch_4_min->setText(QString::number(minmun));
ui->label_ch_4_max->setText(QString::number(maxmum));
ch_used.used[3] = true;
ui->label_ch_4_min_unit->setText(unit_str);
ui->label_ch_4_max_unit->setText(unit_str);
ch_used[ui->comboBox_ch_output->currentIndex()].used[3] = true;
vib_dc_output_ptr->dc_output[3].output_channel = current_index;
vib_dc_output_ptr->dc_output[3].minmum = ui->label_ch_4_min->text().toFloat();
vib_dc_output_ptr->dc_output[3].maxmum = ui->label_ch_4_max->text().toFloat();
}else if(channel == 5){
if(not_used == 0){
label_ch1[0]->setText("未使用");
label_ch1[1]->setText("-----");
label_ch1[2]->setText("-----");
label_ch1[3]->setText("-----");
label_ch1[4]->setText("-----");
ch_used[ui->comboBox_ch_output->currentIndex()].used[0] = false;
vib_dc_output_ptr->dc_output[0].output_channel = -1;
}else if(not_used == 1){
label_ch1[0]->setText("未使用");
label_ch1[1]->setText("-----");
label_ch1[2]->setText("-----");
label_ch1[3]->setText("-----");
label_ch1[4]->setText("-----");
ch_used[ui->comboBox_ch_output->currentIndex()].used[1] = false;
vib_dc_output_ptr->dc_output[1].output_channel = -1;
}else if(not_used == 2){
label_ch1[0]->setText("未使用");
label_ch1[1]->setText("-----");
label_ch1[2]->setText("-----");
label_ch1[3]->setText("-----");
label_ch1[4]->setText("-----");
ch_used[ui->comboBox_ch_output->currentIndex()].used[2] = false;
vib_dc_output_ptr->dc_output[2].output_channel = -1;
}else if(not_used == 3){
label_ch1[0]->setText("未使用");
label_ch1[1]->setText("-----");
label_ch1[2]->setText("-----");
label_ch1[3]->setText("-----");
label_ch1[4]->setText("-----");
ch_used[ui->comboBox_ch_output->currentIndex()].used[3] = false;
vib_dc_output_ptr->dc_output[3].output_channel = -1;
}
}
}
void DC_Outputs::on_pushButton_confirm_clicked()
{
if(ui->label_ch_1->text() != "未使用"){
vib_dc_output_ptr->dc_output[current_index][0].output_channel = 1;
vib_dc_output_ptr->dc_output[current_index][0].minmum = ui->label_ch_1_min->text().toFloat();
vib_dc_output_ptr->dc_output[current_index][0].maxmum = ui->label_ch_1_max->text().toFloat();
}
if(ui->label_ch_2->text() != "未使用"){
vib_dc_output_ptr->dc_output[current_index][1].output_channel = 2;
vib_dc_output_ptr->dc_output[current_index][1].minmum = ui->label_ch_2_min->text().toFloat();
vib_dc_output_ptr->dc_output[current_index][1].maxmum = ui->label_ch_2_max->text().toFloat();
}
if(ui->label_ch_3->text() != "未使用"){
vib_dc_output_ptr->dc_output[current_index][2].output_channel = 3;
vib_dc_output_ptr->dc_output[current_index][2].minmum = ui->label_ch_3_min->text().toFloat();
vib_dc_output_ptr->dc_output[current_index][2].maxmum = ui->label_ch_3_max->text().toFloat();
}
if(ui->label_ch_4->text() != "未使用"){
vib_dc_output_ptr->dc_output[current_index][3].output_channel = 4;
vib_dc_output_ptr->dc_output[current_index][3].minmum = ui->label_ch_4_min->text().toFloat();
vib_dc_output_ptr->dc_output[current_index][3].maxmum = ui->label_ch_4_max->text().toFloat();
}
// if(ui->label_ch_1->text() != "未使用" && current_index){
// vib_dc_output_ptr->dc_output[0].output_channel = current_index;
// vib_dc_output_ptr->dc_output[0].dc_output_channel = 1;
// vib_dc_output_ptr->dc_output[0].minmum = ui->label_ch_1_min->text().toFloat();
// vib_dc_output_ptr->dc_output[0].maxmum = ui->label_ch_1_max->text().toFloat();
// }
// if(ui->label_ch_2->text() != "未使用"){
// vib_dc_output_ptr->dc_output[1].output_channel = current_index;
// vib_dc_output_ptr->dc_output[1].dc_output_channel = 2;
// vib_dc_output_ptr->dc_output[1].minmum = ui->label_ch_2_min->text().toFloat();
// vib_dc_output_ptr->dc_output[1].maxmum = ui->label_ch_2_max->text().toFloat();
// }
// if(ui->label_ch_3->text() != "未使用"){
// vib_dc_output_ptr->dc_output[2].output_channel = current_index;
// vib_dc_output_ptr->dc_output[2].dc_output_channel = 3;
// vib_dc_output_ptr->dc_output[2].minmum = ui->label_ch_3_min->text().toFloat();
// vib_dc_output_ptr->dc_output[2].maxmum = ui->label_ch_3_max->text().toFloat();
// }
// if(ui->label_ch_4->text() != "未使用"){
// vib_dc_output_ptr->dc_output[3].output_channel = current_index;
// vib_dc_output_ptr->dc_output[3].dc_output_channel = 4;
// vib_dc_output_ptr->dc_output[3].minmum = ui->label_ch_4_min->text().toFloat();
// vib_dc_output_ptr->dc_output[3].maxmum = ui->label_ch_4_max->text().toFloat();
// }
this->close();
}
@ -211,31 +330,57 @@ void DC_Outputs::on_pushButton_cancel_clicked()
void DC_Outputs::on_comboBox_ch_output_currentIndexChanged(int index)
{
current_index = index;
QString unit_str = GetUnit();
if(vib_dc_output_ptr->dc_output[current_index][0].output_channel == 1){
ui->label_ch_1->setText("通道1");
ui->label_ch_1_min->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][0].minmum));
ui->label_ch_1_max->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][0].maxmum));
ch_used.used[0] = true;
}
if(vib_dc_output_ptr->dc_output[current_index][1].output_channel == 2){
ui->label_ch_2->setText("通道2");
ui->label_ch_2_min->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][1].minmum));
ui->label_ch_2_max->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][1].maxmum));
ch_used.used[1] = true;
}
if(vib_dc_output_ptr->dc_output[current_index][2].output_channel == 3){
ui->label_ch_3->setText("通道3");
ui->label_ch_3_min->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][2].minmum));
ui->label_ch_3_max->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][2].maxmum));
ch_used.used[2] = true;
}
if(vib_dc_output_ptr->dc_output[current_index][3].output_channel == 4){
ui->label_ch_4->setText("通道4");
ui->label_ch_4_min->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][3].minmum));
ui->label_ch_4_max->setText(QString::number(vib_dc_output_ptr->dc_output[current_index][3].maxmum));
ch_used.used[3] = true;
}
qDebug() << "on_comboBox_ch_output_currentIndexChanged" ;
// if(ui->label_ch_1->text() != "未使用"){
// vib_dc_output_ptr->dc_output[0].output_channel = current_index;
// vib_dc_output_ptr->dc_output[0].dc_output_channel = 1;
// vib_dc_output_ptr->dc_output[0].minmum = ui->label_ch_1_min->text().toFloat();
// vib_dc_output_ptr->dc_output[0].maxmum = ui->label_ch_1_max->text().toFloat();
// }
// if(ui->label_ch_2->text() != "未使用"){
// vib_dc_output_ptr->dc_output[1].output_channel = current_index;
// vib_dc_output_ptr->dc_output[1].dc_output_channel = 2;
// vib_dc_output_ptr->dc_output[1].minmum = ui->label_ch_2_min->text().toFloat();
// vib_dc_output_ptr->dc_output[1].maxmum = ui->label_ch_2_max->text().toFloat();
// }
// if(ui->label_ch_3->text() != "未使用"){
// vib_dc_output_ptr->dc_output[2].output_channel = current_index;
// vib_dc_output_ptr->dc_output[2].dc_output_channel = 3;
// vib_dc_output_ptr->dc_output[2].minmum = ui->label_ch_3_min->text().toFloat();
// vib_dc_output_ptr->dc_output[2].maxmum = ui->label_ch_3_max->text().toFloat();
// }
// if(ui->label_ch_4->text() != "未使用"){
// vib_dc_output_ptr->dc_output[3].output_channel = current_index;
// vib_dc_output_ptr->dc_output[3].dc_output_channel = 4;
// vib_dc_output_ptr->dc_output[3].minmum = ui->label_ch_4_min->text().toFloat();
// vib_dc_output_ptr->dc_output[3].maxmum = ui->label_ch_4_max->text().toFloat();
// }
// current_index = index;
// QString unit_str = GetUnit();
// if(vib_dc_output_ptr->dc_output[0].dc_output_channel == 1 && current_index == vib_dc_output_ptr->dc_output[0].output_channel){
// ui->label_ch_1->setText(ui->comboBox_ch_output->itemText(vib_dc_output_ptr->dc_output[0].output_channel));
// ui->label_ch_1_min->setText(QString::number(vib_dc_output_ptr->dc_output[0].minmum));
// ui->label_ch_1_max->setText(QString::number(vib_dc_output_ptr->dc_output[0].maxmum));
// ch_used[current_index].used[0] = true;
// }
// if(vib_dc_output_ptr->dc_output[1].dc_output_channel == 2 && current_index == vib_dc_output_ptr->dc_output[1].output_channel){
// ui->label_ch_2->setText(ui->comboBox_ch_output->itemText(vib_dc_output_ptr->dc_output[1].output_channel));
// ui->label_ch_2_min->setText(QString::number(vib_dc_output_ptr->dc_output[1].minmum));
// ui->label_ch_2_max->setText(QString::number(vib_dc_output_ptr->dc_output[1].maxmum));
// ch_used[current_index].used[1] = true;
// }
// if(vib_dc_output_ptr->dc_output[2].dc_output_channel == 3 && current_index == vib_dc_output_ptr->dc_output[2].output_channel){
// ui->label_ch_3->setText(ui->comboBox_ch_output->itemText(vib_dc_output_ptr->dc_output[2].output_channel));
// ui->label_ch_3_min->setText(QString::number(vib_dc_output_ptr->dc_output[2].minmum));
// ui->label_ch_3_max->setText(QString::number(vib_dc_output_ptr->dc_output[2].maxmum));
// ch_used[current_index].used[2] = true;
// }
// if(vib_dc_output_ptr->dc_output[3].dc_output_channel == 4 && current_index == vib_dc_output_ptr->dc_output[3].output_channel){
// ui->label_ch_4->setText(ui->comboBox_ch_output->itemText(vib_dc_output_ptr->dc_output[3].output_channel));
// ui->label_ch_4_min->setText(QString::number(vib_dc_output_ptr->dc_output[3].minmum));
// ui->label_ch_4_max->setText(QString::number(vib_dc_output_ptr->dc_output[3].maxmum));
// ch_used[current_index].used[3] = true;
// }
}

View File

@ -25,7 +25,7 @@ private slots:
void on_pushButton_cancel_clicked();
void output_channel_data(int channel,float minmun,float maxmum);
void output_channel_data(int channel,float minmun,float maxmum,int not_used);
void on_comboBox_ch_output_currentIndexChanged(int index);
@ -33,8 +33,11 @@ private:
Ui::DC_Outputs *ui;
std::shared_ptr<VibrationData> vib_dc_output_ptr = nullptr;
void Init();
QString GetUnit();
QString GetUnit(int com_index);
QLabel *label_ch1[5];
QLabel *label_ch2[5];
QLabel *label_ch3[5];
QLabel *label_ch4[5];
int current_index;
QString unit;
};

View File

@ -64,6 +64,86 @@
<string>通道3 &amp; 通道4</string>
</property>
</item>
<item>
<property name="text">
<string>通道1 分频段1</string>
</property>
</item>
<item>
<property name="text">
<string>通道1 分频段2</string>
</property>
</item>
<item>
<property name="text">
<string>通道1 分频段3</string>
</property>
</item>
<item>
<property name="text">
<string>通道1 分频段4</string>
</property>
</item>
<item>
<property name="text">
<string>通道2 分频段1</string>
</property>
</item>
<item>
<property name="text">
<string>通道2 分频段2</string>
</property>
</item>
<item>
<property name="text">
<string>通道2 分频段3</string>
</property>
</item>
<item>
<property name="text">
<string>通道2 分频段4</string>
</property>
</item>
<item>
<property name="text">
<string>通道3 分频段1</string>
</property>
</item>
<item>
<property name="text">
<string>通道3 分频段2</string>
</property>
</item>
<item>
<property name="text">
<string>通道3 分频段3</string>
</property>
</item>
<item>
<property name="text">
<string>通道3 分频段4</string>
</property>
</item>
<item>
<property name="text">
<string>通道4 分频段1</string>
</property>
</item>
<item>
<property name="text">
<string>通道4 分频段2</string>
</property>
</item>
<item>
<property name="text">
<string>通道4 分频段3</string>
</property>
</item>
<item>
<property name="text">
<string>通道4 分频段4</string>
</property>
</item>
</widget>
<widget class="QLabel" name="label">
<property name="geometry">

View File

@ -58,15 +58,40 @@ void PressurePulsation::Init() {
ui->checkBox_band_pass->setChecked(variable_ptr->filter_[2].checked);
ui->spinBox_band_pass_low->setValue(variable_ptr->filter_[2].low);
ui->spinBox_band_pass_high->setValue(variable_ptr->filter_[2].high);
ui->radioButton_fixed->setChecked(variable_ptr->fixed);
ui->lineEdit_sample_rate->setText(QString::number(variable_ptr->sample_rate));
ui->lineEdit_bandwidth->setText(QString::number(variable_ptr->bandwidth));
ui->comboBox_fft_points->setCurrentText(QString::number(variable_ptr->fft_points));
ui->lineEdit_measuring_value_min->setText(QString::number(variable_ptr->measuring_min));
ui->lineEdit_measuring_value_max->setText(QString::number(variable_ptr->measuring_max));
ui->lineEdit_scale_value_min->setText(QString::number(variable_ptr->scale_min));
ui->lineEdit_scale_value_max->setText(QString::number(variable_ptr->scale_max));
// processed output
// -general
if(variable_ptr->general.output_used)
ui->comboBox_output_used->setCurrentIndex(0);
else
ui->comboBox_output_used->setCurrentIndex(1);
ui->comboBox_engineering_unit->setCurrentIndex(variable_ptr->general.engineering_unit);
ui->comboBox_rectifier_funtion->setCurrentIndex(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.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.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.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_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));
ui->lineEdit_end->setText(QString::number(variable_ptr->freband_output[0].end));
@ -97,6 +122,7 @@ void PressurePulsation::Init() {
ui->checkBox_enable_10->setChecked(variable_ptr->freband_output[9].enable);
ui->lineEdit_start_10->setText(QString::number(variable_ptr->freband_output[9].start));
ui->lineEdit_end_10->setText(QString::number(variable_ptr->freband_output[9].end));
}
void PressurePulsation::on_pushButton_confirm_clicked()
{
@ -126,14 +152,35 @@ void PressurePulsation::on_pushButton_confirm_clicked()
variable->filter_[2].checked = ui->checkBox_band_pass->checkState();
variable->filter_[2].low = ui->spinBox_band_pass_low->value();
variable->filter_[2].high = ui->spinBox_band_pass_high->value();
variable->fixed = ui->radioButton_fixed->isChecked();
variable->sample_rate = ui->lineEdit_sample_rate->text().toUInt();
variable->bandwidth = ui->lineEdit_bandwidth->text().toInt();
variable->fft_points = ui->comboBox_fft_points->currentText().toInt();
variable->measuring_min = ui->lineEdit_measuring_value_min->text().toInt();
variable->measuring_max = ui->lineEdit_measuring_value_max->text().toInt();
variable->scale_min = ui->lineEdit_scale_value_min->text().toInt();
variable->scale_max = ui->lineEdit_scale_value_max->text().toInt();
// processed output
// -general
if(ui->comboBox_output_used->currentIndex() == 0)
variable->general.output_used = true;
else
variable->general.output_used = false;
variable->general.engineering_unit = ui->comboBox_engineering_unit->currentIndex();
variable->general.rectifier_function = ui->comboBox_rectifier_funtion->currentIndex();
// -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->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();
@ -180,15 +227,35 @@ void PressurePulsation::on_pushButton_confirm_clicked()
variable->filter_[2].checked = ui->checkBox_band_pass->checkState();
variable->filter_[2].low = ui->spinBox_band_pass_low->value();
variable->filter_[2].high = ui->spinBox_band_pass_high->value();
variable->fixed = ui->radioButton_fixed->isChecked();
variable->sample_rate = ui->lineEdit_sample_rate->text().toUInt();
variable->bandwidth = ui->lineEdit_bandwidth->text().toInt();
variable->fft_points = ui->comboBox_fft_points->currentText().toInt();
variable->measuring_min = ui->lineEdit_measuring_value_min->text().toInt();
variable->measuring_max = ui->lineEdit_measuring_value_max->text().toInt();
variable->scale_min = ui->lineEdit_scale_value_min->text().toInt();
variable->scale_max = ui->lineEdit_scale_value_max->text().toInt();
// processed output
// -general
if(ui->comboBox_output_used->currentIndex() == 0)
variable->general.output_used = true;
else
variable->general.output_used = false;
variable->general.engineering_unit = ui->comboBox_engineering_unit->currentIndex();
variable->general.rectifier_function = ui->comboBox_rectifier_funtion->currentIndex();
// -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->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();

File diff suppressed because it is too large Load Diff

View File

@ -183,16 +183,16 @@ void Radial::on_pushButton_confirm_clicked() {
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->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();
// 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->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)
@ -212,16 +212,16 @@ void Radial::on_pushButton_confirm_clicked() {
variable->gap_alert_high.delay = ui->lineEdit_alert_high_delay_2->text().toDouble();
variable->gap_alert_high.enable = ui->checkBox_alert_high_enable_2->isChecked();
variable->gap_alert_high.latch = ui->checkBox_alert_high_latch_2->isChecked();
variable->gap_danger_low.level = ui->lineEdit_danger_low_level_2->text().toDouble();
variable->gap_danger_low.hysteresis = ui->lineEdit_danger_low_hysteresis_2->text().toDouble();
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();
// variable->gap_danger_low.level = ui->lineEdit_danger_low_level_2->text().toDouble();
// variable->gap_danger_low.hysteresis = ui->lineEdit_danger_low_hysteresis_2->text().toDouble();
// 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();
@ -256,16 +256,16 @@ void Radial::on_pushButton_confirm_clicked() {
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->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();
// 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->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)
@ -285,16 +285,16 @@ void Radial::on_pushButton_confirm_clicked() {
variable->gap_alert_high.delay = ui->lineEdit_alert_high_delay_2->text().toDouble();
variable->gap_alert_high.enable = ui->checkBox_alert_high_enable_2->isChecked();
variable->gap_alert_high.latch = ui->checkBox_alert_high_latch_2->isChecked();
variable->gap_danger_low.level = ui->lineEdit_danger_low_level_2->text().toDouble();
variable->gap_danger_low.hysteresis = ui->lineEdit_danger_low_hysteresis_2->text().toDouble();
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();
// variable->gap_danger_low.level = ui->lineEdit_danger_low_level_2->text().toDouble();
// variable->gap_danger_low.hysteresis = ui->lineEdit_danger_low_hysteresis_2->text().toDouble();
// 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();
}

View File

@ -23,7 +23,7 @@
</rect>
</property>
<property name="currentIndex">
<number>2</number>
<number>1</number>
</property>
<widget class="QWidget" name="tab_5">
<attribute name="title">
@ -300,7 +300,7 @@
</rect>
</property>
<property name="currentIndex">
<number>1</number>
<number>0</number>
</property>
<widget class="QWidget" name="tab_8">
<attribute name="title">
@ -319,33 +319,6 @@
<string>整流器</string>
</property>
</widget>
<widget class="QComboBox" name="comboBox_rectifier_funtion">
<property name="geometry">
<rect>
<x>10</x>
<y>140</y>
<width>125</width>
<height>25</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>RMS</string>
</property>
</item>
</widget>
<widget class="QLabel" name="label_27">
<property name="geometry">
<rect>
@ -359,33 +332,6 @@
<string>输出使用</string>
</property>
</widget>
<widget class="QComboBox" name="comboBox_engineering_unit">
<property name="geometry">
<rect>
<x>10</x>
<y>90</y>
<width>125</width>
<height>25</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>um</string>
</property>
</item>
</widget>
<widget class="QLabel" name="label_28">
<property name="geometry">
<rect>
@ -431,6 +377,130 @@
</property>
</item>
</widget>
<widget class="QComboBox" name="comboBox_engineering_unit">
<property name="geometry">
<rect>
<x>10</x>
<y>90</y>
<width>125</width>
<height>25</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>g</string>
</property>
</item>
<item>
<property name="text">
<string>m/s**2</string>
</property>
</item>
<item>
<property name="text">
<string>mm/s</string>
</property>
</item>
<item>
<property name="text">
<string>inch/s</string>
</property>
</item>
<item>
<property name="text">
<string>um</string>
</property>
</item>
<item>
<property name="text">
<string>mm</string>
</property>
</item>
<item>
<property name="text">
<string>mils</string>
</property>
</item>
<item>
<property name="text">
<string>inch/s**2</string>
</property>
</item>
<item>
<property name="text">
<string/>
</property>
</item>
</widget>
<widget class="QComboBox" name="comboBox_rectifier_funtion">
<property name="geometry">
<rect>
<x>10</x>
<y>140</y>
<width>125</width>
<height>25</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>True Peak</string>
</property>
</item>
<item>
<property name="text">
<string>True Peak-To-Peak</string>
</property>
</item>
<item>
<property name="text">
<string>RMS Scaled Peak</string>
</property>
</item>
<item>
<property name="text">
<string>RMS Scaled Peak-To-Peak</string>
</property>
</item>
<item>
<property name="text">
<string>AVG</string>
</property>
</item>
<item>
<property name="text">
<string>RMS Scaled AVG</string>
</property>
</item>
<item>
<property name="text">
<string>RMS</string>
</property>
</item>
</widget>
</widget>
<widget class="QWidget" name="tab_9">
<attribute name="title">
@ -617,6 +687,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_delay">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>220</x>
@ -627,6 +700,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_hysteresis">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>150</x>
@ -637,6 +713,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_level">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>80</x>
@ -647,6 +726,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_delay">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>220</x>
@ -657,6 +739,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_level">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>80</x>
@ -667,6 +752,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_hysteresis">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>150</x>
@ -703,6 +791,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_alert_low_enable">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>290</x>
@ -716,6 +807,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_danger_low_enable">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>290</x>
@ -742,6 +836,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_danger_low_latch">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>350</x>
@ -768,6 +865,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_alert_low_latch">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>350</x>
@ -816,33 +916,6 @@
<string>整流器</string>
</property>
</widget>
<widget class="QComboBox" name="comboBox_rectifier_funtion_2">
<property name="geometry">
<rect>
<x>10</x>
<y>140</y>
<width>125</width>
<height>25</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>RMS</string>
</property>
</item>
</widget>
<widget class="QLabel" name="label_45">
<property name="geometry">
<rect>
@ -856,33 +929,6 @@
<string>输出使用</string>
</property>
</widget>
<widget class="QComboBox" name="comboBox_engineering_unit_2">
<property name="geometry">
<rect>
<x>10</x>
<y>90</y>
<width>125</width>
<height>25</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>um</string>
</property>
</item>
</widget>
<widget class="QLabel" name="label_46">
<property name="geometry">
<rect>
@ -928,6 +974,130 @@
</property>
</item>
</widget>
<widget class="QComboBox" name="comboBox_engineering_unit_2">
<property name="geometry">
<rect>
<x>10</x>
<y>90</y>
<width>125</width>
<height>25</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>g</string>
</property>
</item>
<item>
<property name="text">
<string>m/s**2</string>
</property>
</item>
<item>
<property name="text">
<string>mm/s</string>
</property>
</item>
<item>
<property name="text">
<string>inch/s</string>
</property>
</item>
<item>
<property name="text">
<string>um</string>
</property>
</item>
<item>
<property name="text">
<string>mm</string>
</property>
</item>
<item>
<property name="text">
<string>mils</string>
</property>
</item>
<item>
<property name="text">
<string>inch/s**2</string>
</property>
</item>
<item>
<property name="text">
<string/>
</property>
</item>
</widget>
<widget class="QComboBox" name="comboBox_rectifier_funtion_2">
<property name="geometry">
<rect>
<x>10</x>
<y>140</y>
<width>125</width>
<height>25</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>True Peak</string>
</property>
</item>
<item>
<property name="text">
<string>True Peak-To-Peak</string>
</property>
</item>
<item>
<property name="text">
<string>RMS Scaled Peak</string>
</property>
</item>
<item>
<property name="text">
<string>RMS Scaled Peak-To-Peak</string>
</property>
</item>
<item>
<property name="text">
<string>AVG</string>
</property>
</item>
<item>
<property name="text">
<string>RMS Scaled AVG</string>
</property>
</item>
<item>
<property name="text">
<string>RMS</string>
</property>
</item>
</widget>
</widget>
<widget class="QWidget" name="tab_11">
<attribute name="title">
@ -1114,6 +1284,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_delay_2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>220</x>
@ -1124,6 +1297,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_hysteresis_2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>150</x>
@ -1134,6 +1310,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_level_2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>80</x>
@ -1144,6 +1323,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_delay_2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>220</x>
@ -1154,6 +1336,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_level_2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>80</x>
@ -1164,6 +1349,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_hysteresis_2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>150</x>
@ -1200,6 +1388,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_alert_low_enable_2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>290</x>
@ -1213,6 +1404,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_danger_low_enable_2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>290</x>
@ -1239,6 +1433,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_danger_low_latch_2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>350</x>
@ -1265,6 +1462,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_alert_low_latch_2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>350</x>

View File

@ -71,6 +71,10 @@ void Seismic_monitor::Init() {
ui->doubleSpinBox_low_1->setValue(vib_data->base_config_[i].normal_voltage_low);
ui->doubleSpinBox_high_1->setValue(vib_data->base_config_[i].normal_voltage_high);
ui->checkBox_keyphase->setChecked(vib_data->base_config_[i].keyphase);
ui->comboBox_keyphase_ch->setCurrentIndex(vib_data->base_config_[i].keyphase_ch);
ui->comboBox_keyphase_slot->setCurrentIndex(vib_data->base_config_[i].keyphase_slot);
} 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);
@ -80,12 +84,20 @@ void Seismic_monitor::Init() {
ui->doubleSpinBox_low_2->setValue(vib_data->base_config_[i].normal_voltage_low);
ui->doubleSpinBox_high_2->setValue(vib_data->base_config_[i].normal_voltage_high);
ui->checkBox_keyphase_2->setChecked(vib_data->base_config_[i].keyphase);
ui->comboBox_keyphase_ch_2->setCurrentIndex(vib_data->base_config_[i].keyphase_ch);
ui->comboBox_keyphase_slot_2->setCurrentIndex(vib_data->base_config_[i].keyphase_slot);
} 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_keyphase_3->setChecked(vib_data->base_config_[i].keyphase);
ui->comboBox_keyphase_ch_3->setCurrentIndex(vib_data->base_config_[i].keyphase_ch);
ui->comboBox_keyphase_slot_3->setCurrentIndex(vib_data->base_config_[i].keyphase_slot);
ui->checkBox_enable_3->setChecked(vib_data->base_config_[i].active);
ui->doubleSpinBox_low_3->setValue(vib_data->base_config_[i].normal_voltage_low);
ui->doubleSpinBox_high_3->setValue(vib_data->base_config_[i].normal_voltage_high);
@ -95,6 +107,10 @@ void Seismic_monitor::Init() {
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_keyphase_4->setChecked(vib_data->base_config_[i].keyphase);
ui->comboBox_keyphase_ch_4->setCurrentIndex(vib_data->base_config_[i].keyphase_ch);
ui->comboBox_keyphase_slot_4->setCurrentIndex(vib_data->base_config_[i].keyphase_slot);
ui->checkBox_enable_4->setChecked(vib_data->base_config_[i].active);
ui->doubleSpinBox_low_4->setValue(vib_data->base_config_[i].normal_voltage_low);
ui->doubleSpinBox_high_4->setValue(vib_data->base_config_[i].normal_voltage_high);
@ -126,7 +142,6 @@ void Seismic_monitor::UpdateData(std::shared_ptr<VibrationData> vib_data) {
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();

View File

@ -501,6 +501,9 @@
<height>16777215</height>
</size>
</property>
<property name="text">
<string>8</string>
</property>
</widget>
</item>
<item>
@ -590,7 +593,7 @@
<double>-100.000000000000000</double>
</property>
<property name="value">
<double>25.000000000000000</double>
<double>20.000000000000000</double>
</property>
</widget>
</item>
@ -626,7 +629,7 @@
<double>-100.000000000000000</double>
</property>
<property name="value">
<double>-25.000000000000000</double>
<double>-20.000000000000000</double>
</property>
</widget>
</item>
@ -936,6 +939,9 @@
<height>16777215</height>
</size>
</property>
<property name="text">
<string>8</string>
</property>
</widget>
</item>
<item>
@ -1025,7 +1031,7 @@
<double>-100.000000000000000</double>
</property>
<property name="value">
<double>25.000000000000000</double>
<double>20.000000000000000</double>
</property>
</widget>
</item>
@ -1061,7 +1067,7 @@
<double>-100.000000000000000</double>
</property>
<property name="value">
<double>-25.000000000000000</double>
<double>-20.000000000000000</double>
</property>
</widget>
</item>
@ -1629,6 +1635,9 @@
<height>16777215</height>
</size>
</property>
<property name="text">
<string>8</string>
</property>
</widget>
</item>
<item>
@ -1718,7 +1727,7 @@
<double>-100.000000000000000</double>
</property>
<property name="value">
<double>25.000000000000000</double>
<double>20.000000000000000</double>
</property>
</widget>
</item>
@ -1754,7 +1763,7 @@
<double>-100.000000000000000</double>
</property>
<property name="value">
<double>-25.000000000000000</double>
<double>-20.000000000000000</double>
</property>
</widget>
</item>
@ -2064,6 +2073,9 @@
<height>16777215</height>
</size>
</property>
<property name="text">
<string>8</string>
</property>
</widget>
</item>
<item>
@ -2153,7 +2165,7 @@
<double>-100.000000000000000</double>
</property>
<property name="value">
<double>25.000000000000000</double>
<double>20.000000000000000</double>
</property>
</widget>
</item>
@ -2189,7 +2201,7 @@
<double>-100.000000000000000</double>
</property>
<property name="value">
<double>-25.000000000000000</double>
<double>-20.000000000000000</double>
</property>
</widget>
</item>

View File

@ -306,33 +306,6 @@
<string>输出使用</string>
</property>
</widget>
<widget class="QComboBox" name="comboBox_engineering_unit">
<property name="geometry">
<rect>
<x>10</x>
<y>90</y>
<width>125</width>
<height>25</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>um</string>
</property>
</item>
</widget>
<widget class="QLabel" name="label_28">
<property name="geometry">
<rect>
@ -436,6 +409,73 @@
</property>
</widget>
</widget>
<widget class="QComboBox" name="comboBox_engineering_unit">
<property name="geometry">
<rect>
<x>10</x>
<y>90</y>
<width>125</width>
<height>25</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>125</width>
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>g</string>
</property>
</item>
<item>
<property name="text">
<string>m/s**2</string>
</property>
</item>
<item>
<property name="text">
<string>mm/s</string>
</property>
</item>
<item>
<property name="text">
<string>inch/s</string>
</property>
</item>
<item>
<property name="text">
<string>um</string>
</property>
</item>
<item>
<property name="text">
<string>mm</string>
</property>
</item>
<item>
<property name="text">
<string>mils</string>
</property>
</item>
<item>
<property name="text">
<string>inch/s**2</string>
</property>
</item>
<item>
<property name="text">
<string/>
</property>
</item>
</widget>
</widget>
<widget class="QWidget" name="tab_9">
<attribute name="title">

View File

@ -340,6 +340,36 @@
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>True Peak</string>
</property>
</item>
<item>
<property name="text">
<string>True Peak-To-Peak</string>
</property>
</item>
<item>
<property name="text">
<string>RMS Scaled Peak</string>
</property>
</item>
<item>
<property name="text">
<string>RMS Scaled Peak-To-Peak</string>
</property>
</item>
<item>
<property name="text">
<string>AVG</string>
</property>
</item>
<item>
<property name="text">
<string>RMS Scaled AVG</string>
</property>
</item>
<item>
<property name="text">
<string>RMS</string>
@ -380,11 +410,51 @@
<height>25</height>
</size>
</property>
<item>
<property name="text">
<string>g</string>
</property>
</item>
<item>
<property name="text">
<string>m/s**2</string>
</property>
</item>
<item>
<property name="text">
<string>mm/s</string>
</property>
</item>
<item>
<property name="text">
<string>inch/s</string>
</property>
</item>
<item>
<property name="text">
<string>um</string>
</property>
</item>
<item>
<property name="text">
<string>mm</string>
</property>
</item>
<item>
<property name="text">
<string>mils</string>
</property>
</item>
<item>
<property name="text">
<string>inch/s**2</string>
</property>
</item>
<item>
<property name="text">
<string/>
</property>
</item>
</widget>
<widget class="QLabel" name="label_28">
<property name="geometry">
@ -617,6 +687,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_delay">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>220</x>
@ -627,6 +700,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_hysteresis">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>150</x>
@ -637,6 +713,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_level">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>80</x>
@ -647,6 +726,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_delay">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>220</x>
@ -657,6 +739,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_danger_low_level">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>80</x>
@ -667,6 +752,9 @@
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_alert_low_hysteresis">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>150</x>
@ -703,6 +791,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_alert_low_enable">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>290</x>
@ -716,6 +807,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_danger_low_enable">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>290</x>
@ -742,6 +836,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_danger_low_latch">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>350</x>
@ -768,6 +865,9 @@
</property>
</widget>
<widget class="QCheckBox" name="checkBox_alert_low_latch">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>350</x>

View File

@ -14,7 +14,7 @@ class VibrationData : public CardBase {
std::vector<std::shared_ptr<VariableBase>> variables_;
VibAlertDanger alert_danger[CHANNEL_COUNT];
VibAlertDangerPress alert_danger_press[CHANNEL_COUNT];
DCOutput dc_output[CHANNEL_COUNT][CHANNEL_COUNT];
DCOutput dc_output[CHANNEL_COUNT];
};
#endif // VIBRATIONDATA_H