วิธีการสร้างต้นแบบอุปกรณ์ IoT อย่างรวดเร็วโดยใช้โหนด IoT B-L4S5I-IOT01A Discovery Kit

By Jacob Beningo

Contributed By DigiKey's North American Editors

เนื่องจากอุปกรณ์เชื่อมต่อกับ Internet of Things (IoT) มากขึ้นเรื่อยๆ นักพัฒนาที่เริ่มต้นจากศูนย์จึงตระหนักว่ายังไม่ตรงไปตรงมาอย่างที่คิด โดยเฉพาะอย่างยิ่งหากกำหนดการแน่นและค่าใช้จ่ายมีจำกัด ตั้งแต่การเลือกสภาพแวดล้อมการพัฒนาที่เชื่อถือได้ ปลอดภัย และได้รับการสนับสนุนอย่างดี ไปจนถึงการเลือกซอฟต์แวร์และฮาร์ดแวร์ที่เข้ากันได้ ปรากฎว่าการออกแบบและการสร้างอุปกรณ์ IoT ยังคงต้องการชุดทักษะที่หลากหลาย

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

บทความนี้กล่าวถึงวิธีที่นักออกแบบ IoT สามารถสร้างต้นแบบผลิตภัณฑ์ของตนได้อย่างรวดเร็วโดยใช้STMicroelectronicsB-L4S5I-IOT01A Discovery Kit โหนด IoT โดยจะตรวจสอบความสามารถของไมโครคอนโทรลเลอร์ออนบอร์ด เซ็นเซอร์และตัวเลือกการกำหนดค่ามากมาย และวิธีการเชื่อมต่อกับ Amazon Web Services (AWS) และเริ่มสร้างต้นแบบและผลิตภัณฑ์ขั้นสุดท้ายอย่างรวดเร็ว

ข้อมูลเบื้องต้นเกี่ยวกับโหนด IoT ของ B-L4S5I-IOT01A Discovery Kit

บอร์ด B-L4S5I-IOT01A Discovery เป็นบอร์ดพัฒนาแบบครบวงจรที่สามารถใช้เพื่อสร้างต้นแบบอุปกรณ์ IoT แบบฝังได้เกือบทุกแบบ (รูปที่ 1) บอร์ดนี้มีพลังการประมวลผล เซ็นเซอร์ และความสามารถในการขยายที่เพียงพอ เพื่อทำให้นักพัฒนาซอฟต์แวร์ฝังตัวฝันกลางวันเกี่ยวกับแอปพลิเคชันที่พวกเขาสามารถสร้างได้ บอร์ด B-L4S5I-IOT01A ขึ้นอยู่กับSTM32L4S5VIT6 พลังงานต่ำอาร์ม® โปรเซสเซอร์ Cortex®-M4 ทำงานที่ 120 เมกะเฮิรตซ์ (MHz) รองรับโปรแกรมแฟลช 2 เมกะไบต์ (Mbytes) และ SRAM 640 กิโลไบต์ (Kbytes) STM32L4S5VIT6 ยังมีคุณสมบัติที่เหมาะอย่างยิ่งสำหรับแอปพลิเคชัน IoT เช่น:

  • หน่วยจุดลอยตัว (FPU)
  • ตัวควบคุมการเข้าถึงหน่วยความจำแบบไดนามิก (DMA) 14 ช่องสัญญาณ
  • ตัวเร่งฮาร์ดแวร์เข้ารหัส AES และ HASH
  • คุณสมบัติกราฟิกขั้นสูง
  • คะแนนมาตรฐานพลังงาน 233 ULPMark CP

ภาพของ Texas Instruments B-L4S5I-IOT01A ใช้โปรเซสเซอร์ Arm Cortex-M4 รูปที่ 1: B-L4S5I-IOT01A ใช้โปรเซสเซอร์ Arm Cortex-M4 ที่ทำงานด้วยความเร็วสูงสุด 120 MHz พร้อมหน่วยความจำแฟลช 2 Mbytes, RAM 640 Kbytes, การเชื่อมต่อไร้สาย และเซ็นเซอร์หลายตัว (แหล่งรูปภาพ: STMicroelectronics)

