| 作者 | 主题 |
|---|---|
|
Jude 新手 经验值:48 发帖数:23 精华帖:0 |
楼主
主题:请教一个有关多重背景的问题
现在有一段程序就是采集一个传感器数据,然后Scale并且生成报警。整个项目可能会有几十个乃至上百个同样的传感器。
原来人家使用FC做的,具体就是调用fc,然后再fc内部使用间接寻址的办法,把数值写到相应的实际DB,然后再做各种处理。 我想问,可不可以使用多重背景来实现这个功能? 还有如果可以,那么上位怎么采集相应的数据? 再有就是,多重背景里面,每次不同背景的数据保存在哪里?是静态变量里面么?如果是,那我在一个OB里面大量调用多重背景(上百个)会不会有什么不好的影响? |
|
东方红一红 版主 经验值:16855 发帖数:6779 精华帖:50 |
楼
主题:回复:请教一个有关多重背景的问题
在S7体系里,多重背景数据块与多个背景数据块是两个概念。不同编号相同结构的数据块是多背景数据块,比如常用的PID函数FB41可以有多个不同的背景数据块。多重背景数据块是在一个背景数据块里包含有不同FB的背景数据块,一般只在DB块非常多,系统DB编号资源不够用或出于管理方便等目的才会用到。这样用一个大的背景数据块装入很多小的数据块,减少了DB的数量。这些小的数据块结构取决于不同的FB,可以相同也可以不同。
只要对传感器的处理逻辑是一样的就可以,不同传感器的数据存放在不同的DB里。就像调用系统库PID函数FB41,对于不同的PID回路用各自的背景数据块DB调用FB41即可。比FC+指针简单。 上位采集相应传感器数据时只要访问相应DB的对应单元即可。
知其道,用其妙!
|