程振輝
摘要:當今社會,定位技術已經(jīng)廣泛應用于各個領域,便攜、輕廉、精準且功能多樣的小型定位器備受大眾的青睞。文章提出一種基于STM32的小型輕質多功能定位器的設計。該設計以STM32單片機作為主控,通過主控驅動ATGM336H和SHT25,獲取GNSS信號和溫濕度信號后,將參數(shù)再送入主控內進行解析和處理,并將實時時間、實時位置和溫濕度等參數(shù)信息顯示在4針的OLED屏幕上。
關鍵詞:小型輕質;定位器;單片機;ATGM336H-5N;SHT25;便攜低耗
中圖分類號:TP368.2? 文獻標志碼:A
0 引言
近年來,隨著微納技術的突破,小型輕質的定位電子產(chǎn)品得以實現(xiàn)更為精細的設計和制造。這類產(chǎn)品不僅體積小巧、重量輕,具備較高的定位精度和穩(wěn)定性,功能多樣,滿足了現(xiàn)代人們對定位器的多樣化需求[1]。然而,盡管小型輕質多功能的定位電子產(chǎn)品在技術和應用上取得了顯著進展,但仍然存在一些挑戰(zhàn)和問題。例如,如何在保證定位精度的同時,進一步降低設計的功耗和成本;如何在增加其他模塊和功能的同時,保證設計的小型和輕質等。
本文旨在深入探討一款小型輕質多功能的定位電子器的技術原理和設計方法。本文提出了利用STM32F103C8T6為CPU對ATGM336H板卡和SHT25傳感器獲取的全球導航衛(wèi)星系統(tǒng)(Global Navigation Satellite System,GNSS)信號和溫濕度信號進行解析和處理[1]。ATGM336H基于電磁感應和牛頓第二定律測量立體坐標中的加速度變化,計算出運動過程中的速度、加速度、朝向和方位,并將其轉化為電信號輸出。該設計采用加權融合技術對來自不同衛(wèi)星的信號或不同傳感器的數(shù)據(jù)進行融合,結合卡爾曼濾波算法[2]對傳感器測量誤差進行實時校正,從而提高定位精度和穩(wěn)定性。SHT25對溫度的測量采用熱電偶的方法,當兩端的溫度不同時,回路中就會出現(xiàn)熱電動勢,經(jīng)過電路的轉換將這個電壓的變化送到單片機。薄膜吸水或失水會改變2個電極間的介電常數(shù),進而引起電容器容量的變化。外部測量電路可將電容器的容量變化進行捕捉、轉化處理,最終送入單片機。
1 系統(tǒng)總體設計方案
該系統(tǒng)主要由主控模塊、溫濕度檢測模塊、定位通信模塊、存儲模塊、顯示模塊以及按鍵接口等構成。STM32F103C8T6為主控,負責整個系統(tǒng)的控制和相關數(shù)據(jù)的解析。該系統(tǒng)通過主控芯片STM32驅動ATGM336H-5N定位模塊和SHT25溫濕度模塊,獲取數(shù)據(jù)后再由主控芯片進行解析處理,經(jīng)由按鍵接口電路模塊選擇模式并將溫濕度、實時時間、位置信息顯示在4針的OLED屏上,以實現(xiàn)人機交互。系統(tǒng)整體結構如圖1所示。
2 系統(tǒng)模塊化設計
2.1 STM32主控模塊
STM32的工作電壓(VDD)為2.0~3.6 V,由內置的電壓調節(jié)器提供所需的1.8 V電源?;谛⌒洼p重的考慮,供電的電池體積應盡可能小,這也帶來了續(xù)航能力不足的問題,而STM32的3種低功耗模式正好彌補了電池體積小帶來的續(xù)航不足的問題。STM32與SHT25進行通信時會用到GPIO端口的模擬輸入通信;STM32與定位模塊進行通信時會用到輸入浮空和推挽式輸出模式,而按鍵電路會用到輸入上拉與下拉或輸入浮空模式。
2.2 SHT25空氣溫濕度模塊
SHT25 是一款高精度、低功耗、低成本的數(shù)字溫濕度傳感器,內部集成了放大器、A/D轉換器、OTP內存和數(shù)字處理單元,采用IIC接口[3],供電電壓典型值為3.3 V,工作電流典型值不超過1 μA,具有極低的功耗。SHT25電路設計如圖2所示。電路設計時,將SHT25的引腳VDD通過一個20 Ω的電阻連接到電壓3.3 V,用于芯片供電;單片機的引腳PC8、PC9分別和SHT25的引腳SCL、SDA相連,以模擬IIC總線方式讀寫芯片數(shù)據(jù)[4]。
2.3 ATGM336H-5N模塊的原理及其電路連接
ATGM336H-5N模塊的工作電壓為2.7~3.6 V,支持包括北斗衛(wèi)星導航系統(tǒng)(Beidou Navigation Satellite System,BDS)在內的GNSS[5]。ATGM336H-5N是一種三軸立體加速計,由2個測量計輸出的體重向量(Weight Vector)和北向量(North Vector)確定模塊的方位與朝向,經(jīng)內部的自我校準(卡爾曼濾波算法)和內部解算(加權融合技術)將重置后最準確的測量結果轉化為電信號輸出[6]。
ATGM336H-5N模塊與STM32通過串口進行通信,因此,可將定位模塊ATGM336H的串口TXD(Transmit Data)、RXD(Receive Data)引腳與STM32單片機的對應串口引腳(本設計中選擇的是PA9、PA10)連接,TXD要選擇復用推挽式輸出,RXD選擇輸入浮空模式。
2.4 按鍵接口電路與顯示模塊
STM32單片機GPIO引腳自帶上拉、下拉輸入,因此,硬件電路部分不需要加額外的電阻實現(xiàn)上拉下拉。本設計選用了高電平檢測獨立按鍵,當按鍵開關按下時開關導通,單片機I/O口檢測到高電平輸入即完成按鍵檢測(需要對按鍵進行消抖)。本設計的顯示功能由4針的OLED屏幕通過各像素點的亮滅組成字符來實現(xiàn)顯示功能,采用IIC通信的接口方式,由SSD1306驅動。
3 軟件設計
3.1 SHT25溫濕度模塊程序設計
該設計通過SHT25采集空氣溫濕度信息,支持2種工作模式:在保持主模式,SHT25可以通過下拉 SCL引腳迫使CPU進入等待狀態(tài),此時SHT25對溫濕度進行測試,CPU可以通過發(fā)送指令讀取傳感器中的溫濕度信息;在保持非主模式下,主控模塊需要發(fā)送“10000001”指令啟動SHT25,如果SHT25測量完成,傳感器就會回答主控模塊的輪流詢問,主控便可讀取傳感器測量信息,如果SHT25測量未完成,則不應答ACK位,CPU必須重新發(fā)送啟動指令。
3.2 ATGM336H定位模塊程序設計
ATGM336H可以利用串口發(fā)送定位信息給主控芯片,在設計時,可以先用定位模塊連接USB轉TTL線(上位機)[5],定位成功即可接收到數(shù)據(jù)幀。ATGM336H一次會返回許多條信息,只需要關注數(shù)據(jù)幀中的“GNRMC”這條信息即可。ATGM336H和SHT25模塊主程序流程如圖3所示。
4 結語
便攜性、高效性、精準性且多功能的小型輕質電子產(chǎn)品應用領域比較廣泛,主要有車載定位與導航,? 手機、平板電腦、手持設備和可穿戴的戶外運動設備等。本文設計了一款基于STM32的小型輕質多功能的定位器,數(shù)次實驗測試表明,該定位器能夠準確獲取地理位置并顯示在屏幕上,且能夠實時顯示位置時間和環(huán)境的溫濕度,精度和時延都在主流的范圍之內。本設計在保證便攜性、高效性、精準性和多功能的同時,又具備低功耗和低成本的特性。在后續(xù)的開發(fā)中,筆者將考慮通過物聯(lián)網(wǎng)通信,通過物聯(lián)網(wǎng)平臺和其他設備進行通信,例如,可以將定位上傳至手機上的地圖App或者微信小程序進行互聯(lián)。
參考文獻
[1]劉斌,肖紫恩,駱亞波,等.一種大尺度區(qū)域GNSS坐標序列自適應時空濾波方法[J].大地測量與地球動力學,2024(3):1-6.
[2]方賢寶,林勇,蘇羿安,等.基于TOF和自適應抗差卡爾曼濾波的UWB室內定位算法[J].傳感器與微系統(tǒng),2024(3):134-138.
[3]孫輝,沈兆坤,劉明強,等.高精度模擬式溫濕度傳感器設計[J].機電技術,2024(1):74-78.
[4]王春宇,張斌,韓旭,等.基于STM32的大口徑望遠鏡溫濕度監(jiān)測系統(tǒng)[J].電子測量技術,2020(16):28-31.
[5]舒秀蘭,鄭旭彬,李澤森,等.ATGM336H+ESP01S的室內定位系統(tǒng)設計[J].電子世界,2021(2):184-185.
[6]王建政,林克賓.基于STM32的慣性姿態(tài)模擬系統(tǒng)[J].電子元器件與信息技術,2018(5):5-11.
(編輯 王雪芬)
Design of small lightweight multi-function positioner based on STM32
CHENG? Zhenhui
(School of Information, North China University of Technology, Beijing 100000, China)
Abstract:? In todays society, positioning technology has been widely used in various fields, portable, lightweight, accurate and versatile small locators are favored by the public. This paper proposes a design of small lightweight multi-functional positioner based on STM32. The design uses STM32 single chip microcomputer as the main control, drives ATGM336H and SHT25 through the main control, obtains GNSS signal and temperature and humidity signal, and then sends parameters into the main control for analysis and processing. The real-time time, real-time position and temperature and humidity parameters are displayed on the 4-pin OLED screen.
Key words: small and light; positioner; single-chip computer; ATGM336H-5N; SHT25; portable and low consumption