การออกแบบการเชื่อมต่อ Wi-Fi สำหรับอุปกรณ์อินเทอร์เน็ตของสรรพสิ่ง (Embedded IoT)

เรียนรู้วิธีสร้างระบบ IoT แบบฝังตัวที่มีประสิทธิภาพ พร้อมการเชื่อมต่อไร้สายที่เชื่อถือได้

การออกแบบการเชื่อมต่อ Wi-Fi สำหรับอุปกรณ์อินเทอร์เน็ตของสรรพสิ่ง (Embedded IoT)

ปัจจุบัน ระบบสมองกลฝังตัว (Embedded Systems) ที่ใช้ในแอปพลิเคชันหลากหลายประเภท รวมถึงเครื่องใช้ไฟฟ้า ระบบอัตโนมัติ อุปกรณ์ทางการแพทย์ ระบบความบันเทิง และระบบจัดการพลังงาน ต่างมีการใช้งานหรือมีศักยภาพที่จะใช้อินเทอร์เฟซการเชื่อมต่อแบบไร้สาย

เช่นเดียวกับการเลือกใช้กลไกการเชื่อมต่อแบบใช้สายที่มีอยู่ ระบบเหล่านี้ยังสามารถเลือกใช้เทคโนโลยีการสื่อสารไร้สายได้หลายรูปแบบ Zigbee, Bluetooth และกลไกการสื่อสารไร้สายแบบเฉพาะ (Proprietary Wireless) ถูกนำมาใช้งานในระบบต่าง ๆ อย่างแพร่หลาย อย่างไรก็ตาม ปัจจุบันมีแนวโน้มเพิ่มขึ้นในการนำมาตรฐาน 802.11 ที่ใช้ IP เป็นพื้นฐานมาใช้

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

ในบทความนี้ เราจะพิจารณาว่าปัจจัยใดบ้างที่ช่วยให้การผสานรวม Wi-Fi ทำได้ง่ายขึ้น รวมถึงวิธีที่นักออกแบบระบบสมองกลฝังตัวสามารถพัฒนาระบบที่รองรับการเชื่อมต่อ Wi-Fi ได้อย่างสะดวก เราจะศึกษาแนวทางการผสานรวมทั้งด้านฮาร์ดแวร์และซอฟต์แวร์ ตลอดจนการปรับแต่งพารามิเตอร์ของ Wi-Fi เพื่อให้ได้การเชื่อมต่อที่มีความเสถียรและประหยัดพลังงานสำหรับแอปพลิเคชันเหล่านี้

การสร้างอุปกรณ์ Internet of Things (IoT) สำหรับวัตถุประสงค์เฉพาะ

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

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

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

การผสานรวม Wi-Fi เข้ากับอุปกรณ์สมองกลฝังตัวยังคงเป็นแนวโน้มที่ค่อนข้างใหม่ นักออกแบบจึงต้องพิจารณาปัจจัยใหม่หลายประการ ทั้งด้านฮาร์ดแวร์ ซอฟต์แวร์ และองค์ประกอบในระดับระบบ เช่น การรับรองมาตรฐานตามข้อกำหนดของหน่วยงานกำกับดูแล

การผสานรวมฮาร์ดแวร์

ปัจจัยที่เกี่ยวข้องกับการผสานรวมฮาร์ดแวร์ประกอบด้วยขนาด แรงดันไฟฟ้าในการทำงาน การเลือกใช้อุปกรณ์ประกอบ ข้อกำหนดด้านกฎระเบียบ และการปรับเทียบ (Calibration) เป็นต้น ด้วยข้อพิจารณาเหล่านี้ วิธีที่ได้รับความนิยมมากที่สุดในการเพิ่มความสามารถในการเชื่อมต่อ WLAN ให้กับระบบสมองกลฝังตัว คือการผสานรวมโมดูล WLAN แบบครบวงจรในตัว (Self-contained WLAN Module) หรือชิปที่มีการรวมฟังก์ชันต่าง ๆ ไว้ในระดับสูง รูปที่ 1 ด้านล่างแสดงองค์ประกอบหลักของระบบย่อย Wi-Fi ซึ่งถูกรวมไว้ในรูปแบบชิปหรือโมดูล

รูปที่ 1 องค์ประกอบของระบบย่อย Wi-Fi

โดยทั่วไป การออกแบบฮาร์ดแวร์ WLAN จะใช้แรงดันไฟฟ้าหลายระดับ และมักประกอบด้วยวงจรจัดการพลังงานเพื่อลดการใช้พลังงาน การผสานรวมที่ง่ายจึงจำเป็นต้องให้โมดูลสามารถรับแรงดันไฟฟ้ามาตรฐานเพียงระดับเดียวได้

หน่วยจัดการพลังงาน (Power Management Unit) ที่อยู่ภายในโมดูลจะทำหน้าที่สร้างแรงดันไฟฟ้าระดับต่าง ๆ ที่จำเป็นอย่างมีประสิทธิภาพ โดยมักใช้ตัวแปลงไฟฟ้าแบบสวิตชิ่ง DC-DC หนึ่งตัวหรือมากกว่า ตามด้วยตัวควบคุมแรงดันไฟฟ้าเชิงเส้นแบบแรงดันตกคร่อมต่ำ (Low-Dropout Linear Regulators: LDO) นอกจากนี้ หน่วยจัดการพลังงานยังควบคุมเส้นทางการจ่ายไฟภายในแต่ละส่วนอย่างละเอียด เพื่อจ่ายพลังงานให้กับส่วนต่าง ๆ ของอุปกรณ์ ซึ่งช่วยประหยัดพลังงานได้สูงสุดผ่านการเลือกเปิดหรือปิดวงจรบางส่วนตามความต้องการของรูปแบบการทำงานในแต่ละช่วงเวลา

อุปกรณ์ WLAN ยังต้องใช้สัญญาณนาฬิกาและสัญญาณความถี่อ้างอิงหลายรายการในการทำงาน ภายในตัวรับส่งสัญญาณ RF (RF Transceiver) จะมีวงจรสังเคราะห์ความถี่ (Frequency Synthesizer) ซึ่งใช้สัญญาณความถี่อ้างอิงที่มีเสถียรภาพและเป็นไปตามข้อกำหนดของมาตรฐาน โดยต้องมีความแม่นยำของความถี่ที่ 20 ppm หรือดีกว่า

บล็อกเบสแบนด์ดิจิทัล (Digital Baseband: BBP) และบล็อกควบคุมการเข้าถึงสื่อ (Media Access Control: MAC) จะใช้สัญญาณนาฬิกาที่มีความถี่แตกต่างกัน โดย BBP ใช้สัญญาณนาฬิกาที่เป็นจำนวนเท่าของ 40 MHz และ 44 MHz ซึ่งสัมพันธ์กับวิธีมาตรฐานในการสร้างรูปคลื่น OFDM หรือ DSSS/CCK ที่ใช้ในการส่งสัญญาณ อีกครั้งหนึ่ง เพื่อให้การผสานรวมทำได้ง่ายขึ้น แนวทางที่เหมาะสมที่สุดคือการป้อนสัญญาณความถี่อ้างอิงเพียงสัญญาณเดียวเข้าสู่โมดูล จากนั้นให้โมดูลใช้วงจร PLL หนึ่งตัวหรือมากกว่าเพื่อสร้างความถี่สัญญาณนาฬิกาอื่น ๆ ที่จำเป็น และใช้สัญญาณอ้างอิงเดียวกันนี้ในวงจรสังเคราะห์ความถี่ด้วย

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

ระบบ Wi-Fi แบบสมองกลฝังตัวใช้โหมดประหยัดพลังงาน (Power Save Modes) ที่กำหนดไว้ในโปรโตคอล WLAN อย่างแพร่หลาย โดยระบบสามารถเข้าสู่สถานะพลังงานต่ำที่ไม่รองรับการส่งหรือรับข้อมูล และตื่นขึ้นตามช่วงเวลาที่กำหนดเพื่อตรวจสอบว่ามีแพ็กเก็ตที่รอการส่งหรือรับอยู่หรือไม่ ในช่วงเวลาพักหรือช่วงที่ไม่มีการทำงานระหว่างการตื่นขึ้นแต่ละครั้ง โมดูล WLAN จะตัดการจ่ายพลังงานให้กับวงจรภายในส่วนใหญ่

แม้ว่า WLAN จะใช้ย่านความถี่คลื่นวิทยุที่ไม่ต้องมีใบอนุญาต (Unlicensed Spectrum) แต่คุณลักษณะในการส่งสัญญาณจริงยังคงถูกจำกัดด้วยข้อกำหนดด้านกฎระเบียบหลายประการ ตัวอย่างเช่น ข้อกำหนดที่กำหนดโดยคณะกรรมการกลางกำกับดูแลกิจการสื่อสารของสหรัฐอเมริกา (Federal Communications Commission: FCC)

ข้อกำหนดเหล่านี้ครอบคลุมช่องสัญญาณหรือความถี่ที่สามารถใช้งานได้ กำลังส่งสูงสุดที่อนุญาตในแต่ละช่องสัญญาณ และคุณลักษณะของสเปกตรัมสัญญาณที่ส่งออกไป โดย FCC กำหนดข้อกำหนดแยกกันสำหรับอุปกรณ์ที่แผ่คลื่นโดยเจตนา (Intentional Radiators) และอุปกรณ์ที่แผ่คลื่นโดยไม่เจตนา (Unintentional Radiators)

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

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

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

การผสานรวมซอฟต์แวร์

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

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

อย่างไรก็ตาม ในอุปกรณ์สมองกลฝังตัว มักให้ความสำคัญกับอินเทอร์เฟซที่ใช้พลังงานต่ำ เช่น SDIO, Serial Peripheral Interface (SPI) หรือ UART โดย SDIO รองรับอัตราการรับส่งข้อมูลสูง และถูกนำมาใช้ในระบบสมองกลฝังตัวระดับค่อนข้างสูง โดยเฉพาะระบบที่ต้องถ่ายโอนข้อมูลปริมาณมาก เช่น วิดีโอหรือรูปภาพ ไมโครคอนโทรลเลอร์ระดับสูงมักมีอินเทอร์เฟซ SDIO ให้ใช้งาน และเกือบทั้งหมดจะทำงานร่วมกับระบบปฏิบัติการที่ติดตั้งอยู่ภายใน ในขณะที่ไมโครคอนโทรลเลอร์ทั่วไปแบบ 16 บิตหรือ 8 บิตมักไม่มีอินเทอร์เฟซดังกล่าว

ในกรณีเหล่านี้ นักออกแบบระบบสมองกลฝังตัวจะเลือกใช้งานระหว่าง SPI และอินเทอร์เฟซอนุกรม UART โดย SPI เป็นอินเทอร์เฟซอนุกรมที่ใช้สัญญาณนาฬิกาแบบซิงโครนัสในการรับส่งข้อมูล ซึ่งสามารถใช้ถ่ายโอนข้อมูลเป็นบล็อกในรูปแบบที่จัดการข้อมูลเป็นไบต์ โดยมีลำดับเป็น "แอดเดรสตามด้วยข้อมูล" (Address Followed by Data) โดยทั่วไป อินเทอร์เฟซนี้จะได้รับการกำหนดค่าผ่านเฟิร์มแวร์ ซึ่งอาจมีความแตกต่างกันเล็กน้อยระหว่างไมโครคอนโทรลเลอร์แต่ละประเภท

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

แม้ว่าจะสามารถใช้อัตราบอด (Baud Rate) ได้สูงถึงหลาย Mbps แต่การใช้งานส่วนใหญ่จะจำกัดอยู่ที่ 115.2 kbps หรือต่ำกว่า รูปแบบ UART รองรับการส่งคำสั่งควบคุมหรือข้อมูลผ่าน "AT Commands" หรือสัญญาณบ่งชี้พิเศษ ในแอปพลิเคชันที่กำลังเกิดขึ้นใหม่ โดยเฉพาะในเครื่องใช้ไฟฟ้าหรืออุปกรณ์ที่กำลังเปลี่ยนจากการเชื่อมต่อแบบใช้สายอย่างง่ายหรือการเชื่อมต่อไร้สายแบบเฉพาะ ไปสู่ Wi-Fi ที่เป็นไปตามมาตรฐาน อินเทอร์เฟซ UART อาจเป็นตัวเลือกที่ผสานรวมได้ง่ายที่สุด

การเพิ่มอินเทอร์เฟซ Wi-Fi มาตรฐานเข้าไปในระบบสมองกลฝังตัวเกี่ยวข้องกับการผสานรวมซอฟต์แวร์ที่ค่อนข้างซับซ้อน เนื่องจากส่วนสำคัญของ WLAN Protocol Stack ถูกนำไปใช้งานในรูปแบบซอฟต์แวร์หรือเฟิร์มแวร์ และการถ่ายโอนแพ็กเก็ตผ่านเครือข่ายมาตรฐานจำเป็นต้องมี TCP/IP Networking Stack

นอกจากนี้ การจัดการการเชื่อมต่อไร้สายและการตรวจสอบสิทธิ์ (Authentication) ยังต้องอาศัยซอฟต์แวร์เฉพาะทางอีกด้วย รูปที่ 2 แสดงองค์ประกอบซอฟต์แวร์ของอินเทอร์เฟซ Wi-Fi ตามลำดับชั้น โดยสมมติให้มีการแบ่งหน้าที่การทำงานแบบดั้งเดิมระหว่างอุปกรณ์ WLAN ซึ่งมีหน่วยประมวลผลฝังตัวของตัวเองสำหรับทำงานด้าน MAC และไมโครคอนโทรลเลอร์ฝั่งโฮสต์ (Host Microcontroller) ที่ติดตั้งระบบปฏิบัติการ

