Доработка отображения мощностей и конфертацию json парсера
This commit is contained in:
@@ -80,9 +80,9 @@ static func power_fill(pow_dic: Dictionary, fs_result: Dictionary, power_amplifi
|
|||||||
if pow_dic[powamp_meta].size() < 6:
|
if pow_dic[powamp_meta].size() < 6:
|
||||||
status = STATE_VAL.ERROR
|
status = STATE_VAL.ERROR
|
||||||
else:
|
else:
|
||||||
if powamp_meta == 'um_7' and not fs_result.fs_1: return
|
if powamp_meta == 'um_8' and not fs_result.fs_1: return
|
||||||
if powamp_meta in ['um_1', 'um_2', 'um_3', 'um_4', 'um_5', 'um_6'] and not fs_result.fs_6: return
|
if powamp_meta in ['um_1', 'um_2', 'um_3', 'um_4', 'um_5', 'um_6'] and not fs_result.fs_6: return
|
||||||
if powamp_meta in ['um_8', 'um_9', 'um_10', 'um_11', 'um_12', 'um_13'] and not fs_result.fs_7: return
|
if powamp_meta in ['um_9', 'um_10', 'um_11', 'um_12', 'um_13', 'um_14'] and not fs_result.fs_7: return
|
||||||
i_powapm.value0 = pow_dic[powamp_meta]
|
i_powapm.value0 = pow_dic[powamp_meta]
|
||||||
for i_p in pow_dic[powamp_meta]:
|
for i_p in pow_dic[powamp_meta]:
|
||||||
if i_p < POWER_THRESHOLD:
|
if i_p < POWER_THRESHOLD:
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ static func power_fill(pow_dic: Dictionary, fs_result: Dictionary, power_amplifi
|
|||||||
var status = STATE_VAL.GOOD if pow_dic else STATE_VAL.NONE
|
var status = STATE_VAL.GOOD if pow_dic else STATE_VAL.NONE
|
||||||
if not pow_dic.has(powamp_meta): return
|
if not pow_dic.has(powamp_meta): return
|
||||||
if powamp_meta in ['um_1', 'um_2', 'um_3', 'um_4', 'um_5', 'um_6'] and not fs_result.fs_2: return
|
if powamp_meta in ['um_1', 'um_2', 'um_3', 'um_4', 'um_5', 'um_6'] and not fs_result.fs_2: return
|
||||||
if powamp_meta in ['um_7', 'um_8', 'um_9', 'um_10', 'um_11', 'um_12'] and not fs_result.fs_3: return
|
if powamp_meta in ['um_9', 'um_10', 'um_11', 'um_12', 'um_13', 'um_14'] and not fs_result.fs_3: return
|
||||||
i_node_powapm.value0 = pow_dic[powamp_meta]
|
i_node_powapm.value0 = pow_dic[powamp_meta]
|
||||||
for i_p in pow_dic[powamp_meta]:
|
for i_p in pow_dic[powamp_meta]:
|
||||||
if i_p < POWER_THRESHOLD:
|
if i_p < POWER_THRESHOLD:
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ static func power_fill(pow_dic: Dictionary, fs_result: Dictionary, power_amplifi
|
|||||||
status = STATE_VAL.ERROR
|
status = STATE_VAL.ERROR
|
||||||
else:
|
else:
|
||||||
if powamp_meta in ['um_1', 'um_2', 'um_3', 'um_4', 'um_5', 'um_6'] and not fs_result.fs_4: return
|
if powamp_meta in ['um_1', 'um_2', 'um_3', 'um_4', 'um_5', 'um_6'] and not fs_result.fs_4: return
|
||||||
if powamp_meta in ['um_7', 'um_8', 'um_9', 'um_10', 'um_11', 'um_12'] and not fs_result.fs_5: return
|
if powamp_meta in ['um_9', 'um_10', 'um_11', 'um_12', 'um_13', 'um_14'] and not fs_result.fs_5: return
|
||||||
i_powapm.value0 = pow_dic[powamp_meta]
|
i_powapm.value0 = pow_dic[powamp_meta]
|
||||||
for i_p in pow_dic[powamp_meta]:
|
for i_p in pow_dic[powamp_meta]:
|
||||||
if i_p < POWER_THRESHOLD:
|
if i_p < POWER_THRESHOLD:
|
||||||
|
|||||||
@@ -323,7 +323,7 @@ fname = "УМ1535А"
|
|||||||
rname = "A13"
|
rname = "A13"
|
||||||
value0_info = "Мощность, Вт"
|
value0_info = "Мощность, Вт"
|
||||||
value1_info = "Температура,°C"
|
value1_info = "Температура,°C"
|
||||||
metadata/um = "um_7"
|
metadata/um = "um_9"
|
||||||
|
|
||||||
[node name="um1535_A14" parent="." groups=["power_amplifier"] instance=ExtResource("8_4e87c")]
|
[node name="um1535_A14" parent="." groups=["power_amplifier"] instance=ExtResource("8_4e87c")]
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
@@ -335,7 +335,7 @@ fname = "УМ1535А"
|
|||||||
rname = "A14"
|
rname = "A14"
|
||||||
value0_info = "Мощность, Вт"
|
value0_info = "Мощность, Вт"
|
||||||
value1_info = "Температура,°C"
|
value1_info = "Температура,°C"
|
||||||
metadata/um = "um_8"
|
metadata/um = "um_10"
|
||||||
|
|
||||||
[node name="um1535_A15" parent="." groups=["power_amplifier"] instance=ExtResource("8_4e87c")]
|
[node name="um1535_A15" parent="." groups=["power_amplifier"] instance=ExtResource("8_4e87c")]
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
@@ -347,7 +347,7 @@ fname = "УМ1535А"
|
|||||||
rname = "A15"
|
rname = "A15"
|
||||||
value0_info = "Мощность, Вт"
|
value0_info = "Мощность, Вт"
|
||||||
value1_info = "Температура,°C"
|
value1_info = "Температура,°C"
|
||||||
metadata/um = "um_9"
|
metadata/um = "um_11"
|
||||||
|
|
||||||
[node name="um1535_A16" parent="." groups=["power_amplifier"] instance=ExtResource("8_4e87c")]
|
[node name="um1535_A16" parent="." groups=["power_amplifier"] instance=ExtResource("8_4e87c")]
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
@@ -359,7 +359,7 @@ fname = "УМ1535А"
|
|||||||
rname = "A16"
|
rname = "A16"
|
||||||
value0_info = "Мощность, Вт"
|
value0_info = "Мощность, Вт"
|
||||||
value1_info = "Температура,°C"
|
value1_info = "Температура,°C"
|
||||||
metadata/um = "um_10"
|
metadata/um = "um_12"
|
||||||
|
|
||||||
[node name="um1535_A17" parent="." groups=["power_amplifier"] instance=ExtResource("8_4e87c")]
|
[node name="um1535_A17" parent="." groups=["power_amplifier"] instance=ExtResource("8_4e87c")]
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
@@ -371,7 +371,7 @@ fname = "УМ1535А"
|
|||||||
rname = "A17"
|
rname = "A17"
|
||||||
value0_info = "Мощность, Вт"
|
value0_info = "Мощность, Вт"
|
||||||
value1_info = "Температура,°C"
|
value1_info = "Температура,°C"
|
||||||
metadata/um = "um_11"
|
metadata/um = "um_13"
|
||||||
|
|
||||||
[node name="um1535_A18" parent="." groups=["power_amplifier"] instance=ExtResource("8_4e87c")]
|
[node name="um1535_A18" parent="." groups=["power_amplifier"] instance=ExtResource("8_4e87c")]
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
@@ -383,7 +383,7 @@ fname = "УМ1535А"
|
|||||||
rname = "A18"
|
rname = "A18"
|
||||||
value0_info = "Мощность, Вт"
|
value0_info = "Мощность, Вт"
|
||||||
value1_info = "Температура,°C"
|
value1_info = "Температура,°C"
|
||||||
metadata/um = "um_12"
|
metadata/um = "um_14"
|
||||||
|
|
||||||
[node name="control_result" type="Label" parent="."]
|
[node name="control_result" type="Label" parent="."]
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
|
|||||||
@@ -1689,6 +1689,7 @@ offset_bottom = 104.0
|
|||||||
focus_mode = 0
|
focus_mode = 0
|
||||||
text = "Запуск контроля"
|
text = "Запуск контроля"
|
||||||
script = ExtResource("18_lbx5w")
|
script = ExtResource("18_lbx5w")
|
||||||
|
metadata/_edit_lock_ = true
|
||||||
|
|
||||||
[connection signal="toggled" from="pribor_prd_n_1" to="pribor_prd_n_1" method="_on_toggled"]
|
[connection signal="toggled" from="pribor_prd_n_1" to="pribor_prd_n_1" method="_on_toggled"]
|
||||||
[connection signal="toggled" from="pribor_uf" to="pribor_uf" method="_on_toggled"]
|
[connection signal="toggled" from="pribor_uf" to="pribor_uf" method="_on_toggled"]
|
||||||
|
|||||||
@@ -11,6 +11,26 @@ const RAY_35: String = "RAY_35"
|
|||||||
const RAY_45: String = "RAY_45"
|
const RAY_45: String = "RAY_45"
|
||||||
|
|
||||||
const RAY_TYPES := [RAY_m5, RAY_5, RAY_15, RAY_25, RAY_35, RAY_45]
|
const RAY_TYPES := [RAY_m5, RAY_5, RAY_15, RAY_25, RAY_35, RAY_45]
|
||||||
|
enum STATE_MACHINE {
|
||||||
|
INIT,
|
||||||
|
FS_TURN_ON,
|
||||||
|
FS_WORK,
|
||||||
|
WRITE_ISA,
|
||||||
|
READ_ISA,
|
||||||
|
CHEK_KASSETA_Y5,
|
||||||
|
UG_SET_RAY,
|
||||||
|
UG_SET_RAY_0,
|
||||||
|
UG_SET_RAY_1,
|
||||||
|
UG_SET_RAY_2,
|
||||||
|
UG_SET_RAY_3,
|
||||||
|
UG_SET_RAY_4,
|
||||||
|
UG_SET_RAY_5,
|
||||||
|
IN_EMS_RUN,
|
||||||
|
IN_EMS_STOP,
|
||||||
|
FS_TURN_OFF,
|
||||||
|
STOP_CONTROL,
|
||||||
|
AWAIT
|
||||||
|
}
|
||||||
|
|
||||||
# Загруженные конфигурации
|
# Загруженные конфигурации
|
||||||
var config_data: Dictionary
|
var config_data: Dictionary
|
||||||
@@ -18,7 +38,6 @@ var device_constants: Dictionary
|
|||||||
var base_configs: Dictionary
|
var base_configs: Dictionary
|
||||||
var device_configs: Dictionary
|
var device_configs: Dictionary
|
||||||
var data_indices: Dictionary
|
var data_indices: Dictionary
|
||||||
var state_machine_enum: Dictionary
|
|
||||||
var fs_keys: Dictionary
|
var fs_keys: Dictionary
|
||||||
var temperature_constants: Dictionary
|
var temperature_constants: Dictionary
|
||||||
var ems_input_bits_config: Dictionary
|
var ems_input_bits_config: Dictionary
|
||||||
@@ -35,7 +54,7 @@ var temperature_um: Dictionary
|
|||||||
var control_results: Dictionary
|
var control_results: Dictionary
|
||||||
var power_result: Dictionary
|
var power_result: Dictionary
|
||||||
var self_name: String
|
var self_name: String
|
||||||
var state: int = 0
|
var state: int = STATE_MACHINE.INIT
|
||||||
var current_litera: int
|
var current_litera: int
|
||||||
var flag_write_isa: bool = false
|
var flag_write_isa: bool = false
|
||||||
var flag_fs_status_ok: bool = false
|
var flag_fs_status_ok: bool = false
|
||||||
@@ -108,25 +127,44 @@ func _load_configuration() -> void:
|
|||||||
|
|
||||||
|
|
||||||
func _parse_config_data() -> void:
|
func _parse_config_data() -> void:
|
||||||
device_constants = config_data.get("device_constants", {})
|
device_constants = _convert_numbers(config_data.get("device_constants", {}))
|
||||||
base_configs = config_data.get("base_configs", {})
|
base_configs = _convert_numbers(config_data.get("base_configs", {}))
|
||||||
device_configs = config_data.get("device_configs", {})
|
device_configs = _convert_numbers(config_data.get("device_configs", {}))
|
||||||
data_indices = config_data.get("data_indices", {})
|
data_indices = _convert_numbers(config_data.get("data_indices", {}))
|
||||||
state_machine_enum = config_data.get("state_machine", {})
|
fs_keys = _convert_numbers(config_data.get("fs_keys", {}))
|
||||||
fs_keys = config_data.get("fs_keys", {})
|
temperature_constants = _convert_numbers(config_data.get("temperature_constants", {}))
|
||||||
temperature_constants = config_data.get("temperature_constants", {})
|
ems_input_bits_config = _convert_numbers(config_data.get("ems_input_bits_config", {}))
|
||||||
ems_input_bits_config = config_data.get("ems_input_bits_config", {})
|
fs_rules = _convert_numbers(config_data.get("fs_rules", []))
|
||||||
fs_rules = config_data.get("fs_rules", [])
|
|
||||||
|
|
||||||
|
static func _convert_numbers(value):
|
||||||
|
if value is float:
|
||||||
|
# Если float без дробной части - конвертируем в int
|
||||||
|
if value == int(value):
|
||||||
|
return int(value)
|
||||||
|
return value
|
||||||
|
elif value is Dictionary:
|
||||||
|
var result = {}
|
||||||
|
for key in value:
|
||||||
|
result[key] = _convert_numbers(value[key])
|
||||||
|
return result
|
||||||
|
elif value is Array:
|
||||||
|
var result = []
|
||||||
|
for item in value:
|
||||||
|
result.append(_convert_numbers(item))
|
||||||
|
return result
|
||||||
|
else:
|
||||||
|
return value
|
||||||
|
|
||||||
|
|
||||||
func _initialize_ray_mapping() -> void:
|
func _initialize_ray_mapping() -> void:
|
||||||
_ray_state_mapping = {
|
_ray_state_mapping = {
|
||||||
state_machine_enum.get("UG_SET_RAY_0", 7): RAY_m5,
|
STATE_MACHINE.UG_SET_RAY_0: "RAY_m5",
|
||||||
state_machine_enum.get("UG_SET_RAY_1", 8): RAY_5,
|
STATE_MACHINE.UG_SET_RAY_1: "RAY_5",
|
||||||
state_machine_enum.get("UG_SET_RAY_2", 9): RAY_15,
|
STATE_MACHINE.UG_SET_RAY_2: "RAY_15",
|
||||||
state_machine_enum.get("UG_SET_RAY_3", 10): RAY_25,
|
STATE_MACHINE.UG_SET_RAY_3: "RAY_25",
|
||||||
state_machine_enum.get("UG_SET_RAY_4", 11): RAY_35,
|
STATE_MACHINE.UG_SET_RAY_4: "RAY_35",
|
||||||
state_machine_enum.get("UG_SET_RAY_5", 12): RAY_45
|
STATE_MACHINE.UG_SET_RAY_5: "RAY_45",
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -208,13 +246,13 @@ func on_fs_update_state(packet_type_7: Dictionary, fs_mapping: Dictionary) -> vo
|
|||||||
##
|
##
|
||||||
func state_control_machine() -> void:
|
func state_control_machine() -> void:
|
||||||
match state:
|
match state:
|
||||||
state_machine_enum.INIT:
|
STATE_MACHINE.INIT:
|
||||||
print("Start control for %s device %s litera" % [self_name, current_litera])
|
print("Start control for %s device %s litera" % [self_name, current_litera])
|
||||||
_handle_init_state()
|
_handle_init_state()
|
||||||
state_machine_enum.FS_TURN_ON:
|
STATE_MACHINE.FS_TURN_ON:
|
||||||
_handle_fs_turn_on_state()
|
_handle_fs_turn_on_state()
|
||||||
state = state_machine_enum.FS_WORK
|
state = STATE_MACHINE.FS_WORK
|
||||||
state_machine_enum.FS_WORK:
|
STATE_MACHINE.FS_WORK:
|
||||||
var flag_ecm: bool = false
|
var flag_ecm: bool = false
|
||||||
for key in ecms:
|
for key in ecms:
|
||||||
var params = ecms[key].params.freq
|
var params = ecms[key].params.freq
|
||||||
@@ -225,74 +263,76 @@ func state_control_machine() -> void:
|
|||||||
if flag_ecm and flag_fs_status_ok:
|
if flag_ecm and flag_fs_status_ok:
|
||||||
ems_6666_timer.start()
|
ems_6666_timer.start()
|
||||||
_handle_fs_work_state()
|
_handle_fs_work_state()
|
||||||
state_machine_enum.CHEK_KASSETA_Y5:
|
STATE_MACHINE.CHEK_KASSETA_Y5:
|
||||||
if block_kasseta_y5_config['yau07']:
|
if block_kasseta_y5_config['yau07']:
|
||||||
state = state_machine_enum.WRITE_ISA
|
state = STATE_MACHINE.WRITE_ISA
|
||||||
state_machine_enum.WRITE_ISA:
|
STATE_MACHINE.WRITE_ISA:
|
||||||
if not flag_write_isa:
|
if not flag_write_isa:
|
||||||
_handle_ug_set_state(0x6)
|
_handle_ug_set_state(0x6)
|
||||||
state = state_machine_enum.READ_ISA
|
state = STATE_MACHINE.READ_ISA
|
||||||
state_machine_enum.READ_ISA:
|
STATE_MACHINE.READ_ISA:
|
||||||
if (unit_prd.cmd_state == unit_prd.CmdState.DONE) or (unit_prd.cmd_state == unit_prd.CmdState.FAIL):
|
if (unit_prd.cmd_state == unit_prd.CmdState.DONE) or (unit_prd.cmd_state == unit_prd.CmdState.FAIL):
|
||||||
_handle_read_isa(unit_prd, [constants.ADDR_UG_LITERA_1, constants.ADDR_UG_LITERA_2, constants.ADDR_UG_LITERA_3], cmd_array)
|
_handle_read_isa(unit_prd, [constants.ADDR_UG_LITERA_1, constants.ADDR_UG_LITERA_2, constants.ADDR_UG_LITERA_3], cmd_array)
|
||||||
flag_write_isa = false
|
flag_write_isa = false
|
||||||
state = state_machine_enum.UG_SET_RAY
|
state = STATE_MACHINE.UG_SET_RAY
|
||||||
state_machine_enum.UG_SET_RAY:
|
STATE_MACHINE.UG_SET_RAY:
|
||||||
var addr: int = constants.ADDR_UG_LITERA_1
|
var addr: int = constants.ADDR_UG_LITERA_1
|
||||||
if current_litera == 3 or current_litera == 5 or current_litera == 7:
|
if current_litera == 3 or current_litera == 5 or current_litera == 7:
|
||||||
addr = constants.ADDR_UG_LITERA_2
|
addr = constants.ADDR_UG_LITERA_2
|
||||||
if unit_prd.isa_ports.has(addr) and (unit_prd.cmd_state == unit_prd.CmdState.DONE):
|
if unit_prd.isa_ports.has(addr) and (unit_prd.cmd_state == unit_prd.CmdState.DONE):
|
||||||
if unit_prd.isa_ports[addr] & 0x07 == 0:
|
if unit_prd.isa_ports[addr] & 0x07 == 0:
|
||||||
state = state_machine_enum.UG_SET_RAY_1
|
state = STATE_MACHINE.UG_SET_RAY_1
|
||||||
elif unit_prd.isa_ports[addr] & 0x07 == 1:
|
elif unit_prd.isa_ports[addr] & 0x07 == 1:
|
||||||
state = state_machine_enum.UG_SET_RAY_2
|
state = STATE_MACHINE.UG_SET_RAY_2
|
||||||
elif unit_prd.isa_ports[addr] & 0x07 == 2:
|
elif unit_prd.isa_ports[addr] & 0x07 == 2:
|
||||||
state = state_machine_enum.UG_SET_RAY_3
|
state = STATE_MACHINE.UG_SET_RAY_3
|
||||||
elif unit_prd.isa_ports[addr] & 0x07 == 3:
|
elif unit_prd.isa_ports[addr] & 0x07 == 3:
|
||||||
state = state_machine_enum.UG_SET_RAY_4
|
state = STATE_MACHINE.UG_SET_RAY_4
|
||||||
elif unit_prd.isa_ports[addr] & 0x07 == 4:
|
elif unit_prd.isa_ports[addr] & 0x07 == 4:
|
||||||
state = state_machine_enum.UG_SET_RAY_5
|
state = STATE_MACHINE.UG_SET_RAY_5
|
||||||
elif unit_prd.isa_ports[addr] & 0x07 == 5:
|
elif unit_prd.isa_ports[addr] & 0x07 == 5:
|
||||||
if not current_litera == 1:
|
if not current_litera == 1:
|
||||||
control_results = check_dou_result(control_results, power_for_litera, self_name, current_litera, constants)
|
control_results = check_dou_result(control_results, power_for_litera, self_name, current_litera, constants)
|
||||||
state = state_machine_enum.IN_EMS_STOP
|
state = STATE_MACHINE.IN_EMS_STOP
|
||||||
elif unit_prd.isa_ports[addr] & 0x07 == 6:
|
elif unit_prd.isa_ports[addr] & 0x07 == 6:
|
||||||
state = state_machine_enum.UG_SET_RAY_0
|
state = STATE_MACHINE.UG_SET_RAY_0
|
||||||
|
if current_litera == 1:
|
||||||
|
state = STATE_MACHINE.UG_SET_RAY_5
|
||||||
|
|
||||||
state_machine_enum.UG_SET_RAY_0:
|
STATE_MACHINE.UG_SET_RAY_0:
|
||||||
if flag_si_fs_input and not flag_write_isa:
|
if flag_si_fs_input and not flag_write_isa:
|
||||||
control_timer.stop()
|
control_timer.stop()
|
||||||
_handle_ug_set_state(0x0)
|
_handle_ug_set_state(0x0)
|
||||||
await get_tree().create_timer(0.5).timeout
|
await get_tree().create_timer(0.5).timeout
|
||||||
state = state_machine_enum.READ_ISA
|
state = STATE_MACHINE.READ_ISA
|
||||||
state_machine_enum.UG_SET_RAY_1:
|
STATE_MACHINE.UG_SET_RAY_1:
|
||||||
if not flag_write_isa:
|
if not flag_write_isa:
|
||||||
_handle_ug_set_state(0x1)
|
_handle_ug_set_state(0x1)
|
||||||
state = state_machine_enum.READ_ISA
|
state = STATE_MACHINE.READ_ISA
|
||||||
state_machine_enum.UG_SET_RAY_2:
|
STATE_MACHINE.UG_SET_RAY_2:
|
||||||
if not flag_write_isa:
|
if not flag_write_isa:
|
||||||
_handle_ug_set_state(0x2)
|
_handle_ug_set_state(0x2)
|
||||||
state = state_machine_enum.READ_ISA
|
state = STATE_MACHINE.READ_ISA
|
||||||
state_machine_enum.UG_SET_RAY_3:
|
STATE_MACHINE.UG_SET_RAY_3:
|
||||||
if not flag_write_isa:
|
if not flag_write_isa:
|
||||||
_handle_ug_set_state(0x3)
|
_handle_ug_set_state(0x3)
|
||||||
state = state_machine_enum.READ_ISA
|
state = STATE_MACHINE.READ_ISA
|
||||||
state_machine_enum.UG_SET_RAY_4:
|
STATE_MACHINE.UG_SET_RAY_4:
|
||||||
if not flag_write_isa:
|
if not flag_write_isa:
|
||||||
_handle_ug_set_state(0x4)
|
_handle_ug_set_state(0x4)
|
||||||
state = state_machine_enum.READ_ISA
|
state = STATE_MACHINE.READ_ISA
|
||||||
state_machine_enum.UG_SET_RAY_5:
|
STATE_MACHINE.UG_SET_RAY_5:
|
||||||
if not flag_write_isa:
|
if not flag_write_isa:
|
||||||
_handle_ug_set_state(0x5)
|
_handle_ug_set_state(0x5)
|
||||||
state = state_machine_enum.READ_ISA
|
state = STATE_MACHINE.READ_ISA
|
||||||
state_machine_enum.IN_EMS_STOP:
|
STATE_MACHINE.IN_EMS_STOP:
|
||||||
ems_6666_timer.stop()
|
ems_6666_timer.stop()
|
||||||
state = state_machine_enum.FS_TURN_OFF
|
state = STATE_MACHINE.FS_TURN_OFF
|
||||||
state_machine_enum.FS_TURN_OFF:
|
STATE_MACHINE.FS_TURN_OFF:
|
||||||
ems_6666_timer.stop()
|
ems_6666_timer.stop()
|
||||||
_handle_fs_turn_off_state()
|
_handle_fs_turn_off_state()
|
||||||
state = state_machine_enum.STOP_CONTROL
|
state = STATE_MACHINE.STOP_CONTROL
|
||||||
state_machine_enum.STOP_CONTROL:
|
STATE_MACHINE.STOP_CONTROL:
|
||||||
_handle_stop_control_state()
|
_handle_stop_control_state()
|
||||||
## В машине состояний вызов изменения состояния прогресс бара контроля
|
## В машине состояний вызов изменения состояния прогресс бара контроля
|
||||||
progressbar_status()
|
progressbar_status()
|
||||||
@@ -302,7 +342,7 @@ func state_control_machine() -> void:
|
|||||||
func _handle_init_state() -> void:
|
func _handle_init_state() -> void:
|
||||||
if current_litera in [1, 2, 3, 4, 5, 6, 7]:
|
if current_litera in [1, 2, 3, 4, 5, 6, 7]:
|
||||||
if not ecms.size():
|
if not ecms.size():
|
||||||
state = state_machine_enum.FS_TURN_ON
|
state = STATE_MACHINE.FS_TURN_ON
|
||||||
else:
|
else:
|
||||||
control_results = on_control_result(block_ip_config, control_results)
|
control_results = on_control_result(block_ip_config, control_results)
|
||||||
power_result = prep_power(power_for_litera, self_name)
|
power_result = prep_power(power_for_litera, self_name)
|
||||||
@@ -326,7 +366,7 @@ func _handle_fs_work_state() -> void:
|
|||||||
(current_litera == 6 and control_results.fs_6) or \
|
(current_litera == 6 and control_results.fs_6) or \
|
||||||
(current_litera == 7 and control_results.fs_7) or \
|
(current_litera == 7 and control_results.fs_7) or \
|
||||||
(current_litera == 1 and control_results.fs_1):
|
(current_litera == 1 and control_results.fs_1):
|
||||||
state = state_machine_enum.CHEK_KASSETA_Y5
|
state = STATE_MACHINE.CHEK_KASSETA_Y5
|
||||||
|
|
||||||
|
|
||||||
func _handle_ug_set_state(RAY_DOU_NUM: int) -> void:
|
func _handle_ug_set_state(RAY_DOU_NUM: int) -> void:
|
||||||
@@ -363,7 +403,7 @@ func on_state_mashine():
|
|||||||
|
|
||||||
func progressbar_status() -> void:
|
func progressbar_status() -> void:
|
||||||
match state:
|
match state:
|
||||||
state_machine_enum.INIT:
|
STATE_MACHINE.INIT:
|
||||||
cc += 10 if current_litera in [3, 5, 6, 7] else 0
|
cc += 10 if current_litera in [3, 5, 6, 7] else 0
|
||||||
if control_timer.get_time_left() > 0:
|
if control_timer.get_time_left() > 0:
|
||||||
progress_value = cc + control_timer.get_wait_time() - control_timer.get_time_left()
|
progress_value = cc + control_timer.get_wait_time() - control_timer.get_time_left()
|
||||||
@@ -380,7 +420,7 @@ func _handle_fs_turn_off_state() -> void:
|
|||||||
##'Выполняется завершение проверки ФС-%s' % current_litera
|
##'Выполняется завершение проверки ФС-%s' % current_litera
|
||||||
func _handle_stop_control_state() -> void:
|
func _handle_stop_control_state() -> void:
|
||||||
_advance_to_next_fs()
|
_advance_to_next_fs()
|
||||||
state = state_machine_enum.INIT
|
state = STATE_MACHINE.INIT
|
||||||
|
|
||||||
|
|
||||||
func _advance_to_next_fs() -> void:
|
func _advance_to_next_fs() -> void:
|
||||||
@@ -420,7 +460,7 @@ func _on_start_contol_device()-> void:
|
|||||||
|
|
||||||
func _determine_self_name() -> void:
|
func _determine_self_name() -> void:
|
||||||
cc = 0
|
cc = 0
|
||||||
state = state_machine_enum.get("INIT", 0)
|
state = STATE_MACHINE.get("INIT", 0)
|
||||||
var current_unit = unit_prd.name
|
var current_unit = unit_prd.name
|
||||||
var parts = current_unit.split('-')
|
var parts = current_unit.split('-')
|
||||||
self_name = parts[-1]
|
self_name = parts[-1]
|
||||||
@@ -486,7 +526,7 @@ func on_mode_changed(in_tree: bool) -> void:
|
|||||||
if not in_tree: ## TODO: Дополнительная проверка если контроль идет, если нет, то смысла вызывать нет
|
if not in_tree: ## TODO: Дополнительная проверка если контроль идет, если нет, то смысла вызывать нет
|
||||||
progress_value = 0
|
progress_value = 0
|
||||||
machine_timer.stop()
|
machine_timer.stop()
|
||||||
state = state_machine_enum.INIT
|
state = STATE_MACHINE.INIT
|
||||||
_handle_fs_turn_off_state()
|
_handle_fs_turn_off_state()
|
||||||
#prd_v_module.cmd_array.append([unit_prd_v.CmdCode.WRITE_ISA, [constants_v.ADDR_UG_LITERA_1, ug_work_1, constants_v.ADDR_UG_LITERA_2, ug_work_2]])
|
#prd_v_module.cmd_array.append([unit_prd_v.CmdCode.WRITE_ISA, [constants_v.ADDR_UG_LITERA_1, ug_work_1, constants_v.ADDR_UG_LITERA_2, ug_work_2]])
|
||||||
|
|
||||||
@@ -538,7 +578,7 @@ static func _get_dkm_bit_for_current_fs(litera: int, constants_dic: Dictionary)
|
|||||||
|
|
||||||
func on_stop_control() -> void:
|
func on_stop_control() -> void:
|
||||||
_handle_fs_turn_off_state()
|
_handle_fs_turn_off_state()
|
||||||
state = state_machine_enum.FS_TURN_OFF
|
state = STATE_MACHINE.FS_TURN_OFF
|
||||||
|
|
||||||
|
|
||||||
static func on_control_result(ip_config: Dictionary, ctrl_results: Dictionary) -> Dictionary:
|
static func on_control_result(ip_config: Dictionary, ctrl_results: Dictionary) -> Dictionary:
|
||||||
@@ -813,13 +853,13 @@ static func prep_power(power_dic: Dictionary, prd_name: String)-> Dictionary:
|
|||||||
if arr_litera.size() != 3:
|
if arr_litera.size() != 3:
|
||||||
um_names = [
|
um_names = [
|
||||||
['um_1', 'um_2', 'um_3', 'um_4', 'um_5', 'um_6'],
|
['um_1', 'um_2', 'um_3', 'um_4', 'um_5', 'um_6'],
|
||||||
['um_7', 'um_8', 'um_9', 'um_10', 'um_11', 'um_12']
|
['um_9', 'um_10', 'um_11', 'um_12', 'um_13', 'um_14']
|
||||||
]
|
]
|
||||||
else:
|
else:
|
||||||
um_names = [
|
um_names = [
|
||||||
['um_1', 'um_2', 'um_3', 'um_4', 'um_5', 'um_6'],
|
['um_1', 'um_2', 'um_3', 'um_4', 'um_5', 'um_6'],
|
||||||
['um_8', 'um_9', 'um_10', 'um_11', 'um_12', 'um_13'],
|
['um_9', 'um_10', 'um_11', 'um_12', 'um_13', 'um_14'],
|
||||||
['um_7'] # Особый случай для третьего элемента
|
['um_8']
|
||||||
]
|
]
|
||||||
|
|
||||||
for litera_index in arr_litera.size():
|
for litera_index in arr_litera.size():
|
||||||
|
|||||||
Reference in New Issue
Block a user