![]() | Задача робота-сортировщика - размещение набора различных предметов в заранее определенных местах, основываясь на различных свойствах предметов, над которыми проводится операция сортировки.Раньше уже рассматривалась одна модель робота-сортировщика, который использовал только один мотор. Но он сортировал предметы только по цвету. |
Допустим, у нас есть несколько наборов цветных кубиков - зеленые, синие и крансые, отличающихся по размеру - мальенькие и большие. Необходимо отсортировать их по шести разным позициям: меленькие красные, большие красные, маленькие синие, большие синие и т.д.
Очевидно, что для определения цвета нужно использовать цветовой сенсор. В то время как для определения размера, можно использовать разные способы. Чтобы сократить количество используемых сенсоров, попробуем для этого использовать тот же цветовой сенсор, имея в виду наблюдения освещенные в предыдущих заметках: здесь и здесь.
Сразу хочется сказать, что в данной заметке, просто рассматривается методика определения цвета и размера одним сенсором. Она не освещает, как сконструировать робота-сортировщика, использующего данную методику.
В начале любых испытаний, необходимо озаботить лабораторной установкой, на которой эти испытания будут проходить. Например, можно использовать вот такую простую конструкцию:

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

Для начала, произведем замеры различных показателей, которые способен выдавать сенсор, для различных кубиков.
Цветовой сенсор предоставляет возможость производить измерение отраженного от поверхности света для трех различных монохромных источников: красный, зеленый и синий. В программе будут поочередно включаться каждый из светодиодов, а результаты измерения освещенности будут выводиться на экран.
Также можно посмотреть будет ли полезна освещенность измеренная, без включения светодиодов вообще:
Теперь, помещая под сенсор все шесть видов кубиков один за другим, можно получить следующие результаты:
Если проанализировать данную таблицу, то можно вывести следующие закономерности:
- Размер кубика однозначно определяется освещенностью измеренной без включенных светодиодов сенсора. Можно сказать, что если сенсор вернул больше 28, то кубик - маленький, если меньше, то кубик - большой
- Для красных кубиков (больших и маленьких) справедливо высказвание, что освещенность в красном свете больше освещенностей как в синем свете, так и в зеленом: (R > G) and (R > B)
- Синие кубики можно определить, если сравнить освещенность в синем свете с освещенностью в зеленом, при условии, что освещенность в зеленом свете больше освещенности в красном: (B > G) and (G > R)
- При анализе зеленых кубиков, освещенность в зеленом свете опять больше освещенности в красном, но в тоже время больше освещенности в синем: (G > B) and (G > R)


Целиком итоговая программа для данной лабораторной установки, а равно для данных условий окружающей освещенности будет следующая:

Ниже представлены результаты ее работы:
![]() | ![]() |
![]() | ![]() |
![]() | ![]() |
- условия окружающей освещенности
- расположение сенсора, относительно кубиков
- оттенки цветов кубиков
тут вы используете цветовой сенсор. а что делать если на сенсоре освещенности зеленый и синий кубик показывает значение освещенности одинаковое?
ОтветитьУдалитьЗдравствуйте. Где вы берете различные установки для опытов или делаете их сам? Если вы делаете их сам, то напишите, пожалуйста, в каком 3d конструкторе.
ОтветитьУдалитья знаю один редактор LDRAW (http://www.ldraw.org сайт на английском, но вы можете его перевести, или вот ещё http://yandex.ru/yandsearch?text=ldraw&lr=36 )
Удалить