Как автоматизировать разработку проекта в
WinCC 6.0 SP2?
Эдуард;
13.9.04
Здравствуйте! Подскажите, пожалуйста, как в WinCC 6.0 + SP2
автоматизировать работу по привязке однотипных объектов (аналоговые
сигналы, задвижки, насосы)? Чтобы был понятен вопрос, объясню как
это делаю я в SCADA-пакете iFIX 3.0. Создаю базу данных в MS Access
с описанием всех имеющихся объектов, например в таблице ZD этой БД
содержится описание задвижек: номер задвижки, описание, номер по
технологии, имена тегов.
У любого объекта в этой СКАДЕ есть два главных события OnEdit() и
OnClick(). Первое событие вызывается в среде конфигурации во время
щелчка мышью на объекте, второе – в среде исполнения во время
щелчка мышью на объекте. В VBA (Visual Basic Application) этой
СКАДЫ в событии OnEdit вызываем наше сконструированное окно. При
открытии это окно связывается с БД с нужной таблицей, например,
если объект – задвижка, то с таблицей ZD. В этом окне мы выбираем
нужную запись и жмем ОК. Дальше скрипт VBA прописывает все теги
выбранной задвижки в нужные свойства, анимируя их. При большом
количестве объектов такая штука очень удобна: меньше движений –
экономия времени, мала вероятность ошибочной привязки, удобство
перепривязывания при пуско-наладке.
Я читал руководство пользователя WinCC 6.0, раздел VBA. Что-то
такого я там не увидел, хотя там все в общих чертах написано.
Возможно ли подобное в WinCC? А какие способы автоматизации в
WinCC?
С уважением, Эдуард.
Re: Как автоматизировать разработку проекта в
WinCC 6.0 SP2?
Макс Прилепский; 14.9.04
Можно использовать структурные теги, при этом название механизма
делать названием структурного тега, например Valve1 - задвижка №1,
Valve2 - задвижка №2. Затем сделать один объект/группу объектов с
привязкой к свойствам/событиям элементов структуры
Valve1.
Если не использовать структуры, то создавать теги для однотипных
объектов надо в таком ключе:
Valve1_State , Valve1_Regime, Valve1_Alarm - для задвижки №1;
Valve2_State , Valve2_Regime, Valve2_Alarm - для задвижки №2 и
т.д.
В actions объекта теги определять следующим образом :
для C-Action добавлять секцию внутри которой директивой #define
определять теги и далее в action к ним обращаться по
переопределённым именам
// WINCC:TAGNAME_SECTION_START
#define Tag1 "Valve1.State"
#define Tag2 "Valve1.Regime"
// WINCC:TAGNAME_SECTION_END
Для VBS секция имеет такой вид:
' WINCC:TAGNAME_SECTION_START
Const Tag1 = "Valve1.State"
Const Tag2 = "Valve1.Regime"
' WINCC:TAGNAME_SECTION_END
После создания объекта в Graphics Designer этот объект или группа
дублируются, выделяются и вызывается контекстное меню
Linking->Tag Connections в котором в закладке Find And Replace в
поле Search For вводится Valve1 , а в поле Replace With вводится
Valve2, затем последовательно нажимаются кнопки Select All и
Replace. В результате все привязанные к объекту теги, в т.ч. и в
actions , если объявлены так, как указано выше, имеющие в названии
текст Valve1 изменятcя на теги Valve2. Заменять тексты типа Static
Text и ToolTip можно подобным образом с помощью контекстного меню
Linking->Texts.
Все вышенаписанное, за исключением использования VBS, актуально и
для WinCC 5.x
Re: Как автоматизировать разработку проекта в
WinCC 6.0 SP2?
Дмитрий; 14.9.04
Как часть концепции TIA (Полная интегрированная автоматизация)
WinCC в связке с STEP7 позволяет автоматизировать большинство задач
проектирования комплексных систем. К сожалению в рамках форума
описывать все возможности и варианты долго. Лучше один раз
показать.