下载此文档

西门子1200、1500OB组织块详解.pdf


文档分类:行业资料 | 页数:约11页 举报非法文档有奖
1/11
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/11 下载此文档
文档列表 文档介绍
该【西门子1200、1500OB组织块详解 】是由【小sjj】上传分享,文档一共【11】页,该文档可以免费在线阅读,需要了解更多关于【西门子1200、1500OB组织块详解 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:.
每种类型的OB块的分析及其使用方法:
PLC:循环串行扫描输入采样程序执行输出刷新
1:Main(Programcycle)最大可以100个优先级最低(正常循环
扫描谁都可以中断他)
2默认优先级越大,级别越高,1是优先级别最低的。
2:Startup块上电导通一次STOP转RUN的过程中导通一次
除此之外也可以使用其他方法实现
(1)对组态属性打开
(2)选择系统和时钟存储器分别启用
:.
3:Timedelayinterrupt延时中断指令最大20个
(1)打开中断
(2)取消中断
(3)读取状态
4:Cyclicinterrupt循环中断(模拟量采集中常用):.
(1)循环时间100MS相移10MS(一个循环中断块时,相移可以设置
0,当多个循环中断块时,需要设置相移10或者其他数字意思是每
个块汇报的时间间隔相位移动时间)
(2)也可以设置块的优先级访问(一般都采用默认的优先级)
(2)上述四种中断全是CPU执行。
:.
1、自由循环组织块OB1
S7CPU启动完成后,操作系统循环执行OB1,OB1执行完成后,操作系统再次启
动OB1。在OB1中可以调用FB、SFB、FC、SFC等用户程序使其循环执行。除OB90以
外,OB1优先级最低,可以被其他OB中断。OB1默认扫描监控时间为150ms(可设置),
扫描超时,CPU自动调用)B80报错,如果程序中没有建立OB80,CPU进入停止模式。
2、日期中断组织块OB10~OB17
在CPU属性中,可以设置日期中断组织块OB10~OB17触发的日期、执行模式(到
达设定的触发日期后,OB只执行一次或按每分、每小时、每周、每月周期执行)等参数,
当CPU的日期值大于设定的日期值时,触发相应的OB并按设定的模式执行。在用户程序
中也可以通过调用SFC28系统函数设定CPU日期中断的参数,调用SFC30激活日期中断
投入运行,与在CPU属性中的设置相比,通过用户程序,可以在CPU运行时灵活地修改
设定的参数,两种方式可以任意选择,也可以同时对一个OB进行设置。
3、时间延迟中断组织块OB20~OB23
时间延迟中断组织块OB20~OB23的优先级及更新过程映像区的参数需要在CPU属
性中设置,通过调用系统函数SFC32触发执行,OB号及延迟时间在SFC32参数中设定,
延迟时间为1~60000ms,大大优于定时器精度。
4、循环中断组织块OB30~OB38
循环中断组织块OB30~OB38按设定的时间间隔循环执行,循环中断的间隔时间在
CPU属性中设定,每一个OB默认的时间间隔不同,例如)B35默认的时间间隔为100ms,
在OB35中的用程序将每隔100ms调用一次,时间间隔可以自由设定,最小时间间隔不
能小于55ms。OB中的用户程序执行时间必须小于设定的时间间隔,如果间隔时间较短,
由于循环中断OB没有完成程序扫描而被再次调用,从而造成CPU故障,触发OB80报:.
错,如果程序中没有创建OB80,CPU进入停止模式。通过调用SFC39~SFC42系统函数
可以禁止、延迟、使能循环中断的调用。循环中断组织块通常处理需要固定扫描周期的用
户程序,例如PID函数块通常需在循环中断中调用以处理积分时间的计算。
5、硬件中断组织块OB40~OB47
硬件中断也叫过程中断,由外部设备产生,例如功能模块FM、通信处理器CP及数
字量输入、输出模块等。通常使用具有硬件中断的数字量输入模块触发中断响应,然后为
每一个模块配置相应的中断OB(一个模块只能良一个中断OB,S7-300系列PLCCPU
只能触发硬件中断OB40),在模块配置中可以选择输入点的上升沿、下降沿或全部作为
触发中断OB的事件。配置中的中断事件出现,中断主程序,执行中断OB中的用户程序
一个周期,然后跳回中断处继续执行主程序。使用中断与普通输入信号相比,没有主程序
扫描和过程映像区更新时间,适合需要快速响应的应用。
如果输入模块中的一个通道触发硬件中断,操作系统将识别模块的槽号及触发相应的
OB,中断OB执行之后发送与通道相关的确认。在识别和确认过程中,该通道再次触发的
中断事件将丢失;如果模块其他通道触发中断事件,中断不会丢失,在当前正在运行的中
断确认之后触发;如果是不同的模块触发的中断事件,中断请求被记录,中断OB在空闲
(没有模块其他通道的中断请求)时触发。通过调用SFC39~SFC42系统函数可以禁止、
延迟、使能硬件中断的调用。
6、DPV1中断组织块OB55~OB57
CPU响应PROFIBUS-DPV1从站触发的中断信息。
7、多处理器中断组织块OB60
用于S7-400系列PLC多CPU(一个机架中最多插入4个CPU完成同一个复杂任务)
处理功能,通过调用SFC35,可以触发OB60在多个CPU中同时执行。:.
8、时钟同步中断组织块OB61~OB64
用于处理PROFIBUS-DPV1等时钟同步,从采集各个从站的输入到逻辑结果输出,需
要经过从站输入信号采样循环(信号转换)、从站背板总线循环(转换的信号从模块传递
到从站接口)、PROFIBUS-DP总线循环(信号自从站传递到主站)、程序执行循环(信
号的程序处理)、PROFIBUS-DP总线循环(信号从主站传递到从站)、从站背板总线循
环(信号从从站接口传递到输出柜块)及模块输出循环(信号转换)7个循环,时钟同步
中断将7个循环同步,优化数据的传递并保证PROFIBUS-DP各个从站数据处理的同步性。
PROFIBUS时钟同步中断只能用于S7-400系列PLCCPU(具有DPV2功能)。
9、工艺同步处理中断组织块OB65
用于T-CPU(具有运动控制功能的CPU)工艺块与开始程序的同步处理。
10、冗余故障中断组织块OB70、OB72
用于S7-400H冗余系统,当I/O冗余故障,例如冗余的PROFIBUS-DP从站故障时,
触发OB70的调用,当CPU冗余故障,如CPU切换、同步故障时,触发OB72的调用。
如果I/O冗余,或者CPU冗余故障而在CPU中没有创建OB70、OB72,CPU不会进入
停止模式。
11、异步故障中断组织块OB80~OB87
异步故障中断用于处理各种故障事件。
OB80:处理时间故障、CIR(ConfigurationInRun)后的重新运行等功能,例如
OB1或OB35运行超时,CPU自动调用OB80报错,如果程序中没有创建OB80,CPU
进入停止模式。:.
OB81:处理与电源相关的各种信息(S7-400系列PLCCPU只有电池故障时调用),
出现故障,CPU自动调用OB81报错,如果程序中没有创建OB81,CPU不会进入停止
模式。
OB82:诊断中断,如果使能一个具有诊断中断模块的诊断功能(例如断线、传感器电
源丢失),出现故障时调用OB82,如果程序中没有创建OB82,CPU进入停止模式。诊
断中断还对CPU所有内外部故障,包括模块前连接器拔出、硬件中断丢失等作出响应。
OB83:用于模块插拔事件的中断处理,事件出现,CPU自动调用OB83报警,如果程
序中没有创建OB83,CPU进入停止模式。
OB84:用于处理存储器、冗余系统中两个CPU的冗余连接性能降低等事件。
OB85:用于处理操作系统访问模块故障、更新过程映像区时I/O访问故障、事件触发
但相应的OB没有下载到CPU等事件,事件出现,CPU自动调用OB85报错,如果程序
中没创建OB85,CPU进入停止模式。
OB86:用于处理扩展机架(不适用于S7-300系列)、PROFIBUS-DP主站、
PROFIBUS-DP或PROFINETI/O分布I/O系统中站点故障等事件,事件出现,CPU自
动调用OB86报错,如果程序中没有创建,CPU进入停止模式。
OB87:用于处理MPIGD通信及时钟同步故障,事件出现,CPU自动调用OB87报
错,如果程序中没有创建,CPU不会进入停止模式。
12、处理中断组织块OB88
用于处理程序嵌套、区域数据分配故障,故障出现,CPU自动调用OB88报错,如果
程序中没有创建,CPU进入停止模式。
13、背景循环中断组织块OB90:.
优先级最低,保证CPU最短的扫描时间,避免过程映像区更新过于频繁。程序的下载
和CPU中程序的删除触发OB90的调用。只能用于S7-400系列PLCCPU。
14、启动中断组织块OB100~OB102
用于处理CPU启动事件,暖启动CPU调用OB100,热启动CPU调用OB101(不适
合S7-300系列PLC和S7-400H),冷启动CPU调用OB102,温度越低,CPU启动时
清除存储器中数据区的类型越多。
15、同步错误中断组织块OB121、OB122
OB121处理与编程故障有关的事件,例如调用的函数没有下载到CPU中、BCD码出错
等,OB122处理与I/O地址访问故障有关的事件,例如访问一个I/O模块时,出现读故
障等。如果上述故障出现,在程序中没有创建OB121、OB122,CP进入停止模式。
注意:不是所有的OB都可以在S7CPU中使用,例如S7-300系列PLCPU中只有暖
启动OB100,操作系统不能调用OB101、OB102,CPU中可以使用的OB请参考CPU
选型手册。
S7-300系列PLC中组织块的优先级是固定的,不能修改,在S7-400系列PLC中下列
组织块的优先级可以进行修改:
OB10~OB47:优先级修改范围2~23。
OB70~OB72:优先级修改范围2~38。
OB81~OB87:优先级修改范围2~26,优先级24~26确保异步故障中断不被其他的事
件中断。
几个组织块可以具有相同的优先级,当事件同时出现时,组织块按事件出现的先后顺序
触发,如果超过12个相同优先级的OB同进触发,中断可能丢失。
我们在使用相应OB时要注意以下问题。:.
,但并不解决故障,OB允许CPU带故障运行。
,靠软件是解决不了的,软件的
作用是尽快指向故障点,硬件的问题还是硬件解决。
,会影响系统的控制品质,尤其
是一些带过程中断,大量运算及运动控制的高速生产线。
,应该有应对的措施,让系统尽快的
进入一种可控的安全状态。
由于通信的原因,模块不存在或有故障,刷新过程映像表时I/O访问出错,将会调用
优先级错误中断(OB85)。
可以在CPU属性对话框中设置3种调用OB85的方式。S7-300默认的方式是不调用
OB85,S7-400默认的方式是每个扫描循环周期调用一次,还可以设置为故障发生和消失
时分别调用一次。
用PI/PQ地址区访问有故障的I/O模块、DP从站时,将会调用I/O访问错误中断
(OB122),每个扫描周期调用一次。
对于简单程序,只涉及到数字量逻辑控制,只使用OB1就可以了,对于复杂程序,
使用了DP通讯等等,就需要做一些相应功能的组织块来保证PLC的运行正常。
1OB100启动组织块,即PLC一通电的第一个扫描周期就先处理此块,以后就不扫
描了,所以在这个块内可以做初始化脉冲,复位一些数据。
2OB122I/O访问错误组织块,
3OB121编程错误组织块,这个块比较重要,曾经遇到一个德国进口喂料机,使用
一段时间后出现CPU不能运行,程序是使用STL编程,使用了很多间接寻址,很难找到
问题所在,后来就选择了这个组织块后,CPU运行设备就正常工作了。:.
4OB82诊断中断组织块,这个对于使用模拟量模块多的项目需要使用这个块,否则
一旦接入的模拟量信号出现问题时,CPU停机就是大事了。
5OB80时间错误组织块,包括:超出周期时间、执行OB时出现确认错误、提前了
时间而使OB的启动时间被跳过、在CiR后恢复RUN模式。
6OB86机架故障组织块,对于使用了DP通讯的分布式I/O需要使用这个块。要
想第一时间找到处故障的子站,
做编程处理,使用触摸屏或其他上位机来显示报警内容。
7OB87通讯错误组织块。
组织块是操作系统与用户程序的接口,可以从下面几个方面来理解:
,而是由操作系统调用的。其变量声明表中只有临时变
量。
:
启动组织块用于系统初始化;
主程序OB1是循环执行的;
出现中断事件时,操作系统将会停止执行当前的任务,调用一个分配给该事件的组织块。
,其他组织块需要用户生成,组织块中的程序是用户编写的。
,其中包含OB的启动信息。这些信息在OB
启动时由操作系统提供,包括启动事件、启动日期与时间,错误及诊断事件。
,如果在执行中断程序(组织块)时,又检测
到一个中断请求,CPU将比较两个中断源的中断优先级。如果优先级相同,按照产生中断
请求的先后次序进行处理。如果后者的优先级比正在执行的OB的优先级高,将中止当前
正在处理的OB,改为执行较高优先级的OB。:.
下面是优先级的顺序(后面的比前面的优先):背景循环、主程序扫描循环、时间中断、
时间延时中断、循环中断、硬件中断、多处理器中断、I/O冗余错误、异步故障(OB80~87)、
启动和CPU冗余,背景循环的优先级最低。可以用STEP7修改S7-400CPU某些组织
块的优先级。
(或称激活、使能中断)和禁止中断的
系统功能。
其他组织块可以用SFC39“DIS_INT”来禁止处理某些中断,用SFC40“EN_INT”
来激活(使能)被禁止的中断。
SFC41“DIS_AIRT”用来延迟处理比当前优先级更高的中断,直到用SFC42
“EN_AIRT”来允许立即处理被SFC41暂时禁止的中断。
ob1:循环扫描ob,它是没有时间间隔的,执行完ob1后就会再次从头开始执行ob1,
所以外部输入的模拟量数据转换成工程量的程序在ob1中执行,使得数据能够及时更新。
ob10~ob23:一般很少用到。
ob30~ob38:ob33和ob35是常用的,和时间有关的程序一般都是放在这些ob中得,
比如利用pid控制的程序块,要求不是很严格的时间处理功能,当定时器不够用的时候自
己编写的类似定时器的程序块。
ob100~ob102:这些ob只是在cpu不同的启动模式下启动一次,所有一些初始化
的程序可以写在这些ob中。
其他ob就不常用了。

西门子1200、1500OB组织块详解 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数11
  • 收藏数0 收藏
  • 顶次数0
  • 上传人小sjj
  • 文件大小816 KB
  • 时间2022-12-14
最近更新