Mekatronik Mühendisliği Forum


ESP8266 Arduino LED Control
Değerlendir:
  • 0 Oy - 0 Yüzde
  • 1
  • 2
  • 3
  • 4
  • 5


Konu: 38
Mesaj: 66
Cinsiyet: Erkek
Kıdem: Apr 2017

Projemizde  ESP8266 modülünü kullanarak  internet ortamında komutlar ile led vb.. birçok örnek yapacagız.



 ESP8266  wi-fi modülünü kullanarak Arduino’muzu internete bağlayıp. Bu modül ile sensörlerden aldığımız verileri internet ortamına aktarabileceğiz.



[Resim: o6A1rR.jpg]





ihtiyacımız olan kütüphane linki aşşagıda



Linki görebilmek için giriş yapmanız ya da üye olmanız gerekir.


 Kütüphane eklemeyi bilmiyorsanız diger yazımda bunu kısaca anlattım oraya bakarak bu basamagı kolayca atlayabilirsiniz Smile 
Standart şartlarda esp8266 modülünü kullanırken  arduinodaki chip cıkartıp devam ediyoruz.



Bağlantımız şu şekilde olucak:



VCC                3.3 V
GND              GND
CH_PD          3.3 V
TX                  TX
RX                  RX
GPIO2           3.3 V
GPIO0          GND




Bağlantıyı yaptıktan sonra

Derleme sırasında unutmayın versiyon secmeyi!!



[Resim: a1o6LB.jpg]



Kod:
#include <ESP8266WiFi.h>
#include <ArduinoJson.h>
const char* ssid     = "wifimiz";
const char* password = "wifisifremiz";
const char* host     = "192.168.1.10"; // sizin domain
String path          = "/wifiarduino/light.json";
const int pin        = 2;
void setup() {
   pinMode(pin, OUTPUT);
   pinMode(pin, HIGH);
   Serial.begin(115200);
 delay(10);
 Serial.print("Connecting to ");
 Serial.println(ssid);
 WiFi.begin(ssid, password);
 int wifi_ctr = 0;
 while (WiFi.status() != WL_CONNECTED) {
   delay(500);
   Serial.print(".");
 }
 Serial.println("WiFi connected");
   Serial.println("IP address: " + WiFi.localIP());
}
void loop() {
   Serial.print("connecting to ");
 Serial.println(host);
 WiFiClient client;
 const int httpPort = 80;
 if (!client.connect(host, httpPort)) {
   Serial.println("connection failed");
   return;
 }
 client.print(String("GET ") + path + " HTTP/1.1\r\n" +               "Host: " + host + "\r\n" +                "Connection: keep-alive\r\n\r\n");
 delay(500); // wait for server to respond
 // read response  
String section="header";
 while(client.available()){
   String line = client.readStringUntil('\r');
   // Serial.print(line);    // we’ll parse the HTML body here
   if (section=="header") { // headers..
     Serial.print(".");
     if (line=="\n") { // skips the empty space at the beginning
        section="json";
     }
   }
   else if (section=="json") {  // print the good stuff
     section="ignore";
     String result = line.substring(1);      // Parse JSON
     int size = result.length() + 1;
     char json[size];
     result.toCharArray(json, size);
     StaticJsonBuffer<200> jsonBuffer;
     JsonObject& json_parsed = jsonBuffer.parseObject(json);
     if (!json_parsed.success())
     {
       Serial.println("parseObject() failed");
       return;
     }
     // Make the decision to turn off or on the LED
     if (strcmp(json_parsed["light"], "on") == 0) {
       digitalWrite(pin, HIGH);
        Serial.println("LED ON");
     }
     else {
       digitalWrite(pin, LOW);
       Serial.println("led off");
     }
   }
 }
 Serial.print("closing connection. ");
}


kodumuzu attıktan sonra işlemci tek başına çalışabilir konuma gelmiş demektir. Smile

Artık , modülümüzü ayırabilir ve tek başına çalıştırabiliriz Smile











[Resim: qJ4rAW.jpg]



Aslında bu projeyi sizlerle birlikte nodemcu ile yapmayı düşünüyorum Smile Hem kartı ögrenmiş  hemde farklı alanlara yönelerek  ıot   sistemlerde cığır açabilirsiniz Smile  

Farklı projelerde görüşmek üzere Smile

Cevapla
Teşekkür Edenler
(Bu mesajı son düzenleyen: 23-09-2017, 22:50 PM Alper_Arslantas.) .


Benzeyen Konular
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  NODEMCU-ARDUINO IDE 4 -RELAY CONTROL Alper_Arslantas 0 154 06-03-2018, 00:25 AM
Son Mesaj: Alper_Arslantas
  NodeMCU --BUTON İLE LED CONTROL Alper_Arslantas 0 154 06-03-2018, 00:04 AM
Son Mesaj: Alper_Arslantas

Foruma atla:


Konuyu görüntüleyenler: 1 Misafir

Türkçe Çeviri : MyBB Türkiye
MyBB, © 2002-2018 MyBB Group.