Музыка по карточкам

в 13:04, , рубрики: diy или сделай сам, Raspberry Pi, RFID, rfid-метки, дети, Медиаплееры, музыка, метки: , , , ,

Проект «музыка по карточкам» прошел путь от ip-считывателя карточек на базе arduino до законченного решения, позволяющего хранить и воспроизводить музыку, управляя этим процессом с помощью RFID карточек «метрошного» стандарта mifare ultralight.

Устройство предназначалось в подарок дружественному ребёнку и его родителям, поэтому статья построена в жанре инструкций для трёх категорий пользователей: детей, взрослых и программистов. Тем, кому интересно только внутреннее устройство коробочки, лучше сразу перейти к третьей части статьи.

Детская версия

Приложи карточку к цветочку на коробочке. Начнёт играть музыка. Люди старше 3-х лет в этот момент обычно испытывают бурную радость.

Взрослая версия

внутренности коробочки

Как привязать новую карточку.

1. Открыть сетевую папку \rfidmusicmusic
2. Поднести новую карточку к считывателю.
3. В папке с музыкой появится файл с именем card_id.xxxxxxxx, где xxxxxxxx — уникальный номер карточки.
4. Создать папку с именем xxxxxxxx, записать туда музыку.

Как записать новую музыку или удалить старую.

1. Скопировать новую музыку в существующий каталог, соответствующий номеру карточки или в новый каталог, созданный так, как описано в разделе «Как привязать новую карточку».
2. Создать каталог update в папке \rfidmusicmusic. В течении 5 минут новая музыка будет проиндексирована и станет доступна для воспроизведения. Каталог update после этого будет автоматически удалён.

Версия для программистов

Железо

Коробочка представляет из себе микрокомпьютер Raspberry Pi с подключёнными считывателем RFID карточек и WiFi донглом. Никаких проблем при подключении периферии к RPi не возникло, всё заработало сразу и без проблем, достаточно было прописать SSID и пароль от WiFi-ной сетки. Схема подключения RFID ридера описана в статье [3].

Софт

состоит из трёх модулей:

1. Samba сервера. Каталог с музыкой доступен в домашней сети по адресу \rfidmusicmusic. Музыка хранится на той же SD-карточке, с которой грузится система.

2. Музыкального сервера. Это MPD (http://en.wikipedia.org/wiki/Music_Player_Daemon) в стандартной конфигурации. К этому музыкальному серверу есть клиенты подо всё, что движется, в частности есть программки для андроида (mpdroid) и iphone (MPaD). Т.е. управлять музыкой можно не только карточками, но и обычным способом, с телефона, компьютера и т.п.

3. Считывателя карточек. У каждой карточки есть уникальный номер. Если в папке с музыкой есть каталог с именем, совпадающим с номером карточки, то запускается музыка из этого каталога. В любом случае, в папке с музыкой создается файл с именем card_id.xxxxxxxx, где xxxxx — уникальный номер последней поднесённой к считывателю карточки. Считыватель запускается из /etc/inittab инструкцией


RF:23:respawn:/home/pi/rfid/run.sh

4. Индексатора новой музыки. Раз в 5 минут проверяется наличие каталога с именем update в папке с музыкой. Если он там есть, то MPD заново перечитывает всю музыку (командой mpc update) и удаляет каталог update. Индексатор запускается из крона юзера pi.

Ссылки


(первая версия «музыки по карточкам» управляла Squeezebox player-ом)

1. Код первой и второй версии проекта на гитхабе
2. Считыватель карточек, совместимый с RPi
3. Схема подключения и установка необходимых питоновых модулей (на испанском)

Автор: variomap

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js