Jump to content
Arena V
Raymond

Интересные технические решения

Recommended Posts

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

Для начала – устройство считывающей головки VHS-видеомагниофона. Все началось прозаично – был найден на задворках института видеомагнитофон (возможно даже исправный :)) и… брутально разобран. Один раз дома мне приходилось чинить блок питания видика, но теперь я с азартом предвкушал заглянуть в самое нутро механики.

Никому не секрет, что головка видеомагнитофона наклонена и синхронно вращается с движением ленты, таким образом удается достичь более плотной записи. Но меня интересовал вопрос – как именно сделана передача сигналов от самой головки к статичной электронике. Использование щеток – ненадежно, более того, при трении даже самые хорошие щетки создают кучу широкополосных помех в сигнальных цепях, что, естественно, отобразится на качестве изображения. Наиболее удобное решение – магнитная развязка, трансформатор с вращающейся обмоткой.

На фотографии видна сама головка и ее крепление с шлейфом. Видно три обмотки.

Все это чудо приводится в движение бесколлекторным двигателем, плата статора двигателя и его драйвера изображена на фото. Обратная связь заведена через три датчика Холла, как это обычно делается, если нужно получить хорошие пусковые характеристики и важен контроль положения. Это значит, что если разобраться с двигателем, его можно легко запустить. И что это дает?

Мы имеем вращающийся элемент с постоянной, стабилизированной скоростью, с возможностью синхронизации и магнитную развязку. А теперь смотрим, к примеру, сюда http://www.innovativedevice.com, тут есть видео.

В двух словах. Плата со светодиодами, управляемыми микроконтроллером по определенной программе загораются в каждом положении (некоторые оригиналы даже делали на основе неоновых индикаторов похожих на отечественную серию ИН). При быстром вращении, особенно если синхронизовать переключение и поворот, можно достичь впечатляющих результатов. В этом примере был использован бесколлекторный двухфазный двигатель от обычного куллера, иногда используют двигатели от жестких дисков, достигая большей скорости. Но в любом случае приходится делать питание для вращающейся части. Да, инвертор, высокочастотная передача. Но в примере головки от видика мы уже имеем хорошую конструкцию, сам двигатель, крепления для платы, качественные подшипники, и, что самое главное, магнитную развязку, через которую можно осуществить питание и, возможно, даже осуществить управление. Пока частотные характеристики ферритов неизвестны, но идея лежит на поверхности и, очень вероятно, может быть воплощена в жизнь. Так что дерзайте. :)

P.S. Эта головка пала жертвой вандализма, ибо была разобрана методом молотка (не знал я, что оно так красиво все внутри, да и было поздно, мастерская, где я мог взять миниатюрные шестиугольные торцевые ключи была закрыта), но зато это подтолкнуло к интересной идее. Да и найти сейчас видик не так сложно, учитывая, что они уходят в прошлое, уступая DVD.

post-441-1296114965,21_thumb.jpg

post-441-1296114965,26_thumb.jpg

post-441-1296114965,32_thumb.jpg

Share this post


Link to post
Share on other sites

Идея, не спорю, хорошая.

Но, увы, не новая, на изобретение совсем не тянет))). Рекламы по подобному принципу часто можно встретить в магазинах. Поэтому хотелось бы дополнить: это девайс будет особенно ценным, если подготовить и распространить документацию для самостоятельного изготовления.

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

Т.е. к представленной механике надо представить схему и готовую программу.

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

В двух словах. Плата со светодиодами, управляемыми микроконтроллером по определенной программе загораются в каждом положении

Подобное устройство мы использовали для агитации абитуриентов к поступлению на наш факультет :D . К сожалению, один любопытный абитуриент сунул туда руку и сломал вращающуюся часть. Но вообще идея интересная.

интересные технические решения

А можно подробнее? Какие именно технические решения, из каких отраслей? Схемы, конструкции, алгоритмы, программы? Или текстовые описания?

Share this post


Link to post
Share on other sites

А можно подробнее? Какие именно технические решения, из каких отраслей? Схемы, конструкции, алгоритмы, программы? Или текстовые описания?

Я специально не делал никаких особых ограничений. Да, все вышеперечисленное вполне подходит под название темы. Что показалось интересным и достойным внимания общественности. Естественно, если это касается техники и электроники в частности. ::smile

Share this post


Link to post
Share on other sites

Raymond,

Я вижу, что вы таки нашли помойку, куда VHS-видики выбрасывают :mrgreen:

Идея вращающегося трансформатора (ВТ) - действительно весьма не нова. Мне например приходилось работать с серийными датчиками угла поворота, следующей системы:

на статоре находится первичная обмотка ВТ, на нее подается несущая частота (несколько десятков кГц), она передается на ротор, (посредством ВТ) , где от нее запитывается первичная обмотка датчика (на роторе), которая уложена в пазы звездобразного магнитопровода (как на большинстве электродвигателей, см. свою-же фотку мотора) с нее сигнал снимается на 2 вторички (на статоре) в виде синуса и косинуса (несколько периодов на 1 оборот ротора) модулированных несущей. К сожаленью, не нашел, в сети, фоток в разобранном виде, (а в собранном - ничего интересного - железка наподобии электромоторчика), потому попытался быстренько изобразить в разрезе (фанатам машиносторительного черчения - просьба меня не пинать :lol: ), уж как получилось (см вложенный рисунок).

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

Пока частотные характеристики ферритов неизвестны, ....

Фериты там вполне приличные по современным меркам.

Тут все будет определятся в основном, величиной немагнитного зазора (т.е. на сколько точно все сделано, и насколько можно максимально сдвинуть вращающиеся части, прежде чем возникнет риск механического зацепления)

Кстстати радиолюбители спокойно делают ВТ из обычных феритовых "чашек".

А вообще, я в свое время, интересовался весьма подробно, передачей питания и управления на вращающийся вал. Разок пришлось обслуживать 4 шаговых двигателя, установленных на вращающемся барабане (благо барабан был большой, и электроники туда влезало много :lol: ). Питание - передавал при помощи ВТ, а управление (RS232) - "самодельные" разьемные оптопары в просверленных (по оси вращения) шейках вала (с одного конца TxD, с другого - RxD). Была мыслЯ, сделать модулированно, через тотже трансформатор, вместе с питанием, но исполнение магнитопровода из фиг-знает-какой стали (да еще и без деления на пластины - просто токарная деталь) - похоронило эту идею. (ВТ работал на 50Гц)

Касательно той самоделки - вот еще похожая штука, толко в исполнении "отечественных" радиолюбителей

http://www.radiokot.ru/konkurs/11/

post-362-1296114965,38_thumb.gif

Share this post


Link to post
Share on other sites

Таких датчиков, советской промышленностью, выпускалось довольно много

Сельсины довольно распространены в качестве датчиков угла поворота антенн, причем весьма давно (еще в МРЛ-2).

К сожаленью, не нашел, в сети, фоток в разобранном виде

Заглянул в справочник по МРЛ. Увы, только схемы включения. Но ничего особенного в этом устройстве и нет - действительно близкий родственник электродвигателя, одна роторная обмотка + 2 ортогональных статорных.

Удалился размышлять над тем, какие интересные технические решения сюда можно выложить ::confused

Share this post


Link to post
Share on other sites

Удалился размышлять над тем, какие интересные технические решения сюда можно выложить

Ну вот, "для затравки", мое собственное творчество: оптоизолированный RS232. Казалось бы, что особенного ?

А вся фишка в том, что эта схема не требует изолированного источника питания (следовательно - без моточных узлов) - вся изолированная часть питается от драйвера TxD, внешнего устройства (обычно это PC) . У меня испытано питание от персоналок (микросхемы приемопередатчиков 75232, 75185, и аналогичные) и от самодельных устройств на ADM202 (MAX232), и анадогичных. От ADM3202 (3.3в) - скорее всего не заработает.

Комплементарное включение оптопар - необходимо, для достижения маленького статического потребления, при большом быстродействии.

"Зарядовая помпа" на двух 561ЛН2 (4069) нужна только для "общего случая". Если перед работой некоторое время подергать выводом TxD персоналки (чтобы конденсаторы зарядились), то все будет работать и без нее. Или можно, через дополнительные диоды, завести туда выводы квитирования (RTS, DTR) - как дополнительное питание (а можно и как сигналы, со своими такими-же опторазвязками). "Зарядовая попма" нужна только если все выходы персоналки, будут длительное время, оставаться "в одном положении" ("все единицы" или "все нули").

Есть 2 варианта схемы: Для контроллеров с маломощным (с низкой нагрузочной способностью) выходом TxD (с буферизацией сигнала при помощи 1554ТЛ2 (ЛН1), или любой другой 74AC - логики ) и для контроллера с достаточно мощным выходом (без доп микросхемы).

Вариант с буферизацией у меня хорошо отработан, при указанных номиналах (и с указанным типом оптронов) работает до 115200 бит/с хотя и "на пределе" (57600-уверенно) подбирая RCR элементы в цепях питания излучателей передатчика - можно добится и более высоких скоростей - но уже не хватает питания от 1 выхода персоналки (Возрастают сквозные токи между фототранзисторами). Необходимо задействовоать, для питания, выводы квитирования, или использовать более быстрые оптроны (хотябы, с выведенной базой фототранзистора).

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

Вариант без буферизации - я придумал, но не испытал - возможно потребуется подбор RCR- цепочек в цепях излучателей оптронов, там достигается компромис между потреблением (сквозными токами между 2 комплементарными фототранзисторами) и быстродействием. Это дело довольно трудно рассчитывается, зато легко подбирается, опытным путем :wink: .

P.S. Никаких авторских прав на схему, я предъявлять не собираюсь ! Все CopyLeft :mrgreen:

post-362-1296114965,55_thumb.gif

Share this post


Link to post
Share on other sites

В порядке "разминки для мозгов", задачка:

Есть оптикомеханический датчик вращения вала, классический "encoder", выдающий 2 последовательности импульсов, сдвинутых на 90 градусов (2 последовательности - чтобы определять направление вращения). Не секрет, что количество "рисок" - можно "учетверить", формируя импульс (некоторой длительности) по каждому фронту и каждому срезу каждого сигнала. Вся хитрость в том, чтобы сформировать сигнал направления, с учетом того, что направление вращения может сменится В ЛЮБОЙ момент, т.е. при любом состоянии 2 сигналов датчика (на любой четверти полного цикла). Собственно задача: синтезировать логический узел (пускай, для упрощения, на микросхемах стандартной логики 74xx) 2 входа (с encoder-а) и 2 выхода - сигнал направления и импульсный сигнал, "учетверенных" рисок. Таким образом, чтобы эти сигналы можно было бы подать на реверсивный счетчик (например линейку 531ИЕ17), и как угодно вращая вал туда-сюда всегда иметь на счетчике точное его положение (с точностью до 1/4 риски). Дополнительное условие: желательно не использовать лишних элементов тактирования, дабы исключить "джиттер", относительно фронтов исходного датчика. В моем решении - один асинхронный элемент задержки (RC-цепочка), для формирования длительности импульса (передний фронт - по сигналу датчика, задний - через некое T, гарантированно меньшее, минимального периода датчика ). Можно заменить эту RC-цепочку, на тактируемую задержку, но тогда, хотябы один фронт выходного сигнала не должен иметь "джиттера" относительно исходного датчика, из-за асинхронности внешнего тактового сигнала. Естественно желательно минимальное количество ИМС.

Это не так просто, как кажется на первый взгляд :wink:, я ломал моск 3 или 4 дня :twisted: .

P.S. Решение выложу позже. А то неинтересно будет.

Share this post


Link to post
Share on other sites

Обычный D-триггер с синхронизацией по фронту.

Один сигнал заводим на синхронизацию, другой - на вход данных. На выходе через цикл получаем результат.

Опытным путём выяснить что чему соответствует. Если не то что хотели - меняем контакты местами.

Share this post


Link to post
Share on other sites

KopwyH, А подумать ? D-триггер будет работать по 1 из 4 фронтов. А если направление сменится в промежутке между 2 фронтами той фазы, по которой вы "защелкиваете" направление ?

Share this post


Link to post
Share on other sites

Обозначим первый сигнал как X, Второй как Y

До задержки Xb Yb, после Xa Ya.

Тогда достаточно составить схему (не Xa и не Yb) или (Xb и Ya) На выходе получим искомый сигнал.

Но решения со схемой задержки в микроэлектронике сейчас считаются некорректными.

Share this post


Link to post
Share on other sites

временные диаграммы разрисуй, сразу ясно станет.

Вот как должны выглядеть входные и выходные сигналы для правильной схемы.

Можете используя эти ситуации, как модельные, проверить свою схему.

Задача только кажется примитивной, я сначала тоже нарисовал не рабочую схему (даже разводить начал), только потом сообразил что она не работает. Правда, что одним D-тригером там не отвертишся, я понял сразу.

Но решения со схемой задержки в микроэлектронике сейчас считаются некорректными.

Элемент задержки тут необходим по определению, ибо во входных сигналах, отсутствует событие, по которому можно сформировать задний фронт выходного счетного импульса. Это может быть и тактируемая задержка (но тогда придется еще бороться с асинхронностью тактов и датчика, или смирится с "джитером" выходных импульсов, поэтому я нарисовал RC). У меня элемент задержки - один единственный, на всю схему.

post-362-1296114966,48_thumb.gif

Share this post


Link to post
Share on other sites

Raymond,

Я вижу, что вы таки нашли помойку, куда VHS-видики выбрасывают :mrgreen:

Ага, все еще помните мой вопрос, помните. :mrgreen: Но попадаются вещи еще более интересные, может как-то ниже по теме упомяну. Не из бытовой техники, естественно.

Касательно сельсинов – знаю. Разбирал пару раз, через такие сельсины идет обратная связь во многих приборах на борту самолетов. Даже самый простой стрелочный прибор часто содержит асинхронный 400-герцовый мотор, кавайную систему шестеренок и сельсин, по которому ПИД-регулятор определяет положение стрелки на нужной отметке. Конечно, сейчас все такие панели самолетов заменили экраны.

Фериты там вполне приличные по современным меркам.

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

А вообще, я в свое время, интересовался весьма подробно, передачей питания и управления на вращающийся вал. Разок пришлось обслуживать 4 шаговых двигателя, установленных на вращающемся барабане (благо барабан был большой, и электроники туда влезало много :lol: ). Питание - передавал при помощи ВТ, а управление (RS232) - "самодельные" разьемные оптопары в просверленных (по оси вращения) шейках вала (с одного конца TxD, с другого - RxD).

А вот это я понимаю, как раз по теме. Необычно, ничего не скажешь, красиво. Я о TxD и RxD на валу. :) Хороший ВТ, наверное, построили, если он тянул шаговые двигатели. Впрочем, зависит от их мощности, конечно. Что это за чудо было, если не секрет – шаговики на барабане?

Гальваническую развязку RS-232 как инженерное решение заценил. Никогда не делал питание от ком порта, считаю это нехорошим тоном, не примите на свой счет. :) При необходимости всегда можно взять 5 вольт из компа, на крайний случай – от какого-то USB, а если мы имеем USB-UART мост, то сделать развязку – еще проще, что и делал несколько раз. Не имею понятия о параметрах отечественных АОТ101, но я думаю, что возможно было бы с успехом применить что-то по типу 6N137 (HCPL2601), комплементарно не включишь, зато поддерживает скорость до мегабита – до 400 килобит проверено мной на практике. А так, если уж питать от сигнальных линий, тут напрашивается решение типа ADuM1201, двунаправленный трансформаторный (!!!) изолятор в SOIC8 со скоростью до 25 мегабит (зависит от буквенного символа в конце). Сам пробовал, очень доволен, поэтому и советую многим. На ваших скоростях он будет потреблять вряд ли больше одного миллиампера.

Кстати, на схеме нереальные параметры. В указании битрейта или букву «к» выбросить, или точку в числе поставить. А что получается круче, чем в ADuM

:)

Хотя вот эта часть

c30b9e4874c1.jpg понравилась особенно. ^_^

О задачке и валкодере.

Соглашусь, на первый взгляд кажется гораздо проще, чем есть на самом деле, с наскоку взять ее не удалось, так что изложу свои мысли, которые возникли в получасовом перерыве перед обедом. :)

Сформировать такт очень просто – достаточно взять ждущий мультивибратор типа 74HC123 (мой любимый ^_^) или сваять самому на RC-цепочках (и желательно триггере Шмидта). Длительность импульса 10 микросекунд более чем достаточна для нашей механики. Фиксируя каждый фронт, подаем выходы на логическое ИЛИ, например, на диодах, дабы не ставить микру, что изображено в нижней части рисунка.

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

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

