отлажен контроль прд-в с включением/отключением фс

This commit is contained in:
Maxim Name
2025-07-03 19:35:09 +03:00
parent 318b7804cc
commit 6a26e25619
2 changed files with 14 additions and 26 deletions

View File

@@ -23,9 +23,8 @@ enum STATE_VAL {
GOOD = 1,
ERROR = 2 }
var timer_03: Timer = Timer.new()
var fl_fs_1: bool = false
var fl_fs_2: bool = false
var control_timer: Timer = Timer.new()
var flag_control: bool = false
func _ready() -> void:
@@ -36,8 +35,12 @@ func _ready() -> void:
unit_prd.connect('data_received', Callable(self, 'on_data_received'))
unit_prd.connect('line_changed', Callable(self, 'on_line_changed'))
set_default_state()
self.add_child(timer_03)
timer_03.connect('timeout', Callable(self, 'on_timer_03'))
self.add_child(control_timer)
control_timer.connect('timeout', Callable(self, 'on_stop_control'))
_on_control_fs(true)
control_timer.one_shot = true
control_timer.wait_time = 2.0
control_timer.start()
func set_default_state() -> void:
@@ -153,7 +156,7 @@ func _process_ems_data(status: PackedByteArray) -> void:
func _process_ukp_power(status: PackedByteArray) -> void:
#var in_blank: int = status.decode_u16(IN_BLANK_PRD)
## Мощность УМ от УКП 1
if fl_fs_1:
if flag_control:
check_dkm(status, bit_dkm_3)
## Мощность УМ от УКП 1
@@ -177,8 +180,7 @@ func _process_ukp_power(status: PackedByteArray) -> void:
power_amplifier[i].state = STATE_VAL.GOOD if power_array_1[i] > 40 else STATE_VAL.ERROR
count_packet_1 += 1
## Мощность УМ от УКП 2
if fl_fs_2:
## Мощность УМ от УКП 2
check_dkm(status, bit_dkm_4)
## Мощность УМ от УКП 2
@@ -199,7 +201,6 @@ func _process_ukp_power(status: PackedByteArray) -> void:
if arr_power_ukp_2[i] > power_array_2[i]:
power_array_2[i] = arr_power_ukp_2[i]
var power_amplifier: Array = get_tree().get_nodes_in_group('power_amplifier')
for i in 6:
power_amplifier[i+6].value1 = '%d' % power_array_2[i]
power_amplifier[i+6].state = STATE_VAL.GOOD if power_array_2[i] > 40 else STATE_VAL.ERROR
@@ -211,19 +212,19 @@ func _on_control_fs(mode: bool) -> void:
var interfer_name: String
var fs_arr: Array
if mode:
flag_control = true
interfer_name = 'srnm2'
fs_arr = [[90.0, 2450.0, 1500.0, 23]]
else:
flag_control = false
interfer_name = 'off'
fs_arr = [[90.0, 2450.0, 1500.0, 23]]
print('interfer_init: ', interfer_name, fs_arr)
signaller.emit_signal('interfer_init', interfer_name, fs_arr)
func on_timer_03() -> void:
func on_stop_control() -> void:
_on_control_fs(false)
fl_fs_1 = false
fl_fs_2 = false
print('stop timer')
@@ -233,17 +234,8 @@ func on_fs_update_state(packet_type_7: Dictionary):
for fs in packet_type_7:
if fs == 12 and last_part == '':
$kasseta_FS_VD/ref_A3.state = STATE_VAL.GOOD if packet_type_7[fs].isg == 1 else STATE_VAL.ERROR if packet_type_7[fs].isg == 0 else STATE_VAL.NONE
if packet_type_7[fs].isg == 1:
if not fl_fs_1:
timer_03.one_shot = true
timer_03.wait_time = 0.5
_on_control_fs(true)
timer_03.start()
fl_fs_1 = true
if fs == 13 and last_part == '':
$kasseta_FS_VD/ref_A3.state = STATE_VAL.GOOD if packet_type_7[fs].isg == 1 else STATE_VAL.ERROR if packet_type_7[fs].isg == 0 else STATE_VAL.NONE
if packet_type_7[fs].isg == 1:
fl_fs_1 = true
if fs == 14 and last_part == '':
$kasseta_FS_VD/ref_A3.state = STATE_VAL.GOOD if packet_type_7[fs].isg == 1 else STATE_VAL.ERROR if packet_type_7[fs].isg == 0 else STATE_VAL.NONE
if fs == 15 and last_part == '':
@@ -251,8 +243,6 @@ func on_fs_update_state(packet_type_7: Dictionary):
if fs == 16 and last_part == '':
$kasseta_FS_VD/ref_A4.state = STATE_VAL.GOOD if packet_type_7[fs].isg == 1 else STATE_VAL.ERROR if packet_type_7[fs].isg == 0 else STATE_VAL.NONE
if packet_type_7[fs].isg == 1:
fl_fs_2 = true
if fs == 17 and last_part == '':
$kasseta_FS_VD/ref_A4.state = STATE_VAL.GOOD if packet_type_7[fs].isg == 1 else STATE_VAL.ERROR if packet_type_7[fs].isg == 0 else STATE_VAL.NONE
if fs == 18 and last_part == '':

View File

@@ -56,13 +56,11 @@ class Interfer:
data_to_json['ss'] = msg_num
data_to_json['ispp'] = ispp
data_to_json['krp'] = krp
if get_params.size() < 1:
get_params.append('soc_temp')
data_to_json['get'] = get_params
if krp != INTERFER_OFF:
data_to_json['kni'] = kni
data_to_json['powp'] = powp # TODO: Необходимо добавить управление мощностью
data_to_json['params'] = params
data_to_json['get'] = get_params
var pac = JSON.stringify(data_to_json).to_utf8_buffer()
return pac