"Мозг" умного дома - миникомпьютер Orange PI на Ubuntu

Вдоволь наигравшись с openHAB на Windows, я решил, что пора от баловства переходить к делу. Предстояло выбрать начинку для компьютера, который бы служил "мозгом" моего умного дома. Основные требования - устойчивость, низкое энергопотребление, бесшумность и мощность, достаточная для функционирования openHAB.
Одноплатный компьютер Orange PI  в полупрозрачном корпусе.
Семейство одноплатных миникомпьютеров Raspberry PI полностью подходили под мои требования. Но я решил копнуть глубже,  и обнаружил целый пласт распберри-подобных компьютеров от китайских производителей. При чем многие из них при меньшей цене давали больше возможностей. И были шустрее, чем оригинальная "малинка".

Традиционно, производители берут названия для таких ПК в саду. То Малинка (Raspberry PI), то Банан (Banana PI), мне вон в душу запала Апельсинка (Orange PI). Есть еще ODROID, но что это за название, а? :)
Для моих целей достаточно было компьютера с минимум 1Gb оперативной памяти и быстрым LAN. Начитавшись разных сравнений я окончательно решился на Orange PI PC2, который помимо гигабитной сети и 1Gb оперативки имеет еще и быстрый 64-битный четырехъядерный процессор Allwinner H5 на ядрах Cortex-A53, а также 4 порта USB для подключения периферии. Еще там есть видеоускоритель и HDMI-разъем, но мне для моих задач они совершенно не нужны. А вот GPIO порты для подключения разных сенсоров могут пригодиться (и пригодились).
Коробка, в которой ко мне приехала плата
Заказал плату на AliExpress-сайте производителя, там же взял полупрозрачный пластиковый корпус и блок питания. На все про все (с доставкой) у меня ушло 35$. К слову, если бы я покупал оригинальный Raspberry, то только сама плата мне бы обошлась в такую же сумму. Итак, я имел: плату, корпус, 3 ваттный блок питания (это важно, т.к. на меньшей мощности Апельсинка может не завестись). Предстояло докупить карту памяти (которая будет использоваться в качестве HDD моей системы), и где-то раздобыть радиатор на процессор. 16Gb SD-карточку я купил в ближайшем Комфи, она нужна не ниже 10Class, иначе может не стартануть.  Радиатор мне подогнал коллега, только пришлось его немножко подпилить, что бы он поместился ровно на процессоре и микросхемах памяти. Радиатор был посажен на термоклей, и уже сейчас я могу сказать, что для моих задач его вполне достаточно: температура процессора в самые жаркие дня при полной загрузке не поднималась выше 60С, а в обычное время она  держится на уровне 41С-42С градусов.
Апельсинка уже с радиатором. На заднем фоне видны GPIO порты.
В качестве ОС я остановился на Ubuntu Server Xenial, т.к. с убунтой уже давно знаком. Скачал ее на официальном сайте (oбратите внимание: там на сайте указан ошибочный логин, на самом деле пользователь должен быть orangepi, как и пароль orangepi.) Сейчас подумываю, что зря я не подождал более-менее устойчивой версии Raspbian, разработанной специально для этой Апельсинки. Потому что эта Убунта остановилась в развитии, а Распбиан энтузиасты все время допиливают. Но на момент принятия решения Распбиан был глючной, а у меня чесались руки все попробовать. Теперь же переставлять все под новую систему - это все равно, что пройти весь путь заново. Вот так все у меня всё запущено.
Апельсинка на клавиатуре ноутбука для сравнения размеров.
Дальше - по пунктам:
  1. Создаем загрузочную флешку.
  2. Для этого качаем утилиту Win32DiskImager, устанавливаем ее на свой Windows-компьютер. Запускаем. Выбираем заранее скачанный образ системы, а Device - системное имя вашей SD-карточки. Нажимаем Write.
  3. После того, как загрузочная карточка создана, вставляем ее в слот на плате, и включаем питание.
  4. На Orange PI PC2 есть 2 светодиода - желтый и красный. Если с загрузочной карточкой все в порядке, то сначала загорится желтый светодиод, потом красный, а желтый погаснет. Система загрузится.
  5. Можно подсоединить к HDMI порту монитор, а к USB - клавиатуру с мышкой, тогда сразу увидим приветствие Ubuntu Server Xenial. Если собираемся подключиться к Апельсинке с помощью SSH, то запускаем ssh-клиент и скармливаем ему адрес вашего компьютера в локальной сети (не забыв предварительно подключить к апельсинке сетевой кабель). Вводим
  6. login: orangepi 
    password: orangepi
  7. Все, мы вошли. Теперь необходимо расширить файловую систему на всю флешку. Казалось бы, что сложного, вводим sudo fs_resize, и дело с концом, тем более, что так указано во всех мануалах. Но нет. Китайцы переделали команду fs_resize в resize_rootfs.sh. Поэтому вводим sudo /usr/local/sbin/resize_rootfs.sh. Таких странностей, когда во всех подобных системах называется по-одному, а китайцы зачем-то взяли да и сделали по-своему, в дальнейшем будет много.
  8. На последок установим удобный файловый менеждер Midnight Commander, для этого вводим: 
  9. sudo apt-get install mc
    И получаем:
Теперь работать легко и приятно, можно использовать Апельсинку для своих целей. Ну или просто подключить к портам GPIO датчик температуры и влажности, и запустить программу, которая считывает эти данные и выводит на экран: Казалось бы, зачем я накрутил этих проводов, собираю какие-то значения температуры в комнате? А гляньте на мою панель управления умным домом:
Я уже могу контролировать температуру и влажность. Вскоре ко мне из Китая приедет устройство, с помощью которого я буду удаленно управлять кондиционерами. Останется только подвязать его к openHAB, правильно запрограммировать, и мой дом научится поддерживать заданную температуру в комнате или включать кондиционер за 15 минут до моего приезда, что бы после работы я сразу попал в комфортные условия. Но об этом позже...

Комментариев нет:

Технологии Blogger.