รูปที่ 2 องค์ประกอบซอฟต์แวร์ของระบบ WLAN

สถาปัตยกรรมนี้จะมีส่วนหนึ่งของ WLAN Stack รวมถึง Networking Stack ทั้งหมด ตลอดจนระบบจัดการการเชื่อมต่อ ทำงานอยู่บนหน่วยประมวลผลฝั่งโฮสต์

การเชื่อมต่ออุปกรณ์ Internet of Things แบบไร้สายอย่างง่ายดาย

อุปกรณ์รุ่นใหม่ที่ประกอบกันเป็น Internet of Things (IoT) อาจมีลักษณะแตกต่างจากอุปกรณ์รุ่นเดิมที่ใช้ WLAN เช่น แล็ปท็อปหรือ PDA อยู่มาก อุปกรณ์เหล่านี้ ได้แก่ เซนเซอร์ระยะไกล ระบบควบคุมอุตสาหกรรม อุปกรณ์วินิจฉัยทางการแพทย์ และเครื่องใช้ไฟฟ้าอัจฉริยะ อาจใช้ไมโครคอนโทรลเลอร์ที่ได้รับการปรับให้เหมาะสมกับแอปพลิเคชันของตน มีระบบปฏิบัติการขนาดเล็กหรือไม่มีระบบปฏิบัติการเลย มีหน่วยความจำจำกัด ไม่มีส่วนติดต่อผู้ใช้แบบโต้ตอบสำหรับกำหนดค่า WLAN และมีข้อกำหนดด้านอายุการใช้งานแบตเตอรี่ที่เข้มงวด

การผสานรวมอินเทอร์เฟซ Wi-Fi เข้ากับระบบเหล่านี้ไม่ควรส่งผลกระทบอย่างมีนัยสำคัญต่อการกำหนดค่าระบบและทรัพยากรที่ใช้งานเท่านั้น แต่ยังต้องลดผลกระทบต่อกระบวนการออกแบบโดยรวมด้วย

รูปที่ 3 ชุดประเมินผล Cypress PSoC พร้อมการ์ด Wi-Fi ที่เชื่อมต่ออยู่

ตัวอย่างเช่น ลองพิจารณาการออกแบบระบบสมองกลฝังตัวที่พัฒนาขึ้นโดยใช้โปรเซสเซอร์ PSoC จาก Cypress ชุดประเมินผลที่ใช้งานง่ายแสดงไว้ในรูปที่ 3 ด้านบน และภาพหน้าจอของสภาพแวดล้อมการพัฒนาก็แสดงไว้ในรูปที่ 4 เช่นกัน

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

รูปที่ 4 ภาพหน้าจอของสภาพแวดล้อมการพัฒนา PSoC Creator

การเพิ่มความสามารถในการเชื่อมต่อ Wi-Fi ให้กับการออกแบบที่ใช้โปรเซสเซอร์ PSoC สามารถทำได้ง่ายขึ้นด้วยการใช้ชุดพัฒนาที่เหมาะสม เช่น ชุด Wi-Fi Expansion Board จาก Redpine Signals

ในขั้นตอนการพัฒนาหรือการสร้างต้นแบบของโครงการออกแบบระบบสมองกลฝังตัว สามารถเสียบชุด Wi-Fi เข้ากับพอร์ตขยายของชุด PSoC ได้ ดังแสดงในรูปที่ 5 จากนั้นจึงโหลดคอมโพเนนต์ที่จัดเตรียมโดย Redpine เข้าสู่ PSoC Creator และกำหนดค่าคุณสมบัติต่าง ๆ ให้ตรงกับเครือข่าย Wi-Fi ที่ต้องการใช้งาน การเพิ่มไดรเวอร์ Wi-Fi เข้าไปในการกำหนดค่าซอฟต์แวร์ทำได้อย่างง่ายดาย เพียงใช้วิธีลากและวาง (Drag-and-Drop) ภายในสภาพแวดล้อมการพัฒนา Creator

รูปที่ 5 คอมโพเนนต์ Redpine Wi-Fi ใน PSoC Creator

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

แนวทางนี้ทำให้การผสานรวมความสามารถในการเชื่อมต่อ Wi-Fi เข้ากับการออกแบบระบบสมองกลฝังตัวทำได้ง่ายไม่ต่างจากการใช้อินเทอร์เฟซแบบใช้สายทั่วไปที่ไม่ซับซ้อน

บทความที่เกี่ยวข้อง

การออกแบบการเชื่อมต่อ Wi-Fi สำหรับอุปกรณ์อินเทอร์เน็ตของสรรพสิ่ง (Embedded IoT)

เรียนรู้วิธีสร้างระบบ IoT แบบฝังตัวที่มีประสิทธิภาพ พร้อมการเชื่อมต่อไร้สายที่เชื่อถือได้

นักเขียนบทความ
by 
นักเขียนบทความ
การออกแบบการเชื่อมต่อ Wi-Fi สำหรับอุปกรณ์อินเทอร์เน็ตของสรรพสิ่ง (Embedded IoT)

การออกแบบการเชื่อมต่อ Wi-Fi สำหรับอุปกรณ์อินเทอร์เน็ตของสรรพสิ่ง (Embedded IoT)

เรียนรู้วิธีสร้างระบบ IoT แบบฝังตัวที่มีประสิทธิภาพ พร้อมการเชื่อมต่อไร้สายที่เชื่อถือได้

ปัจจุบัน ระบบสมองกลฝังตัว (Embedded Systems) ที่ใช้ในแอปพลิเคชันหลากหลายประเภท รวมถึงเครื่องใช้ไฟฟ้า ระบบอัตโนมัติ อุปกรณ์ทางการแพทย์ ระบบความบันเทิง และระบบจัดการพลังงาน ต่างมีการใช้งานหรือมีศักยภาพที่จะใช้อินเทอร์เฟซการเชื่อมต่อแบบไร้สาย

เช่นเดียวกับการเลือกใช้กลไกการเชื่อมต่อแบบใช้สายที่มีอยู่ ระบบเหล่านี้ยังสามารถเลือกใช้เทคโนโลยีการสื่อสารไร้สายได้หลายรูปแบบ Zigbee, Bluetooth และกลไกการสื่อสารไร้สายแบบเฉพาะ (Proprietary Wireless) ถูกนำมาใช้งานในระบบต่าง ๆ อย่างแพร่หลาย อย่างไรก็ตาม ปัจจุบันมีแนวโน้มเพิ่มขึ้นในการนำมาตรฐาน 802.11 ที่ใช้ IP เป็นพื้นฐานมาใช้

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

