разовое срабатывание при нуле 0

Вопросы от новичков
НовыйUser
Сержант
Сообщения: 154
Зарегистрирован: 26 ноя 2015, 22:05

разовое срабатывание при нуле 0

Сообщение НовыйUser »

Подскажите варианты организовать разовое срабатывание при 0 после того как прошло срабатывание при 1
Последний раз редактировалось НовыйUser 10 июл 2019, 19:11, всего редактировалось 1 раз.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

разовое срабатывание при нуле 0

Сообщение Sancho »

[ref]НовыйUser[/ref], Может не так понял?
[spoiler]
screenshot_19-07-10_16-28-57.png
[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
НовыйUser
Сержант
Сообщения: 154
Зарегистрирован: 26 ноя 2015, 22:05

разовое срабатывание при нуле 0

Сообщение НовыйUser »

[ref=#ff8000]Sancho[/ref], я иногда сам себя не понимаю :D

есть выход (с блока AND) по которому разветвляются события. Первое срабатывает при = 1, второе срабатывает при = 0. Особенность их в том что они должны разово срабатывать :) А вот с точки зрения оптимального кода и быстродействия не понятно какую схему предпочесть для такого решения. Либо последовательно разграничить событие (как в примере) либо параллельно.

Отправлено спустя 5 минут 52 секунды:
Sancho писал(а): 10 июл 2019, 16:29 Может не так понял?
тип boolean
Последний раз редактировалось НовыйUser 10 июл 2019, 16:49, всего редактировалось 1 раз.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

разовое срабатывание при нуле 0

Сообщение Sancho »

[ref]НовыйUser[/ref], Бывает :)[spoiler]
screenshot_19-07-10_16-48-10.png
[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
НовыйUser
Сержант
Сообщения: 154
Зарегистрирован: 26 ноя 2015, 22:05

разовое срабатывание при нуле 0

Сообщение НовыйUser »

[ref=#ff8000]Sancho[/ref], Ftrig ? :shok:

еще бы хотелось базовыми блоками найти решения.
использовать максимум базовых большее предпочтение с учетом исключения первого старта с нулем у второго события

:)

куда обратиться чтобы ftrig вошел в базовые блоки программы ? :)
Последний раз редактировалось НовыйUser 10 июл 2019, 16:57, всего редактировалось 1 раз.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

разовое срабатывание при нуле 0

Сообщение Sancho »

НовыйUser писал(а): 10 июл 2019, 16:51 еще бы хотелось базовыми блоками найти решения.
Тогда так. Проще не бывает, поверь. Честно-честно.
[spoiler]
screenshot_19-07-10_16-55-31.png
[/spoiler]
Только нужно обязательно проверить порядок выполнения, сверху вниз.
[spoiler]
screenshot_19-07-10_16-57-57.png
[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
НовыйUser
Сержант
Сообщения: 154
Зарегистрирован: 26 ноя 2015, 22:05

разовое срабатывание при нуле 0

Сообщение НовыйUser »

[ref=#ff8000]Sancho[/ref], теперь задумался :D

а нет ли вариантов сработку нуля организовать после сработки по единице, если в таком исполнении будет проще (с учетом исключения ложного первичного старта нулевой сработки) ?

*спс. тестирую предложенные варианты
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

разовое срабатывание при нуле 0

Сообщение Sancho »

НовыйUser писал(а): 10 июл 2019, 17:05 а нет ли вариантов сработку нуля организовать после сработки по единице, если в таком исполнении будет проще (с учетом исключения ложного первичного старта нулевой сработки) ?
Ничего толком не понял... :) , но:
всё зависит от того, чем проинициализирована переменная "Старое состояние" при старте программы, True или False.
Настрой так, как нужно. Можешь сделать две переменные, с true и false в начале.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
НовыйUser
Сержант
Сообщения: 154
Зарегистрирован: 26 ноя 2015, 22:05

разовое срабатывание при нуле 0

Сообщение НовыйUser »

спасибо за подсказки,решено :)
Аватара пользователя
Phazz
Полковник
Сообщения: 3136
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 235 раз
Поблагодарили: 114 раз

разовое срабатывание при нуле 0

Сообщение Phazz »

