Oleh Khairul Fikri dalam Tutorial Arduino
Tahap Kesukaran : Baru Mula Belajar

>> Pengenalan <<

Sebelum ini, saya memperkenalkan pengawalan LED menggunakan aplikasi Blynk. Selain daripada pengawalan pin digital, Blynk juga mampu menerima bacaan daripada Analog sensor untuk dipaparkan di dashboard Blynk tersebut. Ini bersesuaian untuk projek yang memerlukan pemerhatian terhadap sensor sensor yang dipasang di projek tersebut.

Terdapat dua cara utama untuk memaparkan data sensor pada dashboard aplikasi Blynk :

  • PULL Data : Aplikasi Blynk akan meminta data hanya apabila aplikasi dibuka di telefon pintar.
  • PUSH Data : NodeMcu akan sentiasa menghantar data ke Cloud Blynk. Jadinya apabila anda membuka aplikasi blynk di telefon pintar, data sensor sudah pun tersedia.

Dalam tutorial kali ini, kita akan mengkhususkan kepada kaedah PULL data yang mana aplikasi blynk akan menarik data daripada NodeMcu.

>> KOMPONEN YANG ANDA PERLUKAN <<

Tutorial ini akan mengajar anda bagaimana untuk membaca bacaan sensor analog melalui Blynk dengan papan NodeMcu. Antara komponen yang anda perlukan ialah :

>> litar sambungan <<

Fail Fritzing : Blynk LM35 Nodemcu.fzz

>> Penyediaan Aplikasi Blynk <<

Untuk paparan sensor analog pada aplikasi Blynk, Blynk menyediakan beberapa antara muka untuk diletakkan sebagai bacaan sensor seperti graf, meter gauge dan digital number. Untuk tutorial kali ini, saya akan memaparkan bacaan suhu pada meter gauge. Kita hanya perlukan beberapa modifikasi untuk Dashboard Blynk daripada tutorial sebelum ini. Jika anda baru pertama kali mendengar Blynk, sila ke laman tutorial ini terlebih dahulu untuk belajar asas penggunaan aplikasi Blynk. Untuk Dashboard Blynk kali ini, tekan butang ‘tambah’ dan pilih Gauge.

Kemudian paparan untuk setting Gauge tersebut akan keluar. Untuk bahagian Input, anda hendaklah meletakkan Virtual pin 5 (V5) sebagai pin yang akan membaca bacaan daripada sensor analog. Untuk nilai bacaan, anda boleh letakkan apa apa nilai yang dikehendaki. Untuk saya, saya letak 0 sehingga 150.

Untuk bahagian label, saya meletakkan C sebagai celcius memandangkan kita hendak membaca bacaan suhu daripada sensor suhu jenis LM35.

Seterusnya untuk reading rate, saya meletakkan 5 sec. Ini bermakna Blynk akan membaca sensor daripada NodeMCU setiap 5 saat.

Kini dashboard Blynk anda sudah siap untuk projek ini.

>> kod penuh arduino <<

#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>

int sensorData;
int temperature;
.
char auth[] = "auth key";

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "Nama Wifi";
char pass[] = "Password wifi";

// Use Virtual pin 5 for uptime display
#define PIN_UPTIME V5

BLYNK_READ(V5) //Blynk app has something on V5
{
  sensordata = analogRead(A0); //reading the sensor on A0
  temperature = sensordata * 330 / 1024;
  Blynk.virtualWrite(V5, temperature); //sending to Blynk
}

void setup()
{
  // Debug console
  Serial.begin(9600);

  Blynk.begin(auth, ssid, pass);

}

void loop()
{
  Blynk.run();
}

Sebelum upload kod ke NodeMcu, beberapa modifikasi harus dilakukan kepada kod program ini. Sila gantikan auth key dengan auth key yang anda terima daripada Blynk. Anda juga harus meletakkan nama wifi dan password wifi anda bersesuaian dengan sambungan internet anda. Upload kod program ini kedalam NodeMCU dan anda boleh memulakan paparan bacaan LM35 pada aplikasi Blynk anda.

>> Ringkasan tentang Kod Program <<

Untuk pembacaan sensor Analog pada aplikasi Blynk, terdapat dua cara iaitu Push dan juga Pull. Untuk cara yang disediakan diatas ialah cara Pull dimana bacaan hanya dibaca apabila aplikasi Blynk dibuka. Ia juga merupakan cara yang paling mudah untuk memaparkan data didalam aplikasi Blynk. Apabila aplikasi ditutup, data tidak lagi dihantar ke aplikasi tersebut

  • Kelebihan kaedah PULL data : Tidak memerlukan kod program yang kompleks
  • Kekurangan kaedah PULL data : Data tidak disimpan didalam server, jadi anda tidak dapat memaparkan paparan History Graph
BLYNK_READ(V5) //Blynk app has something on V5
{
  sensordata = analogRead(A0); //reading the sensor on A0
  temperature = sensordata * 330 / 1024;
  Blynk.virtualWrite(V5, temperature); //sending to Blynk
}

Untuk bahagian kod ini, dimana bacaan sensor diterima kedalam NodeMCU melalui pin A0. Sensor yang dibaca dalam analog mempunyai julat 0 sehingga 1024. Untuk menukarkan data tersebut dalam bentuk Celcius iaitu unit suhu, beberapa perkiraan dilakukan untuk menukarkan data tersebut dalam unit suhu. Kemudian data tersebut dihantar ke “Virtual Pin” yang tersedia didalam aplikasi Blynk

>> TAHNIAH, ANDA HEBAT <<

Tahniah, anda berjaya membaca data sensor Analog menggunakan Aplikasi Blynk dengan menggunakan cara PULL. Cuba untuk menggantikan sensor tersebut dengan sensor analog yang lain dan perhatikan outputnya.

Baca tutorial lain yang disediakan oleh penulis Khairul Fikri di NodeMcu Bagaimana Mengawal LED Melalui Blynk.

Kunjungi sekarang kedai Arduino Pulau Pinang di

Nadi Eleczone Solutions
Lot 1667, Tingkat 1, Jalan Teluk Air Tawar, Taman Air Tawar Indah, 13050 Butterworth, Penang
019 – 249 3264

TINGGALKAN JAWAPAN BALAS ANDA

Sila masukkan ulasan anda!
Sila masukkan nama anda di sini