|
Фильтрация данных с энкодера, как уменьшить количество импульсов? |
|
|
|
Mar 20 2012, 15:10
|
Группа: Участник
Сообщений: 12
Регистрация: 16-03-12
Из: Moscow, Russia
Пользователь №: 70 839

|
Здравствуйте! Очень нужна помощь людей, понимающих цифровую схемотехнику. Для замены энкодеров в оборудовании мною были выписаны энкодеры Bourns ECW1J-C24-HC0024L. Код детали расшифровывается в действующем datasheet на энкодеры Борнса: http://bourns.com/data/global/pdfs/ECW1J.pdfE=encoder C=200,000 вращений W=9mm x 1/4" length, threaded M9x0.75 1=SWITCHING CONFIGURATION (In Detent Position) Applies to performance codes B0012 and C0024 only, use code "0" for all other performance codes. D, J=ANTI-ROTATION LUG C=shaft style, то есть вид ручки. 24=длина ручки 3/4" (19mm). H=расположение выводов энкодера и прочие внешние особенности. С0024=perfomance code: detents - 24, cycles per rev. - 24. L=RoHS compliance. Поясню, что энкодер берёт ток с одной ножки и, в связи с тем что внутри вращается кружок с контактными площадками, поочередно замыкающими и размыкающими контакты, на две других ножки выдаются колебания тока с разницей в 90 градусов. Внешним процессором эти импульсы обсчитываются и получается значение, связанное с положением энкодера. Сейчас уже понятно, что следовало заказать энкодер с кодом E0036 или E0024, то есть без арретиров (арретир - механическое приспособление для закрепления чувствительного элемента различных приборов в определённом положении), по-русски без "щелкунчиков". Исходные энкодеры были именно с кодом E00**, то есть без приведения энкодера к определенному положению. К сожалению заказанный энкодер, как оказалось, работает несколько иначе чем ожидалось. Я рассчитывал что энкодер будет выдавать дискретные значения в соответствии с числом арретиров, 24 на оборот, то есть при повороте его получить точное значение будет просто (а это крайне важно). Однако, как оказалось, энкодер между положениями арретира продолжает выдавать импульсы, в связи с чем значения в оборудовании переключаются не по 1, как хотелось бы, а по 3 в одну сторону и по 4 в противоположную. Получить значение +1 можно только если задержать энкодер "между" арретирами, но при любом повороте произойдёт скачок до ближайшего значения (+3/+4). Хотелось бы услышать мнение специалистов, возможна ли какая-либо фильтрация "выхлопа" энкодера, чтобы эти "промежуточные" значения между арретирами отфильтровывались, некое принудителное понижение его "чувствительности"? Впаивание каких-либо конденсаторов-сопротивлений, чтобы на выходы ножек поступал только каждый третий импульс?
|
|
|
|
|
 |
Ответов
|
Mar 20 2012, 16:32
|
Гуру
     
Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047

|
Дребезг контактных энкодеров присутствует всегда, это неизбежная проблема конструкции. В данном случае речь о том, сколько изменений состояния квадратурного сигнала происходит на каждый щелчок энкодера. Например, насколько я помню, PEC12 и PEC16 дают четыре изменения на щелчок, упомянутые ECW - есть варианты как с четырьмя, так и с одним изменением. У меня есть энкодеры от ALPS, где на щелчок приходилось два изменения (кажется). Все решается дальнейшей обработкой. Если оборудование жестко заточено на определенную схему кодирования, то без внешних костылей обойти не удастся... Цитата(bytie @ Mar 20 2012, 20:24)  А "фильтрация шумов" не сработает? По прилагаемой схеме, напр.? Тут конечно не совсем "дребезг" сигнала... [attachment=66727:Screen20...0_202819.png] Нет. Вообще борьба с шумами и дребезгом посредством аналоговых довесков - путь тупиковый, но в данном случае проблема, как я понимаю, в различии диаграмм. Увы, иного варианта, кроме как собственной обработкой и программным делением результата я не предложу. Ну, или закупать другие энкодеры, тщательно сравнивая "эталон" с тем, что предлагается.
Сообщение отредактировал rx3apf - Mar 20 2012, 16:33
|
|
|
|
|
Mar 20 2012, 16:48
|
Группа: Участник
Сообщений: 12
Регистрация: 16-03-12
Из: Moscow, Russia
Пользователь №: 70 839

