บทความประกอบการเรียนรู้ => IOT : Internet of Thing (ESP8266, NodeMCU, WeMos D1 mini) => ข้อความที่เริ่มโดย: admin ที่ มกราคม 19, 2018, 10:18:52 PM

หัวข้อ: งานครั้งที่ 27 [iot#2 Blynk] การควบคุมหลอดไฟ 4 ช่อง
เริ่มหัวข้อโดย: admin ที่ มกราคม 19, 2018, 10:18:52 PM
งานครั้งที่ 27 [iot Blynk #2] การควบคุมหลอดไฟ 4 ช่อง
การควบคุมการทำงานของหลอดไฟจำนวน 4 ช่องในกรณีที่ผู้ใช้งานเลือกใช้บอร์ดที่มีชิพหลักเป็น ESP8266 ไม่ว่าจะเป็น ESP8266, NodeMCU, WeMos จะมีพอร์ตที่ใช้งานเป็นเอาท์พุตได้โดยตรงจำนวน 9 ขาด้วยกันคือ D0-D8 และโค้ดที่เขียนลงในตัวบอร์ดไม่ต้องเขียนอะไรเพิ่มเติม การสั่งงานปิดเปิดจะถูกสั่งมาจากแอฟ Blynk ขั้นตอนการดำเนินการทดลองเป็นดังนี้
[หมายเหตุ] จะใช้งานแอฟและไลบรารี่ Blynk ทั้งในสมาร์ตโฟนและโปรแกรม ArduinoIDE ได้ จะต้องดำเนินติดตั้งก่อน สามารถศึกษาวิธีการจากงานครั้งที่ 26 ได้ที่ งานครั้งที่ 26 [iot Blynk #1] เริ่มการใช้งาน Blynk (http://www.praphas.com/forum/index.php?topic=337.0)

1. วงจรที่ใช้ทดลอง
กรณีที่ใช้บอร์ด NodeMCU
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/1.png)
กรณีใช้บอร์ด WeMOS D1 mini
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/2.png)

ส่วนจัดการแอฟ Blynk
2. เปิดแอฟ Blynk ในมือถือแตะสร้างโปรเจคใหม่
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/3.png)

3. ดำเนินการกำหนดคุณสมบัติโปรเจค
    (1) ตั้งชื่อโปรเจค
    (2) เลือกบอร์ดที่ใช้ควบคุม
    (3) คลิกสร้าง
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/4.png)

4. รหัส Token ของโปรเจคจะถูกส่งเข้าไปยังอีเมล์ (เป็นอีเมล์ที่ลงเบียนไว้ตอนล็อกอินแอฟ)
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/5.png)

5. แตะที่เครื่องหมายบวกเพื่อเลือกวิตเจ็ทใช้งาน
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/6.png)

6. แตะเลือกปุ่มกด (ซึ่งมีค่าพลังงาน 200)
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/7.png)

7. จะได้ปุ่มหน้าพื้นที่ใช้งาน ทำการแตะที่ตัวปุ่มเพื่อตั้งค่า
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/8.png)

8. ทำการตั้งค่า
    (1) ตั้งชื่อปุ่ม (สามารถตั้งชื่อเป็นภาษาไทยได้ เช่น "ไฟหน้าบ้าน")
    (2) เลือกขาพอร์ตที่ใช้ควบคุม
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/9.png)

9. ทำการเลือกขา ซึ่งเป็นขาบอร์ดที่เชื่อม LED ไว้
    (1) เลือกชนิดขาเป็น Digital (เป็นขาจริงของบอร์ด)
    (2) เลือกขาพอร์ตที่ใช้ควบคุม
    (3) เมื่อเลือกตรงกับค่าที่ใช้งานจริงที่บอร์ดให้แตะที่ OK
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/10.png)

10. ตั้งค่าปุ่ม
    (1) เลือกเป็น SWITCH ซึ่งการใช้งานจริงจะเป็นการแตะติดแตะดับ แต่ถ้าเลือกเป็น PUSH จะเป็นการแตะติดปล่อยดับ
    (2) ตั้งชื่อข้อความเมื่อปุ่มสถานะ On และ Off
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/11.png)

11. ทำให้ครบทั้ง 4 ตัว (ตั้งค่าสวิตช์แต่ละตัวให้ตรงกับที่บอร์ดเชื่อมต่อ LED ไว้)
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/12.png)

ส่วนจัดการโค้ดโปรแกรมควบคุมบอร์ด
12. เปิดอีเมล์ทำการคัดลอกรหัส Token โปรเจค
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/13.png)

13. เขียนโค้ดควบคุม
    (1) วางรหัส Token ที่คัดลอกมาจากอีเมล์
    (2) ใส่ชื่อไวไฟที่บอร์ดควบคุมใช้เชื่อมต่อ
    (3) ใส่พาสเวิร์ดไวไฟ (ในกรณีที่ไวไฟมีการใช้รหัสผ่าน แต่ถ้าไม่มีให้ใช้ "")
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/14.png)

โค้ดโปรแกรม
โค๊ด: [Select]
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
char auth[] = "9ea8593c0a2c4c2e87f2f13681ec67c0";
char ssid[] = "wifi name";
char pass[] = "wifi password";
void setup()
{
  Serial.begin(9600);
  Blynk.begin(auth, ssid, pass);
}
void loop()
{
  Blynk.run();
}

14. ทำการอัพโหลดลงบอร์ด เปิดหน้าต่าง Serial monitor จะได้ดังรูป แต่ถ้าหากยังนิ่งให้ทดลองกดสวิตช์รีเซตที่บอร์ด
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/15.png)

ทดสอบการทำงาน
15. กลับไปที่แอฟ Blynk ทำการแตะตัวสามเหลี่ยมเพื่อรันแอฟ
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/16.png)

16. ทดสอบการแตะสวิตช์แต่ละตัว
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/17.png)

17. ตรวจสอบผลการทำงานที่บอร์ดจริง.
(http://www.praphas.com/PhotoForum/iot/Lab-27-Blynk4LED/18.jpg)