กำลังการประมวลผลและประสิทธิภาพการใช้พลังงานเพียงอย่างเดียวไม่ได้สร้างแพลตฟอร์มต้นแบบที่รวดเร็วอย่างยอดเยี่ยม บอร์ดค้นพบยังมาพร้อมกับการเชื่อมต่อไร้สายในรูปแบบของโมดูล Wi-Fi ที่สอดคล้องกับ 802.11b/g/n (ISM43362-M3G-L44 ) จากInventek Systems และโมดูล Bluetooth 4.1 จาก STMicroelectronics รวมถึงเซ็นเซอร์ต่างๆ เหล่านี้รวมถึงสอง MP34DT01 ไมโครโฟนรอบทิศทางแบบดิจิตอล one HTS221 เซ็นเซอร์ดิจิตอล capacitive สำหรับความชื้นสัมพัทธ์และอุณหภูมิและหนึ่งLIS3MDL เครื่องวัดค่าความเข้มข้นของสนามแม่เหล็กแบบสามแกนประสิทธิภาพสูง

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

ระบบนิเวศ STM32

ระบบนิเวศรอบ ๆ คณะกรรมการพัฒนาใด ๆ กำหนดว่าทีมสามารถสร้างต้นแบบอย่างรวดเร็วหรือไม่ ตัวอย่างเช่น ในการสร้างต้นแบบอุปกรณ์ IoT ด้วย B-L4S5I-IOT01A นักพัฒนาจำเป็นต้องเข้าถึงคอมไพเลอร์ สภาพแวดล้อมการพัฒนาแบบรวม (IDE) ไลบรารีไดรเวอร์ เครื่องมือกำหนดค่า และซอฟต์แวร์สำหรับการอัพเดตเฟิร์มแวร์ บอร์ด B-L4S5I-IOT01A Discovery รองรับความต้องการเหล่านี้ทั้งหมด

นักพัฒนาหลายคนใช้ Eclipse และคอมไพเลอร์ GNU C สำหรับสภาพแวดล้อมการพัฒนา STMicroelectronics ให้เครื่องมือฟรีSTM32CubeIDE (ภาพที่ 2) ช่วยให้นักพัฒนาสามารถเขียนและสร้างโครงการซอฟต์แวร์ของตนได้ STM32CubeIDE ช่วยให้สามารถเข้าถึงสภาพแวดล้อมการพัฒนาซอฟต์แวร์ผ่านมุมมองต่างๆ เครื่องมือกำหนดค่าไมโครคอนโทรลเลอร์ และสภาพแวดล้อมการดีบัก

รูปภาพของ STM32CubeIDE IDE เพื่อสร้าง กำหนดค่า และจัดการซอฟต์แวร์ฝังตัว IoT (คลิกเพื่อดูภาพขยาย) รูปที่ 2: STM32CubeIDE มอบ IDE ให้กับนักพัฒนาเพื่อสร้าง กำหนดค่า และจัดการซอฟต์แวร์ฝังตัวของอุปกรณ์ IoT (แหล่งรูปภาพ: Beningo Embedded Group)

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

นอกเหนือจากการกำหนดค่าและการปรับใช้ codebase แล้ว ระบบนิเวศ STM32 ยังมาพร้อมกับเครื่องมือที่มีประโยชน์มากมายสำหรับนักพัฒนาที่ทำงานในระดับแนวหน้า ตัวอย่างเช่น นักพัฒนาที่ต้องการใช้ประโยชน์จากการเรียนรู้ของเครื่องในแอปพลิเคชันของตนได้STM32Cube.AI ส่วนขยาย X-CUBE-AI ซึ่งจัดเตรียมเฟรมเวิร์กที่มีประสิทธิภาพสำหรับการแปลง ตรวจสอบ และรันการอนุมานบน STM32 ให้กับทีม ตัวอย่างเช่น นักพัฒนาสามารถฝึกโมเดลโดยใช้ TensorFlow Lite แล้วแปลงโมเดลในเวลาเพียงไม่กี่นาทีเป็นโค้ด C ที่ทำงานบนไมโครคอนโทรลเลอร์ นอกจากนี้ยังมีชุดส่วนขยายพร้อมซอฟต์แวร์ที่พร้อมใช้งานซึ่งรวมถึง:

  • FP-AI-FACEREC สำหรับการใช้งานจดจำใบหน้า
  • FP-AI-NANOEDG1 สำหรับการใช้งานตรวจสอบสภาพ
  • FP-AI-VISION1 สำหรับการใช้งานจำแนกภาพ
  • FP-AI-SENSING1 สำหรับการใช้งานจำแนกเสียงและฉาก

อุปกรณ์ IoT ทุกเครื่องควรพิจารณาถึงความปลอดภัย แม้ในช่วงขั้นตอนการสร้างต้นแบบที่รวดเร็ว เว็บในปัจจุบันเต็มไปด้วยการโจมตีที่ไม่หยุดยั้ง การละเมิดความปลอดภัย และการใช้ประโยชน์จากข้อมูลธุรกิจและข้อมูลลูกค้า ดังนั้น แพลตฟอร์มการสร้างต้นแบบที่รวดเร็วควรมีความสามารถในการปรับขนาดเป็นระบบการผลิตได้อย่างมีประสิทธิภาพ คณะกรรมการค้นพบสามารถใช้ประโยชน์จาก STMicroelectronicsSecure Boot Secure Firmware Update (SBSFU) ซอฟต์แวร์สแต็คเพื่อให้นักพัฒนามีความสามารถนี้ SBSFU มีอยู่ในชุดฟังก์ชัน X-CUBE-SBSFU ซึ่งให้:

  • บริการ Root-of-trust (RoT)
  • บริการจัดการคีย์ที่ปลอดภัย
  • รูปแบบการเข้ารหัส
  • บริการอัปเดตเฟิร์มแวร์ที่ปลอดภัย

ระบบนิเวศรอบๆ บอร์ด B-L4S5I-IOT01A Discovery นั้นสมบูรณ์ด้วยชุดฟังก์ชันและเครื่องมือที่พร้อมใช้งานมากมาย เพื่อช่วยให้นักพัฒนาสามารถเริ่มต้นได้อย่างรวดเร็ว นักพัฒนา IoT หลายคนสนใจX-CUBE-AWS แพ็คเกจที่มอบทุกสิ่งที่จำเป็นในการเชื่อมต่อกับคลาวด์เมื่อใช้ AWS มาดูกันว่านักพัฒนาจะทำอย่างไร

กำลังเชื่อมต่อกับระบบคลาวด์

ในการเริ่มต้นใช้งานระบบคลาวด์ นักพัฒนาต้องดาวน์โหลด X-CUBE-AWS แพ็คเกจซอฟต์แวร์มาในรูปแบบไฟล์ zip ที่มีหลายโครงการที่ออกแบบมาเพื่อทำงานบน B-L4S5I-IOT01A เช่น:

  • Bootloader_KMS
  • Bootloader_STSAFE
  • คลาวด์

โครงการเหล่านี้อยู่ภายใต้:

โครงการ/B-L4S5I-IOT01A/แอปพลิเคชัน/

ด้วยโครงการ AWS Cloud ที่อยู่ภายใต้:

คลาวด์/aws_demos

โปรเจ็กต์ระบบคลาวด์พร้อมใช้งานสำหรับ STM32Cube IDE, Keil และ IAR แน่นอน นักพัฒนาสามารถพอร์ตสิ่งเหล่านี้ไปยัง IDE อื่น ๆ ได้ แต่ทั้งสามสิ่งนี้มักใช้ในอุตสาหกรรม

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

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

ไดอะแกรมของ STMicroelectronics X-CUBE-AWS ให้ตัวอย่างเฟิร์มแวร์และแอปพลิเคชันรูปที่ 3: X-CUBE-AWS ให้ตัวอย่างเฟิร์มแวร์และแอปพลิเคชันที่จำเป็นในการเชื่อมต่อกับ AWS และพัฒนา IoT Thing ที่สามารถเชื่อมต่อกับ AWS (แหล่งรูปภาพ: STMicroelectronics)

วิธีที่ง่ายที่สุดในการเชื่อมต่อกับระบบคลาวด์คือการเรียกใช้เอกสารการเริ่มต้นใช้งานและทำตามบทช่วยสอน นอกจากบทช่วยสอนแล้ว ยังมีแหล่งอ้างอิงเพิ่มเติมอีกหลายแห่งที่นักพัฒนาสามารถใช้เพื่อเพิ่มความเร็วด้วยแพ็คเกจซอฟต์แวร์ ซึ่งรวมถึง:

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

คำแนะนำและเคล็ดลับในการใช้ B-L4S5I-IOT01A Discovery Board

