Lecture14.用户程序结构和诊断.pptx
- 文档编号:30851250
- 上传时间:2024-02-16
- 格式:PPTX
- 页数:50
- 大小:608.23KB
Lecture14.用户程序结构和诊断.pptx
《Lecture14.用户程序结构和诊断.pptx》由会员分享,可在线阅读,更多相关《Lecture14.用户程序结构和诊断.pptx(50页珍藏版)》请在冰豆网上搜索。
电气控制与可编程控制器PLC自动化与电子工程学院邢关生块块简简要描要描述述组织块组织块(OB)操作系操作系统统与用与用户户程序的接口,决定用程序的接口,决定用户户程序的程序的结结构构功能功能块块(FB)用用户编户编写的包含写的包含经经常使用的功能的子程序,常使用的功能的子程序,有有专专用的背景用的背景数数据据块块功能功能(FC)用用户编户编写的包含写的包含经经常使用的功能的子程序,常使用的功能的子程序,没有没有专专用的背用的背景景数据数据块块背景数据背景数据块块(DB)用于保用于保存存FB的的输输入入变变量、量、输输出出变变量和静量和静态变态变量,其数据在量,其数据在编编译时译时自自动动生生成成全局数据全局数据块块(DB)存存储储用用户户数据的数据区域,数据的数据区域,供所有的代供所有的代码块码块共共享享1.2S7-1200的程序结构操作系统调用用户程序用户程序按“块”组织,“块”对应于子任务在在块调块调用中,用中,调调用者可以是各种代用者可以是各种代码块码块,被,被调调用的用的块块是是OB之之外的代外的代码块码块。
调调用功能用功能时时需要需要为为它指定一个背景数据它指定一个背景数据块块。
嵌套嵌套调调用用:
被被调调用的代用的代码块码块又可以又可以调调用用别别的代的代码块码块。
编编程程时时被被调调用的用的块应该块应该是已是已经经存在的存在的块块,即,即应应先先创创建被建被调调用用的的块块及其背景数据及其背景数据块块。
教材教材P7P7“块”的调用1.功能与功能块2.全局数据块3.中断事件与中断指令(中断组织块)4.在线功能与故障诊断(错误中断组织块)5.交叉引用表和程序信息第六章S7-1200用户程序结构与故障诊断1.功能与功能块2.全局数据块3.中断事件与中断指令(中断组织块)4.在线功能与故障诊断(诊断组织块)5.交叉引用表和程序信息第六章S7-1200用户程序结构与故障诊断6.1功能与功能功能与功能块块功能(FC)和功能块(FB)是子程序与调用块的沟通:
输入、输出参数功能和功能块中都有局部变量(Temp),不保存功能没有固定的数据块,功能块有背景数据块如何新建功能和功能块?
按按这这里里6.1功能与功能功能与功能块块6.1功能与功能功能与功能块块功能(FC)1生成FC(略)2定义局部变量3编写程序4在某个代码块中调用FC6.1功能与功能功能与功能块块功能(FC)2)定义局部变量(5种局部变量)Input参数Output参数InOut参数Temp:
内部的临时数据,返回后丢失Return6.1功能与功能功能与功能块块功能(FC)2)定义局部变量(5种局部变量)6.1功能与功能功能与功能块块功能(FC)3)编写程序,例如:
过程控制任务中,压力变送器接PLC模拟输入通道0(地址为IW64)。
变送器量程0-10MPa、输出信号0-10V,被PLC转换为0-27648。
编程计算IW64中的数值对应的压力值(单位为MPa)。
P(10N)/276486.1功能与功能功能与功能块块功能(FC)3)编写程序,例如:
6.1功能与功能功能与功能块块功能(FC)4)在某代码块中调用6.1功能与功能功能与功能块块功能块(FB)与FC对比,主要差异在背景数据块:
输输入、入、输输出参数和局部的静出参数和局部的静态变态变量保存在背景数据量保存在背景数据块块中,返回后也不中,返回后也不丢丢失失背景数据背景数据块块的的变变量可以由其他代量可以由其他代码块码块使使用用调调用同一个功能用同一个功能块时块时,可以使用不同的背景数据,可以使用不同的背景数据块块FB的典型的典型应应用是用是执执行不能在一个行不能在一个扫扫描周期描周期结结束的操作束的操作。
6.1功能与功能功能与功能块块功能块(FB)下面看一个例子:
将多个电机延时制动的程序通过FB来简化电电机的控制机的控制逻辑逻辑如下如下:
每个每个电电机有自己的启机有自己的启动动和停止按和停止按钮钮一个一个电电机机对应对应的启的启动动按按钮钮按下后,按下后,该电该电机立即启机立即启动动;对应对应的停止按的停止按钮钮按下后,按下后,该电该电机延机延时时停停止止不同不同电电机的延机的延时时间时时间不不同同6.1功能与功能功能与功能块块功能块(FB)定义FB的变量P134,图图6-66.1功能与功能功能与功能块块功能块(FB)编写FB程序P135,图图6-8输输入参数入参数:
#启启动动按按钮钮、#停止按停止按钮钮、#定定时时时时间间输输出参数出参数:
#电动电动机、机、#制制动动器器静静态变态变量量:
#TimerDB(类类型型:
IEC_Timer)6.1功能与功能功能与功能块块功能块(FB)在OB1(Main)中调用在PLC变量表中定义变量(名称、地址、数据类型)6.1功能与功能功能与功能块块功能块(FB)在OB1(Main)中调用在在调调用用时时,定,定义义背景数据背景数据块块6.1功能与功能功能与功能块块功能块(FB)FB界面区中的变量与背景数据块中变量的对比FB1的界面区FB1的背景数据块6.1功能与功能功能与功能块块OB与与FC和和FB的区的区别别对对应应的的事事件件发发生生时时,由由操操作作系系统统调调用用组组织织块块,FB和和FC是是用用户户程序在代程序在代码块码块中中调调用用。
组组织织块块没没有有输输入入参参数数、输输出出参参数数和和静静态态变变量量,只只有有临临时时局局部部数数据据。
有有的的组组织织块块自自动动生生成成的的临临时时局局部部数数据据包包含含了了与与启启动组织块动组织块的的时间时间有关的信息,它有关的信息,它们们由操作系由操作系统统提供提供。
1.功能与功能块2.全局数据块3.中断事件与中断指令(中断组织块)4.在线功能与故障诊断(诊断组织块)5.交叉引用表和程序信息第六章S7-1200用户程序结构与故障诊断6.2全局数据全局数据块块与数据与数据类类型型什么是数据什么是数据块块(DB)?
)?
数据数据块块是用于存放是用于存放执执行代行代码时码时所需的数据的数据所需的数据的数据区区数数据据块块没没有有指指令令,按按数数据据生生成成的的顺顺序序自自动动地地为为数数据据块块中的中的变变量分配地址量分配地址。
两种两种类类型数据型数据块块全全局局数数据据块块:
存存储储供供所所有有的的代代码码块块使使用用的的数数据据,所所有有的的OB、FB和和FC都可以都可以访访问问背背景景数数据据块块:
存存储储的的数数据据供供特特定定的的FB使使用用。
背背景景数数据据块块中中保保存存的的是是对对应应的的FB的的Input、Output、InOut和和Static变变量量,Temp没有用背景数据没有用背景数据块块保存保存。
修改数据块的名称选择是全局DB或是某个FB对应的的背景数据块可以修改块的编号只能用符号地址访问生成的块中的变量,不能使用绝对地址,可以提高存储器的利用率全局数据全局数据块块的建的建立立全部全部监监视视插入插入行行添加添加行行扩扩展模展模式式结结构和数构和数组组的的“偏移量偏移量”它它们们在数据在数据块块中的起始地中的起始地址址结结构的元素的构的元素的“偏移量偏移量”列是它列是它们们在在结结构中的地址偏移构中的地址偏移量量全局数据全局数据块块的格的格式式数据数据块块可以按可以按位位(例如例如DBX3.5)、字、字节节(DBB)、字、字(DBW)和和双双字字(DBD)来来访问访问。
在在访问访问数据数据块块中的数据中的数据时时,应应指明数据指明数据块块的名称,可以用的名称,可以用符符号地址或号地址或绝对绝对地址地址访访问问符号地址符号地址:
“GloablDB1”.功率功率2绝对绝对地址地址:
DB5.DBW14符号地址表示符号地址表示结结构中的元构中的元素素“GloablDB1”.发电发电机机.电电流流全局数据全局数据块块的的访访问问1.功能与功能块2.全局数据块3.中断事件与中断指令(中断组织块)4.在线功能与故障诊断(诊断组织块)5.交叉引用表和程序信息第六章S7-1200用户程序结构与故障诊断6.3中断事件与中断指令中断事件与中断指令启启动组织块动组织块的事的事件件事件事件类类型型OB编编号号个个数数OB启启动动事事件件优优先先级级组组程序循程序循环环1或或2001启启动动100或或200时间时间延延迟迟2002循循环环中中断断2001启启动动或或结结束前一循束前一循环环OB0从从STOP切切换换到到RUN4延延迟时间迟时间到到4固定的循固定的循环时间环时间到到队队列列OB深度深度优优先先级级11118384硬件中硬件中断断200上升上升沿沿(16个个)、下降、下降沿沿(16个个)32550HSC计计数数值值=设设定定值值,计计数数方方向向编编号,外部复位,最大分号,外部复位,最大分别别6个个诊诊断断错错误误820或或1模模块检测块检测到到错错误误时间错时间错误误80超超过过最大循最大循环时间环时间,调调用用的的OB0或或1正在正在执执行,行,队队列溢出,因列溢出,因为为中中断断负负荷荷过过高高丢丢失中失中断断1668982636.3中断事件与中断指令中断事件与中断指令不会启不会启动动OB的事的事件件事件事件级级别别事事件件事件事件优优先先级级系系统统反反应应插入插入/拔拔出出插入插入/拔出模拔出模块块21STOP访问错访问错误误刷新刷新过过程映像程映像的的I/O访问错访问错误误22忽忽略略编编程程错错误误块块内的内的编编程程错错误误23STOPI/O访问错访问错误误块块内的内的I/O访问错访问错误误24STOP超超过过最大循最大循环环时间时间的两的两倍倍超超过过最大循最大循环时间环时间的两的两倍倍27STOP6.3中断事件与中断指令中断事件与中断指令事件事件执执行的行的优优先先级级与中断与中断队队列列程序的程序的处处理理顺顺序由序由优优先先级级、优优先先级组级组合合队队列决列决定定3个个优优先先级组级组。
优优先先级级的的编编号越大,号越大,优优先先级级越高越高。
若同若同时产时产生生:
先:
先处处理高理高优优先先级级;优优先先级级相同,相同,则则“先先来先服来先服务务”若在若在处处理理1个事件个事件过过程中,又程中,又产产生新事件,要根据生新事件,要根据优优先先级组级组:
a.a.若若后后发发生生的的事事件件属属于于更更高高的的优优先先级级组组,将将中中断断低低优优先先级级组组的事件的事件的的OB的的执执行行。
b.b.若若后后发发生生的的事事件件具具有有相相同同或或较较低低优优先先级级组组,后后者者不不会会中中断断正正在在处处理理的的OB,将将根根据据它它的的优优先先级级添添加加到到对对应应的的中中断断队队列列排排队队等等待待。
当当前前的的OB处处理理完完后后,再再处处理理排排队队的的事事件件6.3中断事件与中断指中断事件与中断指令令程序循程序循环环OB启启动动OB循循环环中断中断OB硬件中断硬件中断OB时间时间延延迟迟OB教材教材:
P143-P1496.3中断事件与中断指令中断事件与中断指令程序循程序循环组织环组织块块需要需要连续执连续执行的程序行的程序应应放在主程放在主程序序OB1中中。
一般只需要一个程序循一般只需要一个程序循环组织块环组织块。
其他程序循其他程序循环环OB的的编编号号应应大于等于大于等于200,CPU按按编编号号顺顺序序执执行行。
6.3中断事件与中断指令中断事件与中断指令启启动组织动组织块块启启动组织块动组织块用于初始用于初始化化CPU从从STOP切切换换到到RUN时时,执执行一次启行一次启动动OB,之后之后执执行行程序循程序循环环OB1。
允允许许生成多个启生成多个启动动OB。
默。
默认认的是的是OB100,其他的启,其他的启动动OB的的编编号号应应大于等大于等于于200。
一般只需要一个启。
一般只需要一个启动组织块动组织块。
OB100的程序的程序:
OB201的程序的程序:
将将CPU切切换换到到RUN后,后,QB0的数的数值为值为7,MB14和和MB16的的值为值为1,说说明只明只执执行了行了一次一次OB100和和OB201。
6.3中断事件与中断指令中断事件与中断指令循循环环中断中断组织组织块块在在设设定的定的时间间时间间隔,循隔,循环环中中断断(cyclicinterrupt)组织块组织块被被周周期地期地执执行行。
时间间时间间隔默隔默认值为认值为100ms,可修可修改改最多可以最多可以组组态态4个循个循环环中断事件,循中断事件,循环环中中断断OB的的编编号大号大于于等于等于200。
6.3中断事件与中断指令中断事件与中断指令硬件中断硬件中断组织组织块块1/4硬件中断硬件中断组织块组织块用于用于处处理需要快速响理需要快速响应应的的过过程事件程事件。
最多可以生最多可以生成成50个硬件中个硬件中断断OB:
上升沿事上升沿事件件:
CPU内置的数字量内置的数字量输输入入和和2点信号板的点信号板的数数字量字量输输入有入有OFF变为变为ON时时,产产生上升沿事件生上升沿事件。
下降沿事下降沿事件件:
上述数字量:
上述数字量输输入由入由ON变变OFF时时,产产生下生下降降沿事件沿事件。
高速高速计计数数器器HSC16的的实际计实际计数数值值等于等于设设定定值值(CV=RV)HSC16的方向改的方向改变变,计计数数值值由增大由增大变变减小,或由减减小,或由减小小变变增大增大。
HSC16的外部复位,某的外部复位,某些些HSC的数字量外部复位的数字量外部复位输输入入从从OFF变变ON时时,将,将计计数数值值复位复位为为0。
6.3中断事件与中断指令中断事件与中断指令硬件中断硬件中断组织组织块块2/4硬件中断硬件中断组织块组织块的的处处理方理方法法:
给给一个事件指定一个硬件中断一个事件指定一个硬件中断OB,这这种方法最种方法最为简单为简单方方便,便,应优应优先采用先采用;多个硬件中断多个硬件中断OB分分时处时处理一个硬件中断事件,需要用理一个硬件中断事件,需要用程程序指令来序指令来处处理硬件中理硬件中断断OB块块与与该该事件的关事件的关联联:
用用DETACH指令取消原有指令取消原有的的OB与事件的与事件的连连接接用用ATTACH指令将一个新的硬件中断指令将一个新的硬件中断OB分配分配给给硬硬件件中断事件中断事件。
6.3中断事件与中断指令中断事件与中断指令硬件中断硬件中断组织组织块块3/4生成硬件中断生成硬件中断组织组织块块:
6.3中断事件与中断指令中断事件与中断指令硬件中断硬件中断组织组织块块4/4建立一个新的建立一个新的OB用用于于该该硬件中断事硬件中断事件件将已有将已有的的OB203分分配配给该给该硬件中断事硬件中断事件件没有没有OB连连接到接到该该硬件中断事硬件中断事件件组态组态硬件中断事件硬件中断事件:
6.3中断事件与中断指令中断事件与中断指令中断中断连连接与中断分离指接与中断分离指令令1/5DETACH指令指令和和ATTACH指令,用于硬件中断事件和硬件指令,用于硬件中断事件和硬件中中断断OB之之间间的的连连接和断接和断开开例子例子:
首首先先将将硬硬件件中中断断组组织织块块OB200分分配配给给I0.0的的上上升升沿沿中中断断事事件,件,该该中断事件出中断事件出现时现时,调调用用OB200。
在在OB200中中,用用DETACH指指令令断断开开I0.0上上升升沿沿事事件件与与OB200的的连连接接,用用ATTACH指指令令建建立立I0.0上上升升沿沿事事件件与与OB201的的连连接接。
下一次出下一次出现现I0.0上升沿事件上升沿事件时时,调调用用OB201。
在。
在OB201中中,用,用DETACH指令断开指令断开I0.0上升沿事件与上升沿事件与OB201的的连连接接,用用ATTACH指令建指令建立立I0.0上升沿事件上升沿事件与与OB200的的连连接接。
6.3中断事件与中断指令中断事件与中断指令中断中断连连接与中断分离指接与中断分离指令令2/5生成硬件中断生成硬件中断组织组织块块OB200与与OB2016.3中断事件与中断指令中断事件与中断指令中断中断连连接与中断分离指接与中断分离指令令3/5组态组态硬件中断事件硬件中断事件:
6.3中断事件与中断指令中断事件与中断指令中断中断连连接与中断分离指接与中断分离指令令4/5OB200的程序的程序:
OB201的程序的程序:
P149,图图6-33、图图6-356.3中断事件与中断指令中断事件与中断指令中断中断连连接与中断分离指接与中断分离指令令5/5中断分离指中断分离指令令DETACH用用来来断断开开硬硬件件中中断断事事件件与与中中断断OB的的连连接接,禁禁止止在在出出现现指指令令的的硬硬件件中中断断事事件件时时执执行行指指定定的的中中断断OB。
输输入入参参数数OB_NR是是OB的的编编号号,EVENT是是指指定定的的事事件件的的编编号号,返返回回值值是是执执行行的的条条件件代代码码。
如如果果没没有有指指定定参参数数EVENT,当当前前连连接到接到OB_NR的所有事件将被断开的所有事件将被断开连连接接。
中断中断连连接指接指令令ATTACH将将OB_NR指指定定的的组组织织块块连连接接到到EVENT指指定定的的事事件件。
在在指指定定的的事事件件发发生生时时,将将调调用用指指定定的的OB。
如如果果执执行行指指令令时时没没有有OB连连接接到到指指定定的的事事件件,该该指指令令的的功功能能被被忽忽略略。
参参数数ADD为为默默认认值值0时时,指指定定的的事事件件取取代代连连接接到到原原来来指指定定给给这这个个OB的所有事件的所有事件。
6.3中断事件与中断指令中断事件与中断指令时间时间延延迟迟中断中断组织组织块块1/4定定时时器器指指令令的的定定时时误误差差较较大大,如如果果需需要要高高精精度度的的延延时时,可可以以使使用用时时间间延延迟迟中中断断。
在在过过程程事事件件出出现现后后延延迟迟一一定定的的时间时间再再执执行行OB。
硬件中断硬件中断组织组织块块OB203中的程序:
(中的程序:
(与与I0.0上升沿中断关上升沿中断关联联)使使能能输输入入EN的的上上升升沿沿,启启动动延延时时中断。
中断。
指指定定延延时时时时间间到到时时调调用用的的OB的的编编号。
号。
设设置延置延时时时时间间(160000ms)指令指令执执行行的的状状态态代代码码读读取取PLC的的实时时实时时间间S7-1200未使未使用用6.3中断事件与中断指令中断事件与中断指令时间时间延延迟迟中断中断组织组织块块2/4时间时间延延迟迟中断中断组织组织块块OB204中的程序中的程序:
立即置位物理立即置位物理输输出点出点Q0.4:
P再次再次读读取取PLC的的实时时实时时间间为为了保存了保存读读取的日期取的日期时间值时间值,在,在DB1中生成数据中生成数据类类型型为为DTL的的变变量量DT1和和DT2:
6.3中断事件与中断指令中断事件与中断指令时间时间延延迟迟中断中断组织组织块块3/4OB1中取消中取消时间时间延延迟迟:
OB1中的程序中的程序:
6.3中断事件与中断指令中断事件与中断指令时间时间延延迟迟中断中断组织组织块块4/4I0.0变变为为1时时,CPU调调用用硬硬件件中中断断组组织织块块OB203,10s后后SRT_DINT启启动动的的定定时时时时间间到到,CPU调调用用延延时时中中断断组组织织块块OB204,Q0.4被立即置位被立即置位。
利利用用监监视视功功能能,可可以以看看到到指指令令SRT_DINT启启动动定定时时和和定定时时时时间间到到两两次次读读取取的的实实时时时时间间的的差差值值为为10.000145s,与与定定时时延延迟迟的的设设定定值值10s相比,定相比,定时时精度高精度高。
当当I0.4产产生生一一个个脉脉冲冲信信号号,将将Q0.4复复位位(OB1中中程程序序)。
当当I0.0变变为为1状状态态,CPU调调用用硬硬件件中中断断组组织织块块OB203,再再次次启启动动时时间间延延迟迟中中断断的的定定时时。
在在定定时时期期间间,当当I0.1变变为为1状状态态,调调用用指指令令CAN_DINT,时时间间延延迟迟中中断断被被取取消消,不不会会调调用用OB204,10s的延的延迟时间迟时间到了后到了后,Q0.4不会不会变变为为1状状态态。
1.功能与功能块2.全局数据块3.中断事件与中断指令(中断组织块)4.在线功能与故障诊断(诊断组织块)5.交叉引用表和程序信息第六章S7-1200用户程序结构与故障诊断6.4在在线线功能与故障功能与故障诊诊断断介绍Step7软件的在线和诊断视图故障诊断使用CPU和信号模块的LED诊断故障(介绍灯状态的含义)使用Step7软件提供的在线功能(介绍诊断符号的含义)使用编程(两种中断组织块)a.诊断错误中断组织块:
OB82(P155-P157)b.时间错误中断组织块:
OB80(P158-P159)6.5交叉引用表与程序信交叉引用表与程序信息息交叉引用表程序调试时,看变量在哪被使用,某程序块被谁调用PLC变量的交叉引用表程序块的交叉引用表分配表显示存储区在程序中的分配和使用状况调用结构和从属性结构块与块之间的调用和被调用关系资源CPU硬件资源、装载存储器和工作存储器的大小程序对I/O的使用情况、各种变量占用存储器的情况P159-P165
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Lecture14 用户 程序结构 诊断