Детектор бита попробуйте.
НовыйUser
Сержант
Сообщения: 154
Зарегистрирован: 26 ноя 2015, 22:05

разовое срабатывание при нуле 0

Сообщение НовыйUser »

Phazz писал(а): 10 июл 2019, 20:45 Детектор бита попробуйте.
он после сработки держит единицу на выходе
Аватара пользователя
Phazz
Полковник
Сообщения: 3136
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 235 раз
Поблагодарили: 114 раз

разовое срабатывание при нуле 0

Сообщение Phazz »

НовыйUser писал(а): 10 июл 2019, 23:09 он после сработки держит единицу на выходе
А не должен.
Блок служит для обнаружения изменения состояния значения на входе с 1 на 0 и обратно. При изменении состояния на входе на выходе формируется импульс длительностью в один цикл исполнения программы
Отправлено спустя 14 минут :
Проверил блок работает как должен. Отправляет импульс при каждом изменении бита.
НовыйUser
Сержант
Сообщения: 154
Зарегистрирован: 26 ноя 2015, 22:05

разовое срабатывание при нуле 0

Сообщение НовыйUser »

Phazz писал(а): 11 июл 2019, 09:40 Проверил блок работает как должен. Отправляет импульс при каждом изменении бита.
т.е если зажать кнопку на его входе он разово сработает и отключиться или будет пропускать нажатое состояние ?
Аватара пользователя
Phazz
Полковник
Сообщения: 3136
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 235 раз
Поблагодарили: 114 раз

разовое срабатывание при нуле 0

Сообщение Phazz »

При нажатии импульс при отпускании еще импульс. Пока удерживаешь кнопку ничего не будет происходить.
НовыйUser
Сержант
Сообщения: 154
Зарегистрирован: 26 ноя 2015, 22:05

разовое срабатывание при нуле 0

Сообщение НовыйUser »

Смысл был таков чтобы постоянную единицу пропустить 1 раз. Следующий разовый проход единицы только после ее отключения и повторного включения. Это первый сценарий. Далее второй сценарий аналогичный первому но уже там вместо единицы ноль необходимо пропускать разово. Плюс к этому сценарии взаимоисключены так как выходят оба на серво в конце цепочки событий :)
Berserker
Рядовой
Сообщения: 58
Зарегистрирован: 17 май 2018, 16:13
Имя: Александр

разовое срабатывание при нуле 0

Сообщение Berserker »

ну задай сразу при включении переменную и меняй один раз, либо массив в него пиши один раз и потом только читай с него.
Аватара пользователя
Phazz
Полковник
Сообщения: 3136
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 235 раз
Поблагодарили: 114 раз

разовое срабатывание при нуле 0

Сообщение Phazz »

НовыйUser писал(а): 11 июл 2019, 10:31 Смысл был таков чтобы постоянную единицу пропустить 1 раз. Следующий разовый проход единицы только после ее отключения и повторного включения
Ну это вы описали работу блока Rtrig

Отправлено спустя 1 минуту 20 секунд:
А вот про взаимоисключения сценариев я не совсем понял.
aidar_i
Полковник
Сообщения: 3360
Зарегистрирован: 24 дек 2016, 16:55
Откуда: Уфа
Имя: Айдар
Благодарил (а): 14 раз
Поблагодарили: 100 раз
Контактная информация:

разовое срабатывание при нуле 0

Сообщение aidar_i »

Rtrig и Rtrig с инверсией + блоки and.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

разовое срабатывание при нуле 0

Сообщение Sancho »

aidar_i писал(а): 11 июл 2019, 16:06 Rtrig с инверсией
Можно использовать, но важно помнить, что если при включении питания мк на его, Rtrig, входе будет 0 - он отработает, хотя, фактически, перехода из 1 в 0 не было.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
aidar_i
Полковник
Сообщения: 3360
Зарегистрирован: 24 дек 2016, 16:55
Откуда: Уфа
Имя: Айдар
Благодарил (а): 14 раз
Поблагодарили: 100 раз
Контактная информация:

разовое срабатывание при нуле 0

Сообщение aidar_i »

Rtrig с инверсией отработает при включении, но можно его выход через and и bounce заблокировать.
Ответить

Вернуться в «Начинающим»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя