05S7-300程序结构与程序设计课件.ppt

上传人(卖家):晟晟文业 文档编号:4300465 上传时间:2022-11-27 格式:PPT 页数:39 大小:1.09MB
下载 相关 举报
05S7-300程序结构与程序设计课件.ppt_第1页
第1页 / 共39页
05S7-300程序结构与程序设计课件.ppt_第2页
第2页 / 共39页
05S7-300程序结构与程序设计课件.ppt_第3页
第3页 / 共39页
05S7-300程序结构与程序设计课件.ppt_第4页
第4页 / 共39页
05S7-300程序结构与程序设计课件.ppt_第5页
第5页 / 共39页
点击查看更多>>
资源描述

1、25.1 S7-300 CPU 中的程序中的程序nS7-300 CPU程序分程序分操作系统操作系统和和用户程序用户程序:操作系统:操作系统:由由PLC的生产厂家提供,完成的生产厂家提供,完成PLC起动、起动、刷新、调用用户程序、中断刷新、调用用户程序、中断/诊断诊断/通信处理等任务。通信处理等任务。用户程序:用户程序:用户为完成特定的任务而编写的应用程序,用户为完成特定的任务而编写的应用程序,由由STEP 7编写,编译后下载到编写,编译后下载到PLC的的CPU中。中。第第5章章 S7-300程序结构与程序设计程序结构与程序设计35.1.1 用户程序中的块用户程序中的块nSTEP7用用文件块文件

2、块的形式管理用户编写的程序及程序运的形式管理用户编写的程序及程序运行所需的行所需的数据数据,组成,组成结构化结构化的用户程序。的用户程序。n结构化编程结构化编程可使程序组织明确、结构清晰、易于阅读可使程序组织明确、结构清晰、易于阅读和修改。和修改。nSTEP7 用户程序块:用户程序块:组织块组织块(OB)功能块功能块(FB)功能功能(FC)数据块数据块(DB)逻辑块逻辑块41.组织块组织块OBnOB1是主程序循环块,在任何情况下都必须存在。是主程序循环块,在任何情况下都必须存在。nOB100OB102用于系统初始化用于系统初始化 只上电执行一次。只上电执行一次。nOB10OB17用于日期时间中

3、断用于日期时间中断 CPU属性设置。属性设置。nOB30OB38用于循环中断用于循环中断 CPU属性设置。属性设置。OB10.17日期时间中断日期时间中断OB80.87异步错误异步错误OB20.23延时中断延时中断定期的定期的程序执行程序执行OB30.38循环中断循环中断事件驱动的事件驱动的程序执行程序执行OB40.47硬件中断硬件中断OB100OB101启动启动OB102循环的循环的程序执行程序执行OB1OB121,122同步错误同步错误错误错误OB中断中断OB52.功能块功能块FB和功能和功能FCnFB、FC是用户是用户“子程序子程序”;nFB带带“记忆记忆”功能,数据记忆在功能,数据记忆

4、在FB带有的带有的背景数据背景数据块块DB(Instance Data Block)中;中;n在在FB块结束时数据继续保持,即被块结束时数据继续保持,即被“记忆记忆”。n功能功能FC不带不带“记忆记忆”,没有背景数据块。,没有背景数据块。3.系统功能块系统功能块SFB和系统功能和系统功能SFCnSFB和和SFC集成在集成在S7功能程序库中;功能程序库中;n用户可以直接调用,但不能修改。用户可以直接调用,但不能修改。64.数据块数据块DBnDB是用户定义的用于存取数据的存储区,可以被打开是用户定义的用于存取数据的存储区,可以被打开或关闭。或关闭。nDB可以是某个可以是某个FB的背景数据块;也可以

5、是通用的全的背景数据块;也可以是通用的全局数据块,用于局数据块,用于FB或或FC的数据存储。的数据存储。n数据块分类:数据块分类:全局全局(共享共享)数据块数据块背景数据块背景数据块用户定义数据块。用户定义数据块。785.FC和和FB的区别的区别nFB带自己的存储区带自己的存储区(背景数据块背景数据块);nFC不带存储区不带存储区;n调用调用FB可以通过背景数据块传递参数,因此必须指可以通过背景数据块传递参数,因此必须指定一背景数据块;定一背景数据块;n调用调用FC必须通过实参和形参互传参数。必须通过实参和形参互传参数。9块调用的分层结构块调用的分层结构背景DB共享DBFB/SFB背景DBFB

6、/SFBOB操作系统FC/SFCFC/SFC共享DBSTEP7的块的块115.1.2 用户程序设计方法:用户程序设计方法:1.线性化编程线性化编程n把用户程序全部放置在一个循环程序块把用户程序全部放置在一个循环程序块(OB1)中,块中中,块中的程序按顺序逐条执行;的程序按顺序逐条执行;nCPU通过反复执行通过反复执行OB1来实现自动化控制任务。来实现自动化控制任务。n这种结构和这种结构和PLC所代替的硬接线继电器控制类似。所代替的硬接线继电器控制类似。2.模块化编程模块化编程(分部式分部式)n把整个程序按任务分成若干个部分,并分别放置在不同把整个程序按任务分成若干个部分,并分别放置在不同的功能

7、的功能(FC)、功能块、功能块(FB)及组织块中;及组织块中;n在一个块中可以进一步分解成段。在一个块中可以进一步分解成段。n在组织块在组织块OB1中包含按顺序调用这些块的指令,并控制中包含按顺序调用这些块的指令,并控制程序执行。程序执行。123.结构化编程结构化编程n根据控制任务,把过程要求类似或相关的功能进行分根据控制任务,把过程要求类似或相关的功能进行分类,分割为几个通用的小任务,这些小任务用相应的类,分割为几个通用的小任务,这些小任务用相应的程序段表示,称为块程序段表示,称为块(FC或或FB)。nOB1通过调用这些程序块来完成自动化控制任务。通过调用这些程序块来完成自动化控制任务。特点

8、:特点:n每个块每个块(FC或或FB)在在OB1中可能会被多次调用,以完成中可能会被多次调用,以完成相同工艺要求但不同参数的控制对象。相同工艺要求但不同参数的控制对象。n简化程序设计过程、减小代码长度、提高编程效率。简化程序设计过程、减小代码长度、提高编程效率。n适合较复杂的自动化控制任务的设计。适合较复杂的自动化控制任务的设计。135.2 数据块中的数据存储数据块中的数据存储5.2.1 数据存储区数据存储区n数据以变量形式存储,且具唯一。数据以变量形式存储,且具唯一。n数据可以存储在数据可以存储在PII、PIQ、M、L堆栈和堆栈和DB中。中。n数据可以基本数据类型、复杂数据类型或参数类型。数

9、据可以基本数据类型、复杂数据类型或参数类型。n全局变量全局变量符号表符号表或或共享数据块共享数据块中声明的变量。中声明的变量。n局部变量局部变量 OB、FC和和FB的变量声明表中的变量。的变量声明表中的变量。145.2.2 数据块数据块1.数据块的分类数据块的分类n符号表:符号表:只为方便程序阅读,用于给变量设定名称;只为方便程序阅读,用于给变量设定名称;符号表中变量为符号表中变量为全局变量全局变量,可在程序所有地方使用。,可在程序所有地方使用。n全局全局(共享共享)数据块:数据块:存储全局数据,所有逻辑块存储全局数据,所有逻辑块(OB、FC、FB)都可以访问共享数据块的数据。都可以访问共享数

10、据块的数据。n背景数据块:背景数据块:私有存储器区,只用作私有存储器区,只用作FB的存储器。的存储器。背景数据块中包含了背景数据块中包含了FB的参数和静态变量。的参数和静态变量。背景数据块由编辑器生成,不能由用户编辑。背景数据块由编辑器生成,不能由用户编辑。n用户定义数据块:用户定义数据块:以以UDT为模板所生成的数据块。为模板所生成的数据块。152.数据块寄存器数据块寄存器nCPU有两个数据块寄存器:有两个数据块寄存器:DB(共享数据块共享数据块):DBX、DBB、DBW、DBD DI(背景数据块背景数据块):DIX、DIB、DIW、DID 可以同时被打开。可以同时被打开。165.2.3 数

