ไมโครคอนโทรลเลอร์

ไมโครคอนโทรลเลอร์ตระกูล MCS-51 เป็นไมโครคอนโทรลเลอร์ที่ได้รับการยอมรับและถูกนำไปใช้ในการพัฒนาระบบควบคุมประเภทต่าง ๆ ตั้งแต่ขนาดเล็กไปจนถึงขนาดใหญ่มาแล้วเป็นจำนวนมาก ปัจจุบันไมโครคอนโทรลเลอร์ในตระกูลดังกล่าวถูกผลิตออกมาจำหน่ายหลายรุ่นด้วยกัน โดยแต่ละรุ่นจะมีโครงสร้างและส่วนประกอบหลักคล้ายคลึงกัน และด้วยโครงสร้างพื้นฐานและสถาปัตยกรรมที่เข้าใจง่าย ไมโครคอนโทรลเลอร์ตระกูล MCS-51 จึงเป็นหนึ่งในทางเลือกในการนำมาประยุกต์ใช้เพื่อพัฒนาระบบควบคุมตามวัตถุประสงค์ต่าง ๆ อย่างกว้างขวาง

ไมโครคอนโทรลเลอร์

ความรู้เบื้องต้นเกี่ยวกับไมโครคอนโทรลเลอร์

ปัจจุบันการใช้งานอุปกรณ์อำนวยความสะดวกประเภทต่างๆ ทั้งในภาคครัวเรือน และภาคอุตสาหกรรม ได้มีการนำระบบคอมพิวเตอร์มาใช้ในการควบคุมการทำงาน อาทิเช่น การใช้งานโทรศัพท์เคลื่อนที่และอุปกรณ์เทคโนโลยีสารสนเทศ เครื่องใช้ไฟฟ้าภายในบ้าน ยานพาหนะ รวมถึงเครื่องจักรกลการผลิตในอุตสาหกรรมประเภทต่างๆ เป็นต้น โดยระบบคอมพิวเตอร์ที่ใช้ในงานควบคุมดังกล่าวจะมีองค์ประกอบที่สำคัญ ดังนี้
1. หน่วยประมวลผลกลางหรือซีพียู (Central Processing Unit)
2. หน่วยความจำ
3. พอร์ตอินพุตและเอาต์พุต

ไมโครคอนโทรลเลอร์

โครงสร้างและสถาปัตยกรรมของไมโครคอนโทรลเลอร์ MCS-51

ดังที่กล่าวมาแล้วในบทที่ 1 ว่าไมโครคอนโทรลเลอร์ตระกูล MCS-51 นั้นมีอยู่ด้วยกันหลายเบอร์ โดยที่แต่ละเบอร์อาจมีโครงสร้างภายในที่แตกต่างกันไป เช่น บางเบอร์อาจจะมีหน่วยความจำโปรแกรมภายในเป็นแบบ ROM บางเบอร์เป็นแบบ EPROM หรือแบบ Flash บางเบอร์อาจมีขนาดของหน่วยความจำข้อมูลภายใน (RAM) เท่ากับ 128 ไบต์ ในขณะที่บางเบอร์อาจมีขนาด 256 ไบต์ เป็นต้น ซึ่งรายละเอียดดังกล่าวสามารถศึกษาได้จากคู่มือของไอซีเบอร์นั้นๆ โดยตรง นอกจากโครงสร้างภายในที่แตกต่างกันแล้ว ไอซีไมโครคอนโทรลเลอร์ตระกูล MCS-51 ยังมีลักษณะของแพ็กเกจหลากหลายรูปแบบแตกต่างกันไป ยกตัวอย่างเช่น แพ็กเกจแบบ DIP (Dual In-line Package) ที่ใช้ในไอซีเบอร์ 80C31 80C51 หรือ AT89C51 จะมีขาสัญญาณจำนวน 40 ขา โดยแบ่งออกเป็นกลุ่มของขาสัญญาณแอดเดรส สัญญาณข้อมูล และสัญญาณควบคุม ซึ่งมีหน้าที่แตกต่างกันออกไป

