добавление просмотра примерной скорости на интерфейсе в SCPC модеме

This commit is contained in:
2025-01-20 14:14:56 +03:00
parent 196f7ae5a2
commit bafef9c51c
7 changed files with 49 additions and 10 deletions

View File

@@ -216,7 +216,12 @@
<option v-for="speed in getAvailableModcods(paramRxtx.dvbCcmModulation)" v-bind:value="speed">{{ speed }}</option>
</select>
</label>
<label v-show="paramRxtx.dvbIsAcm === true"><span>Текущий модкод</span><input type="text" readonly v-model="statTx.modcod"/></label>
<label v-show="paramRxtx.dvbIsAcm === false">
<span>Расчетная скорость, kbit</span><span>{{ calcInterfaceSpeedKb(paramRxtx.txBaudrate, paramRxtx.dvbCcmModulation, paramRxtx.dvbCcmSpeed) }}</span>
</label>
<label v-show="paramRxtx.dvbIsAcm === true">
<span>Текущий модкод</span><span>{{ statTx.modcod }}</span>
</label>
<label v-show="paramRxtx.dvbIsAcm === true">
<span>Модуляция (мин. режим)</span>
<select v-model="paramRxtx.dvbAcmMinModulation" @change="paramRxtx.dvbAcmMinSpeed = correctModcodSpeed(paramRxtx.dvbAcmMinModulation, paramRxtx.dvbAcmMinSpeed)">
@@ -232,6 +237,9 @@
<option v-for="speed in getAvailableModcods(paramRxtx.dvbAcmMinModulation)" v-bind:value="speed">{{ speed }}</option>
</select>
</label>
<label v-show="paramRxtx.dvbIsAcm === true">
<span>Расчетная скорость (мин. режим), kbit</span><span>{{ calcInterfaceSpeedKb(paramRxtx.txBaudrate, paramRxtx.dvbAcmMinModulation, paramRxtx.dvbAcmMinSpeed) }}</span>
</label>
<label v-show="paramRxtx.dvbIsAcm === true">
<span>Модуляция (макс. режим)</span>
<select v-model="paramRxtx.dvbAcmMaxModulation" @change="paramRxtx.dvbAcmMaxSpeed = correctModcodSpeed(paramRxtx.dvbAcmMaxModulation, paramRxtx.dvbAcmMaxSpeed)">
@@ -247,6 +255,9 @@
<option v-for="speed in getAvailableModcods(paramRxtx.dvbAcmMaxModulation)" v-bind:value="speed">{{ speed }}</option>
</select>
</label>
<label v-show="paramRxtx.dvbIsAcm === true">
<span>Расчетная скорость (макс. режим), kbit</span><span>{{ calcInterfaceSpeedKb(paramRxtx.txBaudrate, paramRxtx.dvbAcmMaxModulation, paramRxtx.dvbAcmMaxSpeed) }}</span>
</label>
<label><span>Запас ОСШ, дБ</span><input type="number" v-model="paramRxtx.dvbSnrReserve" max="10" step="0.01"/></label>
</div>
<div class="settings-set-container">
@@ -269,7 +280,9 @@
</select>
</label>
<label v-show="paramRxtx.rxAgcEn === false"><span>Усиление, дБ</span><input type="number" v-model="paramRxtx.rxManualGain" min="-40" max="40" step="0.01"/></label>
<label v-show="paramRxtx.rxAgcEn === true"><span>Текущее усиление</span><input type="text" readonly v-model="paramRxtx.rxManualGain"/></label>
<label v-show="paramRxtx.rxAgcEn === true">
<span>Текущее усиление</span><span>{{ paramRxtx.rxManualGain }}</span>
</label>
<label>
<span>Инверсия спектра</span>
<span class="toggle-input"><input type="checkbox" v-model="paramRxtx.rxSpectrumInversion" /><span class="slider"></span></span>
@@ -526,7 +539,7 @@
<p>Последнее обновление статистики: {{ lastUpdateTime }}</p>
</div>
</div>
<script src="/js/vue.js"></script>
<script src="/js/vue.js?v=3.5.13"></script>
<script>
const availableTabs = ['monitoring', 'setup', 'qos', 'admin']
@@ -1007,9 +1020,16 @@
this.statRx.packetsBad = 0
this.statRx.packetsDummy = 0
})
}, // ========== include end from 'common/monitoring-methods.js.j2'
},
// ========== include end from 'common/monitoring-methods.js.j2'
// ========== include from 'common/setup-methods.js.j2'
calcInterfaceSpeedKb(baud, modulation, speed) {
const mMod = Math.max(2, ['', '', 'qpsk', '8psk', '16apsk', '32apsk'].indexOf(modulation))
const speedVals = {'1/4': 0.25, '1/3': 0.333, '2/5': 0.4, '1/2': 0.5, '3/5': 0.6, '2/3': 0.666, '3/4': 0.75, '4/5': 0.8, '5/6': 0.833, '8/9': 0.888, '9/10': 0.9}
const mSpeed = speed in speedVals ? speedVals[speed] : 1
return ((baud * mMod * mSpeed) / 1024).toLocaleString()
},
// ========== include end from 'common/setup-methods.js.j2'
// ========== include from 'common/qos-methods.js.j2'

View File

@@ -258,7 +258,7 @@
<p>Последнее обновление статистики: {{ lastUpdateTime }}</p>
</div>
</div>
<script src="/js/vue.js"></script>
<script src="/js/vue.js?v=3.5.13"></script>
<script>
const availableTabs = ['monitoring', 'setup', 'admin']
@@ -587,7 +587,8 @@
this.statRx.packetsBad = 0
this.statRx.packetsDummy = 0
})
}, // ========== include end from 'common/monitoring-methods.js.j2'
},
// ========== include end from 'common/monitoring-methods.js.j2'
// ========== include from 'common/setup-methods.js.j2'
// ========== include end from 'common/setup-methods.js.j2'