首页 理论教育 数据传送指令与程序状态监控技巧

数据传送指令与程序状态监控技巧

时间:2026-01-23 理论教育 季夏 版权反馈
【摘要】:表3-4 部分装载指令与传送指令装载与传送指令的执行与状态位无关,也不会影响到状态位。启动程序状态监控后,从梯形图左侧垂直的“电源”线开始的连线均为绿色,表示有能流从“电源”线流出。有能流流过的方框指令、线圈、连接线和处于闭合状态的触点均用绿色表示。

1.装载指令与传送指令

装载(Load,L)指令与传送(Transfer,T)指令用于在存储器之间或存储器与过程输入、过程输出之间交换数据。

装载指令“L<地址>”将累加器1(ACCU1)原有的内容保存到累加器2,并将累加器1复位为0,然后将被寻址的字节、字或双字装载到累加器1。被装载的字节和字放在累加器的最低字节和低位字。

传送指令“T<地址>”将累加器1的内容传送(复制)到目标地址,累加器1的内容不变。被复制的数据字节数取决于目的地址的数据长度。数据从累加器1传送到外设输出区PQ的同时,也被传送到对应的过程映像输出区(Q区)。表3-4是部分装载指令与传送指令。

表3-4 部分装载指令与传送指令

图示

装载与传送指令的执行与状态位无关,也不会影响到状态位。对于S7-300,L STW指令不装载状态字中的/FC、STA和OR位。

2.语句表程序状态监控

生成一个项目,打开OB1。执行菜单命令“视图”→“STL”,切换到语句表方式,输入图3-33左边的语句表程序。其中的指令“+I”将累加器1和累加器2中的16位整数相加,结果在累加器1中。打开PLCSIM,生成MW2、MW4和MW6的视图对象。将OB1下载到仿真PLC,将仿真PLC切换到RUN-P模式。分别将300和500输入MW2和MW4的视图对象。

图示

图3-33 语句表程序状态监控

单击工具栏上的 图示 按钮,起动程序状态监控功能,图3-33程序区右边窗口中是指令执行的监控信息,称为状态域。图中的RLO和STA是状态字中的两位(见3.2.4节)。STANDARD是累加器1,默认的显示方式为十六进制数。刚开始启动监控时没有ACCU2(累加器2)列。

用右键单击STANDARD所在的表头(见图3-33),执行快捷菜单中的“表达式”→“十进制”命令,改用十进制格式显示累加器1的值。在快捷菜单中累加器1被称为“默认状态”。

执行快捷菜单中的“显示”→“累加器2”命令,添加表头为ACCU2(累加器2)的列,将该列的显示格式也改为十进制数。

用右键单击STA列,执行快捷菜单中的“隐藏”命令,将使该列消失。(https://www.xing528.com)

从图3-33可以看出,执行第一条L指令后,MW2中的300被装载到累加器1,执行第二条指令后,累加器1中的300被传送到累加器2,MW4中的500被装载到累加器1。执行“+I”指令后,累加器1和累加器2的低位字中的数据相加,运算结果800在累加器1中,累加器2被清零。执行T指令后,累加器1中的800被传送到MW6,累加器1中的数据保持不变。

在程序编辑器中执行菜单命令“选项”→“自定义”,打开“自定义”对话框的STL选项卡,可以设置默认的监视内容。

3.梯形图中的传送指令

梯形图中的传送指令只有一条MOVE指令(见图3-34),它直接将源数据IN传送到目的地址OUT,不用经过累加器中转。输入变量和输出变量可以是8位、16位或32位的基本数据类型。同一条指令的输入参数和输出参数的数据类型可以不相同。如果将MW10中的数据传送到MB6,当MW10的值超过255时,只是将MW10的低位字节(MB11)中的数据传送到MB6,应避免出现这种情况。

4.梯形图程序状态的显示

梯形图(LAD)用图3-34中较粗的绿色连续线来表示逻辑运算结果为1,即有“能流”流过;用蓝色点状细线表示状态不满足,没有能流流过;用黑色连续线表示状态未知。

进入程序状态之前,梯形图中的线和元件因为状态未知,全部为黑色。启动程序状态监控后,从梯形图左侧垂直的“电源”线开始的连线均为绿色,表示有能流从“电源”线流出。有能流流过的方框指令、线圈、连接线和处于闭合状态的触点均用绿色表示。

如果有能流流入指令框的使能输入端EN,该指令被执行。如果指令框的使能输出端ENO接有后续元件,有能流从它的ENO端流到与它相连的元件,该指令框为绿色。如果ENO端未接后续元件,则该指令框和ENO输出线均为黑色(见图3-34)。

图示

图3-34 在梯形图程序状态中修改数据值

如果CALL指令成功地调用了逻辑块,CALL线圈为绿色。如果跳转条件满足,跳转被执行,跳转线圈为绿色。被跳过的程序段的指令没有被执行,这些程序段的梯形图为黑色。

梯形图中加粗的字体显示的参数值是当前值,细体字显示的参数值来自以前的循环,即该程序区在当前扫描周期中未被处理。

用鼠标右键单击图3-34中显示的监控数据,执行快捷菜单命令“表达式”,可以将默认的十六进制显示方式改为十进制。BCDLI指令采用默认的“自动”显示方式,输入变量IN和输出变量OUT的显示格式分别为十六进制和十进制。

用左键选中图3-34中的MW10,再用右键单击它,执行出现的快捷菜单中的“修改”命令,可以用出现的“修改”对话框修改MW10的值。右键单击某个触点或线圈,可以用快捷菜单中的命令“修改为0”或“修改为1”来修改它的值。也可以用类似的方法修改语句表程序状态中的变量值。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