ชุดคำสั่งและการเขียนโปรแกรมภาษาแอสเซมบลี

ไมโครคอนโทรลเลอร์ตระกูล MCS-51 ถือเป็นหนึ่งในไมโครคอนโทรลเลอร์ตระกูลที่ได้รับความนิยมอย่างสูง เนื่องจากใช้งานง่ายและสามารถเขียนโปรแกรมได้ทั้งภาษาแอสเซมบลีและภาษาซี อีกทั้งยังมีทรัพยากรที่อำนวยความสะดวกในการพัฒนาโปรแกรม สำหรับเนื้อหาในบทนี้จะกล่าวถึงรายละเอียดของชุดคำสั่งของไมโครคอนโทรลเลอร์ตระกูล MCS-51 และการเขียนโปรแกรมภาษาแอสเซมบลีเพื่อเป็นความรู้พื้นฐานในการประยุกต์ใช้งานไมโครคอนโทรลเลอร์ต่อไป

1. ชุดคำสั่งของไมโครคอนโทรลเลอร์ MCS-51
2. การเขียนโปรแกรมภาษาแอสเซมบลี
3. เครื่องมือในการพัฒนางานสำหรับไมโครคอนโทรลเลอร์ MCS-51

การเขียนโปรแกรมภาษาซีสำหรับไมโครคอนโทรลเลอร์

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

1. โครงสร้างของภาษาซี
2. ตัวดำเนินการในภาษาซี
3. คำสั่งสำหรับควบคุมการทำงานในภาษาซี
4. อาร์เรย์และพอยน์เตอร์ในภาษาซี
5. การสร้างฟังก์ชันในภาษาซี

การเชื่อมต่อไมโครคอนโทรลเลอร์กับอุปกรณ์อินพุตและเอาต์พุต

การทำงานของไมโครคอนโทรลเลอร์มีความจำเป็นที่จะต้องติดต่อกับวงจรหรืออุปกรณ์ภายนอกเสมอ ยกตัวอย่างเช่นการที่ไมโครคอนโทรลเลอร์ทำการอ่านข้อมูลจากอุปกรณ์อินพุตและทำการส่งข้อมูลออกไปทางอุปกรณ์เอาต์พุต โดยกระบวนการดังกล่าวไมโครคอนโทรลเลอร์จะทำการติดต่อกับอุปกรณ์ภายนอกผ่านทางพอร์ต (Port) ดังนั้นจึงอาจกล่าวได้ว่าพอร์ตคือช่องทางในการโอนย้ายข้อมูลระหว่างไมโครคอนโทรลเลอร์กับอุปกรณ์ภายนอก สำหรับเนื้อหาในบทนี้จะกล่าวถึงการใช้งานพอร์ตอินพุตและพอร์ตเอาต์พุตของไมโครคอนโทรลเลอร์ตระกูล MCS-51 เพื่อควบคุมการทำงานของอุปกรณ์ภายนอก

1. พอร์ตของไมโครคอนโทรลเลอร์ MCS-51
2. การเชื่อมต่อไมโครคอนโทรลเลอร์ MCS-51 กับอุปกรณ์อินพุต
3. การเชื่อมต่อไมโครคอนโทรลเลอร์ MCS-51 กับอุปกรณ์เอาต์พุต

ไมโครคอนโทรลเลอร์

การอินเตอร์รัพท์

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

1. การอินเตอร์รัพท์ในระบบไมโครคอนโทรลเลอร์
2. สัญญาณอินเตอร์รัพท์ของไมโครคอนโทรลเลอร์ MCS-51
3. รีจิสเตอร์ที่เกี่ยวข้องกับการอินเตอร์รัพท์
4. การออกแบบโปรแกรมตอบสนองการอินเตอร์รัพท์
5. การอินเตอร์รัพท์จากสัญญาณภายนอก

การใช้งานไทม์เมอร์และเคาน์เตอร์

