Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

Закрытая тема
Опции темы
Непрочитано 23.04.2010, 19:35   #1
umkamaks
Временная регистрация
 
Регистрация: 31.01.2009
Сообщений: 63
Сказал спасибо: 5
Сказали Спасибо 13 раз(а) в 13 сообщении(ях)
umkamaks на пути к лучшему
По умолчанию Подключение инкрементального энкодера к AVR

Уважаемые инженеры, любители и начинающие программисты, я студент, и мне нужна Ваша помощь!
Мне необходимо разработать девайс индикации перемещения суппорта станка.
Исходные данные:
--Датчик ОС по положению - инкрементальный энкодер 1024 имп/об, 6 сигнальных выхода (А, А, В, В и z ,z);
--Микроконтроллер AVR - на мое усмотрение;
--LCD дисплей - на мое усмотрение;
--шаг винта 10 мм\об.

Проблемы с которыми я столкнулся:
-- не могу подружить энкодер с МК.
Кто сталкивался с такой задачей? Может дадите полезные советы, а еще лучше кусок схемной или программной реализации! буду очень благодарен!
Реклама:
umkamaks вне форума  
Непрочитано 23.04.2010, 19:44   #2
Aleksashka1
Прописка
 
Регистрация: 25.10.2008
Сообщений: 125
Сказал спасибо: 1
Сказали Спасибо 36 раз(а) в 26 сообщении(ях)
Aleksashka1 на пути к лучшему
По умолчанию Re: подключение инкрементального энкодера к AVR

В начале нужно найти у энкодера выводы, которые размыкаются при вращении ручки (обычно 2 из 3-х, последний замыкается на корпус). Затем подключаем найденные выводы к входам МК подтянутым дополнительными резисторами (2...20 кОм) к +5В, параллельно входам МК ставим по конденсатору емкостью около 0,1 мкФ.
В качесте входов МК можно выбрать любой, но мне больше импонируют входы внешних прерываний.
Пишем программу для МК, в которой:
а) либо с определенным интервалом считываем состояния входов;
б) либо ждем события на входе внешнего прерывания.
Далее сравниваем что сработало и либо увеличиваем значение некоторой переменной, либо ее уменьшаем.
PS Надеюсь такое приближение к логике работы Вам поможет больше чем готовая схема и кусок кода.
Aleksashka1 вне форума  
Непрочитано 23.04.2010, 20:03   #3
umkamaks
Временная регистрация
 
Регистрация: 31.01.2009
Сообщений: 63
Сказал спасибо: 5
Сказали Спасибо 13 раз(а) в 13 сообщении(ях)
umkamaks на пути к лучшему
По умолчанию Re: подключение инкрементального энкодера к AVR

Сообщение от Aleksashka1 Посмотреть сообщение
В начале нужно найти у энкодера выводы, которые размыкаются при вращении ручки (обычно 2 из 3-х, последний замыкается на корпус). Затем подключаем найденные выводы к входам МК подтянутым дополнительными резисторами (2...20 кОм) к +5В, параллельно входам МК ставим по конденсатору емкостью около 0,1 мкФ.
В качесте входов МК можно выбрать любой, но мне больше импонируют входы внешних прерываний.
Пишем программу для МК, в которой:
а) либо с определенным интервалом считываем состояния входов;
б) либо ждем события на входе внешнего прерывания.
Далее сравниваем что сработало и либо увеличиваем значение некоторой переменной, либо ее уменьшаем.
PS Надеюсь такое приближение к логике работы Вам поможет больше чем готовая схема и кусок кода.
На сколько я понимаю канал А и В - это квадратичные сигналы сдвинутые относительно друг друга на 90 гр, которые в зависимости от вращения энкодера показывает направление вращения,если первый сигнал с канала А то в одну сторону, если с канала В то в другую, а канал Z - нуль метка энкодера, которая показывает что энкодер сделал оборот, я думаю что нульметку тоже необходимо заводить на МК! или может я чего то не понимаю?

Ваш вариант подключения подойдет в бытовом применении, таких как регулировка звука, света, и др., вообщем там где точность в принципе не важна, а в моем случае нужно отслеживать вплоть до микрон.

P.S разобрал стойку NC 200, проследил по монтажной схеме выходы с энкодера, они идут на приемник КР559ИП11, а потом на МК, и все 3 сигнала заходят на МК, так что отказываться от стробирующего сигнала не стоит.

Последний раз редактировалось umkamaks; 23.04.2010 в 20:13.
umkamaks вне форума  
Непрочитано 23.04.2010, 20:08   #4
vsky
Вид на жительство
 
