Author |
Message |
Written on: 11. 03. 2010 [11:31]
|
Sasha
Aleksandr Kechin
Topic creator
registered since: 12.02.2010
Posts: 13
|
roman wrote:
almaz wrote:
Обсчёт векторных примитивов, наверно, происходит в OpenSCADA. А вот как картинка доставляется в браузер? Может как обычная статичная картинка, только с периодическим обновлением?
Это конечно считается на сервере. Результатом является растровое изображение в формате PNG, которое и отправляется браузеру с периодичностью вычисления на сервере, но не чаще чем раз в секунду.
Вывод- Чтобы все выглядело красиво и не тормозило – для WEB лучше не использовать.
|
Written on: 11. 03. 2010 [15:05]
|
almaz
Almaz Karimov
Contributor
registered since: 25.09.2008
Posts: 516
|
Скорее по-другому - Чтобы всё выглядело красиво и не тормозило – WEB лучше не использовать.
Через Web получаем 1 кадр в секунду. Как-то скрасить данное можно только анимированным изображением.
Может как-то можно уменьшить время обновления (например, для высокоскоростной локальной сети некритичной к трафику)?
Или по-другому: нельзя ли это время регулировать по усмотрению пользователя?
Хотя браузеры не рассчитаны на высокую скорость обновления...
Через Qt можно свободно достичь и 24 кадров в секунду. Вот это действительно красиво...
И кстати, таким образом можно сократить трафик. Через сеть с критичным трафиком отправлять только данные для визуализации, а саму визуализацию производить в OpenSCADA на клиентской машине. Использовать, так сказать, SELF-протокол вместо WEB.
21 век - век повсеместной автоматизации. Главное - во благо всем людям.
|
Written on: 14. 03. 2010 [17:49]
|
Sasha
Aleksandr Kechin
Topic creator
registered since: 12.02.2010
Posts: 13
|
Связывать атрибуты виджитов удалось только через обработку Java .
А через WDG: не работает.
А про динамическое связывание я не чего не понял.
Расскажите пожалуйста как это правильнее делать.
|
Written on: 14. 03. 2010 [18:54]
|
almaz
Almaz Karimov
Contributor
registered since: 25.09.2008
Posts: 516
|
Если визуализируемая переменная не требует дополнительной обработки (точное соответствие начального значения и диапазона с параметрами атрибута виджета) просто связываем атрибут виджета с нужной переменной из DAQ. Делается это на вкладках "Обработка" и "Связи" ближайшего родительского виджета с активными вкладками.
В случае необходимости дополнительной обработки визуализации без ява-программы в родительском виджете никак.
21 век - век повсеместной автоматизации. Главное - во благо всем людям.
|
Written on: 14. 03. 2010 [19:48]
|
Sasha
Aleksandr Kechin
Topic creator
registered since: 12.02.2010
Posts: 13
|
almaz wrote:
Если визуализируемая переменная не требует дополнительной обработки (точное соответствие начального значения и диапазона с параметрами атрибута виджета) просто связываем атрибут виджета с нужной переменной из DAQ. Делается это на вкладках "Обработка" и "Связи" ближайшего родительского виджета с активными вкладками.
В случае необходимости дополнительной обработки визуализации без ява-программы в родительском виджете никак.
Через DAQ работает .
Интересно как связывать на прямую, атрибуты виджитов.
|
Written on: 14. 03. 2010 [21:58]
|
almaz
Almaz Karimov
Contributor
registered since: 25.09.2008
Posts: 516
|
Имеете ввиду атрибуты двух разных виджетов друг с другом?
Можно ява-скриптом родительского виджета. Просто присваиваете одним атрибутам значения других. Для родительского виджета все атрибуты вложенных виджетов доступны. Не забываем включать атрибуты в обработку на соответствующей вкладке.
Можно через промежуточную переменную на логическом уровне DAQ. Тут надо задавать направления передачи правильно. Всё это делается на активных вкладках родительского виджета "Обработка" и "Связи".
[This article was edited 4 times, at last 14.03.2010 at 22:16.]
21 век - век повсеместной автоматизации. Главное - во благо всем людям.
|
Written on: 14. 03. 2010 [23:49]
|
Sasha
Aleksandr Kechin
Topic creator
registered since: 12.02.2010
Posts: 13
|
almaz wrote:
Имеете ввиду атрибуты двух разных виджетов друг с другом?
Можно ява-скриптом родительского виджета. Просто присваиваете одним атрибутам значения других. Для родительского виджета все атрибуты вложенных виджетов доступны. Не забываем включать атрибуты в обработку на соответствующей вкладке.
Можно через промежуточную переменную на логическом уровне DAQ. Тут надо задавать направления передачи правильно. Всё это делается на активных вкладках родительского виджета "Обработка" и "Связи".
Спасибо .
Это я как раз понял .
Не понял Это:
wdg: - Связь на атрибут другого виджета или виджет в целом для группы атрибутов. Например, связь "wdg:/ses_AGLKS/pg_so/pg_1/pg_ggraph/pg_1/a_bordColor" осуществляет доступ атрибута одного виджета к атрибуту другого. На данный момент этот тип связи не предназначен для установки пользователем вручную, а устанавливается автоматически в режиме динамического связывания! -???
Вот еще -Может кто знает как быть с прозрачным фоном , для media — суть на картинке.
[This article was edited 1 times, at last 14.03.2010 at 23:52.]
Attachment
Снимок экрана.png (File type: application/octet-stream, Size: 11.84 kilobytes) — 619 downloads
|
Written on: 15. 03. 2010 [08:27]
|
Aleksey
Aleksey Popkov
Contributor
registered since: 31.07.2008
Posts: 326
|
Воспользуйтесь API функциями:
vcaAttrSet() - устанавливает значение атрибут
vcaAttrGet() - берет значение атрибута
Атрибуты разных виджетов на одном родительском между собой не вяжуться. (Покрайне мере у меня не завязались.)
[This article was edited 2 times, at last 15.03.2010 at 08:37.]
|
Written on: 15. 03. 2010 [08:53]
|
roman
Roman Savochenko
Moderator Contributor Developer
registered since: 12.12.2007
Posts: 3750
|
Aleksey wrote:
vcaAttrSet() - устанавливает значение атрибут
vcaAttrGet() - берет значение атрибута
Атрибуты разных виджетов на одном родительском между собой не вяжуться. (Покрайне мере у меня не завязались.)
Во первых это устаревшее API. И во вторых всё там вяжется http://wiki.oscada.org/Doc/VCAEngine?v=188f#h668-23 .
Learn, learn and learn better than work, work and work.
|
Written on: 15. 03. 2010 [09:46]
|
Aleksey
Aleksey Popkov
Contributor
registered since: 31.07.2008
Posts: 326
|
roman wrote:
Aleksey wrote:
vcaAttrSet() - устанавливает значение атрибут
vcaAttrGet() - берет значение атрибута
Атрибуты разных виджетов на одном родительском между собой не вяжуться. (Покрайне мере у меня не завязались.)
Во первых это устаревшее API. И во вторых всё там вяжется http://wiki.oscada.org/Doc/VCAEngine?v=188f#h668-23 .
API Старые, но с ними все получилось, с новыми сразу не вышло.
|