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. Standard interfaces Input / Output
- GPIO
- UART
- I2C
- SPI
- ...
To connect sensors and devices
6
SWPC COLLABORATE. INNOVATE.
ENRICH.
7. GPIO – General Purpose Input / Output
Logical level:
- 0 – 0V
- 1 – for example, 5V
Devices:
- LED
- Relay
- Button
7SWPC COLLABORATE. INNOVATE. ENRICH.
8. UART - Universal Asynchronous
Receiver/Transmitter
Serial port for collecting
modules:
- GPS
- GSM/GPRS
- Bluetooth
- Other controllers
8SWPC COLLABORATE. INNOVATE. ENRICH.
10. 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
11. 11
Arduino – simple program
void setup() {
// code for the board configuration
}
void loop() {
// no function main, there is function loop
// function is called in a loop
}
SWPC COLLABORATE. INNOVATE. ENRICH.
13. Особенности совместимости с Arduino
- Arduino программа запускается как user space
приложение в Linux. Real-time отклик не
обеспечивается.
- Сеть настраивается на уровне Linux.
- При включении платы происходит процесс загрузки.
- Запуск Linux команд из Arduino программы функцией
system(…)
14. Запуск Linux команд из Arduino программы
Функция system(“command”) позволяет из Arduino программы
вызывать команды Linux.
Упрощает интеграцию IoT устройства, например, в системы
мониторинга.
Для этого нужно скомпилировать и установить Linux-версию
клиента системы мониторинга на IoT устройство:
Sensors
Arduino
program
Monitoring
client
Linux
Monitoring
server
Internetsystem(…)
15. Среда разработки C/C++ на основе Eclipse IDE
• SSH подключение к плате для
запуска удаленной отладки
• Поддерживает 3 платы
(Galileo Gen 1 и 2, Edison)
• Примеры программ
16. 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: переключатель вверх + необходимо внешнее
питание
16
17. Flash Intel Edison Firmware
17SWPC COLLABORATE. INNOVATE. ENRICH.
Windows:
• Windows Installer
• Flash Edison via Phone Flash Tool
• Run batch file: flashall.bat
Linux:
• Run script: $ sudo ./flashall.sh
To see the version of firmware:
$ cat /etc/version
$ configure_edison --version
18. Preparation Board for Development
18SWPC COLLABORATE. INNOVATE. ENRICH.
Set up Wi-Fi:
• $ configure_edison --wifi
• Getting IP or http://edison.local
Installation MRAA library:
• $ echo "src mraa-upm
http://iotdk.intel.com/repos/1.1/intelgalactic" >
/etc/opkg/mraa-upm.conf
• $ opkg update
• $ opkg install libmraa0
19. Библиотека MRAA
Низкоуровневая библиотека для
упрощения работы с I/O.
Документация по API и поддерживаемые
платформы:
http://iotdk.intel.com/docs/master/mraa/
Исходный код на GitHub:
https://github.com/intel-iot-devkit/mraa
Обеспечивает соответствие номеров
портов в коде и на плате Edison Arduino
Board.
21. Hello World
21SWPC COLLABORATE. INNOVATE. ENRICH.
import mraa
import time
ledPin = mraa.Gpio(8)
ledPin.dir(mraa.DIR_OUT)
state = 0
while True:
state = 1 - state
ledPin.write(state)
time.sleep(0.2)
22. Библиотека 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
23. UPM - пример
import time
import pyupm_grove as grove
temp = grove.GroveTemp(0)
for i in range(10):
celsius = temp.value()
print(celsius)
time.sleep(1)
PIN
28. “Instructables”
28
• 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