Простое меню на энкодере, дисплей 2004 по I2C с русификацией

Аватара пользователя
ingener
Лейтенант
Сообщения: 580
Зарегистрирован: 14 окт 2018, 00:26
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Проект с меню на 1602 и энкодере

Сообщение ingener »

Если удалить эти два блока, то меню перестает работать (нет входа по нажатии кнопки энкодера).
Аватара пользователя
ingener
Лейтенант
Сообщения: 580
Зарегистрирован: 14 окт 2018, 00:26
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Проект с меню на 1602 и энкодере

Сообщение ingener »

И где же взять строковые блоки ecoins :smile37:
пробовал "вывод входной строки" - но не работает, даже не компилируется.
Видимо, не те...
ecoins
Полковник
Сообщения: 4005
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 153 раза

Проект с меню на 1602 и энкодере

Сообщение ecoins »

Но в целом проблема с переключением по входу EN существует. Об этом #Dryundel писал в ветке "Разработки Ecoins".
Размышляли над его предложениями. Теперь и Ваш проект добавил размышлений.
Попробуем на быструю руку сделать новые блоки с дополнительным входом, как предлагал #Dryundel и выложим на форуме. Вроде красиво должно получиться.
Аватара пользователя
rw6cm
Полковник
Сообщения: 2372
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 41 раз

Проект с меню на 1602 и энкодере

Сообщение rw6cm »

[ref]ingener[/ref],
Тема разрослась, тяжко вникать до чего дошли)
Где можно глянуть мало-мальски рабочий проект?
думал в посте 104, но там лажа, Гена и энкодер весят на 4 пине.
Win10-64, FLProg (portable)
Аватара пользователя
ingener
Лейтенант
Сообщения: 580
Зарегистрирован: 14 окт 2018, 00:26
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Проект с меню на 1602 и энкодере

Сообщение ingener »

[ref=#ff8000]rw6cm[/ref], проблема в том, что конкретного проекта одного нет, он со временем трансформируется (с помощью av и других участников), но в итоге суть все равно остается как arduino + энкодер + LCD.
Теперь наверняка никому не интересен функционал (какие сигналы куда и зачем - это все элементарно и организуется обычными блоками), а вот отработать быструю стабильную связку "энкодер - меню - LCD" было бы полезно, наверное, многим.
Аватара пользователя
ingener
Лейтенант
Сообщения: 580
Зарегистрирован: 14 окт 2018, 00:26
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Проект с меню на 1602 и энкодере

Сообщение ingener »

[ref]av[/ref], именно так. До момента добавления блока генератора все работает четко. Весь смысл в том, попробовать выяснить, работают ли блоки ecoins в этом смысле лучше (берут меньше ресурсов = можно впихнуть генератор).
А так не было бы проблем, просто нужен второй контроллер отдельно для генератора.
Или пробовать прямое подключение LCD, без шины, но это не хотелось бы)
Аватара пользователя
dizzyy
Капитан
Сообщения: 752
Зарегистрирован: 24 ноя 2017, 16:25
Откуда: Червоноград
Имя: Марьян

Проект с меню на 1602 и энкодере

Сообщение dizzyy »

да вся суть завязана что для енкодера нужно 2 ножки с прерыванием ..
я отхожу от них переходя на джойстики - 2 аналога + 1 цифровой для кнопки ..в итоге 4 направления движений , и если захотеть можно реализовать разную скорость перелистывания..
Аватара пользователя
Dryundel
Полковник
Сообщения: 2423
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 29 раз

Проект с меню на 1602 и энкодере

Сообщение Dryundel »

dizzyy писал(а): 06 авг 2019, 16:30 да вся суть завязана что для енкодера нужно 2 ножки с прерыванием ..
Соглашусь, на двух входах с прерываниями, энкодеры работают вполне приемлемо. И если входы с прерываниями не требуются больше в проекте. То к примеру вот эти блоки работают очень даже не плохо. Но сочетать их со скоростным счетчиком не представляется возможным.
Вообще я пришел к мнению, что для скоростного счетчика с которым в паре к примеру ПИД надо использовать отдельный контроллер который больше не стоит ни чем грузить.
Последний раз редактировалось Dryundel 07 авг 2019, 09:14, всего редактировалось 1 раз.
Аватара пользователя
rw6cm
Полковник
Сообщения: 2372
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 41 раз

