Как сообщалось ранее, на рынке датчиков предназначенных для роботы с LEGO Mindstorms NXT появилась новая фирма-разработчик - SmartBricks. Компания - российская и в первую очередь ориентируется на российского потребителя - школы, кружки и энтузиастов-одиночек. |
Итак, объектами тестирования будут 4 датчика:
- стандартный световой NXT датчик
- стандартный цветовой NXT датчик
- датчик SmartBricks с синей подсветкой
- датчик SmartBricks с зеленой подсветкой
SmartBricks датчики выполнены из черного пластика, по форм-фактору и креплению напоминающие стандартные NXT датчики. Внешне датчики с разной подсветкой ничем не отличаются - разница лишь в маркировке на корпусе.
Для тестирования показаний датчиков была собрана следующая установка: мотор через понижающую червячную передачу перемещает балку с закрепленным на ней датчиком. Конструкция крепления датчика позволяет менять его расположение по высоте. Под датчиком размещена тестовая карточка. Использовались карточки трех видов: бело-черная, красно-синяя, желто-зеленая. Изменение цвета - на середине карточки. Положение карточки под датчиком может изменяться - выдвигаться на одно Technic деление так, чтобы соответствовать креплению SmartBricks датчика. Перемещение балки осуществляется таким образом, что датчик перемещается над карточкой от одной окрашенной половины к другой.
Для управления тестовой установкой и сбора показаний с датчиков была написана программа на языке Python (скачать здесь). Принцип работы программы:
- после перемещения балки в базовую позицию (контролируется датчиком касания), начинается цикл сбора показаний датчика
- цикл начинается с запуска двигателя, двигающего балку. Всего выполняет поворот оси на 2400 градусов. За это время балка перемещается на 3 см
- в каждой итерации цикла с датчика снимаются сырые (RAW) инвертированные показания (т.е. большие значения соответствуют светлым участкам), которые записываются в файл вместе с текущим значением таймера и угла поворота оси двигателя. За одно перемещение балки выполняется от 610 до 650 измерений, т.е. в среднем одно измерение на каждые 4 градуса
Обозначения датчиков на графиках:
- LightNXT - датчик освещенности NXT
- LightSBBlue - датчик освещенности SmartBricks с синей подсветкой
- LightSBGreen - датчик освещенности SmartBricks с зеленой подсветкой
- ColorBlue - датчик цвета NXT с включенной синей подсветкой
- ColorGreen - датчик цвета NXT с включенной зеленой подсветкой
Тест #1 - общее сравнение работы сенсоров в режиме замера отраженного света
Все датчики освещенности находятся примерно на одной высоте от карточки - 1.5 - 2 мм. Датчики цвета были установлены на 2 мм. выше, чем остальные - это связано с тем, что при слишком низкой посадке показания датчика на черной половине карточки были равны нулю, что мешало за наблюдением микро-колебаний измеряемой величины.
Тест #2 - зависимость чувствительности датчика от высоты расположения
В тестировании участвовали датчик SmartBricks с зеленой подсветкой (с синей подсветкой, в целом, показывал аналогичную картину) и на световой датчик NXT. Высота датчика увеличивалась с каждым тестом.
lvl 0 | lvl 1 | lvl 2 |
Тест #3 - изменение показаний датчиков при изменении условий окружающей освещенности.
Данный тест применялся к двум SmartBricks датчикам и датчику освещенности. Первая итерация измерений (br 0) проводилась при неярком освещении, в остальных двух - освещенность увеличивалась (br 0 < br 1 < br 2).
Датчик NXT:
Тест #4 - использование датчиков освещенности SmartBricks для определения цвета
В ходе теста использовались желто-зеленая и красно-синяя карточки. Датчики поочередно запускались сначала над красно-синей карточкой, затем над желто-зеленой.
Тест #5 - программирование датчиков освещения SmartBricks в средах NXT-G и NXC
Поскольку световые датчики SmartBricks - аналоговые и работают по тому же принципу, что и датчики - никаких сюрпризов при программировании их в среде NXT-G и на языке Not eXactly C не было - использовались ровно те же NXT-G блоки и NXC функции, как и для стандартных датчиков.
Вывод:
С точки зрения конструирования SmartBricks датчики имеют незначительные отличия от стандартных NXT датчиков. Испытания датчиков в различных условиях освещенности и расположения по высоте показали, что показания на "черном" цвете у датчиков SmartBricks совпадают c аналогичными замерами датчиками NXT, в то время как показания на "белом" цвете в значительной степени смещены в сторону максимально допустимых значений. Данная особенность может приводить к "неразличимости" градаций светло-серого при условиях, когда робот находиться в хорошо освещенном помещении. Тем не менее большой диапазон измерений даже в таких условиях позволит различать темные и светлые участки, в то время как датчик NXT будет подвержен шумам и ложным срабатываниям. При изменении (увеличении) высоты установки датчика, стандартный датчик показывает большую чувствительность, чем датчик SmartBricks, но в значительной мере уменьшает диапазон значений. С точки зрения программирования датчики освещенности SmartBricks никакими особенностями не обладают - используются все те же самые средства, что и для программирования датчиков NXT.
Те, кто заинтересовался возможностью приобретения датчиков SmartBricks, могут посетить интеренет-магазин компании
http://www.ebay.com/itm/LEGO-Mindstorms-NXT-Electric-Light-Sensor-Exc-/261105407833?pt=Building_Toys_US&hash=item3ccb185759
ОтветитьУдалитьцена на датчик света почти аналогична, зато оригинальный лего. ИМХО российский самопал тут ни к чему
Я бы не был столь категоричным.
УдалитьВо-первых, написано, что датчик указанный вами б/у. А во-вторых, сколько выйдет с доставкой - Вы считали? В-третьих, почему Вы решили, что самопал? Являются ли HiTechnic датчики самопалом?
А если теперь мне надо 10 штук - на весь компьютерный класс?
в каждой итерации цикла с датчика снимаются сырые (RAW) инвертированные показания (т.е. большие значения соответствуют светлым участкам), которые записываются в файл вместе с текущим значением таймера и угла поворота оси двигателя. За одно перемещение балки выполняется от 610 до 650 измерений, т.е. в среднем одно измерение на каждые 4 градуса
ОтветитьУдалитьВ итоге, после работы программы для каждого датчика на выходе получается CSV файл. Несколько файлов объединяются в одну электронную таблицу Excel, где показания датчиков интерполируются и объединяются на графике. По оси Х графика - градусы поворота оси двигателя, по сути отображающие положение датчика над карточкой. По оси Y - показания датчика над карточкой в соответствующей позиции.
Подскажите, пожалуйста, как осуществить это на NXT-G? т.е., снять показания датчика, передать их в компьютер и сохранить в текстовом или экселевском файле
Вот тут была заметка - можно с нее начать: http://nnxt.blogspot.ru/2011/02/nxt-g.html
УдалитьNice information on here, I would like to share with you all my experience trying to get a loan to expand my Clothing Business here in Malaysia. It was really hard on my business going down due to my little short time illness then when I got heal I needed a fund to set it up again for me to begin so I came across Mr Benjamin a loan consultant officer at Le_Meridian Funding Service He asked me of my business project and I told him i already owned One and i just needed loan of 200,000.00 USD he gave me form to fill and I did also he asked me of my Valid ID in few days They did the transfer and my loan was granted. I really want to appreciate there effort also try to get this to anyone looking for business loan or other financial issues to Contact Le_Meridian Funding Service On Email: lfdsloans@lemeridianfds.com / lfdsloans@outlook.com He also available on WhatsApp Contact:+1-9893943740.
ОтветитьУдалить