понедельник, 14 ноября 2016 г.

Умный дом просто как никогда (часть 2 настройка Контроллера)

В первой части, мы уже подготовили нашу Rspberry Pi. Теперь будем устанавливать ПО для управления нашими будущими устройствами.

Начнем, в этой части (2), нам понадобится:

Железо

Настроенный микрокомпьютер Raspberry Pi 2 Model B + или выше версией
Программное обеспечение

PuTTY клиент для настройки ОС по SSH
WinSCP 5.x.x графический клиент SFTP (SSH File Transfer Protocol) для Windows

Серверную часть для Raspberry Pi  в нашем проекте мы будем использовать от Open Source проекта Mycontroller.org
Данное ПО достаточно активно развивается и имеет прямую поддержку Home Automation Framework от Mysensors.org. Но вы так же множите использовать и другие открытые проекты серверной части, мы остановимся только на этом.

Скачаем ПО Mycontroller.org на наш компьютер. На момент написания статьи последняя версия будет 0.0.3.Alpha2, размер в архивном формате zip примерно 21.64 MB.



Нам так же понадобится виртуальная машина Java (на ней работает ПО Mycontroller.org)
Скачаем виртуальную машину Java размер в архивном формате gz примерно 77.77 MB.





Распакуем архив zip на локальный компьютер и запустим WinSCP.
При первом запуске программы, настроим параметры подключения к Rspberry Pi.


Нажмем кнопку Войти


После подключения увидим вот такое окно



Теперь, скопируем наш распакованный архив из директории C:\TEMP\controller\mycontroller-dist-standalone-0.0.3.Alpha2-bundle  и скачанный архив виртуальной машины jdk-8u111-linux-arm32-vfp-hflt.tar.gz на RPI в директорию /home/pi



Как говорится "Не отходя от кассы", сразу проставим разрешение на файлы 
start.sh
stop.sh
Данные файлы нужны для того, чтобы ПО могло запускаться автоматически при запуске микроконтроллера.

Для этого, зайдем в директорию на Raspberry Pi  /home/pi/mycontroller/bin



Выберем фай start.sh, правой кнопкой мыши (или F9) откроем Свойства.

В окне свойств 
в поле Oct проставим заветные цифры 0777, сохраним и повторим туже операцию с файлом stop.sh

Теперь нам надо понастроить наш контроллер из консольного приложения PuTTY клиент.
Там мы установим виртуальную машину Java, пропишим в автозагрузку наше ПО и отключим UART на RPI (для того, чтобы в третьей части, установить наш Raspberry PI nFR24 Add-on).

Запускаем PuTTY клиент.


Жмем кнопку Open и ждем консольного окна...



Набираем в консоле
login pi
password (ваш новый пароль)

далее 
sudo su
raspi-config

Увидим вот такое меню: 



Нам нужен 9 пункт меню Advanced Options
Заходим и выбираем пункт A8 Serial


Выбираем, что не хотим использовать сериальный порт в нашем проекте (<No>)


На этом все. Выходим из этих меню и в консоле запустим установку виртуальной машины Oracle Java

Запустим Midnight CommanderНабираем mc


Переходим в директорию куда закачали наш архив с VM Java (/home/pi) На клавиатуре жмем F10 и в консольном окне вводим следующее:

sudo tar zxvf jdk-8u111-linux-arm32-vfp-hflt.tar.gz -C /opt
sudo update-alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_111/bin/javac 1
sudo update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_111/bin/java 1

дождемся установки и в конце проверим версию

java -version

Если все прошло удачно, то увидим вот такую строку в консоле


Теперь пропишим наш контроллер в автозагрузку
Снова запустим Midnight Commander
набираем
mc

Заходим в директорию  /etc и в файлик rc.local (нажать F4) запишим путь к нашему контроллеру и файлу старта.




Все, закончили, делаем перезагрузку системы.
Набираем в консоле
reboot
Дождемся пока система загрузится, запустим браузер и наберем
https://192.168.0.30:8443

Java запускается немного неторопливо, по этому придется подождать (секунд 5-10).
в результате увидим страницу нашего контроллера.


По умолчанию для входа используется
Логин: admin
Пароль: admin

Документацию по настройке программы можно почитать тут.

Радуемся, изучаем, и ждем 3 часть, в которой будем настраивать наш Raspberry PI nFR24 Add-on.

3 комментария:

  1. Хотелось бы знать, что за устройство мы в итоге получим?

    ОтветитьУдалить
  2. Да что угодно, все будет сделано на базе Arduino.

    ОтветитьУдалить