




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PLC教程理论篇之PLC 程序组织关键词:程序组织、工程、硬件配置(组态)、符号编辑、初始化程序关键词:任务、循环任务、中断任务、组织块、函数块、功能块、数据块、多程序组织、多 CPU 程序组织1、 程序工程组织程序工程组织是指,怎样把各个功能不同的程序块,再加上硬件配置、相应的设定及地址分配,以至于网络配置,等等,组成一个工程的过程。所以,PLC 程序组织的目的,就是组织工程。一般讲,一个PLC的工程要包含一个或多个 PLC 的硬件配置、地址分配、有关设定及一系列程序或程序段(块)。具体的工程的内含,与 PLC 品牌、类型、型号及所用的编程软件有关。工程还是 PLC 程序、设定及其它数据的存储单位。OMRON PLC 工程文件它存储工程文件的扩展名为 CXP,是二进趾码,不可视的。还有扩展名为 CXT 的工程文件,是助记符的文本文件,未经压缩,可用文本阅读器阅读。CXT 的工程文件与 CXP 的工程文件可相互转换。如用 CXP 软件调出 CXP 工程文件,把它存成扩展名为 CXT 工程文件,即实现了前者到后者的转换。反之,也一样。OMRON 老的编程软件编的程序,也可转换为 CXT,进而转换为或直接转换 CXP 的工程文件。西门子 PLC 工程文件它 S7-200 存储工程文件的扩展名为 MWP,是二进趾码,不可视的。还有扩展名为 awl 的工程文件,是语句表的文本文件,未经压缩,可用文本阅读器阅读。当单击“File”菜单项下的“Export”项,将弹出如图 16-1 所示的对话框。在其上选择保存目录及键入文件名,再击“保存”按钮键即可进行存储。当单击“File”菜单项下的“Inport”项,将弹出类似如图 16-1 所示的打开对话框。在其上选择保存目录及键入文件名,再击“打开”按钮键即可打开 awl 文件。这时进行存贮,也可得到 MWP 文件。图 16-1 Awl 文件存贮对话框awl 文件不仅可视,还是它的程序仿真必须使用的程序输入文件。S-300、400 工程文件要用多个文件存储,并分布在多个子文件夹中,各个文件存储不同类型的数据。三菱 PLC 工程文件它存储工程文件用文件夹,含多个文件及子文件夹。各个文件存储着与工程有关的不同数据。文件夹名即为工程名。击文件夹下的 Gppw.gpj 或 Gppw.gps 文件,即可打开工厂文件夹,进入编程界面。图 16-2 示的为三种 PLC 用它的编程软件,组织的一个的工程。图 16-1 Awl 文件存贮对话框awl 文件不仅可视,还是它的程序仿真必须使用的程序输入文件。S-300、400 工程文件要用多个文件存储,并分布在多个子文件夹中,各个文件存储不同类型的数据。三菱 PLC 工程文件它存储工程文件用文件夹,含多个文件及子文件夹。各个文件存储着与工程有关的不同数据。文件夹名即工程名。击文件夹下的 Gppw.gpj 或 Gppw.gps 文件,即可打开工厂文件夹,进入编程界面。图 16-2 示的为三种 PLC 用它的编程软件,组织的一个的工程。显然,只有进行了程序组织,形成一个 PLC 工程,并对所编程序进行编译,且与 PLC 联机(本例有2 个 PLC,须分别与 2 个 PLC 联机),再把工程的中的程序、设置等全部下载给 PLC,PLC 才能正确运行这个工程中的程序。图 b 为三菱 Q 系列机工程。从图知,这个工程有 3 个程序,还有软元件注释、参数、软元件内存及 软元件初值等项目。其中参数项,可用于对 PLC 所使用的硬件进行配置,或说进行组态(Confiig)。图 c、d 为西门子 S7-300、400 机工程。从图知,这个工程有 4 个 PLC,两个 S7-400,两个 S7-300。还有两个网络,MPI 网及 Profibus 网。从图 d 知,S7-400(1)有 5 个程序块,即 OB1、OB2、FB1、DB1及 DB2。组织工程既是编程的开始。没有建立工程,也没有编程环境,无法编程。建立工程也是编程的归宿,只有通过工程进行程序编译,与 PLC 联机,并下载程序、设定等给 PLC,所编的程序才能起作用。工程还是 PLC 编程及设定等数据存储的容器,没有工程,这些数据无法保存,也无法调用。提示:如使用简易编程器编程,其所有操作,包括种种设定,全用手工实现。所以,也谈不上什么工程。PLC 程序组织的任务有:硬件配置(组态)、I/O 地址分配、符号表设计、模块工作参数设置、初始化程序或参数设计及有关程序合成。硬件配置(组态):选定 PLC 的机型、CPU 型号;使用网络及网络通讯参数;机架及模块选定及编址;符号编辑与内部器件地址对应。所有这些,在组织程序时,都必须在软件的有关窗口中选定。具体见第 2 章关于编程软件的介绍。I/O 设计:对模块式 PLC,在程序组织时,才有 I/O 表设计问题。如 OMRON PLC,当要自行设计时,可双击工程工作区中的“I/O 表”项。击后,将弹出 I/O 表设计窗口,见图 16-3。图 16-3 I/O 表设计窗口从图知,利用该窗口,可对每一机架、槽位选用什么模块以及模块的有关参数进行选择。提供了可能的I/O 配置。你可按你的系统实际配置进行选择。该图正对机架 01 的槽位 02 进行配置。这是选定槽位 02后,在右击鼠标弹出的选择小窗口。从中可选择有关的模块。西门子 S7-300、400 机这些工作在是硬件组态窗口上进行。而三菱 PLC 则在“PLC 参数”窗口上进行。符(标)号编辑:在进行程序组织时、必须编辑符号表,务使所有的符号都有确定的实际地址与其对应。符号一般分为全局符号(变量)及局部符号(变量)。前者可在全局使用,后者则仅限于指定的程序中有效。符号(变量)一般是在符号编辑窗口上编辑,但西门子 PLC 还可在编程输入操作数时,对该操作数单独用对话框进行编辑,比较方便。设置:设置是指,在程序组织时所进行的种种项目设置,以确保 PLC 能正常工作。对 OMRON PLC 从前这些设定,都是直接在 DM 设定区中,写有关数据。而今有了 CXP 软件,可在设置窗口及弹出的窗口上进行。而这个设置的内容,又因机型不同而有所不同。对西门子、三菱 PLC 则都是在编程软件的有关设定窗口上进行。初始化程序与初始化数据:PLC 上电时,系统会对自身进行初始化。除掉电保持的数据区外,其它的内部器件全部清零。有的PLC 在 PLC 上电时会自动把内存卡中的程序装载到 CPU 的内存中,等等。故多数 PLC 自身的初始化问题,用户可不必理它,了解清楚怎么回事就可以了。而初始化程序是指,用 PLC 运行时,仅在第 1 扫描周期运行的程序,进行用户所希望的初始化。其目的主要是,实现用上述方法设置无法进行的设置及有关初始数据的赋值。初始化程序一般是通过仅第一扫描周期 ON 的特殊继电器调用。高档机也可用在第一扫描周期运行的程序(组织块)实现。但初始化程序的内容则是用户自己要编的。初始化程序有两个方面:1数据初始化主要是对要使用的数据赋初值。可用初始化程序,把要求的数直接写入相应软器件中,或用存于掉电保持的数据区中,然后再传给相应工作通道(或字)。此外,对 OMRON PLC 也可用内存窗口设定,然后联机,把设定数据下载给 PLC。由于它的 DM 区是掉电保持,其数据如不被修改,将长期保持。对西门子 PLC,可使用数据块设定数据,然后与程序一起下载给 LC。但应把该数据区设置为不是掉电保持的,这样重新运行 PLC 时,将始终为设定值。如果设定为掉电保持时,如数据有了修改,则将保留修改值,而不是初始的设定值。对三菱 PLC 还可用初始化数据块。2设定初始化如图 12-7b 程序就是初始化设定。要不要这样程序,用什么样的程序,取决于 PLC 及模块的型别。程序合成:程序合成,关键是这里的“各部分”怎么确定的。要先分,然后才有合。这就是将要讨论的程序组织方法。PLC 程序组织方法与 PLC 的品牌、类型、机型有关。大体上有,模块化组织、多任务组织及多 CPU组织。多工作模式:电路状态的设置。控制电路应使控制可处在不同的工作状态,以进行不同的控制。常见的有:手动工作状态:可对对象进行手动操作,以实现工作要求。调整状态:可使设备作空运转,以实现对设备的调整。自动工作状态:可以有若干种自动工作状态(工作方式)。这些状态、方式,可选择一个基本的进行设计,然后再考虑其它状态、方式。其间靠切换开关实现。从实用考虑,多数控制电路都是多种状态、多种方式的。所以,考虑这个问题也是设计电路的重要工作。二、多任务组织1任务关键词:任务、循环任务、中断任务、组织块、函数块、功能块、数据块、多程序组织、多 CPU 系统程序组织多任务(程序、模块)编程是针对高档 PLC 推出的编程方法。它可按要求,把大程序分成多个不同功能及不同工作方式的任务(小程序、模块)。用任务(小程序、模块)的种种调用,推进整个程序的执行,达到运行程序的目的。任务划分依 PLC 的型号不同而有所不同。大体上任务有两类:循环任务及中断任务。循环任务大体有 32 个(机型不同,可能有所不同)。任务编号从 0 到 31。循环任务 00 为起始循环任务。是首先要执行的任务,也是缺省要用的任务。如仅一个任务(最少也要有一个)则就是它。如有多个循环任务,PLC 开始运行,总是先按序号从小到大,依次周而复始不断地执行着。如被任务管理指令控制,则怎么管理,将怎么执行。中断任务较多,多达 256 个,机型不同,可能也有所不同。编号也是从 0 开始,0 到 255。中断任务由各种中断事件触发。有了中断事件,就暂时停止循环任务的执行,转去调用相应中断号的中断任务。而且,发生一次事件,仅调用一次。如果,同时有两个中断事件发生,则先调中断号小(优先级高)的任务,执行小的后,再执行大的。都执行完中断任务,再转回执行循环任务。图16-4 示的为多任务程序执行的情况。图 16-4 多任务程序执行中断任务有:电源断中断任务、定时中断任务、I/O中断任务、外中断任务。此外,有的机型还有扩充循环任务,是按循环任务处理的中断任务。编号在8000和8255之间的十进制数(值80008255定义0255扩充循环任务)。电源断中断任务优先级最高,用中断0号。中断1号、中断2号,用于内部定时中断。其定时间隔可用CXP编程软件设定。I/O中断要用到中断输入单元。其中断号与中断单元的输入点的编号相对应。如输入点为 0,则设定其中断任务号为100,其余类推。多任务编程是模块化编程的进一步发展。其好处与模块化组织还要多。如图 16-5 所示,这里任务的作了不同的组织,任务 ABC 及任务 ABD 就构成了两个不同的程序。很灵活。图 16-5 任务的不同组织构成不同的程序用多任务编程时,每一任务的最后一个指令应是END。它代表任务的结束。END指令之后的指令不执行。执行每一任务开始时,所有的标志位,如“大于”、“等于”均复位为0。每个任务可以有自己的子程序。而且,别的任务不能调用。但可以设计全局的子程序。这时,所有的任务均可调用。图16-6示的即为全局子程序使用的情况。图16-6 为全局子程序使用从图知,使用全局子程序,可减少程序代码。2任务管理任务管理,也就是任务调用及调用取消。有两种方法。由中断事件调用,针对中断任务(无需取消);用指令调用与调用取消,针对循环任务。系统提供的指令调用指令为“任务 ON”。调用取消指令为“任务 OFF”。任务 ON:助记符号为 TKON(820),目的是 使得指定的任务执行。梯形图符号为:这里N - 循环任务号。N 应在其允许范围根据任务的类型指定。必须是十进制 00 和 31(十进制)之间的一个常数。(数值 0 31 定义任务 0 31)。对CS1-H,CJ1-H,和CJ1M CPU 单元,也可为扩充循环任务号。N 必须是一个在8000 和8255 (十进制)间的常数。(值8000 8255 定义扩充循环任务0 255)。执行本指令,可使指定的任务置于可执行状态。并把相应的任务标志(TK00TK31置ON。如果本指令指定任务号小于本任务号,指定的任务将从下一个循环开始执行。如果指定的任务号大本任务号,该任务在当前的循环执行。图16-7为以上两种调用情况的图解说明。图 16-7 两种调用情况图解任务OFF :助记符号为TKOF(821),目的是把指定的任务置为待机状态,即禁止任务的执行。梯形图符号为:这里N - 循环任务号。N 应在其允许范围根据任务的类型指定。必须是十进制 00 和 31(十进制)之间的一个常数。(数值 0 31 定义任务 0 31)。对CS1-H,CJ1-H,和CJ1M CPU 单元,也可为扩充循环任务号。N 必须是一个在8000 和8255 (十进制)间的常数。(值8000 8255 定义扩充循环任务0 255)。执行本指令,可使指定的任务置于待机状态,并把相应的任务标志(TK00TK31)置OFF。如果本指令指定任务号小于本任务号,指定的任务将从下一个循环开始待机。如果指定的任务号大于本任务号,该任务在当前的循环待机。情况如同图16-7对TKON指令的说明。3 OMRON PLC 任务组织任务组织包含任务的建立及调用。中断任务的建立主要是,作好有关软、硬件设定及编写中断处理程序。而它的调用不须组织,由中断事件调用。中断处理程序可按照控制或数据处理的要求编写,与以前讨论的没有本质差别。这里不再赘述。循环任务除了任务 00 外,所有的都要另行建立。调用也要组织。建立循环任务时,应在工作区中,先击“PLC 项”,再击插入“新程序”。然后,击“程序的属性”项,将弹出程序属性窗口,见图 16-8。图 16-8 程序属性窗口从图知,可从中选定本程序的任务类型及任务编号。同时,还可选定,操作开始时,是否执行本任务。如图 16-9 示的为循环任务 02,其名称为“新程序 3”,而且,操作开始时执行。任务除了一开始就让它执行,也可开始时不执行,而在某个条件下才执行。图 16-10 示的即为这样的例子。图 16-10 任务调用例子从图知,当 D0 的值增加到#50 时,才执行 TKON 1 指令,才把任务 1 调用。已调用的任务还可在一定的条件下,让其停止执行。图 16-11 示的即为这样的例子。图 16-11 使任务停止执行例子从图知,当 D2 增加到#30 时,将执行 TKOF 1 指令,将使任务 1(本例即自身这个任务)停止执行。可知,在多任务编程的情况下,编写好各任务的代码后,可很方便地,根据任务是否执行的情况进行组织。三、多模块组织西门子高档 PLC 的程序是分成模块组织的。S5 型的模块有五种:组织块(OB)、顺序块(SB)、程序块(PB)、功能块(FB)及数据块(DB)。而每种模块都应有不同的编号。S7 型机则分成三种,即组织块(OB)、程序块(FC、不带参数或 FB、带参数)及数据块(DB)。这些块与 OMRON 的任务有相同,而又有不同。在这几块程序中,OB1 块是重复地被扫描。即执行一次之后,又从头开始执行,始终不停。而有的组织块,只是定时或出现中断时执行,有的在 PLC 从停止到运行时执行一次等等。其它块,则由指令或事件调用。如果程序不复杂,可只在 OB1 中,编写所有用户程序,这种编程,西门子称之为线性编程。由于 OB1是重复地被扫描,故可按程序要求实现控制。如果程序复杂,其基本部分(需重复地被扫描的)放在 OB1 中。其余的,如中断工作的,初始化工作的等等,放在其它组织块中。而且组织块中的程序,可调用块的语句,如 Call 语句,调其它程序块。以 S7 型机为例,最简单的为模块编程可以这么编:在 OB1 块中,编两个调程序块的指令:即 Call FC1 及 Call FC2;在 FC1 块中,编写实现某个动作控制的一组指令;在 FC2 块中再编实现另一个动作控制的指令这样,只要这三个程序块下载给 PLC,再加上 PLC 中出厂装的其它系统程序块,PLC 运行后,即可实现对这两个动作的控制。如果要求再对第三个动作作控制,可在原有的 FC1 或 FC2 中修改程序;也可再增加一个程序块,如FC3,并在 OB1 中增加一条调 FC3 的语句;然后再下载给 PLC,即可实现。后者自然要简便得多。它不会对原已设计好的程序块产生干扰。显然,这里的 FC 块,与 CJ 机的循环任务有点类似。只是,FC 须调用,不调不工作。而循环任务,缺省是要调用。停止调用要用 TKOF 指令。FB 可设参数,可带参数调用。为面向对象编程提供方便。FB 设有参数,所以,使用应定义一个数据块与其绑定,并供其使用。除了 OB1,还有其它编号组织块。标号不同,功能也不同。只是,它用于定时处理的很多。还有出错处理,多 CPU 管理,启动管理等。当然,外中断处理也不少。再如有的仅运行一个扫描周期的,如 OB100,在暖启动时,运行一个周期,OB101,在热启动时,运行一个周期,OB102,在冷启动时,运行一个周期。等等。S7-300、400 无类似 OMRON PLC 那样启动时 ON 一个周期的特殊继电器,故用这几个组织块处理。前已提及,S7-300、400 机还有数据块,DB。数据块有两种:共享数据块及专用数据块(与 FB 绑定)。这些数据块也都是程序的一个不可分割的组成模块。在任一组织块或函数块中,可用 OPEN 指令打开共享数据块。打开后,可直接使用该块所定义变量。如未打开也可使用,只是在使用时,要指明使用的数据块编号。除了以上用户的编程模块。S7-300、400 机的编程软件,STEP 7 还提供有系统函数块及系统功能块。如第 4 章介绍的 PID 控制用的功能块 FB40,即为系统功能块。厂家开发的这些函数块及功能块,既增强了PLC 的功能,又简化的编程。并为面向对象编程创造了条件。西门子高档 PLC 是最早使用多模块组织它的程序的。其技术比较成熟。它不仅可多模块编程,还可分模块下载程序、调试程序。下载时,PLC 还可不停机,使用起来也比较方便。四、多程序组织三菱 Q 型机的多程序三菱高档 PLC 的程序是多程序组织的。一个(大)程序可分解为若干(小)程序。而各个(小)程序又可设定为种种不同的执行方式。这些执行方式有:初始执行(在 PLC 进入运行状态时,第一周期运行)、扫描执行(在 PLC 进入运行状态后的第二周期开始,每扫描周期均运行)、固定扫描执行(按设定时间间隔执行)、低速执行(在盈余的时间执行)及待机执行(调用它时才执行)。所设计的程序的执行方式可以用如图 16-12 所示的,PLC 编程软件的“参数设置”窗口设定。图 16-12 程序执行方式设定示例如图所示,这个工程有 5 个程序,其执行类型分别指定为扫描、初始化、待机、固定周期及低速。实际还可增加程序,执行方式也可与上述的重复。这些程序执行方式可运用相应指令予以改变。这些指令见表 16-1表 16- 1 三菱高档机改变程序执行方式所用指令提示:这里的(小)程序都是主程序的一部分,不是一般的子程序,也不是中断子程序。它可在编程时设定或在运行时改变其执行方式。图 16-13 示的为它的程序执行方式变化的图解。图 16-13 三菱高档机程序执行方式变化图解要提及的是,不同执行方式的(小)程序可以有多个。这时,除待机外,相同方式程序的执行,将按其编号升序执行。图 16-14 所示的即为,有多个初始执行方式程序的执行情况。图 16-14 多个初始执行方式程序的执行情况。图 16-15 所示的即为,有多个扫描执行方式程序的执行情况。图 16-15 多个扫描执行方式程序的执行情况。五、多 CPU 组织多 CPU 配置,指一个机架安装多个 CPU 模块。这可扩大 PLC 的控制控制规模,增强 PLC 的控制功能,加快 PLC 的响应速度,提高 PLC 的信息处理能力。是当今高档 PLC 发展的方向。不少 PLC 厂家一推出此类的 PLC 系统。西门子多 CPU 系统程序组织:它的一个主机架最多可安装 4 个 CPU 模块的。图 16-16 示的即为 S7-400 多 CPU 配置的例子。图 16-16 多 CPU 系统1 CR2 - ER从图知,它的主机架上配备有 4 个 CPU。这 4 个 CPU 相互通讯,同步工作,但各独立执行各的程序,各与各的信号模块(SM)、功能模块(FM)、通信模块(CP)及 I/O 模块相连。故控制任务可并行处理。而什么时候需要多 CPU 模块呢?程序量太大,一个 CPU 与内存难以处理,用多 CPU 分担处理;或系统中个别要求用特别快的速度处理,可另配置相应的 CPU。如果任务分工明确,用多 CPU 也好管理。三菱多 CPU 系统程序组织:三菱高档 Q 系列机,在主机板上可配置多达 4 个 CPU,组成多 CPU 的多元(各 CPU 可指定各控制模块)控制系统。而在 CPU 间,又可通过公用内存或相应指令,进行数据交换,以实现整个系统的工作协调。图 16-17 示的为两个 CPU 系统配置的简图。图 16-17 两 CPU 系统简图从图知,由软件设定,这里 QCPU1 控制模块 1、2、3、4,而 QCPU2 则控制模块 5、6、7。至于这两个 CPU 间的数据可通过公用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江省浙东北联盟2026届高三化学第一学期期中质量检测试题含解析
- 北京市顺义区杨镇一中2026届高二化学第一学期期末综合测试试题含答案
- 水库移民安置管理岗位面试实战模拟题
- 2026届吉林省吉化一中化学高一上期末复习检测试题含解析
- 安徽省阜阳市成效中学2026届化学高三第一学期期末质量检测模拟试题含解析
- 宋朝行政制度解读
- 面试必 备:智慧客服常见问题及答案
- 求职人员信息技术能力构建
- 高品质AI面试题库:全方位掌握职业趋势
- 萜类化合物讲解
- DB35T 1951-2020福建省公共机构能耗定额标准
- 医疗机构从业人员规范
- 《研学旅行相关概念与理论基础综述》1900字
- 医院培训课件:《股骨头坏死》
- 保险基础知识简读本(2024版)
- 集团公司司库管理办法
- 住院患儿实施院内转运临床实践指南2023版课件
- 主播新手上路-打造游戏直播与娱乐新风向
- 2024-2025学年中职数学基础模块 下册高教版(2021·十四五)教学设计合集
- 第1-4章综合检测试卷2024-2025学年浙教版数学八年级上册
- 市场营销经理助理考试题库
评论
0/150
提交评论