Регистрация: 28.02.2009
Сообщений: 338
Сказал спасибо: 24
Сказали Спасибо 52 раз(а) в 48 сообщении(ях)
vsky на пути к лучшему
По умолчанию Re: подключение инкрементального энкодера к AVR

боюсь, что пред-предыдущий пост ошибочен.

с помощью дифференциальных приёмников из А, неА получаем фазу А.
Аналогично фазы В и Z. А далее как советовал
Aleksashka1,
Лично я А и В завёл бы на два D триггера и логический вентиль, что бы получить два сигнала: шаг и направление.

на прерывание заводить шаг и Z (сигнал нулевого положения-формируется при каждом полном обороте )

оборотов много - надо предусмотреть датчики начального и конечного положения суппорта.

Последний раз редактировалось vsky; 23.04.2010 в 20:18.
vsky вне форума  
Непрочитано 23.04.2010, 20:11   #5
vsky
Вид на жительство
 
Регистрация: 28.02.2009
Сообщений: 338
Сказал спасибо: 24
Сказали Спасибо 52 раз(а) в 48 сообщении(ях)
vsky на пути к лучшему
По умолчанию Re: подключение инкрементального энкодера к AVR

сорри, опередили.

а ещё лучше взять PIC18F2431(4431)
на микрочипе есть пример его использования
vsky вне форума  
Непрочитано 23.04.2010, 20:22   #6
umkamaks
Временная регистрация
 
Регистрация: 31.01.2009
Сообщений: 63
Сказал спасибо: 5
Сказали Спасибо 13 раз(а) в 13 сообщении(ях)
umkamaks на пути к лучшему
По умолчанию Re: подключение инкрементального энкодера к AVR

Сообщение от vsky Посмотреть сообщение
сорри, опередили.

а ещё лучше взять PIC18F2431(4431)
на микрочипе есть пример его использования
а по подробней можно? плаваю в общих фразах, мне бы по конкретнее! А то все равно что говорить с иностранцем зная несколько рабочих фраз!
может имеете ссылку на какой нить ресурс, что бы по подробнее разобраться!
umkamaks вне форума  
Непрочитано 23.04.2010, 20:31   #7
vsky
Вид на жительство
 
Регистрация: 28.02.2009
Сообщений: 338
Сказал спасибо: 24
Сказали Спасибо 52 раз(а) в 48 сообщении(ях)
vsky на пути к лучшему
По умолчанию Re: подключение инкрементального энкодера к AVR

http://www.fpga4fun.com/QuadratureDecoder.html
vsky вне форума  
Непрочитано 23.04.2010, 20:38   #8
umkamaks
Временная регистрация
 
Регистрация: 31.01.2009
Сообщений: 63
Сказал спасибо: 5
Сказали Спасибо 13 раз(а) в 13 сообщении(ях)
umkamaks на пути к лучшему
По умолчанию Re: подключение инкрементального энкодера к AVR

Сообщение от vsky Посмотреть сообщение
http://www.fpga4fun.com/QuadratureDecoder.html
а Z куда заводить и что с ним делать?
umkamaks вне форума  
Непрочитано 23.04.2010, 20:38   #9
vsky
Вид на жительство
 
Регистрация: 28.02.2009
Сообщений: 338
Сказал спасибо: 24
Сказали Спасибо 52 раз(а) в 48 сообщении(ях)
vsky на пути к лучшему
По умолчанию Re: подключение инкрементального энкодера к AVR

Сообщение от umkamaks Посмотреть сообщение
мне бы по конкретнее!

если допустимо перейти на PIC, то посмотрите вот это:
Вложения:
Тип файла: pdf 00899a.pdf (608.0 Кб, 1016 просмотров)
vsky вне форума  
Непрочитано 23.04.2010, 20:42   #10
vsky
Вид на жительство
 
Регистрация: 28.02.2009
Сообщений: 338
Сказал спасибо: 24
Сказали Спасибо 52 раз(а) в 48 сообщении(ях)
vsky на пути к лучшему
По умолчанию Re: подключение инкрементального энкодера к AVR

Сообщение от umkamaks Посмотреть сообщение
а Z куда заводить и что с ним делать?
по этому сигналу (можно не вешать на прерывание, если аппаратно будете формировать сигналы шаг и направление) Вы будете сбрасывать программный счётчик положения (0...1023)

но этот счётчик работает только в пределах одного оборота, считайте 10мм хода суппорта
vsky вне форума  
Сказали "Спасибо" vsky
umkamaks (23.04.2010)
Закрытая тема

Закладки

Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
"Глюк" AVR таймера от кварца 32768 Гц alexgap Коллекция глюков 23 16.09.2013 07:29


Часовой пояс GMT +4, время: 02:11.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot