Перейти к блогу GetChip.net - блог        JilTE[1] - в разработке     Модификации устройств - модификации

 
Текущее время: 19 дек 2018, 03:19

Часовой пояс: UTC + 3 часа [ Летнее время ]



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Опрос инкрементального энкодера.
СообщениеДобавлено: 24 ноя 2015, 01:35 
Не в сети
Аватара пользователя

Зарегистрирован: 29 май 2011, 17:59
Сообщения: 3692
Откуда: Россия
На одной из моих девборд, установлен энкодер PEC12R-4225F-S0024. Вот и дошли руки его поюзать. Код примитивный…
Вложение:
2.png
2.png [ 11.01 КБ | Просмотров: 1599 ]

отслеживает только направление вращения и считает импульсы.
Для визуализации данного действия, подключил три светодиода...
Вложение:
1.png
1.png [ 13.02 КБ | Просмотров: 1599 ]

Вложение:
Test Compare.zip [5.89 КБ]
Скачиваний: 94


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Опрос инкрементального энкодера.
СообщениеДобавлено: 24 ноя 2015, 12:11 
Не в сети

Зарегистрирован: 17 мар 2014, 21:34
Сообщения: 29
Может стоит объеденить c viewtopic.php?f=18&t=452 ?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Опрос инкрементального энкодера.
СообщениеДобавлено: 24 ноя 2015, 15:15 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 15 май 2011, 23:00
Сообщения: 1910
Не нужно - пусть будут разные варианты в разных топиках


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Опрос инкрементального энкодера.
СообщениеДобавлено: 24 ноя 2015, 16:13 
Не в сети
Аватара пользователя

Зарегистрирован: 29 май 2011, 17:59
Сообщения: 3692
Откуда: Россия
Gnusmas писал(а):
Может стоит объеденить c viewtopic.php?f=18&t=452 ?

Это два разных подхода к обработке энкодера. Каждая реализация алгоритма имеет как свои плюсы, так и минусы. Прежде чем писать код, я взвешивал все за и против подходов опроса. Мой выбор пал именно на такой метод, не используя внешнее прерывания. Я специально не делал фильтрующих цепей устранения дребезга контактов, добиваясь чёткой работы опроса энкодера. У энкодера есть ещё и другие тонкости, которые необходимо учитывать. В данном алгоритме всё это учтено.
У моего энкодера, 24 такта на один оборот. Образно говоря, за один так имеем 4 импульса. Так вот, пощупав осцилом, выяснилось, что энкодер можно остановить и на пол пути… затем вернуть обратно (пройдя два импульса из четырёх, с возвратом обратно). В таком случае, при внешнем прерывании будет посчитано за один такт, которого по сути и не было. А если устройству необходимо чёткое отслеживание положения движка энкодера, то получаем ошибку. И таких ошибок может накопится множество, что приведёт к потере контроля реального положения энкодера. Поюзай оба кода на железе и увидишь существенную разницу. Причём по моему алгоритму, я так и не смог обмануть МК как не старался. :-)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Опрос инкрементального энкодера.
СообщениеДобавлено: 29 фев 2016, 19:11 
Не в сети

Зарегистрирован: 11 июл 2013, 22:36
Сообщения: 132
SVN писал(а):
специально не делал фильтрующих цепей устранения дребезга контактов, добиваясь чёткой работы опроса энкодера.

Отличный код для работы в тяжелых условиях, наводок , помех и т.д. :OK: Берем на вооружение !
Опробывал прежде несколько вариантов по внешним прерываниям - на столе работают четко - в тяжелых условиях полная белиберда и с подавлением дребезга програмным и конденсаторами на входе .


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


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

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


Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB