diff --git a/scripts/pribor-prd.gd b/scripts/pribor-prd.gd index 9b22c767..a2bf72fb 100644 --- a/scripts/pribor-prd.gd +++ b/scripts/pribor-prd.gd @@ -42,7 +42,6 @@ enum STATE_MACHINE { INIT, FS_TURN_ON, FS_WORK, - WRITE_ISA, READ_ISA, CHEK_KASSETA_Y5, CHEK_BLOCK_IP, @@ -53,6 +52,7 @@ enum STATE_MACHINE { UG_SET_RAY_3, UG_SET_RAY_4, UG_SET_RAY_5, + UG_SET_RAY_CTRL, IN_EMS_RUN, IN_EMS_STOP, FS_TURN_OFF, @@ -104,6 +104,7 @@ var power_for_litera: Dictionary var self_name: String var state: int = STATE_MACHINE.INIT var current_litera: int +var count_packets_power: int = 0 ## Флаги состояния системы var flag_write_isa: bool = false @@ -248,6 +249,7 @@ func _initialize_ray_mapping() -> void: STATE_MACHINE.UG_SET_RAY_3: 'RAY_25', STATE_MACHINE.UG_SET_RAY_4: 'RAY_35', STATE_MACHINE.UG_SET_RAY_5: 'RAY_45', + STATE_MACHINE.UG_SET_RAY_CTRL: 'RAY_CTRL', } @@ -264,7 +266,6 @@ func _initialize_ray_state_enums() -> void: func _process(_delta: float) -> void: pass -var count_packets_power: int = 0 ## Обработка данных от ЯУ-07 func on_data_received(unit_pribor: Object) -> void: @@ -291,7 +292,9 @@ func on_data_received(unit_pribor: Object) -> void: if current_litera != 0: var tek_litera: Dictionary = power_for_litera[current_litera] var interes = _get_ray_key(state) - if interes != '': + if interes == 'RAY_CTRL': + count_packets_power += 1 + elif interes != '': tek_litera[_get_ray_key(state)] = power_um_ukp(status, current_litera, tek_litera[_get_ray_key(state)]) power_for_litera[current_litera] = tek_litera count_packets_power += 1 @@ -351,8 +354,8 @@ func state_control_machine() -> void: STATE_MACHINE.FS_WORK: _handle_fs_work_state() STATE_MACHINE.CHEK_KASSETA_Y5: _handle_check_kasseta_state() # Проверка Кассеты У5 STATE_MACHINE.CHEK_BLOCK_IP: _handle_check_block_ip_state() # Проверка ИП - STATE_MACHINE.WRITE_ISA: _handle_write_isa_state() STATE_MACHINE.READ_ISA: _handle_read_isa_state() + STATE_MACHINE.UG_SET_RAY_CTRL: _handle_ray_operation(6) STATE_MACHINE.UG_SET_RAY: _handle_ray_operation() # Режим чтения STATE_MACHINE.UG_SET_RAY_0: _handle_ray_operation(0) STATE_MACHINE.UG_SET_RAY_1: _handle_ray_operation(1) @@ -459,16 +462,10 @@ func _handle_check_block_ip_state() -> void: if not block_ip_config[ip][1]: block_ip = false if block_ip: - state = STATE_MACHINE.WRITE_ISA + state = STATE_MACHINE.UG_SET_RAY_CTRL elif flag_only_fs: state = STATE_MACHINE.IN_EMS_STOP -## Обработка состояния WRITE_ISA - запись в УГ -func _handle_write_isa_state() -> void: - if not flag_write_isa: - _handle_ug_set_state(0x6) - state = STATE_MACHINE.READ_ISA - ## Обработка состояния READ_ISA - чтение из УГ func _handle_read_isa_state() -> void: @@ -657,7 +654,7 @@ func progressbar_status() -> void: base_progress = PROGRESS_FS_WORK STATE_MACHINE.CHEK_KASSETA_Y5: base_progress = PROGRESS_CHECK_KASSETA - STATE_MACHINE.WRITE_ISA: + STATE_MACHINE.UG_SET_RAY_CTRL: base_progress = PROGRESS_WRITE_ISA STATE_MACHINE.READ_ISA: base_progress = PROGRESS_READ_ISA