声明: 本人现在在江苏省太仓一家企业上班,本博客发的内容仅代表本人的观点,不代表公司,仅
仅是一些技术分享,如果有和公司相冲突的保密性技术,本人会处理掉,同时也感谢公司给我机会,业
余在网上写一些技术文章,本人也会更加珍惜现在的工作机会,努力回报公司。
数据块主要用于存储程序的数据。依据前面的介绍,根据一个数据块是否被划分给一个功能块支配,可将数据块分为全局数据块和背景数据块。全局数据块是指没有被任何功能块支配的数据块,背景数据块则是指被功能块支配的数据块。
数据块中存储的数据在程序的运行过程中是需要读出的,用于程序的执行;而程序执行完毕又要将数据写进数据块,因此就涉及对数据块的操作。不管是读出数据还是写进数据,在对数据块进行操作之前都要打开数据块。
S7系统中有两个数据块寄存器:全局数据块寄存器(DB)和背景数据块寄存器(DI)。很明显,DB用于打开全局数据块,而DI用于打开背景数据块。在PLC系统中,数据可以分为位、字节、字、双字等类型进行操作;那么用DB或DI打开数据块,进行数据的读出或写入操作时,在指令形式上也要给出数据的操作类型。例如,用DB打开一个数据块,然后进行字运算,则表示如DBWy;具体的形式如表4-12所示。
说明:DB/DI指用于打开数据块的寄存器类型;紧跟在DB/DI后的X、B、W、D分别指位、字节、字、双字;y指字节的地址,x指一个字节中位的地址。
在具体程序中实现打开数据块的指令是OPEN指令,该指令的具体应用如图4-59所示。用OPEN指令打开的数据块必须是预先建立好的,对于全局数据块和背景数据块都可以用OPEN指令打开。
图4-59 用OPEN指令打开数据块