วันศุกร์ที่ 19 กุมภาพันธ์ พ.ศ. 2564

เขียนคำสั่ง SERVO

 #include <Servo.h> 

Servo myservo;


void setup() {

  

 myservo.attach(A0); 

}


void loop() {


 myservo.write(0); 

 delay(1000); 

 myservo.write(90); 

 delay(1000); 

  

}

เขียนคำสั่ง LED

   const int LED =  3;        


void setup() {

 

  pinMode(LED, OUTPUT);

}


void loop() {


    digitalWrite(LED, HIGH);


  

}

วันศุกร์ที่ 5 กุมภาพันธ์ พ.ศ. 2564

การส่งตำแหน่ง GPS ของอุปกรณ์เข้ามือถือ

 

อุกรณ์

1. NodeMcu  ESP8266

2.GPS Module GY-NEO6MV2 Ublox 

---------------------------------------------------------------------------

ไลบารี่อุปกรณ์ 

โค้ด 

 #include "TinyGPS++.h"

#include <ESP8266WiFi.h>

#include <BlynkSimpleEsp8266.h>

#define BLYNK_PRINT Serial


char auth[] = "M-Ee2Vubx7Pf5DbN8_5SFvSAjkSCNB_0";

char ssid[] = "MR DOM";

char pass[] = "audomidea2019";

BlynkTimer timer;

TinyGPSPlus gps;

void setup()

{

Serial.begin(9600);

Serial.println("GPS Start");

Blynk.begin(auth, ssid, pass);

timer.setInterval(1000L, sendGPS);


}

String lat_ ;

String lon_ ;

int speed_ = 0 ;

int Index1 = 0;


void sendGPS()

{

  Blynk.virtualWrite(V1, Index1, lat_, lon_, "value");

  Blynk.virtualWrite(V2, speed_);

}


void loop()

{

  Blynk.run();  

  timer.run();  

  

while(Serial.available())

{

gps.encode(Serial.read());

}

if(gps.location.isUpdated())

{

  

lat_ = String(gps.location.lat(),6);

lon_ = String(gps.location.lng(),6);

speed_ =  gps.speed.mph() ;


Serial.println("Latitude:");

Serial.println(lat_);

Serial.println("Longitude:");

Serial.println(gps.location.lng(), 6);

Serial.println("Speed MPH:");

Serial.println(gps.speed.mph());

Serial.println("");

}

}

โค้ด

 #include "TinyGPS++.h"

#include <ESP8266WiFi.h>

#include <BlynkSimpleEsp8266.h>

#define BLYNK_PRINT Serial


char auth[] = "M-Ee2Vubx7Pf5DbN8_5SFvSAjkSCNB_0";

char ssid[] = "MR DOM";

char pass[] = "audomidea2019";

BlynkTimer timer;

TinyGPSPlus gps;

void setup()

{

Serial.begin(9600);

Serial.println("GPS Start");

Blynk.begin(auth, ssid, pass);

timer.setInterval(1000L, sendGPS);


}

String lat_ ;

String lon_ ;

int speed_ = 0 ;

int Index1 = 0;


void sendGPS()

{

  Blynk.virtualWrite(V1, Index1, lat_, lon_, "value");

  Blynk.virtualWrite(V2, speed_);

}


void loop()

{

  Blynk.run();  

  timer.run();  

  

while(Serial.available())

{

gps.encode(Serial.read());

}

if(gps.location.isUpdated())

{

  

lat_ = String(gps.location.lat(),6);

lon_ = String(gps.location.lng(),6);

speed_ =  gps.speed.mph() ;


Serial.println("Latitude:");

Serial.println(lat_);

Serial.println("Longitude:");

Serial.println(gps.location.lng(), 6);

Serial.println("Speed MPH:");

Serial.println(gps.speed.mph());

Serial.println("");

}

}

การวัดอุณหภูมิและความชื้น

อุปกรณ์

1.NodeMcu V3 CH340 Lua WIFI ESP8266-12E

2.DHT11 เซ็นเซอร์วัดอุณหภูมิและความชื้น พร้อม PCB แถมสายไฟ

>>โหลดไลบารี่ของอุปกรณ์ <<

โค้ด

#include "DHT.h"

DHT dht;

void setup()

{

  Serial.begin(9600);

  Serial.println();

  Serial.println("Status\tHumidity (%)\tTemperature (C)\t(F)");


  dht.setup(2);

}


void loop()

{

  delay(dht.getMinimumSamplingPeriod());

  float humidity = dht.getHumidity(); 

  float temperature = dht.getTemperature(); 

  Serial.print(dht.getStatusString());

  Serial.print("\t");

  Serial.print(humidity, 1);

  Serial.print("\t\t");

  Serial.print(temperature, 1);

  Serial.print("\t\t");

  Serial.println(dht.toFahrenheit(temperature), 1);

  delay(1000);

}

-----------------------------------------------------------------------------

#define BLYNK_PRINT Serial

#include <ESP8266WiFi.h>

#include <BlynkSimpleEsp8266.h>

#include "DHT.h"

DHT dht;


char auth[] = "M-Ee2Vubx7Pf5DbN8_5SFvSAjkSCNB_0";

char ssid[] = "MR DOM";

char pass[] = "audomidea2019";


void setup()

{

  Serial.begin(9600);

  Blynk.begin(auth, ssid, pass);

  Serial.println();

  Serial.println("Status\tHumidity (%)\tTemperature (C)\t(F)");

  dht.setup(D4); 

}


void loop()

{

  delay(dht.getMinimumSamplingPeriod());

  float humidity = dht.getHumidity(); // ดึงค่าความชื้น

  float temperature = dht.getTemperature(); // ดึงค่าอุณหภูมิ

  Serial.print(dht.getStatusString());

  Serial.print("\t");

  Serial.print(humidity, 1);

  Serial.print("\t\t");

  Serial.print(temperature, 1);

  Serial.print("\t\t");

  Serial.println(dht.toFahrenheit(temperature), 1);

  Blynk.run();

  delay(100);

  Blynk.virtualWrite(V0, temperature);

  Blynk.virtualWrite(V1, humidity);


}

ใช้งาน NodeMCU ESP8266 วัดความเข้มแสงด้วยเซ็นเซอร์ GY-302 BH1750FVI

อุปกรณ์

1. NodeMcu V3 CH340 Lua WIFI ESP8266-12E

2.เซ็นเซอร์ วัดความเข้มแสง Ambient Light Sensor Module (BH1750FVI)

วิธีต่อ

  • Vin -> Vcc
  • GND -> GND
  • SDA -> D2
  • SCL -> D1


 โค้ด

#include <BH1750FVI.h>
2
BH1750FVI LightSensor(BH1750FVI::k_DevModeContLowRes);
3
void setup()
4
{
5
Serial.begin(9600);
6
LightSensor.begin();
7
}
8
9
void loop()
10
{
11
uint16_t lux = LightSensor.GetLightIntensity();
12
Serial.print("Light: ");
13
Serial.print(lux);
14
Serial.println(" lux");
15
delay(250);
16
}

วันอังคารที่ 2 กุมภาพันธ์ พ.ศ. 2564

การติดตั้งโปรแกรม Arudino IDE + เพิ่ม ESP8266


1.ดาวน์โหลด ArduinoIDE + เพิ่ม ESP8266 

 https://www.arduino.cc/en/Main/OldSoftwareReleases#previous 

2.เลือกระบบปฏิบัติการของเครื่องคอมพิวเตอร์ที่ท่านจะใช้ในการเขียนโปรแกรม Arduino



3.กด JUST DOWNLOAD 



4.ดับเบิ้ลคลิกที่ไฟล์ arduino.exe เพื่อเปิดโปรแกรม Arduino IDE


5.เปิดโปรแกรมขึ้นมา ในหน้าต่างโปรแกรม Arduino IDE คลิกไปที่เมนู File -> Preferences เพื่อติดตั้งบอร์ด NodeMCU/ESP8266 แบบออนไลน์

6.เพิ่ม http://arduino.esp8266.com/stable/package_esp8266com_index.json ลงในช่อง Additional Boards Manager URLs ดังภาพ


7.คลิกไปที่เมนู Tools -> Board -> Board Manager


8.พิมพ์คำว่า ESP8266 ลงในช่อง และเริ่มต้นติดตั้งดังภาพ 

>>เสียบบอร์ด NodeMCU/ESP8266 เข้ากับคอมพิวเตอร์และตรวจสอบพอตเชื่อมต่อ<<

 >>โหลดไดร์เวอร์พอต <<

>> ทดสอบด้วยการเขียนโค้ดให้หลอดไฟ LED บนบอร์ด NodeMCU ESP8266 กระพริบ <<

โค้ด

 -------------------------------------------------------------------------------------------------------------------------

-

>> การส่งตำแหน่ง GPS ของอุปกรณ์เข้ามือถือ <<

>>ใช้งาน NodeMCU ESP8266 วัดความเข้มแสง<<