SlideShare uma empresa Scribd logo
1 de 40
การใช้ Internet Protocol เพื่อควบคุม ระหว่าง Microcontroller และ
Web Application เพื่อควบคุมระบบอัตโนมัติ
Vending Machine
Internet Control For Long Distance Remote Tractor
Factory Automation
ทาความเข้าใจเบื้องต้น
Live ครั้งที่ 1 Introduction To Internet Communication
Live ครั้งที่ 2 สาธิตการควบคุมผ่านอินเตอร์เน็ต ด้วยInternet โปรโตคอล
Live ครั้งที่ 3 สาธิตการควบคุม Service Robot ของโรงพยาบาล
ก่อนอื่น ต้องขอออกตัวไว้ก่อนว่า วิทยากรไม่ได้มีความรู้โดยตรงหรือเป็นผู้ชานาญการที่ทางานทางด้านอินเทอร์เน็ต เพียงแต่ ได้ศึกษา
เรียนรู้ และ มีประสบการณ์การใช้งาน รวมถึง ได้มีการนามาใช้งานในรูปแบบของเทคโนโลยี เพื่อควบคุมเครื่องจักร และขอนามาแชร์
ประสบการณ์กันนะครับ
Robotic Component
องค์ประกอบหลักของโรโบติกส์เบื้องต้น
1 .โครงสร้างทางกล หรือ อุปกรณ์ทางกล
2 .อุปกรณ์ขับเคลื่อนทางกล เช่น มอเตอร์ไฟฟ้า มอเตอร์ไฮโดรลิค หรือ อุปกรณ์ลม หรือ
อาจจะเป็นอุปกรณ์ทางกลแบบอื่นๆ ทั้งเชิงเส้น และ เชิงมุม
3. การประมวลผล และ การควบคุม ในส่วนนี้จะรวมถึง Programming และการออกแบบ
การควบคุมอุปกรณ์ขับเคลื่อนทางกลดังนั้นในส่วนนี้ผู้สนใจจาเป็นจะต้องเรียนรู้เรื่องโปรแกรม
มิ่งและการควบคุมพังไฟฟ้าซึ่งหมายความว่าเราจะต้องมีความรู้เรื่องของอิเล็กทรอนิกส์ไฟฟ้า
และการอินเตอร์เฟสกับการ programming
Robotic Component
4. ระบบเซ็นเซอร์ต่างๆตั้งแต่เซ็นเซอร์จาพวกเอ็นโค้ดเดอร์เซ็นเซอร์การ
วัดแรงการมองเห็นหรือเซ็นเซอร์อื่นๆอีกมากมายเพื่อนามาประมวลผล
5.ระบบการสื่อสาร ที่เข้าใจกันแบบง่าย ๆ คือ ระบบการสื่อสารภายใน
และการระบบการสื่อสารภายนอก
Robotic Component
ระบบการสื่อสารภายใน หมายถึง การสื่อสารระหว่างอุปกรณ์อิเล็กทรอนิกส์หรือ
ไมโครโปรเซสเซอร์หรือกับอุปกรณ์ต่างๆ
การสื่อสารภายนนอก หมายถึง การสื่อสารระหว่างมนุษย์ กับ Robot หรือ Robot กับ
Robot หรือกับบุคคลอื่นๆก็เป็นไปได้ซึ่งการสื่อสารอันนี้เราจะแบ่งง่ายๆเป็น 2 กลุ่ม
5.1 การสื่อสารภายในเช่นระบบ can Bus i2c SPI หรือ อื่นๆ
5.2 ระบบการสื่อสารภายนอกเช่น Ethernet ,อินเทอร์เน็ต โปรโตคอลแบบต่างๆ , Rs485
,Modbus rs232 , หรือ อื่นๆ
หลักการแบบเข้าใจ ง่าย ๆ
การใช้อินเทอร์เน็ตโปรโตคอล เพื่อควบคุมไมโครคอนโทรลเลอร์ โดย ผ่าน Web Application เกริ่น ต้นเรื่องมาแบบนี้ ก็
ต้องมาทราบเหตุผลว่า มีที่มาอย่างไร
สาเหตุ ที่ต้องมีการใช้หรือเลือกใช้ระบบ Web Application เพื่อควบคุมอุปกรณ์หรือเครื่องจักร หรือ อุปกรณ์ที่อยู่ใน
ระบบ IOT ที่เรารู้จักกัน มีหลายรูปแบบ ที่เห็นกันส่วนใหญ่ จะเป็นรูปแบบตั้งแต่การใช้ Protocol HTML TCP IP UDP
หรือ ปัจจุบันมี Websocket WebRTC ซึ่งจะทันสมัย และ สนองต่อความต้องการ ในเรื่องของความเร็ว และ การ
ตอบสนองแบบเรียลไทม์ นี่คือ ความต้องการใช้งานที่สะดวกขึ้น ที่ต่างจากรูปแบบเดิม ที่เป็นเพียงการสื่อสารผ่าน
อินเทอร์เน็ต แบบเดิมที่เรารู้จักกัน คือ อยู่ในรูปของ HTML คือ get post ต่อมา ก็อยู่ในรูปของ TCP หรือ UDP แต่ก็ยัง
มีปัญหาในเรื่อง ความสะดวกการใช้งาน
และ ในปัจจุบัน เรามักจะเขียนซอฟต์แวร์ เพื่อให้ครอบคลุมรองรับ กับ ทุกฮาร์ดแวร์ และ ทุกอุปกรณ์
วิธีการที่สะดวกที่สุด เพื่อสนองตอบในความต้องการดังกล่าว คือ Web Interface หรือ Web Application บทบาท
ของ Web Interface และ Web Application
ตัวอย่างในชีวิตประจาวัน
ยกตัวอย่าง อุปกรณ์ Router ที่มีกันอยู่แทบทุกบ้าน ก็จะมีการควบคุม หรือ ติดต่อด้วย Web Brower
จากจุดนี้ เราก็พอจะมองเห็น แนวโน้มในอนาคต ถึงความจาเป็น และความต้องการใช้ Web browser เพื่อควบคุมอุปกรณ์ต่างๆ ดังนั้น
จึงเป็นที่มา ของการไลฟ์สดในที่นี้
ก่อนอื่น ต้องขอออกตัวไว้ก่อนว่า วิทยากรไม่ได้มีความรู้โดยตรงหรือเป็นผู้ชานาญการที่ทางานทางด้านอินเทอร์เน็ต เพียงแต่ ได้ศึกษา
เรียนรู้ และ มีประสบการณ์การใช้งาน รวมถึง ได้มีการนามาใช้งานในรูปแบบของเทคโนโลยี เพื่อควบคุมเครื่องจักร และขอนามาแชร์
ประสบการณ์กันนะครับ
พื้นฐานความรู้ที่ควรมี
ก่อนอื่นก่อนที่เราจะไปเรียนรู้กับเรื่องราวเหล่านี้เราคงจะต้องเรียนรู้พื้นฐานกันก่อน
1. เข้าใจการทางานของอุปกรณ์ ที่เรา ต้องการควบคุม เช่น หากต้องการควบคุม Robot ต้อง เข้าใจ และ รู้ชนิดของ Robot
ลักษณะของ Robot แบบต่างๆ หรือ ควบคุมเครื่องมือแพทย์ ต้องคานึงเรื่อง ความปลอดภัย และ ความแม่นยา ของข้อมูล
2. การเลือกช่องทางการควบคุม รวมถึง โปรโตคอลของการควบคุมแบบต่างๆ เช่น HTML, TCP, UDP, Socket, Websocket,
WebRTC, หรืออาจจะมีโปรโตคอลที่เกิดใหม่ขึ้นมาอีกก็ได้ ไม่มีพื้นฐานเหล่านี้มันก็คงจะเข้าใจเรื่องการสื่อสารค่อนข้างลาบาก
รวมถึงวิธีการที่เราจะติดต่อกับโปรโตคอลเหล่านี้ด้วยวิธีการแบบไหน
3. โปรโตคอลการสื่อสารภายในระหว่างชุดควบคุม และ ชุด Controller การสื่อสารระหว่างผู้ควบคุมและผู้ถูกควบคุม Interrupt
ต่าง ๆ ทั้ง สองฝ่าย ซึ่งโปรโตคอลนี้จะถูกส่งผ่านผ่านอินเทอร์เน็ตโปรโตคอลอีกครั้งหนึ่ง
พื้นฐานความรู้ที่ควรมี
1. เราต้องไปเรียนรู้พื้นฐานกันก่อนว่าการควบคุมแบบต่างๆเราต้องการจะไปควบคุมอะไร ยกตัวอย่าง มอเตอร์หมุนรางเลื่อนควบคุม
ตาแหน่งการควบคุมแสงสีเสียงหรือค่าสัญญาณอนาล็อกต่างๆซึ่งหน้าที่หลักส่วนใหญ่แล้วเราจะให้ไมโครคอนโทรลเลอร์เป็นตัว
จัดการโดยที่จะรับคาสั่งจากชุดควบคุมต้นทาง หนังสือ Motor Control
2. ข้อ 2 อันนี้แน่นอนที่สุดว่าหากเราไม่มีพื้นฐานของอินเทอร์เน็ต หรือ เรียนรู้ภาษาต่างๆในการพัฒนาโปรแกรมซึ่งอันดับแรกเลยก็ต้อง
เรียนรู้เรื่องพื้นฐานของภาษา HTML หรือ ภาษาสคริปต์ต่างๆ เช่น Javascript หรือ อื่นๆสาหรับงานควบคุมในหัวข้อนี้ส่วนใหญ่ก็
จะต้องเน้น HTML และ Javascript
Architecture and Software Design for a Service Robot
Internet Protocol ที่น่าสนใจ
1. HTTP
2. MQTT
3. WebSocket
4. WebRTC
Internet Protocol ที่น่าสนใจ
ปัญหาของการควบคุมแบบ HTML เราจะมีปัญหาในเรื่องของเวลางานจะไม่สามารถควบคุมงานแบบ Realtime ได้
โปรโตคอลที่ใช้กันบ่อยๆคือ MQTT จากประสบการณ์คร่าวๆเพราะตัวนี้เราคิดว่ามันไม่เหมาะเนื่องจากว่ามันจะต้องใช้ตัวกลางเป็น Server
ซึ่งมีการให้บริการมากมายเช่น Blink, PubNub
ในการควบคุมเครื่องจักรคิดว่าไม่น่าจะเหมาะแต่จะเหมาะในการใช้ข้อมูลลักษณะของ Data Collection มากกว่า
ปัญหานี้มันก็คือถูกแก้ด้วย Socket หรือ Websocket ตามผังข้างล่าง แสดงนี้ข้อดีของ Websocket ก็คือไม่จาเป็นต้องมีตัวกลางเรา
สามารถส่งจากต้นทางไปปลายทางได้เลยและเป็นข้อมูลที่มีลักษณะของการส่งข้อมูลแบบ Real-time
ในปัจจุบันนี้ WebSocket ก็อาจจะเริ่มล้าสมัยแล้วเพราะมีตัวที่น่าสนใจคือ WebRTC ซึ่งสามารถไปศึกษาหาความรู้ได้จากปิดข้อมูลพวกนี้
มีเยอะแยะมากมายให้เราเรียนรู้
HTTP And WebSocket
Internet Protocol ที่น่าสนใจ
เราก็ต้องเรียนรู้การออกแบบ ควบคุม Controller และชุด Controller เพื่อควบคุมอุปกรณ์ตามข้อ 1
โดยผ่านกระบวนการตามข้อ 2
จากประสบการณ์ส่วนใหญ่ที่เราคบกันในอินเตอร์เน็ตจะเป็นการควบคุมแบบง่ายๆเช่น การปิดเปิดหลอดไฟ ส่งข้อมูลต่างๆ ขึ้น Cloud
Server แต่ในความจริงแล้วการควบคุมอุปกรณ์พวกระบบอัตโนมัติหรือเครื่องจักรต่างๆหรือเครื่องมือแพทย์หรืออะไรก็แล้วแต่เราต้องการ
ควบคุมแบบ Real-time มีการขัดจังหวะมีการส่งข้อมูลข้ามกันมีการให้ความสาคัญกับข้อมูลที่ไม่เหมือนกันเพราะฉะนั้นมันเลยต้องมีการ
ออกแบบ โปรโตคอลขึ้นมาให้เหมาะกับการทางานแต่ละอย่างดังนั้นการสื่อสารข้อมูลตามข้อ 2 จึงมีความสาคัญเป็นอย่างมากเพราะการ
รับส่งข้อมูลทั้งต้นทางและปลายทางจะได้นาข้อมูลวิเคราะห์ได้อย่างรวดเร็วเพื่อการตัดสินใจ
ยกตัวอย่างสมมุติว่าเราสร้างรถแทรกเตอร์ขุดดินควบคุมระยะไกลโดยจะต้องมีการ Stream Video ควบคุมการขับเคลื่อนของรถ
แทรกเตอร์ในการควบคุมมันก็ต้องเป็นไปแบบที่เรียกเราเรียกกันว่า Real-time มันจึงจะใช้งานได้อย่างปลอดภัย แสดงว่าเราก็ต้องมีการ
ตอบโต้กับรถแทรกเตอร์อยู่ตลอดเวลาสอบถามข้อมูลอยู่ตลอดเวลาเหมือนตัวเรานั่งอยู่ในรถนี่คือที่ไปที่มาของการเรียนรู้เรื่องการเลือกใช้
การควบคุมโดยใช้อินเตอร์เน็ต Protocol ที่ดีที่สุด
ตัวอย่างการควบคุม โดยใช้ HTTP
ยกตัวอย่าง
อุปกรณ์ Router ที่มีกันอยู่แทบทุกบ้าน ก็จะมีการควบคุม หรือ ติดต่อด้วย Web Brower
จากจุดนี้ เราก็พอจะมองเห็น แนวโน้มในอนาคต ถึงความจาเป็น และความต้องการใช้ Web browser เพื่อควบคุมอุปกรณ์ต่างๆ ดังนั้น
จึงเป็นที่มา ของการไลฟ์สดในที่นี้
อุปกรณ์ Smart Home
อุปกรณ์ Smart Farm
HTTP Get Post
HTTP Get Post
ตัวอย่างการควบคุม โดยใช้ HTTP
ตัวอย่างอุปกรณ์ รอบตัวเรา
อุปกรณ์ Router ที่มีกันอยู่แทบทุกบ้าน ก็จะมีการควบคุม หรือ ติดต่อด้วย Web Brower
อุปกรณ์ Smart Home
อุปกรณ์ Smart Farm
จากจุดนี้ เราก็พอจะมองเห็น แนวโน้มในอนาคต ถึงความจาเป็น และความต้องการใช้ Web browser เพื่อควบคุมอุปกรณ์ต่างๆ
ตัวอย่างการควบคุม โดยใช้ HTTP
ตัวอย่างการควบคุมที่เราเจอกันมากที่สุดในอินเตอร์เน็ตก็คือการควบคุมผ่าน App HTML
โปรโตคอล ยกตัวอย่างตามรูปข้างต้น
ตัวอย่างนี้เป็นการใช้งาน http protocol ควบคุมการเปิด-ปิดหลอดไฟ LED ด้วยอุปกรณ์ใดก็ได้ที่
เข้าสามารถเข้าถึงโดย Web browser
1. ในตัวอย่างนี้เราจะควบคุม LED สองดวงที่เชื่อมต่อกับขา GPIO และ GPIO27 ของ
บอร์ด ESP32
2. คุณสามารถเข้าถึง เว็บเซิร์ฟเวอร์ ESP32 ได้โดยพิมพ์ที่อยู่ IP ของ ESP32 บน
เบราว์เซอร์ได้
3. สามารถควบคุม เปิด-หลอดไฟ โดยการคลิกปุ่มบนเว็บบราวเซอร์ได้
ตัวอย่างการควบคุม โดยใช้ HTTP
MQTT
MQTT
Websocket พระเอกวันนี้
WebSocket เป็นโปรโตคอลเครือข่ายที่อนุญาตให้มีการสื่อสาร แบบสองทาง ระหว่างเซิร์ฟเวอร์และ
ไคลเอ็นต์ ต่างจาก HTTP ซึ่งใช้รูปแบบคาขอ และ การตอบสนอง WebSocket peers สามารถส่ง
ข้อความในทิศทางใดก็ได้ในเวลาใดก็ได้ WebSockets มักใช้สาหรับแอปที่ใช้แชทและแอปอื่นๆ ที่ต้อง
พูดคุยกัน ระหว่างเซิร์ฟเวอร์ และ ไคลเอ็นต์อย่างต่อเนื่อง
สิ่งที่ต้องเรียนรู้คือ :
เริ่มการ Initiate WebSocket รวมถึง
การทา Handshake WebSocket
การ ส่งข้อความผ่าน WebSocket ประมวลผลข้อความที่ได้รับที่ส่งผ่าน WebSocket ผสานรวมกับ
เซิร์ฟเวอร์ เพื่อส่งและรับข้อมูลผ่าน WebSockets
WebSocket
WebSocket
Websocket API
https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
WebRTC
Hardware Control
Hardware Control
Hardware Control
Hardware Control
แนะนาตัวอย่างการใช้งานจริง
END..

