西门子博途:RALRM 的编程示例

科技   2025-01-09 22:46   吉林  

RALRM 的编程示例

简介

在以下示例中,将通过输入模块生成断路诊断并接收包含相关信息的中断。本示例适用于 PROFINET IO 和/或 S7-1500 CPU。

说明

本示例的存储

本示例必须保存在将生成中断(断路)的输入模块的设置中。


要求

  • 创建一个输入模块,并在该输入模块的属性中读取硬件标识符。并通过输入参数 F_ID(“alarmCheckID”)存储该硬件标识符。


  • 为了产生一个中断,该输入通道需选择“线路”(Wire break) 选项。该选项位于“模块参数 > 通道模板 > 输入”(Module parameters > Channel template > Inputs) 中。


  • 在全局数据块中,创建 7 个变量和结构“TI_Diagnostic_Interrupt”和“Additional_Diag”进行数据存储。创建数据类型为“TI_DiagnosticInterrupt”的结构“TI_Diagnostic_Interrupt”。



互连参数

在一个诊断中断 OB (OB82) 中,调用指令“RALRM”。互连该指令的参数,如下所示:

RALRM 的结果


说明

触发断路

要触发断路,可拔除该输入模块输入端的电源电缆,然后再重新连接该电缆。或者,拔除该输入模块的电位桥后再重新连接。


发生断路故障时,输入模块将生成一个中断。之后,将调用诊断中断 OB,并启动指令“RALRM”。

“RALRM”指令将通过输入参数 F_ID(“alarmCheckID”)调用该输入模块。指令“RALRM”将根据输入参数 MODE(“alarmMode”)的值“2”,检查中断是否由该输入模块产生。如果中断来自该输入模块(“alarmCheckID”和“alarmFromID”相同),则输出参数 NEW(“alarmReceived”)将置位为“TRUE”,并通过参数 TINFO(“TI_Diagnostivc_Interrupt”)和 AINFO(“Additional_Diag”)保存该中断信息。生成该中断的模块硬件标识符将显示在输出参数 ID(“alarmFromID”)处。

已接收到的中断信息长度将记录在输出参数 LEN(“alarmLength”)中。根据输入参数 MLEN(“alarmMaxLength”)的值,值为“0”时,待读取 AINFO (“Additional_Diag”)的信息将不受限制。

并在输出参数 STATUS(“alarmStatus”)处,显示该块的状态。该过程成功执行且无任何错误。

在以下章节中,将详细介绍对 TINFO 和 AINFO 的评估。

有关 TINFO(“TI_Diagnostivc_Interrupt”) 参数的详细信息

该 OB 的启动信息和管理信息均存储在参数 TINFO(“TI_Diagnostivc_Interrupt”)中。

生成的中断包含以下信息:

  • OB 启动信息:OB82 使用优化启动信息(“SI_Format”和值“254”)。

  • 管理信息:

    • 读取状态为“Error”(参见“IO_State”的值)的输入模块(参见“LADDR”)。

    • 最近记录的通道“15”的中断(参见“Channel”的值)。

    • 记录多个错误(“MutliError”的值为“TRUE”)。

    • 最近记录的站“0”的中断(参见“address”的值)。

    • 根据诊断数据记录 0 记录的结构(参见“slv_prfl”的值)。

    • 由组态的分布式模块触发的中断(参见“intr_type”的值)。

有关 AINFO(“Additional_Diag”)参数的详细信息

有关中断的标头信息和附加信息,均存储在参数 AINFO(“Additional_Diag”)中。 


生成的中断包含以下信息:

  • 所用 OB 是一个诊断中断 OB(“InterruptType”,值为“1”)。

  • 系统报告模块在插槽“2”(“SlotNumber”处和通道 8 到 15 处发生中断(BYTE 1,“SubSlotNumber”)。

  • 对于子模块(“InterruptSpecifier”,值为“16#2000”),通道诊断和/或状态信息中,至少有一项可用。

  • 在本示例中,使用通道诊断的结构(“FormatIdentifier”,值为“16#8000”)。

  • 触发该中断的组件通道编号将分配给该子模块(“ChannelNumber”,值为“16#0008”)。

  • 诊断输入通道的一个到达错误(“ChannelErrorType”,值为“16#28”)。

  • 所用的数据格式为一个位(“DataFormat”,值为“16#01”)。

  • 诊断一个断路故障(“ErrorCode”,值为“16#0006”)。




机器人及PLC自动化应用
机器人技术讲解,PLC程序分析讲解,PLC机器人自动化培训. 以工业自动化培训为主.也会有些个人喜爱的军事和休闲.
 最新文章