Pixy cmucam5 камера для lego mindstorms

Обновлено: 12.05.2024

Both versions of the Pixy camera, Pixy and Pixy2, are available in a special LEGO version. In this tutorial we explain how to use them on ev3dev and using Python.

General information about Pixy/Pixy2 for LEGO Mindstorms can be found on Charmed Lab’s wiki-page.

On ev3dev there is a difference in using Pixy or Pixy2: ev3dev does contain a driver for Pixy, but not for Pixy2. But it’s easy to use Pixy2 by setting up direct I2C communication between the EV3 and Pixy2. Both methods will be explained. At the end of this tutorial you will find a link to a Github repository containing more detailed information and more examples (including the linetracking functionality of Pixy2).

What you need

  • LEGO Mindstorms EV3 running on ev3dev.
  • Pixy for LEGO Mindstorms or Pixy2 for LEGO Mindstorms. The camera is connected to the EV3 with the cable delivered with your Pixy or Pixy2.

Using Pixy for LEGO Mindstorms

In python use the Sensor class to connect to the Pixy camera:

In this example it is assumed the camera is connected to input port 1. Next set the mode for the camera:

The Pixy camera has the following modes:

The data which you retrieve from the camera depends on the camera mode. You can find detailed information on this page. We will explain it to you with a simple example.

When the mode is set to ALL , you can retrieve data as follows:

When mode is set to one of the signatures (e.g. SIG1 ), retrieve data as follows:

Example for Pixy - Display detected object on EV3-LCD

In this example Pixy is set to mode SIG1 . The program continuously reads data from the camera, until the TouchSensor is pressed. When valid data is received, the program calculates the size and shape of the bouncing box of the largest detected SIG1 object. Be aware that the resolution of the Pixy camera and the resolution of the EV3 display are not the same. Pixy’s resolution while color tracking is (255x199) and EV3’s resolution is (178x128). This means you have to scale the values from the Pixy! To update the bouncing box on the display, first the display needs to be cleared and then the bouncing box can be redrawn.

This video shows this script running:

Using Pixy2 for LEGO Mindstorms

One important difference with the old Pixy is that you have to use Pixy2 without a driver. An easy way to do this is by using the Python smbus module for setting up direct I2C communication between the EV3 and the Pixy2.

First configure Pixy2 to communicate over I2C. For this you can use the PixyMon tool that comes with Pixy2. Open the configure dialog and click on the Interface tab.

If you don’t see the Interface tab, you’re probably not running the right firmware on the Pixy2 camera. Be sure to run the stock version, instead of the LEGO version. See Pixy2 documentation how to install firmware.

Configure dialog in PixyMon

Set Data out port to I2C and I2C address to 0x54 (or any other address you like).

In your Python script import the module smbus :

Next set the EV3 input port to other-i2c :

Define the I2C-bus:

  • for INPUT_1 : SMBus(3)
  • for INPUT_2 : SMBus(4)
  • for INPUT_3 : SMBus(5)
  • for INPUT_4 : SMBus(6)

Assume we’re using port 1. Don’t forget to use the same I2C-address as configured on the Pixy2 ( 0x54 ):

Now everything is set up to request and receive data form Pixy2. You can find the serial protocol on the Pixy2 wiki.

Each request starts with the same two bytes 174, 193 . The other bytes depend on the type of request. For instance, when you want to request the firmware version of the camera, your data packet will be (check Pixy2 documentation):

You send this request to the camera as follows:

Now you can read the response:

The first parameter in this read function is the I2C-address of the camera. The second parameter is an offset, which is zero in this case. The third parameter is the number of bytes that the response contains. As you can see in the Pixy2 documentation, the version-request returns 13 bytes. According to the documentation you find the major version in byte 8 and the minor in byte 9:

Example for Pixy2 - Display detected object on EV3-LCD

This is the same as the previous example, but this time written for Pixy2. We like to detect objects with signature 1 and display the bouncing box on the display of the EV3-brick. For this we use getBlocks() to receive information about the detected object (see Pixy2 documentation). The data packet for the request is like this:

Where sigs is the signature or signatures we’re interested in. It is the sum of all desired signatures. So in case we’re only interested in signature 1 sigs = 1 and when we’re interested in signatures 1, 2 and 3, then sigs = 6 (1 + 2 + 3 = 6) . In this example sigs = 1 . So the request looks like this:

