Профиль должен быть заполнен на русском языке кириллицей. Заполнение профиля заведомо ложными или некорректными данными - причина возможного отказа в регистрации на форуме.

Косвенная адресация в WinCC.

SCADA, серверы, АРМ верхнего уровня, диспетчерские
Аватара пользователя

Автор темы
Marrenoloth
завсегдатай
завсегдатай
Сообщения: 504
Зарегистрирован: 05 окт 2009, 10:51
Ф.И.О.: Тихомиров Дмитрий Викторович
Откуда: Москва
Благодарил (а): 15 раз
Поблагодарили: 18 раз
Контактная информация:

Косвенная адресация в WinCC.

Сообщение Marrenoloth » 10 июн 2011, 00:17

Добрый день, коллеги!
Возник вот такой вопрос: Есть ли возможность в WinCC "на ходу" изменять целевые адреса для тегов? Во Флексе делал следующим образом - привязывал адреса тегов к внутренним тегам и у этих внутренних менял значения скриптами. В итоге конечные теги меняли ссылки на адреса онлайн. Фактически - штатная возможность. А вот в "большой" SCADA не нашел как сделать. Покажите, куда копать, пожалуйста! :ges_help:


Sergeyvmm
осмотрелся
осмотрелся
Сообщения: 127
Зарегистрирован: 12 авг 2010, 00:49
Ф.И.О.: Анохин С.А.

Re: Косвенная адресация в WinCC.

Сообщение Sergeyvmm » 10 июн 2011, 19:37

можно сделать циклический скрипт и там накидать всяких кейсов. Это такой метод решения в лоб. Есть ли там возможность переконфигурировать тэги на лету - не знаю.
Правильно поставленная задача – уже наполовину решенная


Василий Иванович
авторитет
авторитет
Сообщения: 872
Зарегистрирован: 21 авг 2009, 13:25
Ф.И.О.: Василий Иванович
Благодарил (а): 1 раз
Поблагодарили: 3 раза

Re: Косвенная адресация в WinCC.

Сообщение Василий Иванович » 10 июн 2011, 20:17

В лоб делать - не получится. Даже если это делать ручками, надо отключить рантайм. Не в лоб - тяжко. Можно задекларировать строковую переменную, которая содержит имя тега, и использовать ее при опросе данных из скрипта. Ну или использовать функцию SetLink для динамики графических элементов. Но это, думаю, не совсем то, что Вам надо. А как красиво сделать - не знаю...


Sergeyvmm
осмотрелся
осмотрелся
Сообщения: 127
Зарегистрирован: 12 авг 2010, 00:49
Ф.И.О.: Анохин С.А.

Re: Косвенная адресация в WinCC.

Сообщение Sergeyvmm » 10 июн 2011, 23:34

Я имел в виду следующее:
1. делаем экшн с циклическим триггером.
2. в теле экшна ставим оператор типа кейс, в котором, в зависимости от условий, присваиваем внутреннему тэгу значения какого-то из внешних.
3. profit!

Но это только для заранее сконфигурированных внешних тэгов.
Еще хочу спросить: а насколько это нужно? Может быть, задача решается проще и не надо городить огород?
Правильно поставленная задача – уже наполовину решенная


Sergeyvmm
осмотрелся
осмотрелся
Сообщения: 127
Зарегистрирован: 12 авг 2010, 00:49
Ф.И.О.: Анохин С.А.

Re: Косвенная адресация в WinCC.

Сообщение Sergeyvmm » 10 июн 2011, 23:44

Древние греки были мудрые люди. Они говорили - обязательно читайте мануалы!
Поиск по тексту "VBA in Tag Management" во встроенном хелпе дает следующее.

VBA in Tag Management

Introduction

VBA allows you to create tags directly from the program code, modify and delete them, and read out and change their properties, types, and values.


Даже в одном месте код приводят



Sub CreateTag()

'HMIGO_000

Dim hmiGOTag as New HMIGO

On Error GoTo ErrorHandlerHMIGO

hmiGOTag.CreateTag "NewTag", TAG_BINARY_TAG, "ExistingConnection", "DB1,DD0,QC", "NewOrExistingGroupName"



'...

Exit Sub

ErrorHandlerHMIGO:

MsgBox ("Error: " & Err.Number & " " & Err.Description & " " & Err.Source)

Resume Next

End Sub

Правильно поставленная задача – уже наполовину решенная

Аватара пользователя

Автор темы
Marrenoloth
завсегдатай
завсегдатай
Сообщения: 504
Зарегистрирован: 05 окт 2009, 10:51
Ф.И.О.: Тихомиров Дмитрий Викторович
Откуда: Москва
Благодарил (а): 15 раз
Поблагодарили: 18 раз
Контактная информация:

Re: Косвенная адресация в WinCC.

Сообщение Marrenoloth » 13 июн 2011, 12:15

Спасибо! Как говориться, иногда нужен хороший пинок :) Буду читать!


Global_viewer
здесь недавно
здесь недавно
Сообщения: 10
Зарегистрирован: 28 дек 2013, 19:24
Ф.И.О.: Сытин Антон Русланович

Re: Косвенная адресация в WinCC.

Сообщение Global_viewer » 22 мар 2014, 17:47

У меня, вроде, похожая задача.
Нужно в WinCC перебрать всю DB - шку, т.е прочитать все данные. тип данных реал, кол - во 300 шт.
На ум приходит цикл for , но как организовать перебор адресов в цикле не понятно. не создавать же 300 внешних тегов а?.


Вернуться в «Верхний уровень автоматизации»



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость