3. Intel® Edison Compute Module
- Встроенная беспроводная
функциональность: Wi-Fi и Bluetooth.
- SoC с двухъядерным Intel® Atom (500
мгц) и Minute IA (100 мгц).
- 1 Gb RAM + 4 Gb Flash.
- Расширенные возможности I/O: 40
GPIO (GPIO, UART, I2C, SPI, USB).
- 70-пин разъем для подключения к
платам расширения.
35.5 x 25 мм
Подробнее: Edison Compute Module Hardware Guide
4. Intel® Edison - Arduino Development Board
- Плата расширения, физически
совместимая с Arduino Uno.
- Питание от USB-кабеля или от блока
питания 7-15V.
- 20 портов GPIO (4 PWM, 1 UART, I2C)
- 6 портов ADC
- USB Client, USB Host
- GPIO: 24mA at 3.3V, 32mA at 5V
Подробнее: Edison Kit for Arduino Hardware Guide
5. Grove Starter Kit Plus - Intel® IoT Edition
Base Shield
Buzzer
Button
Grove-LED
Sound Sensor
Rotary Angle Sensor
Touch Sensor
Smart Relay
Light Sensor
Temperature Sensor
Grove Cables
Mini Servo
9V to Barrel Jack Adapter - 126mm
DIP LED Blue-Blue
DIP LED Green-Green
DIP LED Red-Red
LCD RGB Backlight
Подробнее: Grove Starter Kit
6. Intel® IoT Developer Kit Components
Intel Galileo
Gen 1 & 2
Board
Intel Edison
Arduino
Development
Board
Yocto based Linux OS image
API Bindings C/C++, Node JS, Python
UPM (Sensor/Actuator library repository)LibMraa
NodeJS
Support
C/C++
Tool Chain
Wyliodrin
Agent
IoT Cloud
Agent
HardWare
S/WImageonIoTplatform
Intel XDK
IoT Edition
Eclipse IDE
+
ISS
Wyliodrin
(Visual
Programming)
Cloud
Analytics /
Mashery
IDE/Tools
(Win,Mac,Linux)
Sensors / Actuators
Arduino IDE
8. Особенности совместимости с Arduino
- Arduino программа запускается как user space
приложение в Linux. Real-time отклик не
обеспечивается.
- Сеть настраивается на уровне Linux.
- При включении платы происходит процесс загрузки.
- Запуск Linux команд из Arduino программы функцией
system(…)
9. Запуск Linux команд из Arduino программы
Функция system(“command”) позволяет из Arduino программы
вызывать команды Linux.
Упрощает интеграцию IoT устройства, например, в системы
мониторинга.
Для этого нужно скомпилировать и установить Linux-версию
клиента системы мониторинга на IoT устройство:
Sensors
Arduino
program
Monitoring
client
Linux
Monitoring
server
Internetsystem(…)
10. Yocto Linux + initial setup
Нижний micro-USB: serial-порт 115200
IP-адрес Edison: 192.168.2.15
Edison setup: # configure_edison
Версия прошивки: # configure_edison --version
Wi-Fi AP Mode: удерживать кнопку PWR ~4 sec
USB-Host: переключатель вверх + необходимо внешнее
питание
10
11. Среда разработки C/C++ на основе Eclipse IDE
• SSH подключение к плате для
запуска удаленной отладки
• Поддерживает 3 платы
(Galileo Gen 1 и 2, Edison)
• Примеры программ
12. Библиотека MRAA
Низкоуровневая библиотека для
упрощения работы с I/O.
Документация по API и поддерживаемые
платформы:
http://iotdk.intel.com/docs/master/mraa/
Исходный код на GitHub:
https://github.com/intel-iot-devkit/mraa
Обеспечивает соответствие номеров
портов в коде и на плате Edison Arduino
Board.
13. MRAA - пример
mraa_gpio_context gpio;
gpio = mraa_gpio_init(6);
mraa_gpio_dir(gpio, MRAA_GPIO_IN);
for (;;) {
fprintf(stdout, "Gpio is %dn",
mraa_gpio_read(gpio));
sleep(1);
}
mraa_gpio_close(gpio);
PIN
14. Библиотека UPM
UPM – высокоуровневая библиотека, обеспечивающая удобный
интерфейс для работы с сенсорами. UPM использует MRAA.
Исходный код на GitHub:
https://github.com/intel-iot-devkit/upm
Список поддерживаемых устройств в C++:
http://iotdk.intel.com/docs/master/upm/modules.html
Документация по API:
http://iotdk.intel.com/docs/master/upm/
Поддержка сенсоров из Grove Starter Kit
15. UPM - пример
upm::GroveTemp* s = new upm::GroveTemp(0);
std::cout << s->name() << std::endl;
for (int i=0; i < 10; i++) {
std::cout << s->value() << std::endl;
sleep(1);
}
PIN
16. Edison MCU
16
• Minute IA, 100 MHz
• 486 with Pentium ISA
compatibility
• Viper RTOS
• GPIO, PWM, UART’s, I2C
• 1 micro-second delay API
• Programmed with MCU
SDK
• Пример
18. “Instructables”
18
• Intel IoT Hub
• http://www.instructables.com/id/intel/
• Opportunity for you to showcase for your
amazing IoT innovations from the IoT
Roadshows
• Finish your project and post it to the Intel
IoT Hub on Instructables