- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
05S7-300程序结构和程序设计01
第5章 S7-300程序结构与程序设计;5.1 S7-300 CPU 中的程序
S7-300 CPU程序分操作系统和用户程序:
操作系统:由PLC的生产厂家提供,完成PLC起动、刷新、调用用户程序、中断/诊断/通信处理等任务。
用户程序:用户为完成特定的任务而编写的应用程序,由STEP 7编写,编译后下载到PLC的CPU中。;5.1.1 用户程序中的块
STEP7用文件块的形式管理用户编写的程序及程序运行所需的数据,组成结构化的用户程序。
结构化编程可使程序组织明确、结构清晰、易于阅读和修改。
STEP7 用户程序块:
组织块(OB)
功能块(FB)
功能(FC)
数据块(DB);1.组织块OB
OB1是主程序循环块,在任何情况下都必须存在。
OB100~OB102用于系统初始化 —— 只上电执行一次。
OB10~OB17用于日期时间中断 —— CPU属性设置。
OB30~OB38用于循环中断 —— CPU属性设置。;2.功能块FB和功能FC
FB、FC是用户“子程序”;
FB带“记忆”功能,数据记忆在FB带有的背景数据块DB(Instance Data Block)中;
在FB块结束时数据继续保持,即被“记忆”。
功能FC不带“记忆”,没有背景数据块。
3.系统功能块SFB和系统功能SFC
SFB和SFC集成在S7功能程序库中;
用户可以直接调用,但不能修改。;4.数据块DB
DB是用户定义的用于存取数据的存储区,可以被打开或关闭。
DB可以是某个FB的背景数据块;也可以是通用的全局数据块,用于FB或FC的数据存储。
数据块分类:
全局(共享)数据块
背景数据块
用户定义数据块。;砂晰计蚁讶仙趟巫余惰故莲最薄鱼汝缺肉判挡吝顷盲课昌当俘猿蛙质掘拳05S7-300程序结构和程序设计0105S7-300程序结构和程序设计01;5.FC和FB的区别
FB带自己的存储区(背景数据块);
FC不带存储区;
调用FB可以通过背景数据块传递参数,因此必须指定一背景数据块;
调用FC必须通过实参和形参互传参数。;块调用的分层结构;STEP7的块;5.1.2 用户程序设计方法:
1.线性化编程
把用户程序全部放置在一个循环程序块(OB1)中,块中的程序按顺序逐条执行;
CPU通过反复执行OB1来实现自动化控制任务。
这种结构和PLC所代替的硬接线继电器控制类似。
2.模块化编程(分部式)
把整个程序按任务分成若干个部分,并分别放置在不同的功能(FC)、功能块(FB)及组织块中;
在一个块中可以进一步分解成段。
在组织块OB1中包含按顺序调用这些块的指令,并控制程序执行。;3. 结构化编程
根据控制任务,把过程要求类似或相关的功能进行分类,分割为几个通用的小任务,这些小任务用相应的程序段表示,称为块(FC或FB)。
OB1通过调用这些程序块来完成自动化控制任务。
特点:
每个块(FC或FB)在OB1中可能会被多次调用,以完成相同工艺要求但不同参数的控制对象。
简化程序设计过程、减小代码长度、提高编程效率。
适合较复杂的自动化控制任务的设计。;5.2 数据块中的数据存储
5.2.1 数据存储区
数据以变量形式存储,且具唯一。
数据可以存储在PII、PIQ、M、L堆栈和DB中。
数据可以基本数据类型、复杂数据类型或参数类型。
全局变量——符号表或共享数据块中声明的变量。
局部变量—— OB、FC和FB的变量声明表中的变量。;5.2.2 数据块
1.数据块的分类
符号表:只为方便程序阅读,用于给变量设定名称;符号表中变量为全局变量,可在程序所有地方使用。
全局(共享)数据块:存储全局数据,所有逻辑块(OB、FC、FB)都可以访问共享数据块的数据。
背景数据块:私有存储器区,只用作FB的存储器。
背景数据块中包含了FB的参数和静态变量。
背景数据块由编辑器生成,不能由用户编辑。
用户定义数据块:以UDT为模板所生成的数据块。;2.数据块寄存器
CPU有两个数据块寄存器:
DB(共享数据块):DBX、DBB、DBW、DBD
DI(背景数据块): DIX、DIB、DIW、DID
可以同时被打开。
;5.2.3 数据块的数据结构
数据块中含有不同数据类型的数据;
在STEP 7数据块中的数据包括:
基本数据类型
复杂数据类型
用户定义数据类型(UDT);5.2.4 建立数据块
STEP7中,只要使用数据块就必须先建立数据块,并在块中定义变量。
数据块定义:变量名、数据类型以及初始值等。
数据块中变量的顺序及类型决定了数据块的数据结构,变量的数量决定了数据块的大小。
说明:数据块建好后,必须同程序块一起下载到CPU中才能被程序访问,否则CPU进入STOP状态。;方法1:用SIMATIC Manager创建数据块。 ;方法2:用S7程序编辑器创建
文档评论(0)