《PLC组态与编程》PPT课件.ppt_第1页
《PLC组态与编程》PPT课件.ppt_第2页
《PLC组态与编程》PPT课件.ppt_第3页
《PLC组态与编程》PPT课件.ppt_第4页
《PLC组态与编程》PPT课件.ppt_第5页
已阅读5页,还剩76页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

,1、STEP 7 的硬件接口要求 方式1:使用PC/MPI适配器,实现计算机的RS232口与PLC的MPI口的连接。 方式2:在计算机上配置专用通信接口卡,如CP5611等,接口卡上提供MPI/PROFIBUS-DP接口,从而实现计算机与PLC的连接。 方式3:在PLC上配置以太网通信模块,如CP343等,通过以太网实现计算机与PLC之间的连接。,2、STEP 7 的硬件组态与诊断功能 1)硬件组态 硬件组态包括系统组态、CPU参数设置及模块参数设置等。 系统组态:从目录中选择硬件机架,并将所选模块分配给机架中希望的插槽。 CPU的参数设置:可以设置CPU模块的多种属性。如启动特性、扫描监视时间等。 模块的参数设置:可以对各模块的可调参数进行设置。,2)系统诊断 用于系统运行状态的监视 可以提供CPU参数、状态及用户编写的程序在运行中出现故障的原因 还可采用图形方式显示硬件配置、各模块的状态及模块故障等信息。 3、STEP 7 的编程功能 标准STEP 7版软件支持梯形图(LAD)、功能块图(FBD)和语句表(STL)编程。 专业版STEP 7还包括顺序功能图(SFC)、连续功能图(CFC)等编程语言。,STEP 7还提供了符号表编辑器,用于变量的定义,以便于使用符号编程。 在调试方面,STEP 7提供了多种调试和监控功能,如设置断点、强制输入和输出,梯形图监控、变量表监控等。 4、使用STEP 7 进行编程、调试的步骤 连接通讯接口创建应用项目(含CPU模块选择)对PLC进行硬件组态编译、下载硬件组态(建立符号表)编写应用程序编译、下载程序运行调试 若使用网络配置形式,在硬件组态时,还需进行网络组态。,二、硬件组态与参数设置 1、项目的创建,使用SIMATIC Manager(项目管理器)中的新项目向导(STEP 7 Wizart:NEW Project)来创建新项目。 包括CPU模块型号选择、需要生成的逻辑块(至少要生成作为主程序的组织块OB1)、项目名称等。 2、项目的分层结构 在项目中,所有的组态数据及程序均在分层结构中以对象的形式保存。,第一层为项目,第二层为站(Station),站是硬件组态的起点。,项目,MPI对象,站对象,硬件(Hardware),CPU,连接(Connection),S7程序(S7 Program),S7 Program中包含:源文件(Soure)、块(Block)和符号表(Symbols)。 用户编写的各种程序以块的形式存储在块对象内。 “S7 Program”文件夹是编写程序的起点。,项目的分层结构,2、硬件组态,硬件组态的任务就是在STEP 7中生成一个与实际的硬件系统完全相同的系统,以便通过STEP 7对实际系统进行管理(包括硬件设置、编程等)。 硬件组态从“Hardware”进入,既对站的硬件进行组态。窗口为HW Config 主要步骤包括: 生成机架在机架上放置模块模块参数设置保存设置下载设置到PLC。 对于网络系统,还需要对以太网、PROFIBUS-DP或MPI等网络的结构和通信参数等进行组态,使用分布式IO时,还应将其连接到主站上。,硬件组态窗口,3、模块参数设置,在各模块的属性窗口中对模块参数进行设置。 1)CPU模块参数设置 启动(Startup)选项卡:用于设置启动特性,S7-300只能执行暖启动。 周期/时钟存储器(Cycle/Clock Memory)选项卡:用于设置扫描循环监视时间、通信处理占扫描周期的百分比和时钟存储字节。时钟存储字节的每一位对应一个时钟脉冲。,诊断/时钟(Diagnostics/Clock)选项卡:用于设置诊断参数和实时时钟参数。 保持存储器(Retentivity Memory)选项卡:用于设置从MB0、T0和C0开始的需要断电保持的存储器字节数、定时器和计数器的个数。其范围与CPU型号有关。 保护(Protection)选项卡:用于设置3个保护级别,允许读写、只读和禁止读写。此外还可设置PLC是否可以运行在测试模式。 时刻中断(Time-Of-Day Interrupts)选项卡:设置日期-时间中断参数。,周期性中断( Cyclic Interrupt)选项卡:设置循环中断选项。 中断(Interrupts)选项卡:设置硬件中断、延迟中断、DPV1(PROFIBUS-DP)中断等。,CPU模块参数设置窗口,2)数字量输入模块参数设置 Addresses(地址)选项卡: 设置模块的起始字节地址 Inputs(输入)选项卡: 可设置是否允许产生硬件中断(Hardware Interrupt和诊断中断(Diagnostics Interrupt) 对于硬件中断还可选择上升/下降沿产生中断或上升和下降沿均产生中断。 Input Delay(输入延迟),用于规定输入延迟时间。,数字量输入模块参数设置窗口,3)数字量输出模块参数设置 Addresses(地址)选项卡: 设置模块的起始字节地址 Outputs(输出)选项卡: 设置是否允许产生中断、CPU进入停止模式时输出点的处理方式。,数字量输出模块参数设置窗口,4)模拟量输入模块参数设置 地址选项同前。 Inputs选项中包括诊断中断和硬件中断允许设置、模块测量范围的选择,以及用于抑制干扰的积分时间(integration time)设置。,模拟量输入模块参数设置窗口,4)模拟量输出模块参数设置 地址选项同前。 Outputs选项中包括诊断中断和硬件中断允许设置、模块输出范围的选择,以及CPU进入停止状态时输出信号的处理发生的设置。,模拟量输出模块参数设置窗口,4、多机架系统组态,S7-300系统中最多可再扩展3个机架,每个机架上最多可配置8个I/O模块。 组态步骤: 1)在硬件组态(HW-Config)窗口中加入IM360接口模块; 2)加入第二个导轨(RACK-300中的Rail) 3)在Rail中加入IM361接口模块 4)加入I/O模块; 4)设置各I/O模块。,加入IM360接口模块,加入第二个导轨,加入IM361接口模块,加入I/O模块,设置各I/O模块,5、PROFIBUS-DP网络组态,PROFIBUS-DP是S7-300系统中较为常用的网络,可将具有PROFIBUS-DP接口的设备接入系统中。现以ET200M分布式I/O为例,介绍其配置方法。 步骤: 1)在硬件组态(HW-Config)窗口中加入PROFIBUS-DP主站系统; 2)在主站系统上填加PROFIBUS-DP接口设备(IM153),并设置网络参数(分配地址,设置速率等); 3)在IM153框架内填加I/O模块; 4)设置各I/O模块。,加入PROFIBUS-DP主站系统,设置DP参数,填加PROFIBUS-DP接口设备(IM153),并设置DP参数,在IM153框架内填加I/O模块,设置各I/O模块,三、符号表与逻辑块 1、符号表(Symbols),用于定义符号变量,这样在编程时可以使用相应的符号代替直接地址变量,以增强程序的可读性。 符号变量使用符号表编辑器(Symbol Editor)生成或编辑。包括符号名称、对应的绝对地址、数据类型以及说明等。,符号表编辑器窗口,2、逻辑块(Blocks),逻辑块是用户编写的应用程序块的总称,包括组织块OB、功能块FB和功能FC。 对于简单的应用,可将用户程序填写在OB1(循环组织块)中,且可采用梯形图、功能块图、语句表以及S7-GRAPH(SFC)编程。 要填加逻辑块时,可通过SIMATIC管理器中的Insert菜单下的S7 Block生成。,编程窗口,插入块,四、S7-PLCSIM仿真软件 1、S7-PLCSIM的主要功能,仿真软件S7-PLCSIM集成在S7-STEP中,用于模拟PLC,可用于程序的开发和调试。 1)可在计算机上对S7-300PLC的用户程序进行离线仿真与调试。 2)可以模拟PLC的输入/输出存储区,通过窗口可改变输入变量状态,从而控制程序的运行,以及监视运行结果等。 3)可监视定时、计数器。 4)可模拟对位存储器、外设输入/输出、以及数据块的读写等。,2、S7-PLCSIM的使用,按实际系统要求生成项目并进行硬件组态,编写好用户程序。然后在SIMATIC管理器工具条中点击“Simulasion on/off ”,启动仿真器。 将组态及程序下载到仿真PLC中,然后运行。系统运行后,可使用各种监控功能监控运行状态及结果。,启动仿真器,仿真器窗口,监控窗口,五、S7-300的用户程序结构 1、用户程序的基本结构,包括程序块(或称为逻辑块)和数据块。 程序块包括组织块OB、系统功能块SFB、系统功能SFC、功能块FB、功能FC等。 OB由操作系统调用,其它块由OB调用。 OB可调用SFB、FB、SFC、FC。 FB、FC可调用SFB、 FB、SFC、FC 数据块为程序块提供相应的数据,包扩共享数据块和背景数据块。,1)组织块OB 启动组织块:如DB100 (暖启动) 循环处理组织块:如OB1(主程序循环) 时间中断组织块:如OB10(日期时间中断,即在设置的日期和时间时启动),OB35(时间循环中断,即以设定的时间为周期启动) 事件中断组织块:如OB20(延时中断,过程事件出现后延时一段时间再执行中断程序),OB40(硬件中断,快速响应过程事件) 应注意:PLC支持的各种组织块的数量与CPU型号有关。,2)系统功能块SFB 系统提供的子程序,集成在CPU模块中,有背景数据块,背景数据块可在编译时自动生成。例如连续PID控制块SFB 41(名称为CONT_C)。 3)系统功能SFC 系统提供的子程序,集成在CPU模块中,无背景数据块,以参数传递的形式交换数据。如设置和读取系统时钟的SFC 0和SFC 1等。 SFB和SFC应视为系统软件的一部分,它们不占用用户程序存储空间。,4)功能块FB 用户编写的或STEP7库中提供的有背景数据块的子程序。调用时需指定背景数据块,用于以静态方式存储相关的变量。 5)功能FC 用户编写的或STEP7库中提供的无背景数据块的子程序。调用时必须带参数调用。 对于STEP 7库中提供的用户常用FB和FC软件包,用户在编程时可直接调用,系统在编译时会将相应的子程序调入,相当于用户编写的FB或FC,占用用户程序存储空间。,2、线性化、模块化与结构化编程,STEP 7程序设计时可采用线性化编程、模块化编程和结构化编程。 线性化编程:整个用户程序均填写在OB1中。采用循环扫描方式执行。 模块化编程:程序被分为不同的逻辑块,每个块完成一定的任务。在组织块OB1中的程序来控制何时调用这些块。 结构化编程:将复杂的自动化任务分解为能够反映过程的工艺、功能或可以反复使用的小任务,这些任务由相应的程序块(或称为逻辑块来表示,程序运行时的数据和变量存储在数据块中。某些块可用于实现相同或形式相似的功能。,程序结构示意图,OB1,OB1,FB1,FB2,FC1,FC2,DB1,DB2,OB1,FB1,FB2,FC1,DB1,DB2,DB3,DB,线性化编程,模块化编程,结构化编程,DB4,3、功能块与功能的建立和调用,1)功能块(FB)的建立 在SIMATIC管理器中打开BLOCK文件夹,右键点击窗口,选择“InsertNew ObjectFunction Block”(插入功能块)。 双击插入的功能块,进行功能块编程。 先进行变量声明,其它程序在调用该功能块时,需指定背景数据块。而背景数据块是在编译调用程序时生成的(编写调用FB的程序时,系统会提示指定背景数据块)。 然后编写该功能块的执行程序。,功能块的建立,功能块在管理器中的显示,FB变量声明,FB编程,2)功能块(FB)的调用 功能块建立后,在其它程序中可有条件调用和无条件调用。采用梯形图编程时,FB如同一条功能指令。调用时指明其输入、输出(即将实参赋值给形参)和背景数据块即可。如某些参数未指明,则使用背景数据块中的数据。,功能块调用方法,3)功能(FC)的建立 如控制程序不需要保存自己的数据,则可用功能来编程,功能没有背景数据块,不能给其变量分配初值,也没有静态变量。 在SIMATIC管理器中打开BLOCK文件夹,右键点击窗口,选择“InsertNew ObjectFunction”(插入功能)。 双击插入的功能,进行功能编程。 先进行变量声明,然后编写该功能的执行程序。,FC变量声明,FC编程,4)功能(FC)的调用 功能建立后,在其它程序也可有条件调用和无条件调用。采用梯形图编程时,FC也如同一条功能指令。因其没有背景数据块,所以调用必须指明各参数。此外,功能提供了一个特殊的输出参数返回值,编程时可指定一个地址作为实参来存储返回值。,功能调用方法,5) STEP 7库中的功能块与功能的调用,在STEP 7编程软件中提供了一些常用的功能块(FB)和功能(FC),用户不用再创建这些子程序,编程时可直接调用,其方法与调用用户自己编写的FB或FC相同。 这些部件位于编程部件窗口中的Libraries/Standard Library下的相关目录下。 以功能FC105为例,该功能为输入标度变换,既将输入数据按规定的上限和下限进行线性转换。,FC105调用,OUT = (IN -K1)/(K2-K1)*(HI_LIM-LO_LIM) + LO_LIM K1和K2的值与极性控制BIPOLAR有关, BIPOLAR=0时,K1=0,K2=27648; BIPOLAR=1时,K1=-27648,K2=27648 。 上例中上面的调用是将模拟量输入通道PIW752的数据转换为0100%之间的数据。即将输入PIW752的模拟量进行百分量处理。 下面的调用是将MW0中的数据转换为0100%之间的数据。,4、系统功能块与系统功能的调用,系统功能块(SFB)和系统功能(SFC)的调用方法与功能块(FB)和功能(FC)的调用相同。只是SFB和SFC是集成在CPU模块内,不占用用户程序存储空间。应注意的是只有部分型号的CPU模块带有SFB和SFC。 编程时,这些部件位于编程部件窗口中的Libraries/Standard Library/System Function Blocks内。,1)系统功能块(SFB)的调用 系统功能块由系统提供,带有背景数据块,如SFB 41模块就是控制系统中常用的PID模块。 SFB41模块带有自己的背景数据块,用于存放其各种参数及状态信息等,如比例增益、积分时间、微分时间、自动/手动、自动输出值、手动输出值、起用P/I/D、扫描时间等。,SFB41模块调用,2)系统功能(SFC)的调用 对于系统功能,在程序中可直接调用,与一般指令类似,只需将输入和输出端进行相应的变量连接即可。 现以系统功能SFC20“块传送”功能为例说明调用方法。(见下图) 这里,SRCBLK规定原数据区起始地址及要传送的字节数,指针型地址(P#)。DSTBLK规定目的数据区起始地址,RET_VAL规定错误代码存储地址。,SFC20调用,1、FC编程 编写一程序,要求当I0.1、I0.3或I0.5接通时,分别对MW1016、 MW2026 和MW3036 单元内的数据(均为16位整数) 按MWn6 / MWn2 MWn0 * MWn4 + 500进行计算(各单元内数据均不为0),并将最终计算结果存储在MWn8开始的单元中,且当该数小于0时,对应地将Q4.1、Q4.3或Q4.5置为ON。 根据题意可使用FC完成运算部分,然后在OB1中调用该FC。 在FC中定义4个整型输入变量(依次为INn0、 INn2、 INn4和INn6),1个整型输出变量(OUTn8 ),及3个临时整型变量(依次为TEMP1、TEMP2和TEMP3)。,例题,FC1程序,Network1,Network2,OB1程序,Network1,Network2,Network3,2、易拉罐生产线计数 易拉罐生产线需要统计每小时生产的易拉罐数量。系统中有一传感器,每当一易拉罐经过时,就产生一个脉冲。要求编制程序将一天24小时生产的易拉罐数量统计出来,并分别存储在24个数据寄存器中。 I/O分配: I0.0启动按钮; I0.1复位按钮; I0.2计数输入;,说明: 1)程序写在OB1中。 2)计数值存储在DB1中,需先建立DB1。 DB1的0 47字节为24个INT数(16位),用于 存储各小时的计数值。 第48 55共8个字节用于存储日期-时间。 Byte48:年, Byte49:月, Byte50:日 Byte51:时, Byte52:分, Byte53:秒 Word54:毫秒。 日期-时间均为BCD格式。 3)SFC21为存储器初始化模块。 4)SFC1为读日期-时间模块。,梯形图程序,EN,ENO,IN,OUT,MOVE,L#0,MD0,I0.0,EN,ENO,BVAL,RET_VAL,SFC21,MW4,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论