ในตอนที่ 2 เราจะมาดูภาคการเขียนโปรแกรมในส่วนของ board โดยใช้ซอฟต์แวร์ arduino-1.8.10 เขียน sketch แล้ว upload เข้า board เพื่อใช้งานร่วมกับ Firebase หากบังเอิญ search มาเจอบทความนี้ก่อน ย้อนกับไปอ่าน ตอนที่ 1 ได้ครับ

เริ่มต้นเราต้องดาวน์โหลดซอฟต์แวร์ที่จะต้องใช้ ดังรูป

ภาพที่ 1 แสดงรายการไฟล์ที่ใช้ใน project Firstapp-IoT ของผม

รันโปรแกรมที่ดาวน์โหลดมา arduino-1.8.10-windows.exe (ส่วนอีก 2 ไฟล์ที่เป็น .zip แตกไฟล์ออกมา CH341SER_WINDOWS.zip ใช้เพื่อให้ USB port ของ Notebook จำลองเป็น Serial port COM3 ได้ และ firebase-arduino-master.zip จะใช้ในโปรแกรม Arduino ในขั้นตอน Add Libraries)

ภาพที่ 2 แสดงโครงสร้างไดเรกทอรีของโปรแกรม Arduino จะได้ libraries มา และเราสร้างไดเรกทอรีเพิ่มเองเพื่อเก็บโปรแกรม

ในไดเรกทอรี libraries จะเห็นว่าเราใช้งาน libraries ใดได้บ้างในการเขียนโปรแกรม

ภาพที่ 3 แสดงรายการไดเรกทอรีภายในของ libraries

และเมื่อเราจะเขียนโปรแกรม จะต้องวางไว้ในไดเรกทอรี ดูตัวอย่าง

ภาพที่ 4 แสดงชื่อโปรแกรม nodemcu-8021x-v3.ino (แจกโค๊ด)

เอาโค๊ดของ project ชื่อ Firstapp-IoT ได้ที่ link นี้ https://github.com/woonpsu/firstapp-iot

เมื่อรันโปรแกรม Arduino ในครั้งแรก ให้ตั้งค่าเพิ่มที่ File > Preferences

ภาพที่ 5 เพิ่ม Additional Boards Manager URLs

ตัวอย่าง Arduino board ที่ใช้ ESP8266 ต้องใส่ URL: https://arduino.esp8266.com/stable/package_esp8266com_index.json

ถัดไป ตั้งค่าเลือก Board ให้ตรงกับที่เราซื้อมา (ให้ข้อมูลเพิ่มครับ ที่ซื้อมาคือรุ่น บอร์ดทดลอง NodeMCU V2 NodeMCU V2 ESP8266 Development Kit ESP-12F/N)

ภาพที่ 6 แสดงการเลือกใช้ Board: “NodeMCU 1.0 (ESP-12E Module)”

เมื่อเราเขียน Sketch book เสร็จ ไม่ error แล้ว เราจะอัปโหลดใส่ board ในขั้นตอนนี้ เราใช้สาย USB data ต่อ board เข้ากับ USB port ในรูปจะเห็น COM3 หากใช้สาย USB Charger จะไม่เห็น Serial port นะ เมื่อพร้อมก็คลิกปุ่ม upload

ภาพที่ 7 เมื่อเปิดโปรแกรม Arduino จะจำ Sketch book ล่าสุดที่เราใช้งาน คลิกรูปลูกศรชี้ขวา ด้านบน เพื่อ upload

ต่อไปเราก็เปิดหน้าต่าง Serial Monitor เพื่อดูผลลัพธ์ หรือ debug

ภาพที่ 8 เปิด Serial Monitor จากเมนู Tools

จะเห็นว่า โปรแกรมมีการใช้คำสั่ง Serial.println(“WiFi connected”); เพื่อ debug

ภาพที่ 9 แสดงข้อมูลในหน้าต่าง Serial monitor เมื่อ board เริ่มทำงาน

ผลลัพธ์เมื่อเราใช้โปรแกรม JavaScript สั่งเปิด LED1 และ LED2 และตั้งสีให้กับหลอดสี เป็น สีเขียว

ภาพที่ 10 แสดงผลลัพธ์การทำงานที่ถูกต้องตาม Project นี้

อ้างอิง:

  • อ่านเยอะ ๆ และ search จาก google หลายเพจมาก ๆ
  • ได้รับข้อมูลเรื่องการเชื่อมต่อเน็ต Arduino ไปยัง Wi-Fi 802.1x จากเพื่อนชื่อโป้งทำงานที่ CLIB PSU โดยนักศึกษาฝึกงานเขียนโค๊ดไว้บน github ที่นี่ https://github.com/ton28919/firedoor/blob/main/nodeMCU_WifiEnterprise/nodeMCU_WifiEnterprise.ino
  • โปรแกรม JavaScript ที่เขียนก็ได้จาก Firebase Document ส่วนมาก
  • ต้องขอบคุณเพจนี้ด้วย เป็นเพจแรก ๆ ที่จุดประกายให้ http://www.daydev.com/firebase/web-authentication-with-firebase.html และ https://adamblog.co/firebase-authentication-with-firebaseui/
  • Firebase UI https://github.com/firebase/firebaseui-web
  • และขอบคุณทุกเพจบนโลกใบนี้ที่เขียนแนะนำโดยไม่หวังสิ่งใดตอบแทน

Share the Post:

Related Posts

ทำความรู้จักกับ Outlook บนเว็บ

Post Views: 19 Outlook เป็นเครื่องมือจัดการอีเมลและปฏิทินที่ทรงพลัง ซึ่งช่วยให้คุณมีระเบียบและเพิ่มความสามารถในการทำงาน ด้วยอินเทอร์เฟซที่ใช้งานง่าย คุณสามารถจัดการกล่องขาเข้าของคุณ นัดหมาย และทำงานร่วมกับเพื่อนร่วมงานได้อย่างง่ายดาย ฟีเจอร์ที่แข็งแกร่งของ Outlook รวมถึงแม่แบบอีเมลที่ปรับแต่งได้ ความสามารถในการค้นหาขั้นสูง และการผสานรวมที่ไร้รอยต่อกับแอปพลิเคชัน Microsoft Office อื่นๆ ไม่ว่าคุณจะเป็นมืออาชีพที่ยุ่งอยู่หรือเป็นนักเรียนที่ต้องจัดการกับภารกิจหลายอย่าง Outlook

Read More

[บันทึกกันลืม] JupyterHub Authenticated with OIDC

Post Views: 41 ต่อจากตอนที่แล้ว [บันทึกกันลืม] JupyterHub ด้วย Docker คราวนี้ ถ้าต้องการให้ ยืนยันตัวตนด้วย OpenID เช่น PSU Passport เป็นต้น ก็ให้ทำดังนี้ ในไฟล์ jupyterhub_config.py ใส่

Read More