İlginç bir rehberle karşınızdayım.
ESP 8266 ile donatılmış NodeMCU V3 kartını kullanarak, herhangi bir Wi-Fi ağının dBm cinsinden çekim kuvvetini ölçeceğiz. Ölçtüğümüz değeri ise, I2C modülü yardımıyla LCD ekrana yazdıracağız.
İhtiyacımız olanlar:
Devrenin kurulu oldukça basit. I2C'nin 4 portundan NodeMCU kartına:
Sonrasında, Arduino IDE'den kodu kartınıza yükleyin. Kodu yüklemeden önce, ESP8266 kartını konfigure etmiş olmanız gerekmekte. Etmediyseniz, bu adresi ziyaret edebilirsiniz: Getting Started With ESP8266(LiLon NodeMCU V3) Complete Guide for IoT Startup With Example(as Server) (Flashlama kısmını yapmanıza gerek yoktur.)
Kod:
Sonuç:
Peki, ne oluyor burada?
LCD'yi Arduino'ya bağlamak işkence gibi bir işlemdir normalde. Dirençler, potansiyometre, birçok kablo... Ancak I2C modülü sayesinde güç, GND ve iki veri kablosu sayesinde, 4 kabloyla direnç ve potansiyometre kullanmaya gerek kalmadan LCD kullanabilirsiniz. Kendi üzerinde direnci ve potansiyometresi vardır. Özellikle NodeMCU gibi küçük ve port sayısı az kartlar için hayat kurtarıcıdır.
ESP8266'nın Arduino için olan resmi kütüphanesinde, bağlanılan ağ için sinyal kuvveti ölçümü yapılamıuyor. Ancak herhangi bir ağa bağlanmadan, kartın görebildiği ağların sinyal kuvvetini ölçebiliyor. Bu nedenle sadece ağ ismimizi girdik, şifresini de girmedik. Zira ölçülebilen ağlar isimlerine göre listelenecek ve program, girdiğiniz isme göre, listenen ağlar arasından kendi ağınızı bulup size gösterecek.
Daha da ilginci için:
ESP 8266 ile donatılmış NodeMCU V3 kartını kullanarak, herhangi bir Wi-Fi ağının dBm cinsinden çekim kuvvetini ölçeceğiz. Ölçtüğümüz değeri ise, I2C modülü yardımıyla LCD ekrana yazdıracağız.
İhtiyacımız olanlar:
- NodeMCU geliştirme kartı
- 2x16 LCD ekran
- I2C kartı
- 4 adet dişi-erkek jumper kablo
- Yeterli büyüklükte breadboard
Devrenin kurulu oldukça basit. I2C'nin 4 portundan NodeMCU kartına:
- GND -> GND
- VCC -> VV/VIN (V3 kartta VV portuna)
- SDA -> D2
- SCL -> D1
Sonrasında, Arduino IDE'den kodu kartınıza yükleyin. Kodu yüklemeden önce, ESP8266 kartını konfigure etmiş olmanız gerekmekte. Etmediyseniz, bu adresi ziyaret edebilirsiniz: Getting Started With ESP8266(LiLon NodeMCU V3) Complete Guide for IoT Startup With Example(as Server) (Flashlama kısmını yapmanıza gerek yoktur.)
Kod:
C++:
#include <LiquidCrystal_I2C.h>
#include <ESP8266WiFi.h>
const char* SSID = "Wi-Fi isminiz";
int lcdColumns = 16;
int lcdRows = 2;
LiquidCrystal_I2C lcd(0x27, lcdColumns, lcdRows);
int32_t getRSSI(const char* target_ssid) {
byte available_networks = WiFi.scanNetworks();
for (int network = 0; network < available_networks; network++) {
return WiFi.RSSI(network);
}
return 0;
}
void setup(){
Serial.begin(115200);
lcd.begin();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("Signal:");
lcd.setCursor(12, 0);
lcd.print("dBm");
lcd.setCursor(0, 1);
lcd.print("Time:");
lcd.setCursor(10, 1);
lcd.print("ms");
}
void loop(){
unsigned long before = millis();
int32_t rssi = getRSSI(SSID);
unsigned long after = millis();
lcd.setCursor(8, 0);
lcd.print(rssi);
lcd.setCursor(6, 1);
lcd.print(after - before);
delay(1000);
}
Sonuç:
Peki, ne oluyor burada?
LCD'yi Arduino'ya bağlamak işkence gibi bir işlemdir normalde. Dirençler, potansiyometre, birçok kablo... Ancak I2C modülü sayesinde güç, GND ve iki veri kablosu sayesinde, 4 kabloyla direnç ve potansiyometre kullanmaya gerek kalmadan LCD kullanabilirsiniz. Kendi üzerinde direnci ve potansiyometresi vardır. Özellikle NodeMCU gibi küçük ve port sayısı az kartlar için hayat kurtarıcıdır.
ESP8266'nın Arduino için olan resmi kütüphanesinde, bağlanılan ağ için sinyal kuvveti ölçümü yapılamıuyor. Ancak herhangi bir ağa bağlanmadan, kartın görebildiği ağların sinyal kuvvetini ölçebiliyor. Bu nedenle sadece ağ ismimizi girdik, şifresini de girmedik. Zira ölçülebilen ağlar isimlerine göre listelenecek ve program, girdiğiniz isme göre, listenen ağlar arasından kendi ağınızı bulup size gösterecek.
Daha da ilginci için:
ESP 8266 ve React Native Deneyimi
ESP 8266'nın sıcaklık ve nem değerlerini MySQL veritabanına attığı, React Native'in de API'den verileri çektiği basit bir akıllı ev uygulaması denemesi. Normalde DHT 11 ile çalışacaktı fakat ucuz sensör yolda bıraktı. LM 35 ile devam...
www.technopat.net
Son düzenleme: