ESP8266, NodeMcu RFID Kirim Data ke Database, XAMPP

Hello sahabat Anak Kendali.   pada kesempatan kali ini saya akan menuliskan artikel tentang Tutorial ESP8266, NodeMcu RFID Kirim Data ke Database, XAMPP.
dimana saya akan mengirimkan ID Card RFID ke Database Local. yang kemudian bisa dikembangkan untuk membuat project E-money ESP8266, seperti alat pembayaran Game Timezone dan game lainya yang biasa ditemukan di Mall.

sebelumnya saya sudah banyak menuliskan tutorial yang berkaitan, dan untuk kamu yang belum bisa membuat database dengan XAMPP, silahkan baca baca terlebih dahulu Artikel tentang Database MySQL 
dan untuk yang menggunakan modul Arduino Uno ESP8266 ESP-01 kirim data ke DATABASE. silahkan Baca Artikelnya Arduino Uno ESP8266 ESP-01 kirim data ke Database dan sebenarnya masih banyak lagi artikel terkait, untuk itu saya sarakan supaya membuka bagian daftar isi, dan cari judul artikel yang agan minati.

Baca Juga :  Cara Kontrol Servo Arduino

Menulis Database ESP8266 | Menulis ID CARD RFID Database Local MySQL XAMPP

baiklah pertama kita harus terlebih dahulu untuk menyiapkan alat dan rangkaianya, alat yang dibutuhkan adalah

Modul RFID
ESP8266 Nodemcu / Wemos D1 mini / Modul ESP8266 lainya
kemudian silahkan terlebih dahulu pahami tentang Komunikasi SPI, dan cari tau tentang pin SPI pada modul ESP8266
namun saya akan langsung tunjukan rangkaian untuk Nodemcu dan RFID nya
D1 NodemCu——- RST RFID
D2 NodemCu——- SDA/SS RFID
D5 NodemCu——- SCK RFID
D6 NodemCu——- MISO RFID
D7 NodemCu——- MOSI RFID
3V NodemCu——- 3.3V RFID
GND NodemCu—- GND RFID

ESP8266, NodeMcu RFID Kirim Data ke Database, XAMPP

selanjutnya sekarang buat terlebih dahulu Databasenya

kemudian buat program PHP nya untuk menghubungkan ke database
berikan nama koneksi.php pada program berikut dan simpan pada directory (“C/xampp/htdocs/esp8266”) esp8266 adalah folder buatan sendiri

<?php
$servername = "localhost";
$database = "monitoring";
$username = "root";
$password = "";
$konek = mysqli_connect ($servername, $username, $password, $database);
if ($konek!=false){
echo "berhasil";
} else {
echo "gagal";}
?>

berikan nama index.php pada program berikut dan simpan di folder yang sama

<?php
include ("koneksi.php");
$var1 = $_GET['data1'];
$var2 = $_GET['data2'];
mysqli_query($konek, "INSERT INTO rfid(idcard,val) VALUES('$var1','$var2')");
?> 

selanjutnya membuat program ESP8266 untuk Nodemcu dengan Arduino IDE. pastikan semua library sudah terinstall, dan jika belum bisa download di github.

/*
* visit www.anakkendali.com
* 2018
*
*/

#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>
WiFiClient client;
#include <SPI.h>
#include <MFRC522.h>
#define SS_PIN 4
#define RST_PIN 5
MFRC522 rfid(SS_PIN, RST_PIN);
MFRC522::MIFARE_Key key;
String request_string;
const char* host = "192.168.1.9";
HTTPClient http;
void setup() {
// put your setup code here, to run once:
WiFi.disconnect();
WiFi.begin("KOST_RAMA","bayardulu500");
while ((!(WiFi.status() == WL_CONNECTED))){
delay(300);
}
Serial.begin(9600);
SPI.begin();
rfid.PCD_Init();
Serial.println("I am waiting for card...");
}
String strID,val;
void loop() {
// put your main code here, to run repeatedly:
if (!rfid.PICC_IsNewCardPresent() || !rfid.PICC_ReadCardSerial())
return;
// Serial.print(F("PICC type: "));
MFRC522::PICC_Type piccType = rfid.PICC_GetType(rfid.uid.sak);
// Serial.println(rfid.PICC_GetTypeName(piccType));
// Check is the PICC of Classic MIFARE type
if (piccType != MFRC522::PICC_TYPE_MIFARE_MINI &&
piccType != MFRC522::PICC_TYPE_MIFARE_1K &&
piccType != MFRC522::PICC_TYPE_MIFARE_4K) {
Serial.println(F("Your tag is not of type MIFARE Classic."));
return;
}
//id kartu dan yang akan dikirim ke database
strID = "";
for (byte i = 0; i < 4; i++) {
strID +=
(rfid.uid.uidByte[i] < 0x10 ? "0" : "") +
String(rfid.uid.uidByte[i], HEX) +
(i != 3 ? ":" : "");
}

strID.toUpperCase();
Serial.print("Tap card key: ");
Serial.println(strID);
val = "500"; // nilai kartu yang akan dikirim

koneksi_database();
delay(1000);
}
void koneksi_database()
{
if (!client.connect(host,80)) {
Serial.println("Gagal Konek");
return;
}
request_string = "/esp8266/index.php?data1=";
request_string += strID;
request_string += "&data2=";
request_string += val;
Serial.print("requesting URL: ");
Serial.println(request_string);
client.print(String("GET ") + request_string + "HTTP/1.1rn" + "Host: " + host + "rn" + "Connection: closernrn");

unsigned long timeout = millis();
while (client.available() == 0) {
if (millis() - timeout > 5000) {
Serial.println(">>> Client Timeout !");
client.stop();
return;
}
}
}

  mungkin cukup ini dulu, nanti akan saya lanjutkan tutorialnya, sehingga bisa membaca Data pada database juga, kemudian bisa di buat project E-Money. untuk videonya silahkan tonton di bawah ini.

Baca Juga :  Tutorial Fuzzy Logic Beserta Contoh Code dengan Bahasa C Bagian 2

Selanjutnya Baca :  ESP8266, NodeMcu RFID Membaca Database, XAMPP