Кнопка тригер с сложным механизмом поведения.

Вопросы по подключению кнопок и клавиатур
Ответить
findeler
Рядовой
Сообщения: 76
Зарегистрирован: 16.07.2016{, 08:31}
Репутация: 0
Откуда: Рязань

Кнопка тригер с сложным механизмом поведения.

#1

Сообщение findeler » 17.07.2016{, 17:31}

Логика работы.
При нажатии менее 2 секунд значение переменной 1
при нажатии более 2х секунд но менее 7 значение переменной 2
при нажатии более 7 секунд значение переменной 0
при ненажатии значение переменной не изменяется.
Вложения
5013909.png

Аватара пользователя
Boroda
Капитан
Сообщения: 836
Зарегистрирован: 01.05.2016{, 01:04}
Репутация: 38
Откуда: Коломна
Имя: Станислав
Контактная информация:

Кнопка тригер с сложным механизмом поведения.

#2

Сообщение Boroda » 17.07.2016{, 20:35}

Не взлетает!
Попробуйте так. Две версии:
1 - последовательный перебор
* нажали и держим
* значение = 1
* если не отпустили через 2 сек, то значение = 2
* если не отпустили через 7 сек, то значение = 0
2 - значение меняется при отпускании кнопки
* нажали и держим.
* если отпустили менее чем через 2 сек, то значение = 1,
* если отпустили более чем через 2 сек, то значение = 2,
* если не отпустили через 7 секунд, то значение = 0
Вложения
Test_key_trig.rar
(21.71 КБ) 119 скачиваний
Последний раз редактировалось Boroda 17.07.2016{, 20:38}, всего редактировалось 1 раз.

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

Кнопка тригер с сложным механизмом поведения.

#3

Сообщение Rovki » 17.07.2016{, 23:38}

Такие вещи делаются только при отпускании кнопки
Электронщик до мозга костей и не только

Аватара пользователя
rw6cm
Полковник
Сообщения: 2283
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 334
Имя: Владимир

Кнопка тригер с сложным механизмом поведения.

#4

Сообщение rw6cm » 18.07.2016{, 01:12}

findeler писал(а):Логика работы.
Вложения
trigger_t.flp
(113.97 КБ) 107 скачиваний
Win10-64, FLProg (portable)

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 787
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Кнопка тригер с сложным механизмом поведения.

#5

Сообщение support » 18.07.2016{, 05:05}

Я думаю так будет работать

Вложения
7584622.png
Автор программы FLProg.

findeler
Рядовой
Сообщения: 76
Зарегистрирован: 16.07.2016{, 08:31}
Репутация: 0
Откуда: Рязань

Кнопка тригер с сложным механизмом поведения.

#6

Сообщение findeler » 18.07.2016{, 06:48}

Понятно, что ничего не понятно. Поскольку в программе нет отладчика (как в сименсе) соберу сегодня тестовый стенд и буду проверять.

Аватара пользователя
rw6cm
Полковник
Сообщения: 2283
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 334
Имя: Владимир

Кнопка тригер с сложным механизмом поведения.

#7

Сообщение rw6cm » 18.07.2016{, 06:59}

support писал(а):Я думаю так будет работать
Не будет, еще нужен TOF.

СпойлерПоказать
и по умолчанию будет переменная с 1-кой.
Если это критично, вторая схема при включении в переменную ни чего не вносит.

Добавлено (18.07.2016, 06:59)
---------------------------------------------
findeler писал(а):соберу сегодня тестовый стенд и буду проверять.
Здесь только так и надо )))
Вложения
trigger_t1.flp
(84.95 КБ) 108 скачиваний
trigger_t2.flp
(92.27 КБ) 108 скачиваний
8064753.png
Win10-64, FLProg (portable)

Аватара пользователя
Boroda
Капитан
Сообщения: 836
Зарегистрирован: 01.05.2016{, 01:04}
Репутация: 38
Откуда: Коломна
Имя: Станислав
Контактная информация:

Кнопка тригер с сложным механизмом поведения.

#8

Сообщение Boroda » 18.07.2016{, 14:42}

rw6cm, а откуда я узнаю, прошло 7 секунд или нет? Так как это самый большой интервал времени, то лучше сделать так: Если кнопку не отпустили через 7 секунд, то значение должно само приравняться к нулю, пользователь это поймет и отпустит кнопку. А иначе будет неудобно пользоваться прибором, сиди считай секунды. Поэтому я и поставил 2 триггера, иначе после длинного нажатия переменная = 0, а при отпускании приравнивалась к единице, т.к. таймера успевали обнулиться.
Последний раз редактировалось Boroda 18.07.2016{, 14:47}, всего редактировалось 1 раз.

Аватара пользователя
rw6cm
Полковник
Сообщения: 2283
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 334
Имя: Владимир

Кнопка тригер с сложным механизмом поведения.

#9

Сообщение rw6cm » 18.07.2016{, 15:27}

Boroda писал(а):а откуда я узнаю, прошло 7 секунд или нет?
а откуда я узнаю, прошло 2 секунд или нет? )
Все равно считать... согласен с вами так меньше и удобней,  возражений вроде не имел.
Без проблем, можно и так:
Вложения
trigger_t3.flp
(93.27 КБ) 104 скачивания
Win10-64, FLProg (portable)

oren
Рядовой
Сообщения: 38
Зарегистрирован: 07.09.2015{, 21:02}
Репутация: 0

Кнопка тригер с сложным механизмом поведения.

#10

Сообщение oren » 18.07.2016{, 19:45}

Прошу прощение за возможно глупый вопрос,но я не пойму каково практическое применение данной схемы,что значит значение переменной" integer-1,2,0",к тому же это одна и та же переменная?

Аватара пользователя
Boroda
Капитан
Сообщения: 836
Зарегистрирован: 01.05.2016{, 01:04}
Репутация: 38
Откуда: Коломна
Имя: Станислав
Контактная информация:

Кнопка тригер с сложным механизмом поведения.

#11

Сообщение Boroda » 18.07.2016{, 20:36}

Например, по короткому нажатию включается режим измерения напряжения, по длинному - измеряем ток, по самому длинному прибор отключается. Или обогрев сидений в авто: коротко - малая мощность, длинное нажатие - средняя, еще длиннее - отключение обогрева. Или отображение показаний каких-либо счетчиков: короткое - счетчик1, длинное - счетчик2, еще длиннее - сброс счетчика. Вот эта переменная и задает режим работы прибора.
Последний раз редактировалось Boroda 18.07.2016{, 20:40}, всего редактировалось 1 раз.

oren
Рядовой
Сообщения: 38
Зарегистрирован: 07.09.2015{, 21:02}
Репутация: 0

Кнопка тригер с сложным механизмом поведения.

#12

Сообщение oren » 18.07.2016{, 20:58}

Спасибо ,объяснили доходчиво!

findeler
Рядовой
Сообщения: 76
Зарегистрирован: 16.07.2016{, 08:31}
Репутация: 0
Откуда: Рязань

Кнопка тригер с сложным механизмом поведения.

#13

Сообщение findeler » 19.07.2016{, 07:18}

Спасибо всем. Реализовал схему от rw6cm, добавил индикацию светодиодом в зависимости от режима но это уже вторично.

Rtig в схеме не понял зачем нужен ?

"Прошу прощение за возможно глупый вопрос,но я не пойму каково практическое применение данной схемы,что значит значение переменной" integer-1,2,0",к тому же это одна и та же переменная?"

часть программы управления котельной, на кнопке 2 функции.
Вложения
1530147.png
Последний раз редактировалось findeler 19.07.2016{, 07:55}, всего редактировалось 1 раз.

Аватара пользователя
rw6cm
Полковник
Сообщения: 2283
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 334
Имя: Владимир

Кнопка тригер с сложным механизмом поведения.

#14

Сообщение rw6cm » 19.07.2016{, 08:14}

findeler писал(а):Rtig в схеме не понял зачем нужен ?

СпойлерПоказать
RTrig в данной схеме при отпускании кнопки формирует импульс продолжительностью в один цикл.
В сочетании с сигналом таймера и формируется команда.
TOF удерживает сигнал таймеров на этот цикл.
oren писал(а):что значит значение переменной" integer-1,2,0",к тому же это одна и та же переменная?
Как пример: допустим нужен своего рода массив кодов с выборкой по булеану.
В схеме придется лепить кучу элементов (дешифраторы, ключи, логику, массив, и т д)
а здесь получается просто:

СпойлерПоказать
Вложения
5997575.png
5810778.png
Последний раз редактировалось rw6cm 19.07.2016{, 08:18}, всего редактировалось 1 раз.
Win10-64, FLProg (portable)

