Краткое описание:
- Серверная программа, которая работает на Raspberry Pi, для того чтобы читать переменные
- Базы данных MySQL для хранения переменных
- Веб-страница Apache2, для того чтобы контролировать переменные
Шаг 1. База знаний
Это уже должно быть на вашем Raspberry Pi:
- Веб-сервер Apache
- PHP5
- Сервер MySQL
- phpMyAdmin
Если хотите узнать, как всё это настроить, вам сюда (инструкция на английском языке).
Шаг 2. Создание root аккаунта
Пропустите это, если у вас уже есть аккаунт, а если нет — продолжайте прочтение 🙂
Войдите в Raspberry Pi используя следующую команду:
sudo -i
passwd root
Теперь введите и подтвердите пароль для учётной записи.
Затем нужно закрыть SSH сессии и перезапустить его, войдя в систему как root.
Шаг 3. Настройка баз данных и phpMyAdmin
Это решение основано на базах данных MySQL, сейчас мы их и настроем.
Итак, для начала скачайте этот файл.
Залогиньтесь в панели управления phpMyAdmin и нажмите кнопку "Import" в верхнем меню.
Теперь, в пункте "File to Import", нажмите кнопку "Choose File" и выберите файл, который скачали до этого (gpio.sql).
И в завершении нажмите кнопку "Go" внизу страницы.
Это позволит создать все необходимые таблицы.
Теперь вам нужно добавить нового пользователя в базы данных используя phpMyAdmin. Для того чтобы это сделать, вам следует:
- Кликнуть на "Users" вверху страницы.
- Теперь жмите на ссылку "Add User".
- В поле "User name" введите нужное вам имя пользователя. У ввёл "gpio".
- В поле "Host" введите "localhost".
- Затем в двух полях введите подходящие пароли. (Без пробелов, переносов или специальных символов). Я ввёл "pr03ND2".
- Все остальное остальное оставьте по умолчанию, а затем нажмите кнопку "Add User" кнопку в правом нижнем углу.
В заключительной части этого шага нужно дать пользователю нужные привилегии.
- Нажмите на кнопку "Users" в верхнем меню, затем пролистывайте вниз до тех пор, пока вы не увидете только что добавленного вами пользователя в таблице "Users Overview".
- Напротив имени пользователя нажмите на ссылку "Edit Privileges".
- Листайте внизу к пункту "Database-specific privileges" и выберите "gpio" из выпадающего списка, нажмите кнопку "Go".
- Отметьте ВСЕ флажки и нажмите кнопку "Go" слева снизу.
Шаг 4. Shell Script
Это та часть, которая запускает проверку значений в базе данных MySQL на Raspberry Pi.
Этот сценарий довольно прост, но требует настройки.
Сперва скачайте скрипт, введя следующие команды (на Raspberry Pi):
sudo -i
и нажмите Return / Enterwget http://raspberrypi-gpio.googlecode.com/files/GPIOServer.sh
и нажмите Return / Enter
После того, как он это скачает, введите
chmod +x GPIOServer.sh
и нажмите Return / Enternano GPIOServer.sh
и нажмите Return / Enter
Это позволит вам изменить сценарий.
Вы должны изменить следующие переменные в начале файла:
mysqlusername="ЗДЕСЬ ИМЯ ПОЛЬЗОВАТЕЛЯ"
mysqlpassword="ЗДЕСЬ ПАРОЛЬ"
Их нужно изменить на имя пользователя и пароль, которые вы создавали ранее в phpMyAdmin.
После того как всё изменили, удерживайте клавишу Ctrl и нажмите X, затем отпустите Ctrl и нажмите Y. Нажмите Return / Enter.
Шаг 5. Настройка веб-страницы
Финальный шаг, перед тем как вы сможете использовать это, — настройка веб-страницы.
Для этого, напишите следующие команды, убедившись, что вы залогинены (если нет — напечатайте sudo -i
).:
wget http://raspberrypi-gpio.googlecode.com/files/control.php
и нажмите Return / Enterwget http://raspberrypi-gpio.googlecode.com/files/off.jpg
и нажмите Return / Enterwget http://raspberrypi-gpio.googlecode.com/files/on.jpg
и нажмите Return / Enter
Когда они скачаются, напишите вот это:
mv control.php /var/www/control.php
и нажмите Return / Enter.chmod 755 /var/www/control.php
и нажмите Return / Enter.mv off.jpg /var/www/off.jpg
и нажмитеReturn / Enter.chmod 755 /var/www/off.jpg
и нажмите Return / Enter.mv on.jpg /var/www/on.jpg
и нажмите Return / Enter.chmod 755 /var/www/on.jpg
и нажмите Return / Enter.
Теперь вам нужно изменить пару переменных перед использованием файла, поэтому напишите nano /var/www/control.php
и нажмите Return / Enter.
Измените следующие переменные:
$MySQLUsername = "ЗДЕСЬ ИМЯ ПОЛЬЗОВАТЕЛЯ";
$MySQLPassword = "ЗДЕСЬ ПАРОЛЬ";
Сейчас через браузер зайдите на страницу control.php (у меня raspberryPi/control.php, где raspberryPi — имя хоста.)
Там потребуется ввести следующие данные:
Имя пользователя: admin
Пароль: gpio
Я рекомендую нажать на ссылку «Change Password» сверху страницы и сменить пароль по очевидным причинам.
Шаг 6. Использование
Чтобы запустить программы GPIO, сделайте следующее:
Начните SSH сессию на Raspberry Pi и залогиньтесь как root, затем напечатайте ./GPIOServer.sh
и нажмите Return / Enter.
Он попросит ввести время ожидания, оно будет зависеть от потребностей ваших приложений. Но, чем короче время ожидания, тем больше ресурсов сценарий будет использовать (я обычно использую 5).
Готово! Теперь войдите в панель управления (http://ИМЯ ХОСТА/control.php) и наслаждайтесь!
Для безопасности следует удалить root аккаунт.
ссылка на оригинал статьи http://habrahabr.ru/post/162651/
Добавить комментарий