Mais conteúdo relacionado

Semelhante a การใช้ Internet Protocol เพื่อควบคุม ระหว่าง Microcontroller และ Web Application เพื่อควบคุมระบบอัตโนมัติ.pptx

ความรู้เบื้องต้นเกี่ยวกับอินเทอร์เน็ต
ความรู้เบื้องต้นเกี่ยวกับอินเทอร์เน็ตความรู้เบื้องต้นเกี่ยวกับอินเทอร์เน็ต
ความรู้เบื้องต้นเกี่ยวกับอินเทอร์เน็ตSamart Phetdee
 
ระบบเครือข่ายคอมพิวเตอร์
ระบบเครือข่ายคอมพิวเตอร์ระบบเครือข่ายคอมพิวเตอร์
ระบบเครือข่ายคอมพิวเตอร์Dr.Kridsanapong Lertbumroongchai
 
บทที่ 1
บทที่ 1บทที่ 1
บทที่ 1shopper38
 
ดัชนีคำศัพท์ วริศรา บัวแก้ว
ดัชนีคำศัพท์ วริศรา บัวแก้วดัชนีคำศัพท์ วริศรา บัวแก้ว
ดัชนีคำศัพท์ วริศรา บัวแก้วKphum Rueangsen
 
ด ชน คำศ_พท_
ด ชน คำศ_พท_ด ชน คำศ_พท_
ด ชน คำศ_พท_Mooky Saowaphan
 
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8Korakot Kaevwichian
 
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8Korakot Kaevwichian
 
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8Korakot Kaevwichian
 