11、据块的数据结构数据块的数据结构n数据块中含有不同数据类型的数据;数据块中含有不同数据类型的数据;n在在STEP 7数据块中的数据包括:数据块中的数据包括:基本数据类型基本数据类型 复杂数据类型复杂数据类型 用户定义数据类型用户定义数据类型(UDT)175.2.4 建立数据块建立数据块nSTEP7中,只要使用数据块就必须先建立数据块,中,只要使用数据块就必须先建立数据块,并在块中定义变量。并在块中定义变量。n数据块定义:变量名、数据类型以及初始值等。数据块定义:变量名、数据类型以及初始值等。n数据块中变量的顺序及类型决定了数据块的数据结数据块中变量的顺序及类型决定了数据块的数据结构,变量的数量决

12、定了数据块的大小。构,变量的数量决定了数据块的大小。说明说明:数据块建好后,必须同程序块一起下载到数据块建好后,必须同程序块一起下载到CPU中才能被程序访问,否则中才能被程序访问,否则CPU进入进入STOP状态。状态。18方法方法1:用用SIMATIC Manager创建数据块。创建数据块。19方法方法2:用用S7程序编辑器创程序编辑器创建数据块。建数据块。输入数据块名称输入数据块名称点击点击“新建新建”图标图标选择项目类型选择项目类型选择选择S7项目项目选择数据块类型选择数据块类型20新建新建DB类型选择窗口类型选择窗口 创建共享数据块创建共享数据块创建创建UDTUDT数据数据块块指定相配套

13、的指定相配套的UDTUDT指定相配套的指定相配套的FBFB创建背景数据块创建背景数据块21编辑共享数据块编辑共享数据块(变量定义变量定义)DB1DB1原始窗口原始窗口在在DB1DB1内声明变量内声明变量225.2.5 访问数据块访问数据块n用户程序有多个数据块,在访问数据块时,必须指明用户程序有多个数据块,在访问数据块时,必须指明数据块的编号、数据类型与位置数据块的编号、数据类型与位置。n如果访问不存在的数据单元或数据块,又没有编写错如果访问不存在的数据单元或数据块,又没有编写错误处理误处理OB块,块,CPU将进入将进入STOP模式。模式。23n数据块的寻址数据块的寻址241.打开数据块然后访

14、问数据打开数据块然后访问数据n可用装入可用装入L或传送或传送T指令访问已经打开的指令访问已经打开的DB块。块。【例【例5-2-2】打开并访问】打开并访问共享数据块共享数据块。25【例【例5-2-3】打开并访问】打开并访问背景数据块背景数据块。262.直接访问数据块直接访问数据块指令中直接给出数据块的编号和数据在数据块中的指令中直接给出数据块的编号和数据在数据块中的地址。地址。可以用绝对地址,也可用符号地址直接访问数据块。可以用绝对地址,也可用符号地址直接访问数据块。用绝对地址直接访问数据块:用绝对地址直接访问数据块:用用符号地址符号地址直接访问数据块:直接访问数据块:275.3 逻辑块逻辑块(

15、FC和和FB)的结构及编程的结构及编程逻辑块逻辑块 FC、FB和和OB。nFB:带有背景数据块,其数据结构与该:带有背景数据块,其数据结构与该FB参数相同。参数相同。FB调用结束后数据保存在背景数据块中。调用结束后数据保存在背景数据块中。nFC:不带背景数据块,:不带背景数据块,FC调用结束后数据不保存。调用结束后数据不保存。nOB:由操作系统直接调用。:由操作系统直接调用。285.3.1 逻辑块逻辑块(FC和和FB)的结构的结构n逻辑块由变量声明表、代码段及其属性等部分组成。逻辑块由变量声明表、代码段及其属性等部分组成。29nFB的变量声明表的变量声明表nFC的变量声明表的变量声明表301.