findeler
Рядовой
Сообщения: 76
Зарегистрирован: 16.07.2016{, 08:31}
Репутация: 0
Откуда: Рязань

Кнопка тригер с сложным механизмом поведения.

#15

Сообщение findeler » 19.07.2016{, 08:48}

а если программа выполняется дольше 500 мкс ?

Аватара пользователя
rw6cm
Полковник
Сообщения: 2283
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 334
Имя: Владимир

Кнопка тригер с сложным механизмом поведения.

#16

Сообщение rw6cm » 19.07.2016{, 10:43}

findeler писал(а):а если программа выполняется дольше 500 мкс ?
Речь идет о цикле. В программе может работать много параллельных циклов.
В данный момент разговор о времени на выполнение работы кода самих элементов.
Не было времени  по изучать сколько процессорного времени займут элементы таймера и таблица,
но думаю это будет в районе единиц микросекунд, а то и меньше.
так что 500 это очень громадный запас )
Последний раз редактировалось rw6cm 19.07.2016{, 11:16}, всего редактировалось 1 раз.
Win10-64, FLProg (portable)

findeler
Рядовой
Сообщения: 76
Зарегистрирован: 16.07.2016{, 08:31}
Репутация: 0
Откуда: Рязань

Кнопка тригер с сложным механизмом поведения.

#17

Сообщение findeler » 19.07.2016{, 16:57}

Что то я не понимаю.

Сделал такое изменение, сразу не работает.

Теоретически можно TOF заменить на OR, как бы. Но не работает. В чём причина ?
Вложения
2475367.flp
(161.57 КБ) 126 скачиваний
6383768.png

Аватара пользователя
Boroda
Капитан
Сообщения: 836
Зарегистрирован: 01.05.2016{, 01:04}
Репутация: 38
Откуда: Коломна
Имя: Станислав
Контактная информация:

Кнопка тригер с сложным механизмом поведения.

#18

Сообщение Boroda » 19.07.2016{, 19:33}

В реальной лог схеме возможно это будет работать (но будет наносекундный провал на выходе OR), а в FLProg есть последовательность выполнения действий и она зависит от расположения элементов на плате, посмотрите в скетче эту последовательность, наверняка в какой-то момент таймеры ТОН обнуляются, а ТОФ заводится потом. ТОФ надо оставить как он стоял в исходнике, т.к. после отпускании кнопки таймеры ТОН должны еще некоторое время находится в том состоянии, в котором были до отпускания кнопки. А если не хотите ТОФ, то берите схему из 2го поста, она на триггерах, которые сбрасываются, только через цикл после отпускания кнопки.

А чем Вам ТОФ не нравится?

Добавлено (19.07.2016, 19:20)
---------------------------------------------
Даже если цикл будет 1 секунду, то когда программа подойдет к этому месту, RTrig уже обнулится, т.к. он был единицей в предыдущем цикле, и ничего не произойдет. Поставьте ТОФ 20мкс и он скорее всего сбросится уже в следующем цикле, что нам и нужно. Тут фишка в том, чтоб ТОНы сбросились позже, чем появится RTrig.

Добавлено (19.07.2016, 19:33)
---------------------------------------------
Хотя, если бы я купил прибор с кнопками и индикатором, и у него опрос кнопок был бы раз в секунду (цикл программы), я бы его сразу же выкинул. Удобство пользования на первом месте! Далеко ходить не надо - ПРОМА-ИДМ-010 - образец того, как не надо делать опрос кнопок, причем у нее НЕ динамическая индикация. ОВЕН тоже не лучше со своим плавным нарастанием скорости перебора значений.
Последний раз редактировалось Boroda 19.07.2016{, 19:35}, всего редактировалось 1 раз.

findeler
Рядовой
Сообщения: 76
Зарегистрирован: 16.07.2016{, 08:31}
Репутация: 0
Откуда: Рязань

Кнопка тригер с сложным механизмом поведения.

#19

Сообщение findeler » 19.07.2016{, 21:10}

Boroda писал(а):Хотя, если бы я купил прибор с кнопками и индикатором, и у него опрос кнопок был бы раз в секунду (цикл программы), я бы его сразу же выкинул
ну эта кнопка такова, что нажимать её надо крайне редко, в идеале всего 1 раз. да и нажимать её не так легко.

Ответить

Вернуться в «Кнопки и клавиатуры»