roboforum.ru

Технический форум по робототехнике.

Энкодер

Энкодер

KiCom » 30 янв 2006, 15:01

Похоже одними сервами в манипуляторе я не отделаюсь, возникла потребность в энкодерах, а для работы с энкодерами как я понимаю нужны "ножки" с прерываниями а в МК до mega64 их всего 3 а мне как минимум нужно 4. В mega64 их целый порт, но он квадратный какой-то :), да и куда мне столько. Как быть?

Re: Энкодер

avr123.nm.ru » 30 янв 2006, 16:09

KiCom писал(а):Как быть?


взять мегу 128 и работать дальше над проектом.

а можно Тини26 там 11 помоему внешних прерываний.

KiCom » 30 янв 2006, 16:31

Возможно бред но всетаки, МК я управляю с копмьютера по средствам COM порта, что если второй МК подцепить паралельно первому, будет ли от также принимать команды с COM порта? Если не таким способом то наверно можно как-то организовать передачу с одного МК на другой.

Re: Энкодер

ASin » 30 янв 2006, 17:06

KiCom писал(а):Похоже одними сервами в манипуляторе я не отделаюсь, возникла потребность в энкодерах, а для работы с энкодерами как я понимаю нужны "ножки" с прерываниями а в МК до mega64 их всего 3 а мне как минимум нужно 4. В mega64 их целый порт, но он квадратный какой-то :), да и куда мне столько. Как быть?


В Tiny обычно есть Pin Change Interrupt
Немного больше гемора, чем с обычными прерываниями, зато много ног :).

KiCom » 30 янв 2006, 17:53

Под понятием мемного больше гемора что понимать? В моем tiny 2313 такой целый порт B

avr123.nm.ru » 30 янв 2006, 17:54

KiCom писал(а):я управляю с копмьютера по средствам COM порта, что если второй МК подцепить паралельно первому, будет ли от также принимать команды с COM порта?

наверно можно как-то организовать передачу с одного МК на другой.


конечно на него будут поступать эл. сигналы от ком порта - а как их воспринимать дело программы МК.  т.е. для различия сигналов нужны какието метки, преамбулы в пакетах или их отсутствие.

KiCom » 30 янв 2006, 17:58

Тоесть конфликта не будет. А уж метки сделать всегда можно, мне . Ну тогда просто сделаю несколько МК.

ASin » 30 янв 2006, 18:18

KiCom писал(а):Под понятием мемного больше гемора что понимать? В моем tiny 2313 такой целый порт B


Гемор в том, что при срабатывании прерывания непонятно, какая именно нога изменилась. Т.е. надо где-то хранить предыдущие значения, сравнивать, и т.д. Не большой гемор, но всё же.

=DeaD= » 30 янв 2006, 23:12

Вы так пишете, как будто у вас каждая нога будет хотя-бы 1000 раз в секунду меняться - вешайтесь на таймер и смотрите состояние всех ног на отдельном МК. При этом общение с центральным МК делайте по какому-нибудь I2C. И будет у вас хоть 30 входов на ваши энкодеры :)

avr123.nm.ru » 31 янв 2006, 11:04

можно сигналы подать на простые входы МК + диоды с них кинуть  на 1 вход с прерыванием. По прерыванию програмно определять какая нога изменилась.

KiCom » 01 фев 2006, 14:04

Спасибо за идеи.
Фотоэлеметы для энкодера я хочу взять из мышки, но немогу понять как они работают. Есть пара элементов "белый" две ножки и "черный" три ножки, белый как я понял излучает свет черный принимет. Мерил напряжение на ножках, на ножках белого 1 вольт всегда вне зависимости есть ли между ними бумажка или нет, но откуда там 1 вольт мне непонятно странно как-то. Напряжение на черном между крайними ножками 3 вольта если бумажки нет, 4 вольта если бумажка закрывает его. Напряжение между центрально и любой из крайних нет. Как это все использовать?
Вложения
1.jpg
1.jpg (4.88 КиБ) Просмотров: 3434

Andrew313 » 11 фев 2006, 03:54

Белый с двумя выводами - это ИК-светодиод.
Черный с тремя выводами - ДВА ИК-фотодиода соединенные, если я правильно помню, общим анодом.
Можно включить параллельно (соединить две внешние ножки), если не потребуется в энкодере определять
направление вращения/движения.
:idea:

xapc » 09 мар 2006, 23:26

А каким способом определить направление вращения?
Чем отличаются сигналы вращения по часовой стрелке и против? :?:

Карлсон » 09 мар 2006, 23:44

Чем отличаются сигналы вращения по часовой стрелке и против?


очередностью затемнения датчика.

lebaon » 10 мар 2006, 16:54

фазой :wink:


Rambler\'s Top100 Mail.ru counter