电动机功率 | 4kW | 外形尺寸 | 5mm |
---|---|---|---|
应用领域 | 环保,食品/农产品,地矿,包装/造纸/印刷,纺织/印染 | 重量 | 5kg |
全新的西门子S7-200SMART带来两种不同类型的CPU 模块,标准型和经济型,*满足不同行业、不同客户、不同设备的各种需求。标准型作为可扩展CPU 模块,可满足对I/O 规模有较大需求,逻辑控制较为复杂的应用;而经济型CPU 模块直接通过单机本体满足相对简单的控制需求。
![]() |
参考价 | ¥433 |
订货量 | 1 |
更新时间:2019-06-05 14:10:31浏览次数:221
联系我们时请说明是化工仪器网上看到的信息,谢谢!
黑龙江西门子S7-200SMART模块代理优势价格
组织块是操作系统与用户程序之间的接口。S7提供了各种不同的组织块(OB),用组织块可以创建在特定时间执行的程序和响应特定事件的程序。系统程序可以检测下列错误:不正确的CPU功能、系统程序执行中的错误、用户程序中的错误和I/O中的错误。根据错误类型的不同,CPU可设置为进入STOP模式或调用一个错误处理OB。
当CPU检测到错误时,会调用适当的组织块,见表4-9。如果没有相应的错误处理OB,CPU将进入STOP模式。用户可以在错误处理OB中编写处理这种错误的程序,以减小或消除错误的影响。
为避免发生某种错误时CPU进入停机,可以在CPU中建立一个对应的空的组织块。可以利用OB中的变量声明表提供的信息来判别错误的类型。根据CPU检测到并且用户可以通过组织块对其进行处理的错误分为异步错误和同步错误。
表4-9 错误处理组织块
OB号 | 错误类型 | 优先级 |
OB70 | I/O冗余错误(仅H系列CPU) | 25 |
OB72 | CPU冗余错误(仅H系列CPU) | 28 |
OB73 | 通信冗余错误(仅H系列CPU) | 35 |
OB80 | 时间错误 | 26 |
OB81 | 电源错误 | 26/28 |
OB82 | 诊断中断 | |
OB83 | 插入/取出模块中断 | |
OB84 | CPU硬件故障 | |
OB85 | 优先级错误 | |
OB86 | 机架故障或分布式I/O的站故障 | |
OB87 | 通信错误 | |
OB121 | 编程错误 | 引起错误的OB的优先级 |
OB122 | I/O访问错误 |
在OB执行时出现故障,S7 - 300CPU的操作系统调用OB80,出现的故障包括循环时间超出、执行OB时应答故障、向前移动时间以至于跃过了OB的启动的时间、CLR后恢复RUN方式等。
如果当循环中断OB仍在执行前一次调用时,该OB块的启动事件发生,操作系统调用OB80。如果OB80未编程,CPU变为STOP方式,可以使用SFC39~42封锁或延时和再使用时间故障OB。
如果在同一个扫描周期中,由于扫描时间超出OB80被调用两次,CPU就变为STOP方式。可以通过在程序中适当的位置调用SFC43“RE_TRIGR”来避免这种情况。打开OB80,可以从OB80的临时变量中得到故障信息,如图4-8所示。OB80的变量声明表见表4-10。
表4-10 OB80的变量声明表
变 量 | 类 型 | 描 述 |
OB80_EV_CLASS | BYTE | 事件级别和标识:B#16#35 |
OB80_FLT_ID | BYTE | 故障代码 |
OB80_PR10RITY | BYTE | 优先级:在RUN方式时OB80以优先级26 运行,OB请求缓冲区溢出时以优先级28运行 |
OB80_OB_NUMBR | BYTE | OB号 |
OB80_RESERVED_1 | BYTE | 保留 |
OB80_RESERVED_2 | BYTE | 保留 |
OB80_ERROR_INFO | WORD | 故障信息:根据故障代码 |
OB80_ERR_EV_CLASS | BYTE | 引起故障的启动事件的事件级别 |
OB80_ERR_EV_NUM | BYTE | 引起故障的启动事件的事件号 |
OB80_OB_PRIORITY | BYTE | 故障信息:根据故障代码 |
OB80_OB_NUM | BYTE | 故障信息:根据故障代码 |
OB80_DATE_TIME | DATE_AND_TIME | OB被调用时的日期和时间 |
S7系列PLC的诊断中断处理组织块(OB82)
如果模块既有诊断能力又能使诊断中断,当它检测到错误时,会输出一个诊断中断请求给CPU;以及错误消失时,操作系统都会调用OB82。当一个诊断中断被触发时,有问题的模块自动地在诊断中断OB的启动信息和诊断缓冲区中存入4个字节的诊断数据和模块的起始地址。可以用SFC39~42来禁用、延时或再使用诊断中断(OB82)。表4-12是诊断中断OB82的变量声明表。
表4-12 OB82的变量声明表
在编写OB82的程序时,要从OB82的启动信息中获得与出现的错误有关的更确切的诊断信息,如是哪一个通道出错,出现的是哪种错误。使用SFC51“RDSYSST”也可以读出模块的诊断数据,用SFC52“WR_USMSG”可以将这些信息存入诊断缓冲区。
现在通过结合模块的短线诊测应用和SFC51来说明诊断中断组织块OB82的使用方法。首先,在SIMATIC管理器中新建一个项目,插入一个300站并进行硬件组态,在机架上插入CPU315 -2DP和一块具有中断功能模拟量输入模块SM331,配置SM331模块的“Inputs”选项,选择0-1通道组为2线制电流(2DMU),其他通道组为电压,并注意模块的量程卡要与设置的相同。选中“Enable”框中的“Diagnosticlnterrupt”选项,选中“Diagnostics”选项中的0-1通道组中的“GroupDiagnostics”和“withCheckforWireBreak”选项,如图4-9所示。
图4-9 硬件组态
单击OK,然后双击CPU315 - 2DP,选择“Interrupts”选项,可以看到CPU支持OB82,如图4-10所示。硬件组态完成后,保存编译,下载到CPU中。然后完成诊断程序。OB82程序当在硬件组态中设定的诊断中断发生后执行,但OB82执行时可以通过它的临时变量OB82_MDL_ADDR读出产生诊断中断的模块的逻辑地址。STEP7不能实时监控程序的运行。
图4-10 CPU中的“Interrupts”选项
在SIMATIC管理器中S7Program(1)下插入一个STLSource文件STLSource (1),如图4-11所示。
图4-11 插入STLSource文件
打开OB1,在“Libraries”→“StandardLibraries”→“SystemFunctionBlocks”下找到SFC51“RDSYSSTDIAGNSTC”,按F1键,出现SFC51在线帮助信息,在帮助信息的底部单击“Exampleformodulediagnostic swiththeS FC51”,然后单击“STLSourceFile”,选中全部STL-Source源程序并复制到STLSource (1)中,编译保存,这时在Blocks中生成OB1、OB82、DB13和SFC51。
打开OB82,对其中的程序做简单的修改,将第19和第20行的程序复制到go:后面,如图4-12所示。再进行保存,下载到CPU中。
图4-12 OB82的程序修改
下载完成后,将CPU上的模式选择开关切换到“RUN”状态,此时,CPU上的“RUN”灯和“SF”灯会亮,SM331模块上的“SF”灯也会亮。同时,查看CPU的诊断缓冲区可以获得相应的故障信息。
打开DB13数据块,在线监控,如图4-13所示。因为通道断线是一通道事件,所以诊断信息存储到COME数组中。本例中COME数组字节的含义如下所述。
COME[1]=B#16#D:表示通道错误,外部故障和模块问题;
COME[2]=B#16#15:表示此段信息为模拟量模块的通道信息;
COME[3]=B#16#0:表示CPU处于运行状态,无字节2中标示的故障信息;
COME[4] =B#16#0:表示无字节3中标示的故障信息;
COME[5]=B#16#71:表示模拟量输入;
COME[6]=B#16#8:表示模块的每个通道有8个诊断位;
COME[7] =B#16#8:表示模块的通道数;
COME[8]=B#16#3:表示0通道错误和1通道错误,其他通道正常;
COME[9]=B#16#10:表示0通道断线;
COME[10]=B#16#10:表示1通道断线;
COME[11]=B#16#0:表示2通道正常,其他通道与2通道相同。
黑龙江西门子S7-200SMART模块代理优势价格