Loading...
OUR BLOG

Hantar data pada Thinger menggunakan Ultrasonic Sensor dan NodeMCU ESP8266

Hi BDx-ian!

 

Tutorial ini menunjukkan cara nak hantar data pada Thinger menggunakan Ultrasonic Sensor dan NodeMCU ESP8266.

 

Apa itu Thinger?

Thinger.io merupakan platform opensource untuk IoT yang menyediakan scalable cloud base untuk menyambungkan peranti. Anda boleh mengendalikannya dengan cepat dengan menggunakan admin console atau menggabungkannya ke dalam projek anda menggunakan API mereka. Ia menyokong semua jenis board seperti Raspberry Pi, Intel Edison, dan ESP8266. Thinger ini juga boleh digabungkan dengan IFTT, dan ia boleh memaparkan realtime data pada dashboard.

 

 

Thinger

 

Cipta Akaun

Pergi ke Thinger -> Isikan maklumat akaun anda -> Tekan Sign Up

 

 

Login Akaun

Pergi ke Thinger

 

 

 

Cipta device baru

 

Pergi ke Devices->Tekan Create New Device

 

 

Isikan maklumat -> Tekan Add Device 

Copy Device id dan Device Credentials dan Paste pada code.

 

 

Arduino IDE

Pergi ke Sketch -> Include Library -> Manage Libraries -> Buat carian “thinger io by Thinger.io” -> Tekan Install

 

 

Komponen

 

Komponen yang diperlukan

 

 

Litar

 

Ultrasonic sensor

 

 

Code

#define THINGER_SERIAL_DEBUG

#include <ESP8266WiFi.h>

#include "ThingerESP8266.h"

 

#define USERNAME "Username akaun Thinger"

#define DEVICE_ID "DEVICE ID "

#define DEVICE_CREDENTIAL "DEVICE CREDENTIAL"

 

#define SSID "NAMA WIFI ANDA"

#define SSID_PASSWORD "PASSWORD WIFI ANDA"

 

ThingerESP8266 thing(USERNAME, DEVICE_ID, DEVICE_CREDENTIAL);

 

 

#define triggerPin 13

#define echoPin    15

 

void setup() {

  Serial.begin(115200);  //Initialize serial

  pinMode(triggerPin, OUTPUT);

  pinMode(echoPin, INPUT);

 

  thing.add_wifi(SSID, SSID_PASSWORD);

 

  // resource input example (i.e. turning on/off a light, a relay, configuring a parameter, etc)

  thing["SONIC"] >> [] (pson& out){

      double duration, distance;

      digitalWrite(triggerPin, LOW);  // Get Start

      delayMicroseconds(2); // stable the line 

      digitalWrite(triggerPin, HIGH); // sending 10 us pulse

      delayMicroseconds(10); // delay 

      digitalWrite(triggerPin, LOW); // after sending pulse wating to receive signals 

      duration = pulseIn(echoPin, HIGH); // calculating time 

      distance = (duration/2) / 29.1; // single path 

      Serial.print(distance);

      Serial.println(" cm");

      out = distance;

  };

 

  

}

 

void loop() {

  thing.handle();

}

 

Peringatan

Sila tukarkan maklumat berikut.

#define USERNAME "Username akaun Thinger"

#define DEVICE_ID "DEVICE ID "

#define DEVICE_CREDENTIAL "DEVICE CREDENTIAL"

 

#define SSID "NAMA WIFI ANDA"

#define SSID_PASSWORD "PASSWORD WIFI ANDA

 

Output 

Setelah anda upload code, output pada status Thinger akan memaparkan device anda connected.

 

 

Dashboard

Thinger menyediakan widget untuk monitor data pada dashboard. Jenis-jenis widget yang ada contohnya switch, teks, donut chart, gauge dan sebagainya. 

 

Untuk menggunakan widget, anda perlu upload code dan cipta dashboard terlebih dahulu sebelum ke langkah seterusnya. 

 

Pergi ke Dashboard -> Add Dashboard 

 

 

Isikan maklumat seperti di bawah -> Tekan Add Dashboard

 

 

 

Widget 

Dalam tutorial ini kita akan gunakan text untuk memaparkan data jarak pada dashboard.

 

 

Pergi ke dashboard yang telah dicipta tadi -> Tekan button edit

 

Tekan Add Widget

 

Pilih text/value untuk jenis widget -> Isikan maklumat Widget

 

 

Tekan Text/Value -> Isikan maklumat

 

 

Tekan Display Options -> Isikan maklumat -> Tekan Save

 

 

Output 

 

Setelah anda connect board dan Thinger, output pada dashboard memaparkan data jarak. 

 

 

Jika anda suka dengan perkongsian tutorial dalam blog kami ni, jangan lupa untuk follow Facebook dan Instagram kami, kat situ ada bermacam info dan update terkini yang akan kami kongsikan kepada anda. Itu sahaja untuk tutorial kami. Stay update dan selamat mencuba!

 

 

Unsure Whether You Need Our Help?

Have you got an awesome new idea or project that you want to talk about? We're here to talk you through it. Flick us an email or give us a call to get started.