基于QtPy (PySide6) 的PLC-HMI工程实战记录(五)为当前动作画面的信号连接变量
2026/8/26 15:21:04 网站建设 项目流程

之前在 NowDoForm类中定义了一个信号now_signal

这个信号是一个固定格式的列表,内容固定为:
[[当前动作的工作状态],[限位0,限位1...],[[节点0_0, 节点0_1,...],[节点1_0, 节点1_1,...],...[节点n_0, 节点n_1,...]]

以“炉门右移”画面为例:

当将这个画面的now_signal信号emit([[True],[False,True],[[True]]]),信号值与画面的映射关系如下:

画面就会按照变量的分配更新。

进一步的,把每一个画面的now_signal信号绑定之前定义的PLC变量,就可以实现画面按照变量的的更新自动更新。

以“炉门右移”画面为例:

# UI管理器 um = UiManager() # 画面的now_signal信号绑定 um.bond([变量表.Q炉门平移右移.valueChanged, 变量表.限炉门左.valueChanged, 变量表.限炉门右.valueChanged, 变量表.限门锁闭左开.valueChanged], lambda :proxy_DoorRight.widget.now_signal.emit([[变量表.Q炉门平移右移],[变量表.限炉门左,变量表.限炉门右],[[变量表.限门锁闭左开]]]))

就可以把变量绑定到画面,当变量发生变化后自动更新画面。

同样的方法,绑定变量到所有的动态画面。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询