Форум » Для начинающих. » определение направления вращения лебёдки » Ответить

определение направления вращения лебёдки

filaret111: Всем привет! кто сможет подсказать как програмно реализовать следующее: имеется электрическая лебёдка. к ней подключается датчик состоящий из 2х оптодатчиков, пик должен с одного считывать колличество импульсов, а за счёт другого определять направление вращения лебёдки. причём при вращении в одном направлении надо чтобы импульсы инкрементировались, а в другом- декрементировались??? буду рад любым предположениям! заранее спасибо!

Ответов - 11

Bigor: Подобная задача объяснена в серии статей А. Долгого "Разработка и отладка устройств на МК". Начало в Радио №5 2001 г. стр. 17-19.

Ruslan Lipin: на двух оптодатчиках вряд ли получится. Я делал на 3-х герконах.

MAZ: можно на двух. каждый датчик считает импульсы. Тот который первый видит импульс, передний фронт, тот и определяет направление. В мышке компьютерной два датчика, отлично определяет и направление и количество импульсов. Почитайте про энкодеры.


Photographer: filaret111 пишет: имеется электрическая лебёдка. к ней подключается датчик состоящий из 2х оптодатчиков, То есть датчики там уже стоят родные? или сам будешь придумывать? filaret111 пишет: пик должен с одного считывать колличество импульсов, а за счёт другого определять направление вращения лебёдки. Обычно направление движения определяется минимум по двум датчикам, как в энкодере (валкодере). Скачай даташит на 3-х пиновый энкодер и изучи таблицу срабатываний. Потом для начала надо составить таблицу срабатывания датчиков на лебёдке, чтобы понять алгоритм (количество импульсов на 1 оборот вала и очерёдность следования импульсов при вращении в разных направлениях. Поняв алгоритм - приступишь к составлению программы. Выкладывай по больше материала (исходные данные), чтобы не гадать на кофейной гуще. Слегка опоздал с ответом

filaret111: Photographer пишет: То есть датчики там уже стоят родные? или сам будешь придумывать? электронную часть сам буду делать на диодно-транзисторных щелевых датчиках НОА2001-001. таблица срабатывания такая: счёт направление 0 0 1 0 1 1 0 1 0 0 Пока единственное что приходит в голову это уход в прерывания-одно или другое, в зависимости от того на каком датчике первой появилась еденица

sokur: Если достаточна точность подсчета пол-оборота (+/- четверть), то можно контролировать один датчик (опрос или прерывание), а по фронту производить приращение счётчика. Знак приращения определяет второй датчик в этот момент.

Photographer: Алгоритм стандартный как на энкодерах. Соответственно, надо бы подсмотреть где нибудь обработчик энкодера. Прикинь скорость срабатываний в секунду. Если высокая, то логично сделать через прерывания. Но по моему на столько высокая, так что не обязательно. Разве что ради удобства. Мне тоже в ближайшее время предстоит делать драйвер энкодера, пока поделиться нечем, но можно будет сравнивать и обмениваться по ходу дела. Надо бы в протеусе набросать, но что то там не нахожу 3-х пиновых энкодеров.

Photographer: Тебе повезло. Есть в Протеусе движок с энкодером. click here Можно заняться отладкой прямо в МПЛАБе. Теперь ищем обработчик.

MAZ: http://zalil.ru/30893902 меня часто выручает. и легко и просто

Photographer: Ты о RS триггере? или о механической части? Использовать дополнительную микросхему конечно можно в некоторых случаях, но чаще - выигрыша ни какого. Те же 2 пина задействованы. Разве что программа слегка упростится. Но программный обработчик много места и ресурсов не займёт, а использовать можно хоть сколько, без вложений и усилий.

MAZ: и о триггерах и о идеи, которую можно сделать на мк. Но лучше на триггерах возле датчика. Более помехозащищенная. Там двигатели трехфазные и т.д.



полная версия страницы