Friday, 9 December 2016

DF Player Serial mp3 player for Arduino Audio Project






Image result for dfplayer arduino

Membuat Project Arduino dengan Arduino dan Module DF Player mini (Serial mp3 player)




Sebelumnya saya pernah menulis tentang dasar penggunaan DF Player mini sebagai module pendukung untuk arduino, khususnya untuk project yang berhubungan atau membutuhkan data out berupa 'suara' atau audio.

Anda bisa menengok kembali artikel dasar penggunaan DF Player pada link berikut :
http://www.belajarduino.com/2016/07/dfplayer-mini-serial-mp3-player-module.html
atau klik disini.

Kali ini kita akan mempelajari lebih lanjut tentang penggunaan module mp3 DF Player bersama dengan Arduino untuk bisa menghasilkan project-project yang Powerful.

A.Hal-hal yang perlu diperhatikan dalam penggunaan Module DF Player

-Module DF Player mendukung memory microSD hingga kapasitas 32GB tetapi secara pribadi saya menyarankan anda untuk menggunakan memory dengan kapasitas maksimal 8GB saja.

-Pastikan memory diFormat dengan type FAT atau FAT32

-Penyimpanan file .mp3 harus berada di dalam folder bernama 'mp3' (tanpa petik)
Hal ini sangat penting,jika file disimpan pada root folder atau selain folder mp3 maka file tidak
akan terinisialisasi oleh command.




-Nama file .mp3 di dalam folder mp3 harus berupa nomor urut agar bisa dipanggil sesuai namanya.
Nama file terdiri dari 4 angka mulai dari 0001.mp3 sampai 9999.mp3



B.Penggunaan Amplifier pada Module DF Player

-Out speaker dari module DFPlayer mini sangat kecil jadi jangan disambungkan langsung ke speaker
8Ohm/4Ohm karena bisa membuat chip menjadi panas.Anda dapat menghubungkanya ke Headset atau
speaker mini 0.25watt jika ingin langsung mendengarkan suaranya.

-Jika ingin Suara OUT menjadi keras silahkan tambahkan module amplifier untuk memperkuat signal audio dari Module DFPlayer mini ke Loud Speaker. Anda dapat menggunakan module Amplifier LM386 , PAM8403 atau PAM8610. Berikut adalah beberapa contoh wiring module DFPlayer mini ke Eksternal Amplifier Module dan Arduino.


1.DF Player mini + Module Ampli LM386 (MONO 0.5-25watt)


2.DF Player mini + Module Ampli PAM8403 (STEREO 2X3watt via DAC Out)


3.DF Player mini + Module Ampli PAM8403+Pot (STEREO 2X3watt via DAC Out)



4.DF Player mini + Module Ampli PAM8403+Pot (STEREO 2X3watt via Speaker Out)


5.DF Player mini + Module Ampli PAM8610 (STEREO 2X15watt via DAC Out)



5.DF Player mini + Module Ampli PAM8610 (STEREO 2X15watt via Speaker Out)


Catatan penting :
-Pada beberapa gambar wiring diatas saya menarus sebuah Resistor R1 pada pin Rx Dfplayer yang
menuju ke TX dari Arduino, fungsinya adalah untuk menurunkan level tegangan serial dari TX Arduino
menuju RX DFPlayer, tanpa Resistor ini maka hasil suara pada Module DF Player NOISE/kotor.
Besar resistansi dari resistor R1adalah 4K7 sampai 10K Ohm, pada beberapa narasumber menggunakan
Resistor 1K namun hasilnya masih belum bersih.Saya mencoba dengan nilai 10K mendapatkan hasil
suara yang jernih tanpa mengganggu komunikasi Serial antara Arduino dan Module DF Player.

C.Komunikasi dan Inisialisasi Module DF Player dengan Arduino

Untuk mempermudah kontrol module DFPlayer kita membutuhkan sebuah Library Eksternal yang harus kita ikutkan kedalam coding kita.Fungsinya untuk mempermudah menulisan syntax program dalam memberikan command/perintah ke module DFPlayer melalui komunikasi serial.

Silahkan download Library DFPlayer Arduino disini.

Setelah melakukan download semua library yang dibutuhkan (Liquid Crystal i2C) kemudian ekstract menggunakan aplikasi Winrar/Winzip dan copy master folder yang ada di dalamnya ke dalam folder 'libraries' yang ada pada directory installer Arduino IDE.
Secara default ada di lokasi :


Windows 64bit = C:\Program Files (x86)\Arduino\libraries
Windows 32bit = C:\Program Files \Arduino\libraries


Ada 2 metodhe pengontrolan module DFPlayer melalui Arduino yaitu melalui Serial (hardware) arduino yaitu melalui pin RX(D0) dan TX(D1) atau bisa menggunakan pin digital lain (selain TXD dan RXD) melalui bantuan SoftwareSerial (komunikasi Serial buatan). Berikut contoh wiring komunikasi module DFPlayer ke Arduino dengan Serial dan SoftwareSerial :

1.Komunikasi SERIAL
*Sebagai catatan,saat menggunakan koneksi Serial ke D0 D1 maka saat melakukan upload program
harus mencabut sambungan kabel/jumper dari pin D0 ke TX module DF Player





2.Komunikasi SoftwareSerial
*Dengan koneksi SoftwareSerial anda bisa menggunakan sembarang digital pin untuk melakukan
komunikasi serial dengan Module DFPlayer sesuai dengan nomor pin yang di definisikan pada program.



Untuk komunikasi Serial saya tidak akan memberikan contoh programnya karena saya rasa sangat mudah, berikut saya berikan contoh setup dan inisialisasi module DF Player dalam sketch coding Arduino :


//Create by Dani Rajacell for www.belJrduino
//*******************************************
#include //memanggil library SoftwareSerial
#include //memanggil library DFPlayer mini

SoftwareSerial mySerial(2, 3); // Declare pin RX & TX
//TX DF Player ke pin D2
//RX DF Player ke pin D3 (melalui R10K)

const int busyPin =4;


void setup () {
pinMode (busyPin, INPUT);

mySerial.begin (9600);

mp3_set_serial (mySerial); //set softwareSerial for DFPlayer
delay(10);

mp3_reset(); //soft-Reset module DFPlayer

delay(10); //wait 1ms for respon command

mp3_set_volume (15); //set Volume module DFPlayer
delay(1000);
}
//Create by Dani Rajacell

void loop () {
mp3_play (1); //Play mp3 0001.mp3 dalam folder mp3 di memory

//memainkan file berikutnya jika lagu sebelumnya sudah selesai
if( busyPin == HIGH ){ mp3_next (); }

//memainkan file 0001.mp3 s/d 0010.mp3 selama 2detik/file secara berurutan
for (int i=1; i<=10; i++){
mp3_play (i);
delay(2000);
}

}

Perhatikan poin-point pentingnya :


Beberapa narasumber memberikan contoh yang kurang bagus untuk library DF Player yaitu tidak melalukan soft-Reset pada Module pada void setup, akibatnya saat komunikasi SoftwareSerial terganggu misal saat proses upload program ke arduino maka suara mp3 menjadi kecil dan tidak bisa dilakukan set volume sebelim melakukan hard-Reset (matikan power dan dinyalakan ualang).

C.Perintah Kontrol Module DF Player - Arduino menggunakan Library DF_Player_mp3.h

Berikut adalah beberapa void/perintah yang akan sering kita gunakan untuk kontrol module DFPlayer mp3 melalui Arduino dengan bantuan Library DFPlayer_Mini_Mp3.h


mp3_play

mp3_next


mp3_prev


mp3_set_volume


mp3_set_EQ


mp3_set_device


mp3_sleep


mp3_reset


mp3_pause


mp3_stop

mp3_play_mp3

mp3_get_state

mp3_get_volume

mp3_get_u_sum

mp3_get_tf_sum

mp3_get_flash_sum


mp3_get_tf_current


mp3_get_u_current

mp3_get_flash_current


mp3_single_loop


mp3_DAC


mp3_random_play



reff : http://www.belajarduino.com/2016/10/arduinop.html


Video yang berkaitan dengan DF Player Serial mp3 player for Arduino Audio Project


0 comments:

Post a Comment