В отличие от обыкновенных стенгазет и объявлений, информационные экраны на базе мини-компьютера и монитора способны отображать большие объёмы информации, причём, в более привлекательном виде. По этой причине огромную популярность приобрели рекламные щиты с динамическими слайдами и текстом. Такие устройства часто встречаются в банках, больницах, учебных и прочих заведениях. Преимущества информационных панелей:
- вывод информации любого типа;
- возможность отображать большие объёмы данных, например, новостные ленты;
- простота настройки и обновления информации;
- малые габариты.
- Стандартная информационная панель состоит из:
- монитора;
- компьютера-сервера;
- соединительных кабелей.
В данном случае поставлена задача – разработать информационную панель на базе одноплатного компьютера Raspberry Pi 2. Технические характеристики (четырёхъядерный процессор и 1 Гб ОЗУ) и габариты (85,6 ´ 56,5 мм) идеально подходят для наших целей. Благодаря малым габаритам, у пользователя не возникнет никаких проблем с дальнейшим монтажом. Внешний вид и дизайн данного устройства показан на рисунке 1.
Приобрести Raspberry Pi можно у глобального дистрибьютора товаров для инженеров – компании RS Components Russia. В качестве монитора можно использовать 7-дюймовый тачскрин дисплей 7¢ Touch Screen LCD (RS-номер 899-7466 от компании RS Components).
По желанию пользователя, через Raspberry можно транслировать данные с произвольного сайта. В данной статье отображающий контент представляет собой отдельную PHP-страницу, подключённую к базе данных Mysql. Предполагается, что у пользователя имеется готовый сайт или шаблон на PHP для дальнейшей работы. Таким образом, решение поставленной задачи состоит из следующих этапов:
- Настройка сети для работы с Rasp-berry Pi 2.
- Настройка Nginx-сервера.
- Создание базы данных Mysql.
- Автозапуск браузера с заготовленной PHP-странцей.
- Подключение «движка сайта» (необя-зательно).
Питание
Подача питания для Raspberry осуществляется через интерфейс microUSB.
Для стабильной работы потребуется USB-блок питания мощностью 5 Вт, с номинальным напряжением 5 В и выходным током 1 А. Разумеется, нам потребуется и USB-кабель оптимальной длины.
Операционная система
В качестве операционной системы будем использовать стандартный дистрибутив Raspbian, рекомендованный для работы с одноплатными компьютерами Raspberry pi. Он основан на пакетной базе Debian Wheezy и специально оптимизирован для Raspberry Pi (сборка для ARMv6 с расширением «Hard Float»).
Первичные настройки
Первым делом, вызовем основное меню настроек, используя команду raspi-confing с правами суперпользователя: Sudo raspi-config.
В результате появится соответствующее меню, как на рисунке 2.
Рекомендуется перейти в раздел „Change User Password“ для установки более простого пароля.
Для максимального удобства и доступа к серверу через удалённый компьютер рекомендуется включить SSH-сервер в подразделе меню „Advanced Options“.
SSH (безопасная оболочка) – это набор программ, которые позволяют регистрироваться на компьютере по сети, удалённо выполнять на нём команды, а также копировать и перемещать файлы между компьютерами. SSH организует защищённое безопасное соединение поверх небезопасных каналов связи.
По завершении настроек программа предложит перезагрузить компьютер.
Настройка сети
Сетевое подключение по SSH в данном случае будет осуществляться через стандартный сетевой порт Ethernet. Необходимо соединить Raspberry с сетевым портом коммутатора или компьютера, присвоив серверу статический IP-адрес. Изменения в сетевые настройки вносят в файл /etc/network/interfaces:
iface eth0 inet static
address 192.168.0.103
netmask 255.255.255.0
gateway 192.168.0.100
auto eth0
Дальнейшую работу с Raspberry можно осуществлять удалённо с помощью SSH и компьютера-клиента на Windows. В качестве клиентского приложения можно использовать программу Putty. В процессе подключения приложение потребует указать IP-адрес Raspberry, а также логин и пароль. Ключи безопасности для работы по SSH-каналу генерируются автоматически.
Установка веб-сервера
Для начала обновим список репозиториев и поиск индексов обновлённых версий программ, драйверов, ядра и всего прочего: sudo apt-get update.
Установим веб-сервер Nginx и PHP: sudo apt-get install nginx.
PHP – скриптовый язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных.
Nginx – простой, быстрый и надёжный сервер, не перегруженный функциями. Применение Nginx целесообразно, прежде всего, для статических веб-сайтов. Проверить работу Nginx-сервера можно путём ввода IP-адреса сервера в строке любого браузера. В случае успеха мы увидим соответствующее сообщение.
По умолчанию, домашним каталогом сервера является папка /usr/share/nginx/www. Здесь же должны располагаться файлы сайта на PHP.
Далее для работы с PHP-кодом необходимо внести ряд изменений в файл /etc/nginx/sites-available/default:
- к строке index index.html index.html следует добавить index.php;
- включить PHP.
Последнее выполняется после «раскомментирования» нескольких строк в области PHP-конфигураций. В итоге сектор PHP {…} должен выглядеть так, как это показано в листинге 1.
Таким образом, мы «установили связь» между PHP и сервером.
Установка базы данных Mysql и PhpMyAdmin
Для работы с базами данных потребуется установить Mysql и утилиту PhpMyAdmin для удобной работы с таблицами:
sudo apt-get install mysql-server php5 php5-fpm php5-mysql phpmyadmin.
В процессе установки потребуется ввести пароль для Root-пользователя в Mysql.
Управлять базой данных удобнее всего через PhpMyAdmin, которая, как и Mysql, устанавливается на сервере. Для доступа к ней необходимо ввести в строке браузера: http://<IP_Raspberry>/phpmyadmin. После этого браузер выдаст форму авторизации (см. рис. 3).
Если представленная команда не выводит такую страницу, то вводим небольшое дополнение в файл /etc/nginx/sites-available/ (в область Server {…}), как это показано в листинге 2.
Установка дополнительного софта
Для устранения проблем с отображением лучше всего установить оконный менеджер Matchbox: Sudo apt-get install matchbox.
Установка дополнительных пакетов производится с помощью следующей команды: sudo apt-get install -y unclutter build-essential git-core x11-xserver-utils xterm mpg123 libx264-dev ffmpeg libav-tools mc midori.
Midori – классический веб-браузер. Пользователи могут использовать любые браузеры, по своему усмотрению.
Далее потребуется создать PHP-страницу с последующим подключением к Mysql. PHP-файл следует поместить в каталог /usr/share/nginx/www. Таким образом, чтобы загрузить данную страницу, введите в браузере: http://localhost/<Имя PHP-файла>.
Настройка FTP-сервера
FTP-сервер понадобится нам при переносе файлов с клиентского ПК на сервер Raspberry. FTP – стандартный протокол, предназначенный для передачи файлов по TCP-сетям (например, Интернет). FTP часто используется для загрузки сетевых страниц и других документов с частного устройства разработки на открытые серверы хостинга.
Установка FTP выполняется командой: sudo apt-get install vsftpd.
Vsftpd – FTP-сервер с поддержкой IPv6 и SSL. Является FTP-сервером по умолчанию многих операционных систем, и обслуживает официальные репозитории ftp.debian.org, ftp.redhat.com,ftp.openbsd.org, ftp.freebsd.org. Также используется на официальном FTP ядра Linux.
Далее вносим изменения в конфигурационный файл vsftpd.conf: sudo nano/etc/vsftpd.conf.
Вносим следующие изменения:
Anonymous_enable=NO
Local_enable=YES
Write_enable=YES
Ascii_upload_enable=YES
Ascii_download_enable=YES
Перезагружаем Vsftpd командой: /etc/init.d/vsftpd restart.
В дальнейшем нам понадобится установить файловый менеджер для работы с FTP-соединением. Для этих целей можно использовать простой Total Commander.
Автозапуск «информационной панели»
После создания страницы и наполнения контентом, получаемым из базы данных Mysql, потребуется написать скрипт, задача которого – выводить на дисплей подготовленную страницу через браузер Midori. В нашем случае скрипт будет выполняться сразу после загрузки Raspberry. Дополнительно в скрипте включены команды для:
- отключения «засыпания экрана»;
- отключения курсора;
- отключения энергосберегающего режима;
- активации оконного менеджера Matchbox-Window-Manager.
Скрипт автозапуска показан в листинге 3.
Устанавливаем права на исполнение и автоматический запуск: sudo chmod +x /home/pi/<название скрипта>.
Запуск при старте – вписываем запуск скрипта с «иксами» в файл /etc/rc.local: sudo xinit ./home/pi/<название скрипта>.
Подключение «движка»
В процессе работы пользователю потребуется периодическое обновление контента – дополнять ленту новостей, обновлять план мероприятий. Все эти процедуры можно выполнять через упомянутую ранее утилиту PhpMyAdmin. Однако можно воспользоваться и более «привлекательным для глаз» инструментом – CMS-«движком» Wordpress.
Это система для управления контентом, поставляемая с бесплатным исходным кодом. При желании модифицировать ядро «движка» пользователь не встретит никаких ограничений. В этом и заключается главное преимущество Wordpress.
Для установки «движка» нам потребуется FTP-соединение. Файлы «движка» должны находиться в папке Nginx-сервера (/usr/share/nginx/www). Рекомендуется использовать следующий путь к файлам движка: /usr/share/nginx/www/wordpress. Извлекаем файлы в указанную директорию, затем с помощью текстового редактора открываем файл /Wp-admin/wp-config.php и вносим в него следующие данные:
- имя базы данных Mysql;
- имя сервера;
- имя пользователя Mysql;
- пароль пользователя.
Затем в браузере появляется запрос: http://<имя сервера>/wordpress/wp- admin.
Начнётся процесс установки, где пользователю потребуется ввести название сайта, e-mail и пароль.
На этом установка Wordpress окончена. Для доступа к консоли управления «движка» открываем браузер и вводим http://<имя сервера>/wordpress.
Рабочая область «движка» Wordpress показана на рисунке 4.
Заключение
Основная часть работы выполнена. Осталось соединить Raspberry с монитором при помощи HDMI-кабеля и подключить к ней питание по USB-кабелю. Nginx-сервер и скрипт запускаются автоматически при включении устройства.
Литература
- www.prochor.ru/content/nashi-stati/rasp-berry-pi/content8/raspberry-web-kiosk.html.
- www.unixa.ru/lan-net/ssh-udalennyiy-zapusk-graficheskih-prilozheniy.html.
- www.rwpbb.ru/raspberrypi/raspberry2.html.
- Сергеева А., Кривандин C. Одноплатный компьютер Raspberry Pi: от учебного пособия до промышленного контроллера. Компоненты и технологии. 2016. №4.
- Ермаков А. Raspberry Pi – эффективный инструмент снижения затрат при автоматизации бизнес-процессов. ИСУП. 2016. №1.
- www.rsrussia.ru.