Доработка обработки температуры от яу-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

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