From a1bf7d1081faed70b26ffc5617c3dc9e2d8963d7 Mon Sep 17 00:00:00 2001 From: Maxim Date: Mon, 25 Aug 2025 15:10:52 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=BE=D0=B1=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=BA?= =?UTF-8?q?=D0=B8=20=D1=82=D0=B5=D0=BC=D0=BF=D0=B5=D1=80=D0=B0=D1=82=D1=83?= =?UTF-8?q?=D1=80=D1=8B=20=D0=BE=D1=82=20=D1=8F=D1=83-07=D0=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scenes/pribor-prd-k/pribor-prd-k.gd | 6 +-- scenes/pribor-prd-n/pribor-prd-n.gd | 4 +- scenes/pribor-prd-v/pribor-prd-v.gd | 4 +- scripts/pribor-prd.gd | 71 ++++++++++++++--------------- 4 files changed, 42 insertions(+), 43 deletions(-) diff --git a/scenes/pribor-prd-k/pribor-prd-k.gd b/scenes/pribor-prd-k/pribor-prd-k.gd index 9d7fbf5..a475211 100644 --- a/scenes/pribor-prd-k/pribor-prd-k.gd +++ b/scenes/pribor-prd-k/pribor-prd-k.gd @@ -60,6 +60,7 @@ var ug_work_3: int = 0 var mashine_timer: Timer = Timer.new() var prd_k_module: Object var unit_prd_k: Object +var control_prd_k: Object # Результаты контроля var control_results_k: Dictionary = { 'block_ip': false, # Проверка касет П1 и ИП МА2000 @@ -74,8 +75,7 @@ var control_results_k: Dictionary = { 'fs_7': false, } -var test = preload('res://scripts/pribor-prd.gd') -var control_prd_k: Object +var test_control_k = preload('res://scripts/pribor-prd.gd') func _ready() -> void: @@ -111,7 +111,7 @@ func initialize_connections() -> void: 'control_results': control_results_k, 'current_litera': start_litera, } - control_prd_k = test.TestPRD.new(init_data) + control_prd_k = test_control_k.TestPRD.new(init_data) add_child(control_prd_k) control_prd_k.connect('control_is_over', Callable(self, 'on_control_result')) diff --git a/scenes/pribor-prd-n/pribor-prd-n.gd b/scenes/pribor-prd-n/pribor-prd-n.gd index b0449b8..7148e3c 100644 --- a/scenes/pribor-prd-n/pribor-prd-n.gd +++ b/scenes/pribor-prd-n/pribor-prd-n.gd @@ -67,7 +67,7 @@ var control_results_n: Dictionary = { 'fs_2': false, 'fs_3': false, } -var test = preload('res://scripts/pribor-prd.gd') +var test_control_n = preload('res://scripts/pribor-prd.gd') ################################ @@ -104,7 +104,7 @@ func initialize_connections() -> void: 'control_results': control_results_n, 'current_litera': start_litera, } - control_prd_n = test.TestPRD.new(init_data) + control_prd_n = test_control_n.TestPRD.new(init_data) add_child(control_prd_n) control_prd_n.connect('control_is_over', Callable(self, 'on_control_result')) diff --git a/scenes/pribor-prd-v/pribor-prd-v.gd b/scenes/pribor-prd-v/pribor-prd-v.gd index 15df600..d5a123f 100644 --- a/scenes/pribor-prd-v/pribor-prd-v.gd +++ b/scenes/pribor-prd-v/pribor-prd-v.gd @@ -67,7 +67,7 @@ var control_results_v: Dictionary = { 'fs_4': false, 'fs_5': false, } -var test = preload('res://scripts/pribor-prd.gd') +var test_control_v = preload('res://scripts/pribor-prd.gd') func on_state_mashine() -> void: @@ -103,7 +103,7 @@ func initialize_connections() -> void: 'control_results': control_results_v, 'current_litera': start_litera, } - control_prd_v = test.TestPRD.new(init_data) + control_prd_v = test_control_v.TestPRD.new(init_data) add_child(control_prd_v) control_prd_v.connect('control_is_over', Callable(self, 'on_control_result')) diff --git a/scripts/pribor-prd.gd b/scripts/pribor-prd.gd index 1ef7526..4c165f1 100644 --- a/scripts/pribor-prd.gd +++ b/scripts/pribor-prd.gd @@ -5,7 +5,6 @@ class TestPRD extends Node: const RAY_25:= 'RAY_25' const RAY_35:= 'RAY_35' const RAY_45:= 'RAY_45' - enum STATE_VAL { NONE = 0, GOOD = 1, ERROR = 2 } enum STATE_MASHINE { INIT, FS_TURN_ON, @@ -103,7 +102,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) + check_temperature_um(status, power_amplify) _process_dkm_status(status) if current_litera != 0: var tek_litera: Dictionary = power_result[current_litera] @@ -119,7 +118,7 @@ class TestPRD extends Node: if fs_key.is_empty(): return - var fs_result := {fs_key: STATE_VAL.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] @@ -443,39 +442,39 @@ class TestPRD extends Node: ## Проверка температур УМ от УКП - #static func check_temperature_um(status_prd: PackedByteArray, power_amplifier: Array) -> void: - #const Constants: Dictionary = { - #'CONST_MIN_TEMP': -25, - #'MAXIMUM_CODE_ADC': 3796, - #'MINIMUM_CODE_AD': 2660, - #'TEMPERATURE_UKP_1': 47, - #'TEMPERATURE_UKP_2': 79, - #} - #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 -# - #if ukp1_online: - #var tmp_1: int - #var temperature_ukp_1: int - #for i_temp in 6: - #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 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 ukp2_online: - #for i_temp in 6: - #var temperature_ukp_2: int = status_prd.decode_u16(Constants.TEMPERATURE_UKP_2 + 2 * i_temp) - #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 - #else: - #power_amplifier[i_temp+6].value1 = tmp_2 + static func check_temperature_um(status_prd: PackedByteArray, power_amplifier: Array) -> void: + const Constants: Dictionary = { + 'CONST_MIN_TEMP': -25, + 'MAXIMUM_CODE_ADC': 3796, + 'MINIMUM_CODE_AD': 2660, + 'TEMPERATURE_UKP_1': 47, + 'TEMPERATURE_UKP_2': 79, + } + 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 + + if ukp1_online: + var tmp_1: int + var temperature_ukp_1: int + for i_temp in 6: + 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 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 ukp2_online: + for i_temp in 6: + var temperature_ukp_2: int = status_prd.decode_u16(Constants.TEMPERATURE_UKP_2 + 2 * i_temp) + 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 + else: + power_amplifier[i_temp+6].value1 = tmp_2 ## Проверка ДКМ