วิธีการใช้แอปพลิเคชันการติดตามทรัพย์สินแบบเชื่อมต่อหลายจุดอย่างมีประสิทธิภาพ
2023-01-11
แอปพลิเคชันติดตามสินทรัพย์ขั้นสูง เช่น การติดตามปศุสัตว์ การจัดการกลุ่มยานพาหนะ และโลจิสติกส์ จะบันทึกข้อมูลสถานะปัจจุบันและพิกัดตำแหน่งของวัตถุที่ถูกติดตามโดยอัตโนมัติ ทรานสปอนเดอร์ในตัวจะถ่ายทอดข้อมูลการบันทึกไปยังคลาวด์และทำให้ข้อมูลพร้อมใช้งานสำหรับศูนย์ควบคุมหรืออุปกรณ์พกพา การอัปเดตข้อมูลไร้สายช่วงสั้นในโรงงานมักเป็นสิ่งจำเป็นเพื่อแลกเปลี่ยนข้อมูลลอจิสติกส์ ประวัติของกระบวนการและข้อมูลการติดตาม เปลี่ยนแปลงการกำหนดค่า หรือดำเนินการอัปเดตเฟิร์มแวร์ในหน่วยความจำทรานสปอนเดอร์
นักพัฒนาระบบติดตามทรัพย์สินดังกล่าวต้องเผชิญกับความท้าทายในการออกแบบทรานสปอนเดอร์เซ็นเซอร์แบบมัลติฟังก์ชันที่สื่อสารผ่านโปรโตคอลวิทยุระยะไกลและระยะสั้นต่าง ๆ รวบรวมข้อมูลการวัดที่หลากหลาย สามารถทำงานเป็นเวลาหลายเดือนโดยไม่ต้องเปลี่ยนแบตเตอรี่ และทำให้ข้อมูลทั้งหมดพร้อมใช้งานผ่านบริการอินเทอร์เน็ต นอกจากนี้ นักออกแบบต้องทำสิ่งเหล่านี้ให้สำเร็จและจะต้องลดต้นทุน รวมทั้งลดเวลาออกสู่ตลาด
แม้ว่างานจะมากมายมหาศาล แต่นักออกแบบสามารถประหยัดเวลาและพลังงานได้อย่างมากโดยใช้ชุดพัฒนาที่รวมฮาร์ดแวร์และซอฟต์แวร์ที่จำเป็นไว้มากพอแล้ว
บทความนี้กล่าวถึงข้อกำหนดทางเทคนิคของการติดตามสินทรัพย์ขั้นสูงในการใช้งานแบบต่าง ๆ จากนั้นจึงแนะนำชุดพัฒนามัลติฟังก์ชั่นจาก STMicroelectronics ซึ่งช่วยลดความพยายามที่จำเป็นสำหรับการออกแบบต้นแบบ การทดสอบ และการประเมินได้อย่างมาก โดยจะให้ข้อมูลเชิงลึกเกี่ยวกับคุณลักษณะการทำงานที่สำคัญของชุดพัฒนา และแสดงให้เห็นว่านักพัฒนาสามารถปรับแต่งฟังก์ชันของโมดูลระบบบนชิป (SoC) ที่รวมกันไว้ได้อย่างง่ายดายโดยไม่ต้องเขียนโค้ด รวมทั้งสามารถดึงและแสดงข้อมูลเป็นภาพจากระบบคลาวด์
คุณสมบัติของทรานสปอนเดอร์วัดแบบไร้สาย
การติดตามทรัพย์สินมีขอบเขตการใช้งานที่หลากหลาย ซึ่งแต่ละการใช้งานจะต้องใช้อุปกรณ์ทางเทคนิคเฉพาะสำหรับทรานสปอนเดอร์และเครือข่ายเชื่อมโยง รูปที่ 1 แสดงคุณสมบัติทางเทคนิคของทรานสปอนเดอร์วัดแบบไร้สายในสี่ประเภทการใช้งาน
รูปที่ 1: คุณลักษณะของทรานสปอนเดอร์วัดแบบไร้สายขึ้นอยู่กับการติดตามสินทรัพย์แต่ละแบบ (แหล่งที่มาภาพ: STMicroelectronics)
ทรานสปอนเดอร์อัตโนมัติที่ติดไปกับวัตถุต้องตรวจจับสภาพสิ่งแวดล้อม ตำแหน่งและสถานะของวัตถุ (การตรวจจับ (Sensing) รูปที่ 1) จัดเก็บและเผยแพร่ในโอกาสต่อไปผ่านอินเทอร์เฟซไร้สายที่หลากหลาย (การเชื่อมต่อ (Connectivity)) การประมวลผลสัญญาณและการแปลงเป็นโปรโตคอลไร้สายต่าง ๆ จะต้องได้รับการจัดการโดยไมโครคอนโทรลเลอร์ (MCU) ที่ทรงพลังเพียงพอพร้อมทั้งมีความปลอดภัยของข้อมูลระดับสูง (การประมวลผลและความปลอดภัย (Processing & security)) MCU ยังควบคุมการจัดการพลังงาน (การจัดการพลังงาน (Power management)) และทำให้มั่นใจได้ว่าแบตเตอรี่ทรานสปอนเดอร์มีอายุการใช้งานที่ยาวนาน
ความพร้อมใช้งานของข้อมูลที่จำเป็นของแอปพลิเคชันติดตามสินทรัพย์ส่งผลต่อความซับซ้อนของเซ็นเซอร์และต้องการการเชื่อมต่อที่เหมาะสม สำหรับเส้นทางการขนส่งที่คาดเดาได้ เช่น การส่งพัสดุ การเก็บสัญญาณการวัดไว้ในทรานสปอนเดอร์ก็เพียงพอแล้ว จากนั้นสามารถอ่านข้อมูลได้ในระยะใกล้โดยใช้บลูทูธพลังงานต่ำ (BLE) หรือการสื่อสารระยะใกล้ (NFC) ที่จุดตรวจลอจิสติกส์ถัดไป
ในกรณีของการจัดการกลุ่มยานพาหนะ รวมถึงการขนส่งและการตรวจสอบปศุสัตว์ในระยะทางไกล การถ่ายโอนข้อมูลจากช่องสัญญาณผ่านระบบคลาวด์ไปยังแอปพลิเคชันปลายทางควรดำเนินการให้ใกล้เคียงกับเวลาจริงมากที่สุด ทรานสปอนเดอร์จึงต้องใช้อินเตอร์เฟสวิทยุเคลื่อนที่เพื่อให้ครอบคลุมช่วงกว้าง ตัวเลือกต่าง ๆ ได้แก่ LoRaWAN (เครือข่ายระยะไกล พื้นที่กว้าง), Sigfox และ Narrowband-Internet of Things (NB-IoT) เนื่องจากโปรโตคอลเหล่านี้ได้รับการปรับให้เหมาะสมสำหรับการถ่ายโอนข้อมูลที่มีอัตราความเร็วต่ำและประหยัดพลังงาน
ระบบนิเวศการติดตามสินทรัพย์ที่สมบูรณ์สำหรับการพัฒนาที่ลดความยุ่งยากลง
ผู้ออกแบบระบบที่ต้องการใช้งานแอปพลิเคชันติดตามสินทรัพย์ (Asset Tracking Application, ASTRA) ด้วยวิธีประหยัดต้นทุนและใช้เวลาสามารถใช้แพลตฟอร์มการพัฒนามัลติฟังก์ชั่น STEVAL-ASTRA1B จาก STMicroelectronics แพลตฟอร์มดังกล่าวประกอบด้วยโมดูล IC และ SoC หลายโมดูล ช่วยให้การสร้างต้นแบบ การเขียนโปรแกรม การทดสอบ และการประเมินโซลูชันการติดตามและตรวจสอบที่เป็นนวัตกรรมใหม่ง่ายขึ้นอย่างมาก ชุดพัฒนาประกอบด้วยบอร์ดประเมินผลแบบแยกส่วน ไลบรารีเฟิร์มแวร์ เครื่องมือเขียนโปรแกรม และเอกสารเกี่ยวกับวงจร รวมถึงแอปสำหรับอุปกรณ์เคลื่อนที่และอินเทอร์เฟซการแสดงภาพบนเว็บ (รูปที่ 2)
รูปที่ 2: ระบบนิเวศการติดตามทรัพย์สินที่พร้อมใช้งานขยายจากช่องสัญญาณการวัดแบบไร้สายไปยังระบบคลาวด์ไปจนถึงแอปพลิเคชันปลายทาง ซึ่งช่วยลดความพยายามในการพัฒนา (แหล่งที่มาภาพ: STMicroelectronics)
บอร์ด STEVAL-ASTRA1B ใช้โมดูล SoC ที่ใช้พลังงานต่ำ 2 โมดูลสำหรับการเชื่อมต่อระยะสั้นและระยะยาว พร้อมด้วย NFC ที่รวมอยู่ในบอร์ดคือโมดูลสำหรับฟังก์ชันการรักษาความปลอดภัยของข้อมูล โดยบอร์ด Carrier มีเซ็นเซอร์ตรวจจับสภาพแวดล้อมและการเคลื่อนไหวหลายตัว รวมถึงโมดูล Global Navigation Satellite System (GNSS) ที่ให้พิกัดตำแหน่งและเปิดใช้งานการกำหนดขอบเขตเสมือน (Geofencing) ซึ่งระบบการจัดการพลังงานควบคุมโหมดการทำงานของส่วนประกอบอุปกรณ์ทั้งหมดรวมถึงแหล่งจ่ายไฟ แหล่งจ่ายไฟประกอบด้วยตัวแปลงสวิตชิ่ง แบตเตอรี่ และตัวควบคุมการชาร์จ USB-C เพื่อยืดอายุการใช้งานแบตเตอรี่ให้ได้มากที่สุด เมื่อส่งมอบ ชุดคิทประกอบด้วยแบตเตอรี่ลิเธียมโพลิเมอร์ (Li-Poly) 480 มิลลิแอมป์ชั่วโมง (mAh), เคส, เสาอากาศ SMA (LoRa) และเสาอากาศ NFC
ไอซีและ SoC ของบอร์ด STEVAL-ASTRA1B ประกอบด้วย:
- SoC ไร้สายสองโมดูล:
- STM32WB5MMGH6TR : โมดูล SoC นี้ใช้ MCU Arm® Cortex®-M4/M0+ พลังงานต่ำพิเศษแบบไร้สาย 2.4 กิกะเฮิรตซ์ (GHz) ทำหน้าที่เป็นตัวประมวลผลแอปพลิเคชันหลักและรองรับ 802.15.4, BLE 5.0, Thread และ Zigbee
- STM32WL55JCI6: SoC ไร้สายนี้ใช้ MCU Arm Cortex M0+ แบบไร้สายพลังงานต่ำเป็นพิเศษ และรองรับ LoRa, Sigfox และ GFSK ที่ความถี่ต่ำกว่า 1 กิกะเฮิรตซ์ (GHz) (150 - 960 เมกะเฮิรตซ์ (MHz))
- ST25DV64K-JFR8D3: เครื่องส่งสัญญาณ NFC
- TESEO-LIV3F: โมดูล GNSS ที่มีดาวเทียมนําทางหลายระบบพร้อมกัน
- เซ็นเซอร์ตรวจจับสภาพแวดล้อมและการเคลื่อนไหว:
- STTS22HTR: เซ็นเซอร์อุณหภูมิดิจิตอลตั้งแต่ -40 ถึง 125°C
- LPS22HHTR: เซ็นเซอร์วัดความดันสัมบูรณ์ตั้งแต่ 26 ถึง 126 กิโลปาสกาล (kPa)
- HTS221TR: เซ็นเซอร์วัดความชื้นและอุณหภูมิ; ความชื้นสัมพัทธ์ (RH) ตั้งแต่ 0 ถึง 100% I²C, SPI ±4.5% RH
- LIS2DTW12TR: มาตรวัดความเร่งแกน X, Y, Z; ±2g, 4g, 8g, 16g 0.8 เฮิรตซ์ (Hz) ถึง 800 Hz
- LSM6DSO32XTR: มาตรความเร่ง, ไจโรสโคป, เซ็นเซอร์อุณหภูมิ I²C, เอาต์พุต SPI
- STSAFE-A110: ชิป Secure element
- โซลูชันที่ทำงานด้วยแบตเตอรี่พร้อมสถาปัตยกรรมการจัดการพลังงานอัจฉริยะ:
- ST1PS02BQTR: ไอซีควบคุมบั๊กสวิตช์; ปรับค่าบวกได้ 1.8 โวลต์ 1 เอาต์พุต 400 มิลลิแอมป์ (mA)
- STBC03JR: ไอซีที่ชาร์จแบตเตอรี่สำหรับลิเธียมไอออน (Li-ion) หรือ Li-Poly
- TCPP01-M12: USB Type-C และการป้องกันการส่งพลังงาน
บอร์ดประเมินผลทำงานที่อุณหภูมิตั้งแต่ +5 ถึง 35°C และใช้แถบความถี่ต่อไปนี้:
- BLE: 2400 MHz ถึง 2480 MHz, +6 เดซิเบลอ้างอิงที่หนึ่งมิลลิวัตต์ (mW) (dBm)
- LoRaWAN: 863 MHz ถึง 870 MHz, +14 dBm (จำกัดโดยเฟิร์มแวร์)
- GNSS (ตัวรับ): 1559 MHz ถึง 1610 MHz
- NFC: 13.56 เมกะเฮิรตซ์
โครงสร้างภายในของ STEVAL-ASTRA1B
ทรานสปอนเดอร์ ASTRA ทำงานเหมือนเครื่องบันทึกข้อมูลและแบ่งการไหลของข้อมูลออกเป็นสามบล็อกหลัก แต่ละบล็อกประกอบด้วยไดรเวอร์ฮาร์ดแวร์และซอฟต์แวร์ รวมถึงชั้นแอปพลิเคชัน (รูปที่ 3) ข้อมูลขาเข้า (รูปที่ 3 ซ้าย) จับสัญญาณเซ็นเซอร์ออนบอร์ดทั้งหมด บล็อกกลาง (รูปที่ 3 ตรงกลาง) ประมวลผลและจัดเก็บข้อมูล สุดท้ายข้อมูลที่เก็บไว้จะถูกส่งแบบไร้สาย (รูปที่ 3 ด้านขวา) ในกรณีของการกำหนดค่าใหม่ การอัปเดตเฟิร์มแวร์ หรือการเขียนข้อมูลกระบวนการ/ลอจิสติก การไหลของสัญญาณจะวิ่งไปในทิศทางตรงกันข้าม
รูปที่ 3: การไหลของข้อมูลของทรานสปอนเดอร์การวัดแบบไร้สาย: สัญญาณเซ็นเซอร์ (ซ้าย) ประมวลผล จัดเก็บ (ตรงกลาง) และส่ง (ขวา) เมื่อมีโอกาสเกิดขึ้น (แหล่งที่มารูปภาพ: STMicroelectronics)
เฟิร์มแวร์ FP-ATR-ASTRA1 ขยายสภาพแวดล้อมการพัฒนา STM32Cube ของ STMicroelectronics และนำแอปพลิเคชันติดตามทรัพย์สินที่สมบูรณ์มาปรับใช้ซึ่งรองรับการเชื่อมต่อระยะไกล (LoRaWAN, Sigfox) และระยะสั้น (BLE, NFC) แพ็คเกจการทำงานจะอ่านข้อมูลจากเซ็นเซอร์ตรวจจับสภาพแวดล้อมและการเคลื่อนไหว ดึงตำแหน่งทางภูมิศาสตร์ของ GNSS และส่งทุกอย่างไปยังอุปกรณ์พกพาผ่าน BLE และขนานกับคลาวด์ผ่านการเชื่อมต่อ LoRaWAN
แพ็คเกจ FP-ATR-ASTRA1 รองรับโปรไฟล์พลังงานต่ำเพื่อให้มั่นใจถึงอายุแบตเตอรี่ที่ยาวนานสำหรับการทำงานอิสระสูงสุด นอกจากนี้ยังมีคุณลักษณะหลัก เช่น การจัดการองค์ประกอบที่ปลอดภัย ความสามารถในการเพิ่มอัลกอริทึมแบบกำหนดเอง อินเทอร์เฟซการดีบัก และความสามารถในการขยายเพิ่มเติม
โดยชุดซอฟต์แวร์ประกอบด้วย เอกสาร, ไดรเวอร์ & HAL, มิดเดิลแวร์ และโปรเจ็คตัวอย่าง โปรเจ็คประกอบด้วยซอร์สโค้ดและไบนารีที่คอมไพล์แล้วสำหรับสภาพแวดล้อมการพัฒนาแบบบูรณาการ (IDEs) Keil, IAR และ STM32Cube กรณีการใช้งานที่กำหนดไว้ล่วงหน้าห้ากรณีต่อไปนี้สามารถกำหนดค่าแยกกันได้ได้แก่ การจัดการกลุ่มยานพาหนะ การติดตามปศุสัตว์ การตรวจสอบสินค้า โลจิสติกส์ และแบบกำหนดเอง
STEVAL-ASTRA1B ทำงานเป็นเครื่องสถานะธรรมดาที่เปลี่ยนโหมดการทำงานตามเหตุการณ์ สถานะหลักสองสถานะได้รับการออกแบบมาสำหรับการทำงานเต็มรูปแบบ (Run) หรือพลังงานต่ำ (LP) โดยในโหมด Run ฟังก์ชันทั้งหมดจะทำงาน และข้อมูลทั้งหมดจะถูกส่งออกไปตามที่กำหนดค่าไว้ ในสถานะ LP ส่วนประกอบทั้งหมดยกเว้น MCU จะถูกตั้งค่าเป็นโหมดพลังงานต่ำหรือปิดใช้งาน (รูปที่ 4)
รูปที่ 4: โหมดการทำงานหลักสองโหมดของ STEVAL-ASTRA1B คือโหมดการทำงานเต็มรูปแบบ (Run) หรือโหมด LP (แหล่งที่มารูปภาพ: STMicroelectronics)
การกดปุ่มด้านข้างจะเป็นการเปลี่ยนสถานะระหว่างสองสถานะ อินพุตอื่นสามารถเป็นเอาต์พุตของเหตุการณ์ระบบเครื่องกลไฟฟ้าขนาดเล็ก (MEMS) หรือผลลัพธ์ของอัลกอริทึม นี่เป็นเพียงตัวอย่างหนึ่งของวิธีที่เครื่องสถานะสามารถนำไปใช้เพื่อเปลี่ยนพฤติกรรมของอุปกรณ์ได้ นอกจากนี้ยังสามารถใช้สถานะกลางหลายสถานะเพื่อสร้างความสมดุลระหว่างการตอบสนองของระบบและอายุการใช้งานแบตเตอรี่
เหตุการณ์ที่เป็นไปได้คือ
- BP: กดปุ่ม
- SD: ชัตดาวน์
- ER: ข้อผิดพลาด
- EP: การเปลี่ยนไปยังขั้นตอนถัดไปโดยอัตโนมัติ
- RN: ไปที่คำสั่งรันเต็มรูปแบบ
- LP: ไปที่คำสั่งพลังงานต่ำ
การดึงและแสดงภาพข้อมูลบนคลาวด์
ทรานสปอนเดอร์ STEVAL-ASTRA1B มีแพ็คเกจเฟิร์มแวร์ FP-ATR-ASTRA1 ติดตั้งไว้ล่วงหน้า ดังนั้นสัญญาณการวัดสภาพแวดล้อมและข้อมูลตำแหน่ง GNSS จึงสามารถแสดงภาพได้ภายในไม่กี่นาที
เมื่อใช้แอป STAssetTracking สำหรับสมาร์ทโฟนและแท็บเล็ต เมื่อเปิดใช้บลูทูธและเชื่อมต่อกับอินเทอร์เน็ต ทรานสปอนเดอร์จะลงทะเบียนบนเซิร์ฟเวอร์เครือข่าย TTN (The Things Network) V3 ในฐานะผู้เข้าร่วม LoRaWAN ผ่านบัญชีผู้ใช้ myst.com นอกจากนี้ยังเชื่อมโยงกับเว็บแดชบอร์ด DSH-ASSETRACKING บน Amazon Web Services (AWS)
หลังจากลงทะเบียน TTN แล้ว STEVAL-ASTRA1B จะปรากฏในรายการอุปกรณ์ที่อัปเดตของแอป กดปุ่ม "เริ่มการซิงโครไนซ์" ในเมนูเปิดใช้งานโหมดการส่งของช่องสัญญาณเพื่อให้ส่งข้อมูลที่เก็บไว้ผ่าน BLE และ LoRaWAN พร้อมกัน โดยที่แอปสามารถแสดงข้อมูลการวัดจากหน่วยความจำบนแดชบอร์ดและส่งออกตำแหน่ง GNSS ของช่องสัญญาณหรือแสดงเป็นเครื่องหมายบนแผนที่ (รูปที่ 5)
รูปที่ 5: แอปอุปกรณ์เคลื่อนที่ช่วยในการลงทะเบียนช่องสัญญาณที่ TTN และเชื่อมโยงเข้ากับแดชบอร์ดคลาวด์ แสดงภาพค่าเซ็นเซอร์ที่บันทึกไว้และช่วยกำหนดค่าและแก้จุดบกพร่อง (แหล่งที่มาภาพ: STMicroelectronics)
นอกจากช่องสัญญาณ ASTRA แล้ว เว็บแดชบอร์ดยังสามารถรวมเครื่องมือติดตามไร้สายแบบสแตนด์อโลนอื่น ๆ มากมาย เช่น P-L496G-CELL02 (LTE) และ NUCLEO-S2868A2 (ตัวส่งสัญญาณ Sigfox RF) หรือโหนดคู่อินเทอร์เน็ต เช่น STEVAL-SMARTAG1 (Wi-Fi), STEVAL-MKSBOX1V1 (โหนดปลาย BLE) และ STEVAL-SMARTAG1 (โหนดปลาย NFC) ในคลาวด์ ซึ่งทำให้สามารถพัฒนาระบบนิเวศไร้สายแบบหลายโปรโตคอลบนคลาวด์ได้
การกำหนดค่าและการเขียนโปรแกรมส่วนบุคคล
เมื่อการตั้งค่าโรงงานของทรานสปอนเดอร์ ASTRA ได้รับการประเมินเรียบร้อยแล้วระหว่างการทดสอบการใช้งานครั้งแรก ขั้นตอนต่อไปคือให้นักพัฒนาปรับแต่งทรานสปอนเดอร์ให้เหมาะกับการใช้งานในการติดตามทรัพย์สินของตนเอง
สำหรับการปรับแต่งเล็กน้อยโดยไม่ต้องใช้ฮาร์ดแวร์เพิ่มเติม การกำหนดค่าพารามิเตอร์และฟังก์ชันต่างๆ ผ่าน BLE และแอปบนอุปกรณ์เคลื่อนที่อาจเพียงพอแล้ว (กดไอคอน "ค้อน & ประแจ" ในแอปบนอุปกรณ์เคลื่อนที่ รูปที่ 5)
อีกวิธีในการกำหนดค่าโปรเจ็คคือการใช้บรรทัดคำสั่ง (Command line) และคอนโซลดีบัก ในขณะที่โปรแกรมเทอร์มินัล PC (เช่น Tera Term) สื่อสารผ่าน USB ผ่านพอร์ต COM เสมือน อุปกรณ์เคลื่อนที่จะใช้แอป STBLESensor (ST BLE Sensor) และเครือข่ายผ่าน BLE (รูปที่ 6)
รูปที่ 6: บรรทัดคำสั่งและคอนโซลการแก้ไขจุดบกพร่องบนพีซี (ซ้าย) และบนอุปกรณ์เคลื่อนที่ (ขวา) (แหล่งที่มาภาพ: STMicroelectronics)
หากต้องการตั้งโปรแกรมบอร์ด ASTRA ใหม่ เช่นเดียวกับการอัปเดตเฟิร์มแวร์ การรวมฟังก์ชันไลบรารีอื่น ๆ หรือการสร้างแอปพลิเคชันโค้ดของนักพัฒนาเอง การเข้าถึงผ่านอินเทอร์เฟซ JTAG นั้นสามารถทำได้อย่างสะดวก เพื่อจุดประสงค์ดังกล่าวจึงมีดีบั๊ก STLINK-V3MINI แยกต่างหาก และอแดปเตอร์ตั้งโปรแกรมเชื่อมต่อกับบอร์ด ASTRA ผ่านสายแพ 14 พิน จากนั้น IDE เช่น Keil, IAR หรือ STM32Cube ที่ติดตั้งบนพีซีจะสามารถเขียนไฟล์ไบนารีที่คอมไพล์แล้วไปยังหน่วยความจำโปรแกรมแอปพลิเคชันหรือโปรแกรมดีบัก
นอกจากนั้น STLINK-V3MINI ยังมีอินเทอร์เฟซพอร์ต COM เสมือนที่ช่วยให้โฮสต์พีซีสื่อสารกับไมโครคอนโทรลเลอร์เป้าหมายผ่าน UART
มีหลายวิธีในการอัปเดตเฟิร์มแวร์สำหรับ Arm MCU ต่างๆ:
- ซอฟต์แวร์เขียนโปรแกรม STM32Cube บนพีซีเขียนไฟล์ไบนารีไปยังหน่วยความจำแฟลชโดยใช้อะแดปเตอร์ JTAG และตัวโหลดบูต MCU
- ซอฟต์แวร์เขียนโปรแกรม STM32Cube บนพีซีเขียนไฟล์ไบนารีไปยังหน่วยความจำแฟลชโดยใช้ USB และ MCU bootloader
- การอัปเกรดเฟิร์มแวร์แบบ Over-the-air (FUOTA) ทำได้ผ่าน BLE โดยใช้แอป STBLESensor บนอุปกรณ์เคลื่อนที่
เนื่องจากแอปพลิเคชันคอนโทรลเลอร์ STM32WL55JC (LoRaWAN) ทำหน้าที่เป็นมาสเตอร์สำหรับ STM32WB5MMG (BLE) จึงต้องเลือกแกน MCU ที่เกี่ยวข้องที่จะแฟลชผ่านจัมเปอร์
การกำหนดค่าซอฟต์แวร์กราฟิกโดยใช้ STM32CubeMX
STM32Cube ทำให้นักพัฒนาทำงานง่ายขึ้นโดยลดความพยายาม เวลา และต้นทุนในการพัฒนา โดบที่ IDE จะครอบคลุมพอร์ตโฟลิโอ STM32 MCU ทั้งหมด นอกจากนี้ STM32CubeMX ยังอนุญาตการกำหนดค่าและการสร้างโค้ด C โดยใช้ตัวช่วยสร้างกราฟิก แพ็คเกจซอฟต์แวร์ FP-ATR-ASTRA1 ขยายการทำงานของ STM32Cube และสามารถติดตั้งโดยตรงใน STM32CubeMX IDE
รูปที่ 7 แสดงเชลล์ STM32CubeMX: แถบนำทาง (ซ้ายและบน) การกำหนดค่าแพ็คเกจ FP-ATR-ASTRA1 (กลาง) และสถาปัตยกรรม (ขวา) แพ็คเกจ FP-ATR-ASTRA1 มีสามแท็บสำหรับการปรับแต่ง: [Platform Settings], [Parameter Settings] และ [ASTRA ENGINE]
รูปที่ 7: การกำหนดค่าซอฟต์แวร์กราฟิกโดยใช้เครื่องมือ STM32CubeMX: การนำทาง (ซ้ายและบน) การกำหนดค่าแพ็ค FP-ATR-ASTRA1 (กลาง) และสถาปัตยกรรม (ขวา) (แหล่งที่มาภาพ: STMicroelectronics)
เมื่อกำหนดการตั้งค่าทั้งหมดแล้ว จะสามารถสร้างโค้ดจาก STM32CubeMX ได้โดยการกดปุ่ม <Generate Code> เมื่อเปิด IDE ที่ต้องการ โค้ดเฟิร์มแวร์จะสามารถปรับแต่ง คอมไพล์ และแฟลชบนบอร์ดได้
ซอร์สโค้ดที่สร้างขึ้นมีสถาปัตยกรรมโมดูลาร์ในแง่ของบล็อกฮาร์ดแวร์และฟังก์ชันต่างๆ การจัดการบล็อกฮาร์ดแวร์ระบุข้อกำหนดเฉพาะ (USE_GNSS) ฟังก์ชันได้รับการจัดการในไฟล์ต่างๆ เช่น การเริ่มต้นระบบ การกำหนดค่าสถานะของเครื่อง หรือการจัดการข้อมูล
แม้จะมีความซับซ้อนของแผนผังไฟล์ แต่มีเพียงไม่กี่ไฟล์เท่านั้นที่เกี่ยวข้องกับการกำหนดค่าแอปพลิเคชันของเคสการใช้งาน:
- ไฟล์ app_astra.c/.h
ไฟล์หลักนี้เป็นจุดเริ่มต้นและเรียกฟังก์ชันการเริ่มต้นภายใน MX_Astra_Init() (รายการที่ 1)
โค้ดที่ 1: ฟังก์ชัน MX_Astra_Init() นี้ใช้สำหรับการเริ่มต้นระบบ (แหล่งที่มา: STMicroelectronics)
- astra_confmng.c/.h
ตัวจัดการการกำหนดค่าบอร์ดนี้ประกอบด้วยตัวแปรที่เลือกโดยผู้ใช้เพื่อเปิด/ปิดการใช้งานบล็อกฮาร์ดแวร์แต่ละบล็อกและเคสการใช้งานและการกำหนดค่า - astra_datamng.c/.h
ในไฟล์นี้ข้อมูลที่รวบรวมจากเซ็นเซอร์และอินพุตอื่นๆ จะถูกจัดเก็บไว้ใน RAM ซึ่งพร้อมที่จะถูกจัดการ เช่น เพื่อเรียกใช้อัลกอริทึมเฉพาะกับข้อมูล - astra_sysmng.c/.h
มีการใช้ฟังก์ชันที่เกี่ยวข้องกับระบบ ฟังก์ชันหลักคืออินเทอร์เฟซบรรทัดคำสั่ง การคอลแบ็คปุ่ม อัลกอริทึม ไฟ LED การจัดการเคสการใช้งานการติดตามสินทรัพย์ และการจัดการตัวจับเวลา - SM_APP.c/.h
ไฟล์เหล่านี้มีโครงสร้างการกำหนดค่าของเครื่องสถานะ
สรุป
การพัฒนาแอปพลิเคชันการติดตามสินทรัพย์เป็นกระบวนการที่ซับซ้อนและมีหลายขั้นตอน แต่แพลตฟอร์มการพัฒนา STEVAL-ASTRA1B แบบมัลติฟังก์ชันทำให้งานง่ายขึ้น ด้วยฮาร์ดแวร์และซอฟต์แวร์ออนบอร์ดที่จำเป็นทั้งหมด จึงเป็นวิธีที่ง่ายและรวดเร็วในการแสดงข้อมูลบันทึกของทรานสปอนเดอร์ไร้สายในเว็บอินเตอร์เฟสหรือผ่านแอปอุปกรณ์เคลื่อนที่ ดังที่แสดงไว้ข้างต้น นักพัฒนาซอฟต์แวร์สามารถปรับแต่งเครื่องบันทึกข้อมูลไร้สายนี้ให้เข้ากับการติดตามหรือตรวจสอบโดยใช้เครื่องมือการกำหนดค่าที่ยืดหยุ่นโดยไม่ต้องเขียนโค้ด หรือสามารถใช้ตัวสร้างโค้ดอัตโนมัติได้
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.




