Blog Archive

Arduino Indonesia. Gambar tema oleh Storman. Diberdayakan oleh Blogger.

Supported by Electronics 3 in 1

1. Jasa pencetakan PCB single layer dengan harga paling murah.

(Metode Pembuatan dengan Transfer Toner)
>PCB design sendiri (siap cetak) : Rp.150,-/Cm2
>PCB design dari kami : Rp.250,-/Cm2

(Metode Sablon Full Masking dan Silk Screen minimal pemesanan 100 Pcs)
>PCB design sendiri (siap cetak) : Rp.200,-/Cm2
>PCB design dari kami : Rp.250,-/Cm2

2. Jasa perancangan, perakitan, dan pembuatan trainer pembelajaran elektronika untuk SMK dan Mahasiswa.

3. Jasa perancangan, perakitan, dan pembuatan berbagai macam kontroller, sensor, aktuator, dan tranduser.
>Design Rangkaian / Sistem Elektronika
>Design Rangkaian / Sistem Instrumentasi
>Design Rangkaian / Sistem Kendali
>Kerjasama Riset (data atau peralatan)
>Kerjasama Produksi Produk-Produk KIT Elektronika
>Produksi Instrumentasi Elektronika

4. Jasa Pembuatan Proyek, Tugas Akhir, Tugas Laboratorium, PKM, Karya Ilmiah, SKRIPSI, dll

Like My Facebook

Popular Posts

Senin, 18 September 2023

Membaca Nilai Analog dengan ESP32 menggunakan aplikasi Arduino IDE

Pada kali ini kita akan membaca input analog dengan ESP32 menggunakan Arduino IDE. Pembacaan analog berguna untuk membaca nilai dari resistor variabel seperti potensiometer, atau sensor analog.

 

Analog Inputs (ADC)

 

Membaca nilai analog dengan ESP32 berarti Anda dapat mengukur berbagai tingkat tegangan antara 0 V dan 3,3 V. Tegangan yang diukur kemudian ditetapkan ke nilai antara 0 dan 4095, di mana 0 V sama dengan 0, dan 3,3 V sama dengan 4095. Setiap tegangan antara 0 V dan 3,3 V akan diberi nilai yang sesuai di antaranya. 

 

Analog Inputs (ADC)

Fungsi analogRead() 

 

Membaca input analog dengan ESP32 menggunakan Arduino IDE semudah menggunakan fungsi analogRead(). Ia menerima sebagai argumen, GPIO yang ingin terbaca :

 

analogRead(GPIO); 


ESP32 mendukung pengukuran di 18 saluran berbeda. Hanya 15 yang tersedia di papan DEVKIT V1 DOIT (versi dengan 30 GPIO). 

 

ESP32 Wroom DevKit

Diatas adalah pinout dari ESP32 Wroom devkit. Pin adc dapat di wiring pada pinout berwarna orange. 

 

Fungsi Berguna Lainnya

 

1. analogReadResolution(resolusi): mengatur bit sampel dan resolusi. Ini bisa berupa nilai antara 9 (0 – 511) dan 12 bit (0 – 4095). Defaultnya adalah resolusi 12-bit.

2. analogSetWidth(width): mengatur bit sampel dan resolusi. Ini bisa berupa nilai antara 9 (0 – 511) dan 12 bit (0 – 4095). Defaultnya adalah resolusi 12-bit.

3. analogSetCycles(cycles): mengatur jumlah siklus per sampel. Standarnya adalah 8. Rentang: 1 hingga 255.

4. analogSetSamples(samples): mengatur jumlah sampel dalam rentang tersebut. Defaultnya adalah 1 sampel. Ini memiliki efek meningkatkan sensitivitas.

5. analogSetClockDiv(attenuation): mengatur pembagi untuk jam ADC. Standarnya adalah 1. Rentang: 1 hingga 255.

6. analogSetAttenuation(attenuation): mengatur redaman input untuk semua pin ADC. Standarnya adalah ADC_11db. Nilai yang diterima :

    • ADC_0db: tidak menetapkan redaman. ADC dapat mengukur hingga sekitar 800 mV (input 1V = pembacaan ADC 1088).

    • ADC_2_5db: Tegangan input ADC akan dilemahkan, memperluas rentang pengukuran hingga kira-kira. 1100 mV. (Input 1V = pembacaan ADC 3722).

    • ADC_6db: Tegangan input ADC akan dilemahkan, memperluas rentang pengukuran hingga kira-kira. 1350 mV. (Input 1V = pembacaan ADC 3033).

    • ADC_11db: Tegangan input ADC akan dilemahkan, memperluas rentang pengukuran hingga kira-kira. 2600 mV. (Input 1V = pembacaan ADC 1575).

7. analogSetPinAttenuation(pin, attenuation): mengatur redaman input untuk pin yang ditentukan. Standarnya adalah ADC_11db. Nilai atenuasi sama dengan fungsi sebelumnya.

8. adcAttachPin(pin): Pasang pin ke ADC (juga menghapus mode analog lain yang mungkin aktif). Mengembalikan hasil TRUE atau FALSE.

9. adcStart(pin), adcBusy(pin) dan resultadcEnd(pin): memulai konversi ADC pada bus pin yang terpasang. Periksa apakah konversi pada bus ADC pin sedang berjalan (mengembalikan TRUE atau FALSE). Dapatkan hasil konversi: mengembalikan bilangan bulat 16-bit.

 

Membaca Nilai Analog dari Potensiometer dengan ESP32

 

Untuk melihat bagaimana semuanya saling terhubung, kita akan membuat contoh sederhana untuk membaca nilai analog dari potensiometer. Berikut ini komponen yang diperlukan :

• Papan ESP32 DOIT DEVKIT V1 (baca papan pengembangan ESP32 Terbaik)

• Potensiometer

• Beardboard

• Kabel jumper 

 

Schematic 

 

Schematic

Code 

 

Kita akan memprogram ESP32 menggunakan Arduino IDE, jadi pastikan Anda telah menginstal add-on ESP32 sebelum melanjutkan :

 

Code Program

Kode ini hanya membaca nilai dari potensiometer dan mencetak nilai tersebut di Serial Monitor. Upload kode yang diberikan ke ESP32 Anda. Pastikan untuk memilih board dan port COM yang tepat di menu Tools. Nilai maksimum yang akan Anda dapatkan adalah 4095 dan nilai minimumnya adalah 0.

 


Pada artikel ini Anda telah mempelajari cara membaca input analog menggunakan ESP32 dengan Arduino IDE. 


Kesimpulan

 

• Papan DOIT ESP32 DEVKIT V1 (versi dengan 30 pin) memiliki 15 pin ADC yang dapat Anda gunakan untuk membaca input analog. 

• Pin ini memiliki resolusi 12 bit, yang berarti Anda bisa mendapatkan nilai dari 0 hingga 4095.

• Untuk membaca suatu nilai di Arduino IDE, Anda cukup menggunakan fungsi analogRead().

• Pin ESP32 ADC tidak memiliki perilaku linier. Anda mungkin tidak akan dapat membedakan antara 0 dan 0.1V, atau antara 3.2 dan 3.3V. Anda harus mengingat hal itu saat menggunakan pin ADC.

 

0 on: "Membaca Nilai Analog dengan ESP32 menggunakan aplikasi Arduino IDE "