Project 11 | ESP32 - Visualisasi Database Menggunakan MySQL dan PHP - Asyrofi

Sabtu, 27 Maret 2021

Project 11 | ESP32 - Visualisasi Database Menggunakan MySQL dan PHP

Tugas Sistem Embedded
Penulis: 
Asyrofi


Halo semua. Pada tulisan kali ini, saya akan menjelaskan percobaan tentang bagaimana membuat project dengan ESP32 yaitu Visualisasi Database Menggunakan MySQL dan PHP

Pada project ini, kita akan menyimpan hasil pembacaan nilai sensor yaitu persentase level air melalui ke database MySQL dan menampilkannya pada website menggunakan PHP dalam bentuk chart (grafik). Oke, sebelum memulai, persiapkan dahulu komponen dan perangkat yang akan digunakan.



    Daftar Komponen

    Berikut adalah daftar komponen dan perangkat yang akan digunakan:

    1. Mikrokontroller ESP32 (1 buah)

    2. Kabel Micro-USB (1 buah)

    3Kabel jumper female - female (3 buah)

    4. Sensor water level (1 buah)


    Alur Kerja Project

   Saat ESP dinyalakan, maka ESP32 akan mencoba terhubung dengan wifi yang telah diisi SSID & PASSWORD sebelumnya di dalam kode. Ketika berhasil terhubung dengan wifi, hasil pembacaan oleh water level sensor akan disimpan ke dalam database MySQL dan ditampilkan pada website menggunakan PHP dalam bentuk chart (grafik).


    Memilih Hosting untuk MySQL dan PHP
    
    Hosting yang saya pilih adalah id.000webhost.com karena memberikan layanan yaitu gratis PHP dan MySQL


    Menyiapkan Database MySQL

    Buka pada bagian Database Manager


    Lalu Klik "+ Database Baru"


    Jika database telah berhasil dibuat, klik bagian kelola -> PhpMyAdmin


    Klik pada bagian database yang dibuat kemudian klik SQL


    Masukkan perintah SQL seperti di bawah dan klik "Go"



    Jika berhasil, tampilan akan seperti ini



    PHP Script HTTP POST

    Buka kembali pada bagian File Manager dan Klik Upload File
    

    Klik folder public_html dan buat file baru dengan nama post-esp-data.php
    

    Kemudian masukkan kode php berikut pada post-esp-data.php


    Saat mencoba buka 
http://example-domain.com/post-esp-data.php hasilnya akan seperti di bawah ini

PHP Script untuk menampilkan Database dalam Bentuk Chart

Pada File Manager, buat lagi file bernama esp-chart.php sehingga akan seperti pada gambar di bawah ini



Masukkan kode berikut pada esp-chart.php



    
    Kode Pada Arduino IDE

 Pertama kita import library Wifi.h, HTTPClient.h dan define pin 35 sebagai waterLevelPin. kemudian masukkan SSID dan Password Wifi yang akan kita hubungkan dengan ESP32 dan serverName untuk domain website yang ingin kita ambil hasil databasenya yaitu post-esp-data.php yang sudah dibuat sebelumnya. Kemudian set apiKeyValue sesuai kode di atas.

Pada void setup(), Tampilkan ke layar serial dengan Serial.begin(115200)Wifi.begin untuk mengkoneksikan ESP32 dengan Wifi sesuai dengan SSID dan PASSWORD yang telah diisi sebelumnya. Jika berhasil maka akan menampilkan WiFi connected dan IP addresnya. Juga terdapat fungsi yang digunakan pada program ini yaitu readSensor() yang melakukan konversi hasil pembacaan sensor dengan kalkulasi yang disesuaikan dengan kondisi lingkungan.



    Jika wifi tidak terhubung maka akan menampilkan WiFi Disconnected pada serial monitor. Namun jika terhubung, http akan melakukan begin dan addHeader. Kemudian httpResponseCode akan menerima hasil POST dari httpRequestData. Jika response code > 0, maka berhasil. Kemudian ada delay 30 detik untuk membaca nilai sensor kembali.    

    Gambar Percobaan

    Gambar 1. Hasil pembacaan database sensor pada website dalam bentuk Grafik


    Gambar 2. Hasil pembacaan database sensor pada MySQL


Video Percobaan



    Analisis
    Pada project kali ini, terdapat berbagai pengalaman baru selama pengerjaan project ini. Saya jadi mengerti bagaimana menyimpan pembacaan sensor dalam database MySQL dan menggunakan PHP untuk menampilkan hasil databasenya dalam bentuk grafik. Saya juga belajar cara mensetting MySQL pada Hosting. 

Tidak ada komentar:

Posting Komentar

Post Bottom Ad