S7-300的FC、FB及背景DB

一、概述

图片

图片

图片图片图片

图片

图片

图片

图片

图片

图片

 

图片

图片

图片

图片

1、FC的中文名称叫“功能”、FB的中文名称叫“功能块”(在博途中分别叫“函数”和“函数块”)

2、FC、FB相当于200和200Smart中的子程序,写子程序的目的是方便多次调用

3、FB比FC功能更强大,FB中有STAT静态变量,而FC中没有STAT静态变量

二、新建FC并调用、仿真

1、新建FC:空白处右击-“插入新对象”-“功能”-进入后填写相关内容后-“OK” 

图片

2、“名称(N):”仅支持以“FC+数字”的形式填写,不支持别的符号包括中文 

图片

3、点击“详细信息”-便能看到符号名、创建语言和类型等信息

图片

4、双击新建的FC进入后,在“接口”中建立各类型局部变量(是临时变量),以起保停电路为例,建立好后,在“??”处输入任意字符,出现各类型临时变量以供选择。L是临时变量存储区,临时变量以前面加“#”表示,完成FC子程序并保存,如下图所示: 

图片

图片

图片

  • 局部变量有:L、TEMP(临时变量)和STAT(静态变量);

  • 全局变量有:I、Q、M、V、T(定时器)、C(计数器);

  • 写FC与FB时,尽可能用局部变量

5、打开OB1对FC1调用,展开“FC块”-拖动“FC1 起保停”到OB1的程序段1和2中 

图片

6、保存后打开“仿真”,将站点下载到仿真器中-“插入”-“常规”,分别输入MB0与QB0 

图片

7、打开OB1,进行仿真,从而用FC实现子程序的编写和重复调用

图片

三、新建FB并调用、仿真

1、新建FB:空白处右击-“插入新对象”-“功能块”-进入后填写相关内容后-“OK” 

图片

2、“名称(N):”仅支持以“FB+数字”的形式填写,不支持别的符号包括中文 

图片

3、点击“详细信息”-便能看到符号名、创建语言和类型等信息 

图片

4、双击新建的FB进入后,在“接口”中建立各类型局部变量(是临时变量),以起保停电路为例,建立好后,在“??”处输入任意字符,出现各类型临时变量以供选择。L是临时变量存储区,临时变量以前面加“#”表示,完成FB子程序并保存,如下图所示:

图片

图片

  • 局部变量有:L、TEMP(临时变量)和STAT(静态变量);

  • 全局变量有:I、Q、M、V、T(定时器)、C(计数器)

  • 写FC与FB时,尽可能用局部变量

5、打开OB1对FB1调用,展开“FB块”-拖动“FB1 起保停电路”到OB1的程序段中

FB中有背景数据块DB,只用在“???”中输入DB+数值,会自动生成该FB块的背景数据DB 

图片

6、打开背景数据块DB1,里面的内容是自动生成的 

图片

7、保存后打开“仿真”,将站点下载到仿真器中-“插入”-“常规”,分别输入MB0与QB0

图片

8、打开OB1,进行仿真,从而用FB实现子程序的编写和重复调用 

图片

郑宜

2023年2月

 

Tags: