Industry Online Support
Technical Forum
3/8/2007 12:20 PM | |
Posts: 1275 Rating: (123)
|
Hi, This has been discussed in the past. Take a look at this post. It has a workaround for your problem. Best regards, Danielle |
Last edited by: Danielle at: 08.03.2007 12:25Last edited by: Danielle at: 08.03.2007 12:21 |
|
3/9/2007 7:25 AM | |
Posts: 133 Rating: (5) |
Hi, How can I define a C action for acknowledge button? In Graphics Designer I have a WinCC Alarm Control. Right click -> Properties -> Events, but I can't find the Acknowledge button. I have to make it in Global script using Standard functions for alarms? (AXC_OnBtnSinglAckn, AXC_OnBtnVisibleAckn, OnBtnSinglAckn, OnBtnVisibleAckn) What happens If I acknowledge the alarm after the alarm went out? bstate1=GetTagBit("D25_Alarm_001"); <- Will return False, because the alarm is not active. I don't want to acknowledge all active alarms. Only the selected alarm form Message list. How can I get the selected alarm from message list? (If I can get the selected alarm/row from list I can use the alarm Number field to identify the alarm) Thanks, Balogh Szabolcs |
3/9/2007 1:02 PM | |
Posts: 1275 Rating: (123)
|
Hi Balogh, Yes, to use the C-action you can create your own acknowledge button, and set it to acknowledgethe desiredmessages, using the standard functions. When the alarm comes in and goes out unacknowledged, you really won't set the internal bit. But I think the conception of the script is that active alarms' acknowledgement should have the user logged, but if the alarm is innactive, that systemdidn'trequire a log. If your system does, you'll need to adjust the script. |
3/13/2007 10:12 AM | |
Posts: 133 Rating: (5) |
Hi! I have tried some possible solution to resolve my problem... For digital alarms, when the alarm appeares, set an internal tag. And I use this internal tag, for acknowledgement. In this way I can acknoledge the alarm even if it went out. For analog alarms, I can't use the process value blocks, because for @CurrentUser appears a numeric number. I don't know why... So for alarm logging the only possible solution (based on my knowledge of wincc) is using a separate, tag triggered global action for each tag (the trigger is the tag itself), and in this action I compare the tag value with each limit (lowlow, low, high, highhigh) and set an alarm tag (an internal tag for each limit). And for each alarm tag I need an internal tag for acknoledgement. So... I can resolve the problem, but the solution is very complicated. I have tried to copy the @CurrentUser value to an internal tag, and I used this tag in process value blocks. But when I acknowledge an alarm this value is not refreshed. What is happening when someone acknowledge an alarm? The process value blocks are not refreshed just copied from the last alarm registration (came in/went out)? There is no patch for WinCC to modify the acknowledgement system to make refresh when someone make an acknowledge? Thanks, Balogh Szabolcs |
3/13/2007 12:29 PM | |
Posts: 1275 Rating: (123)
|
Hi Balogh, Have you thought about doing this in the PLC?You check the limits on the PLC and ifthere is an alarm, a bit is set. With that you'd have all alarms as bits. You should avoid too much scripting on the WinCC side.And that would make your system "cleaner", since you'd have a pattern for all alarms. I agree with you on the need to improve the acknowledgement of alarms, I hope Siemens intends to do something about that soon. Best regards, Danielle |
3/13/2007 1:48 PM | |
Posts: 133 Rating: (5) |
Hi! I will check the limits on PLC, but I need more tags: 4 tags for every analog value - if I have lowlow (alarm), low (warning), high (warning), highhigh (alarm) limits; and I have 13 stations... I can send using a single tag (byte), but then I need a script to get the corresponding alarm bits... It would be very easy with that modification on acknowledgement system :}} I need it :}} But anyway... thanks for your help, Balogh Szabolcs |
3/13/2007 2:21 PM | |
Posts: 1275 Rating: (123)
|
Hi Balogh, You wouldn't need a script, since Alarm Logging does access bit within bytes! |
Follow us on