16、局部变量声明表局部变量声明表n逻辑块上部都有变量声明表逻辑块上部都有变量声明表局部变量声明表。局部变量声明表。n局部数据分为局部数据分为参数参数和和局部变量局部变量。n局部变量局部变量包括包括静态变量静态变量和和临时变量临时变量。变量名变量名类型类型说说 明明输入参数输入参数In由调用它的块提供参数,输入给本逻辑块由调用它的块提供参数,输入给本逻辑块输出参数输出参数Out向调用它的块返回参数,即从本逻辑块输出数据向调用它的块返回参数,即从本逻辑块输出数据I/O参数参数In_Out 参数的值由被调用的块提供,经本块运算后再返回参数的值由被调用的块提供,经本块运算后再返回静态变量静态变量Stat存

17、储在背景数据块中,块调用结束后其内容被保留存储在背景数据块中,块调用结束后其内容被保留临时变量临时变量Temp本块执行过程中暂存变量值,本块结束变量值丢失本块执行过程中暂存变量值,本块结束变量值丢失31数据块数据的存储:数据块数据的存储:nFB:带有背景数据块,内部包含带有背景数据块,内部包含参数变量参数变量,FB的运行的运行结果保存在背景数据块中。结果保存在背景数据块中。在调用在调用FB时,若没有提供实参,则功能块使用背时,若没有提供实参,则功能块使用背景数据块中的数值。景数据块中的数值。nFC:不带背景数据块,不能使用静态变量。不带背景数据块,不能使用静态变量。在调用在调用FC时,必须使用

18、实参。时,必须使用实参。nOB:调用:调用OB由操作系统管理的,用户不能参与。由操作系统管理的,用户不能参与。322.逻辑块局部变量的数据类型逻辑块局部变量的数据类型n基本数据类型、复式数据类型、参数类型。基本数据类型、复式数据类型、参数类型。n参数类型包括定时器、计数器、块的地址或指针等。参数类型包括定时器、计数器、块的地址或指针等。33n局部变量的设置如下:局部变量的设置如下:345.3.2 逻辑块逻辑块(FC和和FB)的编程的编程对逻辑块编程时必须编辑下列三个部分:对逻辑块编程时必须编辑下列三个部分:变量声明:变量声明:n定义形参、静态变量定义形参、静态变量(FC没有没有)和临时变量;和

19、临时变量;n选择变量名选择变量名(Name)、数据类型、数据类型(Data Type);n如果需要,设置变量初始值如果需要,设置变量初始值(Initial Value)、加注、加注释释(Comment)。n局部变量的地址局部变量的地址(Address)由由STEP7自动产生。自动产生。代码段:用不同编程语言对代码段:用不同编程语言对PLC进行编程。进行编程。块属性:块属性包含一些附加信息。块属性:块属性包含一些附加信息。351.临时变量的定义和使用临时变量的定义和使用362.形式参数的定义形式参数的定义n形式参数有形式参数有3种:种:IN:只读,输入:只读,输入OUT:只写,输出:只写,输出I

20、N_OUT:读:读/写,输入写,输入/输出输出37选择参数类型选择参数类型输入参数名称输入参数名称数据类型数据类型参数注解参数注解定义输入参数定义输入参数定义输出参数定义输出参数定义输入定义输入/输出参数输出参数数据类型下拉列表数据类型下拉列表383.编写控制程序编写控制程序n编写逻辑块(编写逻辑块(FC和和FB)程序时,可以用以下两种)程序时,可以用以下两种方式使用局部变量:方式使用局部变量:使用变量名:变量名前加前缀使用变量名:变量名前加前缀“#”。使用局部变量的地址,只适用于背景数据块。使用局部变量的地址,只适用于背景数据块。n在调用在调用FB块时,要指定背景数据块。块时,要指定背景数据块。39梯形图编程的基本规则梯形图编程的基本规则v触点只能与左母线相连,不能与右母线相连;触点只能与左母线相连,不能与右母线相连;v线圈只能与右母线相连,不能直接与左母线相连,线圈只能与右母线相连,不能直接与左母线相连,右母线可以省略;右母线可以省略;v线圈可以并联,不能串联连接;线圈可以并联,不能串联连接;v指令执行顺序:从左到右,从上到下。指令执行顺序:从左到右,从上到下。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(05S7-300程序结构与程序设计课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|