Помощь новичку. Меню и энкодер.

Использование прочих датчиков и энкодеров и пользовательских блоков к ним
TipTopBY
Рядовой
Сообщения: 6
Зарегистрирован: 04.03.2017{, 14:30}
Репутация: 0

Помощь новичку. Меню и энкодер.

#1

Сообщение TipTopBY » 04.03.2017{, 15:11}

Добрый день!
Опишу что хочу получить:
Система контроля работы тэна и вентиляторов в зависимости от датчиков температуры.
Вывод данных на LCD 1602.

Преключение информации на экране с помощью вращения энкодера.
При выборе экрана с входом в настройки (Settings menu) и нажатии на кнопку эенкодера, активация меню.
В пунктах меню настройка параметров с помощью вращения эенодера, переключения по пунктам меню по нажатию на кнопку энкодера. При выборе пункта меню Exit и нажатии кнопку энкодера - выход из меню.

Сталкнулся со следующими проблемами:
1. После загрузки система сразу оказываеться в Меню,что не нормально , вращение энкодера работает коретно, переход по меню также. Но в пункте меню Exit при нажатии кнопки из меню выход не происходит.

2. Если отключить меню, что бы вход не происходил(заведомо внести ошибку в программу), то отображаеться 1 информационный экран, но переход на другие при вращении энкодера не происходит.
Заметил что на это как то влияет Блок энкодера который участвует в работе Меню. Сменив на нем пины подключения(по сути указав другой энкодер), переключение информации на экране стало коректным, но тем самым настйка параметров в меню стала не возможной.
Я попытался более четко определить работу того или иного блока энеодера, отредактировав блок - добавив вход En, высокий сигнал на котром включал бы данный блок энкодера, файл блока приложу к посту, но нужного эфекта это не дало.

Прошу взглянуть на мою программу, указать на ошибки или предложить варианты решения проблем.
Вложения
proga.flp
(1.08 МБ) 217 скачиваний
Encoder-En-CODE.ubi
(127.35 КБ) 254 скачивания
Последний раз редактировалось TipTopBY 04.03.2017{, 15:14}, всего редактировалось 1 раз.

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

Помощь новичку. Меню и энкодер.

#2

Сообщение Boroda » 04.03.2017{, 21:34}

TipTopBY, никогда так не делайте, будет микросекундный ногодрыг (вкл/выкл).



Лучше убрать из плат выход МК и в конце программы сделать так. Под конец цикла переменная вся обсчитается, а потом уже ее на выход пускаем.

Вложения
0456659.png
4666840.png
Последний раз редактировалось Boroda 04.03.2017{, 21:53}, всего редактировалось 1 раз.

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

Помощь новичку. Меню и энкодер.

#3

Сообщение Boroda » 04.03.2017{, 21:51}

А еще лучше так. Блоки сравнения могут быть раскиданы по всей программе, а вывод наружу на последней плате. Очень просто строится алгоритм, отслеживать надо только порядок блоков сравнения по приоритету срабатывания.

Вложения
9079962.png
Последний раз редактировалось Boroda 04.03.2017{, 21:57}, всего редактировалось 1 раз.

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

Помощь новичку. Меню и энкодер.

#4

Сообщение Boroda » 04.03.2017{, 21:56}

У Вас получается, что вентилятор всегда будет работать только по последнему условию "включение вентилятора", а плата "отключение вентилятора" будет бесполезна.
Должно быть так.
Вложения
2686380.png
Последний раз редактировалось Boroda 04.03.2017{, 22:23}, всего редактировалось 1 раз.

TipTopBY
Рядовой
Сообщения: 6
Зарегистрирован: 04.03.2017{, 14:30}
Репутация: 0

Помощь новичку. Меню и энкодер.

#5

Сообщение TipTopBY » 04.03.2017{, 21:57}

Спс за совет, принял к сведению.

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

Помощь новичку. Меню и энкодер.

#6

Сообщение Boroda » 04.03.2017{, 22:28}

У Вас все кнопки на землю замыкаются? Если да, то на всех входах от кнопок надо поставить инверсию. Если инверсии нет, то программа при запуске понимает, что нажаты все кнопки и перещелкивает меню.

Вложения
0034550.png

TipTopBY
Рядовой
Сообщения: 6
Зарегистрирован: 04.03.2017{, 14:30}
Репутация: 0

Помощь новичку. Меню и энкодер.

#7

Сообщение TipTopBY » 04.03.2017{, 22:51}

Да Вы правы, я учел этот мемент в управлении подстветкой, а потом почему-то упустил, сейчас выставил инверсию на на всех блоках "Select". Но всеравно при загрузке система оказываеться в Меню. Так же выход из меню не отрабатывает.

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

Помощь новичку. Меню и энкодер.

#8

Сообщение Boroda » 04.03.2017{, 23:07}

Немного причесал Вашу программу, проверьте.
Вложения
Menu_fan.flp
(1.19 МБ) 196 скачиваний

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

Помощь новичку. Меню и энкодер.

#9

Сообщение Boroda » 04.03.2017{, 23:20}

Маленько упростил энкодер. Ну и под него программу. И сделал сброс в первый пункт при входе в меню.
Вложения
5665817.flp
(892.52 КБ) 246 скачиваний
EncUpDn-CODE-.ubi
(140.92 КБ) 237 скачиваний
Последний раз редактировалось Boroda 04.03.2017{, 23:41}, всего редактировалось 1 раз.

dron68
Рядовой
Сообщения: 2
Зарегистрирован: 09.09.2016{, 23:39}
Репутация: 0

Помощь новичку. Меню и энкодер.

#10

Сообщение dron68 » 05.03.2017{, 01:59}

Помогите пдиз. Подключил серво. Блютуз. Ремоте ху. А сервомашигка дергается и не слушается. Я новичок
Спасибо

TipTopBY
Рядовой
Сообщения: 6
Зарегистрирован: 04.03.2017{, 14:30}
Репутация: 0

Помощь новичку. Меню и энкодер.

#11

Сообщение TipTopBY » 05.03.2017{, 10:41}

Проверил. При загручке показывает информационный экран, ка надо. Но вращение энкодера экраны не переключает. Если сместить пины энкодера Меню, то экраны начинают перключаться, в меню входит, но соответственно энкодер в меню не работает.

TipTopBY
Рядовой
Сообщения: 6
Зарегистрирован: 04.03.2017{, 14:30}
Репутация: 0

Помощь новичку. Меню и энкодер.

#12

Сообщение TipTopBY » 05.03.2017{, 11:17}

Как говорил выше, если сделать программно 2 энкодера, на разных пинах, то все работает. Я соединил на плате пины этих твух програмных энеодеров. Вся заработало, хотя я не уверен что это нормальный способ. Причина проблемы с одним блоком энкодера мне кажеться кроеться в прерывании на пинах МК.

Ещё один нюанс, при входе в Меню оказываешься сразу в пункте Exit, хотя по входу Reset должно происходить сброс меню в 1-й пункт. Я так же установил "Сбрасывать меню по переднему фронту входа En", эти настройки не привели к успеху. Проблема осталась.
Вложения
proga1.flp
(901.12 КБ) 131 скачивание

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

Помощь новичку. Меню и энкодер.

#13

Сообщение Boroda » 05.03.2017{, 12:17}

А давайте так попробуем! Оставил один энкодер, а дальше сигнал переменными передается. Сделал принудительный переход на 1й пункт.
Вложения
Menu_fan_1.flp
(857.92 КБ) 167 скачиваний
Последний раз редактировалось Boroda 05.03.2017{, 12:30}, всего редактировалось 1 раз.

TipTopBY
Рядовой
Сообщения: 6
Зарегистрирован: 04.03.2017{, 14:30}
Репутация: 0

Помощь новичку. Меню и энкодер.

#14

Сообщение TipTopBY » 05.03.2017{, 12:56}

Все нормально.
Пару моментов для информации. Перекинул с входа MU на MD, что бы меню листало в нужную сторону.
При компиляции не подставляются номера пинов в энкодере, отредактировал уже в скетче вручную.

Добавил условие выхода из меню, установкой Exit:True , что бы меню настроек крутилось по кругу.

Выкладываю последний вариант. Для меня, пока, все проблемы решены. Огромная благодарность Boroda, за помощь.
Вложения
proga2.flp
(940.36 КБ) 178 скачиваний
Последний раз редактировалось TipTopBY 05.03.2017{, 12:59}, всего редактировалось 1 раз.

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

Помощь новичку. Меню и энкодер.

#15

Сообщение Boroda » 05.03.2017{, 17:44}

Вот отредактированный блок энкодера с нормальными ногами.
Вложения
3430960.ubi
(141.16 КБ) 244 скачивания

Аватара пользователя
AVGN
Капитан
Сообщения: 727
Зарегистрирован: 03.02.2017{, 12:23}
Репутация: 56

Помощь новичку. Меню и энкодер.

#16

Сообщение AVGN » 06.03.2017{, 14:47}

Boroda, для блока энкодера нужен дополнительный вывод Set -импульсов на щелчок.
Т. к. у некоторых энкодеров есть еще тактильные щелчки при вращении, и при одном щелчке бывает выдает не 1 импульс а 2 или 4 .
У мня два вида KY-40 от китайских товарищей и один выдает 2 ,а другой 4 импульса.
Если вы не можете объяснить это просто – значит, вы сами не понимаете этого до конца.
☆Альберт Эйнштейн

deni
Рядовой
Сообщения: 1
Зарегистрирован: 04.03.2017{, 18:03}
Репутация: 0

Помощь новичку. Меню и энкодер.

#17

Сообщение deni » 06.03.2017{, 15:35}

Всем привет. Ребята подскажите как создать блок тахометра для измерения оборотов вала ниже 60 об/мин. я пытался использовать скоростной счетчик с подсчетом длительности паузы между импульсами но он правильно не считает. есть файл для ардуино IDE который нормально работает. как из него сделать блок? желательно чтоб он тоже 2 канала контролировал.
Вложения
tacho.ino
(1.06 КБ) 111 скачиваний
3010827.flp
(60.65 КБ) 129 скачиваний

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

Помощь новичку. Меню и энкодер.

#18

Сообщение Boroda » 06.03.2017{, 21:00}

AVGN писал(а):для блока энкодера нужен дополнительный вывод Set
отстал я от жизни. Китайцы, для того, чтоб не использовать надежные оптические энкодеры, всякие "много импульсов" на щелчек придумывают для гнилых контактных, которые через пол-года начинают глючить.

Аватара пользователя
AVGN
Капитан
Сообщения: 727
Зарегистрирован: 03.02.2017{, 12:23}
Репутация: 56

Помощь новичку. Меню и энкодер.

#19

Сообщение AVGN » 07.03.2017{, 06:39}

Boroda писал(а):отстал я от жизни. Китайцы, для того, чтоб не использовать надежные оптические энкодеры, всякие "много импульсов" на щелчек придумывают для гнилых контактных, которые через пол-года начинают глючить.
Ну, это как повезет. Я как то в феврале к авиамоделистам заезжал. Так они уже три года очень даже механические KY-40 пользуют. Говорят, что нашли надежного производителя и закупаются.
Если вы не можете объяснить это просто – значит, вы сами не понимаете этого до конца.
☆Альберт Эйнштейн

Аватара пользователя
brig62
Лейтенант
Сообщения: 469
Зарегистрирован: 13.05.2016{, 16:37}
Репутация: 13
Откуда: Казань
Имя: Игорь

Помощь новичку. Меню и энкодер.

#20

Сообщение brig62 » 16.03.2017{, 01:24}

AVGN писал(а):ри одном щелчке бывает выдает не 1 импульс а 2 или 4 .
Вот и я с этим столкнулся. Пробовал разные блоки энкодера. Ровно 4 единицы прибавляет каждый щелчок. Как с этим бороться? Деление на 4 не помогает))

Ответить

Вернуться в «Прочие датчики и энкодеры»