Трёхфазный датчик движения и направления на логике.

Обсуждаем цифровые устройства...
Ответить
Родился
Аватара пользователя
Сообщения: 18
Зарегистрирован: Чт дек 18, 2014 00:46:52

Сообщение DjAndy »

Всем привет! :)

Имеется исходный сигнал с трёхканального датчика вращения на оптических прерывателях:

Изображение

Задача:
- схему сделать на обычной логике, TTL или CMOS,
- определить направление вращения по каждому следующему фронту (+/-) с каждого датчика,
- выделить импульсы с каждого фронта, положительного и отрицательного, для их подсчёта в прямом и обратном направлении.

Логика с датчиков переключений такая:
000
001
011
111
110
100

Три дня ломал голову, пришёл к такому решению:

После датчиков дешифратор состояний с шестью выходами (сколько состояний, столько и выходов).
С каждого фронта (любой полярности) любого из датчиков формируется короткий тактовый импульс с заданной длительностью (CLK).
С дешифратора состояний данные записываются в сдвиговый регистр (одна единица с одного из выходов дешифратора).
С поступлением CLK регистр сдвигает данные (единицу смещает по циклу) и если эта единица совпадает с состоянием дешифратора формируется сигнал "совпадение", т.е. счёт в плюс.
Если совпадения нет, - счёт в минус.
Далее по спаду CLK в регистр записывается текущее состояние дешифратора и цикл повторяется.

Что-то мне это решение не кажется очень изящным.
Может у кого будут замечания, или кто уже сталкивался с таким и есть решения попроще, буду благодарен за подзатыльники и подсказки.
:)
Реклама
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

а ты нарисуй свои мысли, а форум поправит.
Реклама
Родился
Аватара пользователя
Сообщения: 18
Зарегистрирован: Чт дек 18, 2014 00:46:52

Сообщение DjAndy »

otest писал(а):а ты нарисуй свои мысли, а форум поправит.
Уже озвучил свои мысли, для схемотехников достаточно.
Схема разбросана по тетради, ошибки в ней искать не нужно, а перерисовывать целиком неохота.
Сама концепция мне кажется неправильной, и в итоге громоздкой в конечной реализации.
Структурную схему прилагаю:

Изображение

Мысли изначально крутились вокруг дешифратора состояний датчиков, может в этом и есть моя ошибка.
Хотя не пришлось городить сложную схему сравнения, обошёлся простыми логическими элементами, т.к. сравнивается каждый раз только одна линия данных.

Если взять последовательности сигналов напрямую с датчиков и сдвигать их для сравнения, уберётся дешифратор, но усложнится схема сравнения.
Или я вообще напрасно сдвиг и сравнение использую? :shock:
Друг Кота
Аватара пользователя
Сообщения: 16545
Зарегистрирован: Вт сен 07, 2010 03:01:06
Откуда: Moscow-Izmaylovo

Сообщение m.ix »

DjAndy писал(а):Схема разбросана по тетради, ошибки в ней искать не нужно, а перерисовывать целиком неохота.
И что?
Юзер не обладает сканером?
ИЛИ не облабает умением рисования в splan?
одлада одлади ...

Наверное очередной ленивый курсач :)))

Возьми шарового грызуна, он тебе подскажет направление и ускорение и прочее.
А ты знал. что оптической мышью можно сканировать документы не хуже сканера?
Сей прогой игрался много лет назад под win95
Лечу лечить WWWашу покалеченную технику.
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Родился
Аватара пользователя
Сообщения: 18
Зарегистрирован: Чт дек 18, 2014 00:46:52

Сообщение DjAndy »

m.ix писал(а):
DjAndy писал(а):Схема разбросана по тетради, ошибки в ней искать не нужно, а перерисовывать целиком неохота.
И что?
Юзер не обладает сканером?
ИЛИ не облабает умением рисования в splan?
[...]
Наверное очередной ленивый курсач :)))

Возьми шарового грызуна, он тебе подскажет направление и ускорение и прочее.
А ты знал. что оптической мышью можно сканировать документы не хуже сканера?
Сей прогой игрался много лет назад под win95
Уважаемый, Вы читать умеете надеюсь, - выше уже внятно сказал - схема получилась громоздкая и несуразная.
Вы хотите её увидеть? Зачем? Чтобы ошибки в ней поискать? Их там нет.
Сама концепция усложнена, что мне и не нравится, блок-схема выложена, кто работал с логикой прекрасно всё поймёт.
Сканер есть, и с CAD-ами по разводке ПП работал профессионально, из возраста писать "курсачи" давно вышел, ещё при Союзе.
В SPLAN рисуют схемы от лени освоить нормальную среду рисования схем, ORCAD например.
По поводу "шарового грызуна", там всё гораздо проще - 2 фотодатчика на одну плоскость вращения, и схем реализации детекторов направления с таких датчиков хватает.
Большинство этих схем считают фронты одной полярности:

Изображение

или определяют направление с помощью делителей:

Изображение

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

Изображение

но, всё это работа с двумя оптодатчиками.

В моём случае три оптодатчика и нужно считать по каждому фронту любой полярности, каждого из трёх датчиков, и определять направление по любому из фронтов.
Исходя из этих условий и свои сложности...
Реклама
akl
Друг Кота
Сообщения: 4462
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

ПЗУ с обратными связями, в котором зашит описанный автомат состояний. Хотя, 8-ми ногий контроллер с такой задачей справился бы.
Реклама
Родился
Аватара пользователя
Сообщения: 18
Зарегистрирован: Чт дек 18, 2014 00:46:52

Сообщение DjAndy »

akl писал(а):ПЗУ с обратными связями, в котором зашит описанный автомат состояний. Хотя, 8-ми ногий контроллер с такой задачей справился бы.
MCU если и справится с полной задачей, не считая этой, то очень мощный, - только с этих датчиков общая частота около 10кГц будет, плюс все заложенные в устройство постоянные realtime пересчёты.
Сам лично с MCU не дружу, не далось оно мне. Поэтому и уход к логике, чтобы загнать схему в последствии в ПЛИС.
Сверлит текстолит когтями
Сообщения: 1115
Зарегистрирован: Вт мар 18, 2014 13:14:39
Откуда: южнее Дуная

Сообщение hrpankov »

...припомню: Задача:

- схему сделать на обычной логике, TTL или CMOS,
- определить направление вращения по каждому следующему фронту (+/-) с каждого датчика,
- выделить импульсы с каждого фронта, положительного и отрицательного, для их подсчёта в прямом и обратном направлении."

....ЛП5 справиться с виделением импульсов, а небольшое ПЗУ с обратной связью - со всем остальним....
Родился
Аватара пользователя
Сообщения: 18
Зарегистрирован: Чт дек 18, 2014 00:46:52

Сообщение DjAndy »

Вот что у меня получилось на чистой логике, без ПЗУ:

Изображение

Два импульсных дешифратора (отдельные для обоих направлений импульсов с датчиков), срабатывающих по любому из фронтов с любой полярностью.
Получилось 6 корпусов логики. Можно попробовать применить обычные дешифраторы вместо 7410 (ЛА4), корпусов будет меньше.

Кстати, наращивание ЛП5 на 3 входа и более, как рисуется во многих книжках, у Шило например, не работает как многовходовое "исключающее ИЛИ".
Мудрый кот
Аватара пользователя
Сообщения: 1802
Зарегистрирован: Ср сен 07, 2011 21:40:30

Сообщение Flasher »

Насчет ЛП5 поподробнее, пожалуйста.
Родился
Аватара пользователя
Сообщения: 18
Зарегистрирован: Чт дек 18, 2014 00:46:52

Сообщение DjAndy »

Flasher писал(а):Насчет ЛП5 поподробнее, пожалуйста.
Если это ко мне по поводу
DjAndy писал(а):Кстати, наращивание ЛП5 на 3 входа и более, как рисуется во многих книжках, у Шило например, не работает как многовходовое "исключающее ИЛИ".
Отвечу. Смотрим известную многим книжку:
В.Л.Шило. Популярные цифровые микросхемы (Справочник, Радио и связь, 1987)
Логика работы ЛП5: - совпадение лог.уровней на входах - на выходе "0":

Изображение

А теперь смотрим предложенный вариант расширения входов, Рис. 1.36.а

Изображение

Получается, - при несовпадении лог.уровней на входах А и B и единице на входе C, на выходе Q Рис. 1.36.а сформируется сигнал "0" (совпадение по трём входам). :)
Пример:
A=1
B=0
C=1
Q=0
А должна быть единица на выходе при разногласии на входах.

Разбор полётов:
A=1
B=0
на выходе первого элемента "1", приехали.
На входы второго элемента поступают "1", на входе "0".
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2041
Зарегистрирован: Чт дек 27, 2012 20:46:09
Откуда: Болгария, г. Лом

Сообщение botchin »

Ето на коленки придумал.
Вариант на одновибратирах. На каждъй вход по два одновибратора. Расмотрим верхние два. Положителнъй фронт на входе А установит одновибратора в 1 только если на входе D единица т.е. на въходе дешифратора 1 (код 000 - после кода 000 можем ожидать положителнъй фронт на входе А). Отрицателнъй фронт на А будем ожидат после 7. Далее как у тебя.

Для входа Б положительнъй фрон после 001, отрицательнъй после 110

И т.д.

Схема только на уме проигранная. Много от связей на схеме не сделанъ - я принимаю что ето дело объчное.
Вложения
Temp_1.pdf
(31.67 КБ) 225 скачиваний
Лом - ето город в Болгарии, а не инструмент юстировки електроники.
Мудрый кот
Аватара пользователя
Сообщения: 1802
Зарегистрирован: Ср сен 07, 2011 21:40:30

Сообщение Flasher »

DjAndy писал(а): Получается, - при несовпадении лог.уровней на входах А и B и единице на входе C, на выходе Q Рис. 1.36.а сформируется сигнал "0" (совпадение по трём входам). :)
Пример:
A=1
B=0
C=1
Q=0
А должна быть единица на выходе при разногласии на входах.
Ээээ... Вы хоть понимаете функцию сложения по модулю 2 ? "должна быть единица на выходе при разногласии на входах" это частный случай 2-х входового элемента...
Родился
Аватара пользователя
Сообщения: 18
Зарегистрирован: Чт дек 18, 2014 00:46:52

Сообщение DjAndy »

botchin писал(а):Вариант на одновибратирах. На каждъй вход по два одновибратора. Расмотрим верхние два. Положителнъй фронт на входе А установит одновибратора в 1 только если на входе D единица т.е. на въходе дешифратора 1 (код 000 - после кода 000 можем ожидать положителнъй фронт на входе А). Отрицателнъй фронт на А будем ожидат после 7. Далее как у тебя.

Для входа Б положительнъй фрон после 001, отрицательнъй после 110
Ок. Вперёд схема возможно и будет работать, полностью не проверял. Диоды на выходе по моему перевёрнуты. :)
А вот обратный счёт, переход с 000 на 100:
- на выходе дешифратора переход с 0 на 4, ожидаем единицу на C, она поступает на вход 5-го одновибратора, куда подключен выход 3 дешифратора... и всё, не работает.
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2041
Зарегистрирован: Чт дек 27, 2012 20:46:09
Откуда: Болгария, г. Лом

Сообщение botchin »

Я не проверял схему. Я предлагаю идею. На вх А: с 000 на 001 - положителнъй и с 111 к 110 отрицательнъй, если толко въ не обращаете ос времени наоборот. Можно на D входъ и И/ИЛИ на диодах навесить. Но я опять говорю - ето только идея. Остальное ваше дело. Если мне попалась такая задача я бъ присобачил здесь МК.
Лом - ето город в Болгарии, а не инструмент юстировки електроники.
Родился
Аватара пользователя
Сообщения: 18
Зарегистрирован: Чт дек 18, 2014 00:46:52

Сообщение DjAndy »

Flasher писал(а):
DjAndy писал(а): Получается, - при несовпадении лог.уровней на входах А и B и единице на входе C, на выходе Q Рис. 1.36.а сформируется сигнал "0" (совпадение по трём входам). :)
Пример:
A=1
B=0
C=1
Q=0
А должна быть единица на выходе при разногласии на входах.
Ээээ... Вы хоть понимаете функцию сложения по модулю 2 ? "должна быть единица на выходе при разногласии на входах" это частный случай 2-х входового элемента...
Так. Давайте не будем отвлекаться на функции.
Расширение элемента "исключающее или" на те же три входа должно иметь следующую логику работы:

A B C Q
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 0

А имеем по рис.1.36.а такую:

A B C Q
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1

:)
Мудрый кот
Аватара пользователя
Сообщения: 1802
Зарегистрирован: Ср сен 07, 2011 21:40:30

Сообщение Flasher »

:shock:
Опытный кот
Аватара пользователя
Сообщения: 811
Зарегистрирован: Чт авг 19, 2010 23:49:19
Откуда: Ташкент

Сообщение Paguo-86PK »

Схема использует код Джонсона? А Мажоритальный клапан не пробовали?
Контактная информация:
Родился
Аватара пользователя
Сообщения: 18
Зарегистрирован: Чт дек 18, 2014 00:46:52

Сообщение DjAndy »

botchin, спасибо за участие, и за идею. Мне уже тоже хочется это сделать на 8-ми ногом МК. :)
Flasher писал(а)::shock:
Flasher, что-то не так? :)
Мудрый кот
Аватара пользователя
Сообщения: 1802
Зарегистрирован: Ср сен 07, 2011 21:40:30

Сообщение Flasher »

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

Вернуться в «Цифровая техника»