对于立即写(Immediate Write)功能,必须如下面举例所示,生成符号程序段。
对于有时间限制的应用,可以以比每OB1 扫描循环一次的正常情况快的速度,将一个数字量输出的当前状态发送到输出模板。立即写功能可以在扫描立即写逻辑程序级的同时,将一个数字量输出写入输出模板。否则,当 Q存储区使用 P存储状态更新时,必须等到下一OB1扫描循环结束。
为了将一个输出立即写入输出模板,应使用外围输出(PQ)存储区,而不使用输出(Q)
存储区。外围输出存储区可以作为一个字节、一个字或一个双字读取。因此,通过一个线圈元素,不能更新一个单独的数字量输出。为了将一个数字量输出的状态立即写入输出模板, 包含相关位的Q存储器的字节、 字或双字可以有条件地复制到相应的PQ存储器中 (直接输出TPC1062K的模板地址)。
小心
• 由于 Q 存储器的整个字节被写入输出模板,当进行立即输出时,该字节中的所有输出位都将被更新。
• 如果一个输出位在不应发送到输出模板中的整个程序中出现中间状态(1/0),立即写功能会造成危险情况(输出瞬时脉冲)。
• 作为一般设计规则,在一个MT6100I的程序中,外部输出模板只能认为是一个线圈。如果遵守该设计规则,可以避免使用立即输出时的大多数潜在问题。
举例
等效于立即写入外围数字量输出模板 5通道1的梯形逻辑程序段。
寻址输出Q字节 (5) 的位状态可以修改, 也可以保持不变。 Q5.1被赋给程序段1 中I0.1的信号状态。5被复制到相应的直接外围输出存储区(P5)。
字PIW1包含I1.1的立即状态。 PIW1与 W#16#0002进行与 (AND) 逻辑运算。 如果 PB1中的 I1.1(* 2位)为“1”,则结果非“0”。如果 WAND_W 指令的结果不等于“0”,则接点“A<>0”通过电压。 在PC发展的初期,沿用了设计继电器电路图的方法来设计梯形图。即在一些典型电路的基础上,根据被控对象对控制系统的具体要求,不断地修改和完善梯形图。有时需要多次反复地调试和修改梯形图,增加很多辅助触点和中间编程元件。最后才能得到一个较为满意的结果。这种方法没有普遍的规律可以遵循,具有很大的试探性和随意性,最后的结果不是一的。设计所用的时间、设计的质量与设计者的经验有很大的关系。所以有人把这种设计方法叫做经验设计法。它可以用于较简单的梯形图(如手动程序)的设计。下面通过自动上下料启动机械手控制的例子让读者来体会这种设计方法的麻烦。
表 自动上下料气动机械手控制系统plc I/O地址分配
功能名称 | 动作器件 | I / O地址 |
工作方式选择 | SB1=OFF 单周期,SB1=ON 自动循环 | I0.0 |
单周期启动 | SB2 | I0.1 |
自动循环启动 | SB3 | I0.2 |
自动循环停止 | SB4 | I0.3 |
上限位 | SQ1 | I0.4 |
下限位 | SQ2 | I0.5 |
左限位 | SQ3 | I0.6 |
右限位 | SQ4 | I0.7 |
右工位空 | SQ5 | I1.0 |
下降 | YV1 | Q0.0 |
右行 | YV2 | Q0.1 |
夹持 | YV3 | Q0.2 |
加工 | YV4 | Q0.3 |
工作状态指示 | HL1 | Q0.4 |
图1 自动上下料气动机械手示意图
图2 自动上下料气动机械手控制电路
图3 自动上下料气动机械手控制程序