Доработка. Протокол JSON-Modbus обновлён (2 из 2)
This commit is contained in:
@@ -2,34 +2,41 @@
|
||||
|
||||
extends "res://scenes/контроль/элемент-я.gd"
|
||||
|
||||
## Дополнение №1 к протоколу №120-23900-18
|
||||
## информационного взаимодействия изделия 5П-28
|
||||
## с аппаратурой УА-РЭП на кораблях проекта 23900
|
||||
|
||||
func on_data_received(data): pass
|
||||
func on_data_received(_data: PackedByteArray): pass
|
||||
|
||||
|
||||
func _enter_tree() -> void:
|
||||
if Engine.is_editor_hint(): return
|
||||
var unit_key = settings.get_unit_key(unit_name)
|
||||
var unit = network.units[unit_key]
|
||||
unit.connect('responce_received', Callable(self, 'on_responce_received'))
|
||||
unit.connect('resp_input', on_resp_input)
|
||||
|
||||
|
||||
func _exit_tree() -> void:
|
||||
if Engine.is_editor_hint(): return
|
||||
var unit_key = settings.get_unit_key(unit_name)
|
||||
var unit = network.units[unit_key]
|
||||
unit.disconnect('responce_received', Callable(self, 'on_responce_received'))
|
||||
unit.disconnect('resp_input', on_resp_input)
|
||||
|
||||
|
||||
func on_line_changed(_unit):
|
||||
var items = get_tree().get_nodes_in_group('bits_items')
|
||||
var items = get_tree().get_nodes_in_group('bits_items_good')
|
||||
for item in items:
|
||||
item.texture = textures[STATE_VAL.ERROR]
|
||||
|
||||
|
||||
func on_responce_received(addr: int, data: PackedByteArray):
|
||||
if (addr != 0) or (data.size() != 4):
|
||||
func on_resp_input(addr: int, data: PackedByteArray):
|
||||
if (addr != 0) or (data.size() < 4):
|
||||
return
|
||||
var items = get_tree().get_nodes_in_group('bits_items')
|
||||
# "Для контроля состояния управляющего элемента подачи электроэнергии на приборы ..."
|
||||
# "Для контроля подачи электроэнергии на приборы ..."
|
||||
# Таблицы 3.13 и 3.14. Ecли значения соответствующих битов в этих
|
||||
# регистрах равны, то "исправно".
|
||||
var items = get_tree().get_nodes_in_group('bits_items_good')
|
||||
var cnt_good: int = 0
|
||||
for item in items:
|
||||
var bits: Array = item.get_meta('bits')
|
||||
|
||||
Reference in New Issue
Block a user