![]() | Хотя сенсор из Lego Mindstorms NXT (v1.0) и называется сенсором освещенности, на самом деле с помощью него можно распознавать и цвета. О том какие показания он выдает в случае цветной поверхности уже было упомянуто в одной из предыдущих статей. |
Обычно, цвета распознают в режиме оценки отраженного света. Это значит, что датчик включает светодиод и измеряет количество возвратившегося света с помошью фототранзистора. При этом необходимо помнить:
|
* Возьмите полоску бумаги, на которой бы на белом фоне было бы что-то изображено красным
* Найдите цветное стеклышко красного цвета или прозрачную пленку красного оттенка.
* Посмотрите на полоску бумаги через стекло/пленку.
* То же самое проделайте для полоски бумаги с черными и зелеными фрагментами.
Скорее всего, картинка, наблюдаемая через цветовой фильтр (стекло/пленку), будет похожа на следующую:

Видно, что красный цвет при наложении цветового фильтра практически неразличим с белым, зеленый цвет стал оттенком серого, а черный так и остался самым темным участком на картинке.
![]() | Эксперимент легко подтверждается практическим путем. Например, получим показания (некалиброванные) с сенсора для цветной полоски, расположенной с краю поля, поставляемого вместе с Lego Mindstorms набором.![]() |
Если же полученные результаты неудовлетворительны для создания и программирования того или иного робота, тогда можно порекомендовать "поиграться" с калибровкой и расстоянием от сенсора до объекта:

Комментариев нет:
Отправить комментарий