技术论坛

FB生成的背景数据块数组

作者 主题
侠圣

经验值: 2241
发帖数: 378
精华帖: 4
主题:【求助】FB生成的背景数据块数组
推荐帖


只看楼主 只看精华 楼主 2018-11-09 20:42:50

程序中,一个FB块,多处引用,生成10个背景DB块。这10个DB块是否有办法可以做成数组?


 
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1516773&b_id=66&s_id=0&num=18

至圣

经验值: 13749
发帖数: 2032
精华帖: 16
回复:FB生成的背景数据块数组
精华帖精华帖星级2级 推荐帖


只看楼主 只看精华 4楼 2018-11-10 21:21:57

按照这个做




工控毁我青春!
以下网友喜欢您的帖子:

  
侠客

经验值: 825
发帖数: 68
精华帖: 0
回复:FB生成的背景数据块数组
推荐帖


只看楼主 只看精华 1楼 2018-11-10 11:14:20

可以把这10个背景DB块用多重背景只生成一个背景


以下网友喜欢您的帖子:

  
侠圣

经验值: 2241
发帖数: 378
精华帖: 4
回复:FB生成的背景数据块数组
推荐帖


只看楼主 只看精华 楼主 2楼 2018-11-10 13:26:22
不太明白,大侠能在讲的更清楚一些吗?谢谢
 
以下网友喜欢您的帖子:

  
至圣

经验值: 43587
发帖数: 15780
精华帖: 61
回复:FB生成的背景数据块数组
推荐帖


只看楼主 只看精华 3楼 2018-11-10 20:26:35

fb2中建立10个静态变量调用fb1 10次,然后ob中调用fb2,fb2的背景db中就包含了10个fb1的背景数据。


活到老,学到老!为了生活学习吧!
以下网友喜欢您的帖子:

  
侠圣

经验值: 2124
发帖数: 43
精华帖: 4
回复:FB生成的背景数据块数组
推荐帖


只看楼主 只看精华 5楼 2018-11-10 22:55:21
如果使用STEP7编程,像一楼所述生成一个多重背景数据块(在变量声明中使用静态变量)。
 
以下网友喜欢您的帖子:

  
侠圣

经验值: 2241
发帖数: 378
精华帖: 4
回复:FB生成的背景数据块数组
精华帖精华帖星级1级 推荐帖


只看楼主 只看精华 楼主 6楼 2018-11-11 09:32:43
以下是引用周杰伦在2018-11-10 21:21:57的发言 >4楼

按照这个做



谢谢大侠,TIA V15可以实现这个功能。这个功能太重要了,谢谢大侠,非常感谢


 
以下网友喜欢您的帖子:

  
版主

经验值: 76195
发帖数: 19142
精华帖: 378
回复:FB生成的背景数据块数组
推荐帖


只看楼主 只看精华 7楼 2018-11-11 22:01:07


只能使用多重背景来做,参数实例目前无法数组化

Zane 注册自动化系统工程师 Always save before download
以下网友喜欢您的帖子:

  
侠圣

经验值: 2241
发帖数: 378
精华帖: 4
回复:FB生成的背景数据块数组
推荐帖


只看楼主 只看精华 楼主 8楼 2018-11-13 15:04:52
以下是引用Zane在2018-11-11 22:01:07的发言 >7楼


只能使用多重背景来做,参数实例目前无法数组化

这几天试了一下。在1500里面,参数实例目前是无法数组化。可以通过把参数做成UDT,然后建立数据类型为UDT的数组进行处理。

1200 可以数组化。


非常感谢各位的帮助。


 
以下网友喜欢您的帖子:

  
奇侠

经验值: 8624
发帖数: 688
精华帖: 0
回复:FB生成的背景数据块数组
推荐帖


只看楼主 只看精华 9楼 2018-11-15 14:44:55

进来学习学习,以前没用过


每天更新
以下网友喜欢您的帖子:

  
至圣

经验值: 14877
发帖数: 1015
精华帖: 1
回复:FB生成的背景数据块数组


只看楼主 只看精华 10楼 2018-11-16 16:23:25

 虽然也写过很多程序了,但是这个功能还真没用过


自己不努力,一切全白费
以下网友喜欢您的帖子:

  
侠士

经验值: 1383
发帖数: 133
精华帖: 0
回复:FB生成的背景数据块数组


只看楼主 只看精华 11楼 2018-11-25 14:29:19

除非才开始做程序的时候,做PLC数据类型。


突破
以下网友喜欢您的帖子:

  
侠圣

经验值: 2241
发帖数: 378
精华帖: 4
回复:FB生成的背景数据块数组


只看楼主 只看精华 楼主 12楼 2018-12-15 21:37:41

在做这个程序时没注意PLC的硬件版本。因为这个折腾了好长时间。最终关于FB背景数据数组问题总结如下。看是否是这个样子?

假如在程序中已有FB1和FB2

在早期的硬件版本的1200/1500系列PLC里,在FB2的Static里建立FB1的多重实例 ARRAY[0..1] OF "FB1",这样是不允许的。

例如订货号6ES7 515-2AM00-0AB0(版本最高1.8) 的1515-2PN里是不允许的。

而订货号为6ES7 515-2AM01-0AB0(版本最高2.6) 的1515-2PN里程序时可以的,在该版本号的PLC的FB2的Static里可以创建ARRAY[0..1] OF "FB1"

请问各位,是这个样子吗?


 
以下网友喜欢您的帖子:

  
侠圣

经验值: 2241
发帖数: 378
精华帖: 4
回复:FB生成的背景数据块数组


只看楼主 只看精华 楼主 13楼 2018-12-15 21:43:54
以下是引用那一剑的温柔在2018-12-15 21:37:41的发言 >12楼

在做这个程序时没注意PLC的硬件版本。因为这个折腾了好长时间。最终关于FB背景数据数组问题总结如下。看是否是这个样子?

假如在程序中已有FB1和FB2

在早期的硬件版本的1200/1500系列PLC里,在FB2的Static里建立FB1的多重实例 ARRAY[0..1] OF "FB1",这样是不允许的。

例如订货号6ES7 515-2AM00-0AB0(版本最高1.8) 的1515-2PN里是不允许的。

而订货号为6ES7 515-2AM01-0AB0(版本最高2.6) 的1515-2PN里程序时可以的,在该版本号的PLC的FB2的Static里可以创建ARRAY[0..1] OF "FB1"

请问各位,是这个样子吗?

谢谢。

当时在硬件版本这部分确实疏忽了。


 
以下网友喜欢您的帖子:

  
侠圣

经验值: 2327
发帖数: 1042
精华帖: 6
回复:FB生成的背景数据块数组


只看楼主 只看精华 14楼 2018-12-17 07:57:43
以下是引用那一剑的温柔在2018-12-15 21:43:54的发言 >13楼

谢谢。

当时在硬件版本这部分确实疏忽了。

以下是引用那一剑的温柔在2018-12-15 21:37:41的发言 >12楼:在做这个程序时没注...

引用12楼详细内容:

在做这个程序时没注意PLC的硬件版本。因为这个折腾了好长时间。最终关于FB背景数据数组问题总结如下。看是否是这个样子?

假如在程序中已有FB1和FB2

在早期的硬件版本的1200/1500系列PLC里,在FB2的Static里建立FB1的多重实例 ARRAY[0..1] OF "FB1",这样是不允许的。

例如订货号6ES7 515-2AM00-0AB0(版本最高1.8) 的1515-2PN里是不允许的。

而订货号为6ES7 515-2AM01-0AB0(版本最高2.6) 的1515-2PN里程序时可以的,在该版本号的PLC的FB2的Static里可以创建ARRAY[0..1] OF "FB1"

请问各位,是这个样子吗?

请问这种方法如果标准功能有错误,如何监控某个指定的位置


1 我有什么,我凭什么 2 我要什么 3 挣35岁以后的钱
以下网友喜欢您的帖子:

  
侠圣

经验值: 2241
发帖数: 378
精华帖: 4
回复:FB生成的背景数据块数组


只看楼主 只看精华 楼主 15楼 2018-12-17 09:27:36
以下是引用纯属虚构在2018-12-17 07:57:43的发言 >14楼

请问这种方法如果标准功能有错误,如何监控某个指定的位置

以下是引用那一剑的温柔在2018-12-15 21:43:54的发言 >13楼:谢谢。当时在硬件版...

引用13楼详细内容:

谢谢。

当时在硬件版本这部分确实疏忽了。

以下是引用那一剑的温柔在2018-12-15 21:37:41的发言 >12楼:在做这个程序时没注...

引用12楼详细内容:

在做这个程序时没注意PLC的硬件版本。因为这个折腾了好长时间。最终关于FB背景数据数组问题总结如下。看是否是这个样子?

假如在程序中已有FB1和FB2

在早期的硬件版本的1200/1500系列PLC里,在FB2的Static里建立FB1的多重实例 ARRAY[0..1] OF "FB1",这样是不允许的。

例如订货号6ES7 515-2AM00-0AB0(版本最高1.8) 的1515-2PN里是不允许的。

而订货号为6ES7 515-2AM01-0AB0(版本最高2.6) 的1515-2PN里程序时可以的,在该版本号的PLC的FB2的Static里可以创建ARRAY[0..1] OF "FB1"

请问各位,是这个样子吗?

在V15.1的SCL编辑器中支持断点测试、逐过程、逐语句等调试过程。和高级语言的环境一样。这些功能可以很方便调试和监控某个指定位置。在断点测试、等这些功能监控时,当程序执行到断点时CPU会暂停执行程序,会影响现场设备动作。需要注意


 
以下网友喜欢您的帖子:

  
侠圣

经验值: 2327
发帖数: 1042
精华帖: 6
回复:FB生成的背景数据块数组


只看楼主 只看精华 16楼 2018-12-17 13:42:35
以下是引用那一剑的温柔在2018-12-17 09:27:36的发言 >15楼

在V15.1的SCL编辑器中支持断点测试、逐过程、逐语句等调试过程。和高级语言的环境一样。这些功能可以很方便调试和监控某个指定位置。在断点测试、等这些功能监控时,当程序执行到断点时CPU会暂停执行程序,会影响现场设备动作。需要注意

以下是引用纯属虚构在2018-12-17 07:57:43的发言 >14楼:请问这种方法如果标...

引用14楼详细内容:

请问这种方法如果标准功能有错误,如何监控某个指定的位置

以下是引用那一剑的温柔在2018-12-15 21:43:54的发言 >13楼:谢谢。当时在硬件版...

引用13楼详细内容:

谢谢。

当时在硬件版本这部分确实疏忽了。

以下是引用那一剑的温柔在2018-12-15 21:37:41的发言 >12楼:在做这个程序时没...

引用12楼详细内容:

在做这个程序时没注意PLC的硬件版本。因为这个折腾了好长时间。最终关于FB背景数据数组问题总结如下。看是否是这个样子?

假如在程序中已有FB1和FB2

在早期的硬件版本的1200/1500系列PLC里,在FB2的Static里建立FB1的多重实例 ARRAY[0..1] OF "FB1",这样是不允许的。

例如订货号6ES7 515-2AM00-0AB0(版本最高1.8) 的1515-2PN里是不允许的。

而订货号为6ES7 515-2AM01-0AB0(版本最高2.6) 的1515-2PN里程序时可以的,在该版本号的PLC的FB2的Static里可以创建ARRAY[0..1] OF "FB1"

请问各位,是这个样子吗?

SCL是支持断点调试的,但是若是梯形图或者出问题的FB在数组的最后,那调试监控起来比较麻烦 



1 我有什么,我凭什么 2 我要什么 3 挣35岁以后的钱
以下网友喜欢您的帖子:

  
侠圣

经验值: 2241
发帖数: 378
精华帖: 4
回复:FB生成的背景数据块数组


只看楼主 只看精华 楼主 17楼 2018-12-18 10:54:00
您提到的这个问题确实存在。我个人理解,多重实例的数组化其实主要就是针对SCL 的编程方式,为批量处理相同的FB 提供一个便利的编程方式,减少工作量,不知道这样理解是不是正确。用梯形图去调用多重实例的数组,我还没试过,这样做功能上能实现,对于监控程序来讲,确实无法监视数组中某一个数组的状态变量
 
以下网友喜欢您的帖子:

  
游侠

经验值: 498
发帖数: 88
精华帖: 0
回复:FB生成的背景数据块数组


只看楼主 只看精华 18楼 2018-12-18 21:42:40

真的学习了!!


学习快乐 快乐学习
以下网友喜欢您的帖子:

  
  • 上一页
  • 1
  • 下一页
收起
FB生成的背景数据块数组
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。