บทช่วยสอนระบบสมองกลฝังตัว: คืออะไร ประวัติและลักษณะเฉพาะ

ก่อนที่เราจะเรียนรู้ Embedded System มาเรียนรู้กันก่อน:

ระบบคืออะไร?

ระบบคือการจัดเตรียมที่ส่วนประกอบทั้งหมดทำงานตามกฎที่กำหนดไว้โดยเฉพาะ เป็นวิธีการจัด การทำงาน หรือการปฏิบัติงานอย่างหนึ่งหรือหลายอย่างตามแผนที่วางไว้

ระบบสมองกลฝังตัวคืออะไร?

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

ตัวอย่างของระบบสมองกลฝังตัว

เลเซอร์ปริ้นเตอร์

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

ในกรณีนี้ หน้าที่หลักของไมโครโปรเซสเซอร์คือการทำความเข้าใจข้อความและควบคุมหัวพิมพ์ในลักษณะที่จะปล่อยหมึกออกเมื่อจำเป็น

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

ประวัติความเป็นมาของระบบสมองกลฝังตัว

นี่คือเหตุการณ์สำคัญที่สำคัญในประวัติศาสตร์ของระบบสมองกลฝังตัว:

  • ในปี 1960 ระบบฝังตัวถูกใช้ครั้งแรกเพื่อพัฒนา Apollo Guidance System โดย Charles Stark Draper ที่ MIT
  • ในปี พ.ศ. 1965 ออโตเนติกส์ได้พัฒนา D-17B ซึ่งเป็นคอมพิวเตอร์ที่ใช้ในระบบนำทางขีปนาวุธมินิตแมน
  • ในปี พ.ศ. 1968 ได้มีการเปิดตัวระบบฝังตัวสำหรับรถยนต์เป็นครั้งแรก
  • Texas Instruments พัฒนาไมโครคอนโทรลเลอร์ตัวแรกในปี 1971
  • ในปี 1987 Wind River ระบบปฏิบัติการฝังตัวตัวแรก VxWorks เปิดตัว
  • Microsoft's Windows ฝัง CE ในปี 1996
  • ในช่วงปลายทศวรรษ 1990 ระบบ Linux แบบฝังตัวแรกปรากฏขึ้น
  • ตลาดฝังตัวมีมูลค่า 140 ล้านดอลลาร์ในปี 2013
  • นักวิเคราะห์คาดการณ์ว่าตลาดอุปกรณ์ฝังตัวจะมีมูลค่ามากกว่า 40 ล้านดอลลาร์ภายในปี 2030

ลักษณะของระบบฝังตัว

ลักษณะของระบบฝังตัว
ลักษณะของระบบฝังตัว

ต่อไปนี้เป็นลักษณะสำคัญของระบบฝังตัว:

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

คำศัพท์สำคัญที่ใช้ในระบบสมองกลฝังตัว

ในบทช่วยสอนระบบสมองกลฝังตัวนี้ เราจะกล่าวถึงคำศัพท์สำคัญบางคำที่ใช้ในระบบสมองกลฝังตัว

ความเชื่อถือได้

การวัดความน่าจะเป็นของการอยู่รอดของระบบเมื่อฟังก์ชันมีความสำคัญในระหว่างรันไทม์

ความผิดพลาด-ความอดทน

Fault-Tolerance คือความสามารถของระบบคอมพิวเตอร์ในการอยู่รอดเมื่อมีข้อผิดพลาดเกิดขึ้น

Real-Time

ระบบสมองกลฝังตัวต้องเป็นไปตามจังหวะเวลาและข้อจำกัดอื่นๆ ที่หลากหลาย สิ่งเหล่านี้ถูกกำหนดโดยพฤติกรรมธรรมชาติแบบเรียลไทม์ของโลกภายนอก

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

ความยืดหยุ่น

กำลังสร้างระบบที่มีโอกาสแก้ไขจุดบกพร่องในตัวซึ่งช่วยให้สามารถบำรุงรักษาจากระยะไกลได้

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

Portability

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

ไมโครคอนโทรลเลอร์คืออะไร?

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

ไมโครโปรเซสเซอร์คืออะไร?

