在STL里使用opn db 和opn di打开同一个数据块有什么区别?

我的理解是背景数据块是根据FB的变量申明表自动创建的,而在STL里可以用OPN DB和OPN DI打开同一个数据块,还可以使用CDB命令交换打开的两个不同的(DB和DI)数据块,我无法理解这两个数据块是如何交换的,还是应理解为OPN DB就是打开作为当前的,OPN DI打开作为背后的、预备的的数据块?不是因为只能同时打开两个数据块嘛,所以要指定哪一个是当前起作用的?

最佳答案

S7-300/400有两个数据块寄存器,DB寄存器和DI寄存器,调用FB时,系统会使用DI寄存器打开FB的背景数据块,所以DI寄存器通常称为背景数据块寄存器,如果不在FB里,DI寄存器和DB寄存器一样使用,通常在需要打开两个数据块时就分别用DB寄存器和DI寄存器打开数据块,当然不是当前的、背后的、预备的这样的概念,比如访问DB1.DBW0,使用DB寄存器访问
OPN   DB  1
L   DBW  0
使用DI寄存器访问
OPN   DI   1
L   DIW  0
两种方式访问效果一样
在STL里DBNO和DINO分别表示当前DB寄存器和DI寄存器打开的数据块号,CDB呢就是交换两个寄存器内容

提问者对于答案的评价:
至此我在选择最佳答案时心里很纠结,因为“我心飞翔”的回答也同样给予我很大的点拨,也一并说声谢谢啦……
综合二位的解答我得出如下结论:
OPN DB和OPN DI命令是指使用哪个DB寄存器来打开数据块,这里不能理解为LAD里的“共享”“背景”数据块,CDB只是交换了寄存器里数据,实际数据块里的数据未变。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc215587.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年11月20日 下午1:45
下一篇 2017年11月20日 下午1:45

相关推荐

  • Profibus-DP可否用星型结构

    上位PC机+CP5613+WINAC作主站,从站为3个6RA70、3个绝对值编码器、2个LENZE伺服驱动器,因线型接法走线不便,想采用星型拓扑,即所有从站的通讯线集中到主站。请问…

    自动化系统综合 2020年11月1日
  • Step与Wincc连接好去辨别的方法

    怎么导入变量 最佳答案 你好!   在PLC里把要上传到上位机的符号变量打上打上“传输标志”,然后通过在SIMATIC Manager的菜单…

    自动化系统综合 2020年10月31日
  • 源型和漏型。

    什么事源型和漏型,谁有比较好理解一点的资料,还有就是2个PLC不用通讯,直接信号互给信号,不用中间继电器转换,怎么接线? 最佳答案 转帖:1、源型(source),电流是从端子流出…

    自动化系统综合 2017年11月26日
  • 组态王安装

    我的组态王是下载的(非正版),采用授权文件安装,有没有哪位知道,为何安装过一次后,操作系统重新安装后,再也装不上了,即安装好了,总运行不了了。这是否组态王的防盗版策略,请高手明示,…

    自动化系统综合 2020年11月1日
  • 寻找资料

    那里有介绍西门子数控里面的 通道  坐标系 插补 等比较基础的资料 最佳答案 已经把你需要的资料发到你的 8128506…

    自动化系统综合 2020年11月1日
  • 现场调试的一些常见电气自控问题

    1.大家都说一下,初到一个项目现场,大侠们都是怎么检测电控柜,实现初次上电的?2.工控机的安装大家安装了WINCC以后是否做系统还原? 你测试过你的系统能完全还原吗?&n…

    自动化系统综合 2017年12月2日
  • 关于编写工业退火炉烧嘴程序问题

    我在搞一个工业退火炉,上面有高压点火烧嘴,没有搞这个烧嘴,上面有大火,小火的,有一个同事写的程序,这几天要试,但我不敢搞,不知道怎么用,会不会有什么危险,程序看的不太明白,大伙有哪…

    2020年10月31日
  • 触摸屏文本闪烁的问题

    我有个触摸屏 想做个报警,plc置位时候弹出一个画面,画面上的文本链接置位的信号,文本变成红色并且闪烁,请问怎么做啊 变成红色简单,请问怎么让文本闪烁? 问题补…

    自动化系统综合 2017年6月5日
  • PLC–逆变器程序

    PLC–逆变器通讯程序时(调SFC14,15)1.我写P#DB1012.DBX0.0,显示红色。但我写“DP_WR”.hotrod,回车后P#DB1012.DBX0.0马上就显示…

    自动化系统综合 2020年10月31日
  • 编程时符号名用英文好还是中文好

    我编程时符号名都用的是中文来写的,但今天听一老师傅说300编程时符号名最好用英文来写,不然会容易出错,想请教下有经验的师傅用中文做符号名可行吗 最佳答案 可以的,不会有问题,我都是…

    2020年10月31日