HRP-N3 - серия источников питания с максимальной пиковой мощностью в 350% от MEAN WELL

Как опросить валкодер?

Страница 1 из 2
Знаток
 
Аватар для salyamkamrad
 
Регистрация: 07.10.2009
Адрес: А кому интересно?
Сообщений: 375
Репутация: 71
62 15
1 1
 
08.10.2009 03:42 #1
Может уважаемые знатоки микроконтроллерной техники подскажут, как организовать опрос валкодера? Например, есть валкодер, на выходах которого при вращении вала появляются прямоугольные импульсы, сдвинутые по фазе в ту или иную сторону в зависимости от направления вращения вала. Ну, заведу я эти сигналы на ножки микроконтроллера, а дальше что с ними делать?
Оценка
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей.
Знаток
 
Аватар для salyamkamrad
 
Регистрация: 07.10.2009
Адрес: А кому интересно?
Сообщений: 375
Репутация: 71
62 15
1 1
 
10.10.2009 13:52 #2
Хорошо, поставлю вопрос по другому. Как избавиться от необходимости постоянно опрашивать состояние выходов валкодера? Пока что вижу только один путь, в ходе выполнения программы зашитой в микроконтроллер периодически переходить в подпрограмму опроса состояния выходов валкодера, и при если уровни на них меняются, определить последовательность изменения уровней из чего определим направление вращения вала, а затем считать количество изменений, что будет соответствовать углу поворота (или скорости вращения вала). Но, такой способ сожрет немало ресурсов, отнимая их от выполнения контроллером более важных задач. Если учесть, что мне требуется еще опрос клавиатуры, обращение к АЦП и портам, некоторые математические вычисления,боюсь, у контроллера сил не хватит на все Как же все таки организовать считывания данных с валкодера?
Оценка
Гуру
 
Регистрация: 13.05.2006
Сообщений: 3,908
Репутация: 1246
1,233 65
59 33
 
10.10.2009 19:45 #3
Цитата:
на выходах которого при вращении вала появляются прямоугольные импульсы, сдвинутые по фазе в ту или иную сторону в зависимости от направления вращения вала
Четыре импульсные последовательности по две взаимоинверсные в каждой фазе. Сдвиг 90 градусов. Обычно. Как-зависит от вашей задачи. Поставьте её себе правильно или заставьте ставящих вам эту задачу привести её к правильной формулировке. А за вас задачу никто не решит.
Оценка
Знаток
 
Аватар для salyamkamrad
 
Регистрация: 07.10.2009
Адрес: А кому интересно?
Сообщений: 375
Репутация: 71
62 15
1 1
 
10.10.2009 20:08 #4
Вот я ее и решаю в данный момент Надумал следующее, вместо того, что бы заводить сигналы с обоих выходов валкодера на ноги микроконтроллера, попытаюсь сначала подать их на вход фазового детектора, который будет определять направление вращения валкодера. С его выхода ноль или единица (в зависимости от направления вращения) будут подаваться на один из выводов порта микроконтроллера. Контроллеру не придется заниматься задачей определения направления вращения, одного зайца я таким образом убиваю наповал Остается только подсчитывать импульсы с одного из выходов валкодера определяя угол поворота или скорость вращения, все, второй заяц мертв! Как считаете, я ничего лишнего или неосуществимого не напридумывал?
Оценка
Гуру
 
Регистрация: 13.05.2006
Сообщений: 3,908
Репутация: 1246
1,233 65
59 33
 
10.10.2009 20:18 #5
Цитата:
я ничего лишнего или неосуществимого не напридумывал
Нет конечно. Подобная задача решается с помощью перываний. MCU и в роли фазового детектора и в роли остального. Программно.
Оценка
Знаток
 
Аватар для salyamkamrad
 
Регистрация: 07.10.2009
Адрес: А кому интересно?
Сообщений: 375
Репутация: 71
62 15
1 1
 
10.10.2009 21:38 #6
В том то и дело, что хочу сделать аппаратный (хотя какой там аппаратный, одна микросхема) фазовый детектор, чтобы не грузить мк лишними циклами. Хотя, программный способ тоже испытаю, нужно сравнить оба метода. А за прерывания спасибо действительно, сейчас только подумал, вместо циклического опроса просто сделать переход в подпрограмму слежения за валкодером по прерыванию, не придется его постоянно контролировать.
Оценка
Новичок
 
Регистрация: 13.02.2008
Адрес: Ставрополь
Сообщений: 493
Репутация: 39
30 30
0 0
 
20.10.2009 19:51 #7
Я решал эту проблему. Я организовывал опрос валкодера по прерываниям таймера, а затем идет анализ изменения уровней на входах.
Частота опроса примерно 1500Гц. Один микроконтроллер PIC18F452 опрашивал два валкодера. И управлял двумя шаговыми двигателями.
Если нужно больше инфи попробую найти из того что осталось после проекта.
Оценка
Новичок
 
Регистрация: 27.10.2009
Сообщений: 1
Репутация: 10
 
27.10.2009 12:23 #8
Обработка сигнала - при вращении в одну сторону, имеем на двух ногах которые участвуют в опросе валкодера чередование импульсов, грубо - 1,2,1,2,1,2 и т.д. А при вращении в другую -2,1,2,1,2,1 и т.д.
Обычно для подсчета используется табличка "истинности". Очередь импульсов сравнивается с табличкой, в результате знаем в какую сторону крутится ручка.
Оценка
Гуру
 
Регистрация: 13.05.2006
Сообщений: 3,908
Репутация: 1246
1,233 65
59 33
 
29.10.2009 08:58 #9
Цитата:
Очередь импульсов сравнивается с табличкой, в результате знаем в какую сторону крутится ручка
В какую сторону крутится ручка узнаём мгновенно по сдвигу фаз сигналов без всяких табличек. Сдиг сигналов относительно друг друга для чёткого детектирования направления 90 градусов.
Оценка
Специалист
 
Регистрация: 16.07.2009
Сообщений: 1,282
Репутация: 278
269 189
0 0
 
31.10.2009 17:27 #10
Алгоритм программной обработки валкодера - http://datagor.ru/microcontrollers/3...-valkoder.html
Оценка
Ответ
Страница 1 из 2
Похожие темы
Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

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

Быстрый переход
Электронные компоненты. Бесплатная доставка по России
Часовой пояс GMT +3, время: 05:07.
Обратная связь РадиоЛоцман Вверх