S7-300-结构化编程

上传人:豆浆 文档编号:47293514 上传时间:2018-07-01 格式:PPT 页数:86 大小:1.52MB
返回 下载 相关 举报
S7-300-结构化编程_第1页
第1页 / 共86页
S7-300-结构化编程_第2页
第2页 / 共86页
S7-300-结构化编程_第3页
第3页 / 共86页
S7-300-结构化编程_第4页
第4页 / 共86页
S7-300-结构化编程_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《S7-300-结构化编程》由会员分享,可在线阅读,更多相关《S7-300-结构化编程(86页珍藏版)》请在金锄头文库上搜索。

1、FC FB STRUCTURE PROGRAMING*1numerical calculate*1第第7 7章章 结构化编程结构化编程 第第9 9章章 工程应用工程应用*numerical calculateq 结构化编程 q 通讯组态q 读取模拟量功能块FC 105内 容 提 要 *numerical calculate程序设计方法:线性化编程、模块化编 程和结构化编程。 第七章 结构化编程线性化编程是将整个用户程序放在组织块 OB1中,在CPU循环扫描时执行OB1中的全部 指令。其特点是结构简单、但效率低下。另 一方面,某些相同或相近的操作需要多次执 行,这样会造成不必要的编程工作。再者,

2、 由于程序结构不清晰,会造成管理和调试的 不方便。所以在编写大型程序时,避免线性 化编程。*numerical calculate模块化编程是将程序根据功能分为不同的逻 辑块,且每一逻辑块完成的功能不同。在 OB1中可以根据条件调用不同的功能或功能 块。其特点是易于分工合作,调试方便。由于 逻辑块是有条件的调用,所以可以提高CPU的 利用率。*numerical calculate结构化编程是将过程要求类似或相关的任务 归类,在功能或功能块中编程,形成通用解 决方案。通过不同的参数调用相同的功能或 通过不同的背景数据块调用相同的功能块。 其特点是结构化编程必须对系统功能进行 合理分析、分解和综

3、合,所以对设计人员的 要求较高,另外,当使用结构化编程方法时 ,需要对数据进行管理。 传送带系统中所有交流电机的通用逻辑控制块; 装配线机械中所有电磁线圈的通用逻辑控制块; 造纸机器中所有驱动装置的通用逻辑控制块。 *numerical calculate功能是不带“记忆”的逻辑块。所谓不 带“记忆”表示没有背景数据块。当完成操作 后,数据不能保持。这些数据为临时变量,对 于那些需要保存的数据你只能通过共享数据块 (Share Block)来存储。 调用功能时,需用实参来代替形参。功能(FC)*numerical calculate功能块是用户所编写的有固定存储区的块 。FB为带“记忆”的逻辑

4、块。它有一个数据 结构与功能块参数表完全相同的数据块(DB )。我们称该数据块为背景数据块( Instance Data Block)。当功能块被执行时 ,数据块被调用,功能块结束。调用随之结 束。存放在背景数据块中的数据在FB块结束 以后,仍能继续保持。具有“记忆”功能。 一个功能块可以有多个背景数据块,使功能 块可以被不同的对象使用。 功能块(FB)*numerical calculateq 块的结构块由两部分组成:变量声明表,程序。*numerical calculate输入 IN输出 OUT输入/输出 IN_OUT静态变量 STAT :只有FB有临时变量 TEMPq变量类型:*nume

5、rical calculate功能和功能块的编程步骤如下:第一步定义局部变量。首先定义形参和 临时变量名,功能块还须定义静态变量。 之后确定变量的类型及变量注释。第二步编写执行程序,在编程中若使用 变量名,则变量名标识显示为前缀“#”加 变量名。若使用全局符号则显示为全局符 号加引号的形式。 *numerical calculate控制任务描述:在发动机控制系统工程实例中,被控对象 是一个“汽油发动机”和一个对该汽油发动 机进行散热的“风扇”,一个“柴油发动机 ”和一个对该柴油发动机进行散热的“风扇 ”。对这些被控对象,有相应的起动、停止 按钮控制其状态的改变,并要求这两个发动 机在起动的同时

6、,对应的风扇要同时起动对 其散热,当发动机停止运行时,风扇要延时 4秒后再关闭,以保证发动机充分的散热。发动机控制系统工程*numerical calculate汽油机控制汽油机风扇控制柴油机控制柴油机风扇控制发动机控制风扇控制汽油机数据柴油机数据FB1FC1OB1 DB1DB2发动机控制系统结构化程序的结构示意图*numerical calculate1、 创建符号地址表*numerical calculate2、发动机控制功能块(FBl)的程序设计输输入:q 定义FB1的输入、输出参数。这些定义包括 变量名、数据类型和声明类型。*numerical calculate输出:静态变量:*nu

7、merical calculateq FBl功能块的程序设计 *numerical calculateq 汽油机数据块DB1的内容 *numerical calculate3、风扇控制功能(FCl)的程序设计 q 定义FC1的输入、输出参数。这些定义包括变 量名、数据类型和声明类型。输输入:*numerical calculate输出:*numerical calculateq FBl功能块的程序设计*numerical calculate4、组织块(OB1)的程序设计 q 发电机控制系统组织块OBl的指令程序*numerical calculate*numerical calculate*n

8、umerical calculate功能和功能块的调用必须用实参代替 形参,因为形参是在功能或功能块的变量 声明表中定义的。为保证功能或功能块对 同一类设备的通用性,在编程中不能使用 实际对应的存储区地址参数,而是使用抽 象参数,这就是形参。而块在调用时,必 须将实际参数(实参)替代形参,从而可 以通过功能或功能块实现对具体设备的控 制。这里必须注意:实参的数据类型必须 与形参一致。 总结*numerical calculate第九章 工程应用1、 PROFIBUS 总线通讯PROFIBUS是一种国际化,开放式,不依赖 于生产商的现场总线标准。 PROFIBUS以 ISO7498为基础,以开放

9、式系统互联网络OSI作 为参考模型。其传输速率为9.6kpbs-12Mbps。 最多可挂接127个站点。传输可使用RS-485传 输技术或光纤媒体。下面演示PROFIBUS总线的不打包通讯。*numerical calculate*numerical calculateq 设备及连接 硬件和软件配置如下: 硬件: 1)CPU 315-2DP及SM模块 2)CPU 313C-2DP一块(根据条件可选用其他型号 的S7-300/400) 3)插入PROFIBUS网卡CP5611的PC机(组态编 程用) 4) PROFIBUS电缆及三个接头 软件: 1)STEP 7 V5.2 或STEP 7 V5.

10、3PROFIBUS 通讯组态过程*numerical calculate首先用工具制作带有三个接头的PROFIBUS电缆,并将两端接头上的拨码至ON,中间的接头拨码至OFF。利用这根电缆将PC机、CPU 313C-2DP和CPU 315-2DP建立PROFIBUS物理连接。如图1所示。硬件连接*numerical calculate图1*numerical calculate系统硬件组态 原则上先组态从 站,再组态主站1)新建项目:在STEP 7中创建一个新项目, 插入两个SIMATIC 300 Station,并重新命名 为“SIMATIC 300(zhu)”和“SIMATIC 300 (f

11、u)”。*numerical calculate2)组态从站 q 组态硬件双击Hardware,根据硬件安装次序和定货 号依次插入机架、电源、CUP、输入、输出模 块,进行硬件组态。在插入CPU时,同时弹出 PROFIBUS组态画面。点击“New”按钮新建 PROFIBUS(1),组态PROFIBUS站地址:2,点 击“Properties”按钮组态网络属性,选择 “Network Settings”,进行网络参数设置, 如图2所示。双击CPU项下的Dp栏,在网络属性 窗口选择“Operating Mode”, 选择“Dp Slave”。选择此300站为Dp slave(从站方式 ),如图3所

12、示。*numerical calculate图2*numerical calculate图3*numerical calculateq 组态通讯区选择标签“Configuration”,点击 “New”按钮新建两行通讯接口区,一行输入 ,注意选择输入方式:input、地址:1、传输 数据长度length:2(最多32个字节)、传输单 元Unit:Byte、传输方式Consistency:All。 一行输出,方式同前。如图4,图5所示。 q编译保存 *numerical calculate图4*numerical calculate图5*numerical calculate注意【Address

13、 type】:选择Input,表 示将CPU315-2DP从站作为数据的输入接口区 【Address】:填入数据接收区的起始 地址,此时写入0 【length】:设置传输数据长度为2(最 多32个字节) 【Unit】:传输单元为Byte数据 【Consistency】:选择传输方式ALL *numerical calculate3)组态主站以同样的方式组态主站,注意在图3中选择 Dp master。选择PROFIBUS站地址:3,并选择 与从站相同的PROFIBUS网络PROFIBUS(1)。打 开硬件目录,选择“PROFIBUS DP- Configuration Station”文件夹,选

14、择 CPU31x,将其拖曳到DP主站系统的PROFIBUS总 线上,从而将其连接到DP网络上,如图6所示 。*numerical calculate图6*numerical calculateq 此时自动弹出“Dp slave Properties”, 在其中的“Connection”标签中选择已经组态 过的从站,点击“Connect” 按钮将其连接到 网络,如图7所示。图7*numerical calculateq 之后点击“Configuration”标签 ,设置主站的通讯接口区。注意从站的输出区必须与主站的输入区对应, 同样从站的输入区必须与主站的输出区对应。 这样一发一收彼此对应。*n

15、umerical calculate4)硬件下装设置及PROFIBUS通讯检测q 在下装时,先存盘编译,在控制面板中,选 择“Set PG/PC interface” 选择“S7 ONLINE PCadapter MPI” ,如图 8所示。*numerical calculate图8*numerical calculateq 将下装电缆插在S7 300 CPU的MPI通讯 槽中。检查通讯是否畅通,如图9所示。图9*numerical calculateq如此将主站和从站分别下装。 q利用软件检查PROFIBUS通讯线是否一致。点 击图标如图10。可以看到网络图如图11。图10*numerica

16、l calculate图11*numerical calculate库函数介绍SFC14 SFC15PROFIBUS 通讯程序*numerical calculateSFC14:解开存放在IB端的数据包,接收数 据。放在对应的数据库中。 SFC15:将存放在相应数据库中的数据打 包,并通过QB端发送数据。 具体参数说明如下:参数名参数说明EN使能端LADDR接收区或发送区的起始地址 RET- VAL状态字:包含出错信息代码RECORD通信数据区,一般为ANY指针格式*numerical calculate使用场合:在数据的连续类型是“Unit”,可 以直接读入输入、输出区,如果数据类型是 “All”,程序需用SFC14、SFC15对数据进行 打包和解包。编写主站程序q 要求建立OB1、OB82、OB86、OB122,其 中OB82、OB86、OB122是为避免网络某个站 点掉电而使整个网络不能正常工作。 *numerical calculateq 建立相应

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号