ในบทความนี้ เราจะพิจารณาว่าปัจจัยใดบ้างที่ช่วยให้การผสานรวม Wi-Fi ทำได้ง่ายขึ้น รวมถึงวิธีที่นักออกแบบระบบสมองกลฝังตัวสามารถพัฒนาระบบที่รองรับการเชื่อมต่อ Wi-Fi ได้อย่างสะดวก เราจะศึกษาแนวทางการผสานรวมทั้งด้านฮาร์ดแวร์และซอฟต์แวร์ ตลอดจนการปรับแต่งพารามิเตอร์ของ Wi-Fi เพื่อให้ได้การเชื่อมต่อที่มีความเสถียรและประหยัดพลังงานสำหรับแอปพลิเคชันเหล่านี้

การสร้างอุปกรณ์ Internet of Things (IoT) สำหรับวัตถุประสงค์เฉพาะ

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

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

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

การผสานรวม Wi-Fi เข้ากับอุปกรณ์สมองกลฝังตัวยังคงเป็นแนวโน้มที่ค่อนข้างใหม่ นักออกแบบจึงต้องพิจารณาปัจจัยใหม่หลายประการ ทั้งด้านฮาร์ดแวร์ ซอฟต์แวร์ และองค์ประกอบในระดับระบบ เช่น การรับรองมาตรฐานตามข้อกำหนดของหน่วยงานกำกับดูแล

การผสานรวมฮาร์ดแวร์

ปัจจัยที่เกี่ยวข้องกับการผสานรวมฮาร์ดแวร์ประกอบด้วยขนาด แรงดันไฟฟ้าในการทำงาน การเลือกใช้อุปกรณ์ประกอบ ข้อกำหนดด้านกฎระเบียบ และการปรับเทียบ (Calibration) เป็นต้น ด้วยข้อพิจารณาเหล่านี้ วิธีที่ได้รับความนิยมมากที่สุดในการเพิ่มความสามารถในการเชื่อมต่อ WLAN ให้กับระบบสมองกลฝังตัว คือการผสานรวมโมดูล WLAN แบบครบวงจรในตัว (Self-contained WLAN Module) หรือชิปที่มีการรวมฟังก์ชันต่าง ๆ ไว้ในระดับสูง รูปที่ 1 ด้านล่างแสดงองค์ประกอบหลักของระบบย่อย Wi-Fi ซึ่งถูกรวมไว้ในรูปแบบชิปหรือโมดูล

รูปที่ 1 องค์ประกอบของระบบย่อย Wi-Fi

โดยทั่วไป การออกแบบฮาร์ดแวร์ WLAN จะใช้แรงดันไฟฟ้าหลายระดับ และมักประกอบด้วยวงจรจัดการพลังงานเพื่อลดการใช้พลังงาน การผสานรวมที่ง่ายจึงจำเป็นต้องให้โมดูลสามารถรับแรงดันไฟฟ้ามาตรฐานเพียงระดับเดียวได้

หน่วยจัดการพลังงาน (Power Management Unit) ที่อยู่ภายในโมดูลจะทำหน้าที่สร้างแรงดันไฟฟ้าระดับต่าง ๆ ที่จำเป็นอย่างมีประสิทธิภาพ โดยมักใช้ตัวแปลงไฟฟ้าแบบสวิตชิ่ง DC-DC หนึ่งตัวหรือมากกว่า ตามด้วยตัวควบคุมแรงดันไฟฟ้าเชิงเส้นแบบแรงดันตกคร่อมต่ำ (Low-Dropout Linear Regulators: LDO) นอกจากนี้ หน่วยจัดการพลังงานยังควบคุมเส้นทางการจ่ายไฟภายในแต่ละส่วนอย่างละเอียด เพื่อจ่ายพลังงานให้กับส่วนต่าง ๆ ของอุปกรณ์ ซึ่งช่วยประหยัดพลังงานได้สูงสุดผ่านการเลือกเปิดหรือปิดวงจรบางส่วนตามความต้องการของรูปแบบการทำงานในแต่ละช่วงเวลา

อุปกรณ์ WLAN ยังต้องใช้สัญญาณนาฬิกาและสัญญาณความถี่อ้างอิงหลายรายการในการทำงาน ภายในตัวรับส่งสัญญาณ RF (RF Transceiver) จะมีวงจรสังเคราะห์ความถี่ (Frequency Synthesizer) ซึ่งใช้สัญญาณความถี่อ้างอิงที่มีเสถียรภาพและเป็นไปตามข้อกำหนดของมาตรฐาน โดยต้องมีความแม่นยำของความถี่ที่ 20 ppm หรือดีกว่า

บล็อกเบสแบนด์ดิจิทัล (Digital Baseband: BBP) และบล็อกควบคุมการเข้าถึงสื่อ (Media Access Control: MAC) จะใช้สัญญาณนาฬิกาที่มีความถี่แตกต่างกัน โดย BBP ใช้สัญญาณนาฬิกาที่เป็นจำนวนเท่าของ 40 MHz และ 44 MHz ซึ่งสัมพันธ์กับวิธีมาตรฐานในการสร้างรูปคลื่น OFDM หรือ DSSS/CCK ที่ใช้ในการส่งสัญญาณ อีกครั้งหนึ่ง เพื่อให้การผสานรวมทำได้ง่ายขึ้น แนวทางที่เหมาะสมที่สุดคือการป้อนสัญญาณความถี่อ้างอิงเพียงสัญญาณเดียวเข้าสู่โมดูล จากนั้นให้โมดูลใช้วงจร PLL หนึ่งตัวหรือมากกว่าเพื่อสร้างความถี่สัญญาณนาฬิกาอื่น ๆ ที่จำเป็น และใช้สัญญาณอ้างอิงเดียวกันนี้ในวงจรสังเคราะห์ความถี่ด้วย

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

ระบบ Wi-Fi แบบสมองกลฝังตัวใช้โหมดประหยัดพลังงาน (Power Save Modes) ที่กำหนดไว้ในโปรโตคอล WLAN อย่างแพร่หลาย โดยระบบสามารถเข้าสู่สถานะพลังงานต่ำที่ไม่รองรับการส่งหรือรับข้อมูล และตื่นขึ้นตามช่วงเวลาที่กำหนดเพื่อตรวจสอบว่ามีแพ็กเก็ตที่รอการส่งหรือรับอยู่หรือไม่ ในช่วงเวลาพักหรือช่วงที่ไม่มีการทำงานระหว่างการตื่นขึ้นแต่ละครั้ง โมดูล WLAN จะตัดการจ่ายพลังงานให้กับวงจรภายในส่วนใหญ่

แม้ว่า WLAN จะใช้ย่านความถี่คลื่นวิทยุที่ไม่ต้องมีใบอนุญาต (Unlicensed Spectrum) แต่คุณลักษณะในการส่งสัญญาณจริงยังคงถูกจำกัดด้วยข้อกำหนดด้านกฎระเบียบหลายประการ ตัวอย่างเช่น ข้อกำหนดที่กำหนดโดยคณะกรรมการกลางกำกับดูแลกิจการสื่อสารของสหรัฐอเมริกา (Federal Communications Commission: FCC)

