分享

西门子OB块、FC块、FB块、DB块之间有什么关系?如何调用?

 弯丘 2020-01-18

我们在用西门子STEP或者TIA等编程程序的时候,必不可少的就是块编程以及调用,那么什么是块?他们之间有什么关系?如何调用?用在什么场合?

首先,建立一个新的文件,创建一个工艺所需的项目,对项目进行硬件组态,选择合适的CPU,CPU型号为CPU 1211C AC/DC/Rly,此CPU有25 KB 工作存储器;120/240VAC 电源,板载 DI6 x 24VDC 漏型/源型,DQ4 x 继电器输出和 AI2;板载 3 个高速计数器(可通过数字量信号板进行扩展)和 2 路脉冲输出;信号板扩展板载式 I/O;多达 3 个可进行串行通信的通信模块;0.1ms/1000 条指令;PROFINET 接口用于编程、HMI 以及 PLC 间通信,符合工艺所需。

再次,打开程序块中,我们就看见有一个Main[OB1]在程序块下方,此程序块为系统自动生成主程序块,用来循环 OB 依次调用一些子程序,必须将我们所编程序放入OB块进行调用才能执行程序。点击添加新块,及出现我们所要编程应用的块有OB FB FC DB等

西门子OB块、FC块、FB块、DB块之间有什么关系?如何调用?

添加新块画面

1、那么什么是OB块【组织块】?它有什么作用呢?

组织块 (OB) 是用来构成操作系统和用户程序之间的接口,由操作系统调用具有如下作用。

● 自动化系统的启动特性

● 循环程序处理

●中断驱动的程序执行

● 错误处理

可以对组织块进行编程并同时确定 CPU 的特性。 根据使用的 CPU ,提供有各种不同的组

织块。

西门子OB块、FC块、FB块、DB块之间有什么关系?如何调用?

OB块类别

2、那么什么是FC块【函数】?它有什么作用呢?

函数 (FC) 是不带存储器的代码块。 由于没有可以存储块参数值的数据存储器。 因此,调用函数时,必须给所有形参分配实参。函数可以使用全局数据块永久性存储数据。有以下作用

函数包含一个程序,在其它代码块调用该函数时将执行此程序。

● 将函数值返回给调用块

● 执行工艺功能

可以在程序中的不同位置多次调用同一个函数。 因此,函数块简化了对重复发生的函数的

编程。

3、那么什么是FB块【函数块】?它有什么作用呢?

函数块是一种代码块,它将输入、输出和输入输出参数永久地存储在背景数据块中,从而

在执行块之后,这些值依然有效。 所以函数块也称为有存储器的块。

函数块也可以使用临时变量。 临时变量并不存储在背景数据块中,而用于一个循环。

函数块包含总是在其它代码块调用该函数块时执行的子例程。 可以在程序中的不同位置多

次调用同一个函数块。 因此,函数块可用于对重复发生的函数的编程。

4、那么什么是DB块【数据块】?它有什么作用呢?

数据块用于存储程序数据。 因此,数据块包含由用户程序使用的变量数据。 全局数据块存

储所有其它块都可使用的数据。

数据块包含全局数据块和背景数据块,全局数据块可以在整个项目中重复使用,而背景数据块是伴随FB块的建立而形成的,它是专门为一个FB块服务,FB块被调用一次就会产生一个DB背景数据块,它只用来存储由于被调用而产生它的FB块,用来保存FB块接口数据以及静态变量等

西门子OB块、FC块、FB块、DB块之间有什么关系?如何调用?

硬件组态

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多