Стартовая страница › Форумы › Ошибки в работе › Ошибки Веб › Ошибка работы кнопки
- В этой теме 15 ответов, 4 участника, последнее обновление 4 года, 3 месяца назад сделано Алексей.
-
АвторСообщения
-
29.11.2019 в 14:12 #14231АлексейУчастник
Здравствуйте !
Столкнулся с проблемой работы Кнопки в Схеме ,а именно в действии «Отправить команду сразу». При выборе данного действия кнопка всегда отправляет команду «0» (Отключить) . В Канале управления Значение команды — стоит Вкл. Если в кнопке задать просто действие «Отправить команду», то все четко работает — вводим пароль и нажимаем Вкл. — все отлично приходит команда «1» (Включить). Пробовал ставить рубильник — все отлично работает с действием Отправить команду сразу , а Кнопка с данным действием работать не хочет .
Скрины нужных настроек закинул сюда : https://yadi.sk/d/MfX9zEsv4WqPvA
Помогите пожалуйста …, всю голову сломал .
Спасибо.
29.11.2019 в 14:50 #14232RomirosУчастникКнопка однопозиционная, в отличие от переключателя. Используйте формулу в канале управления для отправки нужного значения. Почитайте про использование формул в документации.
29.11.2019 в 14:55 #14233manjey73УчастникПроверьте в Справочнике — Значение команд, чтобы было «; Включить» — точка с запятой важна.
Хотя странно, если с паролем проходит та же команда, то и так должно работать.
А у вас почему то отправляется ноль..
- Этот ответ был изменен 4 года, 4 месяца назад от manjey73.
29.11.2019 в 15:02 #14235manjey73УчастникRomiros ну как это однопозиционная ? она либо нажата, либо не нажата.
При нажата должна отправить заложенную команду, в данном случае «Включить», то есть отправить 1. А не нажатой ничего не делать просто…29.11.2019 в 15:22 #14237RomirosУчастникОтправляется первое значение = 0. Без разницы, что там написано, включить или отключить — это просто отображение.
Используйте формулу типа Cmd+1, или более сложную с контролем Вашего входного канала 301, тогда можно инвертировать значение команды в зависимости от значения входного канала.29.11.2019 в 15:23 #14238АлексейУчастникСпасибо за ответы .
manjey73 Проверял, я даже скрины приложил. С паролем все хорошо проходит в том то и дело, я уже не знаю куда копать.
Romiros а можно по подробней ? Какую формулу писать ? Я Скрин с каналом управления скинул. Канал управления 301, при нажатии кнопки должно отправляться значение 1 . Рубильник справляется на ура.
Есть еще идеи ?
29.11.2019 в 16:04 #14239manjey73Участникможно использовать формулу в канале управления. во всех случаях отправит единицу например
CmdVal > 0 ? 1: 1
или CmdVal == 0 ? 1: 1Либо как предложил Ramiros
Вообще да, какая-то недоработанная кнопка получилась.
- Этот ответ был изменен 4 года, 4 месяца назад от manjey73.
29.11.2019 в 16:10 #14241RomirosУчастникПишу с телефона, под рукой скады нет, поэтому правильность не гарантирую.
Идея такая. В канале управления 301 пишем формулу:
Val(301)=0?Cmd+1:Cmd
По идее сможете включать и выключать кнопкой. Если это не нужно, то просто Cmd+129.11.2019 в 16:20 #14242RomirosУчастникДаже лучше Val(CnlNum)=0?Cmd+1:Cmd
Так универсальнее01.12.2019 в 15:20 #14250MikhailМодераторЕщё вариант формулы для канала управления добавлю: Val(101) > 0 ? 0 : 1
101 — ваш номер входного канала, от которого зависит значение команды01.12.2019 в 15:21 #14251MikhailМодераторКоманда «отправить сразу» принимает значение, если компонент имеет несколько положений. То есть для тумблера будет отправлять 0 или 1. А для кнопки всегда 0.
02.12.2019 в 06:36 #14255АлексейУчастникРебята Всем огромнейшее спасибо, респект и уважуха. Все заработало, применил формулу : Val(301) > 0 ? 0 : 1
Я просто нуб в этом языке С# , я так понимаю он смотрит значение входного канала , в моем случае 301 и если больше 0, то значение 0 становится 1 … Знак вопроса «?» это ответ условию я так понимаю .Дабы не плодить тему, хотелось бы усовершенствовать кнопку, а именно добавить функцию
«автовозврата» , то есть при нажатии кнопки:1. Отправить команду «1»
2. Сделать паузу 1 секунду
3. Отправить команду «0»То есть с имитировать физическое нажатие кнопки на пульте 🙂
Как нибудь можно такую формулу сделать ? Ну или в моем случае с применением вышеупомянутой формулы Val(301) > 0 ? 0 : 1
1. Нажать кнопку
2. Сделать паузу 1 секунду
3. Нажать кнопкуСпасибо всем !
02.12.2019 в 10:40 #14256manjey73УчастникОтправка команд после паузы возможно только Модулем Автоматического Управления. Я делал такое
02.12.2019 в 11:17 #14257АлексейУчастникmanjey73 , Спасибо . Значит буду приобретать плагин.
02.12.2019 в 11:46 #14258manjey73УчастникНу вы его можете сперва опробовать, получив временный ключ.
-
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.