Форум 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 » Редактор проекта TRACE MODE 6 / » как правильно организовать чтение и запись значений?

   
Автор / Author Тема / Topic: как правильно организовать чтение и запись значений?
jasha-kz
Forum Member / Участник форума
Участник № / Member № 4149


Icon 1 отправлено / posted      Профиль для / Profile for jasha-kz           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Здравствуйте
У меня вопрос, который, возможно, уже обсуждался на форуме, но мне не
удалось найти такое обсуждение. Или, может быть, он всем и так понятен.
Подскажите пожалуйста, как правильно организовать каналы и связь между
ними, если в системе есть контроллер (EmbRTM) и несколько АРМ (RTM).
На контроллере есть канал - коэффициент настройки регулятора. Нужно иметь
возможность просматривать и менять его значение с любого из АРМ.
Задача вполне обычная, но не могу сообразить, как ее решить правильно.
Есть вариант, который сейчас мной реализован, но он имеет недостатки и
является слишком громоздким: на каждом АРМ заводится два канала, один
типа INPUT, другой OUTPUT. К INPUT каналу привязывается реальное значение
канала с контроллера, к OUTPUT - его входное значение. На экране интер-
фейса вводятся два аргумента IN и OUT (или IN и IN/OUT). Соответственно,
IN-аргумент связан с реальным значением INPUT-канала и используется для
отображения текущего значения, OUT(IN/OUT)-аргумент связан с входным зна-
чением канала OUTPUT и используется для задания нового значения. Во-первых
описанная схема сложна, а во-вторых неудобна при вводе нового значения.
Например, если на экране используется ГЭ "Текст" и его отображение привязано
к IN-аргументу, а запись (ввести и передать) к OUT-аргументу, то при
начале ввода, вводимое значение стартует не с текущего, а того, которое
вводилось в прошлый раз (или с 0.0 в первый раз). ГЭ "Ползунок" в подобной
схеме ведет себя вообще неприемлемо.
Пожалуйста, подскажите, как правильно решается данная задача.
Версия TM 6.06
Большое спасибо

Сообщения / Posts 44 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
.канал коэф регулятора может изменится без посылок с АРМ ?
.если более чем на одном АРМ меняют значение одного канала на другом узле то что будет ?
.если сверхактуально старт вводимого значения с
текущего ну скопируйте значение одного канала в другой
.используйте аргумент out и привяжите его к удаленному каналу(как в NetLink консоле)

Сообщения / Posts 873 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
jasha-kz
Forum Member / Участник форума
Участник № / Member № 4149


Icon 1 отправлено / posted      Профиль для / Profile for jasha-kz           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
To Nico:
Спасибо за ответ, правда, вопрос все равно остается.
По изменению канала без посылок с АРМ - может, например посылкой с другого АРМ.
Если на нескольких АРМ меняется значение, то это не страшно - когда по очереди, то вообще проблем не должно быть, когда одновременно, то кто последний записал, тот и прав.
Ваше предложение скопировать значение одного канала в другой не совсем понял: имеется в виду INPUT канал скопировать в OUTPUT? Если да, то когда? В момент перед началом ввода? И как лучше это сделать? Да и это только дополнительно усложняет а не упрощает решение. Хотя задача явно тривиальная. А по поводу привязки OUT-аргумента прямо к каналу на ПЛК - похоже, это хорошее дело, упростит задачу. Но я не знаю, будет ли в этом случае запись производиться строго при изменении, а иначе с несколькими АРМ работать не получится.
Еще раз спасибо

Сообщения / Posts 44 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


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

Сообщения / Posts 873 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
jasha-kz
Forum Member / Участник форума
Участник № / Member № 4149


Icon 1 отправлено / posted      Профиль для / Profile for jasha-kz           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
To Nico: да-да, то что канал Output пишется только при изменениях, в курсе. Именно поэтому и использовал его. А вот так же ли работает аргумент экрана - не знаю.
Сообщения / Posts 44 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


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


Icon 1 отправлено / posted      Профиль для / Profile for jasha-kz           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
To Nico: в общем, как я понял, Вы описываете именно тот вариант, с которого все и началось. В любом случае спасибо.
To All: может быть все таки кто-то подскажет, как эта задача решается обычно в TM? Простейшая же вещь! Не может быть, чтобы в такой продвинутой системе такую стандартную функцию реализовать было бы так сложно. Скорее всего, я просто недостаточно знаю ТМ. Помогите пожалуйста.

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



Icon 1 отправлено / posted            Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Простого решения нет, либо вводите арбитраж на уровне контроллера математикой (тогда есть вводится приоритет по управлению), либо решение от Адастры, что уже было тут Вам озвучено (где оба узла равнозначны в управлении).
IP / IP: IP адрес / IP address | Report this post to a Moderator
jasha-kz
Forum Member / Участник форума
Участник № / Member № 4149


Icon 1 отправлено / posted      Профиль для / Profile for jasha-kz           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Спасибо еще раз всем за помощь. Удалось выкрутиться используя описанную выше громоздкую схему с двумя дополнительными каналами на АРМ (впрочем, можно обойтись и одним, OUTPUT) и двумя аргументами экрана (тут, видимо, одним не обойдешься). В ГЭ Текст на нажатие мышки стоит присвоение IN-аргумента в OUT (Добавить 0), а на отпускание - ввести и передать OUT-аргумент. Сделать и то и другое на нажатие - не проходит, не отрабатывает в нужной последовательности. Ну а с ползунком пока нормального выхода нет. Подложил ползунок только с отображением IN-аргумента под ползунок без заливки с отображением и вводом OUT-аргумента. Результат выглядит весело, но зато наглядно иллюстрирует процесс записи/чтения
Сообщения / Posts 44 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
jasha-kz
Forum Member / Участник форума
Участник № / Member № 4149


Icon 1 отправлено / posted      Профиль для / Profile for jasha-kz           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Здравствуйте
Насколько я знаю, значение канала типа OUTPUT передается в привязанный к нему канал только при изменении.
Пожалуйста подскажите:
1) а значение OUT-аргумента программы и экрана передаются в атрибут привязанного к нему канала тоже только при изменении или всегда?
2) имеет ли здесь значение то, на одном или на разных узлах находятся вызов программы (экрана) и привязанный к его OUT-аргументу канал?
Большое спасибо

Сообщения / Posts 44 | Из / From: Russia  |  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 
1. C экрана значение передается при активизации функции управления в соответствующем ГЭ (нажатии ЛК мыши на ГЭ).
Из программы значение OUT-аргумента передается всегда.

2. Эти условия одинаковы при передаче в локальный и удаленный каналы.

Сообщения / Posts 17317 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
jasha-kz
Forum Member / Участник форума
Участник № / Member № 4149


Icon 1 отправлено / posted      Профиль для / Profile for jasha-kz           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Спасибо
Сообщения / Posts 44 | Из / From: Russia  |  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