 的PLC-HMI工程实战记录(五)为当前动作画面的信号连接变量)
之前在 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炉门平移右移],[变量表.限炉门左,变量表.限炉门右],[[变量表.限门锁闭左开]]]))就可以把变量绑定到画面当变量发生变化后自动更新画面。同样的方法绑定变量到所有的动态画面。