Датчик цвета использует отраженный свет для определения цвета объекта, значения оттенка, значения оттенков серого, яркости и близости.
Датчик цвета VEX IQ входит в комплект VEX IQ Super Kit, также можно приобрести здесь.
Используете робота VEX IQ второго поколения? Обзор датчиков 2-го поколения можно найти здесь, а также информацию об Оптическом датчике, версии датчика цвета 2-го поколения.
Описание датчика цвета
Датчик цвета VEX IQ имеет несколько режимов, которые позволяют ему собирать различные типы информации из окружающей среды. На информацию, которую он собирает, влияют условия освещения окружающей среды, а также расстояние между датчиком и объектом или поверхностью, которую он считывает.
Как работает датчик цвета
Датчик цвета может определять как цвет, так и близость.
Обнаружение цветов
В режиме яркости датчик цвета используется для определения интенсивности всего света в окружении робота. Чем больше света достигает датчика цвета, пока он активен, тем выше процентное значение, отправляемое в мозг робота.
Если обнаруженный процент яркости низкий или ненадежный, можно включить лампу датчика цвета или повысить процент яркости лампы, используя следующую настройку освещения для блокировки:
Датчик цвета может сообщать об воспринимаемом цвете либо как значение цвета, либо как значение оттенка.
Цветовые значения.Перечислено 14 цветов, которые может обнаружить датчик цвета. В изображении блока отсутствуют следующие цвета: красный, зеленый, синий, белый и желтый.
Значения оттенка.Значения оттенка аналогичны значениям цвета, но числовые. Значение оттенка варьируется от 0 до 360, как и в градусах. Перечисленные выше значения цвета имеют свои собственные эквивалентные диапазоны значений оттенка.
При распознавании цветов и оттенков важно, чтобы датчик цвета имел необходимое количество света. Обязательно проверьте (также называемую калибровкой) ваш датчик цвета при разных уровнях освещенности и с лампой, установленной на разные уровни, чтобы определить, какая настройка является наиболее надежной для датчика цвета вашего робота.
Обнаружение близости
Датчик цвета включает в себя инфракрасный датчик-излучатель. Инфракрасный излучатель излучает невидимый свет, а затем обнаруживает его отражение. Если большая часть инфракрасного света отражается обратно к датчику, это сообщает мозгу робота, что объект находится близко.
Распространенное использование датчика цвета
Датчики цвета используются во многих технологических приложениях, где важно иметь определенные цвета на дисплеях или продуктах.
Некоторые распространенные варианты использования в повседневной жизни включают в себя:
- Инструменты калибровки цвета проверяют, отображает ли цифровой экран точные цвета, а затем при необходимости настройте параметры дисплея. Для художников-графиков и любого дизайнера, работающего с цветом на цифровом экране, важно иметь возможность видеть именно тот цвет, который отображается. Недоразумения и напрасная трата ресурсов возникают, когда цвета не точны.
- Фотокамеры и видеокамеры используют датчики цвета для настройки параметров в зависимости от условий освещения, в которых они находятся, чтобы улучшить качество фотографий и видео за счет максимального увеличения уровня освещенности и улучшения тусклых цветов. Эти датчики также позволяют фотографу фокусироваться на определенных цветах на фотографиях.
- Датчики цвета иногда используются на производстве, чтобы быстро проверить, имеет ли продукт правильный цвет, прежде чем он будет отправлен покупателю. Например, фрукты и овощи, меняющие цвет при созревании или готовности к употреблению, можно сканировать, чтобы убедиться, что они имеют правильный цвет для отправки на рынок.
Некоторые распространенные варианты использования робота VEX IQ включают в себя:
- Этот датчик можно использовать для определения цвета объекта. Посмотрите эту анимацию, чтобы увидеть, как робот движется вперед, пока датчик цвета не обнаружит зеленый куб.
- Этот датчик можно использовать для обнаружения и/или отслеживания линии. Посмотрите эту анимацию, чтобы увидеть робота, использующего датчик цвета для движения по обозначенной линии.
- Этот датчик может определить, находится ли объект рядом.
Датчики цвета на соревновательном роботе
Помните, что при распознавании цветов и оттенков важно, чтобы датчик цвета имел необходимое количество света. Обязательно проверяйте (также называемую калибровкой) свой датчик цвета каждый раз, когда вы приезжаете на новое место соревнований, поскольку разные уровни освещенности могут влиять на работу вашего датчика цвета. Проверьте свой проект, установив лампу на разных уровнях, чтобы определить, какая настройка является наиболее надежной для датчика цвета вашего робота.
Информация, собранная датчиком цвета, полезна для программирования конкурентоспособного робота на реагирование на различные условия. Датчик цвета может улучшить робота для соревнований следующим образом:
- Это позволяет роботу определять цвет объекта рядом с датчиком. Это полезно, если вы хотите, чтобы робот сортировал объекты разного цвета, подъезжал к объекту определенного цвета или определял цвет объектов, когда они проходят мимо датчика.
- Это позволяет роботу определять, сколько света отражается обратно в датчик. Это позволяет вашему роботу двигаться до тех пор, пока он не достигнет линии на поверхности или даже следовать по ней.
- Это позволяет роботу узнать, находится ли рядом объект или поверхность. Это полезно для определения того, является ли обнаруженный цвет показанием близлежащего объекта или, возможно, аномальным показанием удаленной поверхности или света.
Кодирование датчика цвета в блоках
Блок <Found an object> — это логический блок репортера, который сообщает об истинном или ложном условии. Логические блоки, такие как блок <Found an object> , помещаются внутри блоков с шестиугольными (шестисторонними) входами для других блоков.
Логический блок <Found an object> сообщает «истина», если «истина», если датчик цвета обнаруживает объект, и «ложь», если датчик этого не делает. Чтобы узнать больше о логических блоках, посетите статью Помощь или формы блоков и их значение.
В этом примере блок <Found an object> используется для обнаружения близости вместе с блоком [Подождать, пока] чтобы заставить робота двигаться вперед до тех пор, пока не будет обнаружен объект.
Блок <Color detects> также является логическим блоком репортера, который сообщает об истинном или ложном условии. Блок <Color detects> сообщает «истина», если «истина», если датчик цвета обнаруживает выбранный цвет, и «ложь», если датчик обнаруживает любой другой цвет. Чтобы узнать больше о логических блоках, посетите статью Помощь или формы блоков и их значение.
В этом примере блок <Color detects> используется вместе с блоком [Подождать, пока] чтобы заставить робота двигаться вперед до тех пор, пока датчик цвета не обнаружит зеленый объект. После этого робот прекратит движение. Это показано в первом видео выше.
Блок (Яркость) сообщает количество света, обнаруженное датчиком цвета. Это репортерный блок, используемый внутри других блоков с круглыми пробелами.
Блок (Яркость) сообщает диапазон от 0% до 100%.
В этом примере блок (Яркость) используется для того, чтобы робот обнаруживал линию и следовал ей, как показано во втором видео выше.
Блок (Оттенок) сообщает оттенок цвета, обнаруженный датчиком цвета. Это репортерный блок, используемый внутри других блоков с круглыми пробелами.
Блок (Яркость) сообщает диапазон от 0 до 360.
В этом примере блок (Оттенок) используется для того, чтобы робот проверял диапазон значений оттенка, соответствующих красному цвету, и поворачивал направо на 90 градусов, если эти значения обнаруживаются датчиком. Если будут обнаружены какие-либо другие значения оттенка, робот повернет влево на 90 градусов.
Блок (Оттенок) может быть полезен, когда роботу необходимо обнаружить определенные цвета, когда условия окружающего освещения могут быть непостоянными.
Кодирование датчика цвета на Python
Примечание:Чтобы запрограммировать бамперный переключатель VEX IQ (1-го поколения) на Python, его необходимо подключить к мозгу VEX IQ (2-го поколения). Мозг VEX IQ (1-го поколения) не поддерживает Python.
цвет_3.is_near_object()
Команда color.is_near_object сообщает True , когда датчик цвета обнаруживает объект или поверхность рядом с передней частью датчика, и False , когда датчик цвета а не обнаруживает объект или поверхность, расположенную близко к передней части датчика. датчик.
Примечание:Имя датчика цвета, отображаемое в команде, соответствует имени, заданному в конфигурации.
drivetrain.drive(FORWARD) |
| В этом примере циклWhile с условием , а не используется с командой color.is_near_object , чтобы заставить робота двигаться вперед до тех пор, пока датчик цвета не обнаружит объект, расположенный близко к передней части робота. датчик. |
цвет_3.цвет()
Команда color.color сообщает цвет, который в данный момент обнаруживается цветным датчиком.
drivetrain.drive(FORWARD) |
| В этом примере циклWhile с условием not используется с командой color.color , чтобы заставить робота двигаться вперед до тех пор, пока датчик цвета не обнаружит зеленый объект. После этого робот прекратит движение. Это показано в первом видео выше. |
цвет_3.яркость()
Команда color.brightness сообщает количество света, обнаруженное датчиком цвета. Сообщается диапазон значений от 0% до 100%.
color_3.set_light(25, PERCENT) |
| В этом примере команда color.brightness используется для того, чтобы робот обнаружил линию и следовал ей, как показано во втором видео выше. |
цвет_3.оттенок()
Команда color.hue сообщает оттенок цвета, обнаруженный датчиком цвета. Он сообщает диапазон значений оттенка от 0 до 360.
brain.screen.print(color_3.hue()) |
|
В этом примере команда color.hue используется для того, чтобы робот проверил диапазон значений оттенка, соответствующих красному цвету, и повернул направо на 90 градусов, если эти значения обнаружены датчиком. Если будут обнаружены какие-либо другие значения оттенка, робот повернет влево на 90 градусов. Команда color.hue может быть полезна, когда роботу необходимо обнаружить определенные цвета, когда условия окружающего освещения могут быть непостоянными. |