Отладка в КЭН 11 контроля прд
This commit is contained in:
@@ -15,7 +15,7 @@ const constants_v = {
|
||||
'RAY_DOU_NUM': 0x3,
|
||||
'ATT_UM_4': 0x7,
|
||||
'ATT_UM_5': 0x7,
|
||||
'POWER_UM': 70,
|
||||
'POWER_UM': 75,
|
||||
'TIMER_DELAY': 5.0,
|
||||
'STATE_MASHINE_TIMER': 0.3,
|
||||
}
|
||||
|
||||
@@ -35,6 +35,8 @@ signal pressed(control: PanelContainer)
|
||||
if not is_inside_tree():
|
||||
return
|
||||
$margin/vbox/grid1/level7.value = v
|
||||
$margin/vbox/grid1/level7.tint_progress = Color.RED if v > 70 else Color.WHITE
|
||||
|
||||
|
||||
|
||||
@export var min_value0: float:
|
||||
@@ -357,8 +359,9 @@ size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
tooltip_text = "
|
||||
Текущее: 0.00
|
||||
Диапазон: 0.00…100.00"
|
||||
Диапазон: 0.00…1400.00"
|
||||
mouse_filter = 0
|
||||
max_value = 1400.0
|
||||
fill_mode = 3
|
||||
nine_patch_stretch = true
|
||||
stretch_margin_left = 8
|
||||
@@ -376,8 +379,9 @@ size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
tooltip_text = "
|
||||
Текущее: 0.00
|
||||
Диапазон: 0.00…100.00"
|
||||
Диапазон: 0.00…1400.00"
|
||||
mouse_filter = 0
|
||||
max_value = 1400.0
|
||||
fill_mode = 3
|
||||
nine_patch_stretch = true
|
||||
stretch_margin_left = 8
|
||||
@@ -395,8 +399,9 @@ size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
tooltip_text = "
|
||||
Текущее: 0.00
|
||||
Диапазон: 0.00…100.00"
|
||||
Диапазон: 0.00…1400.00"
|
||||
mouse_filter = 0
|
||||
max_value = 1400.0
|
||||
fill_mode = 3
|
||||
nine_patch_stretch = true
|
||||
stretch_margin_left = 8
|
||||
@@ -414,8 +419,9 @@ size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
tooltip_text = "
|
||||
Текущее: 0.00
|
||||
Диапазон: 0.00…100.00"
|
||||
Диапазон: 0.00…1400.00"
|
||||
mouse_filter = 0
|
||||
max_value = 1400.0
|
||||
fill_mode = 3
|
||||
nine_patch_stretch = true
|
||||
stretch_margin_left = 8
|
||||
@@ -433,8 +439,9 @@ size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
tooltip_text = "
|
||||
Текущее: 0.00
|
||||
Диапазон: 0.00…100.00"
|
||||
Диапазон: 0.00…1400.00"
|
||||
mouse_filter = 0
|
||||
max_value = 1400.0
|
||||
fill_mode = 3
|
||||
nine_patch_stretch = true
|
||||
stretch_margin_left = 8
|
||||
@@ -452,8 +459,9 @@ size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
tooltip_text = "
|
||||
Текущее: 0.00
|
||||
Диапазон: 0.00…100.00"
|
||||
Диапазон: 0.00…1400.00"
|
||||
mouse_filter = 0
|
||||
max_value = 1400.0
|
||||
fill_mode = 3
|
||||
nine_patch_stretch = true
|
||||
stretch_margin_left = 8
|
||||
|
||||
@@ -111,6 +111,7 @@ metadata/unit_name = ["уарэп-эмс"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_uf"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 15.0
|
||||
offset_top = -34.0
|
||||
@@ -177,6 +178,7 @@ patch_margin_right = 16
|
||||
patch_margin_bottom = 16
|
||||
|
||||
[node name="label" type="Label" parent="pribor_rtr"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 12.0
|
||||
offset_top = -54.0
|
||||
@@ -230,6 +232,7 @@ patch_margin_right = 16
|
||||
patch_margin_bottom = 16
|
||||
|
||||
[node name="label" type="Label" parent="pribor_afsp_1"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 165.0
|
||||
offset_top = -245.0
|
||||
@@ -244,7 +247,7 @@ vertical_alignment = 1
|
||||
modulate = Color(0.498039, 0.498039, 0.498039, 1)
|
||||
light_mask = 3
|
||||
position = Vector2(415, -40)
|
||||
scale = Vector2(3.0, 3.0)
|
||||
scale = Vector2(3, 3)
|
||||
sprite_frames = SubResource("SpriteFrames_foasq")
|
||||
frame_progress = 0.72355
|
||||
script = ExtResource("11_u7tym")
|
||||
@@ -285,6 +288,7 @@ patch_margin_right = 16
|
||||
patch_margin_bottom = 16
|
||||
|
||||
[node name="label" type="Label" parent="pribor_afsp_2"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 200.0
|
||||
offset_top = -240.0
|
||||
@@ -299,7 +303,7 @@ vertical_alignment = 1
|
||||
modulate = Color(0.498039, 0.498039, 0.498039, 1)
|
||||
light_mask = 3
|
||||
position = Vector2(425, -40)
|
||||
scale = Vector2(3.0, 3.0)
|
||||
scale = Vector2(3, 3)
|
||||
sprite_frames = SubResource("SpriteFrames_foasq")
|
||||
frame_progress = 0.72355
|
||||
script = ExtResource("11_u7tym")
|
||||
@@ -323,6 +327,7 @@ metadata/unit_name = ["уарэп-щ3", "уарэп-спт25-1", "уарэп-с
|
||||
metadata/online_proc = "online_change_arr"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_uyep"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 26.8566
|
||||
offset_top = -38.3276
|
||||
@@ -376,6 +381,7 @@ metadata/unit_name = ["уарэп-яу07-2в"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_v_2"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 14.0
|
||||
offset_top = -38.0
|
||||
@@ -429,6 +435,7 @@ metadata/unit_name = ["уарэп-яу07-2н"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_n_2"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 15.0
|
||||
offset_top = -38.0
|
||||
@@ -484,6 +491,7 @@ metadata/unit_name = ["уарэп-яу07-2к"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_k_2"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 17.0
|
||||
offset_top = -38.0
|
||||
@@ -537,6 +545,7 @@ metadata/unit_name = ["уарэп-яу07-3в"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_v_3"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 9.0
|
||||
offset_top = -38.0
|
||||
@@ -590,6 +599,7 @@ metadata/unit_name = ["уарэп-яу07-3н"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_n_3"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 8.0
|
||||
offset_top = -38.0
|
||||
@@ -643,6 +653,7 @@ metadata/unit_name = ["уарэп-яу07-3к"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_k_3"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 9.0
|
||||
offset_top = -38.0
|
||||
@@ -696,6 +707,7 @@ metadata/unit_name = ["уарэп-яу07-1в"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_v_1"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 8.0
|
||||
offset_top = -38.0
|
||||
@@ -749,6 +761,7 @@ metadata/online_proc = "on_line_changed"
|
||||
metadata/unit_name = ["уарэп-яу07-1н"]
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_n_1"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 8.0
|
||||
offset_top = -38.0
|
||||
@@ -802,6 +815,7 @@ metadata/unit_name = ["уарэп-яу07-1к"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_k_1"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 9.0
|
||||
offset_top = -38.0
|
||||
@@ -854,6 +868,7 @@ metadata/unit_name = ["уарэп-яу07-4в"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_v_4"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 17.0
|
||||
offset_top = -38.0
|
||||
@@ -906,6 +921,7 @@ metadata/unit_name = ["уарэп-яу07-4н"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_n_4"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 14.0
|
||||
offset_top = -38.0
|
||||
@@ -958,6 +974,7 @@ metadata/unit_name = ["уарэп-яу07-4к"]
|
||||
metadata/online_proc = "on_line_changed"
|
||||
|
||||
[node name="label" type="Label" parent="pribor_prd_k_4"]
|
||||
self_modulate = Color(0, 0, 0, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 17.0
|
||||
offset_top = -38.0
|
||||
|
||||
@@ -118,6 +118,7 @@ class Fs:
|
||||
var pow_caps_rx: float = 0.0 ## Мощность излучения принятая от КАПС РПБ
|
||||
var freq_caps_rx: float = 0.0 ## Частота принятая от КАПС РПБ
|
||||
var width_caps_rx: float = 0.0 ## Ширина полосы принятая от КАПС РПБ
|
||||
var msvk: Array
|
||||
|
||||
signal update_modulation(index)
|
||||
|
||||
@@ -352,33 +353,31 @@ func check_dir():
|
||||
|
||||
## Производит приём состояния модулей ФС.
|
||||
func on_data_capsrpb_received(unit0: capsrpb.CapsRpb):
|
||||
if not unit0.json_dic.has('ts'): return
|
||||
if not unit0.json_dic['ts'] == 7 and not unit0.json_dic['ts'] == 5: return
|
||||
if unit0.json_dic.has('msvk'):
|
||||
for nfs in fs_caps_id:
|
||||
fs_dict[fs_caps_id[nfs]].msvk = unit0.json_dic['msvk'] if unit0.json_dic['msvk'].size()>0 else []
|
||||
if not unit0.json_dic.has('ts'): return
|
||||
if not unit0.json_dic['ts'] == 7: return
|
||||
if not unit0.json_dic.has('msfs'): return
|
||||
|
||||
var msfs = unit0.json_dic['msfs']
|
||||
for fs in msfs:
|
||||
if fs is Dictionary:
|
||||
if not fs.has('nmfs'):
|
||||
return
|
||||
var nmfs = int(fs['nmfs'])
|
||||
if not fs_caps_id.has(nmfs):
|
||||
continue
|
||||
var ii = fs_caps_id[nmfs]
|
||||
if not fs_dict.has(ii):
|
||||
continue
|
||||
var fs_module = fs_dict[ii]
|
||||
if fs.has('isg'):
|
||||
fs_module.isg = int(fs['isg'])
|
||||
if fs.has('pow'):
|
||||
fs_module.pow_caps_rx = int(fs['pow'])
|
||||
if fs.has('freq'):
|
||||
fs_module.freq_caps_rx = int(fs['freq'])
|
||||
if fs.has('width'):
|
||||
fs_module.width_caps_rx = int(fs['width'])
|
||||
|
||||
if unit0.json_dic.has('msfs'):
|
||||
var msfs = unit0.json_dic['msfs']
|
||||
for fs in msfs:
|
||||
if fs is Dictionary:
|
||||
if not fs.has('nmfs'):
|
||||
return
|
||||
var nmfs = int(fs['nmfs'])
|
||||
if not fs_caps_id.has(nmfs):
|
||||
continue
|
||||
var ii = fs_caps_id[nmfs]
|
||||
if not fs_dict.has(ii):
|
||||
continue
|
||||
var fs_module = fs_dict[ii]
|
||||
if fs.has('isg'):
|
||||
fs_module.isg = int(fs['isg'])
|
||||
if fs.has('pow'):
|
||||
fs_module.pow_caps_rx = int(fs['pow'])
|
||||
if fs.has('freq'):
|
||||
fs_module.freq_caps_rx = int(fs['freq'])
|
||||
if fs.has('width'):
|
||||
fs_module.width_caps_rx = int(fs['width'])
|
||||
signaller.emit_signal('fs_update_state', fs_dict)
|
||||
|
||||
|
||||
|
||||
@@ -103,7 +103,7 @@ class TestPRD extends Node:
|
||||
var status: PackedByteArray = unit_pribor.status
|
||||
block_kasseta_y5_config = check_block_kasseta_y5(status, block_kasseta_y5_config)
|
||||
block_ip_config = check_block_ip(status, block_ip_config)
|
||||
check_temperature_um(status, power_amplify)
|
||||
control_results.temperature = check_temperature_um(status, power_amplify)
|
||||
_process_dkm_status(status)
|
||||
if current_litera != 0:
|
||||
var tek_litera: Dictionary = power_result[current_litera]
|
||||
@@ -119,15 +119,9 @@ class TestPRD extends Node:
|
||||
if fs_key.is_empty():
|
||||
return
|
||||
|
||||
var fs_result := {fs_key: 0, 'fs_modulation': 'none'}
|
||||
var fs_result := {fs_key: 0}
|
||||
fs_result = on_fs_state(packet_type_7, fs_mapping, fs_result)
|
||||
control_results[fs_key] = fs_result[fs_key]
|
||||
if fs_result.fs_modulation and not flag_fs_turn_on:
|
||||
print_debug('Помеха "Включено"')
|
||||
flag_fs_turn_on = true
|
||||
if not fs_result.fs_modulation and not flag_fs_turn_off:
|
||||
print('Помеха "Откючено"')
|
||||
flag_fs_turn_off = true
|
||||
|
||||
|
||||
##
|
||||
@@ -301,9 +295,20 @@ class TestPRD extends Node:
|
||||
_determine_self_name()
|
||||
var fs_mapping = _create_fs_mapping(self_name)
|
||||
signaller.conn(signaller.fs_update_state, Callable(self, 'on_fs_update_state').bind(fs_mapping))
|
||||
var unit_caps = network.get_unit_instance('уарэп-капсрпб')
|
||||
unit_caps.connect('data_received', Callable(self, 'on_interfer_status'))
|
||||
unit_prd.connect('data_received', Callable(self, 'on_data_received'))
|
||||
|
||||
|
||||
func on_interfer_status(packet_status: Object) -> void:
|
||||
if packet_status.json_dic.msvk.size() > 0 and not flag_fs_turn_on:
|
||||
flag_fs_turn_on = true
|
||||
print_debug('Излучение')
|
||||
elif packet_status.json_dic.msvk.size() == 0 and not flag_fs_turn_off:
|
||||
flag_fs_turn_off = true
|
||||
print_debug('Все тихо')
|
||||
|
||||
|
||||
func _determine_self_name() -> void:
|
||||
var current_unit = unit_prd.name
|
||||
var parts = current_unit.split('-')
|
||||
@@ -447,7 +452,7 @@ class TestPRD extends Node:
|
||||
|
||||
|
||||
## Проверка температур УМ от УКП
|
||||
static func check_temperature_um(status_prd: PackedByteArray, power_amplifier: Array) -> void:
|
||||
static func check_temperature_um(status_prd: PackedByteArray, power_amplifier: Array) -> bool:
|
||||
const Constants: Dictionary = {
|
||||
'CONST_MIN_TEMP': -25,
|
||||
'MAXIMUM_CODE_ADC': 3796,
|
||||
@@ -458,6 +463,7 @@ class TestPRD extends Node:
|
||||
const TEMP: float = 115.0 / (Constants.MAXIMUM_CODE_ADC - Constants.MINIMUM_CODE_AD)
|
||||
var ukp1_online: int = (status_prd[0] >> 2) & 1
|
||||
var ukp2_online = (status_prd[0] >> 3) & 1
|
||||
var all_temp_is_ok: bool = true
|
||||
|
||||
if ukp1_online:
|
||||
var tmp_1: int
|
||||
@@ -466,11 +472,15 @@ class TestPRD extends Node:
|
||||
temperature_ukp_1 = status_prd.decode_u16(Constants.TEMPERATURE_UKP_1 + 2 * i_temp)
|
||||
tmp_1 = round(Constants.CONST_MIN_TEMP + (Constants.MAXIMUM_CODE_ADC - temperature_ukp_1) * TEMP + 3)
|
||||
power_amplifier[i_temp].value1 = tmp_1
|
||||
if tmp_1>70:
|
||||
all_temp_is_ok = false
|
||||
|
||||
if power_amplifier.size() > 12: # Темпуратура от УМ литеры 1
|
||||
temperature_ukp_1 = status_prd.decode_u16(Constants.TEMPERATURE_UKP_1 + 2 * 7)
|
||||
tmp_1 = round(Constants.CONST_MIN_TEMP + (Constants.MAXIMUM_CODE_ADC - temperature_ukp_1) * TEMP + 3)
|
||||
power_amplifier[6].value1 = tmp_1
|
||||
if tmp_1>70:
|
||||
all_temp_is_ok = false
|
||||
|
||||
if ukp2_online:
|
||||
for i_temp in 6:
|
||||
@@ -478,9 +488,13 @@ class TestPRD extends Node:
|
||||
var tmp_2: int = round(Constants.CONST_MIN_TEMP + (Constants.MAXIMUM_CODE_ADC - temperature_ukp_2) * TEMP + 3)
|
||||
if power_amplifier.size() > 12:
|
||||
power_amplifier[i_temp+7].value1 = tmp_2
|
||||
if tmp_2>70:
|
||||
all_temp_is_ok = false
|
||||
else:
|
||||
power_amplifier[i_temp+6].value1 = tmp_2
|
||||
|
||||
if tmp_2>70:
|
||||
all_temp_is_ok = false
|
||||
return all_temp_is_ok
|
||||
|
||||
## Проверка ДКМ
|
||||
static func check_dkm(status_prd: PackedByteArray, bit_dkm: int) -> bool:
|
||||
@@ -528,7 +542,6 @@ class TestPRD extends Node:
|
||||
var rule: Dictionary = FS_RULES[rule_key]
|
||||
if _should_apply_rule(fs_num, rule, updated_results):
|
||||
updated_results[rule.key] = fs_data.isg
|
||||
updated_results['fs_modulation'] = fs_data.msvk.size() > 0
|
||||
break
|
||||
return updated_results
|
||||
|
||||
|
||||
Reference in New Issue
Block a user