1.1. Tujuan
Praktikan akan belajar cara mengatur ESP8266 NodeMCU sebagai Access Point (AP)
menggunakan Arduino IDE. Ini memungkinkan untuk terhubung langsung ke ESP8266
melalui Wi-Fi tanpa router nirkabel
Dalam beberapa kasus, ini mungkin bukan konfigurasi terbaik (jika Anda tidak
memiliki router di dekatnya). Tetapi jika Anda mengatur ESP8266 sebagai titik akses
(hotspot), Anda dapat terhubung ke ESP8266 menggunakan perangkat apa pun dengan
kemampuan Wi-Fi tanpa perlu terhubung ke router Anda.
Dengan kata sederhana, saat Anda mengatur ESP8266 sebagai titik akses Anda
membuat jaringan Wi-Fi sendiri dan perangkat Wi-Fi terdekat (stasiun) dapat
menghubungkannya (seperti ponsel cerdas atau komputer Anda).
Dalam tutorial ini, akan menunjukkan kepada Anda cara mengatur ESP8266 sebagai
titik akses dalam proyek web server. Dengan cara ini, Anda tidak perlu terhubung ke router
untuk mengontrol ESP8266 Anda.
Karena ESP8266 tidak terhubung lebih jauh ke jaringan kabel (seperti router), ini
disebut soft-AP (Soft Access Point).
Artinya, jika mencoba memuat pustaka atau menggunakan firmware dari internet, ini
tidak akan berfungsi. Ini juga tidak berfungsi jika mencoba membuat permintaan HTTP ke
layanan di internet seperti menerbitkan pembacaan sensor ke cloud.
NodeMCUESP8266
DHT22 or DHT11 Temperature and Humidity Sensor
4.7k Ohm Resistor
Breadboard
Jumper wires
3. Setelah menginstal pustaka DHT dari Adafruit, ketik " Adafruit Unified Sensor " di kotak
pencarian. Gulir ke bawah untuk menemukan perpustakaan dan menginstalnya.
4. Setelah menginstal pustaka, mulai ulang Arduino IDE Anda.
// Generally, you should use "unsigned long" for variables that hold time
// The value will quickly become too large for an int to store
unsigned long previousMillis = 0; // will store last time DHT was updated
setInterval(function ( ) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("humidity").innerHTML = this.responseText;
}
};
xhttp.open("GET", "/humidity", true);
xhttp.send();
}, 10000 ) ;
</script>
</html>)rawliteral";
void setup(){
// Serial port for debugging purposes
Serial.begin(115200);
dht.begin();
IPAddress IP = WiFi.softAPIP();
Serial.print("AP IP address: ");
Serial.println(IP);
// Start server
server.begin();
}
void loop(){
unsigned long currentMillis = millis();
if (currentMillis - previousMillis >= interval) {
// save the last time you updated the DHT values
previousMillis = currentMillis;
// Read temperature as Celsius (the default)
float newT = dht.readTemperature();
// Read temperature as Fahrenheit (isFahrenheit = true)
//float newT = dht.readTemperature(true);
// if temperature read failed, don't change t value
if (isnan(newT)) {
Serial.println("Failed to read from DHT sensor!");
}
else {
t = newT;
Serial.println(t);
}
// Read Humidity
float newH = dht.readHumidity();
// if humidity read failed, don't change h value
if (isnan(newH)) {
Serial.println("Failed to read from DHT sensor!");
}
else {
h = newH;
Serial.println(h);
}
}
}
Buka browser web Anda dan ketik alamat IP http://192.168.4.1 . Halaman server web harus memuat:
1.6. Kesimpulan