วันศุกร์ที่ 2 มีนาคม พ.ศ. 2561

ระบบสมองกลฝังตัว (Embedded system)

ระบบฝังตัว” หรือ “สมองกลฝังตัว” (Embedded system) คือระบบประมวลผล ที่ใช้ชิปหรือไมโครโพรเซสเซอร์ที่ออกแบบมาโดยเฉพาะ เปรียบเสมือนคอมพิวเตอร์ขนาดจิ๋วที่ฝังไว้ในอุปกรณ์ต่างๆ เช่น เครื่องใช้ไฟฟ้า และเครื่องมืออิเล็กทรอนิกส์ เป็นต้น เพื่อเพิ่มความฉลาด ความสามารถให้กับอุปกรณ์เหล่านั้น โดยจะทำงานตามคำสั่ง คือ โปรแกรม หรืออัลกอริทึมที่เขียนลงไว้ในชิปหรือไมโครโพรเซสเซอร์นั้น
ระบบฝังตัวถูกนำมาใช้กันอย่างแพร่หลายในงานด้านต่างๆ เช่น เทคโนโลยีอิเล็กทรอนิกส์ เทคโนโลยีซอฟต์แวร์ เทคโนโลยีฮาร์ดแวร์ เทคโนโลยีเครือข่ายเน็ตเวิร์ก เทคโนโลยีด้านการสื่อสาร เป็นต้น
ระบบปฏิบัติการและภาษาที่ใช้สำหรับระบบสมองกลฝังตัว
การพัฒนาระบบสมองกลฝังตัว อาจจะมีการใช้ระบบปฏิบัติการเป็นแกนหลักในการพัฒนา หรือไม่มีการใช้ในการพัฒนาก็ได้ ระบบปฏิบัติการมีหลายประเภทมากตั้งแต่ RTOS , ucOS-II จนไปถึงระบบปฏิบัติการที่มีขนาดใหญ่ขึ้นมาเช่น Linux, Windows CE จนถึงระบบปฏิบัติการสมัยใหม่ที่มีการพัฒนา เช่น MeeGo Android
ปัจจุบันมีภาษาโปรแกรมต่างๆ มากมายที่ใช้ในการพัฒนาระบบสมองกลฝังตัว เช่น ภาษา assembly ภาษา C ,C++ หรือภาษาระดับสูงที่เป็นระบบปฏิบัติการ เช่น JAVA หรือ Python โดยผู้ใช้สามารถเลือกใช้ภาษาได้ตามความถนัด เชี่ยวชาญ และความเหมาะสม
เราจะมาว่าถึงมันคืออะไรและทำงานอย่างไรกัน
         พูดง่ายๆมันก็คือ อุปกรณ์ชิป ที่สามารถทำงานด้วยตัวเองได้โดยไม่ต้องมีอุปกรณ์มากมาย มีความสามารถในการทำงานเหมื่อนกลับคอมพิวเตอร์เครื่องหนึ่ง แต่จะมีหนวยความจำน้อย และกินไฟน้อยกว่า สามารถนำไปใช้กับชิ้นงานได้หลายอย่าง 
         ในปัจจุบัน มีค่ายหลายค่ายที่ทำการผลิดชิปตัวนี้ ใช้เรียกกันและอาจจะมีบางคนเคยได้ยินก็จะมี PIC ,AVR ,ARM และ MCU ลักษณะของขาอุปกรณ์และการนำไปใช้งานนั้นเหมือนกัน
ภายในไมโครคอนโทรลเลอร์ ดังนี้
1. ซีพียู (หน่วยประมวลผล : CPU)
2. หน่วยความจำชั่วคราว (RAM)
3. หน่วยความจำถาวร (ROM)
4. ขาวงจรขนานทั้งอนาลอคและดิจิตอล ในการรับส่งข้อมูล(Paralled digital and analog I/O)

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

เราสามารถเพิ่มคำสั่งในการควบคุม Microcontroller ได้ด้วยการเขียนโปรแกรม เช่น
ภาษา Assemble(Low Level) เขียนโปรแกรมหลายบรรทัด แต่การทำงานของ micro controller มีความเร็วสุดเพราะถูกคอมไพล์เป็นภาษาเครื่อง
ภาษา C(Middle Level)เขียน โปรแกรมจำนวนน้อยบรรทัดกว่า ภาษา Assemble ทำงานจะช้ากว่าเป็นวินาที แต่ปัจจุบันอุปกรณ์ได้พัฒนาจนมีความเร็วในการทำงานของ micro controllerให้ทำงานรวดเร็วจนเกือบเทียบเท่า ภาษา Assemble แล้ว
ภาษาสแตมป์ จัดเป็นภาษาที่ช่วยให้การโปรแกรมอุปกรณ์ด้วยภาษาที่คนส่วนมากพื้นความรู้ อยุ่แล้วมาต่อยอด ในการพัฒนาระบบไมโครคอนโทลเลอร์ ด้วยตระกูล PIC(Stamp)
refe ;morasweb.org , pic-m-robot.blogspot.com ,aimagin.com