diff --git a/config_mgr.cpp b/config_mgr.cpp index 8607108..786c0ed 100644 --- a/config_mgr.cpp +++ b/config_mgr.cpp @@ -536,6 +536,9 @@ void ConfigMgr::Save(QString & file_path) { channel_item.insert("default_speed", ptr->variables_[cid].default_speed); channel_item.insert("automatic_threshold",ptr->variables_[cid].automatic_threshold); channel_item.insert("point_name",ptr->variables_[cid].point_name); + channel_item.insert("keyphase_points",ptr->variables_[cid].keyphase_points); + channel_item.insert("speed_delay",ptr->variables_[cid].speed_delay); + channel_item.insert("zero_speed",ptr->variables_[cid].zero_speed); QJsonObject alarm; alarm["danger_high_level"] = ptr->danger_high[cid].level; alarm["danger_high_hysteresis"] = ptr->danger_high[cid].hysteresis; @@ -565,6 +568,8 @@ void ConfigMgr::Save(QString & file_path) { channel_item.insert("events_per_revolution", ptr->variables_[cid].events_per_revolution); channel_item.insert("automatic_threshold",ptr->variables_[cid].automatic_threshold); channel_item.insert("point_name",ptr->variables_[cid].point_name); + channel_item.insert("keyphase_points",ptr->variables_[cid].keyphase_points); + channel_item.insert("speed_delay",ptr->variables_[cid].speed_delay); } slot_item[QString::number(cid + 1)] = channel_item; @@ -1092,6 +1097,9 @@ void ConfigMgr::Load(QString filename) { speed_data->variables_[j].default_speed = channel["default_speed"].toInt(); speed_data->variables_[j].automatic_threshold = channel["automatic_threshold"].toBool(); speed_data->variables_[j].point_name = channel["point_name"].toString(); + speed_data->variables_[j].keyphase_points = channel["keyphase_points"].toInt(); + speed_data->variables_[j].speed_delay = channel["speed_delay"].toInt(); + speed_data->variables_[j].zero_speed = channel["zero_speed"].toInt(); if(channel.contains("alarm")){ QJsonObject alarm = channel["alarm"].toObject(); speed_data->danger_high[j].level = alarm["danger_high_level"].toDouble(); @@ -1126,6 +1134,8 @@ void ConfigMgr::Load(QString filename) { keyphase_data->variables_[j].events_per_revolution = channel["events_per_revolution"].toInt(); keyphase_data->variables_[j].automatic_threshold = channel["automatic_threshold"].toBool(); keyphase_data->variables_[j].point_name = channel["point_name"].toString(); + keyphase_data->variables_[j].keyphase_points = channel["keyphase_points"].toInt(); + keyphase_data->variables_[j].speed_delay = channel["speed_delay"].toInt(); } cards_.push_back(keyphase_data); diff --git a/data_config.h b/data_config.h index fab119e..07686a6 100644 --- a/data_config.h +++ b/data_config.h @@ -429,6 +429,9 @@ typedef struct { float normal_voltage_high; int speed_peek; int default_speed; + int keyphase_points; + int speed_delay; + int zero_speed; bool automatic_threshold; float threshold; float hysteresis; @@ -449,6 +452,8 @@ typedef struct { float threshold; float hysteresis; int events_per_revolution; + int keyphase_points; + int speed_delay; } KeyphaseVariables; typedef struct { diff --git a/keyphase.cpp b/keyphase.cpp index 5b4dc78..5c4c2df 100644 --- a/keyphase.cpp +++ b/keyphase.cpp @@ -90,6 +90,8 @@ void KeyPhase::UpdateData(std::shared_ptr &keyphase_data) { keyphase_data->variables_[i].threshold = ui->doubleSpinBox_threshold_1->value(); keyphase_data->variables_[i].hysteresis = ui->doubleSpinBox_hysteresis_1->value(); keyphase_data->variables_[i].events_per_revolution = ui->spinBox_events_per_revolution_1->value(); + keyphase_data->variables_[i].keyphase_points = ui->spinBox_points->value(); + keyphase_data->variables_[i].speed_delay = ui->spinBox_delay->value(); } else if (i + 1 == 2) { keyphase_data->variables_[i].active = ui->checkBox_enable_2->isChecked(); keyphase_data->variables_[i].normal_voltage_high = ui->doubleSpinBox_high_2->value(); @@ -98,6 +100,8 @@ void KeyPhase::UpdateData(std::shared_ptr &keyphase_data) { keyphase_data->variables_[i].threshold = ui->doubleSpinBox_threshold_2->value(); keyphase_data->variables_[i].hysteresis = ui->doubleSpinBox_hysteresis_2->value(); keyphase_data->variables_[i].events_per_revolution = ui->spinBox_events_per_revolution_2->value(); + keyphase_data->variables_[i].keyphase_points = ui->spinBox_points_2->value(); + keyphase_data->variables_[i].speed_delay = ui->spinBox_delay_2->value(); } else if (i + 1 == 3) { keyphase_data->variables_[i].active = ui->checkBox_enable_3->isChecked(); keyphase_data->variables_[i].normal_voltage_high = ui->doubleSpinBox_high_3->value(); @@ -106,6 +110,8 @@ void KeyPhase::UpdateData(std::shared_ptr &keyphase_data) { keyphase_data->variables_[i].threshold = ui->doubleSpinBox_threshold_3->value(); keyphase_data->variables_[i].hysteresis = ui->doubleSpinBox_hysteresis_3->value(); keyphase_data->variables_[i].events_per_revolution = ui->spinBox_events_per_revolution_3->value(); + keyphase_data->variables_[i].keyphase_points = ui->spinBox_points_3->value(); + keyphase_data->variables_[i].speed_delay = ui->spinBox_delay_3->value(); } else if (i + 1 == 4) { keyphase_data->variables_[i].active = ui->checkBox_enable_4->isChecked(); keyphase_data->variables_[i].normal_voltage_high = ui->doubleSpinBox_high_4->value(); @@ -114,6 +120,8 @@ void KeyPhase::UpdateData(std::shared_ptr &keyphase_data) { keyphase_data->variables_[i].threshold = ui->doubleSpinBox_threshold_4->value(); keyphase_data->variables_[i].hysteresis = ui->doubleSpinBox_hysteresis_4->value(); keyphase_data->variables_[i].events_per_revolution = ui->spinBox_events_per_revolution_4->value(); + keyphase_data->variables_[i].keyphase_points = ui->spinBox_points_4->value(); + keyphase_data->variables_[i].speed_delay = ui->spinBox_delay_4->value(); } } } @@ -135,6 +143,8 @@ void KeyPhase::Init() { ui->checkBox_enable_1->setChecked(keyphase_data->variables_[i].active); ui->doubleSpinBox_high_1->setValue(keyphase_data->variables_[i].normal_voltage_high); ui->doubleSpinBox_low_1->setValue(keyphase_data->variables_[i].normal_voltage_low); + ui->spinBox_points->setValue(keyphase_data->variables_[i].keyphase_points); + ui->spinBox_delay->setValue(keyphase_data->variables_[i].speed_delay); if (keyphase_data->variables_[i].automatic_threshold) { ui->radioButton_automatic_threshold_1->setChecked(true); ui->doubleSpinBox_threshold_1->setEnabled(false); @@ -151,6 +161,8 @@ void KeyPhase::Init() { ui->checkBox_enable_2->setChecked(keyphase_data->variables_[i].active); ui->doubleSpinBox_high_2->setValue(keyphase_data->variables_[i].normal_voltage_high); ui->doubleSpinBox_low_2->setValue(keyphase_data->variables_[i].normal_voltage_low); + ui->spinBox_points_2->setValue(keyphase_data->variables_[i].keyphase_points); + ui->spinBox_delay_2->setValue(keyphase_data->variables_[i].speed_delay); if (keyphase_data->variables_[i].automatic_threshold) { ui->radioButton_automatic_threshold_2->setChecked(true); ui->doubleSpinBox_threshold_2->setEnabled(false); @@ -167,6 +179,8 @@ void KeyPhase::Init() { ui->checkBox_enable_3->setChecked(keyphase_data->variables_[i].active); ui->doubleSpinBox_high_3->setValue(keyphase_data->variables_[i].normal_voltage_high); ui->doubleSpinBox_low_3->setValue(keyphase_data->variables_[i].normal_voltage_low); + ui->spinBox_points_3->setValue(keyphase_data->variables_[i].keyphase_points); + ui->spinBox_delay_3->setValue(keyphase_data->variables_[i].speed_delay); if (keyphase_data->variables_[i].automatic_threshold) { ui->radioButton_automatic_threshold_3->setChecked(true); ui->doubleSpinBox_threshold_3->setEnabled(false); @@ -183,6 +197,8 @@ void KeyPhase::Init() { ui->checkBox_enable_4->setChecked(keyphase_data->variables_[i].active); ui->doubleSpinBox_high_4->setValue(keyphase_data->variables_[i].normal_voltage_high); ui->doubleSpinBox_low_4->setValue(keyphase_data->variables_[i].normal_voltage_low); + ui->spinBox_points_4->setValue(keyphase_data->variables_[i].keyphase_points); + ui->spinBox_delay_4->setValue(keyphase_data->variables_[i].speed_delay); if (keyphase_data->variables_[i].automatic_threshold) { ui->radioButton_automatic_threshold_4->setChecked(true); ui->doubleSpinBox_threshold_4->setEnabled(false); diff --git a/keyphase.ui b/keyphase.ui index ebbabd4..2109eb3 100644 --- a/keyphase.ui +++ b/keyphase.ui @@ -6,7 +6,7 @@ 0 0 - 824 + 904 510 @@ -157,113 +157,159 @@ 正常电压 - + - + - - - - 80 - 0 - - + + + + + + 80 + 0 + + + + 上限: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 120 + 25 + + + + + 16777215 + 16777215 + + + + 1 + + + -50.000000000000000 + + + 50.000000000000000 + + + 25.000000000000000 + + + + + + + V + + + + + + + + + + + + 80 + 0 + + + + 下限: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 120 + 25 + + + + + 16777215 + 16777215 + + + + 1 + + + -50.000000000000000 + + + 50.000000000000000 + + + -25.000000000000000 + + + + + + + V + + + + + + + + + + + - 上限: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + 键相点数 - + - 120 + 50 25 - - - 16777215 - 16777215 - - - - 1 - - - -50.000000000000000 - - - 50.000000000000000 - - - 25.000000000000000 - - - - - - - V - - + - - - - 80 - 0 - - + - 下限: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + 时延(S) - + - 120 + 50 25 - - - 16777215 - 16777215 - - - - 1 - - - -50.000000000000000 - - - 50.000000000000000 - - - -25.000000000000000 - - - - - - - V - @@ -509,113 +555,159 @@ 正常电压 - + - + - - - - 80 - 0 - - + + + + + + 80 + 0 + + + + 上限: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 120 + 25 + + + + + 16777215 + 16777215 + + + + 1 + + + -50.000000000000000 + + + 50.000000000000000 + + + 25.000000000000000 + + + + + + + V + + + + + + + + + + + + 80 + 0 + + + + 下限: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 120 + 25 + + + + + 16777215 + 16777215 + + + + 1 + + + -50.000000000000000 + + + 50.000000000000000 + + + -25.000000000000000 + + + + + + + V + + + + + + + + + + + - 上限: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + 键相点数 - + - 120 + 50 25 - - - 16777215 - 16777215 - - - - 1 - - - -50.000000000000000 - - - 50.000000000000000 - - - 25.000000000000000 - - - - - - - V - - + - - - - 80 - 0 - - + - 下限: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + 时延(S) - + - 120 + 50 25 - - - 16777215 - 16777215 - - - - 1 - - - -50.000000000000000 - - - 50.000000000000000 - - - -25.000000000000000 - - - - - - - V - @@ -911,113 +1003,159 @@ 正常电压 - + - + - - - - 80 - 0 - - + + + + + + 80 + 0 + + + + 上限: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 120 + 25 + + + + + 16777215 + 16777215 + + + + 1 + + + -50.000000000000000 + + + 50.000000000000000 + + + 25.000000000000000 + + + + + + + V + + + + + + + + + + + + 80 + 0 + + + + 下限: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 120 + 25 + + + + + 16777215 + 16777215 + + + + 1 + + + -50.000000000000000 + + + 50.000000000000000 + + + -25.000000000000000 + + + + + + + V + + + + + + + + + + + - 上限: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + 键相点数 - + - 120 + 50 25 - - - 16777215 - 16777215 - - - - 1 - - - -50.000000000000000 - - - 50.000000000000000 - - - 25.000000000000000 - - - - - - - V - - + - - - - 80 - 0 - - + - 下限: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + 时延(S) - + - 120 + 50 25 - - - 16777215 - 16777215 - - - - 1 - - - -50.000000000000000 - - - 50.000000000000000 - - - -25.000000000000000 - - - - - - - V - @@ -1263,113 +1401,159 @@ 正常电压 - + - + - - - - 80 - 0 - - + + + + + + 80 + 0 + + + + 上限: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 120 + 25 + + + + + 16777215 + 16777215 + + + + 1 + + + -50.000000000000000 + + + 50.000000000000000 + + + 25.000000000000000 + + + + + + + V + + + + + + + + + + + + 80 + 0 + + + + 下限: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 120 + 25 + + + + + 16777215 + 16777215 + + + + 1 + + + -50.000000000000000 + + + 50.000000000000000 + + + -25.000000000000000 + + + + + + + V + + + + + + + + + + + - 上限: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + 键相点数 - + - 120 + 50 25 - - - 16777215 - 16777215 - - - - 1 - - - -50.000000000000000 - - - 50.000000000000000 - - - 25.000000000000000 - - - - - - - V - - + - - - - 80 - 0 - - + - 下限: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + 时延(S) - + - 120 + 50 25 - - - 16777215 - 16777215 - - - - 1 - - - -50.000000000000000 - - - 50.000000000000000 - - - -25.000000000000000 - - - - - - - V - diff --git a/tachometer.cpp b/tachometer.cpp index ec9323b..3b0e245 100644 --- a/tachometer.cpp +++ b/tachometer.cpp @@ -84,6 +84,9 @@ void Tachometer::UpdateData(std::shared_ptr &speed_data) { speed_data->variables_[i].normal_voltage_low = ui->doubleSpinBox_low_1->value(); speed_data->variables_[i].speed_peek = ui->full_scale_range_1->value(); speed_data->variables_[i].default_speed = ui->default_value_1->value(); + speed_data->variables_[i].keyphase_points = ui->spinBox_points->value(); + speed_data->variables_[i].speed_delay = ui->spinBox_delay->value(); + speed_data->variables_[i].zero_speed = ui->spinBox_zero_speed->value(); if(ui->radioButton_automatic_threshold_1->isChecked()){ speed_data->variables_[i].automatic_threshold = true; }else{ @@ -121,6 +124,9 @@ void Tachometer::UpdateData(std::shared_ptr &speed_data) { speed_data->variables_[i].normal_voltage_low = ui->doubleSpinBox_low_2->value(); speed_data->variables_[i].speed_peek = ui->full_scale_range_2->value(); speed_data->variables_[i].default_speed = ui->default_value_2->value(); + speed_data->variables_[i].keyphase_points = ui->spinBox_points_2->value(); + speed_data->variables_[i].speed_delay = ui->spinBox_delay_2->value(); + speed_data->variables_[i].zero_speed = ui->spinBox_zero_speed_2->value(); if(ui->radioButton_automatic_threshold_2->isChecked()){ speed_data->variables_[i].automatic_threshold = true; }else{ @@ -159,6 +165,9 @@ void Tachometer::UpdateData(std::shared_ptr &speed_data) { speed_data->variables_[i].normal_voltage_low = ui->doubleSpinBox_low_3->value(); speed_data->variables_[i].speed_peek = ui->full_scale_range_3->value(); speed_data->variables_[i].default_speed = ui->default_value_3->value(); + speed_data->variables_[i].keyphase_points = ui->spinBox_points_3->value(); + speed_data->variables_[i].speed_delay = ui->spinBox_delay_3->value(); + speed_data->variables_[i].zero_speed = ui->spinBox_zero_speed_3->value(); if(ui->radioButton_automatic_threshold_3->isChecked()){ speed_data->variables_[i].automatic_threshold = true; }else{ @@ -197,6 +206,9 @@ void Tachometer::UpdateData(std::shared_ptr &speed_data) { speed_data->variables_[i].normal_voltage_low = ui->doubleSpinBox_low_4->value(); speed_data->variables_[i].speed_peek = ui->full_scale_range_4->value(); speed_data->variables_[i].default_speed = ui->default_value_4->value(); + speed_data->variables_[i].keyphase_points = ui->spinBox_points_4->value(); + speed_data->variables_[i].speed_delay = ui->spinBox_delay_4->value(); + speed_data->variables_[i].zero_speed = ui->spinBox_zero_speed_4->value(); if(ui->radioButton_automatic_threshold_4->isChecked()){ speed_data->variables_[i].automatic_threshold = true; }else{ @@ -252,6 +264,9 @@ void Tachometer::Init() { ui->doubleSpinBox_low_1->setValue(speed_data->variables_[i].normal_voltage_low); ui->full_scale_range_1->setValue(speed_data->variables_[i].speed_peek); ui->default_value_1->setValue(speed_data->variables_[i].default_speed); + ui->spinBox_points->setValue(speed_data->variables_[i].keyphase_points); + ui->spinBox_delay->setValue(speed_data->variables_[i].speed_delay); + ui->spinBox_zero_speed->setValue(speed_data->variables_[i].zero_speed); if (speed_data->variables_[i].automatic_threshold) { ui->radioButton_automatic_threshold_1->setChecked(true); ui->doubleSpinBox_threshold_1->setEnabled(false); @@ -297,6 +312,9 @@ void Tachometer::Init() { ui->doubleSpinBox_low_2->setValue(speed_data->variables_[i].normal_voltage_low); ui->full_scale_range_2->setValue(speed_data->variables_[i].speed_peek); ui->default_value_2->setValue(speed_data->variables_[i].default_speed); + ui->spinBox_points_2->setValue(speed_data->variables_[i].keyphase_points); + ui->spinBox_delay_2->setValue(speed_data->variables_[i].speed_delay); + ui->spinBox_zero_speed_2->setValue(speed_data->variables_[i].zero_speed); if (speed_data->variables_[i].automatic_threshold) { ui->radioButton_automatic_threshold_2->setChecked(true); ui->doubleSpinBox_threshold_2->setEnabled(false); @@ -342,6 +360,9 @@ void Tachometer::Init() { ui->doubleSpinBox_low_3->setValue(speed_data->variables_[i].normal_voltage_low); ui->full_scale_range_3->setValue(speed_data->variables_[i].speed_peek); ui->default_value_3->setValue(speed_data->variables_[i].default_speed); + ui->spinBox_points_3->setValue(speed_data->variables_[i].keyphase_points); + ui->spinBox_delay_3->setValue(speed_data->variables_[i].speed_delay); + ui->spinBox_zero_speed_3->setValue(speed_data->variables_[i].zero_speed); if (speed_data->variables_[i].automatic_threshold) { ui->radioButton_automatic_threshold_3->setChecked(true); ui->doubleSpinBox_threshold_3->setEnabled(false); @@ -387,6 +408,9 @@ void Tachometer::Init() { ui->doubleSpinBox_low_4->setValue(speed_data->variables_[i].normal_voltage_low); ui->full_scale_range_4->setValue(speed_data->variables_[i].speed_peek); ui->default_value_4->setValue(speed_data->variables_[i].default_speed); + ui->spinBox_points_4->setValue(speed_data->variables_[i].keyphase_points); + ui->spinBox_delay_4->setValue(speed_data->variables_[i].speed_delay); + ui->spinBox_zero_speed_4->setValue(speed_data->variables_[i].zero_speed); if (speed_data->variables_[i].automatic_threshold) { ui->radioButton_automatic_threshold_4->setChecked(true); ui->doubleSpinBox_threshold_4->setEnabled(false); diff --git a/tachometer.ui b/tachometer.ui index 04695de..d62f5de 100644 --- a/tachometer.ui +++ b/tachometer.ui @@ -7,7 +7,7 @@ 0 0 835 - 655 + 670 @@ -383,13 +383,13 @@ - + 16777215 - 50 + 16777215 @@ -404,7 +404,7 @@ - 100 + 50 25 @@ -422,13 +422,13 @@ - + 16777215 - 50 + 16777215 @@ -454,6 +454,54 @@ + + + + + + 键相点数 + + + Qt::AlignCenter + + + + + + + + 50 + 25 + + + + + + + + + + + + 时延(S) + + + Qt::AlignCenter + + + + + + + + 50 + 25 + + + + + + @@ -462,39 +510,66 @@ 记录输出 - + - + + + + 125 + 25 + + - - - - 125 - 25 - + + 不输出 + + + + + 转速 + + + + + + + + + 0 + 25 + + + + 2 mA 默认值 + + + + + + + + + 零转速: - - - 不输出 - - - - - 转速 - - - + - 0 + 50 25 + + 10 + + + + + - 2 mA 默认值 + RPM @@ -1538,7 +1613,7 @@ 16777215 - 50 + 16777215 @@ -1553,7 +1628,7 @@ - 100 + 50 25 @@ -1577,7 +1652,7 @@ 16777215 - 50 + 16777215 @@ -1603,6 +1678,54 @@ + + + + + + 键相点数 + + + Qt::AlignCenter + + + + + + + + 50 + 25 + + + + + + + + + + + + 时延(S) + + + Qt::AlignCenter + + + + + + + + 50 + 25 + + + + + + @@ -1613,37 +1736,64 @@ - + + + + 125 + 25 + + - - - - 125 - 25 - + + 不输出 + + + + + 转速 + + + + + + + + + 0 + 25 + + + + 2 mA 默认值 + + + + + + + + + 零转速: - - - 不输出 - - - - - 转速 - - - + - 0 + 50 25 + + 10 + + + + + - 2 mA 默认值 + RPM @@ -2677,7 +2827,7 @@ 16777215 - 50 + 16777215 @@ -2692,7 +2842,7 @@ - 100 + 50 25 @@ -2716,7 +2866,7 @@ 16777215 - 50 + 16777215 @@ -2742,6 +2892,54 @@ + + + + + + 键相点数 + + + Qt::AlignCenter + + + + + + + + 50 + 25 + + + + + + + + + + + + 时延(S) + + + Qt::AlignCenter + + + + + + + + 50 + 25 + + + + + + @@ -2750,39 +2948,66 @@ 记录输出 - + - + + + + 125 + 25 + + - - - - 125 - 25 - + + 不输出 + + + + + 转速 + + + + + + + + + 0 + 25 + + + + 2 mA 默认值 + + + + + + + + + 零转速: - - - 不输出 - - - - - 转速 - - - + - 0 + 50 25 + + 10 + + + + + - 2 mA 默认值 + RPM @@ -3816,7 +4041,7 @@ 16777215 - 50 + 16777215 @@ -3831,7 +4056,7 @@ - 100 + 50 25 @@ -3855,7 +4080,7 @@ 16777215 - 50 + 16777215 @@ -3881,6 +4106,54 @@ + + + + + + 键相点数 + + + Qt::AlignCenter + + + + + + + + 50 + 25 + + + + + + + + + + + + 时延(S) + + + Qt::AlignCenter + + + + + + + + 50 + 25 + + + + + + @@ -3889,39 +4162,66 @@ 记录输出 - + - + + + + 125 + 25 + + - - - - 125 - 25 - + + 不输出 + + + + + 转速 + + + + + + + + + 0 + 25 + + + + 2 mA 默认值 + + + + + + + + + 零转速: - - - 不输出 - - - - - 转速 - - - + - 0 + 50 25 + + 10 + + + + + - 2 mA 默认值 + RPM