ไมโครโปรเซสเซอร์เป็นอุปกรณ์เซมิคอนดักเตอร์ชิปตัวเดียว CPU ประกอบด้วยตัวนับโปรแกรม, ALU, ตัวชี้สแต็ก, รีจิสเตอร์การทำงาน, วงจรจับเวลานาฬิกา นอกจากนี้ยังรวมถึง ROM และ RAM, ตัวถอดรหัสหน่วยความจำ และพอร์ตอนุกรมและพอร์ตขนานจำนวนมาก

Archiการสอนระบบสมองกลฝังตัว

ด้านล่างนี้เป็นสถาปัตยกรรมพื้นฐานของระบบฝังตัว:

Archiการสอนระบบสมองกลฝังตัว
Archiการสอนระบบสมองกลฝังตัว

1) เซนเซอร์

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

2) ตัวแปลงโฆษณา

ตัวแปลง AD (ตัวแปลงแอนะล็อกเป็นดิจิทัล) ช่วยให้คุณแปลงสัญญาณแอนะล็อกที่เซ็นเซอร์ส่งให้เป็นสัญญาณดิจิทัล

3) หน่วยความจำ

หน่วยความจำใช้เพื่อจัดเก็บข้อมูล ระบบสมองกลฝังตัวส่วนใหญ่ประกอบด้วยเซลล์หน่วยความจำสองเซลล์ 1) ระเหยได้ 2) หน่วยความจำไม่ระเหย

4) โปรเซสเซอร์และ ASIC

ส่วนประกอบนี้ประมวลผลข้อมูลเพื่อวัดเอาต์พุตและจัดเก็บไว้ในหน่วยความจำ

5) ตัวแปลง DA

ตัวแปลง DA (ตัวแปลงดิจิทัลเป็นอนาล็อก) ช่วยให้คุณแปลงข้อมูลดิจิทัลที่ป้อนโดยโปรเซสเซอร์ไปเป็นข้อมูลอะนาล็อก

6) แอคชูเอเตอร์

แอคชูเอเตอร์ช่วยให้คุณสามารถเปรียบเทียบเอาต์พุตที่กำหนดโดยตัวแปลง DA กับเอาต์พุตจริงที่จัดเก็บไว้ในนั้น และจัดเก็บเอาต์พุตที่ได้รับอนุมัติไว้ในหน่วยความจำ

ประเภทของระบบสมองกลฝังตัว

Embedded Systems มี 3 ประเภท ได้แก่

  • ขนาดเล็ก
  • ขนาดกลาง
  • ซับซ้อน
ประเภทของระบบสมองกลฝังตัว

ประเภทของระบบสมองกลฝังตัว

ระบบสมองกลฝังตัวขนาดเล็ก

ระบบฝังตัวนี้สามารถออกแบบได้โดยใช้ไมโครคอนโทรลเลอร์ 8 หรือ 16 บิตตัวเดียว โดยสามารถใช้งานได้ด้วยความช่วยเหลือของแบตเตอรี่ สำหรับการพัฒนาระบบฝังตัวขนาดเล็ก โปรแกรมแก้ไข โปรแกรมประกอบ (IDE) และโปรแกรมประกอบแบบครอสแอสเซมเบลอร์ ถือเป็นเครื่องมือที่สำคัญที่สุด เครื่องมือการเขียนโปรแกรม.

ระบบสมองกลฝังตัวขนาดกลาง

ระบบฝังตัวประเภทนี้ได้รับการออกแบบโดยใช้ไมโครคอนโทรลเลอร์ 16 หรือ 32 บิต ระบบเหล่านี้มีทั้งความซับซ้อนของฮาร์ดแวร์และซอฟต์แวร์ C, C++, Javaและเครื่องมือวิศวกรรมซอร์สโค้ด ฯลฯ ถูกนำมาใช้เพื่อพัฒนาระบบฝังตัวประเภทนี้

ระบบฝังตัวที่ซับซ้อน

ระบบฝังตัวประเภทนี้มีความซับซ้อนของฮาร์ดแวร์และซอฟต์แวร์มากมาย คุณอาจต้องใช้ IPS, ASIPS, PLA, โปรเซสเซอร์การกำหนดค่า หรือโปรเซสเซอร์ที่ปรับขนาดได้ สำหรับการพัฒนาระบบนี้ คุณต้องมีการออกแบบร่วมกันของฮาร์ดแวร์และซอฟต์แวร์ รวมถึงส่วนประกอบที่ต้องรวมกันในระบบขั้นสุดท้าย

