Sketch Modul WiFi ESP8266-01 sebagai Web Client Mode Kirim

Pada bagian ini diberikan dan dibahas contoh program untuk membuat Modul WiFi ESP8266-01 yang akan bekerja sebagai web client. Hasilnya, user dapat mengirimkan data ke server. Untuk membuatnya, ketikkan program di bawah ini pada Arduino IDE kemudian upload ke modul WiFi ESP8266-01.

Contoh Program : Prog1.3 WiFi ESP8266-01 Web Client Mode Kirim





Penjelasan Program : 

1. Pada bagian awal program disertakan library DHT.h dan ESP8266WiFi.h

2. Bagian selanjutnya adalah mendeklarasikan pin yang akan digunakan untuk sensor DHT11. Pada contoh kasus ini digunakan pin 2 dengan perintah "#define DHTPIN 2".

3. Baris selanjutnya adalah mendefinisikan jenis sensor DHT yang digunakan. Pada kasus ini digunakan modul sensor DHT11, sehingga definisi untuk DHTTYPE diisi dengan DHT11.

4. Setelah selesai mendefinisikan pin GPIOo dan jenis DHT yang akan digunakan, maka langkah selanjutnya adalah membuat onjek dht yang merujuk ke library DHT.h

5. Baris selanjutnya adalah menentukan tipe data untuk variabel penampung suhu yang diberi nama t dan kelembaban yang diberi nama h. Kedua variabel tersebut memiliki tipe data float.

6. Baris selanjutnya adalah mulai mendefinisikan SSID dan password untuk koneksi WiFi yang akan digunakan.

7. Setelah baris program pengaturan SSID dan password di atas, selanjutnya membuat variabel host yang dituju dengan cara menuliskan alamat web atau alaamt IP dari server.

8. Rutin setup :

    a. Selanjutnya,masuk ke bagian pengaturan baudrate yang digunakan untuk debug program ke serial monitor Arduino IDE. Baudrate yang digunakan sebesar 115200bps.

    b. Setelah pengaturan baudrate selesai, program akan memulai objek dht dengan perintah dht.begin dan selanjutnya diberi delay selama 10ms.

    c. Baris program selanjutnya dimaksudkan agar modul mengirimkan string "Connecting to" yang disertai dengan alamat server pada serial monitor Arduino IDE. Hal tersebut untuk memastikan alamat IP yang kita masukkan sudah sesuai.

    d. Pada bagian selanjutnya, program akan mulai mencoba melakukan koneksi wireless melalui koneksi WiFi yang ditunjuk dengan perintah "WiFi.begin (ssid, password)".

    e. Jika koneksi ke jaringan WiFi belum berhasil dilakukan, maka pada serial monitor Arduino IDE akan dicetak titik-titik sampai dengan koneksi berhasil dengan jeda waktu selama 500ms.

    f. Jika koneksi ke jaringan WiFi berhasil dilakukan maka pada serial monitor Arduino IDE akan dicetak "WiFi Conneted" kemudian pada baris selanjutnya di serial monitor akan dicetak IP address lokal untuk modul WiFi ESP8266-01 dengan kata lain modul WiFi ESP8266-01 saat itu sudah mempunyai IP sendiri.

9. Rutin loop :

    a. Di awal rutin loop dibuat objek WiFiClient dengan perintah WiFiClient client dan inisialisasi konstanta dengan httpPort. Port default untuk HTTP adalah port 80 sehingga perintahnya menjadi :

    b. Bagian selanjutnya adalah client dalam hal ini modul WiFi ESP8266-01 akan mencoba untuk terhubung ke server sesuai dengan host dan port yang sudah dideklarasikan. Jika koneksi tidak berhasil dilakukan, maka program akan mencetak string "Connection Failed" ke serial monitor IDE dan mencoba kembali koneksi. Jika koneksi berhasil dilakukan maka program melanjutkan ke proses selanjutnya.

    c. Setelah proses koneksi client selesai maka diberi delay selama 1 detik yang dimaksudkan agar sensor bersiap-siap dan selanjutnya akan dimulai pembacaan data dari sensor DHT11. Data kelembaban akan disimpan ke variabel h dan disisi lain data suhu akan disimpan ke variabel t.

    d. Bagian selanjutnya dilakukan pemeriksaan apakah data dari sensor dapat dibaca dengan instruksi if (isnan(t) | | isnan (h)). Instruksi tersebut berarti jika variabel t tidak ada isinya atau variabel h tidak ada isinya. Jika data dari sensor tidak dapat dibaca maka Arduino akan mengirimkan string "Pembacaan gagal" ke serial monitor. Tetapi jika data kelembaban dan suhu berhasil dibaca maka data t akan disimpan ke dalam variabel suhu dan data h akan disimpan ke dalam variabel kelembaban.

    e. Setelah data suhu dan kelembaban diperoleh, maka langkah selanjutnya adalah mengirim data tersebut ke server dengan perintah :

 
Penggalan program tersebut akan mengirim data menggunakan metode GET ke halaman add.php yang terdapat di dalam folder tes di server diikuti dengan nama variabel yang dikirim yang akan diambil oleh PHP yaitu suhu dan variabel suhu yang didapat pada poin d, selanjutnya diikuti dengan nama variabel kedua yang dikirim yang akan dikirim yang akan diambil oleh PHP yaitu kelembaban dan variabel kelembaban yang didapat pada poin d.
     
    f. Langkah terakhir dari program adalah membaca balasan dari server kemudian menutup koneksi.
    
    g. Hasil dari proses koneksi, pengiriman data dan pemutuan koneksi ditunjukkan oleh gambar 1.1 di bawah ini.
Gambar 1.1 Hasil proses koneksi pada serial monitor

 


Posting Komentar

0 Komentar