|
Цитата(rx3apf @ Mar 20 2012, 20:32)  Дребезг контактных энкодеров присутствует всегда, это неизбежная проблема конструкции. В данном случае речь о том, сколько изменений состояния квадратурного сигнала происходит на каждый щелчок энкодера. Например, насколько я помню, PEC12 и PEC16 дают четыре изменения на щелчок, упомянутые ECW - есть варианты как с четырьмя, так и с одним изменением. У меня есть энкодеры от ALPS, где на щелчок приходилось два изменения (кажется). Все решается дальнейшей обработкой. Если оборудование жестко заточено на определенную схему кодирования, то без внешних костылей обойти не удастся... Ну вот я и спрашиваю про костыли. Я так понял что аналоговым способом эту проблему решить невозможно? Цитата Вообще борьба с шумами и дребезгом посредством аналоговых довесков - путь тупиковый, но в данном случае проблема, как я понимаю, в различии диаграмм. Каких именно диаграмм, можно подробнее? Мне казалось, что если штатный энкодер выдает, к примеру, четыре импульса на "деление" (энкодер без щелчков, E****), то два импульса на деление с точки зрения внешнего контроллера = вдвое меньшая скорость изменения...
|
|
|
|
Сообщений в этой теме
bytie Фильтрация данных с энкодера Mar 20 2012, 15:10 rx3apf Делается опрос с достаточной частотой, и реализует... Mar 20 2012, 15:16 bytie Изменение программной части невозможно. Mar 20 2012, 15:25 rx3apf Цитата(bytie @ Mar 20 2012, 19:25) Измене... Mar 20 2012, 15:28  MaslovVG Цитата(rx3apf @ Mar 20 2012, 19:28) Тогда... Mar 20 2012, 16:12   bytie Цитата(MaslovVG @ Mar 20 2012, 20:12) Суд... Mar 20 2012, 16:24  rx3apf Цитата(bytie @ Mar 20 2012, 20:48) Ну вот... Mar 20 2012, 17:05   bytie Цитата(rx3apf @ Mar 20 2012, 21:05) Там ж... Mar 20 2012, 17:31    rx3apf Цитата(bytie @ Mar 20 2012, 21:31) Мне пр... Mar 20 2012, 17:45    MaslovVG Цитата(bytie @ Mar 20 2012, 21:31) Мне пр... Mar 20 2012, 18:10     bytie Цитата(MaslovVG @ Mar 20 2012, 22:10) Нет... Mar 20 2012, 18:33      MaslovVG Цитата(bytie @ Mar 20 2012, 22:33) За пос... Mar 20 2012, 18:45       rx3apf Цитата(MaslovVG @ Mar 20 2012, 22:45) Ну ... Mar 20 2012, 19:28        bytie Цитата(rx3apf @ Mar 20 2012, 22:28) Там в... Mar 21 2012, 06:06         MaslovVG Цитата(bytie @ Mar 21 2012, 10:06) Как ви... Mar 21 2012, 07:12         rx3apf Цитата(bytie @ Mar 21 2012, 10:06) Я дейс... Mar 21 2012, 08:33 alexvu Приведите диаграммы, снимаемые с Вашего энкодера, ... Mar 20 2012, 17:06 bytie ЦитатаЦитатаМне представляется, что приведенные на... Mar 20 2012, 18:01 Plain Проблема явно не в кодере, а в том "оборудова... Mar 21 2012, 06:35 bytie Цитата(Plain @ Mar 21 2012, 09:35) Пробле... Mar 21 2012, 06:55 Plain Ну ладно. Итак, существующие оборудование не умеет... Mar 21 2012, 07:10 bytie Цитата(Plain @ Mar 21 2012, 10:10) Ну лад... Mar 21 2012, 07:23  Plain Цитата(bytie @ Mar 21 2012, 10:23) Как я ... Mar 21 2012, 07:41 VladKot Посмотрите здесь:
http://www.lsicsi.com/pdfs/Data_... Mar 21 2012, 08:34 MaslovVG Цитата(VladKot @ Mar 21 2012, 12:34) Посм... Mar 21 2012, 09:19 muravei Цитата(VladKot @ Mar 21 2012, 11:34) Посм... Mar 21 2012, 18:00 bytie А вот так выглядят внутренности штатного энкодера:... Mar 23 2012, 12:39 Plain Похоже на то, что в штатном нормально замкнутые вы... Mar 23 2012, 14:19 rx3apf Ну к чему высасывать фантазии из пальца ? Штатный ... Mar 23 2012, 14:49 Plain То, что автор ошибся в 5 раз с выбором числа прира... Mar 23 2012, 15:48 rx3apf Да не за поворот же. У него на шаг по четыре дискр... Mar 23 2012, 16:09
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|