ความแตกต่างระหว่างไมโครโปรเซสเซอร์และไมโครคอนโทรลเลอร์

เรียนรู้ความแตกต่างระหว่าง ไมโครโปรเซสเซอร์และไมโครคอนโทรลเลอร์

ไมโครโปรเซสเซอร์ ไมโครคอนโทรลเลอร์
ใช้บล็อกการทำงาน เช่น รีจิสเตอร์, ALU, ไทม์มิ่ง และหน่วยควบคุม ใช้บล็อคฟังก์ชันของไมโครโปรเซสเซอร์ เช่น RAM, ไทม์เมอร์, พาราแอล I/O, ADC และ DAC
ในไมโครโปรเซสเซอร์ คำสั่งการจัดการบิตจะน้อยกว่า หนึ่งหรือสองประเภทเท่านั้น ไมโครคอนโทรลเลอร์มีคำสั่งการจัดการบิตหลายประเภท
นำเสนอการเคลื่อนย้ายโค้ดและข้อมูลอย่างรวดเร็วระหว่างหน่วยความจำภายนอกและไมโครโปรเซสเซอร์ เสนอการเคลื่อนไหวที่รวดเร็วของโค้ดและข้อมูลในไมโครคอนโทรลเลอร์
ช่วยคุณในการออกแบบระบบคอมพิวเตอร์ดิจิทัลอเนกประสงค์ ช่วยคุณออกแบบระบบเฉพาะแอปพลิเคชันโดยเฉพาะ
ช่วยให้คุณสามารถทำงานหลายอย่างพร้อมกันได้ เป็นระบบที่มุ่งเน้นงานเดียว
ในระบบไมโครโปรเซสเซอร์ คุณสามารถเลือกจำนวนหน่วยความจำหรือพอร์ต I/O ที่ต้องการได้ ในระบบไมโครคอนโทรลเลอร์ หมายเลขคงที่สำหรับหน่วยความจำหรือ I/O ทำให้ไมโครคอนโทรลเลอร์เหมาะอย่างยิ่งสำหรับงานเฉพาะด้าน
เสนอการรองรับหน่วยความจำภายนอกและพอร์ต I/O ซึ่งทำให้ระบบมีน้ำหนักมากขึ้นและมีค่าใช้จ่ายมากขึ้น ระบบประเภทนี้มีน้ำหนักเบาและราคาถูกกว่าเมื่อเปรียบเทียบกับไมโครโปรเซสเซอร์
อุปกรณ์ภายนอกต้องการพื้นที่มากขึ้นและการใช้พลังงานก็ค่อนข้างสูง ระบบประเภทนี้ใช้พื้นที่น้อยกว่าและใช้พลังงานต่ำมากเช่นกัน

การประยุกต์ใช้ระบบสมองกลฝังตัว

ต่อไปนี้เป็นแอปพลิเคชันที่สำคัญของระบบฝังตัว:

วิทยาศาสตร์หุ่นยนต์

  • ยานพาหนะภาคพื้นดิน
  • โดรน
  • ยานพาหนะใต้น้ำ
  • หุ่นยนต์เพื่อการอุตสาหกรรม

บริการทางการแพทย์

  • เครื่องฟอกไต
  • ปั๊มแช่
  • เครื่องตรวจหัวใจ
  • อุปกรณ์เทียม

ยานยนต์

  • ระบบควบคุม
  • ระบบจุดระเบิด
  • ระบบเบรก

ระบบเครือข่าย

  • เราเตอร์
  • ฮับ
  • เกตเวย์
  • เครื่องมืออิเล็กทรอนิกส์

อุปกรณ์ภายในบ้าน

  • ทีวี
  • Digiนาฬิกาปลุก
  • แอร์
  • เครื่องเล่นดีวีดี
  • กล้อง

รถยนต์

  • การฉีดน้ำมันเชื้อเพลิง
  • ระบบแสงสว่าง
  • ล็อคประตู
  • ถุงลมนิรภัย
  • Windows
  • ระบบช่วยจอดรถ
  • สัญญาณกันขโมย Whippers Motion

ควบคุมอุตสาหกรรม

  • หุ่นยนต์
  • ระบบควบคุม
  • ขีปนาวุธ
  • เครื่องปฏิกรณ์นิวเคลียร์
  • สถานีอวกาศ
  • บริการรถรับส่ง

