Merge branch 'master-prd' of http://169.254.27.70:3000/sasha80/uarep-ctl into master-prd

This commit is contained in:
Maxim Name
2025-07-07 17:13:29 +03:00
5 changed files with 80 additions and 41 deletions

View File

@@ -194,7 +194,6 @@ class PRD:
fs.um_code_rx = u.isa_ports[port] & 0x7
func on_line_changed(unit_ems):
if not unit_ems.online:
yemsg_board.ems_load = yemsg_board.LoadState.NOT_DEFINED
@@ -203,8 +202,6 @@ class PRD:
func on_data_received(_u):
set_prd_status()
if state != PrdState.WORK:
return
if yemsg_board.state_board != yemsg_board.WAIT or yemsg_board.state_cmd != yemsg_board.WAIT:
return
if yemsg_board.online:
@@ -280,6 +277,8 @@ func _ready() -> void:
var unit_caps_key = settings.get_unit_key('уарэп-капсрпб')
var unit_caps = network.units[unit_caps_key]
unit_caps.connect('data_received', Callable(self, 'on_data_capsrpb_received'))
signaller.connect('режим_контроль', Callable(self, 'on_mode_changed').bind(PrdState.CONTROL))
signaller.connect('режим_работа', Callable(self, 'on_mode_changed').bind(PrdState.WORK))
func get_fs_param(index: int) -> Array:
@@ -347,7 +346,7 @@ func on_data_capsrpb_received(unit0: capsrpb.CapsRpb):
if not unit0.json_dic.has('ts'): return
if unit0.json_dic['ts'] != 7: return
if not unit0.json_dic.has('msfs'): return
var msfs = unit0.json_dic['msfs']
for fs in msfs:
if fs is Dictionary:
@@ -369,3 +368,9 @@ func on_data_capsrpb_received(unit0: capsrpb.CapsRpb):
if fs.has('width'):
fs_module.width_caps_rx = int(fs['width'])
signaller.emit_signal('fs_update_state', fs_dict)
## Вызывается при переходе в режим работа/контроль
func on_mode_changed(changed_mode: int) -> void:
for pdr in prd.prd_dict.values():
pdr.state = changed_mode

View File

@@ -70,11 +70,6 @@ class Sch3 extends unit.Unit:
mbc.request_read_input(base_input_address, regs_input_count)
cmd_state = CmdState.WAIT
tx_tick = tick
step_fsm = Sch3Fsm.READ_HOLDING
elif step_fsm == Sch3Fsm.READ_HOLDING:
mbc.request_read(base_holding_address, regs_holding_count)
cmd_state = CmdState.WAIT
tx_tick = tick
step_fsm = Sch3Fsm.WRITE
elif step_fsm == Sch3Fsm.CONNECT:
try_disconnect()