Направление вращения энкодера

Радиотехника, платы, схемы, оборудование, фото- видео- приборы, компьютеры
Ответить
bee
junior
junior
Сообщения: 51
Зарегистрирован: 12 июн 2013, 09:04
Репутация: 0
Версия LabVIEW: 2014
Контактная информация:

Направление вращения энкодера

Сообщение bee »

Добрый день.
В наличии NI 6343 + энкодер http://www.einformatyka.pl/wobitcompl/download/pdf/przetworniki/MOM20_en.pdf
Завел сигнал с энкодера на 2 цифровых входа устройства (+ задействовал счетчик для триггирования) получается снимать/записывать сигнал и подсчитывать импульсы.
Встал вопрос об направлении и я завис. Логически понимаю что по опережению одного из каналов, но не могу придумать алгоритм действий для этого.
В данный момент пробую вычислять ширину импульсов и если она больше чем у 2х предыдущих в N раз принимаю за обратное направление - срабатывает если при смене направления на обоих входах логические 0 (рис.1). Также пытался исключать такие широкие импульсы и смотреть по опережению, но опять же срабатывает через раз.
Я понимаю, что данный подход не корректен в большинстве случаев, поэтому прошу помощи у участников форума.
Как можно определить направление вращения?
Вложения
00.jpg
01.jpg

Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
professor
professor
Сообщения: 4922
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Репутация: 0
Версия LabVIEW: 2015, 2016
Откуда: СССР

Re: Направление вращения энкодера

Сообщение IvanLis »

bee писал(а):Как можно определить направление вращения?

Посмотрите: http://easyelectronics.ru/avr-uchebnyj- ... koder.html

Blackman

Activity
leader
leader
Сообщения: 918
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Репутация: 0
Версия LabVIEW: 6.1,8.5,20
Контактная информация:

Re: Направление вращения энкодера

Сообщение Blackman »

У Вас же четко видно изменение фазы между сигналами. В начале сигнал красного плота опережает сигнал белого плота на 90 град, а при смене направления вращения уже сигнал белого плота опережает сигнал красного плота на 90 град. Поставьте фазовый детектор и все.

bee
junior
junior
Сообщения: 51
Зарегистрирован: 12 июн 2013, 09:04
Репутация: 0
Версия LabVIEW: 2014
Контактная информация:

Re: Направление вращения энкодера

Сообщение bee »

Всем спасибо за участие.
С фазовым детектором не получилось реализовать, воспользовался подходом, который рекомендовал IvanLis.
Для показанных ранее наборов данных программа справляется с определением направления, но при увеличении частоты опроса датчика происходит сдвиг фаз и соответственно ошибки при обработке.
В приложении - то что получилось на данный момент + наборы данных.

Вопрос : Как избавиться от "сдвига" фаз при сборе данных (как на рис.1)
Вложения
02.jpg
MGTR_12.vi
(46.25 КБ) 115 скачиваний
Data.rar
(3.21 КБ) 129 скачиваний

Blackman

Activity
leader
leader
Сообщения: 918
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Репутация: 0
Версия LabVIEW: 6.1,8.5,20
Контактная информация:

Re: Направление вращения энкодера

Сообщение Blackman »

Этот девайс поддерживает подключение энкодеров напрямую к счетчикам импульсов. Любой пример DAQmx по измерению положения будет работать с этим модулем.
Если хотите сделать на DI Task надо увеличивать Sample rate задачи. Минимальный Sample rate оценивается по следующей формуле: Кол. Имп. на один оборот*Число оборотов в сек макс. * 4. Это значение надо увеличить с учетом ошибки сдвига фазы сигналов энкодера. Для указанного типа энкодера эта ошибка равна 12,5 %. (1/8 периода).

Ответить

Вернуться в «Железо»