3 июля 2015 года, Endurance продолжает наращивать техническое оснащение компании.

3 июля 2015 года мы получили на тестирование платформу Intel Edison, которую планируем использовать, как ядро системы телеприсутствия. Мы будем информировать о ходе разработок на базе Intel Edison на сайте Endurancerobots.com, a также в социальных сетях.

Мы благодарим компанию Intel за интерес, проявленный к разработкам Endurance.

Напомним, что сфера деятельности Endurance — робототехника, наша отличительная черта — мы наилучшем образом компилируем проверенные платформы, тем самым создавая новый вид устройств.
Современное техническое оснащение — это залог успеха для Endurance.
Для более подробной информации о необходимом оборудовании обращайтесь по телефонам 8 916 360 3210

DSC_0001 DSC_0007

Первое знакомство с Intel Edison Breakout-Kit.

Совсем недавно нам в руки попал мини-компьютер Intel Edison(далее IE) в комплектации breakout-kit, в которую кроме самого IE также входил и mini-breakout board. Эта статься является чем-то вроде мини-гайда getting started именно по breakout-kit. Она разбита на разделы:

1)Общая информация;

2)Установка ПО и настройка Yocto Linux;

3)Удаленный доступ и SSH;

4)Mini-breakout board и Arduino IDE;

5)Mini-breakout board и GPIO;

6)Intel Edison и IoT;

Общая информация:

Несмотря на свои малые размеры(35.5 × 25.0 × 3.3 мм) и невысокое энергопотребление( с выключенными радиомодулями- 13мВт; с включенным BLE -21,5мВт; с включенным Wi-Fi –35мВт), IE имеет довольно мощные характеристики, с которыми вы можете ознакомиться по ссылкам ниже:

http://www.intel.ru/content/www/ru/ru/do-it-yourself/edison.html

http://download.intel.com/support/edison/sb/edisonmodule_hg_331189004.pdf

На нем предустановлен дистрибутив Embedded Linux ОС Yocto Linux( что было приятным удивлением) с полным пакетом софта для комфортного программирования и взаимодействия с внешними устройствами и серверами. Наличие встроенных Wi-fi и Bluetooth модулей является значительным бонусом и упрощает процесс программирования различных устройств, считывания их состояний и просто взаимодействия с ними. Сами программы можно писать либо через терминал, либо используя Arduino IDE, Eclipse или IoT XDK. Видеовыходов Edison не имеет, так что общение проходит через сторонний терминал.

Кроме Mini-breakout board, доступны также: Edison Board for Arduino и множество разновидностей плат от Sparkfun.

Mini-breakout board                                                                Board for Arduino

3

Линейка плат под Edison от sparkfun

Для тестирования мы получили Mini-breakout board, что значило:

1)Мы будем сразу иметь 2 micro usb порта, один из которых рассчитан на подпитку IE( нижний(J16)), второй( mini AB, OTG(J3))- на работу в двух режимах( в зависимости от типа коннекта- device/host) и через который происходит общение IE с компьютером.

4

2)Несколько выходов под питание: нижний правый(J21) рассчитан на питание от внешнего источника с напряжением от 7-15 В, левый верхний(J2), рассчитанный на питание от Li-ion аккумулятора( максимальное напряжение- 4,2 вольта) и который также может заряжать Li-ion аккумулятор, если IE питается через USB кабель. Кроме этого, снизу есть место под не идущий в комплекте Power Jack.

3)Все пины рассчитаны на подачу 1,8 вольт напряжения. Для нормальной работы(и работы с GPIO вообще) перед сборкой всего комплекта стоит припаять сами пины, к примеру, как показано выше…

(Карта расположения контактов представлена в нижней ссылке. Скажу лишь, что под GPIO выделено 40 контактов, включая 4 под ШИМ)

Дополнительные параметры платы и карта пинов:

http://download.intel.com/support/edison/sb/edisonbreakout_hg_331190006.pdf

Установка ПО и настройка Yocto Linux:

При первом запуске вам потребуется воспользоваться портом J3, ибо он отвечает за общение с IE через терминал( позже необходимость использования такого метода связи пропадет).

Установка всего требуемого софта, выбор IDE( в нашем случае Arduino IDE) сейчас не занимает много времени и строго линейно:

https://software.intel.com/en-us/iot/library/edison-getting-started

Удаленный доступ и SSH:

Если вы настроили Wi-Fi и запоролили IE, то теперь можете кроме всего прочего полностью контролировать ваш IE из-под root. В нашем случае, это происходит через SSH(Secure Shell) в PuTTY(вам потребуется IP адрес вашего IE устройства. Посмотреть его можно с помощью команды ifconfig в терминале после настройки Wi-Fi соединения):

После всех проделанных шагов встал вопрос: А как, собственно, программировать в IE?

Mini-breakout board и Arduino IDE:

Первым делом, как использовать Arduino IDE для того, чтобы, к примеру, зажечь тот же самый светодиод? На самом деле, программирование IE в Arduino IDE точно такое же, как и программирование самой Arduino или IE через Board for Arduino. Отличие лишь в проблематичности сбора самой схемы( ибо на Mini-breakout board не понятно, где тот самый знакомый 13 выход, а где земля), да и в том, что IE дает 1,8 В на пинах.

Нами был использован простой способ решения данной проблемы:

Для адаптации схемы под Breakout board потребуется два данных документа.

Hardware guide для Mini-Breakout board:

http://download.intel.com/support/edison/sb/edisonbreakout_hg_331190006.pdf

и HG для Arduino board:

http://download.intel.com/support/edison/sb/edisonarduino_hg_331191007.pdf

А именно две таблицы из них:

Суть такова: Нам нужен 13-ый пин( ибо базовый скетч связан именно с ним). Ищем в первой таблице IO13( таблица for Arduino HG). Находим его, сопоставляем с колонкой Linux GPIO pin: 40-ой пин. Ищем GP40 во второй таблице( Breakout kit HG). Находим и в итоге имеем точное место данного выхода на Mini-breakout board: J19-pin 10. Ищем GND: J19- pin 3. Собираем схему и получаем результат.

 

Mini-breakout board и GPIO:

Но не стоит забывать, что у нас в руках не просто МК( а ведь в нем действительно есть МК), а также и целый компьютер. Вы также можете напрямую контролировать поведение каждого GPIO! Рассмотрим это на примере работы в shell.

Основная информация представлена здесь:

http://www.intel-software-academic-program.com/courses/diy/Intel_Academic_-_DIY_-_InternetOfThings/IntelAcademic_IoT-Edison_04_GPIO_on_Edison.pdf

Но, к сожалению, она не совсем подходит для Breakout board, ибо, строго говоря, в нашей мини плате нет некоторых аспектов, на которые опирается данная документация.

Так что обращу ваше внимание лишь на следующее: вся наша работа в данном направлении будет проходить в папке /sys/class/gpio. В ней отображаются задействованные GPIO.

Вы сами можете задействовать их или же освобождать следующим образом:

echo –n “48” > /sys/class/gpio/unexport  // освобождаем

echo n “48”> /sys/class/gpio/export   // вновь можем с ним работать

Каждый GPIO%d является директорией.

Мы работаем с gp40. Пока что нам интересен файл direction, который определяет, будет ли порт задействован на прием(in) или передачу сигналов(out). Нам нужно следующее:

echo –n “out” > /sys/class/gpio/gpio40/direction

Далее работаем с файлом value, который задает, какое напряжение подается, где 0- это 0В, а 1- это 1,8В:

echo –n “1” > /sys/class/gpio/gpio40/value

В итоге теперь мы можем программировать наше оборудование через терминал. Использование данного метода вместе с удаленным доступом SSH, на мой взгляд, делает IE достаточно интересным и мощным инструментом.

Intel Edison и IoT:

Кроме этого, вы можете отслеживать состояние датчиков и вашей системы в целом с помощью сервиса IoT Analytics. Данный ресурс позволит вам вести статистику получаемых данных в режиме онлайн. Более того, этот сервис предоставляет возможность контроля некоторых возможностей самой IE!

Подробная инструкция работы с сервисом изложена здесь:

https://software.intel.com/en-us/intel-iot-developer-kit-cloud-based-analytics-user-guide