Цель этого проекта продемонстрировать технику построения цифрового измерителя интенсивности света с помощью LDR датчика.
Измерение интенсивности света играет очень большую роль в таких отраслях как физика, техника, различные производства. К примеру, в области машиностроения, такие виды измерений, необходимы для разработки оптимальных условий освещения в помещении. При фотографировании, интенсивность света гарантирует хорошее качество картинки. Фототранзистор или фоторезистор с аналоговым LED вольтметром как на lm3914 так и на микроконтроллере и АЦП является простым измерителем интенсивности света. Недостаток самодельного устройства в том, что оно измеряет меру относительной интенсивности света и не в состоянии приводить измерения по абсолютной шкале. Тем не менее, зная характеристику LDR датчика, можно найти связь со стандартной единицей измерения интенсивности света. В случае, если характеристики датчика неизвестны, то можно провести калибровку датчика с помощью переменного источника света. Этот проект на микроконтроллере с LDR датчиком для измерения интенсивности света в Люксах. Люкс — это единица измерения освещенности (в СИ), а также меры освещенности Люмен на квадрат метра (lm/m2). В проекте используется микроконтроллер Atmel ATmega8L.
Данная схема не требует объяснения из-за ее простоты. Я использовал 28 контактную AVR демонстрационную плату, которая обеспечивает все необходимые интерфейсы. LDR используется как датчик света. Конечно, я мог бы использовать передовые световые датчики, такие как TSL257 или TSL230, но они довольно дорогие и редкие. Фототранзистор также хороший вариант, но фототранзисторы и фотодиоды сильно реагируют на быстро меняющиеся сигналы, что нежелательно здесь. Кроме того, обычные фототранзисторы и фотодиоды, более специфичные для определенной длины волны и, следовательно, не могут быть одинаково чувствительны к той же интенсивности, с разными длинами волн. Согласно схеме показанной ниже, LDR и точность аналоговой формы зависит от делителя напряжения. На выходе этого делителя аналоговый фильтр нижних частот(ФНЧ) 3-го порядка. ФНЧ здесь необходим для снижения шума и нежелательных высокой частоты переходов в связи с внезапными огнями, мерцаниями, бликами, пульсирующими источниками света и другими.
Выход с ФНЧ подается на первый канал аналогового преобразователя АЦП0 (pin C0). Дополнительное формирование сигнала делается внутри микроконтроллера, выполняя среднеквадратическое усреднение выборок АЦП. Таким образом, выполняется как аналоговая, так и цифровая фильтрации. Результатом такой двойной фильтрации является высокая степень обработки сигнала, которая является достаточно надежной и точной, чем при прямом подключении АЦП. Но сложности возникают как на аппаратном и программном обеспечении. Остальные процессы после формирования сигнала происходят внутри AVR микроконтроллера. 16 × 2 буквенно-цифровой ЖК-дисплей подключенный к PORT B на AVR микроконтроллере, который показывает измеренный уровень освещенности в люксах. Следует отметить, что AVR работает на 8.0 МГц, полученных от внутреннего генератора.
Прошивка для ATmega8L писалась в MikroC Pro для AVR, компилируется она компилятором Микроэлектроника. Внутренний RC генератор на 8 МГц используется в качестве источника синхронизации для ATmega8L.Чип был запрограммирован с наименьшим байтом значение которого 0xE4 и наибольшее значение которого 0xC9. Байты блокировки были не использованы, потому что они были не нужны. Основная программа сначала инициализирует необходимые переменные, регистры и библиотечные функции. В основном цикле, значение RMS 512 образцов АЦП, которые рассчитываются на основе соответствия «if», далее определяется соответствующее значение люкс и отображается на экране.
Калибровка LDR датчика
Я откалибровал выход LDR датчика кратным 1600-та люксам с помощью различных источников света. Я использовал фотометр LM631. В качестве различных источников света я использовал белую лампу накаливания с электронным регулятором, изменяя напряжение на лампе, изменяется интенсивность света. Фотометр и LDR расположены на одинаковом расстоянии от источника света. Я изменял интенсивность света в шаге 1600 люкс при помощи светильника для чтения.
Ниже вы можете скачать исходник проекта и проект в Proteus
Прикрепленные файлы:
- AVRLuxMeter.zip (120 Кб)