Memonitor Level Ketinggian Air Secara Wireless Menggunakan Modul Wi-Fi ESP8266


Ini adalah proyek mini berbasis ESP8266. Proyek ini saya beri nama WIFI-2WLS yakni sistem sensor level ketinggian air dengan koneksi Wi-Fi. Dengan modul ini kita dapat memonitor kondisi sensor level ketinggian air secara wireless menggunakan komputer atau gadget melalui koneksi Wi-Fi. Komunikasi yang digunakan adalah TCP.

WIFI-2WLS memiliki 2 channel sensor (LOW dan HIGH) untuk mendeteksi 2 level ketinggian air. Sebagai sensor dapat digunakan batangan logam as anti-karat dengan diameter 3mm atau 5mm. Untuk rangkaian sensor saya menggunakan rangkaian yang sama dengan modul WLC-02 yang sudah terbukti handal digunakan dilapangan dan memiliki jangkauan jarak sensor hingga ratusan meter.

 

Hardware dan Software

Untuk hardware, saya menggunakan beberapa komponen antara lain:

  • Board ESP8266 Wemos mini
  • Rangkaian water level sensor
  • Rangkaian LED
  • Charger HP 5V DC

Untuk software, saya menggunakan:

  • Punyforth, implementasi bahasa pemrograman Forth untuk ESP8266
  • Red, bahasa pemrograman mirip REBOL (red-lang.org)

 

Berikut adalah penampakan sistem WIFI-2WLS yang saya rakit pada PCB berlubang. Adapun modul ESP8266 yang saya gunakan adalah Wemos mini.

wifi-2wls_640

 

Pemrograman ESP8266

Untuk pemrograman, saya menggunakan Punyforth yakni implementasi bahasa pemrograman Forth untuk platform ESP8266. Berikut adalah penggalan programnya.

: led ( n -- ) 2 swap gpio-write ;
: blink-led ( -- ) 0 led 200 ms 1 led 200 ms ;
: ping ( -- )
  blink-led blink-led blink-led
  println: "WIFI-2WLS - teknikelektrolinks.com"
  print: "IP: " wifi-ip type println: " PORT: 2017" ;
: baud ( n -- ) 0 uart-set-bps ;
: read-wls ( -- )
  print: ":WIFI2WLS-00-"
  4 gpio-read
  0= if print: "0" else print: "1" then
  5 gpio-read
  0= if println: "0;" else println: "1;" then ;
: help ( -- )
  println: "WIFI-2WLS - teknikelektrolinks.com"
  print: "IP: " wifi-ip type println: " PORT: 2017"
  println: "Commands:"
  println: " - ping Pinging WIFI-2WLS."
  println: " - read-wls Read water level sensor."
  println: " - autosend-on Set AUTOSEND on."
  println: " - autosend-off Set AUTOSEND off."
  println: " - help Show this text." ;
variable: autosend
variable: cntr
FALSE autosend !
0 cntr !
0 task: task-timer
0 task: task-wls
: autosend-on ( -- ) TRUE autosend ! ;
: autosend-off ( -- ) FALSE autosend ! ;
: wls-timer
  activate
  begin 1 cntr +! 5 ms pause again
  deactivate ;
: water-level-sensor
  activate
  begin
    cntr @ 2 <= if 2 1 gpio-write then
    cntr @ 23 > if 2 0 gpio-write then
    cntr @ 25 > if 
      0 cntr ! autosend @ if read-wls then then
    pause
  again
  deactivate ;
0 task: task-wls-mon
: wls-mon
  activate
  begin
    4 gpio-read
    0= if 16 0 gpio-write else 16 1 gpio-write then
    5 gpio-read
    0= if 14 0 gpio-write else 14 1 gpio-write then
    pause
 again
 deactivate ;

 

Prinsip Kerja

Ketika diaktifkan, WIFI-2WLS akan secara otomatis mencoba melakukan koneksi ke Wi-Fi Router dengan SSID dan Password yang telah diprogram. Jika gagal, maka modul akan terus mencoba melakukan koneksi. ESP8266 dalam hal ini saya program sebagai STA (STATION) sehingga harus terhubung ke Wi-Fi Router agar bisa diakses.

Untuk mengganti SSID dan Password yang ada dengan SSID dan Password Wi-Fi Router yang tersedia, digunakan program WIFI Connection Setup yang saya buat menggunakan bahasa pemrograman Red. Caranya mudah, tinggal menghubungkan modul Wemos ke komputer dengan kabel USB, kemudian jalankan program Wi-Fi Connection Setup. Masukkan SSID dan Password serta port serial yang digunakan, dan tekan tombol Write SSID & Password. Nomor port yang tersedia bisa dilihat di Device Manager.

Pada proses koneksi selanjutnya, WIFI-2WLS akan secara otomatis berusaha untuk terhubung dengan Wi-Fi Router dengan SSID dan Password yang baru.

wifi2wls_640

WIFI-2WLS secara kontinyu membaca kondisi sensor level ketinggian air dan menampilkan status sensor pada 2 buah LED yang mewakili sensor LOW dan sensor HIGH.

Jika sudah terhubung ke jaringan, WIFI-2WLS bisa diakses melalui IP Address yang dimilikinya dengan port 2017. WIFI-2LWS mengenal beberapa perintah antara lain:

  • ping, berfungsi mengembalikan nama modul, IP dan port
  • read-wls, berfungsi membaca status sensor dan mengembalikan string :WIFI2WLS-00-xx; dengan xx adalah bit 0 atau 1 yang menyatakan kondisi sensor.
  • autosend-on, berfungsi untuk mengaktifkan fitur autosend, jika aktif maka modul akan secara kontinyu mengirimkan status sensor ke client yang terhubung
  • autosend-off, berfungsi untuk mematikan fitur autosend
  • help, menampilkan help

Gambar diatas menunjukkan WIFI-2WLS lengkap dengan casing plastik. Pada gambar juga ditunjukkan tampilan program Wi-Fi Connection Setup dan koneksi yang dilakukan menggunakan program Hyperterminal.

 

Melayani Pembuatan Hardware & Software

Kami membuat modul-modul elektronik dan interface berbasis mikrokontroler dan melayani pembuatan hardware/software sesuai dengan kebutuhan Anda.

Jika Anda membutuhkan modul/sistem dengan koneksi Wi-Fi, kami siap membantu Anda. Silakan menghubungi kami melalui SMS/WA ke 081231784018.

 

Kunjungi Situs Kami

 

Selamat berkarya.

 

Iklan

1 thought on “Memonitor Level Ketinggian Air Secara Wireless Menggunakan Modul Wi-Fi ESP8266

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini:
search previous next tag category expand menu location phone mail time cart zoom edit close