Использование отражающего датчика для обнаружения зеленых

Мне нужно построить схему, которая определяет, находится ли перед ней зеленый объект.

Поскольку мне не нужно знать, какой цвет находится перед датчиком, а только если есть зеленый объект, я подумал, что датчик цвета может быть немного излишним.

Моя идея состояла в том, чтобы использовать отражающий датчик (точнее, Vishay CNY70 ) с зеленым фильтром перед ним.

Будет ли это работать, и будет ли это работать для более темной зелени? Какой может быть возможный фильтр?

Это приведет к тому, что белые объекты будут ошибочно приняты за зеленые объекты.
Вы можете последовательно включать и выключать красный, зеленый и синий светодиоды, которые светят на объект, а затем использовать датчик освещенности для регистрации того, сколько этого света отражается обратно. Если зеленых отражений гораздо больше, чем красных и синих, можно сказать, что детектируемый цвет — зеленый. Это устраняет проблему обнаружения белого, потому что, если объект белый, отражение будет улавливаться в показаниях красного и синего.
Я использую трюк для оценки приложений промышленного зрения, чтобы сделать цветную фотографию объекта, а затем разделить изображение на каналы R, G и B. Такая программа, как XNView, делает это довольно легко, выдавая изображение в оттенках серого для каждого канала. Изображения можно сравнивать друг с другом, чтобы понять, как монохромная камера или датчик будут воспринимать объект при различных условиях освещения или фильтров. Этот метод может помочь вам оценить лучшее решение для этого приложения.
Очевидно, вам ДЕЙСТВИТЕЛЬНО необходимо определить, какой цвет находится перед датчиком, по крайней мере, на уровне различения «зеленого» от «не зеленого». Следовательно, вам нужно будет ощущать как минимум два цвета (или два набора цветов, таких как зеленый и его дополнение, пурпурный), чтобы определить, есть ли у вас объект без объекта, зеленый объект или объект другого цвета, кроме зеленый. В любом случае, датчики цветного изображения массового производства в наши дни невероятно дешевы, поэтому, даже если это излишество, более рентабельно использовать один вместо создания собственного датчика.
@DaveTweed Я пробовал некоторые датчики цвета раньше (TCS 3200 и другие), и они не работали. Есть ли датчик цвета, который вы могли бы порекомендовать?
Я сказал «датчик цветного изображения». Вы можете найти их на любом из сайтов для любителей, таких как Sparkfun .

Ответы (2)

Если бы вы проверили спецификацию детали, которую вы перечислили, вы бы заметили, что CNY70 является инфракрасным излучателем/детектором. Детектору, вероятно, все равно, но он находится за фильтром, пропускающим к детектору только инфракрасное излучение. Излучатель посылает только инфракрасное излучение.

Никакой фильтр, который вы могли бы использовать, не заставит его надежно реагировать на зеленые объекты, потому что зеленый цвет слишком далек от рабочего спектра детали.

Чтобы сделать это с помощью отражения, вам понадобится зеленый излучатель и детектор с зеленым фильтром.

Фототранзисторы имеют очень широкий спектр отклика, так что здесь нет проблем. Вам нужно соединить зеленый светодиод с фототранзистором и поместить их оба за кусок зеленого стекла или пластика.

Как отметил в комментарии @BrianDrummond, детектор с зеленым фильтром будет обнаруживать зеленые объекты, а также белые объекты, потому что белый также отражает зеленый.

Таким образом, вы можете использовать зеленый детектор только в том случае, если вы можете гарантировать, что все объекты, которые должны быть обнаружены, будут иметь только цвета, содержащие зеленый цвет, и что все объекты, которые не должны быть обнаружены, не будут отражать зеленый цвет.

В качестве альтернативы вы должны определять все цвета отдельно (RGB) и оценивать три детектора, чтобы решить, какой зеленый цвет действительно зеленый.

Комментарий Брайана приводит к ответу:

Простое решение: я рекомендую использовать пурпурный фильтр, т.е. фильтр, пропускающий все длины волн, кроме зеленых. Затем поместите красный или синий фон позади плоскости, где будут появляться ваши объекты. Зеленые, темно-зеленые и, к сожалению, черные объекты вызовут срабатывание вашей цепи.

Интересное решение: если вы хотите отличить зеленые объекты от черных, вам придется использовать либо два датчика (сложно), либо два источника света (просто со светодиодом). Облучайте объект попеременно зеленым и пурпурным светом. Последний с помощью красного и синего светодиодов. Датчик должен работать без фильтра. Затем вы можете проверить, является ли объект белым, зеленым, а не зеленым или черным.

Но для обоих решений вам понадобится совершенно другой датчик. Данный датчик подходит только для инфракрасного излучения. нужен датчик видимого света. В зависимости от типа вам придется его откалибровать.

столько минусов. Почему?