Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Arduino - MP3-плеер с веб-интерфейсом

Компоненты и расходные материалы

Arduino UNO
× 1
PHPoC WiFi Shield для Arduino
Вместо этого мы можем использовать PHPoC Shield для Arduino
× 1
Серийный MP3-плеер от Catalex
× 1
карта micro SD
× 1
Спикер
× 1

Об этом проекте

У меня есть аналогичный проект, использующий здесь только PHPoC.

MP3-плеер может быть полезен в музее или на выставке для предоставления голосовой информации посетителям по запросу. В этом проекте показано, как управлять MP3 через веб-страницу с помощью Arduino Uno.

Если вы новичок, вы можете узнать об Arduino здесь.

Последовательный MP3-плеер

Последовательный MP3-плеер имеет два интерфейса:

  • разъем к динамику
  • интерфейс к микроконтроллеру (в этом проекте - Arduino)

При получении команды от микроконтроллера (например, PLAY, PAUSE, VOLUME UP ...) MP3-плеер считывает файл .mp3 с SD-карты и выполняет действия в соответствии с командой.

Перед использованием необходимо скопировать файлы .mp3 на SD-карту и подключить к MP3-плееру.

Электропроводка

  • Стек PHPoC Shield на Arduino
  • Подключите контакты GND, VCC TX и RX MP3-плеера к GND, 5V, контактам 8 и 9 Arduino соответственно.

Поток данных

Веб-браузер ---> PHPoC WiFi Shield ---> Arduino

Веб-приложение в веб-браузере будет отправлять команды и данные на основе события касания или щелчка на экран PHPoC через WebSocket. При получении команды щит PHPoC передает ее Arduino. Arduino отправляет команду MP3-плееру в соответствии с командой, полученной от PHPoC Shield.

Набор команд

Где XX - значение объема.

Обратите внимание: В PHPoC shield есть встроенная программа для передачи данных из веб-браузера в Arduino. Поэтому нам не нужно об этом заботиться.

Что нам нужно делать

  • Установить информацию о Wi-Fi для экрана PHPoC (SSID и пароль)
  • Загрузить новый интерфейс на PHPoC Shield
  • Напишите код Arduino

Настройка информации о Wi-Fi для PHPoC Shield

См. Эту инструкцию.

Загрузите новый веб-интерфейс в PHPoC Shield

  • Загрузите исходный код PHPoC remote_mp3.php (в разделе кода).
  • Загрузите его на экран PHPoC Shield с помощью отладчика PHPoC в соответствии с этой инструкцией.

Обратите внимание: Этот веб-интерфейс содержит набор команд для отправки в Arduino.

Написать код Arduino

  • Установите библиотеку для Arduino в Arduino IDE (см. инструкцию) и перезапустите Arduino IDE.
  • В среде Arduino IDE выберите Файл -> Примеры -> Phpoc -> WebRemoteSlide.
  • Я изменил пример (см. исходный код в разделе кода).

Тестирование

  • Нажмите кнопку последовательного порта в среде Arduino IDE, чтобы увидеть IP-адрес.
  • Откройте веб-браузер, введите http:// replace_ip_address /remote_mp3.php
  • Нажмите кнопку подключения и проверьте ее.

Лучший стартовый комплект Arduino для начинающих

См. «Лучший комплект Arduino для начинающих»

  • Serial.begin ()
  • Serial.println ()
  • delay ()
  • миллис ()
  • цикл для
  • цикл while
  • если еще
  • цикл ()
  • setup ()
  • String.toInt ()
  • String.substring ()
  • String.indexOf ()
  • String.remove ()
  • String.equals ()

Код

  • Код Arduino
  • Веб-интерфейс пользователя (remote_mp3.php)
Код Arduino Arduino
 #include "SPI.h" #include "Phpoc.h" #include  #define ARDUINO_RX 8 // должен подключаться к TX модуля последовательного MP3-плеера #define ARDUINO_TX 9 // подключаться к RX из модульAltSoftSerial mySerial (ARDUINO_RX, ARDUINO_TX); статические int8_t Send_buf [8] ={0}; #define CMD_PLAY_NEXT 0x01 # определить CMD_PLAY_PREV 0x02 # определить CMD_PLAY_W_INDEX 0x03 # определить CMD_SET_VOLUME 0x06 # определить CMD_SEL_DEV 0x09 # определить CMD_PLAY_W_VOL 0x22 # определить CMD_PLAY 0x0D # определить CMD_PAUSE 0x0E # определить CMD_SINGLE_CYCLE 0x19 # определить DEV_TF 0x02 # define SINGLE_CYCLE_ON 0x00 # define SINGLE_CYCLE_OFF 0x01 // веб-сервер Arduino PhpocServer server (80); char name; int value; void setup () {mySerial.begin (9600); задержка (500); // ожидание завершения инициализации микросхемы sendCommand (CMD_SEL_DEV, DEV_TF); // выбираем задержку TF карты (200); // ждем 200 мс Serial.begin (9600); в то время как (! серийный); Phpoc.begin (PF_LOG_SPI | PF_LOG_NET); //Phpoc.begin (); server.beginWebSocket ("удаленный_ слайд"); Serial.print ("Адрес сервера WebSocket:"); Serial.println (Phpoc.localIP ());} void loop () {// ждем нового клиента:PhpocClient client =server.available (); если (клиент) {String slideStr =client.readLine (); если (slideStr) {имя =slideStr.charAt (0); значение =slideStr.substring (1) .toInt (); if (name =='P') {Serial.println ("Воспроизвести mp3"); sendCommand (CMD_PLAY, 0x0000); } if (name =='S') {Serial.println ("Приостановить mp3"); sendCommand (CMD_PAUSE, 0x0000); } if (name =='N') {Serial.println ("Воспроизвести следующий mp3"); sendCommand (CMD_PLAY_NEXT, 0x0000); } if (name =='B') {Serial.println ("Воспроизвести предыдущий mp3"); sendCommand (CMD_PLAY_PREV, 0x0000); } if (name =='V') {Serial.print ("Изменить громкость на"); Serial.println (значение); sendCommand (CMD_SET_VOLUME, значение); }}}} void sendCommand (команда int8_t, int16_t dat) {задержка (20); Send_buf [0] =0x7e; // начальный байт Send_buf [1] =0xff; // версия Send_buf [2] =0x06; // количество байтов команды без начального и конечного байтов Send_buf [3] =command; // Send_buf [4] =0x00; // 0x00 =нет обратной связи, 0x01 =обратная связь Send_buf [5] =(int8_t) (dat>> 8); // данныеh Send_buf [6] =(int8_t) (dat); // данные Send_buf [7] =0xef; // конечный байт для (uint8_t i =0; i <8; i ++) {mySerial.write (Send_buf [i]); }} 
Web IU (remote_mp3.php) PHP
     PHPoC Shield - IoT MP3 Player       

Веб-пульт дистанционного управления / MP3-плеер IoT

WebSocket: null

Схема


Производственный процесс

  1. Игрок на фортепиано
  2. Arduino Spybot
  3. FlickMote
  4. Самодельный телевизор B-Gone
  5. Основные часы
  6. Найди меня
  7. Arduino Power
  8. Воспроизведение звука в Arduino
  9. Tech-TicTacToe
  10. Четвероногий Arduino