B-L4S5I-IOT01A Discovery Board มีคุณสมบัติและความสามารถมากมายที่นักพัฒนาสามารถใช้เพื่อสร้างต้นแบบผลิตภัณฑ์แบบฝังตัวได้อย่างรวดเร็ว ด้านล่างนี้คือ "เคล็ดลับและกลเม็ด" ที่นักพัฒนาซอฟต์แวร์ควรจำไว้ ซึ่งจะทำให้การพัฒนาง่ายขึ้นและเร็วขึ้น เช่น:

  • ใช้ประโยชน์จาก X-CUBE-AWS อย่างเต็มที่เพื่อเชื่อมต่อกับ AWS ได้อย่างง่ายดาย แพ็คเกจซอฟต์แวร์มาพร้อมกับ FreeRTOS ที่พอร์ตไปยังบอร์ดพัฒนาแล้ว นักพัฒนาจำเป็นต้องจัดเตรียมอุปกรณ์เพื่อเชื่อมต่อกับระบบคลาวด์เท่านั้น
  • อ่านเอกสารการเริ่มต้นใช้งานอย่างละเอียดถี่ถ้วน เอกสารประกอบมีขั้นตอนที่จำเป็นในการอัปเดตเฟิร์มแวร์และเชื่อมต่อกับ AWS
  • ทดลองกับตัวอย่างความสามารถในการอัปเดตแบบ over-the-air (OTA) ความจำเป็นในการแก้ไขและอัปเดตอุปกรณ์ IoT ในภาคสนามเป็นสิ่งสำคัญ นักพัฒนาซอฟต์แวร์ควรตระหนักถึงความสามารถและข้อจำกัดใด ๆ ของการอัปเดตเฟิร์มแวร์ที่ปลอดภัย
  • หลีกเลี่ยงการเริ่มต้นจากศูนย์โดยใช้ประโยชน์จากชุดฟังก์ชันของ STMicroelectronic ซึ่งช่วยให้นักพัฒนาสามารถเริ่มต้นใช้งานความสามารถและการทำงานของอุปกรณ์ได้อย่างรวดเร็ว ชุดฟังก์ชันเหล่านี้สามารถเร่งการพัฒนาได้อย่างมาก
  • ใช้เวลาในการอ่านเอกสาร STSAFE และทำความเข้าใจว่าองค์ประกอบความปลอดภัยสามารถปรับปรุงความปลอดภัยของอุปกรณ์ได้อย่างไร การรักษาความปลอดภัยต้องสร้างขึ้นในอุปกรณ์ตั้งแต่เริ่มต้น ดังนั้นต้องทำในระหว่างขั้นตอนการสร้างต้นแบบอย่างรวดเร็ว

นักพัฒนาที่ปฏิบัติตาม "คำแนะนำและเคล็ดลับ" เหล่านี้จะพบว่าพวกเขาประหยัดเวลาและความเศร้าโศกได้ไม่น้อยเมื่อสร้างต้นแบบแอปพลิเคชันของตน

สรุป

การพัฒนาอุปกรณ์ที่เชื่อมต่อ IoT ตั้งแต่เริ่มต้นยังคงมีอุปสรรคและข้อผิดพลาดมากมายที่อาจทำให้กำหนดการล่าช้าและนำไปสู่การเกินต้นทุน เพื่อหลีกเลี่ยงปัญหาเหล่านี้ นักพัฒนาสามารถใช้ B-L4S5I-IOT01A Discovery Board เพื่อสร้างต้นแบบแอปพลิเคชันที่เชื่อมต่อได้อย่างรวดเร็ว สแต็คซอฟต์แวร์ แพ็กเสริม และระบบนิเวศของ STMicroelectronics ช่วยให้นักพัฒนามีร้านค้าครบวงจรในการผสานรวมซอฟต์แวร์และเร่งการนำไปใช้งานอย่างง่ายดาย B-L4S5I-IOT01A ยังมีความสามารถอย่างเต็มที่กับความต้องการของอุปกรณ์ที่ทันสมัย เช่น การเชื่อมต่อบนคลาวด์ การบูตเฟิร์มแวร์ที่ปลอดภัยด้วย OTA และแม้กระทั่งการเรียกใช้แอปพลิเคชันการเรียนรู้ของเครื่องขั้นพื้นฐาน

DigiKey logo

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.

About this author

Image of Jacob Beningo

Jacob Beningo

Jacob Beningo เป็นที่ปรึกษาด้านซอฟต์แวร์แบบฝังตัว เขาได้ตีพิมพ์บทความมากกว่า 200 บทความเกี่ยวกับเทคนิคการพัฒนาซอฟต์แวร์แบบฝังตัวเป็นวิทยากรและผู้ฝึกสอนด้านเทคนิคที่เป็นที่ต้องการและสำเร็จการศึกษา 3 ปริญญา รวมถึง ปริญญาโทวิศวกรรมศาสตร์จากมหาวิทยาลัยมิชิแกน

About this publisher

DigiKey's North American Editors