- {{item.name}}
S7-1500 读取总线中SINAMICS 驱动设备报警消息
- 0
- 22
1.简介
本文介绍如何利用LAlarmHdl 库采集来自 SINAMICS 驱动器的所有消息。这些消息可通过标准控件 “报警视图” 在西门子人机界面(HMIs)上显示,也能在 PLC 的网络服务器以及 TIA 博途工程软件的诊断报警显示中呈现。当驱动器中的问题解决后,这些消息就会被清除。
文档中涉及到以下两个库,下图所示为下载并升级到TIA V21版本:
- SIMATIC Acyclic Data Exchange (LAcycCom)
https://support.industry.siemens.com/cs/cn/en/view/109479553
- SIMATIC S7-1500 Alarm handling for SINAMICS drives (LAlarmHdl)
https://support.industry.siemens.com/cs/cn/en/view/109761931

2.多语言设置
LAlarmHdl库中包含适用于SINAMICS驱动系统的PLC报警文本列表,支持中文、英文、法文、德文、意大利文和西班牙文。为了使消息能够以相应语言显示,在集成LAlarmHdl PLC报警文本列表和LAlarmHdl功能块之前,需要先设置项目语言。
左侧项目树 -> 语言和资源 -> 项目语言,勾选需要支持的项目语言

为了在PLC中正确显示文本列表中的消息,需要在设备配置中设置语言。只有当语言已配置,且该语言对应的文本可用时,消息才能显示出来。在下图的示例中,项目语言选择了中文、德语和英语,并将其加载到 PLC 中。

3.集成全局库到项目
由于此功能为独立的功能,创建软件单元AlamHandle与项目中的其他部分分隔开

3.1 集成LAcycCom 库到项目
展开全局库中LAcycCom库 -> 模板副本 -> 00_ResourcceManagement -> S7-1200/S7-1500,可以看到3个分别以_Blocks、_Tags、_Types 结尾的文件夹,如图所示:
- 将_Blocks 文件夹拖拽到软件单元的程序块文件夹
- 将_Tags 文件夹拖拽到软件单元的PLC变量
- 将_Types文件夹拖拽到软件单元的PLC数据类型

展开全局库中LAcycCom库 -> 模板副本 -> 01_Drives -> S7-1200/S7-1500,可以看到3个分别以_Blocks、_Tags、_Types 结尾的文件夹,如图所示:
- 将_Blocks 文件夹拖拽到软件单元的程序块文件夹
- 将_Tags 文件夹拖拽到软件单元的PLC变量
- 将_Types文件夹拖拽到软件单元的PLC数据类型

3.2集成LAlarmHdl 库到项目
打开项目树下公共数据中的报警类别;
展开全局库中LAlarmHdl库 -> 模板副本 -> S7-1500-> LAlarmHdl_AlarmClasses,如图所示,将其中包含的所有报警类别逐条拖拽或复制到打开的报警类别窗口中。

打开软件单元下的PLC报警文本列表,
展开全局库中LAlarmHdl库 -> 模板副本 -> S7-1500 -> LAlarmHdl_PLCAlarmTextLists,如图所示:
将LAlarmHdl_PLCAlarmTextLists 文件夹下的报警文本列表拖拽或复制到打开的软件单元下的PLC报警文本列表中。

展开全局库中LAlarmHdl库 -> 模板副本 -> S7-1500,如图所示:
- 将_Blocks 文件夹拖拽到软件单元的程序块文件夹
- 将_Tags 文件夹拖拽到软件单元的PLC变量
- 将_Types文件夹拖拽到软件单元的PLC数据类型

4.驱动设备设置
为了从 SINAMICS 驱动系统获取正确的设备状态,必须在 SINAMICS 驱动系统的设备配置中激活 PROFIdrive 的标准报警功能。如果在 SINAMICS S120 中使用了安全集成扩展 / 高级功能,将控制单元参数 p3117 设置为 1,以便在标准故障缓冲区中同时保存基本功能消息和扩展 / 高级功能消息。这样做可以优化此解决方案的代码和通信性能,

当使用将驱动消息集成到报警视图中的报警处理系统时,有必要对控制器与驱动器之间的时间进行同步。时间同步的好处在于,驱动器发出的消息以及控制器(如工艺对象)的消息会在报警视图中按时间戳排序,这便于进行初步故障分析。如果驱动器与可编程逻辑控制器(PLC)的时间戳差异过大,报警处理模块在将报警信息传输至 PLC 的报警显示时,会自动采用 PLC 的时间戳。

5.编程调用
LAlarmHdl_DriveAlarmsIOSystem(FB)用于处理 PROFINET 或 PROFIBUS IO 系统中所有 SINAMICS 驱动器的报警和消息。硬件配置中所配置的所有设备 / 从站都会被检测到,并存储在 ioSystemData 数据结构中。随后,系统会判定某个模块是 SINAMICS 驱动器还是其他 IO 模块。IO 系统中的所有 SINAMICS 驱动器会自动接受故障、报警和安全消息的监测。如果 SINAMICS 驱动器报告出现问题,相应的消息会被轮询并添加到报警视图中。
LAcycCom_ResourceManager(FB)将非循环数据交换资源分配给存储在requestBuffer请求缓冲区中的请求。LAlarmHdl_DriveAlarmsIOSystem 通过资源管理器功能块获得使用非循环资源的许可,
为了循环扫描 SINAMICS 驱动系统中的 IO 系统是否存在故障、报警等情况,必须在程序循环组织块(如 OB1)或循环中断组织块(如OB30)中调用功能块LAcycCom_ResourceManager 和 LAlarmHdl_DriveAlarmsIOSystem。

为了实现最佳性能并防止缓冲区溢出,还需要在启动组织块(Startup OB)中调用功能块 LAlarmHdl_DriveAlarmsIOSystem,所使用的实例必须与循环组织块中的实例相同。这样在 PLC 启动时就会扫描整个硬件配置查找 IO 设备。
如果项目中存在多个IO系统,对于每个 IO 系统,都需要一个功能块 LAlarmHdl_DriveAlarmsIOSystem 的实例,以及一个 LAlarmHdl_typeIOSystem 类型的数据块。库中已包含了一个这种类型的数据块(DB)LAlarmHdl_IOSystemData。如果第二个 IO 系统也包含 SINAMICS 驱动系统,可以复制该数据块并重新命名。
6.执行效果
如果 SINAMICS 驱动器报告出现问题,可以TIA 博途的诊断报警视图部分查看。
操作步骤:
- PLC 在线后
- 在巡视窗口中选择 诊断 -> 报警显示
- 在接收报警下拉框中勾选PLC

在当前报警页面下可以看到当前存在的报警,如图中第2条,报警类别为LAlarmHdl_Alarms,这个条目 就是通过LAlarmHdl功能从S210中获取的报警信息。

- 评论
-
分享
扫码分享
- 收藏 收藏
- 点赞 点赞
- 纠错 纠错



西门子官方商城


{{item.nickName}}