plcforum.uz.ua

International PLC Forum
It is currently Mon Sep 24, 2018 1:18 am

All times are UTC + 3 hours


Forum rules


Please click here to view the forum rules



Post new topic Reply to topic  [ 11 posts ] 
Author Message
PostPosted: Tue Dec 25, 2012 6:14 am 

Joined: Mon Dec 03, 2012 9:49 am
Posts: 5
Товарищи, подскажите как сделать следующее в WinCCFlexible:
Получаю дискретные аварии (не требуют квитирования), по их приходу с контроллера в их events -> activate ставлю функцию activate screen и у меня появляется требуемый экран с окном AlarmView где отображаются текущие аварии. Вопрос как сделать обратное, когда все аварии уйдут из AlarmView необходимо выполнить функцию ActivatePreviousScreen. Сделал такое в свойствах самого AlarmView во вкладке Deactivate - не работает!!! Почему не знаю. Аварии уходят, но экран не менятся. В свойствах самих аварий событие deactivate не подходит, т.к. необходимо убирать экран только с исчезновением последней аварии..


Top
 Profile  
 
PostPosted: Tue Dec 25, 2012 9:12 am 
Site Admin

Joined: Sat Aug 13, 2005 9:15 am
Posts: 1122
ээээ...
надо делать на темплейте а не на отдельном окне,тогда оно само появится и исчезнет


Top
 Profile  
 
PostPosted: Tue Dec 25, 2012 9:26 am 

Joined: Mon Dec 03, 2012 9:49 am
Posts: 5
Аварии разбиты на категории, на каждую категорию своё окно alarmview, template мне не подходит. Таких окон несколько. Должно существовать решение для описанного случая.


Top
 Profile  
 
PostPosted: Tue Dec 25, 2012 10:13 am 

Joined: Tue Dec 26, 2006 8:21 am
Posts: 547
Location: Russia
Может не надо делить по группам и тогда не надо ничего выдумывать?
У меня до 100 аварий, и на каждую свое СТАНДАРТНОЕ окно.
А группы и категории и номера аварий обозначаются текстом в окне самой аварии.
Также аварии я делю на две группы: сами сбрасываются или требуют ручного сброса оператора.


Top
 Profile  
 
PostPosted: Tue Dec 25, 2012 2:54 pm 

Joined: Mon Dec 03, 2012 9:49 am
Posts: 5
Dfcz wrote:
Может не надо делить по группам и тогда не надо ничего выдумывать?


Тоесть все ваши аварии привязаны к одному окну alarmview в template? Я правильно понимаю?
И кроме текста аварии вы предлагаете отображать группу и номер? Если решение не найдётся,
переделаю через template, но я полагаю что оно должно быть! Не такая уж и сложная задача.


Top
 Profile  
 
PostPosted: Wed Dec 26, 2012 12:33 am 
Site Admin

Joined: Sat Aug 13, 2005 9:15 am
Posts: 1122
и снова эээ :haha:
а вставить несколько alarmview в template и настроить каждый на свой класс,задать фильтр...?не катит?
на крайняк поднимать бит в проце при уходе алармов а во флексе отслеживать изменение и переходить на нужный экран?


Top
 Profile  
 
PostPosted: Wed Dec 26, 2012 5:28 am 

Joined: Mon Dec 03, 2012 9:49 am
Posts: 5
sania wrote:
а вставить несколько alarmview в template и настроить каждый на свой класс


Об этом я думал, однако как я буду между ними (alarmview) потом переключаться, если сработает сразу несколько? Всё перекроет последний alarmview и только его я буду видеть.
Тогда уж лучше всё валить в один.

akphantom wrote:
на крайняк поднимать бит в проце


Всё идет в принципе именно к этому. Сделать бит, что аварий в данной группе больше нет и открыть нужный экран. На данный момент именно этот совет является конкретным решением вопроса. Однако можно ли решить средствами самого WinCCFlexible? Я не пойму почему не работает метод Deactivate в свойствах окна AlarmView? По идее объект AlarmView не активен когда число событий равно нулю в нём. Вот бы всё изящно и решилось. Но не работает!


Top
 Profile  
 
PostPosted: Wed Dec 26, 2012 8:08 am 
Site Admin

Joined: Sat Aug 13, 2005 9:15 am
Posts: 1122
событие Deactivate происходит при деактивировании самого объекта,а не от того что в нём


Top
 Profile  
 
PostPosted: Wed Dec 26, 2012 12:15 pm 

Joined: Tue Dec 26, 2006 8:21 am
Posts: 547
Location: Russia
akphantom wrote:
Тоесть все ваши аварии привязаны к одному окну alarmview в template? Я правильно понимаю?
И кроме текста аварии вы предлагаете отображать группу и номер? Если решение не найдётся,....

Совершенно правильно поняли.
И в самом ПЛК я разделяю аварии: одни сбрасываются автоматом, другие через какие-то действия, а значит квитируются на панели. И пока они не сброшены в ПЛК, их можно на панели всегда посмотреть, полистать. А чтобы знать, что аварии есть, я свечу светодиодами (каждый диод на свою группу аварий). Мигание светодиодов я использую для подсказки, какую кнопку нужно нажать в нужный момент.
Это не я придумал, так делают иносранцы даже на очень сложном оборудовании (у нас на заводе).

Вопрос можно: нахрена так упираться в конкретную задачу?
Гибкость признак молодости и развития.


Top
 Profile  
 
PostPosted: Thu Dec 27, 2012 7:00 am 

Joined: Mon Dec 03, 2012 9:49 am
Posts: 5
sania wrote:
событие Deactivate происходит при деактивировании самого объекта,а не от того что в нём


В общем всё верно. В свойствах объекта AlarmView во вкладке Animations -> EnableObject сделал его Enable при появлении ошибок в слове. А если в слове ошибок нет, то окно становится disable и тут срабатывает событие deactivate! Всё получилось, спасибо!

sania wrote:
нахрена так упираться в конкретную задачу?


А я никуда не спешу. Всё и так работает. Хочу сделать работу с OP более комфортной. Проект уже готовый, я его изменяю. То что я описал уже сделано другим программистом, но сделано очень не удобно. У меня задача это немного поправить. Там изначально сообщения появлялись, но об этом было не известно, т.к. эти отдельные окна с alarmview даже не открывались.


Top
 Profile  
 
PostPosted: Thu Dec 27, 2012 10:15 am 

Joined: Tue Dec 26, 2006 8:21 am
Posts: 547
Location: Russia
akphantom wrote:
А я никуда не спешу.

:)
akphantom wrote:
Там изначально сообщения появлялись, но об этом было не известно, т.к. эти отдельные окна с alarmview даже не открывались.

У меня об этом сообщает свечение красного диода на панели.
А вызов сообщений для просмотра сделан через нажатие кнопки (например F1).
Как вариант.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 11 posts ] 

All times are UTC + 3 hours


Who is online

Users browsing this forum: No registered users and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
Powered by International PLCforum® Forum Software © PLCforum
Mobile version