Доработка, обновления под новый протокол сопряжения.

This commit is contained in:
MaD_CaT
2025-09-04 15:40:33 +03:00
parent 6f1080d083
commit db3e4bf574
3 changed files with 101 additions and 87 deletions

View File

@@ -14,13 +14,13 @@ const TableCellType5 = preload('res://ячейка-2.tscn')
const TableCellType6 = preload('res://кнопка-5.tscn')
const TableHeader = preload('res://table/header.tscn')
# Индекс колонки: 0 1 2 3 4 5 6
const TABLE_HEADERS = [ 'Индекс', 'Состояние', 'Помеха', 'Мощность', 'Кур. уг.', 'Частота', 'Ш. диап.']
const TABLE_HEADER_TYPES = [ TableHeader, TableHeader, TableHeader, TableHeader, TableHeader, TableHeader, TableHeader]
const TABLE_HEADER_ALIGNMENTS = [ HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER]
const TABLE_ROW_TYPES = [ TableCellType1, TableCellType6, TableCellType1, TableCellType1, TableCellType1, TableCellType1, TableCellType1]
const TABLE_ROW_ALIGNMENTS = [ HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER]
const TABLE_COLUMN_SIZES = [ 82, 150, 82, 100, 82, 90, 150]
# Индекс колонки: 0 1 2 3 4 5 6 7
const TABLE_HEADERS = [ 'Индекс', 'Состояние', 'Помеха', 'Мощность', 'Кур. уг.', 'Частота', 'Ш. диап.', 'Номер ФС']
const TABLE_HEADER_TYPES = [ TableHeader, TableHeader, TableHeader, TableHeader, TableHeader, TableHeader, TableHeader, TableHeader]
const TABLE_HEADER_ALIGNMENTS = [ HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER]
const TABLE_ROW_TYPES = [ TableCellType1, TableCellType6, TableCellType1, TableCellType1, TableCellType1, TableCellType1, TableCellType1, TableCellType1]
const TABLE_ROW_ALIGNMENTS = [ HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER, HORIZONTAL_ALIGNMENT_CENTER]
const TABLE_COLUMN_SIZES = [ 82, 130, 100, 82, 82, 82, 82, 82]
const COLUMN_ISPP = 0 # Индекс сейанса постановки помехи
const COLUMN_SVK = 1 # Состояние выполнения помехи
@@ -29,7 +29,7 @@ const COLUMN_POWP = 3 # Мощность излучения
const COLUMN_KNI = 4 # Курсовой угол
const COLUMN_FREQ = 5 # Частота
const COLUMN_WIDTH = 6 # Ширина диапазона
const COLUMN_NUM_FS = 7 # Номер модуля фс
# Индексы колонок, которым можно задавать выравнивание текста
const TABLE_ALLIGNED_COLUMNS = [
@@ -38,7 +38,8 @@ const TABLE_ALLIGNED_COLUMNS = [
COLUMN_POWP,
COLUMN_KNI,
COLUMN_FREQ,
COLUMN_WIDTH, ]
COLUMN_WIDTH,
COLUMN_NUM_FS]
# Состояние выполнения команды поставновки помехи
const SVK = ['Подготовка', 'Выполнено', 'Ошибка', 'Занято', 'Неисправно']
@@ -46,10 +47,27 @@ const SVK = ['Подготовка', 'Выполнено', 'Ошибка', 'За
# Номера колонок
const COLUMN_OPT = [[COLUMN_SVK, SVK]]
const COLUMN_OPT_BTN = [COLUMN_SVK]
const IQ_FL_NAME = 'IQ-файл'
const INTERFER_NAMES: Dictionary = {
'off' : null,
'ПСП + ФМ-2' : null,
'Линейная ЧМ' : null,
IQ_FL_NAME : ['SRNGPS.pcm',
'MCHM1.pcm',
'PDM2_20.pcm',
'PDM4_20.pcm',
'PDM4S_5.pcm',
'FM_5.pcm',
'K1.pcm',
'OZP1.pcm',
'SVI1_LIT2.pcm',
'SVI1_LIT3.pcm',
'SVM2_LIT2.pcm',
'SVM2_LIT3.pcm',] }
# Помеха
class Interfer:
# параметры цели, второе значение, разрешение отправки.
var get_data: Dictionary = {
'fpga_ver ': '',
'brd_ver': '',
@@ -63,6 +81,7 @@ class Interfer:
'krp': '',
'powp': 0.0,
'kni': 0.0,
'nmfs': 0,
'params': {},
'get': [],
}
@@ -82,6 +101,7 @@ class Interfer:
new_row.append(str(options['kni']))
new_row.append(get_val('freq'))
new_row.append(get_val('width'))
new_row.append(str(options['nmfs']))
return new_row
func get_val(val):
@@ -92,7 +112,7 @@ class Interfer:
func update_interfer(data: Dictionary):
options.merge(data, true)
options['nmfs'] = int(options['nmfs'])
func set_interfer(data):
if interfers.has(data['ispp']):