Типичная задача:по кнопочке на экране записывать некоторое значение в контроллер в регистр или катушку MODBUS.
Проблема в следующем:
делаю кнопку,вешаю на неё действие по нажатию - "посылка значения", "прямая", устанавливаю нужное значение, нужный канал, "реальное" значение (пробовал и "выходное").
Работает это так, что, в лучшем случае, посылка делается при первом нажатии.
Тогда я ставлю вторую аналогичную кнопку, но с другим посылаемым значением. Когда нажимаю эти кнопки поочереди, то посылка значения в MODBUS происходит всегда. НО! Мне-то нужна одна кнопка!
Вешаю на первую кнопку дополнительные действия, взятые со второй кнопки. Так не работает! Смешно получается, однако.
Пожалуйста, подскажите выход.
Канал типа F , MODBUS, OUTPUT (W Float(16) Q=2)
-- С Уважением, Михаил mailto:mic@ellips.ru
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Все исполнительные каналы (типа OUT) в Трейс Моуд работают единообразно - они отрабатывают свою функцию только при изменении их реального значения. Если Вы посылаете в канал одно и то же значение, он, действительно, отрабатывает только первый раз. Для подавляющего большинства реальных процессов этого достаточно. Если необходимо в каких-либо особых случаях инициировать подачу неизменившегося сигнала, можно поместить соответствующие каналы в загружаемый ОБЪЕКТ, создать для этого ОБЪЕКТА канал КАНАЛ_ПОДКЛЮЧЕНИЕ и с его помощью в нужный момент времени инициировать эту функцию.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Обращаю Ваше внимание на то как Вы привязали посылку с кнопки: "делаю кнопку,вешаю на неё действие по нажатию - "посылка значения", "прямая", устанавливаю нужное значение, нужный канал, "реальное" значение (пробовал и "выходное"). ". Естественно при посылке в атрибут "Реальное" или "Выход" значение на этом атрибуте в канале продержиться не дольше одного цикла пересчета! Потому как бедет замещено значение с предыдущего атрибута. Потому как движение данных в канале типа OUTPUT идет по пути "Вход"-"Реальное"-"Аппаратное"-"Выход". Данные в канал необходимо ВСЕГДА посылать в атрибут "Вход", будь он типа Input или Output! Смотрите более подробно описание канала в справочное системе ТМ.