Hologram Nova Starter Kit: Полное руководство по настройке Raspberry Pi и интеграции датчиков
История
Это руководство является частью официального Hologram Nova Starter Kit, доступного на Hologram.io.
Настройка Raspberry Pi — Headless (без монитора)
Примечание: Если у вас уже есть Raspbian на SD-карте и вы можете подключиться по SSH, переходите к следующему разделу.
Headless-настройка означает загрузку Pi без монитора, клавиатуры и мыши. Вся конфигурация происходит с вашего основного компьютера через SSH.
1. Скачивание и запись образа Raspbian на SD-карту
Ключевые моменты:
- Raspbian — производная Debian, адаптированная под ARM-архитектуру Raspberry Pi.
- Подойдут как Lite (без десктопа), так и Full версии; Lite достаточно для этого руководства.
- NOOBS не нужен и добавляет лишние шаги.
- Используйте Etcher — кроссплатформенный инструмент для прошивки образа.
Скачать Raspbian: raspbian.org/downloads/raspbian
Скачать/установить Etcher: etcher.io
Запись Raspbian на SD-карту:
- Вставьте SD-карту в компьютер.
- Откройте Etcher.
- Выберите скачанный ZIP-файл Raspbian как образ ОС.
- Выберите SD-карту как целевой диск.
- Нажмите «Flash!».
- Интерфейс Etcher будет похож на скриншот ниже.
2. Конфигурация Raspbian
После прошивки снова смонтируйте SD-карту к компьютеру. Откройте терминал и перейдите в раздел boot.
cd /Volumes/boot
Включите SSH, создав пустой файл:
touch ssh
Предварительно настройте Wi-Fi, чтобы Pi подключился к вашей сети при загрузке. Pi поддерживает только 2,4 ГГц.
sudo nano wpa_supplicant.conf
Вставьте следующее, заменив плейсхолдеры на свои данные:
country=US
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="**your-wifi**"
psk="**your-password**"
key_mgmt=WPA-PSK
}
Для открытых сетей:
country=US
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="**your-wifi**"
key_mgmt=NONE
}
Сохраните и выйдите из Nano: CTRL+X, затем Y и ENTER. Извлеките SD-карту и вставьте в Pi.
3. Подключение к Pi по Wi-Fi SSH
Подайте питание на Pi с помощью поставляемого адаптера 5 В 2,4 А. Подождите минуту для подъема сети.
С вашего хост-компьютера откройте терминал и подключитесь по SSH:
ssh pi@raspberrypi.local
Пароль: raspberry.
Устранение неполадок:
- Устройство не найдено? Проверьте Wi-Fi-учетные данные и убедитесь, что Pi в сети 2,4 ГГц.
- Несколько Pi с одинаковым хостнеймом? Подключитесь по локальному IP: ssh pi@<IP>.
После входа запустите инструмент конфигурации Raspberry Pi:
sudo raspi-config
В меню выполните:
- 7 – Advanced Options → A1 Expand Filesystem
- 5 – Interfacing Options → SPI (включите I2C если нужно)
- 1 – Change User Password
- 2 – Hostname (выберите запоминающееся имя)
- Выберите Finish и разрешите перезагрузку.
После перезагрузки подключитесь по SSH с новым хостнеймом: ssh pi@<новое_имя>.
4. Установка зависимостей
Обновите список пакетов Pi:
sudo apt-get update
Установите основные пакеты:
sudo apt-get install git git-core build-essential python-dev python-openssl python-smbus python3-pip python-pip screen
Установите Python SDK Hologram:
curl -L hologram.io/python-install | bash
Проверьте версию CLI:
hologram version
Должна отобразиться версия выше 0.6.0. Поздравляем — Pi готов.
Урок 1 — Мигание LED
Будем использовать GPIO-пины Pi (нумерация BCM). Для краткого справочника см. StackOverflow GPIO guide. Ниже будет использоваться следующая распиновка.
Если вы новичок в макетных платах, посмотрите это видео ScienceBuddiesTv.
В этом уроке настроим GPIO-пин как выход для управления LED.
Схема подключения
Подключите LED через резистор 220 Ом. Питание обычно красный провод; земля — черный. Всегда отключайте питание перед монтажом.
Включите питание, подождите минуту и восстановите SSH.
Запуск кода 🏃💨
Клонируйте репозиторий starter-kit:
git clone https://github.com/benstr/nova-starter-kit.git
Проверьте наличие папки:
ls nova-starter-kit/
Запустите скрипт мигания:
sudo python nova-starter-kit/01_blink/main.py
Введите количество миганий при запросе. LED должен мигать соответственно.
Посмотрите исходные файлы:
cat nova-starter-kit/01_blink/main.py
cat nova-starter-kit/01_blink/myLED.py
Будьте амбициозны!
Изучите дополнительные функции в myLED.py, редактируя main.py и перезапуская скрипт.
sudo nano nova-starter-kit/01_blink/main.py
Урок 2 — Чтение цифрового датчика
Добавим датчик влажности/температуры DHT11. Библиотека DHT от Adafruit упрощает получение данных.
Подробнее о датчиках DHT на странице Adafruit DHT.
Схема подключения
Используйте подтягивающий резистор 10 кОм.
Снимите питание перед монтажем.
Включите питание, подождите минуту и восстановите SSH.
Запуск кода 🏃💨
Проверьте папку датчика:
ls nova-starter-kit/02_digital_sensor/
Установите библиотеку Adafruit DHT:
git clone https://github.com/adafruit/Adafruit_Python_DHT.git
sudo python Adafruit_Python_DHT/setup.py install
Протестируйте датчик:
sudo Adafruit_Python_DHT/examples/AdafruitDHT.py 11 21
Запустите скрипт урока:
sudo python nova-starter-kit/02_digital_sensor/main.py
LED мигнет три раза и покажет температуру/влажность.
cat nova-starter-kit/02_digital_sensor/main.py
cat nova-starter-kit/02_digital_sensor/myDHT.py
Урок 3 — Чтение аналогового датчика
Pi может читать только цифровые сигналы. Для аналоговых данных используем АЦП MCP3008 для преобразования выхода фоторезистора.
MCP3008 предлагает 8 каналов; используем канал 0. Библиотека MCP3008 от Adafruit обеспечит коммуникацию.
Схема подключения
Убедитесь, что выемка MCP3008 обращена влево. Тщательно проверьте все соединения.
Снимите питание перед монтажем.
Включите питание, подождите минуту и восстановите SSH.
Запуск кода 🏃💨
Проверьте папку аналогового датчика:
ls nova-starter-kit/03_analog_sensor/
Установите библиотеку MCP3008:
git clone https://github.com/adafruit/Adafruit_Python_MCP3008.git
sudo python Adafruit_Python_MCP3008/setup.py install
Запустите скрипт аналогового датчика:
sudo python nova-starter-kit/03_analog_sensor/main.py
LED мигнет четыре раза и выведет температуру, влажность и освещенность.
cat nova-starter-kit/03_analog_sensor/main.py
cat nova-starter-kit/03_analog_sensor/myMCP.py
Урок 4 — Запуск по кнопке
Чтобы избежать ручных SSH-сессий, подключим кнопку для запуска чтения датчиков и настроим автозапуск скрипта при загрузке.
Схема подключения
Подключение простое — кнопка к GPIO-пину и подтягивающий резистор.
Включите питание, подождите минуту и восстановите SSH.
Запуск кода 🏃💨
Проверьте папку кнопки:
ls nova-starter-kit/04_button/
Запустите скрипт кнопки:
sudo python nova-starter-kit/04_button/main.py
Скрипт входит в бесконечный цикл, ожидая нажатия кнопки. Нажмите CTRL+C для остановки.
cat nova-starter-kit/04_button/main.py
Запуск кода при старте 🔌🏃💨
Отредактируйте /etc/rc.local для автозапуска скрипта:
sudo nano /etc/rc.local
Добавьте строку перед exit 0:
sudo python /home/pi/nova-starter-kit/04_button/main.py &
Сохраните, перезагрузите:
sudo reboot
После перезагрузки нажатие кнопки должно вызвать четыре мигания LED.
Урок 5 — Отправка данных через Wi-Fi
Теперь скрипт запускается при загрузке, но мы хотим видеть данные локально. Передадим показания датчиков в Data Engine Hologram.
Если SIM не активирован, сделайте это на dashboard.hologram.io/activate.
На дашборде Hologram откройте ваше устройство Nova, перейдите в Configuration, нажмите «Show Router Credentials», сгенерируйте 8-значный ключ и сохраните его.
Отредактируйте файл учетных данных:
sudo nano nova-starter-kit/credentials.json
Замените плейсхолдер на сгенерированный ключ.
Обновите /etc/rc.local для запуска облачного скрипта:
sudo nano /etc/rc.local
sudo python /home/pi/nova-starter-kit/05_cloud/main.py &
Перезагрузите:
sudo reboot
Через несколько минут нажатие кнопки отправит данные в облако. Проверьте результаты на dashboard.hologram.io.
Посмотрите облачный скрипт:
cat nova-starter-kit/05_cloud/main.py
Урок 6 — Отправка данных через сотовую сеть
Развертывание в средах без Wi-Fi простое. После сборки Nova и вставки SIM, два светодиода на Nova покажут готовность сети.
Отредактируйте /etc/rc.local для использования сотового скрипта:
sudo nano /etc/rc.local
sudo python /home/pi/nova-starter-kit/06_cellular/main.py &
Перезагрузите:
sudo reboot
Проверьте передачу данных на dashboard.hologram.io.
Посмотрите сотовый скрипт:
cat nova-starter-kit/06_cellular/main.py
Теперь у вас есть робот-метеостанция, способная работать по всему миру через сотовую связь.
Источник: Hologram Nova Starter Kit
Производственный процесс
- Веб‑разработка в облаке: исчерпывающее руководство для старта
- Mini‑Circuits и Vayyar запускают VTRIG‑74: комплект разработки 4D миллиметроволновой визуализации
- Руководство по настройке Raspberry Pi 3 Starter Kit: сборка, ОС и удаленный доступ
- Умный выключатель питания AC под управлением SMS с Raspberry Pi и Hologram
- Запуск бесплатного .onion-сайта на Raspberry Pi 3 с Raspbian: пошаговое руководство
- Создайте своего робота на Raspberry Pi с набором MonkMakes RRB2 — подробное руководство
- Intellisaurus: Соберите ходячего умного динозавра-робота
- Стартовые наборы HARTING MICA®: модернизация устаревшего оборудования для ППИ
- Стартовые наборы HARTING MICA®: бесшовное подключение устаревшего оборудования к Промышленному Интернету вещей
- Стартер двигателя: как работает, из чего состоит и почему важен