|
Энкодер и дребезг, нужна помощь |
|
|
|
 |
Ответов
|
Sep 3 2013, 05:44
|
Частый гость
 
Группа: Участник
Сообщений: 191
Регистрация: 18-09-12
Из: Орёл
Пользователь №: 73 591

|
Тема конечно устарела, но сейчас столкнулся с тем же. Посадил выход от энкодера на внешнее прерывание на меге128 (INT2). Сразу побежал дребезг. Сделал напрямую на порт: Код m_value = PIND & (1 << PD2); if (m_value == 0){ m_trigger = 1; } else { if (m_trigger == 1){ ++m_counter; } m_trigger = 0; } всё хорошо стало. Потому что внешнее прерывание ещё использовать уметь надо.
|
|
|
|
|
Sep 4 2013, 20:02
|
Профессионал
    
Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439

|
Цитата(vladimir_orl @ Sep 3 2013, 09:44)  . Да не в умении даже дело. Прерывание почти каждый дребезг поймает, но и ваша система иногда будет напарываться. Простое решение это запретить прерывание как оно случилось и очистить его флаг на случай если вызвалось снова пока вызывался обработчик, запустить таймер на половину короткого интервала. По прерыванию таймера считать достоверное значение и снова разрешить прерывание от сигнала. Я делал обработчик в более удобной среде там было два смещенных датчика с перекрытием как синус и косинус. Правда надо было етхе регистрировать направление. Итого было четыре области, которые я мог различить. 00, 01, 11 и 10 если бит 0 еыто сигнал одного датчика, а бит 1 второго. Далее я построил машину состояний (автомат) с четырьмя состояниями и разрешил в ней переходы между состояниями, соответствующиими соседним значениям датчиков. То есть если я в состоянии 01, то переход в 11 или 00 возможен, а в 10 нет. Расстояние хемминга 1 инициирует переход. И моя модель крутилась вслед за датчиком.
Сообщение отредактировал IgorKossak - Sep 6 2013, 17:26
Причина редактирования: избыточное цитирование
|
|
|
|
Сообщений в этой теме
BigCoster Энкодер и дребезг Apr 11 2007, 18:24 Visor Цитата(BigCoster @ Apr 11 2007, 23:24) По... Apr 11 2007, 18:44 BigCoster Цитата(Visor @ Apr 11 2007, 18:44) Ошибка... Apr 11 2007, 18:49  Visor 200Гц довольно много. Крыльчатка правильно рассчит... Apr 11 2007, 18:58 scifi Надо посмотреть осциллографом. Тогда будет понятне... Apr 11 2007, 19:21 CD_Eater Цитатадатчик положения (у меня крыльчатка + оптиче... Apr 11 2007, 19:22 Dog Pawlowa Цитата(BigCoster @ Apr 11 2007, 18:24) По... Apr 11 2007, 22:00 Линь Цитата(Dog Pawlowa @ Apr 12 2007, 02:00) ... Apr 2 2014, 02:23 Stas633 Цитата(BigCoster @ Apr 11 2007, 19:24) По... Apr 11 2007, 22:18 BigCoster Цитата(Stas633 @ Apr 11 2007, 22:18) Счит... Apr 12 2007, 10:25  Stas633 Цитата(BigCoster @ Apr 12 2007, 11:25) У ... Apr 12 2007, 13:44   BigCoster Цитата(Stas633 @ Apr 12 2007, 13:44) Наст... Apr 12 2007, 14:29    Stas633 Цитата(BigCoster @ Apr 12 2007, 15:29) Ко... Apr 12 2007, 15:13     BigCoster Цитата(Stas633 @ Apr 12 2007, 15:13) Обще... Apr 12 2007, 15:30      Dog Pawlowa Ну, если счетчик считает при остановленном двигате... Apr 12 2007, 15:44       BigCoster Цитата(Dog Pawlowa @ Apr 12 2007, 15:44) ... Apr 12 2007, 16:13        Dog Pawlowa Цитата(BigCoster @ Apr 12 2007, 16:13) Чт... Apr 12 2007, 16:51        Stas633 Цитата(BigCoster @ Apr 12 2007, 17:13) Ал... Apr 12 2007, 17:03        Visor Цитата(BigCoster @ Apr 12 2007, 21:13) РА... Apr 12 2007, 17:13         Stas633 Цитата(Visor @ Apr 12 2007, 18:13) Чтоб э... Apr 12 2007, 18:14          Visor Цитата(Stas633 @ Apr 12 2007, 23:14) Вним... Apr 12 2007, 19:08           Stas633 Цитата(Visor @ Apr 12 2007, 20:08) ....на... Apr 13 2007, 10:36            Visor Цитата(Stas633 @ Apr 13 2007, 15:36) Если... Apr 13 2007, 19:38          Dog Pawlowa Цитата(Stas633 @ Apr 12 2007, 18:14) [b].... Apr 12 2007, 19:20      Stas633 Цитата(BigCoster @ Apr 12 2007, 16:30) Пр... Apr 12 2007, 15:55     Visor Цитата(Stas633 @ Apr 12 2007, 20:13) прог... Apr 12 2007, 15:51 bgc много раз делал подобные схемы - заводил на вход т... Apr 12 2007, 09:49 ZAO Цитата(BigCoster @ Apr 11 2007, 19:24) Я ... Apr 12 2007, 10:27 BigCoster Цитата(ZAO @ Apr 12 2007, 10:27) Как раз ... Apr 12 2007, 10:40  ZAO Цитата(BigCoster @ Apr 12 2007, 11:40) Вс... Apr 12 2007, 10:46   BigCoster Цитата(ZAO @ Apr 12 2007, 10:46) А что за... Apr 12 2007, 11:00 ZAO Вы вполне можете завести одно таймерное прерывание... Apr 12 2007, 11:41 BigCoster Цитата(ZAO @ Apr 12 2007, 11:41) Вы вполн... Apr 12 2007, 11:55  ZAO Цитата(BigCoster @ Apr 12 2007, 12:55) То... Apr 12 2007, 13:05  rx3apf Цитата(BigCoster @ Apr 12 2007, 12:55) То... Apr 12 2007, 13:28 BigCoster Вот осцилограмма работы датчика, записанная в Soun... Apr 12 2007, 14:04 Stas633 Цитата(BigCoster @ Apr 12 2007, 15:04) ..... Apr 12 2007, 14:43  BigCoster Цитата(Stas633 @ Apr 12 2007, 14:43) Поло... Apr 12 2007, 15:10 _artem_ если есть механичекое дрожение крыльчатки при оста... Apr 12 2007, 14:13 _Sam_ ЦитатаВот осцилограмма работы датчика
........
Из ... Apr 12 2007, 23:03 BigCoster Цитата(_Sam_ @ Apr 12 2007, 23:03) Конечн... Apr 13 2007, 10:23 _Sam_ ЦитатаДело в том что импульсы от датчика считает с... Apr 13 2007, 11:32 BigCoster Цитата(_Sam_ @ Apr 13 2007, 11:32) Полнос... Apr 13 2007, 15:44 BigCoster ещё допишу...
отображать совсем точно значения не ... Apr 13 2007, 17:30 _Sam_ Наверное я не так понял программу.
А что вы делает... Apr 13 2007, 18:27 BigCoster Цитата(_Sam_ @ Apr 13 2007, 18:27) Наверн... Apr 13 2007, 19:14 _Sam_ Вроде дошло.
Попробуйте скачать какую-нибудь тер... Apr 13 2007, 19:48 BigCoster Цитата(_Sam_ @ Apr 13 2007, 19:48) Вроде ... Apr 13 2007, 20:09  Dog Pawlowa Цитата(BigCoster @ Apr 13 2007, 20:09) ... Apr 14 2007, 10:03   Stas633 Цитата(Dog Pawlowa @ Apr 14 2007, 11:03) ... Apr 14 2007, 19:44 Visor 'BigCoster'
Я сторонник отладки частями, и... Apr 13 2007, 19:51 BigCoster Спасибо всем за ответы, многие из них очень информ... Apr 18 2007, 14:28 mandr Имею по работе проекты, в которых используются дат... May 17 2007, 14:46 BigCoster Я для себя решил, что без осциллографа схему менят... May 17 2007, 15:36 OlegIvanov 1. Двухканальный энкодер (о чем упоминалось выше),... May 23 2007, 22:51 MaslovVG Просмотрел ветку. Мое мнение. Подавить дребезг при... May 24 2007, 06:06   Tarbal Цитата(A. Fig Lee @ Sep 10 2013, 05:07) К... Sep 11 2013, 00:05    A. Fig Lee Цитата(Tarbal @ Sep 10 2013, 20:05) Я на ... Sep 11 2013, 02:14     Tarbal Цитата(A. Fig Lee @ Sep 11 2013, 06:14) М... Sep 13 2013, 13:30 Genadi Zawidowski Какая скорость прихода импульсов с валкодера? Разр... Sep 9 2013, 18:13 Tarbal Цитата(Genadi Zawidowski @ Sep 9 2013, 22... Sep 9 2013, 19:35 A. Fig Lee Цитата(Genadi Zawidowski @ Sep 9 2013, 14... Oct 3 2013, 20:53 A. Fig Lee Добил.
В принципе, избавлятся от дребезга в енкод... Oct 4 2013, 19:27 A. Fig Lee Состряпал hardware схемку.
Не тестировал, правда.
... Oct 4 2013, 20:28 Tarbal Подавитель дребезга на стейт машине не давит дребе... Oct 8 2013, 13:36
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|