ข้อกำหนดเหล่านี้ครอบคลุมช่องสัญญาณหรือความถี่ที่สามารถใช้งานได้ กำลังส่งสูงสุดที่อนุญาตในแต่ละช่องสัญญาณ และคุณลักษณะของสเปกตรัมสัญญาณที่ส่งออกไป โดย FCC กำหนดข้อกำหนดแยกกันสำหรับอุปกรณ์ที่แผ่คลื่นโดยเจตนา (Intentional Radiators) และอุปกรณ์ที่แผ่คลื่นโดยไม่เจตนา (Unintentional Radiators)

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

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

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

การผสานรวมซอฟต์แวร์

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

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

อย่างไรก็ตาม ในอุปกรณ์สมองกลฝังตัว มักให้ความสำคัญกับอินเทอร์เฟซที่ใช้พลังงานต่ำ เช่น SDIO, Serial Peripheral Interface (SPI) หรือ UART โดย SDIO รองรับอัตราการรับส่งข้อมูลสูง และถูกนำมาใช้ในระบบสมองกลฝังตัวระดับค่อนข้างสูง โดยเฉพาะระบบที่ต้องถ่ายโอนข้อมูลปริมาณมาก เช่น วิดีโอหรือรูปภาพ ไมโครคอนโทรลเลอร์ระดับสูงมักมีอินเทอร์เฟซ SDIO ให้ใช้งาน และเกือบทั้งหมดจะทำงานร่วมกับระบบปฏิบัติการที่ติดตั้งอยู่ภายใน ในขณะที่ไมโครคอนโทรลเลอร์ทั่วไปแบบ 16 บิตหรือ 8 บิตมักไม่มีอินเทอร์เฟซดังกล่าว

ในกรณีเหล่านี้ นักออกแบบระบบสมองกลฝังตัวจะเลือกใช้งานระหว่าง SPI และอินเทอร์เฟซอนุกรม UART โดย SPI เป็นอินเทอร์เฟซอนุกรมที่ใช้สัญญาณนาฬิกาแบบซิงโครนัสในการรับส่งข้อมูล ซึ่งสามารถใช้ถ่ายโอนข้อมูลเป็นบล็อกในรูปแบบที่จัดการข้อมูลเป็นไบต์ โดยมีลำดับเป็น "แอดเดรสตามด้วยข้อมูล" (Address Followed by Data) โดยทั่วไป อินเทอร์เฟซนี้จะได้รับการกำหนดค่าผ่านเฟิร์มแวร์ ซึ่งอาจมีความแตกต่างกันเล็กน้อยระหว่างไมโครคอนโทรลเลอร์แต่ละประเภท

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

แม้ว่าจะสามารถใช้อัตราบอด (Baud Rate) ได้สูงถึงหลาย Mbps แต่การใช้งานส่วนใหญ่จะจำกัดอยู่ที่ 115.2 kbps หรือต่ำกว่า รูปแบบ UART รองรับการส่งคำสั่งควบคุมหรือข้อมูลผ่าน "AT Commands" หรือสัญญาณบ่งชี้พิเศษ ในแอปพลิเคชันที่กำลังเกิดขึ้นใหม่ โดยเฉพาะในเครื่องใช้ไฟฟ้าหรืออุปกรณ์ที่กำลังเปลี่ยนจากการเชื่อมต่อแบบใช้สายอย่างง่ายหรือการเชื่อมต่อไร้สายแบบเฉพาะ ไปสู่ Wi-Fi ที่เป็นไปตามมาตรฐาน อินเทอร์เฟซ UART อาจเป็นตัวเลือกที่ผสานรวมได้ง่ายที่สุด

การเพิ่มอินเทอร์เฟซ Wi-Fi มาตรฐานเข้าไปในระบบสมองกลฝังตัวเกี่ยวข้องกับการผสานรวมซอฟต์แวร์ที่ค่อนข้างซับซ้อน เนื่องจากส่วนสำคัญของ WLAN Protocol Stack ถูกนำไปใช้งานในรูปแบบซอฟต์แวร์หรือเฟิร์มแวร์ และการถ่ายโอนแพ็กเก็ตผ่านเครือข่ายมาตรฐานจำเป็นต้องมี TCP/IP Networking Stack

นอกจากนี้ การจัดการการเชื่อมต่อไร้สายและการตรวจสอบสิทธิ์ (Authentication) ยังต้องอาศัยซอฟต์แวร์เฉพาะทางอีกด้วย รูปที่ 2 แสดงองค์ประกอบซอฟต์แวร์ของอินเทอร์เฟซ Wi-Fi ตามลำดับชั้น โดยสมมติให้มีการแบ่งหน้าที่การทำงานแบบดั้งเดิมระหว่างอุปกรณ์ WLAN ซึ่งมีหน่วยประมวลผลฝังตัวของตัวเองสำหรับทำงานด้าน MAC และไมโครคอนโทรลเลอร์ฝั่งโฮสต์ (Host Microcontroller) ที่ติดตั้งระบบปฏิบัติการ

รูปที่ 2 องค์ประกอบซอฟต์แวร์ของระบบ WLAN

สถาปัตยกรรมนี้จะมีส่วนหนึ่งของ WLAN Stack รวมถึง Networking Stack ทั้งหมด ตลอดจนระบบจัดการการเชื่อมต่อ ทำงานอยู่บนหน่วยประมวลผลฝั่งโฮสต์

การเชื่อมต่ออุปกรณ์ Internet of Things แบบไร้สายอย่างง่ายดาย

อุปกรณ์รุ่นใหม่ที่ประกอบกันเป็น Internet of Things (IoT) อาจมีลักษณะแตกต่างจากอุปกรณ์รุ่นเดิมที่ใช้ WLAN เช่น แล็ปท็อปหรือ PDA อยู่มาก อุปกรณ์เหล่านี้ ได้แก่ เซนเซอร์ระยะไกล ระบบควบคุมอุตสาหกรรม อุปกรณ์วินิจฉัยทางการแพทย์ และเครื่องใช้ไฟฟ้าอัจฉริยะ อาจใช้ไมโครคอนโทรลเลอร์ที่ได้รับการปรับให้เหมาะสมกับแอปพลิเคชันของตน มีระบบปฏิบัติการขนาดเล็กหรือไม่มีระบบปฏิบัติการเลย มีหน่วยความจำจำกัด ไม่มีส่วนติดต่อผู้ใช้แบบโต้ตอบสำหรับกำหนดค่า WLAN และมีข้อกำหนดด้านอายุการใช้งานแบตเตอรี่ที่เข้มงวด

การผสานรวมอินเทอร์เฟซ Wi-Fi เข้ากับระบบเหล่านี้ไม่ควรส่งผลกระทบอย่างมีนัยสำคัญต่อการกำหนดค่าระบบและทรัพยากรที่ใช้งานเท่านั้น แต่ยังต้องลดผลกระทบต่อกระบวนการออกแบบโดยรวมด้วย

