网络读/写命令除了用户自己编写程序外,还可以利用STEP7-Micro/WIN提供的向导功能,由向导编写好程序,由用户直接使用其程序。
现以网络读/写试验的要求为例,介绍如何利用网络读/写命令向导来完成工作任务。
1.工作任务
现假定主站中有程序,而从站中无程序。所以主站的程序既要读取从站的输入,同时还要把主站的输入写到从站的输出中。
2.解决步骤
首先,必须设置好从站和主站的通信参数,其设置方法和上述一样,在此不再重复。现在主要是利用向导来直接产生程序。
首先点击【向导】中【NETW/NETR】命令,出现如图10-30所示窗口。
因为该任务的程序中有读和写两种操作,所以网络读/写操作的项数值为2,设置好后,点击【下一步】按钮,向导窗口变成图10-31所示窗口。
图10-30 NETW/NETR指令向导窗口1
图10-31 NETW/NETR指令向导窗口2
首先设定要使用的通信口,此处为通信口0。因为向导会自动生成子程序,所以必须给子程序设定一个名称,名称设定后点击【下一步】按钮,向导窗口变成图10-22所示窗口。
要配置网络读和写命令,假定先配置网络读命令,此时按照图10-32中所示设定好参数,其每一个参数的含义文宇表示得很清楚,在此不作重复说明。
图10-32 NETW/NETR指令向导窗口3
【删除操作】命令可以删除当前的操作项,同时也会把网络读/写命令减少一个,即网络读/写命令向导窗口1中设定的参数要减1。
【下一项操作】和【上一项操作】可以在不同的网络读/写命令之间切换设置参数窗口。
参数设置好后,点击【下一项操作】,此时窗口变为如图10-33所示。
在此操作中,要选择网络写命令,按图示设置好参数。其参数的含义窗口中的文宇表达得很清楚。
点击【下一步】按钮,出现如图10-34所示窗口。
生成的子程序要使用一定数量的、连续的存储区,本任务中提示要用19个宇节的存储区,向导只要求设定连续存储区的起始位置即可,但是一定要注意,存储区必须是其他程序中没有使用的,否则程序无法正常运行。设定好存储区起始位置后,点击【下一步】按钮,出现如图10-35所示窗口。在此窗口中,可以为此向导单独起一个名称,以便和其他的网络读/写命令向导区分开。如果要监视此子程序中读/写网络命令执行的情况,请记住【全局符号表】的名称。
图10-33 NETW/NETR指令向导窗口4
(www.xing528.com)
图10-34 NETW/NETR指令向导窗口5
如果要检查或更改前面设置的参数,点击【上一步】按钮,最后点击【完成】按钮,如图10-36所示。
图10-35 NETW/NETR指令向导窗口6
图10-36 NETW/NETR指令向导窗口7
点击【是】命令退出向导,此时程序中会自动产生一个子程序,此任务中子程序的名称为NET_EXE。
要使得子程序NET_EXE运行,不断地读取和写入数据,必须在主程序中不停地调用它。
在指令树的最下面,【调用子程序】中出现NET_EXE子程序,在【向导】的【NETR/NETW】中也会出现相应的提示,如图10-37所示。
如果要改变向导参数设置,只要双击向导名称下面的子项即可,如图中的【起始地址】、【网络读写操作】或【通信端口】。
当调用子程序时,还必须给子程序设定相关的参数,如图10-38所示。
EN为ON时子程序才会执行,程序要求必须用SM0.0控制。Timeout用于时间控制,以s为单位设置,当图10-38通信的时间超出设定时间时,会给出通信错误信号,即位Error为ON。
Cycle是一个周期信号,如果子程序运行正常,会发出一个ON(1)和OFF(0)之间跳变的周期信号。
图10-37 网络读写命令向导完成后的提示
Error为出错标志,当通信出错或超时时,此信号为ON(1)。综上所述,主程序如图10-39所示。
图10-38 给子程序设定相关的参数
图10-39 主程序
程序中,设定超时时间为2s,即周期信号Cycle输出到M0.0中,错误标志Error保存在M0.1中。
如果要监视通信程序运行的情况,可以打开【符号表】中的【NET_SYMS】子表,找到通信程序用到的各种标志的地址,监视它就可以了,如图10-40所示。
图10-40 通信程序的符号表
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。