Week 3 องค์ประกอบของคอมพิวเตอร์
Week 3 องค์ประกอบของคอมพิวเตอร์Week 3 องค์ประกอบของคอมพิวเตอร์
Week 3 องค์ประกอบของคอมพิวเตอร์Dr.Kridsanapong Lertbumroongchai
 
ใบความรู้ที่ 2
ใบความรู้ที่ 2ใบความรู้ที่ 2
ใบความรู้ที่ 2Nattapon
 
ความเป็นมาและแนวคิดของการสื่อสารใน
ความเป็นมาและแนวคิดของการสื่อสารในความเป็นมาและแนวคิดของการสื่อสารใน
ความเป็นมาและแนวคิดของการสื่อสารในaru
 
ความรู้เบื้องต้นเกี่ยวกับอินเตอร์เน็ต
ความรู้เบื้องต้นเกี่ยวกับอินเตอร์เน็ตความรู้เบื้องต้นเกี่ยวกับอินเตอร์เน็ต
ความรู้เบื้องต้นเกี่ยวกับอินเตอร์เน็ตkhemjira_p
 
2.โพรโตคอล
2.โพรโตคอล2.โพรโตคอล
2.โพรโตคอลSaksakon Sanor
 

Semelhante a การใช้ Internet Protocol เพื่อควบคุม ระหว่าง Microcontroller และ Web Application เพื่อควบคุมระบบอัตโนมัติ.pptx (20)

ความรู้เบื้องต้นเกี่ยวกับอินเทอร์เน็ต
ความรู้เบื้องต้นเกี่ยวกับอินเทอร์เน็ตความรู้เบื้องต้นเกี่ยวกับอินเทอร์เน็ต
ความรู้เบื้องต้นเกี่ยวกับอินเทอร์เน็ต
 
ระบบเครือข่ายคอมพิวเตอร์
ระบบเครือข่ายคอมพิวเตอร์ระบบเครือข่ายคอมพิวเตอร์
ระบบเครือข่ายคอมพิวเตอร์
 
บทที่ 1
บทที่ 1บทที่ 1
บทที่ 1
 
6
66
6
 
6
66
6
 
Internet
InternetInternet
Internet
 
ดัชนีคำศัพท์ วริศรา บัวแก้ว
ดัชนีคำศัพท์ วริศรา บัวแก้วดัชนีคำศัพท์ วริศรา บัวแก้ว
ดัชนีคำศัพท์ วริศรา บัวแก้ว
 
ดัชนี
ดัชนีดัชนี
ดัชนี
 
ด ชน คำศ_พท_
ด ชน คำศ_พท_ด ชน คำศ_พท_
ด ชน คำศ_พท_
 
Internet
InternetInternet
Internet
 
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
 
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
 
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
ใบงานที่ 3 น.ส.กรกช แก้ววิเชียร ม.4.5 เลขที่ 8
 
Week 3 องค์ประกอบของคอมพิวเตอร์
Week 3 องค์ประกอบของคอมพิวเตอร์Week 3 องค์ประกอบของคอมพิวเตอร์
Week 3 องค์ประกอบของคอมพิวเตอร์
 
5630504331
56305043315630504331
5630504331
 
ใบความรู้ที่ 2
ใบความรู้ที่ 2ใบความรู้ที่ 2
ใบความรู้ที่ 2
 
1โพรโทคอลสื่อ
1โพรโทคอลสื่อ1โพรโทคอลสื่อ
1โพรโทคอลสื่อ
 
ความเป็นมาและแนวคิดของการสื่อสารใน
ความเป็นมาและแนวคิดของการสื่อสารในความเป็นมาและแนวคิดของการสื่อสารใน
ความเป็นมาและแนวคิดของการสื่อสารใน
 
ความรู้เบื้องต้นเกี่ยวกับอินเตอร์เน็ต
ความรู้เบื้องต้นเกี่ยวกับอินเตอร์เน็ตความรู้เบื้องต้นเกี่ยวกับอินเตอร์เน็ต
ความรู้เบื้องต้นเกี่ยวกับอินเตอร์เน็ต
 
2.โพรโตคอล
2.โพรโตคอล2.โพรโตคอล
2.โพรโตคอล
 

การใช้ Internet Protocol เพื่อควบคุม ระหว่าง Microcontroller และ Web Application เพื่อควบคุมระบบอัตโนมัติ.pptx

  • 1. การใช้ Internet Protocol เพื่อควบคุม ระหว่าง Microcontroller และ Web Application เพื่อควบคุมระบบอัตโนมัติ
  • 2.
  • 3.
  • 4.
  • 6. Internet Control For Long Distance Remote Tractor
  • 8. ทาความเข้าใจเบื้องต้น Live ครั้งที่ 1 Introduction To Internet Communication Live ครั้งที่ 2 สาธิตการควบคุมผ่านอินเตอร์เน็ต ด้วยInternet โปรโตคอล Live ครั้งที่ 3 สาธิตการควบคุม Service Robot ของโรงพยาบาล ก่อนอื่น ต้องขอออกตัวไว้ก่อนว่า วิทยากรไม่ได้มีความรู้โดยตรงหรือเป็นผู้ชานาญการที่ทางานทางด้านอินเทอร์เน็ต เพียงแต่ ได้ศึกษา เรียนรู้ และ มีประสบการณ์การใช้งาน รวมถึง ได้มีการนามาใช้งานในรูปแบบของเทคโนโลยี เพื่อควบคุมเครื่องจักร และขอนามาแชร์ ประสบการณ์กันนะครับ
  • 9. Robotic Component องค์ประกอบหลักของโรโบติกส์เบื้องต้น 1 .โครงสร้างทางกล หรือ อุปกรณ์ทางกล 2 .อุปกรณ์ขับเคลื่อนทางกล เช่น มอเตอร์ไฟฟ้า มอเตอร์ไฮโดรลิค หรือ อุปกรณ์ลม หรือ อาจจะเป็นอุปกรณ์ทางกลแบบอื่นๆ ทั้งเชิงเส้น และ เชิงมุม 3. การประมวลผล และ การควบคุม ในส่วนนี้จะรวมถึง Programming และการออกแบบ การควบคุมอุปกรณ์ขับเคลื่อนทางกลดังนั้นในส่วนนี้ผู้สนใจจาเป็นจะต้องเรียนรู้เรื่องโปรแกรม มิ่งและการควบคุมพังไฟฟ้าซึ่งหมายความว่าเราจะต้องมีความรู้เรื่องของอิเล็กทรอนิกส์ไฟฟ้า และการอินเตอร์เฟสกับการ programming
  • 11. Robotic Component ระบบการสื่อสารภายใน หมายถึง การสื่อสารระหว่างอุปกรณ์อิเล็กทรอนิกส์หรือ ไมโครโปรเซสเซอร์หรือกับอุปกรณ์ต่างๆ การสื่อสารภายนนอก หมายถึง การสื่อสารระหว่างมนุษย์ กับ Robot หรือ Robot กับ Robot หรือกับบุคคลอื่นๆก็เป็นไปได้ซึ่งการสื่อสารอันนี้เราจะแบ่งง่ายๆเป็น 2 กลุ่ม 5.1 การสื่อสารภายในเช่นระบบ can Bus i2c SPI หรือ อื่นๆ 5.2 ระบบการสื่อสารภายนอกเช่น Ethernet ,อินเทอร์เน็ต โปรโตคอลแบบต่างๆ , Rs485 ,Modbus rs232 , หรือ อื่นๆ
  • 12. หลักการแบบเข้าใจ ง่าย ๆ การใช้อินเทอร์เน็ตโปรโตคอล เพื่อควบคุมไมโครคอนโทรลเลอร์ โดย ผ่าน Web Application เกริ่น ต้นเรื่องมาแบบนี้ ก็ ต้องมาทราบเหตุผลว่า มีที่มาอย่างไร สาเหตุ ที่ต้องมีการใช้หรือเลือกใช้ระบบ Web Application เพื่อควบคุมอุปกรณ์หรือเครื่องจักร หรือ อุปกรณ์ที่อยู่ใน ระบบ IOT ที่เรารู้จักกัน มีหลายรูปแบบ ที่เห็นกันส่วนใหญ่ จะเป็นรูปแบบตั้งแต่การใช้ Protocol HTML TCP IP UDP หรือ ปัจจุบันมี Websocket WebRTC ซึ่งจะทันสมัย และ สนองต่อความต้องการ ในเรื่องของความเร็ว และ การ ตอบสนองแบบเรียลไทม์ นี่คือ ความต้องการใช้งานที่สะดวกขึ้น ที่ต่างจากรูปแบบเดิม ที่เป็นเพียงการสื่อสารผ่าน อินเทอร์เน็ต แบบเดิมที่เรารู้จักกัน คือ อยู่ในรูปของ HTML คือ get post ต่อมา ก็อยู่ในรูปของ TCP หรือ UDP แต่ก็ยัง มีปัญหาในเรื่อง ความสะดวกการใช้งาน และ ในปัจจุบัน เรามักจะเขียนซอฟต์แวร์ เพื่อให้ครอบคลุมรองรับ กับ ทุกฮาร์ดแวร์ และ ทุกอุปกรณ์ วิธีการที่สะดวกที่สุด เพื่อสนองตอบในความต้องการดังกล่าว คือ Web Interface หรือ Web Application บทบาท ของ Web Interface และ Web Application
  • 13. ตัวอย่างในชีวิตประจาวัน ยกตัวอย่าง อุปกรณ์ Router ที่มีกันอยู่แทบทุกบ้าน ก็จะมีการควบคุม หรือ ติดต่อด้วย Web Brower จากจุดนี้ เราก็พอจะมองเห็น แนวโน้มในอนาคต ถึงความจาเป็น และความต้องการใช้ Web browser เพื่อควบคุมอุปกรณ์ต่างๆ ดังนั้น จึงเป็นที่มา ของการไลฟ์สดในที่นี้ ก่อนอื่น ต้องขอออกตัวไว้ก่อนว่า วิทยากรไม่ได้มีความรู้โดยตรงหรือเป็นผู้ชานาญการที่ทางานทางด้านอินเทอร์เน็ต เพียงแต่ ได้ศึกษา เรียนรู้ และ มีประสบการณ์การใช้งาน รวมถึง ได้มีการนามาใช้งานในรูปแบบของเทคโนโลยี เพื่อควบคุมเครื่องจักร และขอนามาแชร์ ประสบการณ์กันนะครับ
  • 14. พื้นฐานความรู้ที่ควรมี ก่อนอื่นก่อนที่เราจะไปเรียนรู้กับเรื่องราวเหล่านี้เราคงจะต้องเรียนรู้พื้นฐานกันก่อน 1. เข้าใจการทางานของอุปกรณ์ ที่เรา ต้องการควบคุม เช่น หากต้องการควบคุม Robot ต้อง เข้าใจ และ รู้ชนิดของ Robot ลักษณะของ Robot แบบต่างๆ หรือ ควบคุมเครื่องมือแพทย์ ต้องคานึงเรื่อง ความปลอดภัย และ ความแม่นยา ของข้อมูล 2. การเลือกช่องทางการควบคุม รวมถึง โปรโตคอลของการควบคุมแบบต่างๆ เช่น HTML, TCP, UDP, Socket, Websocket, WebRTC, หรืออาจจะมีโปรโตคอลที่เกิดใหม่ขึ้นมาอีกก็ได้ ไม่มีพื้นฐานเหล่านี้มันก็คงจะเข้าใจเรื่องการสื่อสารค่อนข้างลาบาก รวมถึงวิธีการที่เราจะติดต่อกับโปรโตคอลเหล่านี้ด้วยวิธีการแบบไหน 3. โปรโตคอลการสื่อสารภายในระหว่างชุดควบคุม และ ชุด Controller การสื่อสารระหว่างผู้ควบคุมและผู้ถูกควบคุม Interrupt ต่าง ๆ ทั้ง สองฝ่าย ซึ่งโปรโตคอลนี้จะถูกส่งผ่านผ่านอินเทอร์เน็ตโปรโตคอลอีกครั้งหนึ่ง
  • 15. พื้นฐานความรู้ที่ควรมี 1. เราต้องไปเรียนรู้พื้นฐานกันก่อนว่าการควบคุมแบบต่างๆเราต้องการจะไปควบคุมอะไร ยกตัวอย่าง มอเตอร์หมุนรางเลื่อนควบคุม ตาแหน่งการควบคุมแสงสีเสียงหรือค่าสัญญาณอนาล็อกต่างๆซึ่งหน้าที่หลักส่วนใหญ่แล้วเราจะให้ไมโครคอนโทรลเลอร์เป็นตัว จัดการโดยที่จะรับคาสั่งจากชุดควบคุมต้นทาง หนังสือ Motor Control 2. ข้อ 2 อันนี้แน่นอนที่สุดว่าหากเราไม่มีพื้นฐานของอินเทอร์เน็ต หรือ เรียนรู้ภาษาต่างๆในการพัฒนาโปรแกรมซึ่งอันดับแรกเลยก็ต้อง เรียนรู้เรื่องพื้นฐานของภาษา HTML หรือ ภาษาสคริปต์ต่างๆ เช่น Javascript หรือ อื่นๆสาหรับงานควบคุมในหัวข้อนี้ส่วนใหญ่ก็ จะต้องเน้น HTML และ Javascript
  • 16.
  • 17. Architecture and Software Design for a Service Robot
  • 18. Internet Protocol ที่น่าสนใจ 1. HTTP 2. MQTT 3. WebSocket 4. WebRTC
  • 19. Internet Protocol ที่น่าสนใจ ปัญหาของการควบคุมแบบ HTML เราจะมีปัญหาในเรื่องของเวลางานจะไม่สามารถควบคุมงานแบบ Realtime ได้ โปรโตคอลที่ใช้กันบ่อยๆคือ MQTT จากประสบการณ์คร่าวๆเพราะตัวนี้เราคิดว่ามันไม่เหมาะเนื่องจากว่ามันจะต้องใช้ตัวกลางเป็น Server ซึ่งมีการให้บริการมากมายเช่น Blink, PubNub ในการควบคุมเครื่องจักรคิดว่าไม่น่าจะเหมาะแต่จะเหมาะในการใช้ข้อมูลลักษณะของ Data Collection มากกว่า ปัญหานี้มันก็คือถูกแก้ด้วย Socket หรือ Websocket ตามผังข้างล่าง แสดงนี้ข้อดีของ Websocket ก็คือไม่จาเป็นต้องมีตัวกลางเรา สามารถส่งจากต้นทางไปปลายทางได้เลยและเป็นข้อมูลที่มีลักษณะของการส่งข้อมูลแบบ Real-time ในปัจจุบันนี้ WebSocket ก็อาจจะเริ่มล้าสมัยแล้วเพราะมีตัวที่น่าสนใจคือ WebRTC ซึ่งสามารถไปศึกษาหาความรู้ได้จากปิดข้อมูลพวกนี้ มีเยอะแยะมากมายให้เราเรียนรู้
  • 21. Internet Protocol ที่น่าสนใจ เราก็ต้องเรียนรู้การออกแบบ ควบคุม Controller และชุด Controller เพื่อควบคุมอุปกรณ์ตามข้อ 1 โดยผ่านกระบวนการตามข้อ 2 จากประสบการณ์ส่วนใหญ่ที่เราคบกันในอินเตอร์เน็ตจะเป็นการควบคุมแบบง่ายๆเช่น การปิดเปิดหลอดไฟ ส่งข้อมูลต่างๆ ขึ้น Cloud Server แต่ในความจริงแล้วการควบคุมอุปกรณ์พวกระบบอัตโนมัติหรือเครื่องจักรต่างๆหรือเครื่องมือแพทย์หรืออะไรก็แล้วแต่เราต้องการ ควบคุมแบบ Real-time มีการขัดจังหวะมีการส่งข้อมูลข้ามกันมีการให้ความสาคัญกับข้อมูลที่ไม่เหมือนกันเพราะฉะนั้นมันเลยต้องมีการ ออกแบบ โปรโตคอลขึ้นมาให้เหมาะกับการทางานแต่ละอย่างดังนั้นการสื่อสารข้อมูลตามข้อ 2 จึงมีความสาคัญเป็นอย่างมากเพราะการ รับส่งข้อมูลทั้งต้นทางและปลายทางจะได้นาข้อมูลวิเคราะห์ได้อย่างรวดเร็วเพื่อการตัดสินใจ ยกตัวอย่างสมมุติว่าเราสร้างรถแทรกเตอร์ขุดดินควบคุมระยะไกลโดยจะต้องมีการ Stream Video ควบคุมการขับเคลื่อนของรถ แทรกเตอร์ในการควบคุมมันก็ต้องเป็นไปแบบที่เรียกเราเรียกกันว่า Real-time มันจึงจะใช้งานได้อย่างปลอดภัย แสดงว่าเราก็ต้องมีการ ตอบโต้กับรถแทรกเตอร์อยู่ตลอดเวลาสอบถามข้อมูลอยู่ตลอดเวลาเหมือนตัวเรานั่งอยู่ในรถนี่คือที่ไปที่มาของการเรียนรู้เรื่องการเลือกใช้ การควบคุมโดยใช้อินเตอร์เน็ต Protocol ที่ดีที่สุด
  • 22. ตัวอย่างการควบคุม โดยใช้ HTTP ยกตัวอย่าง อุปกรณ์ Router ที่มีกันอยู่แทบทุกบ้าน ก็จะมีการควบคุม หรือ ติดต่อด้วย Web Brower จากจุดนี้ เราก็พอจะมองเห็น แนวโน้มในอนาคต ถึงความจาเป็น และความต้องการใช้ Web browser เพื่อควบคุมอุปกรณ์ต่างๆ ดังนั้น จึงเป็นที่มา ของการไลฟ์สดในที่นี้ อุปกรณ์ Smart Home อุปกรณ์ Smart Farm
  • 25. ตัวอย่างการควบคุม โดยใช้ HTTP ตัวอย่างอุปกรณ์ รอบตัวเรา อุปกรณ์ Router ที่มีกันอยู่แทบทุกบ้าน ก็จะมีการควบคุม หรือ ติดต่อด้วย Web Brower อุปกรณ์ Smart Home อุปกรณ์ Smart Farm จากจุดนี้ เราก็พอจะมองเห็น แนวโน้มในอนาคต ถึงความจาเป็น และความต้องการใช้ Web browser เพื่อควบคุมอุปกรณ์ต่างๆ
  • 26. ตัวอย่างการควบคุม โดยใช้ HTTP ตัวอย่างการควบคุมที่เราเจอกันมากที่สุดในอินเตอร์เน็ตก็คือการควบคุมผ่าน App HTML โปรโตคอล ยกตัวอย่างตามรูปข้างต้น ตัวอย่างนี้เป็นการใช้งาน http protocol ควบคุมการเปิด-ปิดหลอดไฟ LED ด้วยอุปกรณ์ใดก็ได้ที่ เข้าสามารถเข้าถึงโดย Web browser 1. ในตัวอย่างนี้เราจะควบคุม LED สองดวงที่เชื่อมต่อกับขา GPIO และ GPIO27 ของ บอร์ด ESP32 2. คุณสามารถเข้าถึง เว็บเซิร์ฟเวอร์ ESP32 ได้โดยพิมพ์ที่อยู่ IP ของ ESP32 บน เบราว์เซอร์ได้ 3. สามารถควบคุม เปิด-หลอดไฟ โดยการคลิกปุ่มบนเว็บบราวเซอร์ได้
  • 28. MQTT
  • 29. MQTT
  • 30. Websocket พระเอกวันนี้ WebSocket เป็นโปรโตคอลเครือข่ายที่อนุญาตให้มีการสื่อสาร แบบสองทาง ระหว่างเซิร์ฟเวอร์และ ไคลเอ็นต์ ต่างจาก HTTP ซึ่งใช้รูปแบบคาขอ และ การตอบสนอง WebSocket peers สามารถส่ง ข้อความในทิศทางใดก็ได้ในเวลาใดก็ได้ WebSockets มักใช้สาหรับแอปที่ใช้แชทและแอปอื่นๆ ที่ต้อง พูดคุยกัน ระหว่างเซิร์ฟเวอร์ และ ไคลเอ็นต์อย่างต่อเนื่อง สิ่งที่ต้องเรียนรู้คือ : เริ่มการ Initiate WebSocket รวมถึง การทา Handshake WebSocket การ ส่งข้อความผ่าน WebSocket ประมวลผลข้อความที่ได้รับที่ส่งผ่าน WebSocket ผสานรวมกับ เซิร์ฟเวอร์ เพื่อส่งและรับข้อมูลผ่าน WebSockets
  • 40. END..