Статьи

Введение в Intel Edison для разработчиков IoT

В то время как мобильные устройства становятся больше с каждым обновлением модели, на рынке появляется новая волна носимых устройств. Движение производителей за последние годы выросло, и Arduino лидирует на рынке оборудования для создания прототипов. В прошлом году Intel представила устройство, привлекательное для производителей, но также готовое для IoT и носимых продуктов, Intel Edison.

Edison – это небольшой вычислительный модуль, способный работать с полным дистрибутивом Linux, который предназначен для расширения возможностей носимых устройств следующего поколения и устройств Интернета вещей (IoT), где важными факторами являются размер и энергопотребление. Давайте посмотрим на эту платформу. Я опишу основные аппаратные функции и самое главное для пользователей SitePoint, какие возможности он предлагает разработчикам. Проекты, реализуемые с такой платформой, зависят от воображения разработчиков, как говорит Intel: «Что вы будете делать»?

аппаратные средства

Интел Эдисон

Intel Edison – это небольшая плата, немного больше, чем SD-карта (35,5 × 25,0 × 3,9 мм), с двухъядерным двухпоточным процессором Intel® Atom ™ на частоте 500 МГц и 32-разрядным микроконтроллером Intel® Quark ™ на частоте 100 МГц ,

Доступная память составляет 1 ГБ ОЗУ и 4 ГБ флэш-памяти. На борту WiFi и Bluetooth присутствуют. Он имеет 1 контроллер USB OTG и все интерфейсы, о которых может мечтать производитель, включая поддержку UART, I2C, SPI, I2S, GPIO и SD Card.

Разделительная доска

Edison поставляется в упаковке с 70-контактным разъемом, его сложно использовать напрямую. Для простоты создания протоколов Intel предоставила разработчикам две платы для обсуждения.

Это Intel Edison Board для Arduino и Intel Edison Breakout Board, которые официально поддерживаются Intel. Они различаются по назначению, размеру и возможностям ввода-вывода.

Плата Intel Edison для Arduino

Intel Edison Board

Эта плата является самой большой и самой интерфейсной платой из всех доступных. Он имеет контакты ввода / вывода, совместимые с Arduino Uno (за исключением 4 ШИМ вместо 6 ШИМ), 20 цифровых входов / выходов (включая 4 контакта в качестве выходов ШИМ). Он предлагает 6 аналоговых входов, UART (Rx / Tx), I2C, 6-контактный разъем (SPI) ICSP и разъем Micro-USB или специальный USB-разъем типа A стандартного размера. На этом список не заканчивается, есть также устройство micro USB (подключенное к UART) и разъем для SD-карты. Edison может стать хорошей базой для разработки в рамках проектов, где вам нужны разные типы интерфейсов или вы просто хотите экспериментировать.

Информационная панель Intel Edison

Информационная панель Intel Edison

Эта плата намного меньше, чем Arduino, но немного больше, чем сам модуль Edison. Плата обладает минимальным набором функций, включая отображение собственного 1,8 В / В модуля Edison, массива 0,1-дюймовых решеток ввода / вывода точек пайки через отверстия, USB OTG с разъемом USB Micro Type-AB и выключатель питания USB OTG , Есть зарядное устройство для аккумулятора и мост UART от USB к устройству с USB-разъемом Micro Type-B. Эта доска может сэкономить много места.

Програмное обеспечение

Edison поставляется с готовым образом Yocto Linux, но он способен работать с выбранным дистрибутивом Linux. Yocto – это мета-дистрибутив, используемый разработчиками встраиваемых систем для создания индивидуальных изображений. Intel выбрала эту ОС, чтобы разработчики могли просто начать использовать образ по умолчанию, настроить и настроить его по своему усмотрению, а затем подготовить пользовательский образ для своего продукта, как только он будет удовлетворен, что сделает этот процесс максимально простым с помощью простых команд, предоставляемых проектом Yocto.

Наличие полного дистрибутива Linux на таком устройстве открывает множество возможностей, поскольку разработчик может повторно использовать широкий спектр доступных пакетов и библиотек для Linux, что делает разработку продукта намного быстрее и проще. Им не нужно изучать какие-либо новые языки, наборы инструментов или использовать какие-либо SDK, но они могут просто разрабатывать со стандартным GNU / Linux прямо на устройстве.

Intel предлагает несколько инструментов, чтобы начать разработку с Edison, здесь я расскажу о некоторых из них.

Эдисон SDK

Intel Edison SDK предоставляет все необходимые инструменты для разработки для платформы. Он основан на Eclipse (да, еще один экземпляр Eclipse на вашем компьютере) и включает в себя инструменты кросс-компиляции, соединитель для развертывания и отладки вашего программного обеспечения на плате, а также базовую библиотеку и документацию, необходимые для разработки. Он идеально подходит для разработчиков, использующих C ++, но адаптируется к другим языкам, включая Javascript и Python.

Intel XDK IoT Edition

Intel выпустила IoT-вариант среды XDK, о котором говорится в других статьях на SitePoint . При этом разработчики могут писать приложения Javascript (это работает на Edison как приложение Node.js) и тестировать их на устройстве. Intel упростила разработку мобильных сопутствующих приложений на HTML5, которые могут взаимодействовать с платой.

Arduino

Используя Эдисона с панелью управления Arduino, можно запускать эскизы Arduino. С правильной версией Arduino IDE разработчики могут использовать широкий спектр библиотек, примеров и набросков, уже доступных. Это в сочетании с мощью полного дистрибутива Linux представляет собой мощную платформу для опытных и начинающих разработчиков.

Wyliodrin

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

Библиотеки

Корпорация Intel стремится максимально упростить взаимодействие с разработчиками и выпустила две полезные библиотеки, которые охватывают аннотацию, IO и широкий спектр датчиков, чтобы позволить разработчикам сосредоточиться на пользовательском опыте. Обе библиотеки имеют привязки для C ++, Python и Javascript.

Lib MRAA

Lib MRAA – это библиотека C / C ++ (с привязками для JavaScript и Python), которая взаимодействует с IO Edison и другими платформами. Он предлагает структурированный и разумный API без привязки к конкретному оборудованию, поскольку он предлагает обнаружение платы во время выполнения, поэтому нумерация выводов будет соответствовать плате, используемой в настоящее время.

УПМ

UPM – это хранилище высокого уровня для датчиков, использующих libmraa. UPM обычно представляет датчик как класс, с конструктором, используемым для инициализации датчика, и параметрами, используемыми для обеспечения расположения выводов на плате. Эти классы предоставляют функцию обновления, которая вызывается для получения новых данных от датчика.

Резюме

Edison предоставляет интересные возможности для тех, у кого есть идеи носимых устройств / IoT и кто хочет экспериментировать на реальной платформе, готовой к использованию. Это платформа, богатая функциями, облегчающими начало работы, поскольку большинство разработчиков могут использовать язык, который они уже знают. Обладая отличным набором функций, готовых к использованию библиотек и открытой программной платформой, готовой к взлому, Intel проделала огромную работу, стремясь добиться успеха.