วันพุธที่ 17 กรกฎาคม พ.ศ. 2562

โปรเจค IoT ESP32 เปิดปิดไฟ ผ่าน Internet ด้วย App Blynk

โปรเจค นี้จะเป็นการนำ ESP32 ควบคุมการแสดงผล ปิดเปิด ไฟ LED ผ่านระบบเครือข่ายอินเทอร์เน็ต ได้ทั่วโลก ด้วยแอพ Blynk ที่สามารถเชื่อมต่ออุปกรณ์ Device ของเราเข้ากับ internet ได้อย่างง่ายดาย

Blynk Application เป็นโปรแกรมบนมือถือที่ทำให้เราสร้างหน้าต่างควบคุมหรือแสดงผลเชื่อมต่อกับพวกไมโครคอนโทรเลอร์ (Ardunio, ESP8266, ESP32) ได้ง่ายๆ และยังสามารถควบคุมผ่าน ทุกที่ ที่สามารถเชื่อมต่ออินเตอร์เน็ต  ได้อีกด้วย

IoT หรือ Internet of Things หรือเทคโนโลยีของ อุปกรณ์และเครื่องใช้ต่างๆ ที่จะทำงานโดยมีการเชื่อมโยงถึงกันผ่านทางเครือข่ายอินเทอร์เน็ต กำลังเป็นเทคโนโลยีที่ถูกพูดถึงมากขึ้นเรื่อยๆ เราได้เห็นทั้งฮาร์ดแวร์รุ่นใหม่ๆ มีการประกาศมาตรฐาน มีทั้งบริการและเครื่องมือชนิดใหม่ ออกมาให้ได้ติดตามกันอย่างต่อเนื่อง  และ ก็มีบริการที่น่าสนใจเป็นอย่างมาก โดยเจ้าบริการที่ว่านี้มีชื่อว่า Blynk

การควบคุมสั่งงาน จาก Blynk ก็คือ เมื่อเรากดสั่งงานจาก App Blynk , App Blynk จะเชื่อมต่อกับ เซิฟเวอร์ ของ Blynk ที่เชื่อมโยงกับเครือข่ายอินเทอร์เน็ต  ทำให้สามารถเชื่อมต่อมาที่ WiFi Router ของเรา แล้วจึงเชื่อมต่อไปสั่งงานให้ ESP32 Server ให้ทำงานตามคำสั่งที่ได้รับมาจาก App Blynk โดยมี กุญแจสำหรับเชื่อมต่อก็คือ Auth Token ที่ได้ที่มาจากการเริ่มสร้างโปรเจคใหม่ของ App Blynk นั่นเอง







### อุปกรณ์ที่ใช้ ###


1. PICO KIT V4 ESP32 Development Board WiFi + Bluetooth

2. Micro USB Cable Wire 1m for NodeMCU

3. Breadboard 830 Point MB-102

4. Traffic Light LED Display Module

5. Jumper (M2M) 10cm Male to Male



โดยการทำโปรเจคมีขั้นตอนดังนี้


1.ใช้สมาร์ทโฟน สร้างแอพ Blynk สำหรับ เปิดปิดไฟ ESP32

ลิงค์สร้างแอพ Blynk สำหรับ เปิดปิดไฟ ESP32


https://esp32robot.blogspot.com/2019/07/app-blynk.html


2.ติดตั้ง แพลตฟอร์ม ESP32 สำหรับ Arduino IDE

ลิงค์การติดตั้ง แพลตฟอร์ม ESP32

https://robotsiam.blogspot.com/2017/09/arduino-core-for-esp32.html



3.ติดตั้ง ไลบรารี่ Blynk สำหรับ Arduino IDE


3.1.1 ดาวน์โหลด ไลบรารี่ Blynk ได้ที่



https://github.com/blynkkk/blynk-library



3.1.2  คลิกที่ Clone or download






3.1.2  คลิกที่ Download ZIP





3.2 เปิด โปรแกรม Arduino IDE 






3.3 ไปที่ Skecth -> Include Library -> Add .ZIP Library...






3.4 ไปที่ ไลบรารี blynk-library-master.zip ที่เรา ดาวน์โหลด มา -> Open





3.5 ตรวจสอบที่ Skecth -> Include Library  จะพบ ไลบรารี Blynk เพิ่มเข้ามาใน Arduino IDE ของเรา









4.เชื่อมต่ออุปกรณ์



4.1 เชื่อมต่อ  ESP32  กับ Traffic Light LED Display Module





ภาพรวมการต่อวงจร 






5. อัพโหลดโปรแกรม


5.1 เชื่อมต่อสาย USB ระหว่าง คอมพิวเตอร์ กับ ESP32




5.2 
ตรวจสอบการติดตั้งไดร์เวอร์ ของ ชิปแปลง USB to UART เบอร์ CP2102 โดย คลิกขวา Computet -> Properties -> Device Manager

ที่ Ports (COM & LPT) จะพบ ไดร์เวอร์ ของชิป CP2102

ในตัวอย่างเป็น Silicon Labs CP210x USB to UART Bridge (COM18)






5.3 เปิดโปรแกรม Arduino (IDE) และ ก็อปปี้ โค้ดด้านล่างนี้ ไปวางไว้ในส่วนเขียนโปรแกรม





#define BLYNK_PRINT Serial

#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>

char auth[] = "YourAuthToken";
char ssid[] = "YourNetworkName";
char pass[] = "YourPassword";

void setup()
{

  Serial.begin(115200);

  Blynk.begin(auth, ssid, pass);
}

void loop()
{
  Blynk.run();
}



5.4 ก่อนการอัพโหลดต้องแก้ไขโค้ด ตรงตัวอักษรสีแดงให้ถูกต้องตาม Auth Token จากอีเมล และ  ตามเครือข่าย WiFi ที่เลือกใช้งาน โดย




char auth[] = "YourAuthToken";  // Auth Token จากอีเมล ในขั้นตอนการทำงาน ที่ 1
char ssid[] = "YourNetworkName";  // เครือข่าย Wi-Fi ที่ต้องการเชื่อมต่อ
char pass[] = "YourPassword";  // รหัสผ่านเครือข่าย


ตรวจความถูกต้องแบบละเอียด เช่น...ตัวพิมพ์เล็ก , ตัวพิมพ์ใหญ่ อักขระต่างๆ ให้ถูกต้อง




5.5 ไปที่ Tools -> Board เลือก ESP32 Dev Module




5.6 ไปที่ Tools -> Port แล้วเลือกพอร์ตที่ปรากฏ (กรณีใช้เครื่องคอมพิวเตอร์ที่มี COM Port ให้เลือกตัวอื่นที่ไม่ใช่ COM1)

ในตัวอย่างเลือกเป็น "COM18"





5.7 กดปุ่ม   เพื่ออัพโหลด


ตั้งชื่อไฟล์ -> Save โปรแกรม จะทำการ อัพโหลด





5.8 หากสามารถอัพโหลดโปรแกรมลงบอร์ดได้สำเร็จ จะแสดงคำว่า Done uploading. ที่แถบด้านล่าง



6. ทดสอบการทํางาน



6.1 ใช้ สมาร์ทโฟน ที่เชื่อมต่อเครือข่าย อินเทอร์เน็ต เปิดแอพ Blynk สำหรับ เปิดปิดไฟ ESP32 ที่สร้างไว้ในขั้นตอนที่ 1



6.2  เลือกเครื่องหมาย สามเหลี่ยม ขวามือ






6.3 ทดลองควบคุม








7. วีดีโอ ผลลัพล์การทำงาน







...

ไม่มีความคิดเห็น:

แสดงความคิดเห็น