《PLC_技术培训班_(第2讲修改稿)STEP_7编程软件(共84张).pptx》由会员分享,可在线阅读,更多相关《PLC_技术培训班_(第2讲修改稿)STEP_7编程软件(共84张).pptx(84页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、SIEMENS 公司公司S7 PLC标准工具软件标准工具软件 STEP 7 STEP 7 介绍介绍2/28/20221S7 PLC的的STEP 7编程软件介绍编程软件介绍 这一讲通过以西门子公司的这一讲通过以西门子公司的STEP 7编程语言为例,来介绍实际编程语言为例,来介绍实际PLC应用的编程语言,在第应用的编程语言,在第4 4讲中将介绍讲中将介绍PLC编程语言的国际标编程语言的国际标准,即准,即IEC 61131-3 标准。标准。STEP 7编程软件是用来对西门子公司的系列编程软件是用来对西门子公司的系列PLC产品,包括产品,包括S7 300系列、系列、S7 400系列、系列、M7系列以及
2、基于系列以及基于PC的的PLC等产品,进行等产品,进行编程、调试、监视的软件。编程、调试、监视的软件。为了组态为了组态 PLC PLC 硬件配置或开始编写硬件配置或开始编写S7S7用户程序,首先必须在用户程序,首先必须在 PC PC 计算机中安装计算机中安装STEP 7STEP 7软件软件( (如果使用的是编程器,则如果使用的是编程器,则STEP 7STEP 7软件软件已经预装在编程器内已经预装在编程器内) )。在。在STEP 7 CD STEP 7 CD 光盘的光盘的 Readme.wri 文件文件中,有关于安装中,有关于安装STEP 7STEP 7对对 PC PC 计算机的软件和硬件配置要
3、求。计算机的软件和硬件配置要求。 将将STEP 7STEP 7的的 CD 光盘插入光盘插入PC机的光驱中,安装程序能自动执机的光驱中,安装程序能自动执行,按照屏幕上的提示操作,可一步一步完成行,按照屏幕上的提示操作,可一步一步完成STEP 7 STEP 7 软件的安软件的安装。完成装。完成STEP 7STEP 7的安装后,要重新启动计算机,在的安装后,要重新启动计算机,在 PC PC 的的Windows Windows 桌面上会出现一个桌面上会出现一个 SIMATIC Manager SIMATIC Manager 的小图标的小图标 。 2/28/20222 应用应用STEP 7软件,能在一个
4、软件,能在一个 “项目项目” (project) 内内建立起建立起 S7 用户程序用户程序 。可编程序控制器是由电源模。可编程序控制器是由电源模板、板、CPU以及输入以及输入/输出模板输出模板(I/O 模板模板)组成组成 。可编。可编程逻辑控制器程逻辑控制器(PLC)通过通过 S7 程序,监视和控制被程序,监视和控制被控对象。控对象。 在在 S7 程序内通过地址,对程序内通过地址,对I/O模板进行模板进行寻址。寻址。 图图3.1所示为所示为PLC控制被控对象的过程,图控制被控对象的过程,图3.2所示为所示为STEP-7软件的应用过程。软件的应用过程。S7 PLC和和STEP 7编程软件应用示意
5、图编程软件应用示意图2/28/20223S7 PLC和和STEP 7编程软件应用示意图编程软件应用示意图2/28/20224应用应用STEP 7的基本步骤的基本步骤2/28/20225 有两个选择项,如果要解决的自动化任务比较复杂,编写有两个选择项,如果要解决的自动化任务比较复杂,编写的程序量比较大,涉及的输入、输出点数多,建议采用选的程序量比较大,涉及的输入、输出点数多,建议采用选择项择项1 1,即先对,即先对PLCPLC的硬件进行组态,然后编写用户程序,的硬件进行组态,然后编写用户程序,这样做的优点是通过这样做的优点是通过STEP 7STEP 7对所有输入、输出点的绝对地对所有输入、输出点
6、的绝对地址先进行了定义和分配,在以后的程序编写过程中就不会址先进行了定义和分配,在以后的程序编写过程中就不会混淆,另外,在组态过程中还可以改变模板的参数和属性,混淆,另外,在组态过程中还可以改变模板的参数和属性,例如,对模拟量输入模板,在组态过程中,可以确定它是例如,对模拟量输入模板,在组态过程中,可以确定它是电压输入信号(电压输入信号(0-10V0-10V,/-10V/-10V)还是电流输入信号()还是电流输入信号(4-4-20 mA20 mA),对一个多),对一个多CPUCPU项目,在组态过程中,可以确定各项目,在组态过程中,可以确定各个个CPUCPU的的MPIMPI地址。对于比较简单的项
7、目,涉及的输入、输地址。对于比较简单的项目,涉及的输入、输出点数不多,也可以采用选择项出点数不多,也可以采用选择项2 2的步骤。的步骤。应用应用STEP 7STEP 7软件于软件于PLC PLC 实现自动化任务的过程实现自动化任务的过程2/28/20226 启动启动STEP 7时将激活时将激活SIMATIC manager (SIMATIC 管理器管理器)的中央窗口。一般默认设的中央窗口。一般默认设置是启动置是启动STEP 7 Wizard(STEP 7向导向导), 在在 “向导向导”帮助下建立一个帮助下建立一个STEP 7 项目,项目,STEP 7项目的结构按一定的次序安排数据和程序并项目的
8、结构按一定的次序安排数据和程序并被保存。项目内的数据是以对象的形式按分层被保存。项目内的数据是以对象的形式按分层结构保存。结构保存。SIMATIC 站和站和CPU 包含硬件的组包含硬件的组态和参数数据。态和参数数据。S7 程序是由所有的方块组成,程序是由所有的方块组成,这些方块包含控制对象的程序。这些方块包含控制对象的程序。 下面介绍下面介绍SIMATIC管理器的项目结构。管理器的项目结构。启动启动SIMATIC 管理器管理器(SIMATIC Manager)2/28/20227STEP 7STEP 7编程语言编程语言的主窗口的主窗口界面界面打开打开 “项目项目” 窗口,左边页窗口,左边页面显
9、示项目结面显示项目结构构,右边页面显右边页面显示左边页面所示左边页面所选文件夹中的选文件夹中的对象和其他文对象和其他文件夹图所示。件夹图所示。 2/28/20228打开打开SIMATIC 管理器的窗口能见到以下菜单项:管理器的窗口能见到以下菜单项:File 打开、组织和打印打开、组织和打印“项目项目” (project)。Edit 复制、粘贴、删除、全选、对象属性等。复制、粘贴、删除、全选、对象属性等。Insert 插入程序单元。插入程序单元。PLC 下载程序和监视硬件下载程序和监视硬件 。 View 选择选择“在线在线/离线离线”和编程语言。和编程语言。Options 用户定义。用户定义。W
10、indow 设置窗口显示。设置窗口显示。Help 帮助信息。帮助信息。2/28/20229 建立一个项目和建立一个项目和SIMATIC SIMATIC 站后,就可以对站后,就可以对PLCPLC进行进行硬件组态了。硬件组态了。 下面介绍下面介绍S7 PLC S7 PLC 中央机架模板的组态过程。中央机架模板的组态过程。 打开打开“项目项目”中的中的“站站”,在窗口的右边页面出现,在窗口的右边页面出现“硬件硬件”图标图标 和所建项目中选择的和所建项目中选择的CPUCPU图图标标 ,如下面的图所示。双击,如下面的图所示。双击“硬件硬件”图标图标 , “ , “硬件硬件”组态窗口自动打开,在组态窗口的
11、右边组态窗口自动打开,在组态窗口的右边面会显示硬件组态单元库目录菜单。面会显示硬件组态单元库目录菜单。应用应用STEP 7 对对 PLC 进行硬件组态进行硬件组态2/28/202210 选择目录菜单中的某一项,例如选择目录菜单中的某一项,例如SIMATIC 300SIMATIC 300,在其下拉菜,在其下拉菜单中再选择单中再选择RACK-300RACK-300,双击,双击RACK-300RACK-300下面的图标下面的图标 ,这时在窗口左边页面上就会出现这时在窗口左边页面上就会出现0(UL) 0(UL) 机架带槽位的机架带槽位的rackrack表。为了表。为了在在0(UL)0(UL)的的1 1
12、号槽位上放置号槽位上放置PS 307PS 307电源模板,导航电源模板,导航目录菜单,找到目录菜单,找到 PS307 5A (6ES7 307-1EA00-0AA0) PS307 5A (6ES7 307-1EA00-0AA0),用鼠,用鼠标拖至标拖至0(UL)0(UL)机架的机架的1 1号槽位上。号槽位上。 为了为了在在0(UL)0(UL)的的2 2号槽位上放置号槽位上放置CPUCPU模板,导航目录菜单,打模板,导航目录菜单,打开开CPU-300CPU-300项,在其下拉菜单中找到项,在其下拉菜单中找到CPU 314C-2DP(6ES7 CPU 314C-2DP(6ES7 314-6CF01
13、-0AB0)314-6CF01-0AB0),用鼠标将其拖至,用鼠标将其拖至0(UL)0(UL)机架上的机架上的2 2号槽位,号槽位,由于由于CPU 314C-2DPCPU 314C-2DP占用占用2 2个槽位,从第个槽位,从第4 4个槽位开始,可以个槽位开始,可以组态配置其他的组态配置其他的I/OI/O模板。模板。 应用应用STEP 7 对对 PLC 进行硬件组态进行硬件组态2/28/202211 用同样的方法,在用同样的方法,在4 4号槽位上配置了号槽位上配置了3232点的直流输入模板点的直流输入模板(6ES7 312-1BL00-0AA06ES7 312-1BL00-0AA0),在),在5
14、 5号槽位上配置了号槽位上配置了3232点的点的直流输出模板(直流输出模板(6ES7 322-1BLL00-0AA06ES7 322-1BLL00-0AA0)。)。 下面的图表示了用上面的方法组态完成后的下面的图表示了用上面的方法组态完成后的STEP 7STEP 7硬件硬件 组态界面,从图上还能看到所选模板的订货号,组态界面,从图上还能看到所选模板的订货号,I/OI/O模模 板组态定义的绝对地址以及分配给板组态定义的绝对地址以及分配给CPUCPU模板的模板的MPIMPI地址。地址。 以上完成了硬件中央机架的模板组态。以上完成了硬件中央机架的模板组态。应用应用STEP 7 对对 PLC 进行硬件
15、组态进行硬件组态2/28/2022122/28/2022132/28/2022142/28/202215 在常用配置的自动化系统中,中央可编程控制器在常用配置的自动化系统中,中央可编程控制器的的I/OI/O模板与传感器、执行机构之间需要大量的模板与传感器、执行机构之间需要大量的连接电缆,这不仅增加了安装的工作量,也增连接电缆,这不仅增加了安装的工作量,也增加了安装费用和发生故障的机率。应用分布式加了安装费用和发生故障的机率。应用分布式I/OI/O,将,将I/OI/O模板就近放置于传感器和执行机构模板就近放置于传感器和执行机构附近,在可编程控制器和附近,在可编程控制器和I/OI/O模板及现场器件
16、之模板及现场器件之间用现场总线间用现场总线Profibus-DPProfibus-DP连接,就可克服中央连接,就可克服中央I/OI/O模板的上述缺点。模板的上述缺点。2/28/202216 分布式分布式I/OI/O模板的硬件组态与中央机架模板的硬件模板的硬件组态与中央机架模板的硬件组态类似,从导航窗口右边页面的目录菜单,选组态类似,从导航窗口右边页面的目录菜单,选择分布式择分布式I/OI/O模板单元,对它们进行硬件组态和属模板单元,对它们进行硬件组态和属性定义。性定义。 下图表示了下图表示了S7 PLCS7 PLC的分布式的分布式I/OI/O结构举例和通过结构举例和通过Profibus-DPP
17、rofibus-DP网络进行连接。网络进行连接。 下面用图解说明,怎样建立一个新的项目来组态下面用图解说明,怎样建立一个新的项目来组态分布式分布式I/OI/O系统。系统。2/28/2022172/28/2022182/28/2022192/28/2022202/28/202221上面用图解说明怎样组态一个可以配置分布式上面用图解说明怎样组态一个可以配置分布式I/O的的站,到目前为止,所描述的步骤和中央机架的组态站,到目前为止,所描述的步骤和中央机架的组态步骤是类似的,得到的组态界面也类似。下面一些步骤是类似的,得到的组态界面也类似。下面一些图的画面进一步说明,怎样将分布式图的画面进一步说明,怎
18、样将分布式I/O单元,组态单元,组态到上述已经建立起来的站中,并设置或修改他们的到上述已经建立起来的站中,并设置或修改他们的属性参数。属性参数。2/28/2022222/28/2022232/28/2022242/28/2022252/28/202226前面用图解方法,说明怎样在主站上组态一个前面用图解方法,说明怎样在主站上组态一个分布式分布式I/OI/O的从站,这种从站是模块化结构的,的从站,这种从站是模块化结构的,从站是由从站是由Profibus-DP通信模板通信模板IM 153-2和若和若干块标准的干块标准的I/OI/O模板模板( (例如,图上的例如,图上的DI32 x DC24V) )
19、组成。组成。2/28/2022272/28/2022282/28/202229在组态过程中改变节点和在组态过程中改变节点和I/O的地址的地址 如果用户有需要改变已经组态完成的如果用户有需要改变已经组态完成的I/O模板的地址,上模板的地址,上面的图解说明了这一改变的过程和步面的图解说明了这一改变的过程和步 骤。骤。2/28/202230应用符号地址编程应用符号地址编程 在对在对PLCPLC进行硬件组态时,事先定义其输入和输出的绝对地进行硬件组态时,事先定义其输入和输出的绝对地址。因为,这些地址是直接指定,亦即绝对地址。也可以选址。因为,这些地址是直接指定,亦即绝对地址。也可以选择用任意符号名来替
20、代绝对地址。择用任意符号名来替代绝对地址。 为了应用符号地址进行编程,需要建立一个符号表,对在以为了应用符号地址进行编程,需要建立一个符号表,对在以后的程序中将要用到的所有绝对地址,在符号表中给他们每后的程序中将要用到的所有绝对地址,在符号表中给他们每一个分配一个符号名,同时定义它们的数据类型。例如,对一个分配一个符号名,同时定义它们的数据类型。例如,对于输入于输入I 1.2 ,其符号名为,其符号名为PE_Failure ,表示汽油发动机有故障。这,表示汽油发动机有故障。这一符号名,适用于整个程序,因此,称为全局变量。使用符一符号名,适用于整个程序,因此,称为全局变量。使用符号地址进行编程,使
21、得所编的号地址进行编程,使得所编的S7程序,可读性强。程序,可读性强。2/28/202231 PLC及其输入及其输入/输出的绝对地址输出的绝对地址 2/28/202232 建立编程用的符号地址表建立编程用的符号地址表2/28/202233 建立编程用的符号地址表建立编程用的符号地址表2/28/202234在在STEP 7 STEP 7 程序中建程序中建立符号地立符号地址表举例址表举例 2/28/202235在在STEP 7 STEP 7 程序中建立符号地址表举例程序中建立符号地址表举例 在完成对在完成对PLCPLC进行硬件组态之后,开始编写用户程进行硬件组态之后,开始编写用户程序之前,需要做的
22、一件工作是建立编程用的符号序之前,需要做的一件工作是建立编程用的符号地址表。前面用图解的方式,说明建立符号地址地址表。前面用图解的方式,说明建立符号地址表的步骤,上图是为项目表的步骤,上图是为项目Getting Started Getting Started 所编所编写的符号地址表。一般而言,每一个写的符号地址表。一般而言,每一个S7 S7 程序只建程序只建立一个符号地址表,这与在编程中使用哪一种编立一个符号地址表,这与在编程中使用哪一种编程语言进行编程无关系。所有可以打印的字母程语言进行编程无关系。所有可以打印的字母(例如特殊字母、空格),在符号表中都允许使(例如特殊字母、空格),在符号表中
23、都允许使用。在符号表中会自动加入的数据类型,取决于用。在符号表中会自动加入的数据类型,取决于由由CPUCPU所处理的信号类型。下表给出在所处理的信号类型。下表给出在STEP 7 STEP 7 中中使用的各种数据类型。使用的各种数据类型。2/28/202236在在S7 S7 程序中使用的数据类型程序中使用的数据类型2/28/202237在组织方块在组织方块OB1中建立中建立程序程序 根据所选择使用根据所选择使用的编程语言,右的编程语言,右面分别介绍用梯面分别介绍用梯形图形图(LAD)、语句表语句表(STL)和和功能块图(功能块图(FBD)来编写来编写OB1程序。程序。2/28/202238在组织
24、方块在组织方块OB1中建立程序中建立程序 在在STEP 7中,中,OB1是由是由CPU执行的主循环程执行的主循环程序,序,CPU一行一行地读并且执行程序命令,当一行一行地读并且执行程序命令,当CPU返回到第一程序行时,它就精确地完成了返回到第一程序行时,它就精确地完成了一个循环周期。此过程所需要的时间就是扫描一个循环周期。此过程所需要的时间就是扫描周期时间。周期时间。 在用在用STEP 7建立建立S7程序时,可以选择程序时,可以选择3种标准种标准编程语言中的一种,即梯形图逻辑语言编程语言中的一种,即梯形图逻辑语言LAD、语句表语句表STL或者功能块图或者功能块图FBD。2/28/202239在
25、组织方块在组织方块OB1中建立程序中建立程序 梯形图逻辑梯形图逻辑LAD适合于熟悉继电器逻辑的电气工程师,语适合于熟悉继电器逻辑的电气工程师,语句表句表STL适合于熟悉计算机编程语言的工程师,功能块图适合于熟悉计算机编程语言的工程师,功能块图FBD对习惯于使用逻辑图设计的工程师更为合适。对习惯于使用逻辑图设计的工程师更为合适。前面的图是分别使用这前面的图是分别使用这3种编程语言的示例。种编程语言的示例。为了打开为了打开OB1方块,在工具条上单击打开图标,在出现的方块,在工具条上单击打开图标,在出现的对话框中选择项目对话框中选择项目Getting Started,单击,单击OK确认。为了选择用某
26、一种编程语言来对确认。为了选择用某一种编程语言来对OB1进行进行编程,单击打开对话框中的编程,单击打开对话框中的Browse按钮,在出现的路径按钮,在出现的路径菜单(菜单(SIEMENS STEP7 EXAMPLES)中,选择打开)中,选择打开以下的项目样板:以下的项目样板:2/28/202240在组织方块在组织方块OB1中建立程序中建立程序 Zen01_01_STEP7_STL_1-9,Zen01_03_STEP7_FBD_1-9或者或者Zen01_05_STEP7_LAD_1-9在图在图3.16的中间部分,显示了这的中间部分,显示了这3个样板项目。个样板项目。对选中的样板,例如对选中的样板
27、,例如Zen01_05_STEP7_LAD_1-9,采用,采用导航的方法,一直到出现符号表导航的方法,一直到出现符号表Symbols,用,用“拖拉拖拉”的的方法,将符号表复制到项目方法,将符号表复制到项目Getting Started的的S7程序文件程序文件夹中,然后关闭项目夹中,然后关闭项目Zen01_05_STEP7_LAD_1-9的窗口。的窗口。用用“拖拉拖拉”方法是指,用鼠标选中目标并按住鼠标左键,方法是指,用鼠标选中目标并按住鼠标左键,拖动目标到所选择的位置,释放鼠标左键,完成复制。拖动目标到所选择的位置,释放鼠标左键,完成复制。2/28/202241 选择打开以下的项目样板:选择打
28、开以下的项目样板:2/28/202242 复制符号地址表和打开复制符号地址表和打开OB1OB1程序组织方块程序组织方块 2/28/202243 S7 S7程序的编程程序的编程窗口窗口 (以梯形图逻(以梯形图逻辑的编程为例)辑的编程为例) 在在Getting Started项目的右边窗口,项目的右边窗口,双击双击OB1,从而,从而打开了用打开了用LDA(或(或STL / FBD)来编写来编写OB1程序的编程程序的编程窗口。图窗口。图3.17表表示这一窗口的各示这一窗口的各个部分。个部分。 2/28/202244用梯形图逻辑编写一个串联电路程序示例用梯形图逻辑编写一个串联电路程序示例 2/28/2
29、02245用梯形图逻辑编写一个串联电路程序示例用梯形图逻辑编写一个串联电路程序示例2/28/202246用梯形图逻辑编写一个串联电路程序示例用梯形图逻辑编写一个串联电路程序示例2/28/2022472/28/2022482/28/202249前面用图解的前面用图解的方法示例说明,方法示例说明,怎样用梯形图怎样用梯形图逻辑语言来编逻辑语言来编写一个串联电写一个串联电路和并联电路路和并联电路的程序。右图的程序。右图进一步说明怎进一步说明怎样编写一个存样编写一个存储置位、复位储置位、复位电路。电路。 2/28/202250 用梯形图逻辑编写用梯形图逻辑编写SR单元单元(存储置位、复位)程序示例(存储
30、置位、复位)程序示例 2/28/202251梯形图逻辑编程中的绝对地址和符号地址梯形图逻辑编程中的绝对地址和符号地址 前面分别表示用梯前面分别表示用梯形图逻辑编程语言形图逻辑编程语言LAD编写的串联电编写的串联电路、并联电路和路、并联电路和SR触发器的程序触发器的程序网络段。下面将用网络段。下面将用语句表语言语句表语言STL和和功能块图语言功能块图语言FBD来编写同样的电路来编写同样的电路程序。程序。2/28/202252用语句表语言完成用语句表语言完成“与与”(ANDAND)指令语句)指令语句程序示例程序示例 2/28/202253用语句表语言完成用语句表语言完成“与与”(ANDAND)指令
31、语句)指令语句程序示例程序示例 2/28/202254用语句表语言编写用语句表语言编写“或或”指令和指令和“存储置存储置位位/ /复位复位”指令程序示例指令程序示例2/28/202255用语句表语言编写用语句表语言编写“或或”指令和指令和“存储置存储置位位/ /复位复位”指令程序示例指令程序示例2/28/202256用语句表语言编写用语句表语言编写“或或”指令和指令和“存储置存储置位位/ /复位复位”指令程序示例指令程序示例 在用语句表语言编程的过程中,如果出现红色符号,这表明在用语句表语言编程的过程中,如果出现红色符号,这表明在已经建立的符号表中没有该符号,或者存在语法错误。在已经建立的符号
32、表中没有该符号,或者存在语法错误。 在编程过程中,也可以直接从符号表中插入符号名。单在编程过程中,也可以直接从符号表中插入符号名。单击击 ?.? 符号,然后单击菜单命令符号,然后单击菜单命令 Insert Symbol ,通过下拉表的滚动条,找到相应的符号,通过下拉表的滚动条,找到相应的符号名,选择这一符号名,即可自动地替代名,选择这一符号名,即可自动地替代 ?.? 地址。地址。 在前面的图中,网络段在前面的图中,网络段1的说明是:的说明是:当两个输入点当两个输入点“Key_1”和和“Key_2”都激活时(即,都是信都激活时(即,都是信号状态号状态“1”24V),则),则“Green_Ligh
33、t”激活。亦即,为了激活。亦即,为了使使“绿灯绿灯”接通,必须两个输入同时为接通,必须两个输入同时为“1“状态。状态。2/28/202257用语句表语言编写用语句表语言编写“或或”指令和指令和“存储置存储置位位/ /复位复位”指令程序示例指令程序示例网络段网络段2的说明是:的说明是:当两个输入点当两个输入点“Key_3”和和“Key_4”中有一个激活时(即,中有一个激活时(即,有一个是信号状态有一个是信号状态“1”24V),则输出),则输出“Red_Light”激活。激活。亦即,为了使亦即,为了使“红灯红灯”接通,只须两个输入中有一个为接通,只须两个输入中有一个为“1“状态。状态。 网络段网络
34、段3的说明是:的说明是:当输入当输入“Automatic_On”激活时,由于激活时,由于S指令的作用,输出指令的作用,输出“Automatic_Mode”被激活,且一直保持激活状态,即使输被激活,且一直保持激活状态,即使输入入“Automatic_On”又变成非激活状态,对输出也没有影响。又变成非激活状态,对输出也没有影响。2/28/202258用语句表语言编写用语句表语言编写“或或”指令和指令和“存储置存储置位位/ /复位复位”指令程序示例指令程序示例当输入当输入“Manual_On”激活时,激活时, R指令起作用,输出指令起作用,输出“Automatic_Mode”复位到非激活状态,且一直
35、保持非激活复位到非激活状态,且一直保持非激活状态,即使输入状态,即使输入“Manual_On”又变成非激活状态,对输出又变成非激活状态,对输出也没有影响。也没有影响。输出的状态是由输出的状态是由S(Set)和)和R(Reset)操作来决定的。)操作来决定的。如果两个输入同时被激活,则首先是置位功能,随后是复位如果两个输入同时被激活,则首先是置位功能,随后是复位功能被处理,由于主程序(功能被处理,由于主程序(OB1)是顺序执行,因此一个)是顺序执行,因此一个OB1周期结束时的结果使输出处于复位状态,在这种情况下,周期结束时的结果使输出处于复位状态,在这种情况下,称复位优先。称复位优先。2/28/
36、2022592/28/2022602/28/202261 用功能块图编写用功能块图编写“与与”(ANDAND)逻辑)逻辑功能程序示例功能程序示例 2/28/202262用功能块图编写用功能块图编写“或或”OROR)逻辑功能)逻辑功能程序示例程序示例2/28/202263用功能块图编写用功能块图编写SRSR功能(存储置位功能(存储置位/ /位)位)程序示例程序示例 2/28/202264 功能块图编程中的绝对地址和符号地址功能块图编程中的绝对地址和符号地址 2/28/202265用功能块和数据块建立一个程序用功能块和数据块建立一个程序 在程序结构中功能块(在程序结构中功能块(FBFB)在组织块的
37、下面,它包含)在组织块的下面,它包含一部分程序,能够被一部分程序,能够被OB1OB1调用很多次,所有功能块的形调用很多次,所有功能块的形式参数和静态数据保存在一个分开的数据块(式参数和静态数据保存在一个分开的数据块(DBDB)中,)中,这一数据块专门分配给功能块,称为这一数据块专门分配给功能块,称为背景数据块背景数据块。2/28/202266 建立一个开放的功能块(建立一个开放的功能块(FBFB) 2/28/202267建立一个开放的功能块(建立一个开放的功能块(FBFB) 2/28/202268建立一个开放的功能块(建立一个开放的功能块(FBFB) 上图用图解说明怎样在上图用图解说明怎样在L
38、AD/STL/FBD窗口中,建立一窗口中,建立一个功能块程序(个功能块程序(FB1,符号名为,符号名为Engine,参看前面的符号地址表),在这里选择与编程参看前面的符号地址表),在这里选择与编程OB1相相 同的编程语言同的编程语言LAD。 单击单击Help Contents 之后,在之后,在Programming Blocks 和和Creating Block and Libraries(“编程方块编程方块”和和“建建立方块和库立方块和库”)项下,能找到更多的信息。)项下,能找到更多的信息。2/28/202269在功能块编程中建立变量登记表在功能块编程中建立变量登记表 在编写功能块之前,首先
39、要建立变量登记表,下图用图解说在编写功能块之前,首先要建立变量登记表,下图用图解说明变量登记表的建立和相关的属性。明变量登记表的建立和相关的属性。 2/28/202270在功能块编程中建立变量登记表在功能块编程中建立变量登记表 2/28/202271编程用于发动机(编程用于发动机(engineengine)启动)启动/ /停止停止的功能块的功能块FB1FB1 2/28/202272编程用于发动机(编程用于发动机(engineengine)启动)启动/ /停止停止的功能块的功能块FB1 FB1 2/28/202273编程用于发动机(编程用于发动机(engineengine)启动)启动/ /停止停
40、止的功能块的功能块FB1 FB1 上图用图解介绍怎样来编写一个功能块,例如要上图用图解介绍怎样来编写一个功能块,例如要用两个不同的背景数据块,通过一个功能块,控用两个不同的背景数据块,通过一个功能块,控制和监视制和监视“汽油引擎汽油引擎”和和“柴油引擎柴油引擎”。所有的。所有的“引擎指标引擎指标”信号,将作为参数块从组织方块传信号,将作为参数块从组织方块传送到功能块,为此必须将输入和输出参数列在送到功能块,为此必须将输入和输出参数列在“变量登记表变量登记表”(Variable declaration table)内)内登记登记“输入和输出输入和输出”。在前面的章节中已经介绍。在前面的章节中已经
41、介绍了如何编写一个串联电路、并联电路和一个存储了如何编写一个串联电路、并联电路和一个存储功能的程序,这些在编程功能块时都很有用。功能的程序,这些在编程功能块时都很有用。2/28/202274在在FB1FB1功能功能块中插入块中插入一段速度一段速度监视监视网络段网络段 2/28/202275在在FB1FB1功能块中插入一段速度功能块中插入一段速度监视网络段监视网络段 下面对功能块下面对功能块FB1作一些说明。作一些说明。1. “发动机发动机”(engine)何时将)何时将“启动启动”或或“停止停止”?当变量当变量Switch_On 具有具有1 状态,同时变量状态,同时变量 Automatic_M
42、ode 具有具有0状态,状态,“发动机发动机”将启动。将启动。如果如果“发动机发动机”采用自动方式,采用自动方式, Automatic_Mode1,则这一功能是不允许的。则这一功能是不允许的。当变量当变量Switch_Off 具有具有1 状态或者当变量状态或者当变量Fault具有具有0状态,状态,“发动机发动机”将停止(故障将停止(故障Fault是是0激激活信号,在正常时活信号,在正常时Fault的状态为的状态为1,在发生故障时,在发生故障时Fault的状态为的状态为0)。)。2/28/202276在在FB1FB1功能块中插入一段速度功能块中插入一段速度监视网络段监视网络段2.怎样用比较器来监
43、视怎样用比较器来监视“发动机发动机”的速度?的速度?比较器将变量比较器将变量#Actual_Speed(实际速度)和变量(实际速度)和变量Setpoint_Speed(设定点速度)进行比较,而且将结果分(设定点速度)进行比较,而且将结果分配给变量配给变量Setpoint_Speed_Reached(达到设定点速度),(达到设定点速度),在大于、等于时,在大于、等于时,Setpoint_Speed_Reached的状态变为的状态变为1。2/28/202277在在FB1FB1功能块中插入一段速度功能块中插入一段速度监视网络段监视网络段单击单击Help Contents 之后,在之后,在Progra
44、mming Blocks 和和Creating Logic Block (“编程方块编程方块”和和“建立逻辑方块建立逻辑方块”)和和Editing the Variable Declaration和和Editing LAD Instruction(“编辑变量登记表编辑变量登记表”和和“编辑梯形图指令编辑梯形图指令”)项下,能找到更多的信息。项下,能找到更多的信息。上面已经编写了功能块上面已经编写了功能块FB1(engine),并在变量登记表中特,并在变量登记表中特别定义了与别定义了与engine相关的参数。为了以后在相关的参数。为了以后在OB1组织方块中组织方块中能够调用功能块,必须生成相应的
45、数据块,称为背景数据能够调用功能块,必须生成相应的数据块,称为背景数据块,分配给功能块。块,分配给功能块。2/28/202278生成功能块(生成功能块(FB)的背景数据块及使)的背景数据块及使用实际参数替代形式参数改变实际值用实际参数替代形式参数改变实际值下面通过控制和监视汽油发动机或柴油发动机来举例说明,下面通过控制和监视汽油发动机或柴油发动机来举例说明,由于这两种发动机的设定速度不同,因此分别把它们存储由于这两种发动机的设定速度不同,因此分别把它们存储在不同的背景数据块中,其具体的值(在不同的背景数据块中,其具体的值(#Setpoint_Speed)是不同的,而控制和监视这两种发动机的功能
46、块相同,类是不同的,而控制和监视这两种发动机的功能块相同,类似地,不同的其他参数,分别存放在不同的背景数据块中。似地,不同的其他参数,分别存放在不同的背景数据块中。由于对功能块只需集中编写一次,这样就减少了所涉及的由于对功能块只需集中编写一次,这样就减少了所涉及的编程工作量。编程工作量。下面下面 说明怎样在一个项目下建立属于功能块(说明怎样在一个项目下建立属于功能块(FB)的背景)的背景数据块(数据块(Instance DB)。)。2/28/202279生成功能块(生成功能块(FB)的背景数据块及使)的背景数据块及使用实际参数替代形式参数改变实际值用实际参数替代形式参数改变实际值 打开打开SI
47、MATICSIMATIC管理器中的管理器中的Getting StartedGetting Started项目,用导航的项目,用导航的方式找到方式找到BlockBlock,用鼠标右键单击右半窗口,在弹出菜单上,用鼠标右键单击右半窗口,在弹出菜单上单击单击Data BlockData Block,插入一个数据块。,插入一个数据块。 在数据块属性对话框中,输入数据块名称在数据块属性对话框中,输入数据块名称DB1DB1,同时在旁,同时在旁边标签的下拉菜单中选择边标签的下拉菜单中选择Instance DBInstance DB,赋予功能块名字,赋予功能块名字FB1FB1,单击单击OKOK按钮,确认在属性
48、窗口中显示的所有设置。这样就完按钮,确认在属性窗口中显示的所有设置。这样就完成了在成了在Getting startGetting start项目,加入项目,加入DB1DB1数据块的工作。数据块的工作。2/28/202280生成功能块(生成功能块(FB)的背景数据块及使用实)的背景数据块及使用实际参数替代形式参数改变实际值际参数替代形式参数改变实际值2/28/202281生成功能块(生成功能块(FB)的背景数据块及使用实)的背景数据块及使用实际参数替代形式参数改变实际值际参数替代形式参数改变实际值双击双击DB1DB1,打开这一方块,出现左面所示的对话窗口,单击打开这一方块,出现左面所示的对话窗口
49、,单击YesYes按钮确认,分配参数到背景数据块。对于汽油发动机,按钮确认,分配参数到背景数据块。对于汽油发动机,在背景数据块在背景数据块DB1 DB1 设定速度项的实际值列中,写入设定速度项的实际值列中,写入15001500。即。即定义了这一发动机的最大速度。单击存盘图标,保存定义了这一发动机的最大速度。单击存盘图标,保存DB1DB1并并关闭编程窗口关闭编程窗口2/28/202282生成功能块(生成功能块(FB)的背景数据块及使用实)的背景数据块及使用实际参数替代形式参数改变实际值际参数替代形式参数改变实际值用建立用建立DB1DB1相同的方法,建立另一个用于相同的方法,建立另一个用于FB1 FB1 的背景数据块的背景数据块DB2DB2,适用于柴油发动机,在背景数据块适用于柴油发动机,在背景数据块DB2DB2设定速度项的实设定速度项的实际值列中,输入际值列中,输入12001200,保存,保存DB2DB2,并关闭编程窗口。,并关闭编程窗口。 下一步就是在下一步就是在OB1OB1中编写一个调用功能块中编写一个调用功能块FB1FB1的程序。的程序。2/28/202283演讲完毕,谢谢观看!