Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » Операторский интерфейс SCADA/HMI TRACE MODE 6 / » NLL удаленное управление или только просмотр?

   
Автор / Author Тема / Topic: NLL удаленное управление или только просмотр?
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Здравствуйте!
Необходимо управлять с помощью NLL включением отключением аварийной сигнализации. Со звуком на NLL разобрался, а как передать значение в RTM при нажатии кнопки не пойму никак. В узле NLL есть копия вызова шаблона экрана, где кнопка НЕ-ИЛИ привязана к аргументу, в свою очередь привязанному к биту дискретного канала управляющего вкл\откл сигнализации на различном оборудовании. В RTM все работает, а вот кнопка в NLL не функционирует. В чем может быть проблема?

Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Управлять атрибутами "бит" с удаленной консоли нельзя.
Эта процедура в RTM локально включает в себя ряд скрытых операций, которые в протоколах связи NLL не предусмотрены.
Надо в NLL писать программу, в которую считывать с сервера значение управляемого канала, программно менять в этом значении нужный бит и отправлять результат в атрибут ВХОД управляемого канала.

Сообщения / Posts 17317 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Romсheg
unregistered



Icon 1 отправлено / posted            Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
В клиентах NLL не работает сетевое обращение к атрибутам бит, полубайт, байт и некоторым другим атрибутам. Решить это можно так:
1) Случай, когда надо передать данные в биты - в узле NLL создаете программу, в которой из 16 или 32 аргументов этой же программы собираете целочисленное значение (упаковка битов) и передаете в аргумент OUT типа UINT или UDINT этой же программы. Сам аргумент OUT привязываете ко входу канала на сервере, а вот в экранах узла NLL (или алгоритмах) привязываетесь к аргументам этого канала, вызывающего эту программу.
2) Случай, когда надо принять данные из битов - аналогично предыдущему методу, создаем в узле NLL программу, которая будет одним аргументом типа IN принимать из Реального атрибута удаленного канала значение и распаковывать его на биты и выдавать в аргументы этой же программы. Соответственно при вязка всех программ и экранов узла NLL должна идти уже к этим битам этой программы.

[Пдмигивание / Wink]

[ 06.06.2011, 11:48: Сообщение отредактировал / Message edited by AdAstra Technical Support ]

IP / IP: IP адрес / IP address | Report this post to a Moderator
Romсheg
unregistered



Icon 1 отправлено / posted            Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Ой, одновременно ответили... [Усмешка / Big Grin]
2Денис Анлреевич: Если что - обращайтесь, могу выслать пример проекта...

[ 06.06.2011, 11:48: Сообщение отредактировал / Message edited by AdAstra Technical Support ]

IP / IP: IP адрес / IP address | Report this post to a Moderator
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Спасибо, думаю разберусь сам. Но если что... в любом случае, спасибо)
Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Да уж, распаковка\упаковка пришлись кстати.
А отображение битов на архивных трендах в NLL тоже таким образом реализовывать?

Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Нет, биты из архива должны на тренде отображаться корректно без дополнительных процедур.
Сообщения / Posts 17317 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
От кнопки с экрана непосредственное управление битами удаленного канала HEX16 можно осуществить следующим образом.

Привязать целочисленный аргумент OUT экрана к атрибуту ВХОД удаленного HEX-канала.
К этому аргументу привязать атрибуты "Источник" и "Результат" функции управления кнопки.
Выбрать функцию XOR, OR или AND в зависимости от того как следует задать значение бита, соответственно "изменить", "установить в 1" или "установить в 0".
Значение в функции управления следует выбирать в зависимости от номера бита.
Для функций XOR и OR надо задать 2**(N-1), а для функции AND надо задать (2**16)-1-(2**(N-1)), где N - номер бита (начинается с 1).

Сообщения / Posts 17317 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Вот это уже поудобней будет! Спасибо!)
Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Попытался поуправлять первым битом. Создал аргумент OUT INT и в консоли привязал его ко входу дискретного канала МРВ. В XOR кнопке значение функции 1. Кнопка не работает...
Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Присылайте Ваш тестовый проект на hotline@adastra.ru.
Сообщения / Posts 17317 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
И еще такая проблема. Методом упаковки\распаковки битов получается управлять(считывать) из консоли битами(ы) на сервере. Но при первом включении консоли вместо того чтобы считать значения битов на сервере и установить соответствующие в консоли, происходит обнуление битов на сервере (т.е. все кнопки выключаются). Как бороться с этим???
Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Используется тип передачи НЕ-ИЛИ. возможно следует использовать прямую? но тогда проблематично совместить функции вкл и выкл в одной кнопке.
Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Пришлите, пожалуйста, пример проекта.
Сообщения / Posts 17317 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
пожалуйста напомните адресс
Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
ага, вижу))
Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
отправил. кнопки вкл\выкл каналов МТМ.
Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
И?)
Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Разбираться в присланном Вами проекте оказалось достаточно трудоемким делом.

Поэтому я решил сделать и послать Вам простенький демо-проект.

Изначально предполагается, что управление одним параметром с двух рабочих мест (или от двух задач одного узла) принципиально чревато конфликтами, которые могут возникать за счет асинхронности различных потоков обработки и обмена информацией.
Поэтому непосредственное формирование команды управления должно осуществляться из одного источника (программы) на сервере, а в эту программу могут поступать локальные или дистанционные команды. Причем программа сервера должна синтезировать управление, исключая противоречия и эффекты асинхронности различных "управляющих".

Особенно критичным является объединение команд от разных программ. Программа всегда выдает управление (в отличие от экрана, который выдает управление только при операторских манипуляциях). Программное управление значительно чувствительнее к рассинхронизации потоков, чем экранное.

В примере я показал, как можно за счет задержки включения "исполнительной" программы избежать начального сброса удаленного канала в 0.

Мы подумаем, как усовершенствовать обмен с NLL с целью исключения некоторых конфликтных ситуаций.

Сообщения / Posts 17317 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Денис Анлреевич
Active Forum Member / Активный участник форума
Участник № / Member № 2046


Icon 1 отправлено / posted      Профиль для / Profile for Денис Анлреевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Интересно, а будут ли подобные проблемы при связи МРВ с МРВ?
Сообщения / Posts 64 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Если использовать в МРВ точно такие же связи между узлами, то и проблемы останутся те же.
Но в МРВ можно создать канал HEX_OUT, с которого уже передавать сигнал в удаленный канал. Тогда часть проблем будет исключена - можно легко напрямую управлять непосредственно битами.
Однако останется проблема асинхронного управления, если управление ведется не от одного клиента. Это уже зависит не от Trace Mode 6.

Сообщения / Posts 17317 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2