Проект с меню на 1602 и энкодере

Сообщение rw6cm »

ingener писал(а): 06 авг 2019, 13:48 конкретного проекта одного нет, он со временем трансформируется
Вот и плохо. Читая первый и последние посты, ощущение что перешел на другую тему,
а штудировать страницы, чтобы понять что надо, ...:(.
Понял что в заданном (узком) диапазоне изменяемых напряжений на входе а1,
должен отключаться генератор (с уставкой по частоте до 1000гц),
и дискретные выходы с определенными задержками по времени (1-10сек)
Все уставки вводятся через меню энкодером.
Все это работает без проблем на встроенных блоках.
В качестве генератора (ради интереса ) поставил блок buzzer,.
Конечно ТЗ очень скудное, не ясно как быстро меняется по времени напряжение на аналог. входе,
точность предъявляемая к таймерам, и т д.
В общем разбирайтесь ))
Гена включаемый входом а1.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Win10-64, FLProg (portable)
Аватара пользователя
ingener
Лейтенант
Сообщения: 580
Зарегистрирован: 14 окт 2018, 00:26
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Проект с меню на 1602 и энкодере

Сообщение ingener »

[ref=#ff8000]rw6cm[/ref],
Баззер действительно не тормозит проект, в отличие от генератора.
Но использовать его невозможно. слишком грубая дискретность.
Вот результат исследования
значение integer на входе / выходная частота
17 - 38Гц
18 - 43Гц
19 - 50Гц
20 - 58Гц
21 - 67Гц
22 - 78Гц
23 - 93Гц
24 - 113Гц
25 - 139Гц
26 - 177Гц
27 - 236Гц
28 - 340Гц
29 - 600Гц
30 - 1900Гц (предел)

Учитывая, что сигнал должен управлять движением шагового мотора, очевидно, что буззер не подойдет....или как-то если его возможно доработать до плавной регулировки....
может, научить его работать с float?
Аватара пользователя
rw6cm
Полковник
Сообщения: 2372
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 41 раз

Проект с меню на 1602 и энкодере

Сообщение rw6cm »

[ref]ingener[/ref],
баззер начинает работать где то от 40гц, и до 20кгц точно, дальше не пробовал
Win10-64, FLProg (portable)
Аватара пользователя
rw6cm
Полковник
Сообщения: 2372
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 41 раз

Проект с меню на 1602 и энкодере

Сообщение rw6cm »

[ref]av[/ref],
Когда буззер появился в флп, проводил эксперименты с ним.
Помню что ниже примерно 40гц, он начинал чудить, и выдавал не пойми че.
Есть такое, просто не знал что ingener надо такая низкая частота.
В настройке меню специально поставил диапазон с 100гц,
поэтому сразу и не понял откуда ingener взял такие цифры.

[ref]ingener[/ref],
Тогда ШИМ как Вы и хотели из первого поста.
Только на дисплее изменить не частота а скважность от 0 до 255(или сразу в нужный диапазон скорости mm/s)
ШИМ включаемый входом а1.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Win10-64, FLProg (portable)
Аватара пользователя
ingener
Лейтенант
Сообщения: 580
Зарегистрирован: 14 окт 2018, 00:26
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Проект с меню на 1602 и энкодере

Сообщение ingener »

Странное дело, но вдруг проект заработал с блоком генератора :smile37:
с которым раньше не работал
что поменялось - была ошибка с заданием времени задержки двух таймеров (забыл добавить блоки умножения на 1000, ведь в меню задаем в секундах, а генераторы по входу в миллисекундах).
Плюс при компиляции теперь почему-то выдает сообщение, что "не найдены библиотеки CyberLib и LiquidCrystal I2C". Хотя все работает как надо. И в IDE эти библиотеки в списке включенных есть, и лежат в папке библиотек IDE.
Получается, оно и к лучшему, что не найдены :smile171:
Кому может будет интересно, в чем суть проекта.
1. генератор постоянно выдает сигнал частоты, задаваемой в меню. Он управляет шаговым мотором. Для калибровки добавлен блок сложения для переменной integer, которая задает частоту генератора. Т.к. генератор не имеет входа разрешения работы, то работает всегда. А разрешение драйверу шагового мотора выдает инвертированный выход 7 (т.к. по сигналу 5В драйвер в стопе)
2. три выхода (7,8,9), на которых сигналы появляются с задержкой после подачи команды СТАРТ и исчезают также с задержкой после подачи команды СТОП (триггерной кнопкой по входу 5)
3. выход 13 - на нем с задержкой от команды СТАРТ на определенное время появляется сигнал.
4. два выхода на индикаторы (10 и 6) - показывают статус, старт или стоп

на дисплее 1602 места мало, поэтомы выведено только 8 значений, без обозначений. Скорость вообще некуда пока. Придет 2004, тогда можно будет развернуться.
Вообще это все для контроля автоматизированного процесса в сварочном производстве.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
ingener
Лейтенант
Сообщения: 580
Зарегистрирован: 14 окт 2018, 00:26
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Проект с меню на 1602 и энкодере

Сообщение ingener »

Всем доброго дня,
есть мысль доработать меню. Сейчас оно простейшее - все параметры переключаются по кругу кнопкой энкодера. Но когда их становится много, то возвращаться на главный экран неудобно, надо пролистать все + можно проскочить.
Надо бы сделать, чтобы при нажатии в течение 1 сек на кнопку энкодера меню возвращалось на главный экран.
Вот пытаюсь добавить таймер с задержкой на включение 1 сек, выход на reset меню, вход от кнопки энкодера. Но не работает. В чем ошибка? :smile37:
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Dryundel
Полковник
Сообщения: 2423
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 29 раз

Проект с меню на 1602 и энкодере

Сообщение Dryundel »

ingener писал(а): 08 авг 2019, 13:37 Надо бы сделать, чтобы при нажатии в течение 1 сек на кнопку энкодера меню возвращалось на главный экран.
Возьми блок кнопки с определением длинного нажатия. К примеру эту
Длинное нажатие настраивается.
Аватара пользователя
rw6cm
Полковник
Сообщения: 2372
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 41 раз

Проект с меню на 1602 и энкодере

Сообщение rw6cm »

ingener писал(а): 08 авг 2019, 13:37 Но не работает.
и не будет.
Вы сбрасываете меню, а не дисплеи. надо управление дисплеями по другому делать.
Или сбрасывать счетчик а не меню.
Win10-64, FLProg (portable)
Аватара пользователя
Dryundel
Полковник
Сообщения: 2423
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 29 раз

Проект с меню на 1602 и энкодере

Сообщение Dryundel »

rw6cm писал(а): 08 авг 2019, 13:57 и не будет.
Вы сбрасываете меню, а не дисплеи. надо управление дисплеями по другому делать.
И что? Дисплей зависит от меню.
Аватара пользователя
rw6cm
Полковник
Сообщения: 2372
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 41 раз

Проект с меню на 1602 и энкодере

Сообщение rw6cm »

[ref]Dryundel[/ref], Схема есть неужели не видно?
Win10-64, FLProg (portable)
Аватара пользователя
Dryundel
Полковник
Сообщения: 2423
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 29 раз

Проект с меню на 1602 и энкодере

Сообщение Dryundel »

rw6cm писал(а): 08 авг 2019, 14:00 Dryundel, Схема есть неужели не видно?
Вот и я про то.
Дисплей к выходам блока меню подключен. Что на выходе блока то и на дисплее.
Аватара пользователя
rw6cm
Полковник
Сообщения: 2372
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 41 раз

Проект с меню на 1602 и энкодере

Сообщение rw6cm »

[ref]Dryundel[/ref],
Извиняюсь, просто я видел полную схему. У него главный экран не из меню.
а по 0 счетчика отключает эти и включает другие окна дисплея переменной EN_M
Win10-64, FLProg (portable)
Ответить

Вернуться в «Помогите, а то я "нимагу"»

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

Сейчас этот форум просматривают: mixa7001 и 2 гостя