А теперь начинается самое интересное, над чем мя еще буду думать. ^_^ А именно о том логическом автомате, который бы отследил изменение выходов триггеров и сформировал правильное направление вращения, это и изображено пока что загадочным прямоугольником. При этом, что он должен понять любое изменение на выходах. Представим ситуацию – прошло четыре такта вправо, все выходы – единицы. Вдруг изменилось направление – два шага назад. Мгновенно уровень направления должен стать низким, два выхода низкие, два – высокие. Но тут мы делаем шаг вперед и теперь три высокие, а один низкий, а выход направления тем не менее должен быть высоким… Вот этими мыслями в слух я озвучил непростоту этого вопроса. Естественно, схема дешифрации должна быть с памятью, чтобы верно проинтерпретировать изменение выходов, так что она тоже должна содержать триггеры… Скорее всего, для определения направления надо сравнивать информацию с триггеров и сами входные сигналы. Думаю – вот дал направление, которое первым пришло в голову. Хорошо бы, чтобы кто-то еще подключился. :)

А так, на практике, конечно, гораздо проще, быстрее, дешевле это все организовать по внешнему прерыванию какого-то дешевого микроконтроллера. По хорошему, надо два прерывания с изменением фронта в каждом из них. А можно еще проще, если сразу сформировать клок, как я сказал выше, подать на одно прерывание и в нем считывать значение последовательности импульсов. Например, ATtiny15, восемь выводов, и пусть себе выдает клок и направление. Во всяком случае это кажется гораздо более практичным.

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

http://www.diagram.com.ua/list/valkoder.shtml

post-441-1296114966,74_thumb.gif

Share this post


Link to post
Share on other sites

Хороший ВТ, наверное, построили, если он тянул шаговые двигатели.
Барахло убогое !! Весил более 8кг (2кг - только меди, сам транс я не взвешивал, половинка была одной деталью с барабаном, а барабан переносили исключительно грузовой талью :mrgreen: ). Совершенно тупо, 2 токарных детали в форме буквы "ПЫ", из низкоуглеродистой стали, в них вложены текстолитовые катушки, с медным проводом. Передавал, при таких габаритах, он от силы, ватт 40. Напряжение на выходе, под нагрузкой, просаживалось, нипадеццки - прищлось хитрый стабилизатор городить внутри барабана, и одновременно включать не более 2 шаговиков (ДШИ200-1). Частотные характеристики у этого куска железа, как я уже упомянул - никакие, работал прямо от сети 220в 50гц, попытка "подмешать" туда модулированный RS232 - блестяще провалилась (хотя если годик по$#$#$#$#я, с высокодобротными, полосовыми фильтрами, может чего бы и получилось, но тогда уж проще - через радиоэфир :wink: ). Собственно идея просверлить шейки валов (как единственные 2 неподвижные точки, вращающегося тела) и поставить туда оптопары (АЛ147+ФД265К), возникла уже потом, "от безисходности". Вобщем проэктировали этот ВТ "механики", мало чего понимающие в электротехнике, все мои "вопли" про потери, про зазоры, и т.д. - весьма жестоко присекались. Да к томуже "в одну итерацию" : вот тебе нарисовали, сделали, как умеем, теперь изволь, как угодно, но заставить работать :evil: Хорошо, хоть было время на 2 итерации изготовления печатных плат, не считая первичного макета, да кое какие наработки, по управлению ДШИ200. С жутким "боем", удалось уговорить увеличить площадь контактирующих по магнитному потоку, поверхностей, чтобы хоть как-то компенсировать зазор, больше милиметра.

Что это за чудо было, если не секрет – шаговики на барабане?

А была это большая, многокрасочная, печатная машина, шаговики растягивали (за 4 уголка), печатную форму, на этом барабане, чтобы "кресты" по уголкам, от печати разных красок (CMYK) совпадали. Размеров барабана точно не помню, но на него "натягивался" лист формата А1, с "полями" для крепления. Причем задумывалась динамическая подстройка, аж по системе с распознованием образов, с телекамер (это в 90-е то годы). Но институт который ее делал - не справился с задачей. И вся система - оказалась не нужна (хотя моя часть - честно заработала). Вернулись к тому, с чего начинали - печатник смотрит на результат, и подкручивает 4 винта на барабане отверткой :mrgreen: .

Никогда не делал питание от ком порта, считаю это нехорошим тоном,

А раньше, целые мышки, так работали. :lol:

Я не просто так написал, что схема выдержала проверку на работоспособность, от всех доступных мне серийных микросхем-драйверов RS232.

Если не перегружать выход - то почему бы и нет ?

Не имею понятия о параметрах отечественных АОТ101

Я же указал ближайшие аналоги - MCT-6, TLP-504, или одиночные PC817, PC357 (хотя последние чуток помедленнее)

6N137 - будет слишком много кушать (тут надо в 1ма максимум уложится), и не обеспечит должной нагрузочной способности "в плюс" (через резистор притяжки) - придется буферизовать, а это сложность и лишнее потребление (может и удастся "победить", но это будет не просто). Вся "фишка" именно в симетрии и комплементарности (отсутствие "статического" потребления). А вот 4N35 (и подобные) - будут замечательно работать (есть разновидности и побыстре АОТ101), и стоят они заметно меньше этих "быстрых" (6N137).

тут напрашивается решение типа ADuM1201,

Замечательная вещь, но не для этого. Во первых: цена !!!, во вторых: потребуется еще и драйвер на +-12в, а они "готовые" - все многоканальные, (и обычно, довольно много потребляют, либо, опять таки, сильно дорогие). Это, как и оптопары HCPL, решение очевидное но не красивое :wink: . "Беда", в том, что он 5-вольтовый. Следовательно уровни - тоже 5-вольтовые, да еще и микромощный стабилизатор питания потребуется на 5в (LP2951-рулит). Сделать можно, но получится несколько, не самых дешевых, микросхем.

А у меня из "копеечных" деталек - сразу и драйвер, и оптоизолятор, и элементов - минимиум 8) (хотя, собственно, оптопар - "двойное" количество).

Все-таки MCT-6 (две оптопары в DIP-8) стоит 25 руб, в "Платане", в розницу (при желании можно и за 13 найти, ибо продают "на каждом углу"), а ADuM1201 - тамже, 69руб + LP2951- 15-20р, да еще и драйвер какой-то надо придумывать.... :x

Хотя вот эта часть <рисунок> понравилась особенно. ^_^

На самом деле, "зарядовая помпа" - тоже получилась весьма интересной: она перкачивает питание "в обе стороны", между положительным и отрицательным питанием (туда гда меньше, оттуда где больше). Недостаток - низковат КПД, из-за недостаточной нагрузочной способности 561ЛН2, а на чем еще можно сделать 2 синхронных автогенератора, с мощным, двухтактным, КМОП-выходом - я не придумал. Готовых микросхем таких чего-то нет. Можно конечно "надставить" ЛН2, при помощи доп. транзисторов (или еще 2 микрухи воткнуть, паралельно), но уж больно сложно получается... :?

Кстати, на схеме нереальные параметры. В указании битрейта или букву «к» выбросить, или точку в числе поставить. А что получается круче, чем в ADuM
УПС... :oops::oops::oops::oops:

О задачке и валкодере:

Соглашусь, на первый взгляд кажется гораздо проще, чем есть на самом деле, с наскоку взять ее не удалось,

АГА !!! Мозг начинает медленно закипать, чего мя, коварно, и добивался :evil::mrgreen:

Пока что, вы повторяете путь, пройденный мной, когда-то.

Некоторые замечания :

Длительность импульса 10 микросекунд более чем достаточна для нашей механики.

.........................................

А так, на практике, конечно, гораздо проще, быстрее, дешевле это все организовать по внешнему прерыванию какого-то дешевого микроконтроллера. По хорошему, надо два прерывания с изменением фронта в каждом из них. А можно еще проще, если сразу сформировать клок, как я сказал выше, подать на одно прерывание и в нем считывать значение последовательности импульсов. Например, ATtiny15, восемь выводов, и пусть себе выдает клок и направление. Во всяком случае это кажется гораздо более практичным.

Вы сильно недооцениваете частоту !! В моем, конкретном, случае это был 1000 рисочный "энкодер", и движек до 6000об/мин т.е. до 100кгц на фазу !!! , после учетверения - 2.5мкс - полный период !!! ATtiny15 - туго придется :wink: даже если чего и выйдет - будет огромный "джитер", из за асинхронности ее тактовой частоты, и задержек входа в прерывание. А учитывая, что у меня от этого дела, далее работала хитрая ФАПЧ (стабилизировала угловую скорость двигателя) - "джитер" был крайне не желателен, потому и не хотелось вводить внешнего тактирования.

И вообщето это далеко не предел. Теоретически, может и до мегагерца доходить, "энкодеры" бывают и по 12000 рисок/круг, и 6000об/мин - тоже много, но не запредельно.

Вот она, нынешняя вера во "всемогущество" микроконтроллеров :mrgreen:

Вот тут решали значительно более простую, но немного похожую задачу, см. схему внизу. http://www.diagram.com.ua/list/valkoder.shtml

Тут нет полноценного "учетверения" количества отсчетов. А это очень сильно упрощает задачу. К слову , в большинстве случаев, даже "серьезные" разработчики, обычно идут именно по этому пути, и просто ставят энкодер на требуемое количество отсчетов, сколько бы он не стоил. Либо "учетверяют" , но мирятся с тем, что сигнал напрвления может запаздывать до 3 "четвертинок". Это я все время пытаюсь сделать "конфетку" из ... того что было :) , и учитывая, что 1000-импульсный тогда стоил больше 100$ (и на большее количество рисок - резко "хуже доставались"), ставить что-то еще "круче" - меня жаба задушила, я лучше неколько лишних микросхем воткну, всяко дешевле выйдет. Я проанализировал довольно много машин, в т.ч. и весьма дорогих, и сложных, пытаясь найти, что-то подобное. Увы безрезультатно, либо все просто, либо стоит большая ПЛИС, и там уже фиг его знает, учетверяет он чего-то или нет.

Сформировать такт очень просто – достаточно взять ждущий мультивибратор типа 74HC123 (мой любимый ^_^) или сваять самому на RC-цепочках (и желательно триггере Шмидта)
Вот тут вы не правы ! Тоесть можно конечно и так, но некошерно !! Сам люблю АГ3 (74хх123) :D, особенно если знаешь некоторые "аналоговые" тонкости функционирования данной микросхемы - есть масса нестандартных применений, когда к ней подключаются схемы похитрее простой RC-цепочки. Но тут делать четыре независимых одновибратора, по всем 4 фронтам - во первых: громоздко, во вторых: из за разброса этих RC-цепочек импульсы получатся разными, что не есть хорошо. Красивое решение - обьединить по "иключающему или" обе фазы датчика, полученный сигнал - задержать RC-цепочкой (с тригером шмидта естественно), и задержанный обьединить с незадержанным, через еще 1 вентиль "иключающее или", на выходе - имеем искомое. Итого: 2 вентиля ЛП5, 2 вентиля ТЛ2 (один может быть заменен третим вентилем ЛП5, включенным, как инвертор, смотря по наличию свободных), 2 пассивных элемента ВСЕ !!! 1/2+ 1/3 корпуса, против ваших 2.5 корпусов, и все импульсы - одинаковые (на самом деле потому как пороги при переходе в "1" и в "0", у тригера шмидта, могут отличаться, длительность всеже будет слегка разной для четных и нечетных импульсов, если это критично - то еще один простейший формирователь - решит проблемму). Но !! Я не просто так, дал условием задачи узел с 2 входами и 2 выходами :wink: Фишка в том, что сигнал такта, у меня очень легко и изящно получился, как "побочный", в том самом логическом автомате, который вы пока не изобрели (см. далее) :D

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

Во истину так !! Но это в общем-то тоже очевидно. (Хотя, например KopwyH, и до этого не додумался :roll: )

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

....................................................................................................................................................................

Естественно, схема дешифрации должна быть с памятью, чтобы верно проинтерпретировать изменение выходов, так что она тоже должна содержать триггеры…

Y-Y-Y-E-S-S-S :!: Респект !!

Именно на том, что данный автомат НЕ является комбинационной логикой, я сперва и "попался". Помните я упоминал, что уже начал плату разводить ?!. Так вот там стоял четырехвходовый мультиплексор (кажись КП11) который по статическим уровням 2 сигналов датчика, комутировал один из выходов 4 D-тригеров.... :oops: Хорошо, вовремя подумал :wink: .

А вообще, вы весьма системно мыслите, респект !!!, уже почти решили :D

P.S. Справедливости ради, надо сказать что задача имеет еще одно решение: Отдельно сформировать "учетверенный" тактовый сигнал (как - я уже обьяснил ранее), затем стробируя этим сигналом, сдвиговый регистр (2 "батареи" последовательных D-тригеров, можно на 1 регистре типа ИР35 (74273), там их аж целых 8 ) защелкнуть сами исходные сигналы датчика, и имея состояние 2 фаз "до" и 2 фаз "после" фронта (итого 4 сигнала) - сформировать сигнал направления, простой комбинационной (табличной) логикой (с определенной долей пофигизма - можно даже "LUT" на ИД3 (74154) + многовходовое "И", если не придумается "чего попроще" конечно) . Но тут есть проблеммы с "гонками" надо защелкивать сигналы, по сути, по их же собственным фронтам. Это все либо "обрастет" RC-цепочками, либо потребует задержки выдачи всех сигналов на 1 такт (еще 2 дополнительных D-тригера). Что не есть красиво. У меня сигнал направления появлается гарантированно раньше, чем задний фронт тактового сигнала (и есть место, откуда можно снять тактовый сигнал, задержанный еще на одну свою длительность) , что для всяческих реверсивных счетчиков - удобнее. Да и не особенно проще это получается: что-то около 6 корпусов (это если хватит вентилей, их сложнее всего считать, не видя схемы). Для сравнения, я уложился в 9 полностью занятых корпусов стандартной логики и 1 RC-цепочку (на самом деле 2 последовательно, для большего приближения именно к "линии задержки", но это роли не играет, это вобщем-то чистое пижонство, можно и одну).

Share this post


Link to post
Share on other sites

Простите, может я уже запоздал со своими предложениями, но...

Нельзя ли дорисовать картинку:

download.php?id=173&mode=view

так, чтобы был показан переход DIRECT из 1 в 0.

Думается мне, что формировать учетверенную частоту нет смысла. Все решается проще...

Share this post


Link to post
Share on other sites

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

post-365-1296114966,82_thumb.jpg

Share this post


Link to post
Share on other sites

Нельзя ли дорисовать картинку:

download.php?id=173&mode=view

так, чтобы был показан переход DIRECT из 1 в 0.

Да, пожалуйста :wink:

ЗЫ можно поменять ту, что была ранее, дабы не засорять форум лишними рисунками. (а этот пост - "на убой") ,

и из тех же соображений, Быть, и все остальные, лучше не кидайте подобные рисунки в виде полноцветного jpg, этот формат, не предназначен для хранения монохромных картинок, он для фотографий. Вш рисунок виде монохромного (1бит/пиксел ) GIF - занимает 6кб, (а если поля подрезать то и 5), против 40кб для jpg :wink: вроде бы мелочь, а потихоньку так гигабайты накапливаются.

post-362-12961149,67_thumb.gif

Share this post


Link to post
Share on other sites

Нельзя ли дорисовать картинку:

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

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

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

По моему , не проканает, ибо для получения правильного перехода в "0", придется обьединять не по "или", а по "и"

Для облегчения анализа, поясните логику которой вы руководствовались, а то продумывать все возможные комбинации лениво :?

Share this post


Link to post
Share on other sites

По моему , не проканает, ибо для получения правильного перехода в "0", придется обьединять не по "или", а по "и"

Это "исключающее или" :)

Подумаю в свободное время.

Share this post


Link to post
Share on other sites

в момент изменения сигнала направления счетчик уже должен сменить направление счета или только по следующему фронту?

Так называемое время предустановки...

Т.е. если сигнал направления изменился по фронту клока, то не факт что по этому же клоку счет произойдет в другом направлении.

Share this post


Link to post
Share on other sites

Исходя из правила "счетчик должен считать верно":

Как только, на одной из фаз датчика , обнаружен фронт (срез), указывающий на смену направления, этот фронт уже доолжен учитываться счетчиком, как "такт в обратную сторону". Т.е. в момент смены сигнала напрвления, счетчик , должен уменьшится на 1 (если до этого он увеличивался). Чтобы не было "гонок", я использую задний фронт тактового сигнала (он отстоит на постоянную задержку, определяемую RC ), а сигнал направления, сменяется синхронно (задержки логики - не в счет) , с передним фронтом тактового импульса (вобщем все, как нарисовано на картинке).

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

Share this post


Link to post
Share on other sites

Гы !! :mrgreen: Совершенству нет предела ! Сейчас, еще раз, взглянув критическим взглядом на свою схему, многолетней давности, понял, что можно выкинуть еще 1 корпус, без ущерба для функциональности :lol: Итого, можно уложится в 8 микросхем.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...