From b9a25e8734f9b558f49b4a0866152058eb0ad775 Mon Sep 17 00:00:00 2001 From: Vladislav Ostapov Date: Thu, 5 Jun 2025 11:15:13 +0300 Subject: [PATCH] =?UTF-8?q?=D1=84=D0=B8=D0=BA=D1=81=20roll-off,=20=D1=84?= =?UTF-8?q?=D0=B8=D0=BA=D1=81=20=D0=BD=D0=B5=D1=87=D0=B8=D1=82=D0=B0=D1=8E?= =?UTF-8?q?=D1=89=D0=B8=D1=85=D1=81=D1=8F=20=D0=BD=D0=B0=D1=81=D1=82=D1=80?= =?UTF-8?q?=D0=BE=D0=B5=D0=BA=20=D1=81=D0=B5=D1=82=D0=B8,=20=D1=84=D0=B8?= =?UTF-8?q?=D0=BA=D1=81=20=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD=D0=B8=D0=B9?= =?UTF-8?q?=20=D0=BD=D0=B0=20=D1=81=D1=82=D1=80=D0=B0=D0=BD=D0=B8=D1=86?= =?UTF-8?q?=D0=B5=20=D0=BC=D0=BE=D0=BD=D0=B8=D1=82=D0=BE=D1=80=D0=B8=D0=BD?= =?UTF-8?q?=D0=B3=D0=B0,=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=B0=D0=B2=D1=82=D0=BE-=D1=80=D0=B5=D0=B3=D1=83=D0=BB=D0=B8?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=BA=D1=83=20=D0=BC=D0=BE=D1=89=D0=BD=D0=BE?= =?UTF-8?q?=D1=81=D1=82=D0=B8=20=D0=B2=20=D0=A8=D0=9F=D0=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- front-generator/render-params.json | 40 ++++++++----- src/api-driver/stricts-enable.h | 2 +- src/api-driver/structs.cpp | 12 ++-- src/api-driver/structs.h | 2 - static/main-scpc.html | 70 +++++++++++------------ static/main-shps.html | 92 ++++++++++++++++++------------ static/main-tdma.html | 14 ++--- 7 files changed, 129 insertions(+), 103 deletions(-) diff --git a/front-generator/render-params.json b/front-generator/render-params.json index 0eb6bbb..bb62170 100644 --- a/front-generator/render-params.json +++ b/front-generator/render-params.json @@ -42,7 +42,7 @@ {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "rxBaudrate", "min": 200000, "max": 54000000, "step": 1}, { "widget": "select", "label": "Roll-off", "name": "rxRolloff", - "values": [{"label": "0.02", "value": "2"}, {"label": "0.05", "value": "5"}, {"label": "0.10", "value": "10"}, {"label": "0.15", "value": "15"}, {"label": "0.20", "value": "20"}, {"label": "0.25", "value": "25"}] + "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}] } ] } @@ -174,7 +174,7 @@ {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "txBaudrate", "min": 200000, "max": 54000000}, { "widget": "select", "label": "Roll-off", "name": "txRolloff", - "values": [{"label": "0.02", "value": "2"}, {"label": "0.05", "value": "5"}, {"label": "0.10", "value": "10"}, {"label": "0.15", "value": "15"}, {"label": "0.20", "value": "20"}, {"label": "0.25", "value": "25"}] + "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}] }, { "widget": "select", "label": "Номер последовательности Голда", "name": "txGoldan", @@ -235,7 +235,7 @@ {"widget": "number-int", "label": "Символьная скорость, Бод", "name": "rxBaudrate", "min": 200000, "max": 54000000}, { "widget": "select", "label": "Roll-off", "name": "rxRolloff", - "values": [{"label": "0.02", "value": "2"}, {"label": "0.05", "value": "5"}, {"label": "0.10", "value": "10"}, {"label": "0.15", "value": "15"}, {"label": "0.20", "value": "20"}, {"label": "0.25", "value": "25"}] + "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}] }, { "widget": "select", "label": "Номер последовательности Голда", "name": "rxGoldan", @@ -322,14 +322,14 @@ "widget": "settings-container", "childs": [ {"widget": "h3", "label": "Настройки интерфейса управления"}, - {"widget": "ip-address", "label": "Интерфейс управления (/24)", "name": "netManagementIp"}, + {"widget": "ip-address", "label": "Интерфейс управления (/24)", "name": "managementIp"}, { - "widget": "select", "label": "Режим сети", "name": "netIsL2", + "widget": "select", "label": "Режим сети", "name": "isL2", "values": [{"label": "Маршрутизатор", "value": "false"}, {"label": "Коммутатор", "value": "true"}] }, - {"widget": "ip-address", "label": "Интерфейс данных (/24)", "name": "netDataIp", "v_show": "paramNetwork.netIsL2 === false"}, - {"widget": "number", "label": "MTU интерфейса данных", "name": "netDataMtu", "min": 1500, "step": 1, "max": 2000}, - {"widget": "text", "label": "Имя веб-сервера", "name": "netServerName"} + {"widget": "ip-address", "label": "Интерфейс данных (/24)", "name": "dataIp", "v_show": "paramNetwork.isL2 === false"}, + {"widget": "number", "label": "MTU интерфейса данных", "name": "dataMtu", "min": 1500, "step": 1, "max": 2000}, + {"widget": "text", "label": "Имя веб-сервера", "name": "serverName"} ] } ] @@ -372,12 +372,22 @@ {"widget": "number", "label": "Символьная скорость, Бод", "name": "txBaudrate", "min": 200000, "max": 54000000}, { "widget": "select", "label": "Roll-off", "name": "txRolloff", - "values": [{"label": "0.02", "value": "2"}, {"label": "0.05", "value": "5"}, {"label": "0.10", "value": "10"}, {"label": "0.15", "value": "15"}, {"label": "0.20", "value": "20"}, {"label": "0.25", "value": "25"}] + "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}] }, {"widget": "number", "label": "Коэф. расширения", "name": "txSpreadCoef", "max": 1000, "min": -1000, "step": 0.01}, {"widget": "number", "label": "Ослабление, дБ", "name": "txAttenuation", "max": 0, "min": -40, "step": 0.25} ] }, + { + "widget": "settings-container", + "childs": [ + {"widget": "h3", "label": "Авто-регулировка мощности"}, + {"widget": "checkbox", "label": "Авто-регулировка мощности", "name": "aupcEn"}, + {"widget": "number", "label": "Минимальное ослабление, дБ", "name": "aupcMinAttenuation", "min": 0, "step": 0.1, "max": 10}, + {"widget": "number", "label": "Максимальное ослабление, дБ", "name": "aupcMaxAttenuation", "min": 0, "step": 0.1, "max": 10}, + {"widget": "number", "label": "Требуемое ОСШ", "name": "aupcRequiredSnr", "min": 0, "step": 0.01, "max": 10} + ] + }, { "widget": "settings-container", "childs": [ @@ -393,7 +403,7 @@ {"widget": "number", "label": "Символьная скорость, Бод", "name": "rxBaudrate", "min": 200000, "max": 54000000}, { "widget": "select", "label": "Roll-off", "name": "rxRolloff", - "values": [{"label": "0.02", "value": "2"}, {"label": "0.05", "value": "5"}, {"label": "0.10", "value": "10"}, {"label": "0.15", "value": "15"}, {"label": "0.20", "value": "20"}, {"label": "0.25", "value": "25"}] + "values": [{"label": "0.02", "value": "20"}, {"label": "0.05", "value": "50"}, {"label": "0.10", "value": "100"}, {"label": "0.15", "value": "150"}, {"label": "0.20", "value": "200"}, {"label": "0.25", "value": "250"}] }, {"widget": "number", "label": "Коэф. расширения", "name": "rxSpreadCoef", "max": 1000, "min": -1000, "step": 0.01} ] @@ -454,14 +464,14 @@ "widget": "settings-container", "childs": [ {"widget": "h3", "label": "Настройки интерфейса управления"}, - {"widget": "ip-address", "label": "Интерфейс управления (/24)", "name": "netManagementIp"}, + {"widget": "ip-address", "label": "Интерфейс управления (/24)", "name": "managementIp"}, { - "widget": "select", "label": "Режим сети", "name": "netIsL2", + "widget": "select", "label": "Режим сети", "name": "isL2", "values": [{"label": "Маршрутизатор", "value": "false"}, {"label": "Коммутатор", "value": "true"}] }, - {"widget": "ip-address", "label": "Интерфейс данных (/24)", "name": "netDataIp", "v_show": "paramNetwork.netIsL2 === false"}, - {"widget": "number", "label": "MTU интерфейса данных", "name": "netDataMtu", "min": 1500, "step": 1, "max": 2000}, - {"widget": "text", "label": "Имя веб-сервера", "name": "netServerName"} + {"widget": "ip-address", "label": "Интерфейс данных (/24)", "name": "dataIp", "v_show": "paramNetwork.isL2 === false"}, + {"widget": "number", "label": "MTU интерфейса данных", "name": "dataMtu", "min": 1500, "step": 1, "max": 2000}, + {"widget": "text", "label": "Имя веб-сервера", "name": "serverName"} ] } ] diff --git a/src/api-driver/stricts-enable.h b/src/api-driver/stricts-enable.h index e52110d..325aa51 100644 --- a/src/api-driver/stricts-enable.h +++ b/src/api-driver/stricts-enable.h @@ -6,7 +6,7 @@ #define API_OBJECT_DEBUG_METRICS_ENABLE #endif -#if defined(MODEM_IS_SCPC) +#if defined(MODEM_IS_SCPC) || defined(MODEM_IS_SHPS) #define API_STRUCT_ACM_ENABLE #endif diff --git a/src/api-driver/structs.cpp b/src/api-driver/structs.cpp index adaf4cf..8c02f79 100644 --- a/src/api-driver/structs.cpp +++ b/src/api-driver/structs.cpp @@ -391,10 +391,8 @@ void api_driver::obj::TerminalState::updateCallback(proxy::CpProxy& cp) { fCincFreqErrAcc = cinc.freq_fine_estimate; fCincChannelDelay = cinc.delay_dpdi; #endif -#ifdef MODEM_IS_TDMA fTxCenterFreq = modSet.central_freq_in_kGz; fTxSymSpeed = static_cast(modSet.baudrate) / 1000.0; -#endif } nlohmann::json api_driver::obj::TerminalState::asJson() { @@ -454,10 +452,8 @@ nlohmann::json api_driver::obj::TerminalState::asJson() { res["cinc"]["correlator"] = nullptr; } #endif -#ifdef MODEM_IS_TDMA res["tx"]["centerFreq"] = fTxCenterFreq; res["tx"]["symSpeed"] = fTxSymSpeed; -#endif return res; } @@ -680,8 +676,8 @@ void api_driver::obj::TerminalRxTxSettings::updateMainSettings(const nlohmann::j #ifdef API_STRUCT_ACM_ENABLE // ACM -#ifndef MODEM_IS_SHPS - // в ШПС этих настроек нет +#ifdef MODEM_IS_SCPC + // эти настройки только в SCPC acm.period_pack_acm = data.value("dvbServicePacketPeriod", acm.period_pack_acm); acm.enable_acm = data.value("dvbIsAcm", acm.enable_acm); acm.min_modcod_acm = buildModcodFromJson(data, acm.min_modcod_acm, "dvbAcmMin", acmIsFrameSizeNormal, acmIsPilots); @@ -867,8 +863,8 @@ nlohmann::json api_driver::obj::TerminalRxTxSettings::asJson() const { #ifdef API_STRUCT_ACM_ENABLE // ACM -#ifndef MODEM_IS_SHPS - // в ШПС этих настроек нет +#ifdef MODEM_IS_SCPC + // эти настройки только в SCPC rxtx["dvbServicePacketPeriod"] = acm.period_pack_acm; rxtx["dvbIsAcm"] = acm.enable_acm; diff --git a/src/api-driver/structs.h b/src/api-driver/structs.h index 2eb65bc..6b7f0b0 100644 --- a/src/api-driver/structs.h +++ b/src/api-driver/structs.h @@ -172,10 +172,8 @@ namespace api_driver::obj { int32_t fCincFreqErrAcc{}; float fCincChannelDelay{}; #endif -#ifdef MODEM_IS_TDMA double fTxCenterFreq; double fTxSymSpeed; -#endif TerminalState(); diff --git a/static/main-scpc.html b/static/main-scpc.html index 937144b..d2d7e3a 100644 --- a/static/main-scpc.html +++ b/static/main-scpc.html @@ -169,12 +169,12 @@