您能在CPU诊断缓存内在纯文本内写入用户指定消息吗? 点击:461 | 回复:0



如火

    
  • 精华:172帖
  • 求助:0帖
  • 帖子:803帖 | 5249回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2005-09-22 10:56:00
楼主
如何实现这种功能,如图:
图1:有用户指定消息文本的诊断缓存 为了在CPU诊断缓存的纯文本内写入用户指定消息必须进行: 1.) 在STEP 7中配置消息。 2.) 写入诊断缓存所需的事件ID。 该条目描述了在STEP 7中如何配置一个消息文本,如何将相关事件ID结构化及如何写入到有SFC 52“WR_USMSG”的诊断缓存。 注意事项: 描述了如何使用系统函数“WR_USMSG” (SFC 52) 写入用户指定事件,该事件包括诊 断缓存的任何附加信息。在该条目中有一个功能块调用SFC 52以便只用需要的基本数据块。 在相关的实例程序中直接调用SFC 52,因为在这种情况下仅需要事件ID。其它附加信息不需要。消息文本用STEP 7组态并保存到程序中. 组态一个用户指定消息STEP 7 首先打开消息组态对话框。选择项目树中的“S7 Program”目录然后通过弹出菜单 (右击)打开消息配置窗口“特殊对象属性”->“消息...”。 按“新消息”按钮出现一个条目显示新消息从而可做相应的修改。
在该例中配置下列消息: 窗口输入 (德语) 消息指示符WR_USMSG(1) (默认) 错误类别A (默认) 消息号2 输入的消息文本温度太高 输出的消息文本温度 OK 注意事项: 自定义诊断消息只能显示在PG上不能传送到操作系统。 显示诊断文本需要PG上的STEP 7项目。 使用SIMATIC管理器上的功能:“选项” ->“使用多种语言的文本管理”,可以设置另一种语言 (对消息文本和注释)。附件项目可以使用两种语言(德语/英语)。 事件ID结构 与消息关联的事件ID由下面内容组成: W#16#<错误类别><输入/输出的消息代码><十六进制中的消息编号> 􀁺 错误类别:A或B (见组态屏蔽) 􀁺 输入/输出的消息代码:输入的消息= '1'; 输出消息 ='0' 􀁺 消息编号:在十六进制格式中的组态屏蔽号 对于组态消息有下列事件 ID: 􀁺 W#16#A102 - 输入的消息“温度太高” 􀁺 W#16#A002 - 输出的消息“温度 OK”


热门招聘
相关主题

官方公众号

智造工程师