Доработка обработки температуры от яу-07б

This commit is contained in:
Maxim
2025-08-25 15:10:52 +03:00
parent 955baba574
commit a1bf7d1081
4 changed files with 42 additions and 43 deletions

View File

@@ -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'))

View File

@@ -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'))

View File

@@ -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'))

View File

@@ -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
## Проверка ДКМ