SIMATIC S7-1200 西门子PLC模块 6ES7215-1AG40-0XB0 CPU模块
SIMATIC S7-1200,CPU 1215C, 紧凑型 CPU,DC/DC/DC, 2 个 PROFINET 端口, 机载 I/O: 14 个 24VDC 数字输入;10 个 24VDC 数字输出;0.5A; 2 AI 0-10V DC,2 AO 0-20mA DC, 电源:直流 20.4-28.8V DC, 程序存储器/数据存储器 125 KB
时间错误中断事件 出现几种不同时间错误情况中的任何一种都会引起时间错误事件: • 扫描周期超过*大周期时间 如果程序循环在指定的*大扫描周期时间内未完成,就会出现“超出*大周期时间”这 种情况。有关详细信息,请参见主题“监视和组态循环时间 (页 87)”。 • 由于在 CPU 结束执行第一次中断 OB 前又启动了第二次中断(循环或延时),因此 CPU 无 法启动所请求的 OB。 • 发生队列溢出 如果中断的出现频率超过 CPU 的处理频率,就会出现“发生队列溢出”这种情况。CPU 通 过不同的队列对各种事件类型的未决(排队的)事件数量加以限制。如果相应队列已满 时发生某一事件,那么 CPU 将生成一个时间错误事件。 所有时间错误事件都会触发时间错误中断 OB(如果存在)的执行。如果不存在时间错误中断 OB,则 CPU 更改为 STOP 模式。 通过执行 RE_TRIGR 指令 (页 301)重启周期时间监视,用户程序可将程序循环执行时间*多 延长为所组态*大周期时间的十倍。但是,如果在同一程序循环中出现两次“超出*大周期 时间”情况且没有复位循环定时器,则无论时间错误中断 OB 是否存在,CPU 都将切换到 STOP 模式。请参见主题“监视和组态循环时间 (页 87)”。 时间错误中断 OB 包含的启动信息可帮助您确定生成时间错误的事件和 OB。可以在 OB 中编 写指令,以检查这些启动值并采取适当的措施。 表格 5-5 时间错误 OB (OB 80) 的启动信息 输入 数据类型 描述 Fault_ID BYTE 16#01 - 超出*大循环时间 16#02 - 请求的 OB 无法启动 16#07 和 16#09 - 发生队列溢出 Csg_OBnr OB_ANY 出错时正在执行的 OB 的编号 Csg_Prio UINT 导致错误的 OB 的优先级 有关将 OB 添加到项目的说明,请参见主题“组织块 (OB) (页 72)”。 新 V4.0 CPU 的优先级为 22。如果将 V3.0 CPU 更换为 V4.0 CPU (页 1490),则优先级为 26, 即对 V3.0 有效的优先级。无论哪种情况,优先级字段都可以编辑,用户可以将优先级设置为 22 到 26 之间的任何值。 PLC 概念 5.1 用户程序的执行 S7-1200 可编程控制器 76 系统手册, V4.6 11/2022, A5EAP 5.1.3.7 诊断错误中断 OB 当 CPU 检测到诊断错误,或者具有诊断功能的模块发现错误且为该模块启用了诊断错误中 断时,将执行诊断错误中断 OB。诊断错误中断 OB 将中断正常的循环程序执行。如果希望 CPU 在收到诊断错误后进入 STOP 模式,可在诊断错误中断 OB 中包含一个 STP 指令,以使 CPU 进入 STOP 模式。 如果未在程序中包含诊断错误中断 OB,CPU 将忽略此类错误并保持 RUN 模式。 诊断错误事件 PROFINET、PROFIBUS、本地模拟和一些本地数字设备能够检测并报告诊断错误。发生或清 除几种不同诊断错误情况中的任何一种都会引起诊断错误事件。所支持的诊断错误有以下几 种: • 无用户电源 • 超出上限 • 超出下限 • 断路 • 短路 如果存在诊断错误中断 OB (OB 82),那么诊断错误事件将触发中断执行。如果不存在,CPU 将忽略该错误。 有关将 OB 添加到项目的说明,请参见主题“组织块 (OB) (页 72)”。 说明 多通道本地模拟设备(I/O、RTD 和热电偶)的诊断错误 诊断错误中断 OB 一次只能处理一个通道的诊断错误。 如果多通道设备的两个通道出现错误,则第二个错误只会在以下情况下触发诊断错误中断 OB:第一个通道错误已清除,由第一个错误触发的诊断错误中断 OB 已执行完毕,并且第二 个错误仍然存在。
诊断错误中断 OB 包含的启动信息可帮助您确定事件发生原因是错误的出现还是清除所致, 以及确定报告错误的设备和通道。可以在诊断错误中断 OB 中编写指令,以检查这些启动值 并采取适当的措施。 说明 如果没有未决诊断事件,诊断错误 OB 启动信息会将子模块作为一个整体来参考 如果离去事件离开子模块时无未决诊断,启动信息将完全参考子模块 (16#8000),即使事件 源为特定通道也是如此。 表格 5-6 诊断错误中断 OB 的启动信息 输入 数据类型 描述 IOstate WORD 设备的 IO 状态: • 如果组态正确,则位 0 = 1,如果组态不再正确,则 = 0。 • 如果出现错误(如断线),则位 4 = 1。(如果没有错误, 则位 4 = 0。) • 如果组态不正确,则位 5 = 1,如果组态再次正确,则 = 0。 • 如果发生了 I/O 访问错误,则位 7 = 1。有关存在访问错误 的 I/O 的硬件标识符,请参见 LADDR。(如果没有错误, 则位 6 = 0。) LADDR HW_ANY 报告错误的设备或功能单元的硬件标识符 1 Channel UINT 通道号 MultiError BOOL 如果存在多个错误,参数值为 TRUE 1 LADDR 输入包含返回错误的设备或功能单元的硬件标识符。硬件标识符是在设备或网络视图 中插入组件时自动分配的,位于 PLC 变量的系统常量中。还会自动为硬件标识符分配名称。无 法更改 PLC 变量的“系统常量”(System constants) 选项卡中的这些条目。 5.1.3.8 拔出或插入模块 OB 当已组态和非禁用分布式 I/O 模块或子模块(PROFIBUS、PROFINET、AS-i)生成插入或拔出 模块相关事件时,系统将执行“拔出或插入模块”OB。 PLC 概念 5.1 用户程序的执行 S7-1200 可编程控制器 78 系统手册, V4.6 11/2022, A5EAP 拔出或插入模块事件 以下情况将产生拔出或插入模块事件: • 有人拔出或插入一个已组态的模块 • 扩展机架中实际并没有所组态的模块 • 扩展机架中的不兼容模块与所组态的模块不相符 • 扩展机架中插入了与所组态模块兼容的模块,但组态不允许替换值 • 模块或子模块发生参数化错误 如果尚未对该 OB 进行编程,那么当已组态且未禁用的分布式 I/O 模块以上任意情况时,CPU 都将保持在 RUN 模式。 无论是否已对该 OB 进行编程,当中央机架中的模块以上任意情况时,CPU 都将切换到 STOP 模式。 表格 5-7 拔出或插入模块 OB 的启动信息 输入 数据类型 说明 LADDR HW_IO 硬件标识符 Event_Class Byte 16#38: 模块已插入 16#29: 模块已拔出 Fault_ID Byte 故障标识符 5.1.3.9 机架或站故障 OB 当 CPU 检测到分布式机架或站出现故障或发生通信丢失时,将执行“机架或站故障”OB。 机架或站故障事件 检测到以下任一情况时,CPU 将生成机架或站故障事件: • DP 主站系统故障或 PROFINET IO 系统故障(进入或离开事件) • DP 从站系统故障或 IO 设备故障(进入或离开事件) • PROFINET I 设备的某些子模块发生故障
SIMATIC S7-1200 西门子PLC模块 6ES7215-1AG40-0XB0 CPU模块