Сообщество - TECHNO BROTHER

TECHNO BROTHER

2 018 постов 13 454 подписчика

Популярные теги в сообществе:

42

Велосипедный фонарь с динамическими поворотами. Зачем покупать на AliExpress, если можно сделать самому?1

Автор: OldFashionedEngineer

Оригинальный материал

Велосипедный фонарь с динамическими поворотами. Зачем покупать на AliExpress, если можно сделать самому? Длиннопост, Timeweb, Электроника, Своими руками, AliExpress, RGB, Светодиоды, Велосипед, Схема, IT

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

Устройство имеет динамические указатели правого и левого поворотов и габариты с эффектом «бегущих огней». Габаритный огонь загорается красным цветом от центра к краям. Повороты зажигаются жёлтым цветом от одного края к противоположенному.

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

Если ты тоже не готов ждать посылки с AliExpress, добро пожаловать под кат. Будет только жесткая логика и немного аналоговой магии.

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

«Вызов» был дополнен достаточно жесткими условиями. Устройство должно быть выполнено на основе восьми RGB-светодиодов типа 5050, и с их помощью отображать динамические эффекты для указания правого и левого поворотов, а также габаритного огня. Важным условием было обеспечить возможность изготовления схемы на односторонней печатной плате, а светодиоды должны быть размещены по центру платы.

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

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

❯ Описание работы устройства

Сразу при подаче питания включается режим габаритного огня. Индикация осуществляется с помощью светодиодов красного цвета. Интервалы переключения светодиодов имеют равные значения, общая частота повторения составляет примерно 1Гц.

Сигналы поворотов включаются замыканием с общим проводом контактов “Button_Left” – для левого и “Button_Right” – для правого. Индикация осуществляется одновременным включением светодиодов красного и зеленого цветов. Интервалы переключения светодиодов также имеют равные значения, общая частота повторения составляет примерно 1Гц.
Одновременное замыкание на общий провод контактов “Button_Left” и “Button_Right” является недопустимой комбинацией и ограничивается механически за счет конструкции «под рулевых» переключателей велосипеда.

Чтобы синие кристаллы RGB-светодиодов не болтались без дела Сергей ssg1712 предложил добавить в схему аварийный сигнал. Предложил он это уже после того, как первый вариант электрической схемы был готов. Аргумент про синие кристаллы показался железобетонным. Деваться некуда, схему пришлось переработать.

Аварийный режим будет включаться при замыкании контакта “Button_Strobe” с общим проводом схемы. Индикация должна осуществляется попеременно с помощью светодиодов красного и синего цветов. Интервалы переключения также должны составлять примерно 1Гц.
Велосипедный фонарь с динамическими поворотами. Зачем покупать на AliExpress, если можно сделать самому? Длиннопост, Timeweb, Электроника, Своими руками, AliExpress, RGB, Светодиоды, Велосипед, Схема, IT

Основой схемы является блок компараторов, которые управляют линейкой из 8-ми светодиодов. Компаратор сравнивает линейно нарастающее напряжение от ГЛИН (генератор линейно нарастающего напряжения) с опорным напряжением от ИОН (источник опорного напряжения). ИОН формирует 8 порогов срабатывания для управления каждым отдельным светодиодом. В зависимости от того, как логика управления коммутирует ИОН, формируется сценарий управления светодиодами.

Велосипедный фонарь с динамическими поворотами. Зачем покупать на AliExpress, если можно сделать самому? Длиннопост, Timeweb, Электроника, Своими руками, AliExpress, RGB, Светодиоды, Велосипед, Схема, IT

Структурная схема велофонаря

ИОН представляет собой делитель напряжения, выполненный на резисторах. Между резисторами имеются отводы напряжения на инвертирующие входы компараторов. Также делитель напряжения имеет три специальных линии: “Up”, “Center”, “Dwn”. В зависимости от того, как подключены эти линии к цепям питания, опорные напряжения на входах компараторов могут изменяться.

Логика управления может коммутировать ИОН следующими способами:

1. Линия “Center” отключена от цепей питания, “Up” – подключена к плюсу, “Dwn” – к общему проводу. При такой коммутации напряжение на выходах делителя возрастает от нижнего отвода “Dwn" к верхнему “Up”. Это соответствует переключению светодиодов в режиме левого поворота.

2. Линия “Center” отключена от цепей питания, “Up” – подключена к общему проводу, “Dwn” – к плюсу питания. При этом напряжение на выходах делителя будет распределено наоборот: на нижнем отводе “Dwn” максимальное напряжение, на верхнем “Up” – минимальное, напряжение будет убывать от нижнего отвода к верхнему. Это соответствует переключению светодиодов в режиме правого поворота.

3. Для реализации управления светодиодами в режиме габаритов линия “Center” подключает середину делителя к плюсу питания, а линии “Up” и “Dwn” одновременно к общему проводу. Таким образом делитель разделяется на две половины, и опорное напряжение будет уменьшаться от центра к верхнему и нижнему отводам делителя.

4. При аварийной сигнализации линия “Center” также не подключена. А сигналы “Up” и “Dwn” одновременно подключаются к плюсу питания или к общему проводу. Если подключение выполнено к плюсу, то плюс питания появляется сразу на всех отводах делителя, при этом выходы всех компараторов будут одновременно открыты. Если же “Up” и “Dwn” подключить к общему проводу, то выходы всех компараторов одновременно закроются.

❯ Первая версия схемы без аварийного режима

Первый вариант схемы получился даже проще, чем я мог себе представить. Я несколько раз перепроверял схему в симуляторе и анализировал ее эмпирически. По моим прикидкам все должно работать. Но в макетирование эта схема не пошла.
Велосипедный фонарь с динамическими поворотами. Зачем покупать на AliExpress, если можно сделать самому? Длиннопост, Timeweb, Электроника, Своими руками, AliExpress, RGB, Светодиоды, Велосипед, Схема, IT

Для удобства подключения на велосипеде, кнопки правого и левого поворота замыкаются на землю. На диодах D9D10 и резисторе R21 реализована схема ИЛИ. Транзистор Q5 инвертирует сигнал кнопок для управления транзистором Q7. Транзистор Q7 закрывается при замыкании любой из кнопок и отключает средний отвод «Center» от плюса питания. При этом один из полумостов: Q1Q2 или Q9Q10 — подтягивает свою сторону делителя напряжения к плюсу питания. Вторая сторона остается стянута на землю.

Пилообразные импульсы генерирует таймер NE555. Транзистор Q6 обеспечивает линейный заряд конденсатора С2. Заряд конденсатора С2 производится до уровня 2/3 от напряжения питания. После чего таймер переключается, и конденсатор разряжается через резистор R19. Резистор ограничивает разрядный ток конденсатора. Это также позволяет таймеру успеть сработать, когда С2 разрядится до 1/3 от напряжения питания. Таким образом пилообразный импульс имеет диапазон от 1/3 до 2/3 питания и имеет нарастающую форму.

Резисторы R9, R17 и R36 имеют большее сопротивление, чем остальные элементы опорного делителя напряжения. Это необходимо, чтобы напряжения делителя находились в том же диапазоне, что и пилообразные импульсы.

❯ Полная версия схемы

Полная схема отличается от предыдущей тем, что имеет немного более сложную логику управления светодиодами. Я решил не морочить голову, и сделать ее на логических микросхемах серии CD4000. В сравнении с 74НС00 серией, CD4000 имеет расширенный диапазон напряжения питания. И схема работает уже от 2,7В до 9В.

Для аварийного режима в схему добавлен еще один генератор на NE555. Его импульсы определяют время включения красной и синей вспышек. Остальная часть схемы работает аналогично предыдущей. Список компонентов и печатную плату вы можете найти на сайте у Сергея.
Велосипедный фонарь с динамическими поворотами. Зачем покупать на AliExpress, если можно сделать самому? Длиннопост, Timeweb, Электроника, Своими руками, AliExpress, RGB, Светодиоды, Велосипед, Схема, IT

Я еще раз перепроверил все с помощью моделирования в Proteus 8.6. Схема получилась слишком простая, и, наверное, поэтому я до последнего сомневался, что она заработает в «железе». Сергей@ssg1712 оперативно собрал макет, все с первой попытки заработал как надо.

Велосипедный фонарь с динамическими поворотами. Зачем покупать на AliExpress, если можно сделать самому? Длиннопост, Timeweb, Электроника, Своими руками, AliExpress, RGB, Светодиоды, Велосипед, Схема, IT
Велосипедный фонарь с динамическими поворотами. Зачем покупать на AliExpress, если можно сделать самому? Длиннопост, Timeweb, Электроника, Своими руками, AliExpress, RGB, Светодиоды, Велосипед, Схема, IT

В зеленке плата получилась просто «булочкой»! Понадобилось всего 6 простых микросхем и горстка «рассыпухи», и вот, еще одна головоломка решена.

Велосипедный фонарь с динамическими поворотами. Зачем покупать на AliExpress, если можно сделать самому? Длиннопост, Timeweb, Электроника, Своими руками, AliExpress, RGB, Светодиоды, Велосипед, Схема, IT

Пишите в комментариях: стали бы вы так заморачиваться, или выбрали бы микроконтроллер?!

Показать полностью 7
190

Ретропонедельник №74. Гетеродинный индикатор резонанса ГИР-2

Начинаем понедельник с нового экспоната в виртуальном музее. Сегодня это радиолюбительский прибор - гетеродинный индикатор резонанса

Ретропонедельник №74. Гетеродинный индикатор резонанса ГИР-2 Техника, Сделано в СССР, Выборг, Радиозавод, Радиолюбители, Гир, Прибор, Ретротехника, Виртуальный музей, Электроника, Длиннопост

Выпущен Выборгским радиозаводом в 80е. Сам прибор имеет коробочку для хранения

Ретропонедельник №74. Гетеродинный индикатор резонанса ГИР-2 Техника, Сделано в СССР, Выборг, Радиозавод, Радиолюбители, Гир, Прибор, Ретротехника, Виртуальный музей, Электроника, Длиннопост

Внутри сам ГИР и сменные катушки к нему

Ретропонедельник №74. Гетеродинный индикатор резонанса ГИР-2 Техника, Сделано в СССР, Выборг, Радиозавод, Радиолюбители, Гир, Прибор, Ретротехника, Виртуальный музей, Электроника, Длиннопост

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

Ретропонедельник №74. Гетеродинный индикатор резонанса ГИР-2 Техника, Сделано в СССР, Выборг, Радиозавод, Радиолюбители, Гир, Прибор, Ретротехника, Виртуальный музей, Электроника, Длиннопост

Все работает от батареек, две кроны.

Ретропонедельник №74. Гетеродинный индикатор резонанса ГИР-2 Техника, Сделано в СССР, Выборг, Радиозавод, Радиолюбители, Гир, Прибор, Ретротехника, Виртуальный музей, Электроника, Длиннопост

Сменные катушки

Ретропонедельник №74. Гетеродинный индикатор резонанса ГИР-2 Техника, Сделано в СССР, Выборг, Радиозавод, Радиолюбители, Гир, Прибор, Ретротехника, Виртуальный музей, Электроника, Длиннопост

Справочная табличка

Ретропонедельник №74. Гетеродинный индикатор резонанса ГИР-2 Техника, Сделано в СССР, Выборг, Радиозавод, Радиолюбители, Гир, Прибор, Ретротехника, Виртуальный музей, Электроника, Длиннопост

Внутри:

Ретропонедельник №74. Гетеродинный индикатор резонанса ГИР-2 Техника, Сделано в СССР, Выборг, Радиозавод, Радиолюбители, Гир, Прибор, Ретротехника, Виртуальный музей, Электроника, Длиннопост
Ретропонедельник №74. Гетеродинный индикатор резонанса ГИР-2 Техника, Сделано в СССР, Выборг, Радиозавод, Радиолюбители, Гир, Прибор, Ретротехника, Виртуальный музей, Электроника, Длиннопост

Кастомный переменный конденсатор, вал стеклянный, не переносит ударов.

Ретропонедельник №74. Гетеродинный индикатор резонанса ГИР-2 Техника, Сделано в СССР, Выборг, Радиозавод, Радиолюбители, Гир, Прибор, Ретротехника, Виртуальный музей, Электроника, Длиннопост
Показать полностью 10
12

Выбор сигнализации для дома/гаража

Приветствую всех местных.

Задача сейчас стоит таким образом:

Необходимо установить сигнализацию в гараж, где собрано уже весьма много инструмента и оборудования, стоит пара машин, площадь гаража весьма большая - 100 квадратов, одни ворота.

Задумал установить туда водяное отопление из старых советских чугунных радиаторов, электрокотел из титана б/у и котла, работающем на разных видах топлива. Свет 380, бесперебойник, модем 4G, WiFi.

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

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

На АлиЭкспресс много различных моделей, но описание и отзывы крайне скудны, нет детального разбора возможностей той или иной системы.

Знаю, тут много технарей, кто делает своими руками и имеет хороший опыт в различных сферах. Вот может кто-то решал уже такую проблему или знаком с характеристиками и возможностями китайчкихсигнализаций для дачи/гаража? Так то можно поставить контроллеры на каждую функцию, но уверен, что определённо имеются весьма гибкие в данном плане системы.

Ну и советы приветствуются, критика тоже.

Без рейтинга.

Показать полностью
77

Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу

Автор: OldFashionedEngineer

Оригинальный материал

Что не делай на микроконтроллере, все равно, в конечном итоге, получатся часы. А для проектов на Arduino апогеем бесспорно является метеостанция. И вот, обвесив плату всевозможными датчиками, достаточно часто у любителей микроконтроллеров возникает проблема с нехваткой выводов.

Обычно для расширения портов вода/вывода используют сдвиговые регистры типа 74HC595. Но для управления ими требуется целых три вывода! Невероятное расточительство, неправда ли? Ведь можно обойтись всего ОДНИМ! Всех тех, для кого два дополнительных свободных порта являются жизненно необходимыми, приглашаю под кат.

Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу Электроника, IT, Наука, Техника, Timeweb, Изобретения, Научпоп, Познавательно, Длиннопост

❯ Хорошая идея и плохая реализация от амперки

Совершенно случайно ко мне в руки попала вот такая игрушка — модуль с четырьмя семисегментными индикаторами от амперки. Устройство представляет собой четырех разрядный статический семисегментный дисплей, выполненный на основе сдвиговых регистров 74HC595.

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

Интересна схема коммутации входов модуля. Она выполнена с использованием двух RC цепочек на входах тактирования и управления выходной защелкой и позволяет управлять выходами сдвиговых регистров всего по одному проводу вместо трех. И тут кроется пара нюансов, которые разберем далее.

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

Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу Электроника, IT, Наука, Техника, Timeweb, Изобретения, Научпоп, Познавательно, Длиннопост

Сразу возникают вопросы к схеме подключения индикаторов. Токоограничивающие резисторы имеют номинал 220Ом, это создает эффект «выжги глаза» и перегружает индикаторы. Такая величина тока могла бы подойти при динамической индикации, но в статике яркость получается слишком высокая. В следующих ревизиях платы резисторы заменили на 510Ом, но для меня и этого много. Я заменил их на 620Ом, при этом ток для сегмента устанавливается примерно 5мА.

Далее разберемся с подключением сигналов управления. Вход тактирования 11 сдвигового регистра «SHIFR» подключается к порту микроконтроллера напрямую. Вход данных 14 «DATA» подключается к той же линии через RC-цепочку R1C1, время заряда которой составляет примерно 20-25мкС. Вход управления защелкой 12 «LATCH» подключен через RC-цепочку R2C2, которая заряжается примерно за 250мкС.

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

Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу Электроника, IT, Наука, Техника, Timeweb, Изобретения, Научпоп, Познавательно, Длиннопост

Передача логической единицы производится подачей импульса длительностью примерно 25мкС и короткой паузы не более 1мкС. Импульс зарядит конденсатор на входе данных до уровня логической единицы, а короткая пауза не успеет его разрядить. Фронт следующего импульса попадет на тактовый вход и запишет единицу в регистр.

Для записи в сдвиговый регистр логического нуля необходимо, наоборот, сперва подать паузу длиной примерно 30мкС. Это разрядит конденсатор на входе данных до уровня логического нуля, если он был заряжен в предыдущем периоде. А затем подаем короткий импульс около 1мкС, чтобы его фронт записал ноль в регистр.

В завершение передачи 24 бит данных для заполнения 4 сдвиговых регистров следует подать импульс длительностью 250мкС для установки сигнала управления защелкой. Записанные данные поступят на выходы сдвиговых регистров и будут удерживаться там до следующего фронта сигнала «LATCH». Теперь конденсатор следует разрядить, для этого устанавливаем на входе схемы низкий уровень минимум на 250мкС, прежде чем подавать новые данные.

На этом можно было бы и закончить, если бы не те самые нюансы в работе схемы. Меня насторожил тот факт, что RC цепочки имеют разницу по времени заряда всего на один порядок. Отсюда получается, что конденсатор на входе защелки может полностью зарядиться, если подать 10 единиц подряд. А с учетом того, что уровень логической единицы для 74НС595 начинается с напряжения 3,15В, то для полного заряда конденсатора достаточно подряд подать около 6 логических единиц.

В схеме использованы индикаторы с общим анодом, для отключения сегментов которых на выходе регистра необходимо записать единицы. Получается, что при включении на индикаторе цифры 1 необходимо передать двоичный код 11001111, который как раз и содержит 6 единиц.

Если включать на семисегментном дисплее две единицы подряд, то как раз и получим шесть импульсов подряд, передающих логические единицы. Такая комбинация успевает зарядить конденсатор на входе защелки «LATCH». В результате чего, в момент обновления дисплея наблюдается кратковременное «подмигивание».

Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу Электроника, IT, Наука, Техника, Timeweb, Изобретения, Научпоп, Познавательно, Длиннопост

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

Если подобная схема управляет индикаторами, то кратковременное «подмигивание» дисплея может быть некритичным. Но вот для управления реле или чем-то подобным это явно не годится.

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

Проблему решил заменой резистора R2 с 33КОм на 100КОм. Время заряда RC-цепочки увеличилось в несколько раз. Индикатор стал работать лучше. Но все равно разницы между временем заряда конденсаторов на входе данных и защелки было недостаточным для вывода на дисплей четырех единиц. Да и включить при такой схеме больше четырех сдвиговых регистров подряд не получится, т.к. конденсатор С2 все равно может успеть зарядиться до уровня логической единицы.

❯ Доработка схемы

Для окончательной доработки схемы нужно добавить один, а лучше два диода Шоттки. Это ускорит разряда конденсатора С2 и заряда С1. Также эта доработка сокращает общее время, необходимое для обновления дисплея. Резисторы R3R4 добавлены для ограничения разрядного тока конденсаторов.
Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу Электроника, IT, Наука, Техника, Timeweb, Изобретения, Научпоп, Познавательно, Длиннопост

Если сравнить результаты работы схемы с диодами (левый график) и без них (правый график), становиться видно, что фронты импульсов на входе данных «DATA» и срез импульса на входе управления защелкой «LATCH» стали намного круче. И, самое главное, что конденсатор C2 на входе управления защелкой успевает разрядиться за короткий импульс записи. Теперь можно ни в чем себе не отказывать и подключать практически любое количество сдвиговых регистров.

Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу Электроника, IT, Наука, Техника, Timeweb, Изобретения, Научпоп, Познавательно, Длиннопост

Текст тестовой программы писал в CodeVisionAVR. Это отличный компилятор, хорошо работает даже на очень слабых компьютерах. Умеет напрямую грузить прошивку в Arduino. Имеет удобный мастер для автоматической настройки периферии, а также большое количество готовых библиотек для разных датчиков, дисплеев и прочего. Работа с портами ввода/вывода производилась напрямую через регистры, это в последствии добавило еще немного возни. В железе просто доработал модуль, немного порезал дорожки, добавил недостающие компоненты и перемычки.

Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу Электроника, IT, Наука, Техника, Timeweb, Изобретения, Научпоп, Познавательно, Длиннопост

❯ Версия для Arduino

Попытка повторить тоже самое в Arduino IDE привела к краху. Функция digitalWrite работает с портами очень медленно, и добиться паузы меньше 1мкС между импульсами, сохраняя парадигму arduino-программирования, попросту не возможно. Лучшее время составляет 4мкС. При этом конденсатор С1 успевает разрядиться до самой границы логической единицы, и стабильность схемы все равно теряется.

Итоговую схему собрал в Proteus 8.6. Библиотеку с моделями Arduino нашел на GitHub. Не самая удобная библиотека, контакты виртуальной модели не попадают в сетку. И пришлось по новой подбирать номиналы схемы, при которых работа регистров будет стабильной.

Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу Электроника, IT, Наука, Техника, Timeweb, Изобретения, Научпоп, Познавательно, Длиннопост

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

Заряд конденсатора С1 производится через открытый диод D1 и резистор R3. Это обеспечивает достаточное смещение между тактовым сигналом «SHIFT» и нарастанием уровня на входе «DATA», чтобы произвести запись в регистр логического нуля.

Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу Электроника, IT, Наука, Техника, Timeweb, Изобретения, Научпоп, Познавательно, Длиннопост

Разряд конденсатора С1 производится через резистор R1. Его сопротивление значительно выше, и конденсатор не успевает разрядиться до границы логической единицы, если импульс записи производить с помощью функции «digitalWrite». Но и время полного разряда тоже значительно возрастает.

Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу Электроника, IT, Наука, Техника, Timeweb, Изобретения, Научпоп, Познавательно, Длиннопост

❯ Заключение

Среднее время заполнения четырех сдвиговых регистров по одному проводу на Arduino составило 3мС. Это достаточно большое время по меркам микроконтроллера. Но если не требуется часто обновлять выходы, то данный способ может оказаться вполне приемлемым.

Не могу сказать, что я готов применить данный способ управления в каком-то своем реальном проекте, но для разминки мозгов вполне подойдет. Хотя, если делать что-то на tiny13 или подобном микроконтроллере, писать программу на С и обращаться к регистрам портов напрямую, время записи регистров сократиться примерно в 4 раза… но что-то сильно много «если».

Показать полностью 10
58

Универсальная клавиатура своими руками. Часть вторая

Универсальная клавиатура своими руками. Часть первая

Ого, аж 31 подписчик набежал с момента публикации прошлого поста! Что ж, приветствую вас, друзья мои)
Контента поднакопилось, пришла пора пилить вторую часть моего проекта, пока далеко не окончательную)

Универсальная клавиатура своими руками. Часть вторая Электроника, Клавиатура, Arduino, Своими руками, Рукоделие с процессом, Длиннопост

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

Универсальная клавиатура своими руками. Часть вторая Электроника, Клавиатура, Arduino, Своими руками, Рукоделие с процессом, Длиннопост

Премного извиняюсь перед перфекционистами, спецами по пайке, да и любому человеку, у которого кровоточат глаза при виде этого ужаса!
Я и сам страдаю от того, что я тут наворотил, я обещаю, я все исправлю и сделаю в лучшем виде)
Так вот, о чем же я? Точно, надо исправлять этот беспорядок, а самое главное в любом порядке что? Правильно, документация! Погнали)

Универсальная клавиатура своими руками. Часть вторая Электроника, Клавиатура, Arduino, Своими руками, Рукоделие с процессом, Длиннопост

Спустя пару дней изучения возможностей программы, примеров и схем самих модулей (Arduino Micro, Troyka I2C hub module) стал постепенно вычерчивать схему своего устройства, тщательно подбирая компоненты по номиналам и раскладывая все по полочкам.
Безумно благодарен @AlexGyver за его подробный гайд по программе EasyEDA, в которой я все и рисовал) Друже, если вдруг ты читаешь, и хотел бы использовать эту идею для контента, я бы с удовольствием принял участие в этом, обменяться опытом, если можно так выразиться)
Что ж, благо на надцатую попытку я подобрал правильные элементы (потому что не все элементы схемы могут быть перенесены на плату, да и не все обладают правильной распиновкой, нюансов много) и перенес все это на плату, потратив еще пару часов на перетасовывание элементов, чтобы автоматическая трассировка смогла выполнить свою работу)

Универсальная клавиатура своими руками. Часть вторая Электроника, Клавиатура, Arduino, Своими руками, Рукоделие с процессом, Длиннопост

Что изменилось с прошлого этапа?
Вся плата Arduino была изгнана, оставив после себя микроконтроллер atmega32u4, кварц и еще несколько обвязочных элементов;
За ней следом ушел модуль хаба i2c, у него оказалась простейшая логика и вообще микросхема крутая)
Вместо устаревшего micro USB от Arduino был размещен жирный type-c (но да, все еще с поддержкой только USB 2.0, ибо мне тут не фильмы на клавиатуре смотреть);
Добавлен энкодер - чуть ли не самое первое, что было сделано и сразу же протестировано в реальности)

Универсальная клавиатура своими руками. Часть вторая Электроника, Клавиатура, Arduino, Своими руками, Рукоделие с процессом, Длиннопост

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

Что в дальнейших планах?
Я внимательно почитал ваши комментарии, узнал много интересного, получил целую кучу бесценной поддержки, которая мотивирует больше всего)
По вашим комментариям:
1) выбор микроконтроллера - да, буду рассматривать ESP и RP2040, esp придётся ждать, так как у нас в наличии их нигде нет, а с Китая сейчас после распродажи ждать месяц целый... RP2040 у меня есть, нужно пробовать, пересобрать макетку под этот МК, сравнивать производительность и искать решение проблемы с подключением по блютуз (эмуляция HID-устройства)
2) свитчи от механических клавиатур - вариант очень даже неплохой, но все-таки придется обеспечить экрану бОльшую подвижность, а это уже сильно повлияет на срок их службы, считаю, что овчинка выделки не стоит
3) сенсорный экран - конечно, это самое простое и логичное решение, но я совсем не хочу это применять по нескольким причинам - я хочу сделать устройство с физическим откликом, без всяких вибромоторчиков и TapticEngine, потеряется вся изюминка кликов) плюс таких устройств и без меня полно, стоят они недорого и смысла выдумывать велосипед нет, увы)

Так что в моих планах на ближайшее время - сравнивать atmega32u4 и rp2040, их возможности, стоимость и производительность
Плюс на имеющемся прототипе пора начинать добавлять возможность модификации через программу на ПК, так что пора углубляться и сюда)

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

Универсальная клавиатура своими руками. Часть вторая Электроника, Клавиатура, Arduino, Своими руками, Рукоделие с процессом, Длиннопост
Показать полностью 6
352

Универсальная клавиатура своими руками. Часть первая

Начитался постов про недоМаска, про фальшивое импортозамещение и суровые тюменско-китайские производственные взаимоотношения... Решил начать делиться процессом своей разработки :)
Представляю вашему вниманию - чудо! (нет)

Универсальная клавиатура своими руками. Часть первая Электроника, Клавиатура, Arduino, Своими руками, Рукоделие с процессом, Длиннопост

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

В чем суть? Все просто - имеем 8 физических кнопок, у которых вместо обычных колпачков - дисплеи. Вроде где-то было, не? *StreamDeck косо смотрит на меня*
А в чем преимущество? Отличный вопрос!

Универсальная клавиатура своими руками. Часть первая Электроника, Клавиатура, Arduino, Своими руками, Рукоделие с процессом, Длиннопост

По моей первоначальной задумке, улучшений должно быть много, как минимум:
- уменьшение стоимости готового продукта;
- расширенные возможности программирования;
- автоматическое распознавание активного окна и подгрузка набора горячих клавиш для него;
- работа от аккумулятора и через bluetooth.

Сейчас небольшой технический абзац, кому скучно, можно сразу мотнуть дальше)
Основная проблема, с которой я столкнулся в момент создания этого прототипа - дисплеи, работающие по шине I2C, имеют всего 2 варианта адреса, соответственно, я не могу просто взять и подключить все дисплеи паровозиком)

Универсальная клавиатура своими руками. Часть первая Электроника, Клавиатура, Arduino, Своими руками, Рукоделие с процессом, Длиннопост

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

Техничка закончена, можно двигаться дальше налегке)
Победив проблему и выведя-таки разные картинки на дисплеи, захотелось уже потыкаться и поэмулировать клавиатуру! А обычная макетка не позволяет мне расставлять элементы так, как я хочу. Окей, топаем в магазин, затариваемся радиодеталями, спустя часа 3-4 пайки получаем уже в какой-то степени рабочий экземпляр:

Универсальная клавиатура своими руками. Часть первая Электроника, Клавиатура, Arduino, Своими руками, Рукоделие с процессом, Длиннопост

Артефакты на дисплеях возникают ввиду удачно совпавшей герцовки камеры и ФПС дисплеев)
На этот момент почувствовал себя не электронщиком, а сварщиком

Универсальная клавиатура своими руками. Часть первая Электроника, Клавиатура, Arduino, Своими руками, Рукоделие с процессом, Длиннопост

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

Здесь я понял, что останавливаться уже ни в коем случае нельзя и нужно продолжать разработку) пусть и не выстрелит, пусть не будет востребовано, но это сделает меня счастливым, потому что это мое хобби)

Что в планах на будущее:
1. Добавить крутилку (куда же без нее, громкость регулировать, или же настраивать как горизонтальную/вертикальную прокрутку)
2. Осваивать эмуляцию блютуз-клавиатуры
3. Рисовать схему не на макетке, а на нормальной плате, и не из модулей, а из электронных компонентов с нуля
4. Писать софтину-программатор на ПК, чтобы настраивать скрипты и рисунки клавиш из нее, а не перепрошивая каждый раз плату

На сегодня все, спасибо дочитавшим за внимание, буду рад любой критике и советам)

Показать полностью 5
380

Ретропонедельник №73. Прибор Фотон

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

Ретропонедельник №73. Прибор Фотон Сделано в СССР, Электроника, Техника, Познавательно, Ультрафиолет, Лампа, Косметология, Бытовая техника, Индукция, Облучение, Длиннопост

Напоминаю, что это экспонат моего виртуального музейчика Советской бытовой техники. Всякие телеграмы найдете в профиле. Косметический прибор Фотон предназначен для облучения ультрафиолетом кожи лица после бритья. Выпускал его Московский Электроламповый завод (МЭЛЗ)

Ретропонедельник №73. Прибор Фотон Сделано в СССР, Электроника, Техника, Познавательно, Ультрафиолет, Лампа, Косметология, Бытовая техника, Индукция, Облучение, Длиннопост

А теперь технари, приготовьтесь - в приборе компактная безэлектродная (!) лампа с внешней накачкой от лампового (!) генератора на сверхминиатюрной (!!) радиолампе(!). Индукционные лампы вообще экзотический тип ламп, а тут бытовой прибор. При этом дубовая схема на радиолампе позволит пользоваться прибором после ядерного апокалипсиса, если конечно найдется розетка на 220В.

Ретропонедельник №73. Прибор Фотон Сделано в СССР, Электроника, Техника, Познавательно, Ультрафиолет, Лампа, Косметология, Бытовая техника, Индукция, Облучение, Длиннопост

Корпус из пластика но имеет медное (!) напыление в качестве экрана, чтобы помехи от генератора накачки не выходили наружу.

Ретропонедельник №73. Прибор Фотон Сделано в СССР, Электроника, Техника, Познавательно, Ультрафиолет, Лампа, Косметология, Бытовая техника, Индукция, Облучение, Длиннопост

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

Ретропонедельник №73. Прибор Фотон Сделано в СССР, Электроника, Техника, Познавательно, Ультрафиолет, Лампа, Косметология, Бытовая техника, Индукция, Облучение, Длиннопост

Катушка накачки и колба лампы в центре. Посеребрение облупилось. Аналогичным способом зажигается и разогревается плазма в различных физических установках. Состав газа в лампе подобран для надежного зажигания но у первых версий фотонов был баг - зажигалась только после встряхивания. Зато как встряхнул - так сразу пахнет озоном от УФ излучения. Маленькая машина смерти, для убийства всего живого излучением. На фото можно видеть капельку ртути в колбе. При этом срок службы безэлектродных ламп просто огромный.

Ретропонедельник №73. Прибор Фотон Сделано в СССР, Электроника, Техника, Познавательно, Ультрафиолет, Лампа, Косметология, Бытовая техника, Индукция, Облучение, Длиннопост

Компоновка плотная. Видно сетевой фильтр на проходных конденсаторах сверху - помехи в сеть нельзя пропускать.

Ретропонедельник №73. Прибор Фотон Сделано в СССР, Электроника, Техника, Познавательно, Ультрафиолет, Лампа, Косметология, Бытовая техника, Индукция, Облучение, Длиннопост

В корпусе есть отверстие для настройки подстроечного конденсатора на заводе не вынимая начинки из корпуса. Затем отверстие прикрывается заглушкой.

Ретропонедельник №73. Прибор Фотон Сделано в СССР, Электроника, Техника, Познавательно, Ультрафиолет, Лампа, Косметология, Бытовая техника, Индукция, Облучение, Длиннопост

Единственное полупроводниковое устройство - диод.

Ретропонедельник №73. Прибор Фотон Сделано в СССР, Электроника, Техника, Познавательно, Ультрафиолет, Лампа, Косметология, Бытовая техника, Индукция, Облучение, Длиннопост

Экранирующая сетка сварная

Ретропонедельник №73. Прибор Фотон Сделано в СССР, Электроника, Техника, Познавательно, Ультрафиолет, Лампа, Косметология, Бытовая техника, Индукция, Облучение, Длиннопост

Ну и конечно же, в лучших советских традициях устройство комплектовалось схемой, что упрощало ремонт.

Ретропонедельник №73. Прибор Фотон Сделано в СССР, Электроника, Техника, Познавательно, Ультрафиолет, Лампа, Косметология, Бытовая техника, Индукция, Облучение, Длиннопост

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

Показать полностью 11
Отличная работа, все прочитано!