找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2399|回复: 10

如何在WINCC中获取操作员操作记录

  [复制链接]
  • 打卡等级:即来则安
  • 打卡总天数:28
  • 打卡月天数:7
  • 打卡总奖励:7961
  • 最近打卡:2025-12-22 17:16:30

3317

主题

285

回帖

2万

积分

管理员

积分
24106
发表于 2023-3-9 08:31:55 | 显示全部楼层 |阅读模式
1.操作员输入消息的分类
对于某些重要的对象和数据进行操作,根据需要可以在操作过程中触发操作员输入消息,操作员输入消息根据操作的对象和操作类型的不同,分为以下三类:
a. “图形编辑器”中相应对象的属性中有“操作员输入消息”选项,例如:在 I/O 域中输入数值,文本列表中选择文本等。


1.1如何限制用户对画面对象的操作


如上图中,通过按钮PIC1切换画面。如果需要限定某些操作员不能切换画面,就可以在按钮属性“其他”的“授权”中指定操作此对象所需要的权限。然后,在“用户管理器”中创建新用户,并分配相应权限即可。这样,如果没有用户登陆,或登陆用户没有按钮预先定义的授权,则无法操作按钮。
需要注意的是,在“用户管理器”中列出的1--17号权限的名称,仅是权限编号的别名而已,没有任何实际的功能。例如,画面中按钮1需要1号权限,按钮2需要2号权限…….按钮17需要17号权限;这样,只要用户管理器中的用户分配了相应的权限编号,如1、3、13号权限,那么这个用户只能操作1、3、13号按钮,其他按钮则无法操作。
在按钮的“事件”中插入以下脚本可以弹出用户登陆的对话框。
#pragma code("useadmin.dll")
#include "pwrt_api.h"
#pragma code()
PWRTLogin('1'); //登陆C脚本
在按钮的“事件”中插入以下脚本可以注销当前登陆的用户。
#pragma code("useadmin.dll")
#include "pwrt_api.h"
#pragma code()
PWRTLogout(); //注销C脚本
也可以在项目属性中,为用户登陆的对话框分配热键。


1.2 记录操作员登陆/注销的消息


在报警记录中,“工具”里“WINCC系统消息”,创建系统消息。
在画面中添加WinCC Alarm Control控件,“消息块”中增加勾选‘计算机名’和‘用户名’。并添加到“消息列表”中的“选定的消息块”。




如下图过滤 消息编号1008003到1008005之间的系统消息。


这样,通过“长期归档列表”,在运行系统中就可以查询用户登陆/注销的系统消息。


2.操作员输入消息的组态方法
2.1 “图形编辑器”中相应对象的属性中有“操作员输入消息”选项的对象
可选择激活“图形编辑器”中相应对象的“操作员输入消息”属性,以控制某些对象,例如,在 I/O 域中输入数值,文本列表中选择文本等。这可通过设置“操作员输入消息”属性来完成,如图2-1。
注意:该消息的结构不能进行编辑。操作员输入消息的消息号为“12508141”。操作员输入消息包含过程值块 2 中的操作前的值(旧值)和过程值块 3 中修改后的值(新值)。



图2-1
“操作员激活报表”属性指操作员是否记录操作理由。操作员活动报表在消息系统中归档。 操作员输入的理由在长期归档列表中作为操作员输入消息的注释显示。
“操作员输入消息”属性指在操作之后是否生成编号为12508141的系统消息。如果“操作员输入消息”属性已设置为“是”,则在操作时生成一个消息,并将其发送至消息系统进行归档。例如,使用消息系统,可在消息行中输出消息。
为了使操作员在操作完成之后可输入操作理由,必须启用“操作员激活报表”属性。 操作员输入的理由在长期归档列表中作为操作员输入消息的注释显示。



图2-2
为了更直观在报警控件里查看此类消息,可在OS项目编辑器中作以下设置并“确定”。


在报警控件中添加“消息列表”,并设置过滤条件。


这样,在报警控件中可以直观的查看操作员修改数值的消息。


如果用户登陆后修改了数值,消息内容“新值/旧值”的前面会增加操作的用户名称。


