sa104
Active Forum Member / Активный участник форума
Участник № / Member № 5825
отправлено / posted
Добрый день. Возможно ли использовать элемент Переключатель без фиксации, т.е. чтобы по удержанию мышкой заданное значение посылалось в канал, а по отпусканию выключатель возвращался в исходное положение? Пробовал реализовать это на стандартном элементе Кнопка, но он почему-то только принимает значение из канала, а не передает. Буду признателен за помощь.
Сообщения / Posts 65 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
1. Проверьте правильность привязки аргумента экрана, связанного с каналом и кнопкой: тип INPUT, привязан к атрибуту РЕАЛЬНОЕ_ЗНАЧЕНИЕ канала. 2. Функция "Передать значение" кнопки должна иметь установленное свойство "Восстанавливать значение" и атрибутом "Результат" должна быть привязана к указанному в п.1 аргументу.
Следует иметь в виду, что при достаточно коротком нажатии на кнопку ее сигнал может не успеть пройти через канал к Вашему исполнительному органу. Кроме того, функция "Ввести и передать" не может использоваться в таком режиме.
Сообщения / Posts 17316 | Из / From: Россия
| IP / IP: IP адрес / IP address |
jenyak542
Active Forum Member / Активный участник форума
Участник № / Member № 9353
отправлено / posted
Здравствуйте. Возникла проблема со сбросом значения по нажатию кнопки. Необходимо передавать единицу в бит в канале hex16, затем при отпускании кнопки значение восстанавливать в ноль. Можно сделать при помощи восстановления значения или mousereleas, все работает без проблем. Но проблема в том, что необходимо подтверждение действия. При наличии подтверждения значение принимает единицу и в дальнейшем при отпускании кнопки не изменяется. Возможно ли как-то решить эту проблему?
Сообщения / Posts 73 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Устанавливать подтверждение действия и ставить на кнопку Release событие - это взаимоисключающие требования. Поставьте действие по нажатию, XOR, отправка единицы, Результат и Источник привязать к аргументу, ставить подтверждение. Теперь посылается 1 или 0 по порядку и подтверждение работает в обоих случаях.
Сообщения / Posts 17316 | Из / From: Россия
| IP / IP: IP адрес / IP address |
jenyak542
Active Forum Member / Активный участник форума
Участник № / Member № 9353
отправлено / posted
Таким образом работает, спасибо. Но все-таки, хотелось бы, чтобы все происходило по однократному нажатию на кнопку. Возможно ли это сделать? Если не возможно, то сделаю через разграничение прав пользователей, кнопка без подтверждения, но нажать на нее может только администратор
Сообщения / Posts 73 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Так. Поэтапно как это должно работать? Нажали кнопку, появилось окно с подтверждением. Дальше что?
Сообщения / Posts 17316 | Из / From: Россия
| IP / IP: IP адрес / IP address |
jenyak542
Active Forum Member / Активный участник форума
Участник № / Member № 9353
отправлено / posted
Нужно, чтобы появилось окно с подтверждением, оператор подтверждает, бит возводится в 1 и затем в 0, без каких-либо повторных нажатий на кнопку или еще чего-то.
Без подтверждения все работает, но подтверждение нужно. По рекомендации, которую дали ранее, через XOR, необходимо нажать один раз, подтвердить, бит возведется в 1, затем, нажать второй раз, подтвердить, бит установится в 0. Но такой вариант не устраивает
Сообщения / Posts 73 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
По описанию напоминает классический импульс. рекомендуем кнопкой просто по нажатию посылать с подтверждением команду в программу, в программе формировать прямоугольный импульс. В FBD есть готовые блоки для этого, можно на 1 такт, можно задать произвольную длительность. Выход программы уже привязывать к каналу, который связан с источником.
Сообщения / Posts 17316 | Из / From: Россия
| IP / IP: IP адрес / IP address |
jenyak542
Active Forum Member / Активный участник форума
Участник № / Member № 9353
отправлено / posted
quote:Отправитель / Originally posted by АдАстра. Техподдержка: По описанию напоминает классический импульс. рекомендуем кнопкой просто по нажатию посылать с подтверждением команду в программу, в программе формировать прямоугольный импульс. В FBD есть готовые блоки для этого, можно на 1 такт, можно задать произвольную длительность. Выход программы уже привязывать к каналу, который связан с источником.
Здравствуйте. Можете, пожалуйста подробнее сказать, как описанный способ реализовать. Я беру блок Импульс по переднему фронту, на его выход ставлю необходимый бит, в который нужно передавать значение. А что на вход ставить? какую-то вспомогательную переменную и передавать в эту переменную единицу по нажатию кнопки с подтверждением? Если так делать, то ничего не меняется, в этой вспомогательной переменной после нажатия кнопки с подтверждением единица установится и уже не уйдет, процедура подтверждения не дает этого сделать, а нужно, чтобы при отжатии она в 0 возвращалась. Как это сделать?
Сообщения / Posts 73 | Из / From: Россия
| IP / IP: IP адрес / IP address |
jenyak542
Active Forum Member / Активный участник форума
Участник № / Member № 9353
отправлено / posted
Мне удалось придумать рабочий алгоритм программы, все работает. Спасибо
Сообщения / Posts 73 | Из / From: Россия
| IP / IP: IP адрес / IP address |