Add litera 2
This commit is contained in:
153
PRD.gd
153
PRD.gd
@@ -3,15 +3,16 @@ extends Node2D
|
||||
var unit = Yau07.YaU07.new('ЯУ07')
|
||||
var soc_unicast: Socket
|
||||
var soc_brodcast: Socket
|
||||
var address: String = '10.1.1.11'
|
||||
var address: String = Constants.ADDRESSES[0][1]
|
||||
var port: int = Constants.ADDRESSES[0][2]
|
||||
var flag_mode = Constants.ADDRESSES[0][3]
|
||||
var ports_wr: Dictionary # Словарь с портами для записи
|
||||
var port: int
|
||||
var broadcast_packet: PackedByteArray
|
||||
var node_select1: Node
|
||||
var timeout: float = Yau07.ONLINE_TIMEOUT
|
||||
var last_update_time: float = 0.0
|
||||
var flag_yau_control: bool
|
||||
|
||||
var CONTROL_TABLE: Array
|
||||
|
||||
## Класс для отправки данных в сокет
|
||||
class Socket extends PacketPeerUDP:
|
||||
@@ -28,16 +29,16 @@ func poll_receive(sock: Socket) -> bool: ## Приёмник
|
||||
var port_receive = sock.get_packet_port()
|
||||
|
||||
if (address == addr_receive) and (port == port_receive):
|
||||
$control_dev/control_dev.get_node2(0, 0).text = 'ЯУ-07Б НА СВЯЗИ'
|
||||
$control_dev/control_dev.get_node2(0, 0).modulate = Constants.GREEN
|
||||
$control_dev/control_tbl.get_node2(0, 0).text = 'ЯУ-07Б НА СВЯЗИ'
|
||||
$control_dev/control_tbl.get_node2(0, 0).modulate = Constants.GREEN
|
||||
last_update_time = 0.0
|
||||
unit.parse(broadcast_packet)
|
||||
else:
|
||||
if sock.get_available_packet_count():
|
||||
last_update_time = 0.0
|
||||
else:
|
||||
$control_dev/control_dev.get_node2(0, 0).text = 'НЕТ СВЯЗИ С ЯУ-07Б'
|
||||
$control_dev/control_dev.get_node2(0, 0).modulate = Constants.RED
|
||||
$control_dev/control_tbl.get_node2(0, 0).text = 'НЕТ СВЯЗИ С ЯУ-07Б'
|
||||
$control_dev/control_tbl.get_node2(0, 0).modulate = Constants.RED
|
||||
return false
|
||||
|
||||
|
||||
@@ -54,14 +55,16 @@ func _ready() -> void:
|
||||
# Заполнение адресов
|
||||
for i_addr in Constants.ADDRESSES.size():
|
||||
get_select_device.add_item(Constants.ADDRESSES[i_addr][0])
|
||||
get_select_device.set_item_metadata(i_addr, Constants.ADDRESSES[i_addr].slice(1,3))
|
||||
get_select_device.set_item_metadata(i_addr, Constants.ADDRESSES[i_addr].slice(1,4))
|
||||
get_select_device.connect('item_selected', Callable(self, 'on_btn_select'))
|
||||
node_select_device.get_node2(0,0).text = 'НАЗВАНИЕ ПРИБОРА'
|
||||
node_select_device.set_columns_min_size([200, 100])
|
||||
|
||||
# Контроль
|
||||
var node_control_device = $control_dev/control_dev
|
||||
draw_tabl(node_control_device, Constants.CONTROL_TABLE, Constants.CONTROL_TABLE.size())
|
||||
var node_control_device = $control_dev/control_tbl
|
||||
for i in Constants.CONTROL_DEVICE.size():
|
||||
CONTROL_TABLE.append([Constants.TableNode])
|
||||
draw_tabl(node_control_device, CONTROL_TABLE, CONTROL_TABLE.size())
|
||||
for i in Constants.CONTROL_DEVICE.size():
|
||||
node_control_device.get_node2(0, i).text = Constants.CONTROL_DEVICE[i]
|
||||
node_control_device.set_columns_min_size([300])
|
||||
@@ -92,7 +95,6 @@ func draw_tabl(tbl, row: Array, count_row: int):
|
||||
func _process(delta: float) -> void:
|
||||
last_update_time += delta
|
||||
poll_receive(soc_brodcast)
|
||||
|
||||
match unit.process(delta):
|
||||
Error.OK: soc_unicast.send_to(address, port, unit.tx_data.slice(0, unit.tx_len))
|
||||
Error.FAILED: print('Ошибка отправки данных')
|
||||
@@ -100,18 +102,17 @@ func _process(delta: float) -> void:
|
||||
|
||||
func data_received(_unit):
|
||||
var data_from_yau_07 = unit.status
|
||||
var status_board = data_from_yau_07.decode_u8(0)
|
||||
var EMS_G: int = data_from_yau_07.decode_u16(1) # Данные СИ от ЭМС-Г на выходе
|
||||
var dry_contact: int = data_from_yau_07.decode_u16(27) # Контроль сухих контактов (УГ)
|
||||
var DKM: int = data_from_yau_07.decode_u16(29) # ДКМ от УГ
|
||||
var power_ukp_1: int = data_from_yau_07.decode_u16(31) # Мощность с широковещания от УКП №1
|
||||
var temperature_ukp_1: int = data_from_yau_07.decode_u16(47) # Температура с широковещания от УКП №1
|
||||
var power_ukp_2: int = data_from_yau_07.decode_u16(63)
|
||||
var temperature_ukp_2: int = data_from_yau_07.decode_u16(79)
|
||||
var status_board = data_from_yau_07.decode_u8(Constants.DataIndices.STATUS_BOARD)
|
||||
var in_blank: int = data_from_yau_07.decode_u16(Constants.DataIndices.IN_BLANK_PRD)
|
||||
var in_imp: int = data_from_yau_07.decode_u16(Constants.DataIndices.IN_IMPULS_PRD)
|
||||
var out_blank: int = data_from_yau_07.decode_u16(Constants.DataIndices.OUT_BLANK_PRD)
|
||||
var out_imp: int = data_from_yau_07.decode_u16(Constants.DataIndices.OUT_IMPULS_PRD)
|
||||
var dry_contact: int = data_from_yau_07.decode_u16(Constants.DataIndices.DRY_CONTACT) # Контроль сухих контактов (УГ)
|
||||
var DKM: int = data_from_yau_07.decode_u16(Constants.DataIndices.DKM) # ДКМ от УГ
|
||||
|
||||
## УГ
|
||||
node_select1.set_node_text(2, 0, '%d' % dry_contact)
|
||||
|
||||
var node_control_device = $control_dev/control_dev
|
||||
var node_control_device = $control_dev/control_tbl
|
||||
for i in 4:
|
||||
var node_board = node_control_device.get_node2(0, i+2)
|
||||
var j = int(status_board & (1 << i) == 0 and flag_yau_control)
|
||||
@@ -124,54 +125,105 @@ func data_received(_unit):
|
||||
node_power_supply.text = Constants.CONTROL_POWER_SUPPLY[i][j]
|
||||
node_power_supply.modulate = [Constants.GREEN, Constants.RED][j]
|
||||
|
||||
# EMS G
|
||||
var in_blank: int = data_from_yau_07.decode_u32(1)
|
||||
var in_imp: int = data_from_yau_07.decode_u32(5)
|
||||
|
||||
var EMSG = [['Вход Х3:23', 'Вход Х3:23'],['Вход Х3:24', 'Вход Х3:24']]
|
||||
for i in 2:
|
||||
var node_ems_g = node_control_device.get_node2(0, i+ 14)
|
||||
#var ems = data_from_yau_07.decode_u64()
|
||||
var j = int(EMS_G & (1 << i) == 0 and flag_yau_control)
|
||||
node_ems_g.text = EMSG[i][j]
|
||||
node_ems_g.modulate = [Constants.GREEN, Constants.RED][j]
|
||||
set_frame(Constants.Frame.VARIABLE)
|
||||
## EMS G
|
||||
var CONTROL_FRAME = [$control_dev/SZI_x, $control_dev/SZI_x2, $control_dev/SZI_x3, $control_dev/SZI_x4, $control_dev/SZI_x5]
|
||||
for i in 5:
|
||||
var node_ems_g = node_control_device.get_node2(0, i + 14)
|
||||
var j: int = 0
|
||||
var frame = Constants.Frame.WORK
|
||||
|
||||
var in_bit_blank_UF = 1 if Constants.MODE.PRD_H == flag_mode else 3 if Constants.MODE.PRD_K == flag_mode else 6
|
||||
var in_bit_blank_FS = 9 if Constants.MODE.PRD_H == flag_mode else 11 if Constants.MODE.PRD_K == flag_mode else 13
|
||||
|
||||
var in_bit_impuls_UF = 1 if Constants.MODE.PRD_H == flag_mode else 3 if Constants.MODE.PRD_K == flag_mode else 6
|
||||
var in_bit_impuls_FS = 9 if Constants.MODE.PRD_H == flag_mode else 11 if Constants.MODE.PRD_K == flag_mode else 13
|
||||
###
|
||||
var out_bit_blank_UF = 1 if Constants.MODE.PRD_H == flag_mode else 1 if Constants.MODE.PRD_K == flag_mode else 0
|
||||
var out_bit_blank_MODUL = 4 if Constants.MODE.PRD_H == flag_mode else 4 if Constants.MODE.PRD_K == flag_mode else 4
|
||||
var out_bit_blank_FGOZ = 9 if Constants.MODE.PRD_H == flag_mode else 8 if Constants.MODE.PRD_K == flag_mode else 8
|
||||
|
||||
var out_bit_impuls_UF = 1 if Constants.MODE.PRD_H == flag_mode else 1 if Constants.MODE.PRD_K == flag_mode else 0
|
||||
var out_bit_impuls_MODUL = 4 if Constants.MODE.PRD_H == flag_mode else 4 if Constants.MODE.PRD_K == flag_mode else 4
|
||||
var out_bit_impuls_FGOZ = 9 if Constants.MODE.PRD_H == flag_mode else 8 if Constants.MODE.PRD_K == flag_mode else 8
|
||||
|
||||
if (in_blank & (1 << in_bit_blank_UF) != 0) and flag_yau_control:
|
||||
j = 1 if i == 0 else 0
|
||||
frame = Constants.Frame.CONSTANT if i == 0 else Constants.Frame.WORK
|
||||
elif (in_imp & (1 << in_bit_impuls_UF) != 0) and flag_yau_control:
|
||||
j = 1 if i == 0 else 0
|
||||
frame = Constants.Frame.VARIABLE if i == 0 else Constants.Frame.WORK
|
||||
if (in_blank & (1 << in_bit_blank_FS) != 0) and flag_yau_control:
|
||||
j = 1 if i == 1 else 0
|
||||
frame = Constants.Frame.CONSTANT if i == 1 else Constants.Frame.WORK
|
||||
elif (in_imp & (1 << in_bit_impuls_FS) != 0) and flag_yau_control:
|
||||
j = 1 if i == 1 else 0
|
||||
frame = Constants.Frame.VARIABLE if i == 1 else Constants.Frame.WORK
|
||||
if (out_blank & (1 << out_bit_blank_UF) != 0) and flag_yau_control:
|
||||
j = 1 if i == 2 else 0
|
||||
frame = Constants.Frame.CONSTANT if i == 2 else Constants.Frame.WORK
|
||||
elif (out_imp & (1 << out_bit_impuls_UF) != 0) and flag_yau_control:
|
||||
j = 1 if i == 2 else 0
|
||||
frame = Constants.Frame.VARIABLE if i == 2 else Constants.Frame.WORK
|
||||
if (out_blank & (1 << out_bit_blank_MODUL) != 0) and flag_yau_control:
|
||||
j = 1 if i == 3 else 0
|
||||
frame = Constants.Frame.CONSTANT if i == 3 else Constants.Frame.WORK
|
||||
elif (out_imp & (1 << out_bit_impuls_MODUL) != 0) and flag_yau_control:
|
||||
j = 1 if i == 3 else 0
|
||||
frame = Constants.Frame.VARIABLE if i == 3 else Constants.Frame.WORK
|
||||
if (out_blank & (1 << out_bit_blank_FGOZ) != 0) and flag_yau_control:
|
||||
j = 1 if i == 4 else 0
|
||||
frame = Constants.Frame.CONSTANT if i == 4 else Constants.Frame.WORK
|
||||
elif (out_imp & (1 << out_bit_impuls_FGOZ) != 0) and flag_yau_control:
|
||||
j = 1 if i == 4 else 0
|
||||
frame = Constants.Frame.VARIABLE if i == 4 else Constants.Frame.WORK
|
||||
|
||||
node_ems_g.text = Constants.EMS_G[i][j]
|
||||
node_ems_g.modulate = [Constants.RED, Constants.GREEN][j]
|
||||
set_frame(frame, CONTROL_FRAME[i])
|
||||
|
||||
node_select1.set_node_text(3, 0, '%d' % DKM)
|
||||
|
||||
for i in range(8):
|
||||
power_ukp_1 += 2 * i
|
||||
|
||||
## УКП
|
||||
for i in range(8): ## Мощность от УКП_1
|
||||
var power_ukp_1 = data_from_yau_07.decode_u16(Constants.DataIndices.POWER_UKP_1 + 2 * i)
|
||||
node_select1.set_node_text(0, i, '%d' % power_ukp_1)
|
||||
|
||||
for i in range(8):
|
||||
temperature_ukp_1 += 2 * i
|
||||
for i in range(8): ## Температура от УКП_1
|
||||
var temperature_ukp_1 = data_from_yau_07.decode_u16(Constants.DataIndices.TEMPERATURE_UKP_1 + 2 * i)
|
||||
var TMP = Constants.CONST_MIN_TEMP + (Constants.MAXIMUM_CODE_ADC - temperature_ukp_1) * Constants.TEMP
|
||||
node_select1.set_node_text(1, i, '%d' % TMP)
|
||||
|
||||
for i in range(8):
|
||||
power_ukp_2 += 2 * i
|
||||
node_select1.set_node_text(0, i+8, '%d' % power_ukp_2)
|
||||
for i in range(8): ## Мощность от УКП_2
|
||||
var power_ukp_2 = data_from_yau_07.decode_u16(Constants.DataIndices.POWER_UKP_2 + 2 * i)
|
||||
node_select1.set_node_text(0, i + 8, '%d' % power_ukp_2)
|
||||
|
||||
for i in range(8):
|
||||
for i in range(8): ## Температура от УКП_2
|
||||
if len(data_from_yau_07) > 79 + 2 * i:
|
||||
temperature_ukp_2 += 2 * i
|
||||
var temperature_ukp_2 = data_from_yau_07.decode_u16(Constants.DataIndices.TEMPERATURE_UKP_2 + 2 * i)
|
||||
var TMP = Constants.CONST_MIN_TEMP + (Constants.MAXIMUM_CODE_ADC - temperature_ukp_2) * Constants.TEMP
|
||||
node_select1.set_node_text(1, i+8, '%d' % TMP)
|
||||
|
||||
for i in range(15):
|
||||
EMS_G += 2 * i
|
||||
node_select1.set_node_text(3, i+1, '%d' % EMS_G)
|
||||
|
||||
|
||||
###
|
||||
func set_frame(val: int): $control_dev/sprite.set_frame(val)
|
||||
###
|
||||
func set_frame(val: int, node: Node): node.set_frame(val)
|
||||
|
||||
|
||||
#func dec2bin(decimal_value, number_bit):
|
||||
#var binary_string = ''
|
||||
#var count = number_bit
|
||||
#while(count >= 0):
|
||||
#var temp: int = decimal_value >> count
|
||||
#binary_string += '%d' % (temp & 1)
|
||||
#count -= 1
|
||||
#return binary_string
|
||||
|
||||
|
||||
func on_line_changed(_unit) -> void:
|
||||
if unit.online:
|
||||
flag_yau_control = true
|
||||
else:
|
||||
for i in 15:
|
||||
var node_board = $control_dev/control_tbl.get_node2(0, i+1)
|
||||
node_board.modulate = Constants.RED
|
||||
flag_yau_control = false
|
||||
|
||||
|
||||
@@ -196,6 +248,7 @@ func on_btn_select(intem_from_sector):
|
||||
var meta = get_select_device.get_item_metadata(intem_from_sector)
|
||||
address = meta[0]
|
||||
port = meta[1]
|
||||
flag_mode = meta[2]
|
||||
|
||||
|
||||
func fill_item(node, i_column: int, i_row: int, arr: Dictionary, select: int = 0):
|
||||
|
||||
@@ -91,37 +91,52 @@ text = "КОНТРОЛЬ"
|
||||
offset_left = 118.0
|
||||
offset_top = 53.0
|
||||
offset_right = 465.0
|
||||
offset_bottom = 527.0
|
||||
offset_bottom = 609.0
|
||||
color = Color(0.390334, 0.227948, 0.288326, 1)
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="control_dev" type="ScrollContainer" parent="."]
|
||||
offset_left = 142.0
|
||||
offset_top = 63.0
|
||||
offset_right = 477.0
|
||||
offset_bottom = 527.0
|
||||
offset_bottom = 647.0
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="control_dev" type="GridContainer" parent="control_dev"]
|
||||
[node name="control_tbl" type="GridContainer" parent="control_dev"]
|
||||
layout_mode = 2
|
||||
script = ExtResource("2_vmbyo")
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="sprite" type="AnimatedSprite2D" parent="control_dev"]
|
||||
position = Vector2(215, 404)
|
||||
[node name="SZI_x" type="AnimatedSprite2D" parent="control_dev"]
|
||||
position = Vector2(284, 404)
|
||||
sprite_frames = SubResource("SpriteFrames_vex4t")
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="sprite2" type="AnimatedSprite2D" parent="control_dev"]
|
||||
position = Vector2(214, 432)
|
||||
[node name="SZI_x2" type="AnimatedSprite2D" parent="control_dev"]
|
||||
position = Vector2(284, 432)
|
||||
sprite_frames = SubResource("SpriteFrames_vex4t")
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="SZI_x3" type="AnimatedSprite2D" parent="control_dev"]
|
||||
position = Vector2(284, 460)
|
||||
sprite_frames = SubResource("SpriteFrames_vex4t")
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="SZI_x4" type="AnimatedSprite2D" parent="control_dev"]
|
||||
position = Vector2(284, 488)
|
||||
sprite_frames = SubResource("SpriteFrames_vex4t")
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="SZI_x5" type="AnimatedSprite2D" parent="control_dev"]
|
||||
position = Vector2(284, 517)
|
||||
sprite_frames = SubResource("SpriteFrames_vex4t")
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="scroll1" type="ScrollContainer" parent="."]
|
||||
offset_left = 478.0
|
||||
offset_top = 65.0
|
||||
offset_right = 841.0
|
||||
offset_bottom = 649.0
|
||||
offset_left = 985.0
|
||||
offset_top = 63.0
|
||||
offset_right = 1348.0
|
||||
offset_bottom = 647.0
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="table1" type="GridContainer" parent="scroll1"]
|
||||
layout_mode = 2
|
||||
@@ -156,4 +171,35 @@ scale = Vector2(21.8765, 21.6782)
|
||||
texture = SubResource("GradientTexture2D_0pk2o")
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="LABEL" type="Label" parent="."]
|
||||
offset_left = 594.0
|
||||
offset_top = 53.0
|
||||
offset_right = 876.0
|
||||
offset_bottom = 76.0
|
||||
text = "ЛИТЕРА 2! ПРД-Н!"
|
||||
|
||||
[node name="Zapret" type="Button" parent="."]
|
||||
offset_left = 594.0
|
||||
offset_top = 81.0
|
||||
offset_right = 712.0
|
||||
offset_bottom = 124.0
|
||||
text = " Запрет СИ2"
|
||||
|
||||
[node name="Label_luch" type="Label" parent="."]
|
||||
offset_left = 594.0
|
||||
offset_top = 136.0
|
||||
offset_right = 876.0
|
||||
offset_bottom = 159.0
|
||||
text = "Номер и направление луча"
|
||||
|
||||
[node name="LUCH" type="OptionButton" parent="."]
|
||||
offset_left = 594.0
|
||||
offset_top = 168.0
|
||||
offset_right = 712.0
|
||||
offset_bottom = 199.0
|
||||
item_count = 2
|
||||
popup/item_0/text = "Что-то"
|
||||
popup/item_1/text = "Что-то"
|
||||
popup/item_1/id = 1
|
||||
|
||||
[connection signal="toggled" from="control_button" to="." method="_on_control_button"]
|
||||
|
||||
74
constants.gd
74
constants.gd
@@ -2,8 +2,8 @@ extends Node
|
||||
const UNICAST_PORT: int = 50003
|
||||
const UNICAST_ADDRESS: String = '10.1.1.3'
|
||||
const BROADCAST_PORT: int = 50000
|
||||
const DEFAULT_ADDRESS: String = '10.1.1.43'
|
||||
const DEFAULT_PORT: String = '50043'
|
||||
const DEFAULT_ADDRESS: String = '10.1.1.11'
|
||||
const DEFAULT_PORT: String = '50011'
|
||||
const BASE_ADDR: int = 0x100
|
||||
const RED = Color(1, 0, 0, 1)
|
||||
const GREEN = Color(0, 1, 0, 1)
|
||||
@@ -14,24 +14,7 @@ const TEMP: float = 115.0 / (MAXIMUM_CODE_ADC - MINIMUM_CODE_AD)
|
||||
const TableNode = preload("res://table/node.tscn")
|
||||
const TableList = preload("res://table/node_list.tscn")
|
||||
const SELECT_DEVICE: Array = [[TableNode, TableList]]
|
||||
const CONTROL_TABLE: Array = [
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode],
|
||||
[TableNode]]
|
||||
const CONTROL_DEVICE: Array = ['ЯЧЕЙКА ЯУ-07Б', 'ФС', 'ЯЧЕЙКА ЭМС-Г', 'ЯЧЕЙКА УГ', 'ЯЧЕЙКА УКП №1', 'ЯЧЕЙКА УКП №2', 'ИП МАА №1', 'ИП МАА №2', 'ИП9-50 №1', 'ИП9-50 №2', 'ИП12-50 №1', '-', '-','ИП5-25', 'Вход Х3:23', 'Вход Х3:24']
|
||||
const CONTROL_DEVICE: Array = ['ЯЧЕЙКА ЯУ-07Б', 'ФС', 'ЯЧЕЙКА ЭМС-Г', 'ЯЧЕЙКА УГ', 'ЯЧЕЙКА УКП №1', 'ЯЧЕЙКА УКП №2', 'ИП МАА №1', 'ИП МАА №2', 'ИП9-50 №1', 'ИП9-50 №2', 'ИП12-50 №1', '-', '-','ИП5-25', 'Вход Х3:2(СЗИ2)', 'Вход Х3:19(СИ2)', 'Выход Х3:11(СИ2)', 'Выход Х3:14(СИ2)', 'Выход x3:10(ФГОЗ)']
|
||||
const ROWS_REGS_DATA: Array = [
|
||||
[TableNode, TableNode, TableNode, TableNode],
|
||||
[TableNode, TableNode, TableNode, TableNode],
|
||||
@@ -50,18 +33,18 @@ const ROWS_REGS_DATA: Array = [
|
||||
[TableNode, TableNode, TableNode, TableNode],
|
||||
[TableNode, TableNode, TableNode, TableNode]]
|
||||
const ADDRESSES: Array = [
|
||||
['ПРД-Н1', '10.1.1.11', 50011],
|
||||
['ПРД-Н2', '10.1.1.21', 50021],
|
||||
['ПРД-Н3', '10.1.1.31', 50031],
|
||||
['ПРД-Н4', '10.1.1.41', 50041],
|
||||
['ПРД-В1', '10.1.1.12', 50012],
|
||||
['ПРД-В2', '10.1.1.22', 50022],
|
||||
['ПРД-В3', '10.1.1.32', 50032],
|
||||
['ПРД-В4', '10.1.1.42', 50042],
|
||||
['ПРД-К1', '10.1.1.13', 50013],
|
||||
['ПРД-К2', '10.1.1.23', 50023],
|
||||
['ПРД-К3', '10.1.1.33', 50033],
|
||||
['ПРД-К4', '10.1.1.43', 50043]]
|
||||
['ПРД-Н1', '10.1.1.11', 50011, MODE.PRD_H],
|
||||
['ПРД-Н2', '10.1.1.21', 50021, MODE.PRD_H],
|
||||
['ПРД-Н3', '10.1.1.31', 50031, MODE.PRD_H],
|
||||
['ПРД-Н4', '10.1.1.41', 50041, MODE.PRD_H],
|
||||
['ПРД-В1', '10.1.1.12', 50012, MODE.PRD_B],
|
||||
['ПРД-В2', '10.1.1.22', 50022, MODE.PRD_B],
|
||||
['ПРД-В3', '10.1.1.32', 50032, MODE.PRD_B],
|
||||
['ПРД-В4', '10.1.1.42', 50042, MODE.PRD_B],
|
||||
['ПРД-К1', '10.1.1.13', 50013, MODE.PRD_K],
|
||||
['ПРД-К2', '10.1.1.23', 50023, MODE.PRD_K],
|
||||
['ПРД-К3', '10.1.1.33', 50033, MODE.PRD_K],
|
||||
['ПРД-К4', '10.1.1.43', 50043, MODE.PRD_K]]
|
||||
var CONTROL_BOARD: Array = [
|
||||
['ЯЧЕЙКА ЭМС-Г НА СВЯЗИ', 'ЯЧЕЙКИ ЭМС-Г НЕТ НА СВЯЗИ'],
|
||||
['ЯЧЕЙКА УГ НА СВЯЗИ','ЯЧЕЙКИ УГ НЕТ НА СВЯЗИ'],
|
||||
@@ -76,8 +59,33 @@ var CONTROL_POWER_SUPPLY: Array = [
|
||||
['ИП9-50 №3', 'ОШИБКА. КОНТРОЛЬ ИП9-50 №3'],
|
||||
['ИП12-50 №2', 'ОШИБКА. КОНТРОЛЬ ИП12-50 №2'],
|
||||
['ИП5-25', 'ОШИБКА. КОНТРОЛЬ ИП5-25']]
|
||||
const EMS_G = [
|
||||
['Нет Входа Х3:2(СИ2 от УФ)', 'Вход Х3:2(СИ2 от УФ)'],
|
||||
['Нет Входа Х3:19(СИ2 от ФС)', 'Вход Х3:19(СИ2 от ФС)'],
|
||||
['Нет Выхода Х3:2(СИ2 в УФ)', 'Выход Х3:2(СИ2 в УФ)'],
|
||||
['Нет Входа Х3:5(Модуляция)', 'Выход Х3:5(Модуляция)'],
|
||||
['Нет Входа Х3:10(ФГОЗ)', 'Выход Х3:10(ФГОЗ)']]
|
||||
enum MODE {
|
||||
PRD_K,
|
||||
PRD_B,
|
||||
PRD_H,
|
||||
}
|
||||
enum Frame {
|
||||
WORK, ## В работе
|
||||
CONSTANT, ## Постоянный сигнал
|
||||
VARIABLE ## Переменный сигнал
|
||||
VARIABLE, ## Переменный сигнал
|
||||
NULL,
|
||||
}
|
||||
enum DataIndices {
|
||||
STATUS_BOARD = 0,
|
||||
IN_BLANK_PRD = 1,
|
||||
IN_IMPULS_PRD = 7,
|
||||
OUT_BLANK_PRD = 13,
|
||||
OUT_IMPULS_PRD = 19,
|
||||
DRY_CONTACT = 27,
|
||||
DKM = 29,
|
||||
POWER_UKP_1 = 31,
|
||||
TEMPERATURE_UKP_1 = 47,
|
||||
POWER_UKP_2 = 63,
|
||||
TEMPERATURE_UKP_2 = 79,
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ config_version=5
|
||||
|
||||
config/name="ПРД_для_МП-550"
|
||||
run/main_scene="res://PRD_MP550.tscn"
|
||||
config/features=PackedStringArray("4.2", "GL Compatibility")
|
||||
config/features=PackedStringArray("4.3", "GL Compatibility")
|
||||
config/icon="res://icon.svg"
|
||||
|
||||
[autoload]
|
||||
|
||||
@@ -518,8 +518,8 @@ func connect_columns(dest_node: Node, event_name: String, callback: String, clmn
|
||||
assert(i_col >= 0 and i_col < columns, 'ошибка: нет такой колонки: %d' % i_col)
|
||||
var node = get_node2(i_col, i_row)
|
||||
if node.has_meta(META_CALLABLE):
|
||||
var conn = node.get_meta(META_CALLABLE)
|
||||
node.disconnect(event_name, conn)
|
||||
var conne = node.get_meta(META_CALLABLE)
|
||||
node.disconnect(event_name, conne)
|
||||
var conn = Callable(dest_node, callback).bind([node] + user_data)
|
||||
var rc = node.connect(event_name, conn)
|
||||
if rc == Error.OK:
|
||||
|
||||
Reference in New Issue
Block a user