Обсуждаем контроллеры компании Atmel.
Ответить

Re: Подключение 2х абсолютных энкодеров

Пт июл 05, 2019 09:24:31

Jack_A, Ну - у вас 8 входов АЦП (коих в восьмой меге в дипе всего 6 :( ), у меня 2.
И ваше сопряжение не отменяет к.з. между каналами и влияние соседнего энкодера.
Суть - не соединять энкодеры друг с другом никак.
R-2R будет давать 256 уровней. И состояние энкодера вычисляется одним запуском АЦП. Как раз настроить бит ADLAR в 1 - и брать старший байт результата преобразования. Теоретически, при использовании 1% резисторов должно получиться.....

Добавлено after 1 minute 20 seconds:
Так , стоп. R-2R не катит.
Он требует на входе push-pull, а тут вход или в воздухе или подключен к С (земля или питание).
Говорю ж - в порядке бреда идея была

Re: Подключение 2х абсолютных энкодеров

Пт июл 05, 2019 09:36:49

пошто не катит? катит, только нагрузку на выход надо (желательно низкоомную, чтобы напряжение на матрице сильно не менялось)
ещё, 256 значений - довольно тонко... если сделать 2х4бит, то будет только 16 уровней напряжения (но 2 выхода = 2 ноги на энкодер)

Re: Подключение 2х абсолютных энкодеров

Пт июл 05, 2019 12:05:39

Матрица R-2R требует подтяжки своих входов либо к земле, либо к питанию. В воздухе оставлять вход нельзя, насколько я помню. А у этого энкодера выход либо подключен к С, либо в воздухе.... Ну и еще раз - R-2R - это так, мысли вслух. Оптимальной вижу диодную развязку. При двухсторонней плате развести 16 диодов получится сравнительно легко.

Добавлено after 6 minutes 57 seconds:
Еще бред.
Тиня 2313. 17 доступных GPIO.
16 - на энкодеры, 1 - Tx - отдает мастеру 2 байта при изменении состояния энкодеров.

Re: Подключение 2х абсолютных энкодеров

Пт июл 05, 2019 13:26:23

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

Re: Подключение 2х абсолютных энкодеров

Пт июл 05, 2019 14:06:55

...

Re: Подключение 2х абсолютных энкодеров

Пт июл 05, 2019 15:32:14

сдвиговые регистры?..

Нет, 155 — это два дешифратора 2 в 4 (или один 3 в 8, если входы правильно подключить).

Re: Подключение 2х абсолютных энкодеров

Пт июл 05, 2019 16:31:41

чето я не понял, как тут дешифраторы помогут...?

Re: Подключение 2х абсолютных энкодеров

Пт июл 05, 2019 19:35:36

Никак. Я опять забыл, что выводы замыкаются между собой. PISO регистры бы подошли типа 165/166/647.

Re: Подключение 2х абсолютных энкодеров

Пт июл 05, 2019 20:42:48

я понял как бы дешифраторы помогли...
выходы энкодеров сыитать входами, на каждый энкодер свой дешифратор, входы дешифраторов объединить, с общего вывода каждого энкодера последовательно снимать сигнал.

Re: Подключение 2х абсолютных энкодеров

Сб июл 06, 2019 08:43:02

Никаких дешифраторов не надо. Схема из поста 1. Подтяжки на D0, D1 (входы). B0..B7 - выходы. Пробегаем нулем по B0..B7, если на D0, D1 нуль, выставлям соответствующий бит в регистре, привязаноом к данному энкодеру. Прогу показать ?
Ну это при условии, что внутри энкодера чисто-тупо замыкание контактов, безо всяких диодов или чего похуже.
Код:
LDI   R16,0xFE ; маска
   LDI   R17,0xFF ; энк.1
   LDI   R18,0xFF ; энк.2
L:   OUT   PORTB,R16
   IN   R19,PIND
   BST   R19,0
   BRTS    L0
   AND   R17,R16
L0:   BST   R19,1
   BRTS    L1
   AND   R18,R16
L1:   ADD   R16,R16
   ORI   R16,1
   CMP   R16,0xFF
   BRNE   L
   

Код не проверялся. В зависимости от BRTS - BRTС получим код инверсный или прямой.

Re: Подключение 2х абсолютных энкодеров

Сб июл 06, 2019 09:11:36

Jack_A, а вот теперь представьте, энкодер А в положении 255 - все контакты 1..8 замкнуты на С (ну и, соответственно, между собой).
А энкодер В в положении, ну пусть 16 (контакт 5 замкнут на С). Энкодеры по схеме автора включены параллельно.
Т.е. выходы энкодера В тоже все вместе замкнуты между собой через энкодер А и через контакт 5 энкодера В замкнуты на его общий контакт С...
Что вы получите на D0,D1 ?
А получите вы по обоим энкодерам состояние 255. Ибо энкодеры включены параллельно, без развязки, и тут получается почти монтажное ИЛИ....
Почти - в данном случае можно отловить по энкодеру В только состояние 0. Когда ничего не замкнуто.
Без 16 диодов ваш вариант ничем не отличается от варианта автора читать весь порт сразу.
Последний раз редактировалось GoldenAndy Сб июл 06, 2019 14:26:54, всего редактировалось 1 раз.

Re: Подключение 2х абсолютных энкодеров

Сб июл 06, 2019 09:28:28

Да... Тогда, похоже, без диодов - никак. Но зато без дешифратора :)

