Датчик цвета ардуино


Датчик цвета ардуино-0

Датчик цвета ардуино — большой динамический диапазон

Massimo Gottardi

Датчик цвета ардуино — изображенная на Рисунке 1 схема датчика цвета способна в широком динамическом диапазоне генерировать RGB-триплеты, являющиеся очень полезным атрибутом приложений машинного зрения. В схеме реализовано автоматическое управление экспозицией, благодаря которому значения RGB инвариантны относительно интенсивности освещения.

Датчик цвета ардуино-1
Рисунок 1. Датчик RGB с автоматическим управлением экспозицией.

Пока микроконтроллер удерживает активный уровень сигнала сброса RES, три RGB фотодиода с общими катодами (U1, Рисунок 2) остаются слегка смещенными в обратном направлении до напряжения VR (в типичном случае до 0.5 В) через три N-канальных MOSFET M1, M2 и M3. После завершения фазы сброса напряжения в узлах R, G и B начинают линейно увеличиваться пропорционально интенсивности каждой цветовой компоненты. Эти сигналы поступают на три компаратора (U2), выходы которых объединены по схеме монтажного «ИЛИ». Первое из напряжений, достигших порогового уровня VTH (с типичным значением 2.6 В), переключает соответствующий компаратор, выходной сигнал которого через инвертор U3A стробирует усилители выборки-хранения (УВХ) U4.

Датчик цвета ардуино-2
Рисунок 2. RGB датчик S9032.

Оцифровка сохраненных напряжений

Затем датчик цвета ардуино оцифровывает сохраненные напряжения RH, GH и BH для дальнейшей обработки. В принципе, аналого-цифровое преобразование можно выполнять с помощью микроконтроллера и без использования УВХ U4, однако последовательные преобразования привели бы к появлению ошибки выборки сигналов, которая была бы тем больше, чем ярче сигналы и, соответственно, выше скорость нарастания. Альтернативой микроконтроллеру может быть использование трех АЦП.

Диод D1 добавляет дополнительный гистерезис компараторам, а D2 нужен для того, чтобы дать Arduino возможность, установив низкий уровень в узле T2, сохранить сигналы RGB и определить максимальное время экспозиции. Эта функция необходима для того, чтобы гарантировать фиксированный темп преобразования. Временные диаграммы сигналов схемы показаны на Рисунке 3. В момент времени t1, когда R = VTH, уровень напряжения на выходе компаратора U2A становится низким, триплет [RH, GH, BH] фиксируется в УВХ, и в конце процесса оцифровывается микроконтроллером (TADC). По истечении максимального времени экспозиции (t2) микроконтроллер устанавливает на SH1 низкий уровень и начинает преобразование входных сигналов.

Датчик цвета ардуино-3
Рисунок 3. Временная диаграмма работы датчика цвета.

Подводя итог, отметим, что поскольку время экспозиции t1 определяется самым ярким из сигналов R, G и B, насыщения какого-либо из каналов не происходит. Компрессия сигналов позволяет при 8-битном АЦП получить динамический диапазон 100 дБ. Более того, чтобы достичь таких характеристик, не требуется настройка ни одного из параметров схемы.

Автоматическое управление экспозицией

Рисунок 4 поясняет, каким образом автоматическое управление экспозицией позволяет получить большой динамический диапазон измерений. С учетом поставленной цели, для каждой интенсивности света время экспозиции всегда будет таким, чтобы гарантированно имелся участок, на котором значения [RH, GH, BH] постоянны.

Датчик цвета ардуино-4
Рисунок 4. Пример двух RGB-триплетов, полученных от одного объекта при
разных уровнях освещенности. [R1,G1,B1] – яркие сигналы, выборка
которых произошла в момент времени Ta, в то время как [R2,G2,B2]
– слабые сигналы, выбранные в момент Tb. Поскольку
[R1,G1,B1]Ta = [R2,G2,B2]Tb, цветность объекта не зависит от
интенсивности освещения.

Хотя промышленностью выпускаются законченные RGB датчики с цифровыми интерфейсами (например, Avago APDS-9950, ams TMG3993), возможность автоматического управления экспозицией в них не предусмотрена, поэтому для получения аналогичной функциональности потребовались бы многократные измерения и активное использование вычислительных ресурсов микроконтроллера.

Источник: edn.com