Люксметр своими руками
Самодельный люксметр на PIC16F676
Затеял я построить себе курятник можно сказать по последнему слову техники. Ну, с температурой и влажностью, по крайней мере, все понятно. А вот с освещенностью оказывается не все так просто. Решил поискать данные на нужную освещенность в Сети. Почти во всех источниках данные освещенности были или в люксах, или в лампочках накаливания. Но я хотел экономичное, современное освещение с использованием светодиодов. Пришел к выводу, что куриц без люксметра, измерителя освещенности, содержать ни как нельзя.
Сперва хотел купить готовый, подешевле, но подешевле не нашел. Как всегда выручили наши партнеры из народной республики Китай. Прислали цифровой модуль GY-30 с датчиком освещенности BH1750. Фото ниже.
Общение модуля с микроконтроллером осуществляется по I2C протоколу. При измерении освещенности с точностью до одного Lx, максимальное значение 65535 Lx. Кстати в датчике есть возможность программно выбирать точность измерения. Правда чем больше точность измерения, тем больше времени требуется датчику на решение своих задач, в частности оцифровке измеряемой величины. В общем, кому интересно больше узнать об этом датчике скачайте из Сети на него документацию. Правда, она на английском языке. Схема измерителя освещенности показана на рисунке 1.
Основой и сердцем данной схемы является микроконтроллер PIC16F676. Контроллер не дорогой, как раз для данной конструкции подходит. Имеет внутренний корректируемый генератор тактовых импульсов. Кстати, при первом программировании обязательно прочитайте и сохраните на всякий случай код константы внутреннего тактового генератора. От ее значения зависит его частота. В данном случае не нужна особая точность временных интервалов, поэтому отказ от кварца удешевит устройство. Вся информация выводится на двухстрочный жидкокристаллический индикатор. В моем случае это необходимость, потому как в данный момент однострочного у меня нет.
О деталях. Резисторы R1 и R2, это подтягивающие резистора информационной шины – DATA и шины тактирующих импульсов интерфейса I2C. Светодиод HL1 – индикатор присутствия напряжения питания схемы. R3 – гасящее сопротивление, с помощью его можно регулировать яркость свечения данного светодиода. С1 – конденсатор фильтра питающего напряжения, при монтаже устройства его лучше располагать непосредственно между первой и четырнадцатой ножками контроллера DD1. От соотношения резисторов R4 и R5 зависит контрастность выводимых на индикатор знаков. Мой индикатор имеет светодиодную подсветку, яркость которой можно регулировать при помощи резистора R6. Блок питания может быть любой, маломощный с выходным стабилизированным напряжением пять вольт. Вся схема потребляет ток примерно пять миллиампер. Печатную плату не разрабатывал. Все собрано на макетке, внешний вид устройства в рабочем состоянии показан на фото.
Не обращайте внимания на лишние детали на макетной плате. Фотографировал при свете светодиодной лампы мощностью 20 Вт. Расстояние от ее до люксметра 65 сантиметров. Пробовал измерять солнечный свет, при направлении датчика на Солнце, показывает более 54000. Да, чуть не забыл, интервал смены показаний чуть более одной секунды, так что быстро изменяющуюся освещенность замерять не удастся. Данный временной интервал продиктован техническими характеристиками данного датчика освещенности. Вроде все. Успехов всем.
11 комментариев к “Люксметр своими руками”
Отлично, то что надо, спасибо! Дело в том, что на днях пришёл такой же модуль, собрал на нём люксометр, а пока шел, ардуины nano не стало, мегу же запихивать в корпус жалко.;) PIC16F676 имеется, вот только не разу с ними дел не имел, отсюда вопрос: не могли бы подсказать самый дешёвый программатор с алиэкспресса под неё? И если можно, то в двух словах о том, как «прочитайте и сохраните на всякий случай код константы внутреннего тактового генератора.» Если в двух словах не описать, то буду гуглить конечно. Спасибо, успехов!
Привет, Максим, точно, в 2 словах не ответить.
Здравствуйте. А с модулем GY-302 контроллер будет работать?
Привет, Стас, не могу точно сказать, у меня такого модуля нет.
Собрал, заработало сразу. Жаль что однострочный дисплей показывает по полстроки. Может получиться что-то домудрить. А то валяется один, а тут верхняя строка и на не на...
Можете адаптировать проект под однострочник. А лучше под 3х значный семисегментник (4х значный)?
Привет, Олег. Извини сейчас времени нет заниматься электроникой. Куча домашних дел накопилась.
Здравствуйте! Если можно, дайте тогда исходники, буду пробовать сам «дружить» проект с однострочником. А то уже дизассемблер начинаю ковырять. Надо то пару адресов поменять.
Спасибо заранее!
Всем привет! Ответа автора я так и не дождался, уже и не надо в общем то. Разве что для переделки под 7ми сегментники.
А так дизассемблер и Proteus помогли.
В общем переделал так: на 2х строчнике только верхняя строка,
на однострочном как надо:
/http://radikal.ru/fp/y9c50ro4remsz/
/http://radikal.ru/fp/phd8puz1lit4h/
Прошивку могу выслать на усмотрение автора.
there is no connection between Vss an -5V in the schematic off Самодельный барометр для рыбалки there
Sorry. Scheme electric corrected. Я плохо понимаю по английски.