Проконтроллировать состояние светодиода
- Войдите на сайт для отправки комментариев
Втр, 15/04/2014 - 18:47
Добрый день. Помогите решить вопрос. Есть некоторое закрытое устройство, которым нужно управлять. Для индикации стоят светодиоды, управляются динамически. Подскажите, как я могу проконтролировать состояние того, что светодиод погас, если он, по сути дела "моргает". Спасибо.
Соединить одну из ног диода с портом ардуино, если надо через резистор.
Второй вариант, рядом с диодом поставить фоторезистор
надежнее подключиться электрически, лучше всего взять транзисторную оптопару (например pc817) и подключить светодиод оптопары через резистор паралелльно светодиоду. Транзистор оптопары эмитером на GND, коллектором одновременно на вход ардуино и через резистор 4.7к на +5В
если вскрыть и припаяться нет возможности то надо брать фотодатчик и крепить его снаружи заклеив от внешнего освещения, чтобы он освещался только светодиодом
фотодатчики есть готовые, там как правило стоит дифференциальный усилитель и подстроечный конденсатор для настройки чувствительности, выход у него есть аналоговый, а есть и цифровой - 0/1 по преодолению порога
в качестве фотодатчика можно взять фоторезистор и обычный резистор и подключить их последовательно между GND и +5В, среднюю точку на вход аналоговый вход ардуино. Постоянный резистор надо выбрать исходя из теневого сопротивления фоторезистора, так, чтобы напряжение в средней точке менялось между нулем и +5в примерно при переходе от темноты к свету
надежнее подключиться электрически
надёжнее через свинцовое стекло - внезапно, светодиод рентгеновского диапазона.
Да если бы там управление шло тупо 0 или 1 проблем бы не было. Опишу ситуацию более подробно. Есть некое устройство, состоит из двух блоков, силового и блок управления. Блок управления построен на микросхеме TM1628 - это типа контроллер светодиодного дисплея и клавиатуры с индикацией. Нужно иммитировать присутствие человека, т.е. определённым образом нажимать кнопки. С этим проблем нет. Но ещё нужно контроллировать как оно себя ведёт, т.е. реагировать на включение - выключение светодиодов. Так как индикация там динамическая, то на управление светодиодом импульсное, ну мигает он грубо говоря с частотой не заметной глазу. Оптопару я сразу повесил и контроллировал через digitalRead, но понятное дело не канает. Я хочу : светодиод горит - программа крутится в цикле, светодиод потух - пошли нажимать клавиши. При дин. индикации он когда светится - всё равно ведь мигает. Т.е. в момент притухания моя прога вылавливает это и идёт нажимать кнопки. Т.е. туплю я как не реагировать на это в digitalRead. Или может завести через ёмкость на аналоговый вход и определять так ?
Атонажималка для "остаться в живых 7"
фототранзистор, сглаживающий конденсатор, аналогрид. Фактически анализ среднего напряжения сглаженного ШИМа.
вам сначала надо понять как подключиться - либо электрически либо фотодатчиком
после этого надо проанализировать тот сигнал который вы получите. Хорошо если есть осцилограф или цифровой анализатор. Если нет - то надо будет писать разный код на ардуино чтобы понять поведение полученных сигналов
Когда логика сигнала будет понятна то дальше все решается програмно. Например если светодиоды динамичеси зажигаются и гаснуть то вы получите на ардуине чередование 0/1 с некоторым интервалом когда светодиод "горит" и полный ноль когда "не горит". разделить эти два состояния прамно не сложно
Спасибо. Тоже думал через аналог мерять. По результату отпишусь.
To axill поключаюсь электрочески, осциллографом своим посмотрю, но не померяю, так что отпадает. Разве постоянно проконтролировать сигнал когда горит и не горит, выкинуть в serial и потом проанализировать.
Было бы полезно увидеть схему подключения светодиодов к микросхеме. Тогда можно пытаться придумать схему, АППАРАТНО формирующую сигнал о том, что светодиод включен (по двум условиям - строки и столбца развётки). Другими словами: от анода нужного светодиода через токоограничивающий резистор подкючаемся к базе n-p-n транзистора. Эмиттер этого транзистора подключить к катоду светодиода. Условием октрывания транзистора БУДУТ (одновременно): высокий уровень на аноде светодиода и низкий уровень на катоде.
Я думаю это система безопасности "свой-чужой" на "ОБЪЕКТЕ" когда раз в 10 минут в зависимости от цвета зажигаемого светодиода дежурный должен в течение 15 секунд ввести код разблокировки, иначе блокировка и самоуничтожение объекта.
Всё намного проще, это кухонная хрень, которую пытаются приспособить для других нужд. Понажимали кнопочками - задали режим работы. Зажёгся светодиод - всё Ок. Только у неё есть автоотключение через 15 мин. Светодиод погас. Проконтролировали, свечение, если не горит - опять понажимали. А насчёт транзистора, так там всё равно меандр будет. Я оптопару вместо светодиода цепляю, коллектор оптопары через резистор на +5. Сигнал правда инвертируется, но это не принципиально.
>Да если бы там управление шло тупо 0 или 1 проблем бы не было.
Ну а с миганием какие проблемы? Ну чисто как в анекдоте, когда один патрульный просит второго - глянь-ка, мигалка работает? То смотрит и говорит "работает - не работает - работает - не работает"...
Ну вот представте что вы патрульный. Умный. Который знает что мигалка работает в режиме "пять секунд горит, пять секунд не горит". Как вы определите что мигалка включена/работает? Обыкновенным человеческим языком опишите ход ваших действий/рассуждений если вы окажетесь на месте патрульного.
Откуда мне знать, что Вы имеете возможность вместо светодиода (или параллельно/последовательно с ним) включать оптопару? По этому и предлагаю решение в "общем" виде.
Ок, завтра скину свой корявый код с комментариями. Ткнёте меня где я косячу.
To gena . За решение спасибо, я имел в виду, что дошёл до этого.