В ассортименте китайских интернет-магазинов, среди прочих товаров, нередко можно встретить и разнообразные электронные модули, предназначенные для взаимодействия со стандартным USB-flash накопителем (в обиходе более известным как «флешка»). Обычно такие модули представляют собой функционально законченные устройства, выполненные на отдельной печатной плате (часто, кстати, весьма неплохого качества), из которых, как из «кирпичиков», можно относительно легко создавать более сложные системы. В основном такие модули - это различные вариации MP3-плееров: от простейших, управляемых всего несколькими кнопками, до весьма совершенных образцов с ЖК-дисплеями и возможностью организовать обмен данными с микроконтроллером. Эксплуатация таких модулей показала их вполне надежными и неприхотливыми изделиями; интерес к которым подогревает также и их достаточно развитая функциональность по привлекательной цене.
Однако, иногда при разработке тех или иных устройств, в состав которых планируется включить подобные модули, может возникнуть необходимость определить момент, когда пользователь вставил «флешку» в соответствующее гнездо. Например, если речь идет об использовании модульного MP3-плеера в качестве источника сигнала для какого-либо мощного УНЧ, то неплохо было бы организовать автоматическое отключение питания этого самого УНЧ (или перевод его оконечных каскадов в «спящий режим») всякий раз, когда «флешка» вынута из гнезда плеера - чтобы избежать, пусть и тихого, но все ж таки неприятного гула в колонках. Или, к примеру, если оконечный УНЧ питается от списанного компьютерного блока питания ATX (по сложившейся в последнее время радиолюбительской традиции), то было бы разумным запитать платку плеера от «дежурной» линии +5VSB, а силовую часть БП, работающую на усилитель, запускать только при подключенной «флешке». Тогда, при изъятии «флешки» из ее гнезда, БП автоматически перейдет в режим «stand-by»; благодаря чему, в отсутствие музыки, пользователя не будет беспокоить фон в колонках и шум от «кулера» БП.
К сожалению, далеко не все такие модули имеют возможность оперативно отслеживать момент подключения «флешки» - большинство из них не располагает какими-либо информационными выводами, по состоянию которых можно было бы определить факт наличия накопителя в его гнезде. Но, немного поэкспериментировав с подключением «флешек» к подобным модулям, я нашел весьма простой способ решения данной проблемы: для того, чтобы узнать о присоединении накопителя, достаточно включить в цепь питания «флешки» обычный диод типа 1N400x - падение напряжения на этом диоде будет присутствовать только в том случае, если «флешка» вставлена в разъем модуля. Схема получившегося датчика приведена на рисунке:
Работает устройство следующим образом. Диод VD1 включен в разрыв отрицательного провода питания USB-накопителя: анодом - к минусовому контакту «флешки», а катодом - к общему проводу схемы (с этим же проводом соединяется и отрицательный провод питания модуля, к которому будет подключаться «флешка»). Напряжение с анода VD1, через резистор R3, подается на прямой вход компаратора DA1. Пока USB-гнездо модуля остается свободным, ток через VD1 отсутствует - соответственно, падение напряжения на этом диоде также равно нулю. При этом напряжение на инверсивном входе компаратора, созданное резистивным делителем R1-R2, составляет приблизительно 250mV - что приводит к открытию внутреннего транзистора микросхемы (выход у LM393 выполнен с открытым коллектором), который замыкает нижний вывод R5 на общий провод. В итоге, при отсутствующей «флешке», напряжение на выходе схемы отсутствует. Если же теперь к USB-разъему модуля подключить флеш-накопитель, то ток, потребляемый цепью его питания, создаст на VD1 (а значит, и на прямом входе DA1) падение напряжения величиной около 500mV, которое превысит напряжение на инверсивном входе компаратора. В результате, внутренний выходной транзистор DA1 закроется, и выход схемы окажется соединен с источником питания через резистор R5. Таким образом, напряжение +5V появляется на выходе датчика только тогда, когда «флешка» находится в своем разъеме. А это напряжение, в свою очередь, уже несложно использовать для организации работы того или иного устройства. Например, можно опрашивать выход схемы при помощи микроконтроллера, «руководящего» работой системы, в составе которой будет работать китайский модуль; или же подключить к датчику какой-нибудь транзисторный ключ/оптотрон, управляющий, к примеру, «пробуждением» блока питания ATX из дежурного режима.
В качестве DA1 применим практически любой аналоговый компаратор (или даже операционный усилитель), допускающий однополярное питание. В описанном варианте датчика использовалась микросхема LM393, выход которой выполнен с открытым коллектором. Особенностью работы подобных микросхем является отсутствие напряжения на выходе, вне зависимости от состояния компаратора: если такой компаратор находится в «опрокинутом» состоянии (U пр. < U инв.), то его выход, через внутренний транзисторный ключ, просто замыкается на общий провод; в случае же «прямого» состояния компаратора (U пр. > U инв.) внутренний транзистор закрывается, и выход переходит в высокоомное состояние. Исходя из этого, в схему был введен резистор R5 - он «подтягивает» выход DA1 к напряжению питания в тот момент, когда компаратор находится в «прямом» состоянии, и внутренний транзистор на выходе DA1 закрыт. Если же в качестве DA1 будет использоваться компаратор (или ОУ), имеющий выход, выполненный по классической схеме (у таких компараторов при U пр. > U инв. на выходе присутствует напряжение питания), то резистор R5 необходимо исключить. Напряжение питания данной схемы может быть в диапазоне 2-36V (такой диапазон питающих напряжений указан в дата-шите на LM393 в качестве допустимых). А для того, чтобы опорное напряжение на инверсивном входе компаратора всегда имело бы постоянное значение (вне зависимости от изменений питания), в схему был введен стабилитрон VD2, ток которого ограничен резистором R4, благодаря чему напряжение на делителе R1-R2 всегда поддерживается неизменным. Если же планируется питать схему от источника менее 5V, то необходимо произвести перерасчет сопротивлений R1 и R2 делителя таким образом, чтобы напряжение на инверсивном входе компаратора составляло около 250mV.
Кстати, в процессе разработки данной схемы у меня имелись некоторые опасения, связанные с тем, что диод VD1 будет «приворовывать» питание у «флешки» - ведь падающие на нем 500mV, необходимые для срабатывания компаратора, вычтутся из питающего напряжения накопителя, что может привести к сбоям в его работе. Однако, в результате испытаний нескольких «флешек» различной емкости (и от различных производителей) был сделан вывод, что незначительное снижение питающего напряжения совершенно никак не сказывается на надежности и безотказности работы накопителей. А изучение имеющихся в интернете схем показало, что «начинка» большинства «флешек» и вовсе питается напряжением 3,3V - для чего в их конструкции присутствует соответствующий интегральный стабилизатор; поэтому, снижение напряжения на USB-разъеме до 4,5V совершенно безопасно для как для самого накопителя, так и для находящихся на нем данных.
Комментарии (9)
|
Я собрал (0) |
Подписаться
Для добавления Вашей сборки необходима регистрация
1. Может быть я не внимательно читал, но так и не понял, почему измерять падение напряжения решили диодом? Чем он лучше резистора? С резистором можно было бы и падение напряжения сделать поменьше.
2. Для большинства старых «флэшек» напряжения 4.5V обычно хватает. Хотя, нет гарантии, что в очередной не окажется стабилизатор с большим падением напряжения, поставленный разработчиков из тех же соображений — какая разница, каким сбивать лишние 1.7V, зато ими весь склад завален. Вот на счёт новых USB 3.0 я уже не был бы так уверен. А USB-HDD уже при 4.8V неуверенно стартует и нестабильно работает, а такое падение создаётся уже на соединительном кабеле и разъёмах.
PюS. «инверсионный» бывает в небе след от самолёта. А вход у компаратора «инверсный» или «инвертирующий».
[Автор]
А вот по-поводу диода Шоттки вместо 1N400x - это дельная мысль! Действительно, он окажет меньшее влияние на схему "флешки". Но, разумеется, в этом случае потребуется перерасчитать делитель на инвертирующем выводе компаратора.
На выходе компаратора всегдалогичемкий уровень. Ему без разницы, какова разница напряжений на входах. Главное — чтобы разница была.
Выставить порог, как при 50 mA например, или при 10.
[Автор]
По поводу резистора - если использовать его вместо диода, придется выбирать весьма малое его сопротивление - а значит, и порог срабатывания компаратора придется сделать очень низким (т.к. падение напряжения на низкоомном резисторе будет очень невелико), что может привести к ложным срабатываниям, например, при поднесении руки к гнезду. Я бы, все-таки, заменил 1N400x на Шоттки и, как здесь уже советовали, зашунтировал бы его высокоомным резистором - для помехозащищенности. Но, тем не менее, и в таком варианте данная схема вполне работает, все "флешки" живы и здоровы...
[Автор]
Схема реально собиралась, и никаких помех в работеили ложных срабатываний обнаруженно не было. Да и "флешки" от разных производителей читаются "на ура" - даже с 1N4007 в качестве датчика...