2.2 “图形编辑器”中相应对象的属性中没有“操作员输入消息”选项的对象
对于操作可选图形 WinCC 对象,可以将您自己的操作员消息组态为 C 动作或 VBS 动作。执行各自的 C 动作或者VBS动作作为对操作事件的反应。 例如,在这种情况下,操作事件可以是鼠标单击 WinCC 对象,例如对按钮操作。使用“报警”功能组中“GCreateMyOperationMsg”功能组态您自己的操作员输入消息,下面举例对此函数进行简单说明。


注意:
要预先创建编号为“11”的报警消息;
消息类别为:系统无需确认;
类型为:操作员输入消息;
在“消息文本”中输入需要显示的报警提示信息;其他参数保持默认值即可。


实例:按钮的功能为在对变量做加法计算后,保留结果,同时记录操作员输入的消息,并在报警控件的 系统块的 注释 列中(其对应报警控件工具栏里输入或查询的图标为


)添加脚本中的文本“changed”。下图为在按钮的事件上添加的脚本。


更进一步的详细设置,可以在WInCC V7帮助中Search:GCreateMyOperationMsg
对于V6版本请参考以下链接:24325381
2.3 对于消息操作,生成一条操作员输入消息
例如确认锁定/释放消息,操作员输入消息将在 WinCC 报警记录中进行组态。为此必须在报警记录编辑器中创建 WinCC 系统消息。
在“操作员输入消息”选项卡上的 WinCC 报警控件中,激活操作消息的触发事件,如下图所示。也可在此处组态操作员输入消息本身。 在 WinCC V7 之前,在“消息列表”选项卡上的 WinCC 报警控件中,使用“操作员输入消息”按钮激活操作员输入消息的触发事件。为了显示或输入对应的操作员输入消息的注释,可使用“注释”按钮在长期归档列表中打开对话框。 在报警控件中将“注释”系统块插入消息行时,此消息块指示此消息有注释。


工控课堂 www.gkket.com

0

主题

114

回帖

177

积分

新手上路

积分
177
发表于 2025-11-14 18:16:49 | 显示全部楼层
这评论区卧虎藏龙,个个都是人才!
工控课堂 www.gkket.com

0

主题

92

回帖

129

积分

新手上路

积分
129
发表于 2025-11-14 18:55:11 | 显示全部楼层
我先占个楼,等下再慢慢看~
工控课堂 www.gkket.com

0

主题

100

回帖

192

积分

新手上路

积分
192
发表于 2025-11-14 19:48:11 | 显示全部楼层
学到了学到了,这波分享太实用啦!
工控课堂 www.gkket.com

0

主题

103

回帖

178

积分

新手上路

积分
178
发表于 2025-11-14 19:56:48 | 显示全部楼层
来凑个热闹,增加点人气~
工控课堂 www.gkket.com

0

主题

91

回帖

129

积分

新手上路

积分
129
发表于 2025-11-14 22:04:36 | 显示全部楼层
浅评一下:内容优质,值得推荐~
工控课堂 www.gkket.com

0

主题

109

回帖

196

积分

新手上路

积分
196
发表于 2025-11-15 00:45:44 | 显示全部楼层
画面感太强了,仿佛身临其境!
工控课堂 www.gkket.com

0

主题

104

回帖

452

积分

注册会员

积分
452
发表于 2025-11-16 05:11:04 | 显示全部楼层
楼主太会说了,字字句句都在理
工控课堂 www.gkket.com

0

主题

111

回帖

170

积分

新手上路

积分
170
发表于 2025-11-16 10:38:21 | 显示全部楼层
来凑个热闹,为楼主增加点人气!
工控课堂 www.gkket.com

0

主题

68

回帖

98

积分

新手上路

积分
98
发表于 2025-11-16 10:49:05 | 显示全部楼层
占个楼慢慢看,先马克一下
楼主辛苦啦,期待下一篇分享
工控课堂 www.gkket.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|手机版|免责声明|本站介绍|工控课堂 ( 沪ICP备20008691号-1 )

GMT+8, 2025-12-22 18:07 , Processed in 0.209227 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表