Доработка interfer_resized и отправка по таймеру магическое число в порт

This commit is contained in:
Maxim
2025-09-01 19:37:45 +03:00
parent b5f5496d55
commit b444bb4d5e
4 changed files with 15 additions and 17 deletions

View File

@@ -68,8 +68,9 @@ class TestPRD extends Node:
var control_timer: Timer = Timer.new()
var ems_6666_timer: Timer = Timer.new()
signal control_is_over(control_results, power_result)
var flag_fs_turn_on: bool = false
var flag_fs_turn_off: bool = false
var ecms: Dictionary ## Словарь помеховых воздействий
## Инициализация аргуметнов
func _init(init_data: Dictionary) -> void:
@@ -133,7 +134,7 @@ class TestPRD extends Node:
_handle_fs_turn_on_state()
state = STATE_MASHINE.FS_WORK
STATE_MASHINE.FS_WORK:
if flag_fs_turn_on:
if ecms.size():
_handle_fs_work_state()
STATE_MASHINE.CHEK_KASSETA_Y5:
if block_kasseta_y5_config['yau07']:
@@ -205,7 +206,7 @@ class TestPRD extends Node:
func _handle_init_state() -> void:
control_label.text = 'Выполняется инициализация ФС-%s' % current_litera
if current_litera in [1, 2, 3, 4, 5, 6, 7]:
if flag_fs_turn_off:
if not ecms.size():
state = STATE_MASHINE.FS_TURN_ON
else:
control_results = on_control_result(block_ip_config, control_results)
@@ -268,7 +269,6 @@ class TestPRD extends Node:
func _handle_fs_turn_off_state() -> void:
control_label.text = 'Выполняется отключение ФС-%s' % current_litera
flag_fs_turn_off = false
manage_fs(false, self_name, pribor_config, fs_parameters, current_litera, constants.POWER_UM)
@@ -295,18 +295,12 @@ 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'))
interfer.connect('interfer_resized', Callable(self, 'on_interfer_resized'))
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 on_interfer_resized(ecms_dic: Dictionary) -> void:
ecms = ecms_dic
func _determine_self_name() -> void: