====== Светодиодная панель с Raspberry Pi ======
Рассмотрим примеры использования [[amp>product/rgb-led-matrix-64x32?utm_source=man&utm_campaign=rgb-led-matrix&utm_medium=wiki|светодиодной RGB-матрицы]] с одноплатным компьютером [[amp>collection/raspberry-pi?utm_source=man&utm_campaign=rgb-led-matrix&utm_medium=wiki|Raspberry Pi.]]
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_overview.jpg?nolink |}}
===== Видеообзор =====
{{youtube>oggOUJt_Ihc?large}}
===== Что понадобится =====
* [[amp>collection/raspberry-pi?utm_source=man&utm_campaign=rgb-led-matrix&utm_medium=wiki|Одноплатный компьютер Raspberry Pi]]
* [[amp>product/rgb-led-matrix-64x32?utm_source=man&utm_campaign=rgb-led-matrix&utm_medium=wiki|Светодиодная LED панель]]
* [[amp>product/rgb-led-matrix-driver-cap?utm_source=man&utm_campaign=rgb-led-matrix-driver-cap&utm_medium=wiki|Драйвер светодиодной матрицы]]
* [[amp>product/ac-dc-rs-25-5?utm_source=man&utm_campaign=rgb-led-matrix&utm_medium=wiki|Блок питания (5 вольт, 5 ампер)]]
* [[amp>product/21mm-screw-jack?utm_source=man&utm_campaign=rgb-led-matrix&utm_medium=wiki|Штекером питания 2,1 мм с клеммником]]
===== Подключение и настройка =====
==== Железная часть ====
Перед подключением советуем [[:продукты:rgb-led-matrix-64x32#сигнальные_разъёмы_на_матрице|ознакомиться с распиновкой разъёма «HUB-75» и ответного шлейфа.]]
- Установите драйвер светодиодной ленты сверху на Raspberry Pi методом бутерброда.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_scheme.1.png?nolink |}}
- Скоммутируйте сигнальные линии между собой драйвером и светодиодной матрицей через шлейф. Один контакт шлейфа в выходной разъём на контроллере, а другой — в разъём входящих данных на матрице ''DATA IN''.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_scheme.2.png?nolink |}}
- Подключите питание от драйвера на светодиодную матрицу силовым проводом. Один конец провода в клеммник ''PWR OUT'' на контроллере, а второй — в разъём ''POWER'' на матрице.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_scheme.3.png?nolink |}}
- Подключите питание на модуль через внешний разъём «DC Barrel jack». Каждая LED панель питается строго от 5 вольт. Потребление тока зависит от вида матрицы.
Рекомендуем использовать блок питания с выходным напряжением 5 вольт и током не менее 4 ампер. Идеально подойдёт [[amp>product/ac-dc-rs-25-5?utm_source=man&utm_campaign=rgb-led-matrix&utm_medium=wiki|блок питания с выходным напряжением 5 вольт и током 5 ампер]]. При подключении удобно воспользоватся [[amp>product/21mm-screw-jack?utm_source=man&utm_campaign=rgb-led-matrix&utm_medium=wiki|штекером питания 2,1 мм с клеммником]]
При подключении нескольких светодиодных панелей, соответственно увеличивайте запас по току в N-раз, где N — количество матриц в цепочке.
На схеме матрицы и контроллера нет встроенного регулятора напряжения. При подаче напряжения более 5 вольт — вы убьёте LED панель и драйвер.
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_scheme.4.png?nolink |}}
- Железо собрано. Теперь можно переходить к [[#программная_часть|программной части.]]
==== Цепочка из матриц ====
Матрицы легко соединять в цепочку (гирлянду). А потом программным методом выводить информацию на дисплей из матриц.
- Соедините сигнальным шлейфом выход первой матрицы ''DATA IN'' ко входу второй матрицы ''DATA IN''.
- Подключите питание от драйвера на светодиодную матрицу силовым проводом. Один конец провода в клеммник ''PWR OUT'' на контроллере, а второй — в разъём ''POWER'' на второй матрице.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_scheme.5.png?nolink |}}
Максимальное количество матриц в цепочке 12.
==== Программная часть ====
Программная часть данной инструкции не подходит для raspberry pi 4. Если у вас raspberry pi 4 используйте [[http://wiki.amperka.ru/projects:rgb-led-matrix-raspberry-pi-4|эту инструкцию.]]
- [[articles:rpi-guide|Подготовь Raspberry Pi]].{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.1.png?nolink |}}
- Скачайте скрипт для настройки одноплатника с LED панелями.wget https://raw.githubusercontent.com/amperka/scriptsRPI/master/amperka-rpi-rgb-matrix.sh
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.2.png?nolink |}}
- Запустите скрипт конфигурации платформы.sudo bash amperka-rpi-rgb-matrix.sh
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.3.png?nolink |}}Откроется меню установки с предложением продолжить/отменить установку.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.4.png?nolink |}}
- Жмите смело «Y».{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.5x.png?nolink |}}
- Программа предложит вам выбор вывода изображения:{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.6.png?nolink |}}
- **Режим «High Quality»**. На матрице выводиться изображение без мерцаний и бликов. Но за качество необходимо платить — необходимо отключить аудио драйвер на вашем одноплатнике. Для активации режима выбирайте «1». {{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.7x.png?nolink |}}Установите джампер на драйвер.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-driver-cap_jumper_on.png?nolink |}}Жмите «Y» на продолжения.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.8x.png?nolink |}}
- **Режим «Convenience»**. При выводе изображений возможны появления мерцаний. Но никаких дополнительных манипуляций делать не нужно и звук останется включенным. Для активации режима выбирайте «2». {{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.9x.png?nolink |}}Снимите джампер с драйвера, если он там был.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-driver-cap_jumper_off.png?nolink |}}Жмите «Y» на продолжения.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.10x.png?nolink |}}
- Начнётся процесс установки и компиляции.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.11x.png?nolink |}}
- Дождитесь окончания процесса и нажмите кнопку «Y».{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.12x.png?nolink |}}После чего система перезагрузится.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.13.png?nolink |}}
- Залогинтесь в Raspberry Pi.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.1.png?nolink |}}{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.1.png?nolink |}}
- Проверим наличие скаченной библиотеки. Для этого в домашней директории выполните командуls
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.14x.png?nolink |}}В итоге вы должны увидеть папку «rpi-rgb-led-matrix».{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_soft.15x.png?nolink |}}
===== Примеры работы =====
Для запуска примеров выполните [[#железная_часть|железную]] и [[#программная_часть|программную]] настройку платформы.
==== Демонстрационные ====
В библиотеку входят скомпилированные примеры для демонстрации работы матрицы. Запустим их.
- Перейдите в категорию с установленной библиотекой.cd rpi-rgb-led-matrix
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_examples.1.png?nolink |}}
- Далее зайдите в директорию скомпилированными примерами.cd examples-api-use
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_examples.2.png?nolink |}}
- Запустим один из тестовых примеров. sudo ./clock -f --led-cols=64 --led-rows=32 ../fonts/7x13.bdf -d "%H:%M:%S"
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_examples.3.png?nolink |}}В итоге на матрице отобразится текущее время.{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_clock.gif?nolink |}}
Больше примеров и подробную информацию [[https://github.com/hzeller/rpi-rgb-led-matrix|читайте в технической документации от разработчика]].
==== Вывод изображений и анимаций ====
Библиотека также позволяет выводить статические и анимированные изображения.
- Перейдите в категорию с установленной библиотекой.cd rpi-rgb-led-matrix
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_examples.1.png?nolink |}}
- Далее зайдите в директорию «utils».cd utils
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_examples.4.png?nolink |}}
- Установите по очереди необходимые пакеты.sudo apt-get update
sudo apt-get install libgraphicsmagick++-dev libwebp-dev -y
make led-image-viewer
Пакеты установлены. Переходим к выводу картинок.
=== Вывод изображения ===
- Найдите изображение которое хотите вывести на матрице и переместите его в рабочую папку программы ''rpi-rgb-led-matrix/utils'' на Raspberry Pi. В качестве примера мы выбрали изображение {{:projects:rgb-led-matrix-raspberry:chrome.jpg?linkonly|chrome.jpg}}
Для переноса файлов с ПК на Raspberry Pi можно воспользоватся утилитой [[https://winscp.net/eng/download.php|WinSCP]]
- Запустите скрипт запуска изображения.sudo ./led-image-viewer --led-cols=64 --led-rows=32 --led-gpio-mapping="adafruit-hat" chrome.jpg
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_chrome.jpg?nolink |}}
=== Вывод анимации ===
Усложним задачу. Что бы было интереснее увеличим дисплей — подключим вторую матрицу и выведем анимацию.
- [[#цепочка_из_матриц|Сделайте цепочку из двух матриц]].
- Найдите анимацию которую хотите вывести на матрице и переместите её в рабочую папку программы ''rpi-rgb-led-matrix/utils'' на Raspberry Pi. В качестве примера мы выбрали изображение {{:projects:rgb-led-matrix-raspberry:animation.gif?linkonly|animation.gif}}
Для переноса файлов с ПК на Raspberry Pi можно воспользоватся утилитой [[https://winscp.net/eng/download.php|WinSCP]]
- Запустите скрипт запуска анимации
sudo ./led-image-viewer -f --led-cols=64 --led-rows=32 --led-chain=2 --led-pixel-mapper=snake:2 --led-gpio-mapping="adafruit-hat" animation.gif
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_hypnosis.gif?nolink |}}
Больше примеров и подробную информацию [[https://github.com/arduino12/rpi-rgb-led-matrix/tree/master/utils|читайте в технической документации от разработчика]].
==== Вывод видео ====
Методы библиотеки позволяет выводить видео на две LED панели.
Вывод видео на RGB-матрицы сильно загружает процессор и декодирование может привести бликам и мерцанием. Метод библиотеки позволяет выводить только видео дорожку, к сожалению без звука.
- [[#цепочка_из_матриц|Сделайте цепочку из двух матриц]].
- Перейдите в категорию с установленной библиотекой.cd rpi-rgb-led-matrix
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_examples.1.png?nolink |}}
- Далее зайдите в директорию «utils».cd utils
{{ :projects:rgb-led-matrix-raspberry:rgb-led-matrix-raspberry_examples.4.png?nolink |}}
- Установите по очереди необходимые пакеты.sudo apt-get update
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev
make video-viewer
- Найдите видео которое хотите вывести на матрице и переместите его в рабочую папку программы ''rpi-rgb-led-matrix/utils'' на Raspberry Pi. В качестве примера мы выбрали видео {{:projects:rgb-led-matrix-raspberry:video.mp4?linkonly|«Мифы и легенды о Raspberry Pi»}}
Для переноса файлов с ПК на Raspberry Pi можно воспользоватся утилитой [[https://winscp.net/eng/download.php|WinSCP]]
- Запустите скрипт запуска видео.
sudo ./video-viewer --led-cols=64 --led-rows=32 --led-chain=2 --led-pixel-mapper=snake:2 --led-gpio-mapping="adafruit-hat" video.mp4
Больше примеров и подробную информацию [[https://github.com/arduino12/rpi-rgb-led-matrix/tree/master/utils|читайте в технической документации от разработчика]].
===== Ресурсы =====
* [[amp>product/rgb-led-matrix-64x32?utm_source=man&utm_campaign=rgb-led-matrix&utm_medium=wiki|Светодиодная RGB Матрица 64×32]] в магазине.
* [[amp>product/rgb-led-matrix-driver-cap?utm_source=man&utm_campaign=rgb-led-matrix&utm_medium=wiki|Драйвер светодиодной матрицы для Raspberry Pi]]
* [[:projects:rgb-led-matrix-arduino|Примеры работы для Arduino.]]
* [[:продукты:rgb-led-matrix-64x32|Техническая документация на светодиодную RGB матрицу 64×32]]
* [[:продукты:rgb-led-matrix-driver-cap|Техническая документация на драйвер матрицы]]