Sistem Informasi Kelembapan Tanah Dan Suhu Udara Berbasis Mikrokontroller
Sistem Informasi Kelembapan Tanah Dan Suhu Udara Berbasis Mikrokontroller
Sistem Informasi Kelembapan Tanah Dan Suhu Udara Berbasis Mikrokontroller
Nurimalita (201210370311067)
Wildan Ammar Tsaqib (201210370311211)
Antoni Margono S. (201210370311212)
Devri Kurniawan Leksono (201210370311219)
Bayu Satria Kusuma (201210370311224)
PENDAHULUAN
3. ESP8266
ESP8266 adalah sebuah mikrokontroler yang
menawarkan sistem jaringan Wi-Fi yang berdiri sendiri
menggunakan protocol TCP/IP dimana dapat
memberikan koneksi ke node sensor. Ketika ESP8266
terkoneksikan ke board mempunyai kemampuan untuk
menyimpan dan memproses, oleh sebab itu dapat
dengan mudah terhubungkan ke sensor.
ESP8266 (IEEE 802.11.n) standard-based 2.4 GHz
ISM band mempunyai jangkauan yang bagus,
menyediakan data rates yang tinggi dan dapat
digunakan dengan laptop atau smartphones.
Gambar 3 ESP8266
4. Arduino Uno R3
Arduino Uno R3 adalah board sistem minimum
berbasis mikrokontroller ATmega328P jenis AVR.
Arduino Uno R3 memiliki 14 digital input/output (6
diantaranya dapat digunakan untuk PWM output), 6
analog input, 16 MHz osilator kristal, USB connection,
power jack, ICSP header dan tombol reset. Skema dari
Arduino Uno R3 tampak dari atas dapat dilihat pada
Gambar 2.2 dengan karekteristik sebagai berikut:
Operating voltage 5 VDC.
Rekomendasi input voltage 7-12 VDC
Batas input voltage 6-20 VDC.
Memiliki 14 buah input/output digital.
Memiliki 6 buah input analog.
DC Current setiap I/O Pin sebesar 40mA.
DC Current untuk 3.3V Pin sebesar 50mA.
Flash memory 32 KB.
SRAM sebesar 2 KB.
EEPROM sebesar 1 KB.
11 Clock Speed 16 MHz.
#include <SoftwareSerial.h>
#include <stdlib.h>
#include "DHT.h"
#define DHTPIN 2
// what pin
we're connected to
#define DHTTYPE DHT11
// bisa untuk
DHT21 san DHT22
const int analogPin = A0;
DHT dht(DHTPIN, DHTTYPE);
String apiKey = "0XI17EBQTCS44BAB";
// Ubah dengan API Key ente bro!
SoftwareSerial ser(10, 11); // RX,
TX
void setup() {
Serial.begin(9600);
ser.begin(9600);
ser.println("AT+RST");
dht.begin();
}
void loop() {
float analogValue =
analogRead(analogPin);
float h = dht.readHumidity();
float t = dht.readTemperature();
Serial.println(analogValue);
Serial.println(t);
String cmd =
"AT+CIPSTART=\"TCP\",\"";
cmd += "184.106.153.149"; //
api.thingspeak.com
cmd += "\",80";
Serial.println(cmd);
ser.println(cmd);
IV. PENGUJIAN
if(ser.find("Error")){
Serial.println("AT+CIPSTART
error");
return;
}
String getStr = "GET
/update?api_key=";
getStr += apiKey;
getStr +="&field1=";
getStr += String(t);
getStr +="&field2=";
getStr += String(analogValue);
getStr += "\r\n\r\n";
Serial.println(getStr);
cmd = "AT+CIPSEND=";
cmd += String(getStr.length());
ser.println(cmd);
if(ser.find(">")){
ser.print(getStr);
}
else{
ser.println("AT+CIPCLOSE");
Serial.println("AT+CIPCLOSE");
}
delay(16000);
}