Есть фоторезистор , подключйнный по стандартной схеме +ф-10ком-gnd | A0 // а ты понял схему На него есть датшит где приведена следующая формула : Также есть сам датшит на фоторезистор и несколько лет назад была тема http://forum.amperka.ru/threads/Данные-в-люксах-от-фоторезистора.7592/ Эта маленькая деталька , лежащая в каждом стартовом наборе , при правильном применении знаний может стать очень крутым датчиком...
у них значения хоть и линейнЕЕ ,но больше на ик-часть спектра реагируют да и разброс не большой . Я такой ставил ,чтобы 100 с АЦП получить лампу настольную в упор приходится ставить . Varef понизить не получится т. к. не только его считываю.
Я тут с помощью приложения на телефоне сравнил люксы с датчика телефона и данных АЦП фоторезистора , график что то вроде квадратичного...
ниже вольта не советую - шумы вылезут. Лучше АЦП в дифф режим переключить и там поиграть коэффициентами усиления.
Что за режим такой ? Поискал о нём мало что написано , да и вопрос как переводить значения с фотодиода остаётся открытым , с учётом того что про фоторезистор написано не много.
http://forum.amperka.ru/threads/Дифференциальный-режим-работы-АЦП.17060/ http://forum.amperka.ru/threads/Микрофон-МК-и-ничего-лишнего.17072/ В 328p МК такого нет. В 32u4 есть. трансимпедансный усилитель. Переводит ток в напряжение. Я, например, не знаю ни одного решения, как на фоторезисторе принять ИК излучение от ИК пульта. На диоде - запросто.
В формулу gamma вместо R100 Ом подставляем результат измерения сопротивления r, а вместо 100 лк, искомый l лк. Решаем уравнение: gamma = lg(R10/r) / lg(l/10). Даташит на линейку приборов с очень разными значениями гамма. Поэтому сначала нужно узнать величину гамма.
R10 - сопротивление прибора при освещённости 10 лк. 10 - это те самые 10 лк для которых имеем R10. l - искомые люксы. По даташиту не понятно, является ли таблица на странице 2 продолжением таблицы на странице 1. Если да, то gamma и R10 можно узнать по типу прибора (Type) из колонок g10/100 и Light resistance, если нет, то только экспериментально.
Итак, спустя чуть более года... Я таки решил разобраться с фоторезистором. Вот что получилось: Есть ещё один датшит на фоторезтор от Амперки. Также есть ещё один датшит на схожего вида фоторезтор. Мерим сопротивление фоторезтора в темноте (под подушкой самое то). В тёмное время суток, чтобы не мешал остальной свет. Берём светодиодную лампу цветовой температуры 3000К ( если у вас вдруг окажется лампа цветовой температурой 2850К , как указано в датшите, отпишитесь) Также качаем на несколько телефонов несколько приложений люксметров и выбираем из них наиболее правдоподобные и удобные. Делаем замеры сопротивления при 1,10,100 и 1000 люкс, причём фоторезтор должен находиться параллельно экрану телефон, около датчика яркости и не выступать из-за экрана вперёд. Левая часть данной формулы является коэффициентом, а самая правая это логарифм по основанию десять отношения сопротивления при десяти люксах к сопротивлению при 100 люкс. Получаем из данной формулы коэффициент гамма , путём подстановки сопротивлений при 10 и 100 , 1 и 10 , 100 и 1000 люкс , при 1и 100 , 10 и 1000 гамма делим на два, при 1и 1000, гамма делим на три. Находим среднее, он и будет нашей гамма в большинстве случаев. Также сравниваем сопротивление при темноте "dark" и сопротивление при 10 люкс с данными предоставленным в датшитах , радуемся если гамма, полученная вами, и представленная в датшите близки. Две основных формулы будут следующие: Перевод значений АЦП (analogRead ()) в Омы: R=(d*10000)/(1024-d) , при d=analogRead () , а 10000=10КОм сопротивление делящего резистора Код (C++): d=analogRead (A0); float R=(float)((d*10000)/(1024-d)); Перевод Омы в люксы: Lux=10^(lg(r1/R)/gamma) , где gamma - полученный вами коэффициент , а r1 - сопротивление при 1люксе. Код (C++): #define gamma 0.67 #define r1 200000 float Lux = pow(10, (lg(r1/R)/gamma)); Вот вроде и всё . p.s. Реализован ли на Ардуино тип double, как на C/C++, то есть с двойной точностью. И возможность создавать динамические массивы. Кстати, коэффициент гамма может ходить в стороны на пять сотых (0.05) это от десятков до сотен люкс при тысячах люксах.