แชร์ประสบการณ์ IOT การใช้ ESP8266-12

IOT เข้ามามีบทบาทในการทำงานประจำวันแล้วครับ ลองไปหาอ่านกันนะครับ ว่ามันคืออะไร แต่ที่แน่ ๆเราต้องนำมันมาใช้งานกับ Mini cnc  ที่ผ่านมาเราก็ได้ทดลอง และ ทดสอบการทำงานมาก่อนแล้ว จังหวะบังเอิญมีรุ่นพี่โปรแกรมเมอร์ ที่สนใจจะทำผลิตภัณฑ์ ที่เกี่ยวข้องกับ IOT มาขอคำปรึกษาการทำงาน และ ออกแบบระบบ (งานนี้ Free )เนื่องจากอยากรู้อยากเห็น ก็ได้แนะนำให้พี่เขาไปซื้อ Board IOT มาใช้งาน ESP8266

http://www.esp8266.com





เป้าหมายแรกสำหรับ การทดสอบโปรแกรม ก็แนะนำ Node MCU เนื่องจากใช้งานง่าย แต่ยังไม่ได้นำไปผลิตสินค้า แต่ปรากฏว่าไม่มีสินค้าจำหน่าย ก็เลยแนะนำ ให้เอา ESP8266-12 มาใช้ 

ปัญหาที่ตามมา

1.โดยหลักการแล้ว Board นี้ น่าจะนำมาใช้ได้เลย ต่อ RX TX GND ต่อ ไฟ 5 V เนื่องจากบน Board มี Regulator 3.3 V และ  เนื่องจาก CPU รุ่นใหม่ มักใช้ไฟ 3.3V สิ่งที่ต้องทำ สำหรับการต่อเชื่อม คือ การปรับค่าแรงดัน ในการส่งข้อมูลให้กับ CPU ก็ควรมี Voltage Divider Interface จาก 5v เป็น 3.3 V ตามหลักการ ได้ทดลอง โดยใช้ Serial Monitor มันไม่ทำงานครับ เราก็คาดเดาต่าง ๆ นานา เช่น Connection ต่อดีหรือไม่ บอร์ดจีน ตามสไตล์ ขั้วอาจต่อมาผิด RX ผิด หรือไม่ ทำการตรวจสอบทุกอย่าง ก็ยังไม่ทำงาน





2.หาก Connect ผ่าน Serial ไม่ได้ หรือ ทดสอบ AT command ไม่ได้ ก็โปรแกรมไม่ได้อยู่ดีนั้นแหละ พี่แกเริ่มคิดว่า สินค้าจีนไม่น่าจะ Work และเริ่มวิจารณ์ ผู้นำเข้ามาจำหน่าย ผมก็แนะนำว่า ใจเย็นครับพี่ ต้องทดสอบให้ชัวร์อย่าเพิ่งตัดสินว่ามันห่วย ทดลองแก้ปัญหากันก่อน แล้วค่อยฟันธงว่ามันห่วย

วิธีการแก้ปัญหา

1.ใจเย็น..

2.วิเคราะห์ปัญหา

2.1 ทดสอบ Serial Terminal ไม่ผ่าน ไม่กระดิกเงียบสนิท

Serial Terminal    : http://realterm.sourceforge.net



2.1 ทดสอบ wifi mode จากการทดสอบ scan wifi แล้วมองเห็นอุปกรณ์ ESP8266 ทดลอง connect ด้วย wifi ปรากฎว่าติดต่อได้ และถามหา password แสดงว่า อุปกรณ์ตัวนี้ไม่น่าจะเสีย


3.แก้ไขปัญหา

เขียน Firmware ใหม่เลยครับ

หาข้อมูลการเขียน Firmware

1.Firmware Downloader 
2.Firmware version ล่าสุด อันนี้สุดแท้ แล้วแต่ความขยันครับ

ผมใช้ตาม Link นี้ครับ
http://www.instructables.com/id/Intro-Esp-8266-firmware-update/?ALLSTEPS

3.Config Pin ตามนี้ครับ



Esp 8266-12 module
The connection will remain mostly same for esp8266-12 to run it in flash mode.
GPIO0 -> LOW
GPIO2 -> HIGH
GPIO15 -> LOW
อย่าลืม Enable CH_PD ไปที่3.3 V ด้วยนะครับ

ได้มาแล้วก็ทำการ เขียน Firmware ใหม่

ทำการทดลอง ติดต่อด้วย Serial Terminal และทดสอบ AT Command ตามคู่มือ 

สุดท้ายราบรื่นครับ

บทความนี้ ชี้ให้เห็นว่า เห็นช้างขี้ ควรดูว่าเราจะขี้ตามช้างดีไหม

หมายเหตุ ขณะทดลองเขียน โปรแกรมก็เกิดปัญหาอีก

warning: espcomm_send_command: wrong direction/command: 0x00 0x08, expected 0x01 0x08
warning: espcomm_send_command: wrong direction/command: 0x00 0x08, expected 0x01 0x08
warning: espcomm_send_command: wrong direction/command: 0x00 0x08, expected 0x01 0x08
warning: espcomm_sync failed

error: espcomm_open failed

ก็ไปหาข้อมูลตาม link นี้

สุดท้าย ปิด แล้วเปิด ก่อนการ เขียน Program

เหตุการณ์เหล่านี้ ต้องอาศัยความอดทนครับ เช่นเดียวกับการใช้ Minicnc ก็เช่นกัน มีปัญหามากมายครับ

ตอนต่อไปจะมาเล่าการเขียนโปรแกรม ด้วย Arduino และ การใช้งานครับ



เรียนท่านผู้เยี่ยมชม

 ต้องขออภัย เกี่ยวกับบทความบางหัวข้อใน blog นี้ ที่ไม่มีความต่อเนื่องในบางบทความ. เนื่องจากเป็นการแชร์ประสบการณ์ การทำงาน ในงานพัฒนาด้าน Mini CNC . ที่เราคิดว่าอาจเป็นประโยชน์ต่อผู้ศึกษา หรือทำงานเกี่ยวกับด้านนี้.จึงนำมาเล่าสู่กันฟัง .
ส่วนงานหลักที่เราต้องรับผิดชอบคือการให้ความรู้เกี่ยวกับการใช้งาน Mini CNC ซึ่งเป็นสินค้าที่เราจำหน่าย และเราต้องรับผิดชอบดูแลลูกค้า.
ดังนั้นบทความหลัก จะเป็นเรื่องที่เกี่ยวกับ Mini CNC. อีกทั้งบทความเหล่านี้เขียนด้วยคนเพียงคนเดียว . ที่มีงานรับผิดชอบด้านอื่นด้วย . จึงมีเวลาไม่มากที่จะทำได้ทุกเรื่อง.
ขออธิบายให้เข้าใจนะครับ. หากท่านใดสนใจ ติดตาม หรือ มีคำถามสามารถสอบถามในส่วนแสดงความคิดเห็นมาได้ครับ ยินดีตอบ หากเราทราบ และมีความรู้ในด้านนั้น
ยกตัวอย่าง ตาม link นี้ครับ http://panmaneecnc.blogspot.com/2015/12/esp8266-wifi-app-inventor.html

และอยากขอเชิญชวนคนไทยให้มาสร้าง วัฒนธรรมการ การรับ และ การให้ ด้วยกันครับ เราอยากเห็นสังคมไทยมีความสามัคคี ไม่แบ่งแยก และ เห็น แก่ตัว หรือ เอาแต่พวกพ้องของตนเอง เพียงเท่านี้ประเทศไทยก็แข่งขันกับคนอื่นได้แล้วครับ

ขอขอบคุณในนาม panmaneecnc.com