Re: Подключение 2х абсолютных энкодеров

Сб июл 06, 2019 09:38:07

кстати если с дешифраторами и без диодов, то у дешифраторов выходы д.б. с открытым коллектором, а на вывод "С" сделать подтяжку (так не будет к.з. по ногам дешифратора через замкнутые контакты энкодера)
но это тоже уже в качестве офтопика...

Re: Подключение 2х абсолютных энкодеров

Сб июл 06, 2019 09:48:34

А такой вариант:
Порты С обоих энкодеров садим на порты контроллера, Z-состояние,
на порт С 1 энкодера подаем "0", порт С 2 энкодера в Z-состояние, считываем данные с 1 энкодера,
на порт С 2 энкодера подаем "0", порт С 1 энкодера в Z-состояние, считываем данные с 2 энкодера.

А вариант с регистрами HC373(ИР23)?

А этот вариант PCF8574 позволил бы по I2C шине работать.

Re: Подключение 2х абсолютных энкодеров

Сб июл 06, 2019 11:12:06

кстати если с дешифраторами и без диодов, то у дешифраторов выходы д.б. с открытым коллектором...

Да, такое заработает, вот только такой дешифратор тяжело найти. К155ИД15 — древняя TLL серия, жрёт много, а CMOS-аналога 74ls156 я что-то нагуглить не могу.

Re: Подключение 2х абсолютных энкодеров

Сб июл 06, 2019 14:29:27

мне то то подсказывает, что вариант 16 диодов + схема автора - самый дешевый и оптимальный вариант.

Re: Подключение 2х абсолютных энкодеров

Сб июл 06, 2019 16:03:58

Если бы диоды ещё сборкой шли, то было бы самое то. А так дуже много мелких деталей паять.

Re: Подключение 2х абсолютных энкодеров

Вс июл 07, 2019 09:39:20

B@R5uk, ну можно поискать сборку в SOT23 - там два катода один анод (или наоборот), но разводить это дело будет более неудобно, нежели 16 диодов в SOT89 или трухольных... В случае трухольных разводить даже легче еще ....

Re: Подключение 2х абсолютных энкодеров

Пн июл 08, 2019 14:14:14

Кстати, а как у этих, восьмиконтактных с надежностью контакта? А то у простых инкрементных бывают вот такие чудеса. А здесь? Ладно, в процессе переключения пусть трясется, как хочет, но по щелчку оно устаканится?

Добавлено after 5 minutes 52 seconds:
И вообще, я бы, вместо возни с диодами и прочей ерундой, добавил бы ног МК. Т.е. взял МК пожирнее.

Re: Подключение 2х абсолютных энкодеров

Вт июл 09, 2019 03:52:55

afz писал(а):по щелчку оно устаканится?
Кручу EAW0J-B24-AE0128L. Нет у него тактильного эффекта.
По контактированию. Пока 0,5...1мА через контакт не пропустишь, на выходе возможна лажа.
Вложения
энкодер_ток.GIF
(14.71 KiB) Скачиваний: 292
Ответить