ในการใช้งานไมโครคอนโทรลเลอร์สำหรับงานควบคุมประเภทต่างๆ จำเป็นต้องมีวงจรที่ทำหน้าที่เกี่ยวกับการนับหรือจับเวลา ยกตัวอย่างเช่น การนับจำนวนพัลส์ที่เข้ามาในระบบ หรือการหน่วงเวลาการทำงานภายในโปรแกรม ซึ่งโดยทั่วไปแล้วการดำเนินการดังกล่าวสามารถทำได้โดยวิธีการทางด้านซอฟต์แวร์ เช่น การเขียนโปรแกรมเพื่อวนรอบนับสัญญาณหรือจับเวลา อย่างไรก็ตามวิธีการดังกล่าวจะส่งผลให้ระบบต้องเสียเวลาในการดูแลงานเหล่านั้นและอาจทำให้การทำงานที่เกี่ยวกับฐานเวลาไม่แม่นยำเท่าที่ควร ดังนั้นเพื่อเป็นการเพิ่มประสิทธิภายในการทำงานของระบบ การดำเนินงานในลักษณะดังกล่าวจึงควรใช้งานวงจรนับ/จับเวลา (Timer/Counter) ภายในไมโครคอนโทรลเลอร์ตระกูล MCS-51 ซึ่งสามารถควบคุมการทำงานได้ด้วยการเขียนโปรแกรม โดยหากเป็นการนับสัญญาณจากภายนอกจะเป็นการใช้งานเป็นตัวนับ ในขณะที่หากเป็นการนับสัญญาณนาฬิกาภายในระบบเองจะเป็นการใช้งานเป็นตัวจับเวลา

1. ไทม์เมอร์และเคาน์เตอร์ของไมโครคอนโทรลเลอร์ MCS-51
2. การใช้งานไทม์เมอร์และเคาน์เตอร์
3. การเขียนโปรแกรมควบคุมไทม์เมอร์และเคาน์เตอร์โดยวิธีอินเตอร์รัพท์

การสื่อสารข้อมูลแบบอนุกรม

การสื่อสารข้อมูลในระบบคอมพิวเตอร์มีอยู่ด้วยกัน 2 รูปแบบคือ การสื่อสารแบบขนาน (Parallel communication) และการสื่อสารแบบอนุกรม (Serial communication) การสื่อสารแบบขนานนั้น ระบบจะทำการส่งข้อมูลทุกบิตออกไปพร้อมๆ กัน ในขณะที่การสื่อสารแบบอนุกรมจะเป็นการส่งข้อมูลออกไปทีละบิต โดยทั่วไปแล้วการสื่อสารระหว่างไมโครคอนโทรลเลอร์กับเครื่องคอมพิวเตอร์หรือไมโครคอนโทรลเลอร์ด้วยกันเองนั้นจะใช้การสื่อสารข้อมูลแบบอนุกรม ทั้งนี้เนื่องจากมีข้อได้เปรียบหลายด้านหากเปรียบเทียบกับการสื่อสารแบบขนาน ยกตัวอย่างเช่น ในการสื่อสารข้อมูลขนาด 1 ไบต์ หากใช้การสื่อสารข้อมูลแบบขนานจะต้องใช้สายสัญญาณจำนวนมากกว่าการสื่อสารแบบอนุกรมถึง 8 เท่า ส่งผลให้เกิดความสิ้นเปลืองและความไม่สะดวกในการใช้งาน อย่างไรก็ตามการสื่อสารข้อมูลแบบอนุกรมนั้นจะทำได้ช้ากว่าแบบขนาน แต่ค่าใช้จ่ายจะต่ำกว่ามาก

ไมโครคอนโทรลเลอร์ตระกูล MCS-51 ประกอบด้วยพอร์ตอนุกรมซึ่งใช้ในการรับส่งข้อมูลได้สองทิศทางในพอร์ตเดียวกัน เมื่อไมโครคอนโทรลเลอร์ต้องการติดต่อกับอุปกรณ์ภายนอก ระบบจะทำการเปลี่ยนข้อมูลจากแบบขนานให้เป็นแบบอนุกรมก่อนแล้วจึงส่งข้อมูลออกไป ทั้งนี้เนื่องจากการสื่อสารภายในไมโครคอนโทรลเลอร์เองนั้นเป็นการสื่อสารแบบขนาน ในทางตรงกันข้ามหากไมโครคอนโทรลเลอร์รับข้อมูลเข้ามาจากอุปกรณ์ภายนอก ระบบก็จะทำการเปลี่ยนข้อมูลดังกล่าวจากแบบอนุกรมให้เป็นแบบขนานก่อน แล้วจึงส่งข้อมูลไปประมวลผลผ่านทางบัสข้อมูลขนาด 8 บิตต่อไป

1. พื้นฐานการสื่อสารแบบอนุกรม
2. ไมโครคอนโทรลเลอร์ MCS-51 กับการสื่อสารข้อมูลแบบอนุกรม
3. การควบคุมการสื่อสารข้อมูลผ่านพอร์ตอนุกรมของไมโครคอนโทรลเลอร์ MCS-51
4. การเขียนโปรแกรมควบคุมการสื่อสารข้อมูลแบบอนุกรมโดยวิธีอินเตอร์รัพท์
การเชื่อมต่อไมโครคอนโทรลเลอร์กับเซนเซอร์

ไมโครคอนโทรลเลอร์

การเชื่อมต่อไมโครคอนโทรลเลอร์กับเซนเซอร์

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

  1. ประเภทของเซนเซอร์ที่ใช้งานอยู่โดยทั่วไป
  2. การเชื่อมต่อระหว่างไมโครคอนโทรลเลอร์กับเซนเซอร์
  3. การเขียนโปรแกรมรับค่าสัญญาณจากเซนเซอร์

การเชื่อมต่อไมโครคอนโทรลเลอร์กับมอเตอร์ไฟฟ้ากระแสตรง

ไมโครคอนโทรลเลอร์เป็นอุปกรณ์ที่สามารถติดต่อกับวงจรหรืออุปกรณ์ภายนอกประเภทต่างๆ ได้โดยการรับส่งสัญญาณผ่านทางพอร์ต ยกตัวอย่างเช่นการอ่านข้อมูลจากอุปกรณ์อินพุตและการส่งข้อมูลออกไปควบคุมอุปกรณ์เอาต์พุต สำหรับอุปกรณ์เอาต์พุตที่สามารถพบเห็นได้โดยทั่วไปได้แก่อุปกรณ์ทางกลซึ่งเป็นอุปกรณ์ที่สามารถเคลื่อนที่ได้ ตัวอย่างของอุปกรณ์ทางกลที่เป็นพื้นฐานและพบเห็นได้บ่อยคือ มอเตอร์ไฟฟ้า ซึ่งมีอยู่ด้วยกันหลายประเภท ได้แก่ มอเตอร์ไฟฟ้ากระแสตรง (DC Motor) สเต็ปเปอร์มอเตอร์ (Stepper Motor) และเซอร์โวมอเตอร์ (Servo Motor) เป็นต้น สำหรับเนื้อหาในบทนี้จะกล่าวถึงการนำไมโครคอนโทรลเลอร์มาเชื่อมต่อกับมอเตอร์ไฟฟ้ากระแสตรงเพื่อเป็นแนวทางในการนำไปประยุกต์ใช้งานต่อไป

1. การควบคุมความเร็วของมอเตอร์ไฟฟ้ากระแสตรง
2. วงจรขยายสัญญาณสำหรับมอเตอร์ไฟฟ้ากระแสตรง
3. การเขียนโปรแกรมควบคุมการทำงานของมอเตอร์ไฟฟ้ากระแสตรง

ความรู้เบื้องต้นเกี่ยวกับหุ่นยนต์

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

หุ่นยนต์สามารถแบ่งออกได้เป็น 2 ประเภทหลักๆ คือ หุ่นยนต์เคลื่อนที่ (Mobile robot) และหุ่นยนต์แขนกล (Robot manipulator) หุ่นยนต์เคลื่อนที่นั้นเป็นหุ่นยนต์ที่สามารถพาตัวเองไปยังที่ต่างๆ ได้ สามารถแบ่งออกเป็นประเภทย่อยๆ ได้อีกเป็น 3 ประเภทตามสภาพแวดล้อมที่หุ่นยนต์ปฏิบัติงาน นั่นคือ หุ่นยนต์เคลื่อนที่บนบก หุ่นยนต์เคลื่อนที่ในอากาศ และหุ่นยนต์เคลื่อนที่ในน้ำ ตัวอย่างของหุ่นยนต์เคลื่อนที่แต่ละประเภทดังกล่าวที่พบเห็นได้โดยทั่วไป ได้แก่ หุ่นยนต์เคลื่อนที่แบบล้อสำหรับงานบริการ อากาศยานไร้คนขับหรือโดรน (Drone) และหุ่นยนต์สำรวจใต้น้ำ เป็นต้น สำหรับหุ่นยนต์แขนกลนั้นเป็นหุ่นยนต์ที่สามารถหยิบจับและเคลื่อนย้ายวัตถุที่อยู่ภายในขอบเขตพื้นที่การทำงานของหุ่นยนต์เองเท่านั้น ทั้งนี้เพราะมีข้อจำกัดที่โครงสร้างของหุ่นยนต์ โดยฐานของหุ่นยนต์แขนกลนั้นจะถูกยึดไม่ให้เคลื่อนที่ได้ การทำงานของหุ่นยนต์ประเภทนี้จะทำงานในลักษณะคล้ายกับแขนของมนุษย์

ไมโครคอนโทรลเลอร์

การพัฒนาหุ่นยนต์เคลื่อนที่หลบสิ่งกีดขวาง

ในบทนี้จะกล่าวถึงการออกแบบและสร้างหุ่นยนต์เคลื่อนที่ขนาดเล็กที่มีความสามารถในการตรวจสอบการปะทะกับสิ่งกีดขวางขณะทำการเคลื่อนที่โดยใช้สวิตช์แบบสัมผัส ในการทำงานหากหุ่นยนต์เคลื่อนที่ไปชนกับสิ่งกีดขวางด้านหน้า หุ่นยนต์จะเคลื่อนที่ถอยหลังแล้วเปลี่ยนเส้นทางการเคลื่อนที่ไปในทิศทางอื่น อย่างไรก็ตามในระหว่างที่หุ่นยนต์เคลื่อนที่ถอยหลังนั้น หากเกิดการชนกับสิ่งกีดขวางที่อยู่ด้านหลัง หุ่นยนต์จะหยุดการเคลื่อนที่ทันที ในการพัฒนาหุ่นยนต์เคลื่อนที่ขนาดเล็กจะมีส่วนประกอบหลัก 3 ส่วน คือ การพัฒนาส่วนประกอบทางกล ส่วนของวงจรไฟฟ้า และส่วนของโปรแกรมควบคุม ดังนั้นเพื่อลดความยุ่งยากในการออกแบบทางกล การพัฒนาโครงสร้างของหุ่นยนต์ในบทนี้จึงนำเอาชิ้นส่วนทางกลที่มีจำหน่ายโดยทั่วไปมาประยุกต์ใช้ โดยชิ้นส่วนดังกล่าวสามารถหาซื้อได้จากร้านค้าที่จำหน่ายอุปกรณ์อิเล็กทรอนิกส์ทั่วไป หรืออาจสั่งซื้อผ่านทางเว็บไซต์ ซึ่งสามารถค้นหาได้โดยใช้คำสำคัญ (Keyword) เช่น “อะไหล่และชิ้นส่วนหุ่นยนต์” หรือ “Robot parts” เป็นต้น

การพัฒนาหุ่นยนต์เคลื่อนที่ตามแสง

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

การพัฒนาหุ่นยนต์เคลื่อนที่ตามเส้นสีดำ

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

สำหรับผู้ที่สนใจหนังสือ ไมโครคอนโทรลเลอร์และการประยุกต์ใช้ในงานควบคุมหุ่นยนต์ สามารถสั่งซื้อได้ที่สำนักพิมพ์มหาวิทยาลัยนเรศวร และศูนย์หนังสือจุฬา ฯ ทุกสาขา

นักเขียน

รองศาสตราจารย์ ดร.พนัส นัถฤทธิ์