Progress Final Project #2

Ye, akhirnya lanjut lagi mau bikin tugas besar buat matkul IMKA, nah kali ini kita full team nih (setelah kemaren si Ijen gak hadir soalnya ngurusin KP). Sebelum ngerjain tugas ini kami makan dulu sih biar ada tenaga buat ngerjainnya juga kan hehe

Ini saya gak ada soalnya yang ngefoto

Seperti di post sebelumnya saya sudah bahas, hari ini bakal mencoba pengerjaan ESP8266 dengan mencontoh link berikut

Jadi hal yang pertama saya lakukan sebagai penanggung jawab bagian koding hahaha saya yang diminta untuk bikin file .php nya gitu yang bakal jadi penghandle data sekaligus penampil datanya. Sehingga untuk percobaan kali ini perlu menyalakan Apache dan MySQL melalui XAMPP Panel. Untuk percobaan awal, kami berencana untuk mengirimkan pembacaan suhu dengan kode tampilan web sebagai berikut

<?php
 $var = $_GET[‘temperature’];
$fileContent = “Temperature : “ . $var;
$fileStatus = file_put_contents(‘myFile.txt’,$fileContent,FILE_APPEND);
 if($fileStatus != false) {
 echo “Sucess”;
 } else {
 echo “Fail”;
 }
?>

Nantinya webpage akan menampilkan tampilan sebagai berikut

Berhasil (kiri) dan Gagal (kanan)

Jadi nanti seharusnya AT Command yang kami pakai seperti ini, dimana temp itu merupakan nilai bacaan dari LM35 dan IPhost seharusnya IP dari web yang dituju. (atau kalau perlu akan memakai metode POST yang penulisannya sedikit berbeda)

GET /imka.php?temperature=temp HTTP/1.0 
Host: IPhost

Pada percobaan awal ini, kami belum menggunakan LM35 untuk membaca temperature, karena fokus kami adalah bagaimana memastikan bahwa ESP8266 dapat digunakan untuk mengirim data. Jadi nilai temperature yang kami kirim dinyatakan melalui link yang akan di GET misal seperti ini GET /imka.php?temperature=20. Nantinya kalau sudah berhasil, kami akan mencoba untuk melakukan pemasangan parameter di link tersebut berdasarkan nilai yang dibaca LM35.

Berikut adalah rangkaian untuk percobaan kali ini

Ini rangkai sendiri looo!

Sekitar jam satu akhirnya kami mengalami progres walaupun tidak begitu banyak. Jadi kami berusaha menghubungkan ESP8266 dengan Laptop saya dimana server web dinyalakan yakni dengan IP 192.168.88.13. Ini dapat dilacak dengan menjalankan instruksi ipconfig di Command Prompt.

semacem gini, tapi ini dibikin di kampus (lupa screenshot pas nyoba)

Pada saat kami menjalankan instruksi AT+CIPSTART=”TCP”,”192.168.88.13",80 terbentuklah hubungan (terbukti dengan tulisan CONNECT). Akan tetapi ketika kami berusaha mengirimkan pesan melalui instruksi AT+CIPSEND tidak berhasil-berhasil. Kami bingung dengan jumlah byte yang dinyatakan sebagai parameter instruksi tersebut. Ketika kami diminta memberikan input data yang akan dikirim, kami memasukkan instruksi semacam GET imka/server.php?temperature=20 HTTP/1.1 tetapi tidak ada feedback dan data seakan tidak terkirim

Setelah sekian lama mencoba akhirnya kelompok kami berhasil melakukan pengiriman!! YEAAY! Ternyata kami harus menghitung data yang dikirim dan menuliskan instruksi AT+CIPSEND dengan parameter banyak byte yang tepat (dihitung termasuk \r\n yang berarti perlu ditambah 4 byte dari data asli yang ingin dikirim). Nah dibawah ini buktinya, jadi di file php kami menginstruksikan penulisan temperatur yang dikirim kepada sebuah file yang bernama myfile.txt

Sejujurnya sempet kesusahan karena sewaktu kita mencoba melakukan pengiriman data, data yang terkirim itu tidak ditampilkan di serial monitor, jadi tidak bisa dicek sebenernya apa yang terkirim. Selain itu, ada waktu koneksi juga kan dengan web server, jadi gak bisa lama-lama buat mikir mau kirim apa nanti keburu disconnected. Untuk mengatasi itu jadinya kami sudah menyiapkan seluruh instruksi yang akan dibutuhkan di Sublime Text, jadi ketika ingin dipakai tinggal copy paste ke serial monitor!

Okey la, sekian dulu ya progres pengerjaannya. Semua pada istirahat kecapekan ngurusin ESP ini. Mau nonton dulu aaa