项目二:功能块FB、功能FC和背景数据库DB的创建和使用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用户在变量声明表中创建本块中专用的变量(即局域变量)。局域变量分为IN(输入变量)、OUT(输出变量)、IN-OUT(输入/输出变量)、TEMP(临时变量)和STAT(静态变量)五种类型。
⏹·IN(输入变量):为调用它的块提供的输入参数。
⏹·OUT(输出变量):返回给调用它的块的输出参数。
⏹·IN-OUT(输入-输出变量):初值由调用它的块提供,
被子程序修改后返回给调用它的块。
⏹·TEMP(临时变量):暂时保存在局域数据区中的变量。
只是在执行块时使用临时变量,执行完后,在主程序中不能再使用该变量。
⏹·STAT(静态变量):在功能块的背景数据块中使用。关
闭功能块后,其静态数据保持不变。功能( FC)没有静态变量。
IN(输入变量)、OUT(输出变量)和IN-OUT(输入/输出变量)属于程序块的形式参数。TEMP(临时变量)属于程序块的局域变量,只在它所在的块中有效。STAT(静态变量)只在FB程序块中存在,也属于程序块的局域变量,在它所在的块中有效,而且PLC掉电后STAT变量仍然保持。
每一种类型的变量都包括变量名、变量类型和变量注释。变量声明表的左边给出了该变量表的总体结构,点击某一变量类型,例如“OUT”,在表的右边将显示出该类型局域变量的详细情况。块中的局域变量名必须以字母开始,只能由英语字母、数字、下划线组成,,但是在符号表中定义的共享数据的符号名可以使用其他字符。
在程序中,操作系统在局域变量前面自动加上“#”号。如果在块中只使用局域变量,不使用绝对地址或全局符号,易于形成通用子程序块实现结构化编程,并且易于将程序块移植到别的项目中去。
变量声明后在局域数据块中为临时变量( TEMP)保存有效的存储空间。对于功能块FB,还要为配合使用背景数据块为静态变量(STAT)保存空间。通过设置IN(输入)、OUT(输出)和IN-OUT(输入/输出)类型变量,声明块调用软件接口(即形式参数)。
用户在功能块中声明变量时,除了临时变量外,它们将自动出现在功能块对应的背景数据块中。
在变量声明表中赋值时,不需要指定存储器地址;根据各变量的数据类型,程序编辑器自动地为所有局域变量指定存储器地址。
生成功能块FB并调用
生成背景数据块并修改实际值