ดิว.นินจา

ดิว.นินจา
Showing posts with label LOLIN32. Show all posts
Showing posts with label LOLIN32. Show all posts

Wednesday, April 25, 2018

ตัวควบคุมแขนกล 2 ก้านต่อบน ESP32 และ NETPIE

ในหนังสือ "การวิเคราะห์และควบคุมหุ่นยนต์อุตสาหกรรม" รวมถึงการบรรยายในชั้นเรียน ตัวอย่างหนึ่งที่ผู้เขียนใช้เพื่อขยายความเนื้อหาให้เป็นรูปธรรมมากขึ้นคือ แขนกล 2 ก้านต่อ (2-link manipulator) เนื่องจากมีโครงสร้างพื้นฐานประกอบด้วย 2 ข้อต่อแบบหมุนและเคลื่อนที่ในระนาบ 2 มิติ ทำให้ง่ายต่อการวิเคราะห์และโมเดล เมื่อผู้เรียนเข้าใจสาระของเนื้อหาในส่วนนั้นอย่างถ่องแท้แล้วก็จะขยายผลไปยังหุ่นยนต์ที่มีความซับซ้อนมากขึ้น อย่างไรก็ตามการเรียนรู้เชิงปฏิบิตทำได้เพียงสร้างโมเดลบนซอฟต์แวร์ Scilab และจำลองการทำงานเพื่อดูผลตอบสนองเท่านั้น เคยมีนิสิตสร้างโมเดลต้นแบบโดยใช้มอเตอร์ขนาดเล็กที่ไม่มีการป้อนกลับขับข้อต่อ ซึ่งสามารถใช้ในการศึกษาศาสตรหุ่นยนต์เบื้องต้น เช่นจลนศาสตร์ข้างหน้าและผกผัน (forward and inverse kinematics) แต่ในหุ่นยนต์อุตสาหกรรมจริงจะต้องมีการป้อนกลับเพื่อชดเชยผลกระทบทางพลวัตเมื่อหุ่นยนต์มีการเคลื่อนที่ ดังนั้นในบทความนี้จะนำเสนอการสร้างโมเดลของแขนกล 2 ก้านต่ออย่างง่าย ด้วยราคาที่ไม่ทำให้กระเป๋าแฟบ ขับเคลื่อนโดยดีซีมอเตอร์และมีการป้อนกลับตำแหน่งโดยเอนโคเดอร์ ตัวควบคุมอิมพลิเมนต์บน ESP32 อาศัยไลบรารี FreeRTOS และสามารถแสดงผลและควบคุมผ่านอินเทอร์เน็ตโดยอาศัยบริการคลาวด์ของ NETPIE

Thursday, February 1, 2018

ฝึกอบรม IoT สำหรับงานควบคุมอุตสาหกรรมโดย ESP32 และ NETPIE (ประจำปี 2561 ครั้งที่ 1 วันเสาร์ที่ 24 กุมภาพันธ์ 2561)

IoT for Industrial Control with ESP32 and NETPIE Workshop

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

Sunday, January 7, 2018

บอร์ด LAG3 สำหรับการศึกษาระบบควบคุมบน ESP32


หลังจากที่ผู้เขียนได้ออกแบบบอร์ด LAG3 สำหรับ ESP8266 เพื่อใช้ประกอบการฝึกอบรมในวิชาเรียนของนิสิตและบุคคลภายนอกมาระยะหนึ่ง พบว่าใช้งานได้ดีและมีความเหมาะสมกับวัตถุประสงค์ดังกล่าวอย่างมาก เนื่องจากไม่ต้องการอุปกรณ์เสริมอื่นใดที่ทำให้เทอะทะและน้ำหนักมากขนย้ายไม่สะดวก ผู้เรียนสามารถนำไปศึกษาด้วยตนเองได้ทุกสถานที่โดยต้องการเพียงแหล่งจ่ายจาก USB port ของโน้ตบุกเท่านั้น นอกจากนั้นผู้เรียนยังสามารถพัฒนาระบบได้ครบวงจร มิใช่เพียงแต่อ่านค่าจากเซนเซอร์อย่างเดียวแต่รวมถึงการส่งค่าคำสั่งอ้างอิงเพื่อควบคุมระบบ หรือการปรับค่าพารามิเตอร์ควบคุม

Monday, January 1, 2018

การใช้อินเตอร์รัพท์บน ESP32 อ่านและนับค่าจากเอนโคเดอร์

ในงานควบคุมการเคลื่อนที่โดยใช้มอเตอร์ เช่นเครื่องซีเอ็นซีและหุ่นยนต์ จะนิยมใช้เอนโคเดอร์แบบส่วนเพิ่ม (incremental encoder) ในการอ่านค่าตำแหน่งของเพลา มีข้อดีคือมีจำนวนสายสัญญาณน้อยและสามารถสะสมค่าได้ แต่จำเป็นต้องมีภาครับที่สามารถแปลงสัญญาณและนับจำนวนพัลซ์ที่สัมพันธ์กับค่าตำแหน่ง ในไมโครคอนโทรลเลอร์ที่ออกแบบมาสำหรับงานควบคุมมอเตอร์ เช่น PIC ตระกูล MC จาก บ.ไมโครชิพ จะมีโมดูล QEI (Quadrature Encoder Interface) ที่เป็นฮาร์ดแวร์เฉพาะสำหรับงานดังกล่าว และมีวงจรเสริมเช่นตัวกรองดิจิทัล ทำให้สามารถอ่านค่าได้อย่างแม่นยำและรวดเร็ว อย่างไรก็ตาม สำหรับงานที่ไม่ต้องการสมรรถนะสูงมาก เช่นการทดลองในชั้นเรียน เราสามารถใช้ขาอินพุตอินเตอร์รัพท์ภายนอกช่วยในการอ่านและนับค่าจากเอนโคเดอร์แบบส่วนเพิ่มได้ ในบทความนี้จะกล่าวถึงการพัฒนาส่วนเชื่อมต่อเอนโคเดอร์บน ESP32

Wednesday, November 29, 2017

การใช้ microgear.publish() อัพเดทสถานะและค่าของ Freeboard Widgets

NETPIE Series

ในบทความนี้เราจะปรับปรุงส่วนติดต่อผู้ใช้บน freeboard ที่สร้างไว้ใน บทที่ 6 ของหนังสือ “ตัวควบคุมป้อนกลับบนอินเทอร์เน็ตโดย ESP8266” ให้เหมาะสมกับการใช้ในงานควบคุมอุตสาหกรรมจริง ตัวควบคุม IoFC ได้ถูกออกแบบให้มีความยืดหยุ่น คือสามารถปรับพารามิเตอร์ได้ทั้งที่หน้างานผ่านพอร์ตอนุกรม และจากระยะไกลโดย NETPIE แต่หน้าควบคุม freeboard จากตัวอย่างที่ 6.4 ในหนังสือยังไม่ได้ออกแบบให้รองรับกรณีมีผู้ปฏิบัติงานทั้ง 2 สถานที่ เพราะหากมีการเปลี่ยนค่าพารามิเตอร์ที่หน้างาน ส่วนควบคุมใน NETPIE จะไม่อัพเดตตาม เราจะมาศึกษาวิธีแก้ปัญหานี้โดยใช้ฟังก์ชัน microgear.publish() และเพิ่มการตั้งค่าใน freeboard widgets

Sunday, November 26, 2017

การติดตั้งและแก้ปัญหาไลบรารีสำหรับ ESP32 เพื่อใช้งานกับ Arduino IDE และ NETPIE

Update : บทความนี้ได้เขียนขึ้นในขณะที่ ESP32 เพิ่งออกสู่ตลาดเป็นเวลาไม่นาน ทำให้ขั้นตอนการติดตั้งเครื่องมือพัฒนามีความยุ่งยากโดยเฉพาะสำหรับผู้เริ่มต้น ณ ปัจจุบันการติดตั้ง ESP32 Arduino Core สามารถทำผ่าน Board Manager เช่นเดียวกับ ESP32 Microgear ที่ใช้ Library Manager ช่วยให้มีความสะดวกในการติดตั้งมากกว่าวิธีที่นำเสนอในบทความนี้ ดังนั้นเนื้อหาในบทความนี้จึงถูกเก็บไว้เพื่ออ้างอิงเท่านั้น แนะนำผู้อ่านติดตั้งเครื่องมือผ่าน Arduino IDE ซึ่งจะง่ายเหมือนกับการติดตั้งเครื่องมือ ESP8266

21 ตค 2562 : อ่านวิธีการติดตั้งล่าสุดได้จากภาคผนวก A บนเพจของหนังสือ "คู่มือนักพัฒนาไอโอที"

เชื่อว่าผู้อ่านหลายท่านคงได้ยินชื่อ ESP32 หรืออาจจะเคยลองเล่นบ้างแล้ว ESP32 เป็นผลิตภัณฑ์ใหม่จากบริษัท Espressif ผู้ผลิต ESP8266 ที่ได้รับความนิยมอย่างมากในปัจจุบัน โดยชิพตัวใหม่นี้มีคุณสมบัติที่เหนือกว่าหลายประการเช่น สามารถพัฒนาการสื่อสารทั้ง WiFi และ Bluetooth มีจำนวน ADC มากกว่า มีเอาต์พุต DAC มี 2 cores ฯลฯ วัตถุประสงค์ของบทความนี้มิใช่เป็นการลงรายละเอียดด้านฮาร์ดแวร์ของ ESP32 แต่เพียงเพื่อแนะนำการติดตั้งและแก้ปัญหาสำหรับผู้เริ่มใช้งานใหม่ ณ เวลาปัจจุบันที่เขียนนี้ (พย. 2560) ทั้งนี้เนื่องจากไลบรารีที่เกี่ยวข้องกับ ESP32 ยังอยู่ระหว่างการพัฒนาทำให้อาจเกิดปัญหาความเข้ากันไม่ได้ของซอฟต์แวร์ ซึ่งคงจะถูกปรับปรุงแก้ไขให้ดีขึ้นในอนาคต

แนะนำหนังสือ “ตัวควบคุมป้อนกลับบนอินเทอร์เน็ตโดย ESP8266”

ปัจจุบันเมื่อกล่าวถึงอุปกรณ์ IoT (Internet of Things) คงมีน้อยคนที่จะไม่รู้จัก ในยุคที่การเข้าถึงอินเทอร์เน็ตเป็นกิจวัตรประจำวันของมนุษย์เ...