Измерение продолжительности пикового уровня освещенности с помощью фоторезистора
Я пытаюсь измерить выдержку на старых камерах. По сути, это состоит из:
- Свет фонарика на одном конце камеры
- поместив фоторезистор на другом конце
- срабатывает затвор, который временно пропускает свет от фонарика (временно увеличивая значения фоторезистора)
- Регистрация продолжительности повышенного скачка уровня освещенности
То, что у меня есть в настоящее время, регистрирует уровни освещенности, но разброс огромен и, как правило, неверен, поскольку они меняются в зависимости от того, насколько близко находится фонарик к затвору, и обычно регистрирует значения между 400 и 900 мс, что слишком долго (должно быть около 50 мс).
Вот код ключа, который у меня есть на данный момент:
if (shutterbot.opened())
{
/* Measure length of time it is opened until closure */
unsigned long previousMillis = millis();
while(true)
{
unsigned long currentMillis = millis();
unsigned long time_elapsed = currentMillis - previousMillis;
if (shutterbot.closed())
{
finished = true;
/* Report back to user */
Serial.println("Shutter speed is: ");
Serial.println(time_elapsed);
break;
}
}
}
Методы открытия и закрытия в классе shutterbot:
/* If light is 10% higher, set it to start recording */
int Shutterbot::opened()
{
if (light_level() > 400)
{
return true;
}
else
{
return false;
}
}
/*
If light drops to below 10% higher, set it to stop
recording
*/
int Shutterbot::closed()
{
if (light_level() < 400)
{
return true;
}
else
{
return false;
}
}
Полный код проекта находится здесь, для тестирования нужны только модуль фоторезистора и arduino uno. Я не уверен, что предоставил достаточно информации, поэтому если есть какие-либо вопросы, пожалуйста, дайте мне знать. Любая помощь будет высоко оценена, и спасибо за чтение.
@sam.cooper645, 👍0
Обсуждение1 ответ
Лучший ответ:
Маловероятно, что фоторезистор можно использовать для измерения времени события с точностью до секунды. Это связано с тем, что электроны в таком устройстве имеют множество проводящих состояний, в которые они переходят при воздействии света и из которых выходят при нахождении в темноте. Электронам требуется время, чтобы войти в эти проводящие зоны и выйти из них. В некоторых случаях это может занять значительную часть секунды. Как описано во 2-м абзаце в разделе Соображения по проектированию на вышеуказанной странице Википедии:
Фоторезисторы также демонстрируют определенную степень задержки между воздействие света и последующее снижение сопротивления, как правило, около 10 миллисекунд. Время задержки при переходе от освещенного к темному среды еще больше, часто до одной секунды. Это свойство делает их непригодными для обнаружения быстро мигающих огней, но иногда используется для сглаживания отклика аудиосигнала сжатие.
Спасибо, что посмотрели на st2000. Я откажусь от этой идеи и пойду по пути IR., @sam.cooper645
Вы должны быть в состоянии использовать фотодиод или транзистор, как предлагают другие здесь. Если вам интересно, я столкнулся с этой же проблемой много лет назад в студенческом проекте., @st2000
- Использовать timer0, не влияя на millis() и micros().
- Как перезапустить счетчик в программе с помощью кнопки в настройке LDR Tripwire
- Arduino Мигает двумя светодиодами без задержки (количество повторений)
- Как рандомизировать задержку в коде шагового двигателя Arduino?
- Запуск двигателя постоянного тока в течение заданного промежутка времени
- Измерение скорости автомобиля между двумя точками: какой датчик использовать и как преодолевать расстояние?
- Как заставить ЖК-экран прокручивать текст , позволяя вводить кнопки?
- Как запустить 4 светодиода последовательно на основе кнопочного входа?
Вы проверяли время реакции фоторезистора? Возможно, включив свет с помощью arduino и засекая, как быстро фоторезистор достигает вашего порога., @Craig
Если @craig прав и фоторезистору требуется слишком много времени для переключения, может быть, вам следует использовать быстрый фототранзистор?, @esoterik
Спасибо, ребята, я не засек промежуток между уровнями покоя и пиком, но я собираюсь попробовать ИК-маршрут. Не уверен насчет быстрого фоторезистора. У них есть частота дискретизации или что-то связанное?, @sam.cooper645