We’re only interested in the largest detected object with signature 1, so the last byte of our data packet has the value 1. To read the response to our request:

The response contains 20 bytes, hence the last parameter in read_i2c_block_data() is 20. Now we can extract the desired data:

With this information we can calculate and display the bouncing box, just like in the example for Pixy. Be aware that the resolution of the Pixy2 camera and the resolution of the EV3 display are not the same. Pixy2’s resolution while color tracking is (316x208) and EV3’s resolution is (178x128). This means you have to scale the values from the Pixy2!

This video shows this script running:

When using smbus there is one important issue you have to think about: it is limited to read 32 bytes of data at a time. This is fine for all Pixy2 functionalities, except for linetracking. The linetracking datablock contains more bytes of data, so you cannot read it completely in once. Therefore, first read the header bytes, followed by the bytes containing the feature data, one feature at a time. This is shown in the example on Github.

More info

Authors

LEGO® is a trademark of the LEGO Group of companies which does not sponsor, authorize or endorse this site

камера Pixy для Lego Mindstorms

Если вы выбирали камеру для робота, то наверняка слышали о Pixy. Это популярная система машинного зрения для Arduino и Raspberry Pi. А теперь и для Lego Mindstorms. 30 сентября Charmed Labs анонсировала новую версию продукта.

Видеокамера Pixy производства Charmed Labs предоставляет простую возможность реализации элементов машинного зрения. Тысячи камер были проданы по всему миру после успешно проведенной компании на Kickstarter в начале 2014 года.

В отличие от большинства камер, Pixy выполняет обработку изображения на своем борту, освобождая мощности микроконтроллера для других задач. Вы можете быстро «научить» Pixy обнаруживать новые объекты почти также просто, как считать сигнал нажатия кнопки. Встроенные в его прошивку алгоритмы способны обнаруживать и отслеживать сотни объектов одновременно.

Стандартная версия Pixy поддерживает многие микроконтроллеры, в том числе популярную платформу Arduino, а также одноплатные компьютеры Raspberry Pi и BeagleBone Black.

Новая видеокамера Pixy LEGO подключается напрямую к контроллеру Lego Mindstorms NXT или EV3 с помощью прилагаемого кабеля и интегрируется в программную среду Lego.

Вы часто хотите, чтобы ваш легоробот догнал мяч или подобрал объект. Но это очень трудно реализовать без правильного датчика. Pixy дает роботу возможность выполнения этих видов задач, потому что видит объекты в окружающей среде,

— говорит президент Charmed Labs Рич Легранд.

Теперь интеграция камеры Pixy с Lego стала проста. Порядок установки описан на wiki-странице проекта. Р анее, чтобы «подружить» легоробота с Pixi CMUcam5, необходимо было преодолеть сложности, в том числе был необходим адаптер UART.

Charmed Labs — небольшая компания, расположенная в городе Остин штата Техас (США), специализирующаяся на предоставлении передовых встраиваемых решений для образовательных целей.

Lego-OpenCV

Давно мечтали подключить к блоку EV3 камеру и подарить легороботу машинное зрение? Установка нового релиза Lejos EV3 0.9.1 подарит вам эту возможность.

Блог проекта Lejos сообщает, что их новый релиз прошивки для EV3 поддерживает мощную библиотеку для обработки изображений OpenCV 2.4, включающую функции распознавания лиц, слежение за объектом и другие.

Lejos — альтернативная прошивка для программируемых блоков Lego. Это виртуальная Java-машина для EV3. Lejos предоставляет возможность использовать объектно-ориентированный язык Java и это открывает бОльшие по сравнению со штатной средой программирования возможности: массивы, рекурсии и прочее. Lejos является open-source проектом.

В отличие от предлагаемого компанией Charmed Labs способа наделения легороботов компьютерным зрением с помощью камеры Pixy, у которой для обработки изображений используется свой процессор, Lejos дарит возможность подключить обычную вэб-камеру к USB-порту программируемого блока EV3. Списка поддерживаемых камер нет, но можно найти некоторую информацию об успешных экспериментах на форуме Lejos.

Кроме того новая версия Lejos позволяет объединить EV3-блоки и другие устройства в сеть PAN (Personal Area Network), позволяя устройствам взаимодействовать друг с другом, подключать дополнительные библиотеки.

Lego — самый популярный робототехнический конструктор, но функции компьютерного зрения в штатном программном обеспечении не реализованы. В состав программного обеспечения для конструкторов некоторых других производителей библиотеки машинного зрения включены. Например, Fischertechnik Robotics TXT Discovery set, ТРИК, у которых камера в комплекте.

В 2015 году на Всероссийской Робототехнической Олимпиаде в Иннополисе в творческой категории было несколько роботов из конструктора Lego Mindstorms, использующих библиотеки компьютерного зрения, однако у всех они исполнялись не на программируемом блоке Lego, а на ноутбуке, а роботы получали сигналы от компьютера уже с результатами программ распознавания образов. Новинка позволяет подключить библиотеку OpenCV к самому Ev3.

UPD 20.11.2015:

Яков Кириленко, директор по развитию ООО «КиберТех Лабс», компании-разработчика конструктора ТРИК, прокомментировал появление компьютерного зрения на Lego Mindstorms:

Кстати, а вы пробовали разобраться, что именно там «поддержали» в лехосе и как? Подсказка: еще долго ждать даже примитивные алгоритмы, но шанс на них есть. Даже NXTCam, скорее всего, удастся полностью заменить, но от opencv придется отказаться.
В Лего (EV3) компьютерного зрения нет, сравниваться не с чем. Ну с нашей высоты полета, хотя о «продуктовых» фичах на основе примитивных алгоритмов можно порассуждать.
На EV3 возможны минимальные алгоритмы (те, что у нас (речь о ТРИКе — прим. ред.) «в поставке» с 2014 г, а в прошивке даже раньше), но с сильным загрублением, с потерей точности. То есть сделать на USB-камере датчик цвета MxN или «датчик линии» можно попробовать, должно получиться.
Есть отдельно NXTCam, интересная вещь, но малопопулярная. Ее время не настало пока, но может и не начаться. К EV3 можно легко подключить смартфон вместо камеры и такие попытки были, а продукта («переходника») пока нет. Железка там простая, но с софтом сложнее. Как вариант, такой продукт (датчик-переходник на телефон) может родить Техникс, договорившись с WRO о новых правилах 2017, в которых бы использование и доработка алгоритмов обработки видео были бы частью задачи.

Upd. 23.06.2016:

Пример использование библиотеки OpenCV на EV3 показал пользователь YouTube Алексей Валуев. На видео продемонстрирован робот, собранный из образовательного набора Lego Mindstorms Education EV3 (арт.45544) и веб-камеры. Робот следит за цветным шариком и выдерживает определенное расстояние до него. К сожалению, микрокомпьютер EV3 с библиотекой OpenCV работает медленно, при обработке изображения идет задержка, тем не менее робота удалось запрограммировать на выполнение интересной учебной задачи с использование библиотеки компьютерного зрения. Опыт использования библиотеки Open CV на EV3 для слежения за объектом описан в статье.

Камера компьютерного зрения Pixy CMUcam5 купить оптом и в розницу в СompactTool с доставкой по Москве и России

Полностью автоматизированная платформа обнаружения и распознавания статичных/подвижных объектов PixyCam, легко интегрируемая в проекты, построенные на большинстве популярных микроконтроллеров, таких как Arduino, Raspberry Pi, BeagleBone Black и многие другие.

Технические характеристики

  • Процессор: двухядерный 32-битный NXP LPC4330 на базе ARM Cortex-M4 и ARM Cortex-M0
  • Тактовая частота: 204 МГц
  • Питание: 5 вольт от USB, 6-10 вольт от внешнего источника
  • Потребляемый ток: 140 мА
  • RAM-память: 264 Кбайт
  • Flash-память: 1 МБайт
  • Датчик изображения: Omnivision OV9715, матрица 1/4", разрешение до 1280х800 точек
  • Угол обзора: 75 градусов по горизонтали, 47 градусов по вертикали
  • Тип линзы: стандартная М12
  • Поддержка языков: C/C++ и Python
  • Интерфейсы вывода данных: последовательный UART, SPI, I2C, USB, цифровой, аналоговый
  • Встроенный источник освещения, яркость примерно 20 люменов
  • Размеры: 53 х 51 х 35 мм
  • Вес: 27 гр
  • Модель: Pixy R1.3

Руководство по началу работы

Самое подробное руководство по всем продуктам PixyCam вы найдёте в нашем разделе "PIXYCAM документация" (в разработке*). Репозиторий содержит в себе всю необходимую документацию по подключению Pixy к разным микроконтроллерам и взаимодействию. В информационном разделе расположены инструкции по предварительной настройке вашего компьютера для разных ОС, по установке совместимого ПО, требуемого для написания пользовательского кода, большое количество примеров программ, советы по устранению неполадок и многое другое.

Как появилась Pixy

Появление Pixy CMUcam5 обусловлено совместной дружбой между Институтом робототехники им. Карнеги-Меллона (Carnegie Mellon Robotics Institute) и научно-технической лабораторией Charmed Labs. Pixy принадлежит к длинной линейке разнообразных моделей камер семейства CMUcam, её реальная разработка началась с компании на Кикстартер. Успех во всём мире пришёл к Pixy в марте 2013 года. И по сей день, эта платформа находится на волне самых популярных систем машинного зрения в истории! Финансирование Pixy осуществляется исключительно через продажи, поэтому разработчики благодарят своих покупателей за помощь в поддержке Pixy.

Что на обратной стороне Pixy?

Обратная сторона Pixy

Зрение как сенсор

Если вы хотите, чтобы ваш робот выполнял такие задачи, как взятие предмета, преследование за мячом, поиск зарядной станции и т.д., и вы ищете полноценное устройство, способное помочь в осуществлении всех поставленных целей, тогда зрение — это ваш сенсор. Датчики зрения (изображения) крайне полезны, потому что они очень гибкие. При правильном алгоритме, датчик изображения может воспринимать или обнаруживать практические всё, что угодно. Стоит понимать, что сами датчики изображений имеют пару недостатков. Во первых, они выдают сразу много данных, измеряемых мегабайтами в секунду. Во вторых, обработка огромного количества данных может перегружать большинство процессоров. Если же процессор успевает обрабатывать данные, то большая часть его вычислительной мощности будет не доступна для других задач.

Pixy помогает решить подобные проблемы, так как объединяет в своей конструкции датчик изображения и выделенный процессор, передавая на ваш контроллер только полезную информацию (например, фиолетовый динозавр, обнаруженный по координатам x=54 и y=103). И делает это с частотой до 50 кадров в секунду. Передаваемая информация доступна из нескольких интерфейсов: последовательный UART, SPI, I2C, USB или цифровой/аналоговый выход. Таким образом, ваш Ардуино или другой микроконтроллер способен легко общаться с Pixy, и иметь при этом достаточно свободных процессорных ресурсов для других задач.

К вашему микроконтроллеру можно одновременно подцепить до нескольких камер Pixy — например, робот с четырьмя камерами, обозревающий пространство вокруг себя на 360 градусов. Или использовать Pixy без микроконтроллера, самостоятельно управляя переключателями или сервомоторами при определённом событии.

Основные преимущества

  • Небольшая, быстрая, простая в использовании, недорогая, легкодоступная система технического зрения
  • Способна определять предметы, которым вы её учите
  • Выводит информацию о том, что обнаруживает 50 раз в секунду
  • Подключается к Arduino с помощью прилагаемого кабеля, также работает с Raspberry Pi, BeagleBone и аналогичными контроллерами
  • В репозитории Pixy располагаются все библиотеки для Arduino, Raspberry Pi и др.
  • Инструмент конфигурирования Pixy работает на Windows, MacOS и Linux
  • Всё пользовательское/фирменное программное обеспечение имеет открытый исходный код по лицензии GNU
  • Вся документация по аппаратной части, включая схемы, спецификации, разводка печатных плат и т.д, доступны в репозитории Pixy

Поддержка контроллеров

Pixy легко подключаться ко множеству популярных микроконтроллеров, для этих целей она оснащена различными вариантами интерфейсов: последовательный UART, SPI, I2C, USB или аналоговый/цифровой выход. Первый опыт в коммуникации Pixy получила от общения с модулями Ардуино. Разработчиками Pixy добавлена поддержка Arduino Due, Raspberry Pi и BeagleBone Black. Для всех вышеперечисленных платформ предоставляются готовые библиотеки программного обеспечения, поэтому вы можете быстро приступить к работе с ней. Кроме того, в модель Pixy был включён программный интерфейс языка Python, если предполагается использование контроллеров на основе Linux.

Фиолетовые динозавры (и другие вещи)

Определение объектов в Pixy реализовано на основе алгоритма цветовой фильтрации. Подобные методы популярны, эффективны и достаточно надёжны. Большинство из нас знакомы с аббревиатурой "RBG" (красный, зелёный и синий), применяемой в представлении цветов. Pixy рассчитывает цвет (оттенок) и насыщенность каждого пикселя RGB, передаваемые датчиком изображения, после чего использует полученные параметры в качестве основы при выполнении алгоритма фильтрации. Цветовой оттенок объекта в значительной степени остаётся неизменным при изменяемых освещении и экспозиции. Алгоритм фильтрации Pixy надёжен в тех случая, когда речь идёт об возможных изменениях освещения и экспозиции, способных негативно повлиять на метод определения в аналогичных устройствах.

Цветовые метки

Pixy запоминает до семи различных цветовых меток. У алгоритма цветной фильтрации Pixy не возникнет проблем с идентификацией объектов, имеющие уникальные цветовые метки. В тех случаях, когда требуется распознавать более семи предметов, применяются цветовые коды (см. ниже).

Сотни объектов

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

50 кадров в секунду

Что подразумевается под понятием "50 кадров секунду"? Говоря коротко, Pixy достаточно быстро успевает обрабатывать каждый кадр изображения в разрешении 640х400, на один такой кадр тратится всего 1/50 секунды (20 миллисекунд). Вы получаете обновлённую информацию о новом положении обнаруженных объектов каждые 20 миллисекунд. При такой скорости, становиться возможным отслеживание траектории прыгающего мяча. Например мяч, двигающийся со скорость около 30 миль (приблизительно 48 км) в час, перемещается на расстояние менее 1 фута (30,5 см) за 20 миллисекунд.

Как научить Pixy распознавать определённые предметы

Уникальность Pixy заключается в абсолютно простом методе запоминания интересующих вас объектов. Фиолетовый динозавр? Поместите динозавра перед камерой Pixy и нажмите кнопку. Оранжевый мяч? Поместите мяч перед камерой Pixy и нажмите кнопку. Как видите, ничего сложного.

Говоря более конкретно, вы обучаете Pixy простым удерживанием объекта перед объективом камеры, одновременно нажимая расположенную сверху кнопку. Находящийся под объективом RGB светодиод отображает цвет объекта, на который смотрит камера. Например, светодиод становится оранжевым, когда перед Pixy размещается оранжевый шарик. Отпустите кнопку, и Pixy создаст статическую модель цветов, содержащихся в объекте, после чего сохранит модель в своей флеш-памяти. С этого момента, модель будет задействована в поиске объектов с аналогичным цветовыми идентификаторами.

Учим Pixy запоминать объекты

Pixy способна запоминать до семи цветовых идентификаторов, пронумерованных 1-7. По умолчанию, цветовому идентификатору присваивается номер 1. Запоминание других цветовых идентификаторов (2-7) выполняется простой последовательностью нажатий кнопок.

PixyMon покажет вам, что видит Pixy

PixyMon — удобное пользовательское приложение, совместимое с ОС Windows, MacOs и Linux. Оно позволяет вам видеть всё, что видит объектив камеры Pixy. Отображаемое в реальном времени, изображение выводится на экран в виде необработанного или обработанного видео. Оно помогает правильно настраивать Pixy, устанавливать порт вывода данных и управлять цветовыми идентификаторами. PixyMon связывается с Pixy через стандартный кабель mini-USB.

PixyMon отлично подходит для отладки вашего проекта. Когда Pixy соединена с Arduino или другим микроконтроллером, вы можете подключить USB-кабель к обратной стороне Pixy и запустить PixyMon для вывода изображения на экран, чтобы понимать происходящее. При этом не нужно ничего отключать от микроконтроллера.

Приложение PixyMon распространяется с открытым исходным кодом, как и все остальное ПО.

PixyMon приложение Pixy, Pixy2

Что такое "цветовой код"?

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

Схема цветового кода из двух меток, составленных сочетанием четырёх основных цветов, позволяет различать до 12 уникальных объектов. Вот простой пример:

Цветовые коды Pixy, Цветовые коды Pixy2

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

Почему цветовые коды?

С помощью цветовых кодов можно значительно повысить точность обнаружения требуемых объектов. Не исключены случаи, когда заданные цвета могут появиться в определённом порядке или близко друг к другу. К одному из недостатков цветовых кодов можно причислить необходимость их размещения на каждом предмете, который вы хотите обнаружить. Зачастую, интересующий вас объект (жёлтый шарик, фиолетовая игрушка) имеет свой уникальный цветовой идентификатор, и ему не нужен отдельный цветовой код. Pixy без проблем будет одновременно распознавать предметы, как содержащие на себе цветовые коды, так и без них.

Pixy цветовые коды, пример определения

В дополнение к положению и размеру, цветовые коды дают вам точную оценку угла объекта относительно чего-либо. Оценка угла, декодирование цветовых кодов или определение объектов без меток, а также их расположение и размеры обрабатываются Pixy и предоставляются пользователю со скоростью 50 кадров в секунду.

Цветовые коды полезны в проектах, использующих навигацию. Например, перемещение робота в каком-нибудь помещении, где каждый дверной проём или корридор имеют свои уникальные цветовые коды.

В заключении стоит сказать, что реализованная в Pixy технология машинного зрения, станет недорогим и надёжным решением для всех энтузиастов, увлекающихся конструированием полезных электронных устройств.

Yes! We are now carrying CMUcam 5, or know as Pixy! It can detect purple dinosaur :) The camera is designed to be added onto robots outfitted. But, the question is: How to get Lego plus Pixy linked together? Welcome to this How-to!


Mindstorms Wires Explained

Let's begin by exploring all the nitty-gritty details of the standard Mindstorms wire. Lego uses semi-proprietary wires RJ12 variant in its Mindstorms’ Intelligent Brick access and connections methods.

Mindstorms wires are essentially proprietary RJ12 connectors with off-center tabs:


Inside the Mindstorms Wire


  1. The blue wire is the SDA (serial data) wire, one-half of a two-wire data transfer protocol called I2C. EV3 can transmit sensor data and commands through the I2C bus;
  2. Yellow is the SCL (serial clock) wire, the other half of the protocol;
  3. Green is power, typically delivering either 3.3 or 5V from the EV3' battery pack. You can use this wire to power electronics circuitry and add-on modules;
  4. Red is ground. Creating a circuit with this ground and the power pin yields 5V;
  5. Black is also ground. A circuit with this ground and the power pin yields 3.3v;
  6. White is analog, transmitting analog sensor signal back to the EV3 Intelligent Brick.

Now we need to understand the Pixy cradle and servos pinout.

Pixy can be interfaced to several protocols — I2C, Serial, and SPI — plus it controls two servos for pan-tilt functionality.

To connect Pixy with Lego we will need it: Ribbon Crimp Connector — 10-pin (2x5, Female)


And here is how to connect Pixy and Lego:





The video — Making homebrewed Cable Lego x Pixy




Running Pixy PID code

Here is the working chase code provided by Pixy’s Charmed Lab:


Run PixyMon to Configure Pixy For Lego Capability


Are you Curious about Pixy?

This latest CMUcam version of the embedded camera is an image sensor with a powerful processor that you can program by only send the information you’re looking for so your microcontroller isn’t overwhelmed by data from the image sensor. The Pixy CMUCam also exports its information in a variety of useful ways — UART serial, SPI, I2C, digital out, or analog out — so your microcontroller can communicate easily while still doing other tasks. It’s so unobtrusive that you can even hook up multiple Pixy CMUCams to one microcontroller! Superb!

The Pixy CMUCam5 also uses hue and saturation as its primary means of image detection — rather than the normal RGB. This means that lighting or exposure won’t affect the Pixy CMUCam’s detection of an item — which is a frustrating problem with many image sensors. It’s also a vast improvement over previous versions of the Pixy CMUCam, adding increased flexibility when it comes to lighting and exposure changes.

It can also remember seven different color signatures, find hundreds of objects at the same time, and is super fast — processing at 50 frames a second.

Finally, the Pixy CMUCam is also teachable so you can set it up to only send you images that you’ve specifically told it to look for. It’s easy and fast and has an open source application called PixyMon.

Each Pixy CMUcam5 Sensor comes with a 6-pin-to-10-pin IDC cable and mounting tabs and screws.

Читайте также: