|
Обработка инкрементального энкодера |
|
|
|
Nov 17 2008, 09:15
|

Местный
  
Группа: Свой
Сообщений: 473
Регистрация: 10-09-06
Из: Тольятти. Самарская обл.
Пользователь №: 20 249

|
Мат. часть: Вал шагового двигателя соединен с оптическим инкрементальным энкодером посредством эластичной трубки. Двигатель работает на холостом ходусо скоростью 2 об/мин. Энкодер обрабатывается atmegoй следующим образом: Сигнал с канала A вызывает прерывание INT1. В зависимости от сигнала на ножке PC1 инкрементируется или декрементируется переменная pulses Код /* Внешнее прерывание INT1 (счетчик импульсов энкодера) */ // На вход INT1 приходят импульсы от выхода A энкодера // На вход PC1 приходят импульсы от выхода B энкодера ISR(INT1_vect) { if (PINC & 0x02) pulses++; else pulses--; } Точность ужасная. Погрешность видимо связана с высокочастотным дребезгом вала при завершении шага. Кто что может посоветывать по этому поводу?
--------------------
Если все, то не я...
|
|
|
|
|
 |
Ответов
|
Nov 17 2008, 12:51
|

Местный
  
Группа: Свой
Сообщений: 473
Регистрация: 10-09-06
Из: Тольятти. Самарская обл.
Пользователь №: 20 249

|
Цитата(Vokchap @ Nov 17 2008, 15:59)  Обработку на логике ИМХО сделать удобнее всего, если она уже стоит на борту. Не тратятся ресурсы микроконтроллера на такую пустяшную вещь. Я вот так всегда делаю. Даже на механических энкодерах работает безотказно. На выходе готовые сигналы: на прерывание и на знак.
Что-то смысла не улавливаю... С энкодера итак идет сигнал прерывания и знака (см. обработчик в 1м посте). Только вот дребезг устранить нужно. Зачем схему-то городить? Вот у техасовских дсп на борту обработчик инкрементального энкодера есть - конфетка. Работает как счетчик, причем считает по каждому фронту каждого канала. Получается энкодер 250 имп./об имеет разрешающую способность как 1000 имп./об.
--------------------
Если все, то не я...
|
|
|
|
|
Nov 17 2008, 13:04
|

Профессионал
    
Группа: Админы
Сообщений: 1 884
Регистрация: 15-07-06
Из: Новосибирск, Россия
Пользователь №: 18 835

|
Цитата(PhX @ Nov 17 2008, 15:51)  Что-то смысла не улавливаю... С энкодера итак идет сигнал прерывания и знака (см. обработчик в 1м посте). Только вот дребезг устранить нужно. Зачем схему-то городить? Для того и городить, чтобы дребезг устранить. На выходе логики сигналы чистые, готовые для инк./дек. счетчика без доп. обработки контроллером на устранение дребезга. Цитата(PhX @ Nov 17 2008, 15:51)  Вот у техасовских дсп на борту обработчик инкрементального энкодера есть - конфетка. Работает как счетчик, причем считает по каждому фронту каждого канала. Получается энкодер 250 имп./об имеет разрешающую способность как 1000 имп./об. Так вариант сделать тоже самое на МК не сложно, если ресурсов хватает....
|
|
|
|
Сообщений в этой теме
PhX Обработка инкрементального энкодера Nov 17 2008, 09:15 haker_fox Цитата(PhX @ Nov 17 2008, 17:15) Мат. час... Nov 17 2008, 09:43 PhX Цитата(haker_fox @ Nov 17 2008, 13:43) Гм... Nov 17 2008, 09:50  haker_fox Цитата(PhX @ Nov 17 2008, 17:50) Штука вс... Nov 17 2008, 10:08   PhX Цитата(haker_fox @ Nov 17 2008, 14:08) ну... Nov 17 2008, 10:14    haker_fox Цитата(PhX @ Nov 17 2008, 18:14) Да почем... Nov 18 2008, 03:27     PhX Цитата(haker_fox @ Nov 18 2008, 07:27) Вс... Nov 18 2008, 04:05      evgeny_ch Цитата(PhX @ Nov 18 2008, 08:05) Ну для д... Nov 18 2008, 04:22       PhX Цитата(evgeny_ch @ Nov 18 2008, 08:22) Ес... Nov 18 2008, 04:31        evgeny_ch Цитата(PhX @ Nov 18 2008, 08:31) Евгений,... Nov 18 2008, 04:52       dxp Цитата(evgeny_ch @ Nov 18 2008, 10:22) Ес... Nov 18 2008, 05:11        dpss Цитата(dxp @ Nov 18 2008, 08:11) Только (... Nov 18 2008, 17:04         haker_fox Цитата(dpss @ Nov 19 2008, 01:04) у таких... Nov 19 2008, 03:22          dpss Цитата(haker_fox @ Nov 19 2008, 06:22) ИМ... Nov 19 2008, 18:12           haker_fox Цитата(dpss @ Nov 20 2008, 02:12) Посмотр... Nov 20 2008, 02:45            PhX Цитата(haker_fox @ Nov 20 2008, 06:45) По... Nov 20 2008, 04:09             haker_fox Цитата(PhX @ Nov 20 2008, 12:09) Я знаю ч... Nov 20 2008, 07:03      haker_fox Цитата(PhX @ Nov 18 2008, 12:05) p.s. Да,... Nov 18 2008, 08:45  Adviser Цитата(PhX @ Nov 17 2008, 12:50) Спасибо ... Nov 17 2008, 11:01 _Pasha Цитата(PhX @ Nov 17 2008, 13:15) Точность... Nov 17 2008, 11:22 PhX Цитата(_Pasha @ Nov 17 2008, 15:22) Вы то... Nov 17 2008, 11:34 evgeny_ch Цитата(PhX @ Nov 17 2008, 13:15) Мат. час... Nov 17 2008, 11:40 PhX Цитата(evgeny_ch @ Nov 17 2008, 15:40) Уж... Nov 17 2008, 11:56  evgeny_ch Цитата(PhX @ Nov 17 2008, 15:56) Абсолютн... Nov 17 2008, 12:57 Alex11 Вот еще вариант программной реализации. Код вызыва... Nov 18 2008, 11:10 evgeny_ch ЦитатаAny sin/cos-encoder, with analog output sign... Nov 19 2008, 04:03 PhX Добавление НЧ фильтра не помогло. Хотя прямоугольн... Nov 19 2008, 04:11 MaslovVG Цитата(PhX @ Nov 17 2008, 12:15) Мат. час... Nov 19 2008, 08:18 PhX Цитата(MaslovVG @ Nov 19 2008, 12:18) У в... Nov 19 2008, 09:05  haker_fox Цитата(PhX @ Nov 19 2008, 17:05) Вот СПАС... Nov 19 2008, 09:13   PhX Цитата(haker_fox @ Nov 19 2008, 13:13) Да... Nov 19 2008, 09:49 arisov При изготовлении своего варианта сервоконтроллера ... Feb 7 2009, 13:00 haker_fox Цитата(arisov @ Feb 7 2009, 21:00) При из... Feb 7 2009, 17:24 blackfin Может, уже была ссылка на обсуждение, но все же: .... Feb 7 2009, 13:35 arisov Итогов пока я там не заметил, но может плохо искал... Feb 7 2009, 13:55 _Pasha Вопрос с подвохом : а всегда ли сигналы с энкодер... Feb 8 2009, 12:23 arisov Цитата(haker_fox @ Feb 7 2009, 20:24) Ваш... Feb 8 2009, 20:50 _Pasha Цитата(arisov @ Feb 9 2009, 00:50) Если В... Feb 9 2009, 11:11 arisov Спасибо, про ферриты как то подзабыл, хотя своё вр... Feb 9 2009, 11:33 _Pasha Цитата(arisov @ Feb 9 2009, 14:33) Надо ... Feb 9 2009, 11:41 arisov Да я видел такие схемы на SN75115N, например.
Толь... Feb 9 2009, 11:49
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|