ข้อดีของระบบสมองกลฝังตัว

นี่คือข้อดี/ประโยชน์ของการใช้ระบบสมองกลฝังตัว:

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

ข้อเสียของระบบสมองกลฝังตัว

นี่คือข้อเสีย/ข้อเสียที่สำคัญของการใช้ระบบสมองกลฝังตัว

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

สรุป

  • ระบบคือการจัดเตรียมที่ส่วนประกอบทั้งหมดประกอบกันทำงานตามกฎที่กำหนดเฉพาะ
  • Embedded System คำจำกัดความ: ระบบสมองกลฝังตัวหมายถึงการรวมกันของซอฟต์แวร์คอมพิวเตอร์และฮาร์ดแวร์ซึ่งได้รับการแก้ไขในความสามารถหรือตั้งโปรแกรมได้
  • ตัวอย่างของระบบฝังตัวคือเครื่องพิมพ์เลเซอร์ที่จัดการด้านต่างๆ ของการพิมพ์
  • ในปี 1960 ระบบฝังตัวถูกใช้ครั้งแรกเพื่อพัฒนา Apollo Guidance System โดย Charles Stark Draper ที่ MIT
  • ระบบสมองกลฝังตัวต้องการประสิทธิภาพแบบเรียลไทม์
  • การวัดความน่าเชื่อถือของความน่าจะเป็นในการอยู่รอดของระบบเมื่อฟังก์ชันมีความสำคัญในระหว่างรันไทม์
  • Fault-Tolerance คือความสามารถของระบบคอมพิวเตอร์ในการอยู่รอดเมื่อมีข้อผิดพลาดเกิดขึ้น
  • ระบบสมองกลฝังตัวต้องเป็นไปตามจังหวะเวลาและข้อจำกัดอื่นๆ ที่หลากหลาย
  • ความยืดหยุ่นคือการสร้างระบบที่มีโอกาสแก้ไขจุดบกพร่องในตัวซึ่งช่วยให้สามารถบำรุงรักษาจากระยะไกลได้
  • ความสามารถในการพกพาคือการวัดความง่ายในการใช้ซอฟต์แวร์ฝังตัวเดียวกันในสภาพแวดล้อมต่างๆ
  • ไมโครคอนโทรลเลอร์เป็นหน่วย VLSI แบบชิปตัวเดียวซึ่งเรียกอีกอย่างว่าไมโครคอมพิวเตอร์
  • ไมโครโปรเซสเซอร์เป็นอุปกรณ์เซมิคอนดักเตอร์ชิปตัวเดียว CPU ประกอบด้วยตัวนับโปรแกรม, ALU, ตัวชี้สแต็ก, รีจิสเตอร์การทำงาน, วงจรจับเวลานาฬิกา
  • Archiโครงสร้างของระบบสมองกลฝังตัวประกอบด้วย: เซ็นเซอร์, ตัวแปลง AD, หน่วยความจำ, โปรเซสเซอร์และ ASIC, ตัวแปลง DA และแอคทูเอเตอร์
  • ระบบสมองกลฝังตัวสามประเภท ได้แก่: 1) ขนาดเล็ก 2) ขนาดกลาง และ 3) ซับซ้อน
  • ความแตกต่างที่สำคัญระหว่างในไมโครโปรเซสเซอร์และไมโครคอนโทรลเลอร์ก็คือ ในไมโครโปรเซสเซอร์คำสั่งการจัดการบิตจะน้อยกว่าในขณะที่ไมโครคอนโทรลเลอร์มีคำสั่งการจัดการบิตหลายประเภท
  • การประยุกต์ใช้ระบบฝังตัวประกอบด้วย: 1) วิทยาศาสตร์หุ่นยนต์ 2) การแพทย์ 3) ยานยนต์ 3) ระบบเครือข่าย 4) อุปกรณ์ในบ้าน 5) รถยนต์ และ 6) การควบคุมอุตสาหกรรม
  • ข้อดีที่สำคัญของระบบสมองกลฝังตัวคือสามารถครอบคลุมสภาพแวดล้อมได้หลากหลาย
  • ข้อเสียเปรียบที่สำคัญของ Embedded System คือต้องใช้เวลาในการออกสู่ตลาดนาน