รูปที่ 3 ชุดประเมินผล Cypress PSoC พร้อมการ์ด Wi-Fi ที่เชื่อมต่ออยู่

ตัวอย่างเช่น ลองพิจารณาการออกแบบระบบสมองกลฝังตัวที่พัฒนาขึ้นโดยใช้โปรเซสเซอร์ PSoC จาก Cypress ชุดประเมินผลที่ใช้งานง่ายแสดงไว้ในรูปที่ 3 ด้านบน และภาพหน้าจอของสภาพแวดล้อมการพัฒนาก็แสดงไว้ในรูปที่ 4 เช่นกัน

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

รูปที่ 4 ภาพหน้าจอของสภาพแวดล้อมการพัฒนา PSoC Creator

การเพิ่มความสามารถในการเชื่อมต่อ Wi-Fi ให้กับการออกแบบที่ใช้โปรเซสเซอร์ PSoC สามารถทำได้ง่ายขึ้นด้วยการใช้ชุดพัฒนาที่เหมาะสม เช่น ชุด Wi-Fi Expansion Board จาก Redpine Signals

ในขั้นตอนการพัฒนาหรือการสร้างต้นแบบของโครงการออกแบบระบบสมองกลฝังตัว สามารถเสียบชุด Wi-Fi เข้ากับพอร์ตขยายของชุด PSoC ได้ ดังแสดงในรูปที่ 5 จากนั้นจึงโหลดคอมโพเนนต์ที่จัดเตรียมโดย Redpine เข้าสู่ PSoC Creator และกำหนดค่าคุณสมบัติต่าง ๆ ให้ตรงกับเครือข่าย Wi-Fi ที่ต้องการใช้งาน การเพิ่มไดรเวอร์ Wi-Fi เข้าไปในการกำหนดค่าซอฟต์แวร์ทำได้อย่างง่ายดาย เพียงใช้วิธีลากและวาง (Drag-and-Drop) ภายในสภาพแวดล้อมการพัฒนา Creator

รูปที่ 5 คอมโพเนนต์ Redpine Wi-Fi ใน PSoC Creator

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

แนวทางนี้ทำให้การผสานรวมความสามารถในการเชื่อมต่อ Wi-Fi เข้ากับการออกแบบระบบสมองกลฝังตัวทำได้ง่ายไม่ต่างจากการใช้อินเทอร์เฟซแบบใช้สายทั่วไปที่ไม่ซับซ้อน

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

บทความที่เกี่ยวข้อง

การออกแบบการเชื่อมต่อ Wi-Fi สำหรับอุปกรณ์อินเทอร์เน็ตของสรรพสิ่ง (Embedded IoT)

การออกแบบการเชื่อมต่อ Wi-Fi สำหรับอุปกรณ์อินเทอร์เน็ตของสรรพสิ่ง (Embedded IoT)

เรียนรู้วิธีสร้างระบบ IoT แบบฝังตัวที่มีประสิทธิภาพ พร้อมการเชื่อมต่อไร้สายที่เชื่อถือได้

Lorem ipsum dolor amet consectetur adipiscing elit tortor massa arcu non.

ปัจจุบัน ระบบสมองกลฝังตัว (Embedded Systems) ที่ใช้ในแอปพลิเคชันหลากหลายประเภท รวมถึงเครื่องใช้ไฟฟ้า ระบบอัตโนมัติ อุปกรณ์ทางการแพทย์ ระบบความบันเทิง และระบบจัดการพลังงาน ต่างมีการใช้งานหรือมีศักยภาพที่จะใช้อินเทอร์เฟซการเชื่อมต่อแบบไร้สาย

เช่นเดียวกับการเลือกใช้กลไกการเชื่อมต่อแบบใช้สายที่มีอยู่ ระบบเหล่านี้ยังสามารถเลือกใช้เทคโนโลยีการสื่อสารไร้สายได้หลายรูปแบบ Zigbee, Bluetooth และกลไกการสื่อสารไร้สายแบบเฉพาะ (Proprietary Wireless) ถูกนำมาใช้งานในระบบต่าง ๆ อย่างแพร่หลาย อย่างไรก็ตาม ปัจจุบันมีแนวโน้มเพิ่มขึ้นในการนำมาตรฐาน 802.11 ที่ใช้ IP เป็นพื้นฐานมาใช้

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

ในบทความนี้ เราจะพิจารณาว่าปัจจัยใดบ้างที่ช่วยให้การผสานรวม Wi-Fi ทำได้ง่ายขึ้น รวมถึงวิธีที่นักออกแบบระบบสมองกลฝังตัวสามารถพัฒนาระบบที่รองรับการเชื่อมต่อ Wi-Fi ได้อย่างสะดวก เราจะศึกษาแนวทางการผสานรวมทั้งด้านฮาร์ดแวร์และซอฟต์แวร์ ตลอดจนการปรับแต่งพารามิเตอร์ของ Wi-Fi เพื่อให้ได้การเชื่อมต่อที่มีความเสถียรและประหยัดพลังงานสำหรับแอปพลิเคชันเหล่านี้

การสร้างอุปกรณ์ Internet of Things (IoT) สำหรับวัตถุประสงค์เฉพาะ

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

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

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

การผสานรวม Wi-Fi เข้ากับอุปกรณ์สมองกลฝังตัวยังคงเป็นแนวโน้มที่ค่อนข้างใหม่ นักออกแบบจึงต้องพิจารณาปัจจัยใหม่หลายประการ ทั้งด้านฮาร์ดแวร์ ซอฟต์แวร์ และองค์ประกอบในระดับระบบ เช่น การรับรองมาตรฐานตามข้อกำหนดของหน่วยงานกำกับดูแล

การผสานรวมฮาร์ดแวร์

ปัจจัยที่เกี่ยวข้องกับการผสานรวมฮาร์ดแวร์ประกอบด้วยขนาด แรงดันไฟฟ้าในการทำงาน การเลือกใช้อุปกรณ์ประกอบ ข้อกำหนดด้านกฎระเบียบ และการปรับเทียบ (Calibration) เป็นต้น ด้วยข้อพิจารณาเหล่านี้ วิธีที่ได้รับความนิยมมากที่สุดในการเพิ่มความสามารถในการเชื่อมต่อ WLAN ให้กับระบบสมองกลฝังตัว คือการผสานรวมโมดูล WLAN แบบครบวงจรในตัว (Self-contained WLAN Module) หรือชิปที่มีการรวมฟังก์ชันต่าง ๆ ไว้ในระดับสูง รูปที่ 1 ด้านล่างแสดงองค์ประกอบหลักของระบบย่อย Wi-Fi ซึ่งถูกรวมไว้ในรูปแบบชิปหรือโมดูล

รูปที่ 1 องค์ประกอบของระบบย่อย Wi-Fi

โดยทั่วไป การออกแบบฮาร์ดแวร์ WLAN จะใช้แรงดันไฟฟ้าหลายระดับ และมักประกอบด้วยวงจรจัดการพลังงานเพื่อลดการใช้พลังงาน การผสานรวมที่ง่ายจึงจำเป็นต้องให้โมดูลสามารถรับแรงดันไฟฟ้ามาตรฐานเพียงระดับเดียวได้

หน่วยจัดการพลังงาน (Power Management Unit) ที่อยู่ภายในโมดูลจะทำหน้าที่สร้างแรงดันไฟฟ้าระดับต่าง ๆ ที่จำเป็นอย่างมีประสิทธิภาพ โดยมักใช้ตัวแปลงไฟฟ้าแบบสวิตชิ่ง DC-DC หนึ่งตัวหรือมากกว่า ตามด้วยตัวควบคุมแรงดันไฟฟ้าเชิงเส้นแบบแรงดันตกคร่อมต่ำ (Low-Dropout Linear Regulators: LDO) นอกจากนี้ หน่วยจัดการพลังงานยังควบคุมเส้นทางการจ่ายไฟภายในแต่ละส่วนอย่างละเอียด เพื่อจ่ายพลังงานให้กับส่วนต่าง ๆ ของอุปกรณ์ ซึ่งช่วยประหยัดพลังงานได้สูงสุดผ่านการเลือกเปิดหรือปิดวงจรบางส่วนตามความต้องการของรูปแบบการทำงานในแต่ละช่วงเวลา

อุปกรณ์ WLAN ยังต้องใช้สัญญาณนาฬิกาและสัญญาณความถี่อ้างอิงหลายรายการในการทำงาน ภายในตัวรับส่งสัญญาณ RF (RF Transceiver) จะมีวงจรสังเคราะห์ความถี่ (Frequency Synthesizer) ซึ่งใช้สัญญาณความถี่อ้างอิงที่มีเสถียรภาพและเป็นไปตามข้อกำหนดของมาตรฐาน โดยต้องมีความแม่นยำของความถี่ที่ 20 ppm หรือดีกว่า

บล็อกเบสแบนด์ดิจิทัล (Digital Baseband: BBP) และบล็อกควบคุมการเข้าถึงสื่อ (Media Access Control: MAC) จะใช้สัญญาณนาฬิกาที่มีความถี่แตกต่างกัน โดย BBP ใช้สัญญาณนาฬิกาที่เป็นจำนวนเท่าของ 40 MHz และ 44 MHz ซึ่งสัมพันธ์กับวิธีมาตรฐานในการสร้างรูปคลื่น OFDM หรือ DSSS/CCK ที่ใช้ในการส่งสัญญาณ อีกครั้งหนึ่ง เพื่อให้การผสานรวมทำได้ง่ายขึ้น แนวทางที่เหมาะสมที่สุดคือการป้อนสัญญาณความถี่อ้างอิงเพียงสัญญาณเดียวเข้าสู่โมดูล จากนั้นให้โมดูลใช้วงจร PLL หนึ่งตัวหรือมากกว่าเพื่อสร้างความถี่สัญญาณนาฬิกาอื่น ๆ ที่จำเป็น และใช้สัญญาณอ้างอิงเดียวกันนี้ในวงจรสังเคราะห์ความถี่ด้วย

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

ระบบ Wi-Fi แบบสมองกลฝังตัวใช้โหมดประหยัดพลังงาน (Power Save Modes) ที่กำหนดไว้ในโปรโตคอล WLAN อย่างแพร่หลาย โดยระบบสามารถเข้าสู่สถานะพลังงานต่ำที่ไม่รองรับการส่งหรือรับข้อมูล และตื่นขึ้นตามช่วงเวลาที่กำหนดเพื่อตรวจสอบว่ามีแพ็กเก็ตที่รอการส่งหรือรับอยู่หรือไม่ ในช่วงเวลาพักหรือช่วงที่ไม่มีการทำงานระหว่างการตื่นขึ้นแต่ละครั้ง โมดูล WLAN จะตัดการจ่ายพลังงานให้กับวงจรภายในส่วนใหญ่

แม้ว่า WLAN จะใช้ย่านความถี่คลื่นวิทยุที่ไม่ต้องมีใบอนุญาต (Unlicensed Spectrum) แต่คุณลักษณะในการส่งสัญญาณจริงยังคงถูกจำกัดด้วยข้อกำหนดด้านกฎระเบียบหลายประการ ตัวอย่างเช่น ข้อกำหนดที่กำหนดโดยคณะกรรมการกลางกำกับดูแลกิจการสื่อสารของสหรัฐอเมริกา (Federal Communications Commission: FCC)

ข้อกำหนดเหล่านี้ครอบคลุมช่องสัญญาณหรือความถี่ที่สามารถใช้งานได้ กำลังส่งสูงสุดที่อนุญาตในแต่ละช่องสัญญาณ และคุณลักษณะของสเปกตรัมสัญญาณที่ส่งออกไป โดย FCC กำหนดข้อกำหนดแยกกันสำหรับอุปกรณ์ที่แผ่คลื่นโดยเจตนา (Intentional Radiators) และอุปกรณ์ที่แผ่คลื่นโดยไม่เจตนา (Unintentional Radiators)

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

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

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

การผสานรวมซอฟต์แวร์

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

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

อย่างไรก็ตาม ในอุปกรณ์สมองกลฝังตัว มักให้ความสำคัญกับอินเทอร์เฟซที่ใช้พลังงานต่ำ เช่น SDIO, Serial Peripheral Interface (SPI) หรือ UART โดย SDIO รองรับอัตราการรับส่งข้อมูลสูง และถูกนำมาใช้ในระบบสมองกลฝังตัวระดับค่อนข้างสูง โดยเฉพาะระบบที่ต้องถ่ายโอนข้อมูลปริมาณมาก เช่น วิดีโอหรือรูปภาพ ไมโครคอนโทรลเลอร์ระดับสูงมักมีอินเทอร์เฟซ SDIO ให้ใช้งาน และเกือบทั้งหมดจะทำงานร่วมกับระบบปฏิบัติการที่ติดตั้งอยู่ภายใน ในขณะที่ไมโครคอนโทรลเลอร์ทั่วไปแบบ 16 บิตหรือ 8 บิตมักไม่มีอินเทอร์เฟซดังกล่าว

ในกรณีเหล่านี้ นักออกแบบระบบสมองกลฝังตัวจะเลือกใช้งานระหว่าง SPI และอินเทอร์เฟซอนุกรม UART โดย SPI เป็นอินเทอร์เฟซอนุกรมที่ใช้สัญญาณนาฬิกาแบบซิงโครนัสในการรับส่งข้อมูล ซึ่งสามารถใช้ถ่ายโอนข้อมูลเป็นบล็อกในรูปแบบที่จัดการข้อมูลเป็นไบต์ โดยมีลำดับเป็น "แอดเดรสตามด้วยข้อมูล" (Address Followed by Data) โดยทั่วไป อินเทอร์เฟซนี้จะได้รับการกำหนดค่าผ่านเฟิร์มแวร์ ซึ่งอาจมีความแตกต่างกันเล็กน้อยระหว่างไมโครคอนโทรลเลอร์แต่ละประเภท

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

แม้ว่าจะสามารถใช้อัตราบอด (Baud Rate) ได้สูงถึงหลาย Mbps แต่การใช้งานส่วนใหญ่จะจำกัดอยู่ที่ 115.2 kbps หรือต่ำกว่า รูปแบบ UART รองรับการส่งคำสั่งควบคุมหรือข้อมูลผ่าน "AT Commands" หรือสัญญาณบ่งชี้พิเศษ ในแอปพลิเคชันที่กำลังเกิดขึ้นใหม่ โดยเฉพาะในเครื่องใช้ไฟฟ้าหรืออุปกรณ์ที่กำลังเปลี่ยนจากการเชื่อมต่อแบบใช้สายอย่างง่ายหรือการเชื่อมต่อไร้สายแบบเฉพาะ ไปสู่ Wi-Fi ที่เป็นไปตามมาตรฐาน อินเทอร์เฟซ UART อาจเป็นตัวเลือกที่ผสานรวมได้ง่ายที่สุด

การเพิ่มอินเทอร์เฟซ Wi-Fi มาตรฐานเข้าไปในระบบสมองกลฝังตัวเกี่ยวข้องกับการผสานรวมซอฟต์แวร์ที่ค่อนข้างซับซ้อน เนื่องจากส่วนสำคัญของ WLAN Protocol Stack ถูกนำไปใช้งานในรูปแบบซอฟต์แวร์หรือเฟิร์มแวร์ และการถ่ายโอนแพ็กเก็ตผ่านเครือข่ายมาตรฐานจำเป็นต้องมี TCP/IP Networking Stack

นอกจากนี้ การจัดการการเชื่อมต่อไร้สายและการตรวจสอบสิทธิ์ (Authentication) ยังต้องอาศัยซอฟต์แวร์เฉพาะทางอีกด้วย รูปที่ 2 แสดงองค์ประกอบซอฟต์แวร์ของอินเทอร์เฟซ Wi-Fi ตามลำดับชั้น โดยสมมติให้มีการแบ่งหน้าที่การทำงานแบบดั้งเดิมระหว่างอุปกรณ์ WLAN ซึ่งมีหน่วยประมวลผลฝังตัวของตัวเองสำหรับทำงานด้าน MAC และไมโครคอนโทรลเลอร์ฝั่งโฮสต์ (Host Microcontroller) ที่ติดตั้งระบบปฏิบัติการ

รูปที่ 2 องค์ประกอบซอฟต์แวร์ของระบบ WLAN

สถาปัตยกรรมนี้จะมีส่วนหนึ่งของ WLAN Stack รวมถึง Networking Stack ทั้งหมด ตลอดจนระบบจัดการการเชื่อมต่อ ทำงานอยู่บนหน่วยประมวลผลฝั่งโฮสต์

การเชื่อมต่ออุปกรณ์ Internet of Things แบบไร้สายอย่างง่ายดาย

อุปกรณ์รุ่นใหม่ที่ประกอบกันเป็น Internet of Things (IoT) อาจมีลักษณะแตกต่างจากอุปกรณ์รุ่นเดิมที่ใช้ WLAN เช่น แล็ปท็อปหรือ PDA อยู่มาก อุปกรณ์เหล่านี้ ได้แก่ เซนเซอร์ระยะไกล ระบบควบคุมอุตสาหกรรม อุปกรณ์วินิจฉัยทางการแพทย์ และเครื่องใช้ไฟฟ้าอัจฉริยะ อาจใช้ไมโครคอนโทรลเลอร์ที่ได้รับการปรับให้เหมาะสมกับแอปพลิเคชันของตน มีระบบปฏิบัติการขนาดเล็กหรือไม่มีระบบปฏิบัติการเลย มีหน่วยความจำจำกัด ไม่มีส่วนติดต่อผู้ใช้แบบโต้ตอบสำหรับกำหนดค่า WLAN และมีข้อกำหนดด้านอายุการใช้งานแบตเตอรี่ที่เข้มงวด

การผสานรวมอินเทอร์เฟซ Wi-Fi เข้ากับระบบเหล่านี้ไม่ควรส่งผลกระทบอย่างมีนัยสำคัญต่อการกำหนดค่าระบบและทรัพยากรที่ใช้งานเท่านั้น แต่ยังต้องลดผลกระทบต่อกระบวนการออกแบบโดยรวมด้วย

รูปที่ 3 ชุดประเมินผล Cypress PSoC พร้อมการ์ด Wi-Fi ที่เชื่อมต่ออยู่

ตัวอย่างเช่น ลองพิจารณาการออกแบบระบบสมองกลฝังตัวที่พัฒนาขึ้นโดยใช้โปรเซสเซอร์ PSoC จาก Cypress ชุดประเมินผลที่ใช้งานง่ายแสดงไว้ในรูปที่ 3 ด้านบน และภาพหน้าจอของสภาพแวดล้อมการพัฒนาก็แสดงไว้ในรูปที่ 4 เช่นกัน

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

รูปที่ 4 ภาพหน้าจอของสภาพแวดล้อมการพัฒนา PSoC Creator

การเพิ่มความสามารถในการเชื่อมต่อ Wi-Fi ให้กับการออกแบบที่ใช้โปรเซสเซอร์ PSoC สามารถทำได้ง่ายขึ้นด้วยการใช้ชุดพัฒนาที่เหมาะสม เช่น ชุด Wi-Fi Expansion Board จาก Redpine Signals

ในขั้นตอนการพัฒนาหรือการสร้างต้นแบบของโครงการออกแบบระบบสมองกลฝังตัว สามารถเสียบชุด Wi-Fi เข้ากับพอร์ตขยายของชุด PSoC ได้ ดังแสดงในรูปที่ 5 จากนั้นจึงโหลดคอมโพเนนต์ที่จัดเตรียมโดย Redpine เข้าสู่ PSoC Creator และกำหนดค่าคุณสมบัติต่าง ๆ ให้ตรงกับเครือข่าย Wi-Fi ที่ต้องการใช้งาน การเพิ่มไดรเวอร์ Wi-Fi เข้าไปในการกำหนดค่าซอฟต์แวร์ทำได้อย่างง่ายดาย เพียงใช้วิธีลากและวาง (Drag-and-Drop) ภายในสภาพแวดล้อมการพัฒนา Creator

รูปที่ 5 คอมโพเนนต์ Redpine Wi-Fi ใน PSoC Creator

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

แนวทางนี้ทำให้การผสานรวมความสามารถในการเชื่อมต่อ Wi-Fi เข้ากับการออกแบบระบบสมองกลฝังตัวทำได้ง่ายไม่ต่างจากการใช้อินเทอร์เฟซแบบใช้สายทั่วไปที่ไม่ซับซ้อน

Related articles