2. О докладчике
• Имя ему - Кирилл Борисов
• 10 лет программирует за деньги
• 5 лет души не чает в Python
• Работает в Яндексе и не знает забот
3. Disclaimer
• Докладчик - не настоящий сварщик электронщик
• Докладчик не несет ответственности за убитое
время
• Доклад никак не связан с работой
4. О чем этот доклад?
• На дворе - 2017 год
• Интернет вещает из каждой урны и зубной щетки
• Победить это нельзя, самое время присоединиться
• Python + прямые руки = интересные результаты
6. Internet of Things
• Различные устройства связаны между собой
• Все они собирают данные…
• …либо воздействуют на окружающий мир
• Работают автономно
9. Weatherful
• Индикатор пригодности погоды для прогулок
• Данные забирает из Яндекс.Погоды
• Отображать разные цвета для каждого часа
• Должен работать на Питоне! (sic!)
• Работает от батарейки
11. GPIO
Ввод-вывод на каждый день
Source: https://www.raspberrypi.org/documentation/usage/gpio-plus-and-raspi2/
12. Что это?
• Физический интерфейс для связи с миром вокруг
• Может работать на вход, так и на выход
• Цифровой интерфейс
• Залог успеха Raspberry Pi и Arduino
15. Связь c внешним миром
“Major Tom to Ground Control…”
Source: https://i-o-t.ru
16. Wi-Fi
• Высокая скорость передачи данных
• Типичная модель работы - точка доступа + клиенты
• Большие расходы на обеспечение связи
• Самый массовый способ связи с Интернетом
17. Bluetooth
• Беспроводная связь двух устройств
• Высокая скорость передачи данных
• Применяется для связи с приложением на смартфоне
• Потребляет много энергии в пассивном режиме
18. Bluetooth Low Energy
• Развитие идеи Bluetooth
• Цель - минимизация энергопотребления
• Требует поддержки со стороны ОС смартфона
• Ещё не достигла такой же популярности
19. Message Queue Telemetry Transport
Простое решение для простой проблемы
Source: https://i-o-t.ru
20. MQTT
• Работает по принципу “Publish-Subscribe”
• Реализован поверх TCP/IP
• Для ограниченных в ресурсах устройств
• Практически незащищен
26. Raspberry Pi
• Размером с кредитную карту
• Полноценный компьютер с Linux
• Множество GPIO входов-выходов
• Широко распространен
27. Raspberry Pi 3 Raspberry Pi Zero W
CPU
1.2 GHz,
4 ядра
1 GHz,
1 ядро
Память 1 GB 512 MB
Порты 4 USB
1 USB On-The-Go
1 USB для питания
Связь
Wi-Fi (b/g/n)
Bluetooth 4.0 (BLE)
Ethernet-порт
Wi-Fi (b/g/n)
Bluetooth 4.0 (BLE)
Размер 85,6 × 53,98 × 17 мм 66 x 30,5 x 5 мм
28. gpiozero
• Основная цель - уменьшение избыточности
• Встроенные “батарейки” для многих вещей
• Хорошая документация и много примеров
https://github.com/RPi-Distro/python-gpiozero/
29. Пример
from gpiozero import LED
from time import sleep
led = LED(25)
while True:
led.on()
sleep(1)
led.off()
sleep(1)
32. MicroPython
• Написан с нуля по подобию Python 3.4
• Предназначен для работы на микроконтроллерах
• Работает на “живом железе”
• Имеет много специфики
33. Пример
from machine import Pin
from time import sleep
led = Pin(15, Pin.OUT)
while True:
led.high()
sleep(1)
led.low()
sleep(1)
34. Тонкости MicroPython
• Несколько отличий от синтаксиса Python
• Функциональность отличается для разных устройств
• Сильно урезанный набор “батареек”
• Позволяет использовать REPL на устройстве
36. pyboard
• Референсная плата
• Основная платформа разработки MicroPython
• Удобна для изучения MicroPython
• 2 порта CAN, ЦАП, АЦП, 2 I2C, 2 SPI, 3 (!) UART
• Отсутствует Wi-Fi и Bluetooth
37. WeMOS d1 mini
Дешево и сердито
Source: https://www.sparkfun.com/products/retired/11546
38. WeMOS d1 Mini
• Создан на основе ESP8266 со встроенным Wi-Fi
• Весьма дешевая (~300 рублей с AliExpress)
• Скудные ресурсы: 256 Kb RAM, 1 МБ флэша
• Мало портов: 1 АЦП, 1 I2C, 1 SPI, ~1 UART
46. • https://www.raspberrypi.org/
Официальный сайт “Raspberry Pi Foundation”
• https://raspberrypi.ru
Русскоязычное сообщество пользователей
• https://circuits.io/
Дружелюбный симулятор электронных схем.
47. • https://micropython.org/
Сайт с говорящим названием, на котором вы
можете узнать всё о MicroPython.
• http://amperka.ru/
Интернет-магазин, для тех кто занимается
радиоэлектроникой в свободное время.
• http://fritzing.org/
Отличная утилита для рисования красивых
схем и иллюстраций.